diff --git a/src/client/Preview.tsx b/src/client/Preview.tsx index 7f0f905..5598f32 100644 --- a/src/client/Preview.tsx +++ b/src/client/Preview.tsx @@ -237,7 +237,12 @@ export const Preview: FC = () => { ) : null} - + { + // When you change the user, reset the form and the parameters. + // This is a bit of a janky way to fully reset the form, but it works for now. + $resetForm(); + $setParameters([]); + }}/> } {$parameters.length === 0 ? ( @@ -542,9 +547,8 @@ const FormElement: FC = ({ parameter }) => { const value = useMemo( () => $form[parameter.name] ?? - (parameter.default_value.value === "??" - ? "" - : parameter.default_value.value), + // undefined is ok, the parameter will select the default automatically + undefined, [$form, parameter], ); @@ -563,7 +567,11 @@ const FormElement: FC = ({ parameter }) => { ); }; -const UserSelect: FC = () => { +interface UserSelectProps { + changeUser: () => void; +} + +const UserSelect: FC = ({changeUser}) => { const $setWorkspaceOwner = useStore((state) => state.setWorkspaceOwner); return ( @@ -572,6 +580,7 @@ const UserSelect: FC = () => { onValueChange={(value) => { const users: Record = mockUsers; $setWorkspaceOwner(users[value] ?? mockUsers.admin); + changeUser(); }} >