From ec003b7cf9c2c041fd401dc7d662084d280b9be5 Mon Sep 17 00:00:00 2001 From: Jaayden Halko Date: Tue, 6 May 2025 11:40:31 +0100 Subject: [PATCH 001/205] fix: update default value handling for dynamic defaults (#17609) resolves coder/preview#102 --- .../DynamicParameter/DynamicParameter.tsx | 89 +++++++++++-------- .../CreateWorkspacePageViewExperimental.tsx | 20 +++-- 2 files changed, 68 insertions(+), 41 deletions(-) diff --git a/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx b/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx index d023bbcf4446b..9ec69158c4e84 100644 --- a/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx +++ b/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx @@ -32,7 +32,7 @@ import { TooltipTrigger, } from "components/Tooltip/Tooltip"; import { Info, Settings, TriangleAlert } from "lucide-react"; -import { type FC, useId } from "react"; +import { type FC, useEffect, useId, useState } from "react"; import type { AutofillBuildParameter } from "utils/richParameters"; import * as Yup from "yup"; @@ -164,14 +164,18 @@ const ParameterField: FC = ({ id, }) => { const value = validValue(parameter.value); - const defaultValue = validValue(parameter.default_value); + const [localValue, setLocalValue] = useState(value); + + useEffect(() => { + setLocalValue(value); + }, [value]); switch (parameter.form_type) { case "dropdown": return (