diff --git a/site/src/api/api.ts b/site/src/api/api.ts index f7e0cd0889f70..fa62afadee608 100644 --- a/site/src/api/api.ts +++ b/site/src/api/api.ts @@ -1010,6 +1010,7 @@ class ApiMethods { }; templateVersionDynamicParameters = ( + userId: string, versionId: string, { onMessage, @@ -1020,7 +1021,7 @@ class ApiMethods { }, ): WebSocket => { const socket = createWebSocket( - `/api/v2/templateversions/${versionId}/dynamic-parameters`, + `/api/v2/users/${userId}/templateversions/${versionId}/parameters`, ); socket.addEventListener("message", (event) => diff --git a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageExperimental.tsx b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageExperimental.tsx index 27d76a23a83cd..5711517855ebd 100644 --- a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageExperimental.tsx +++ b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageExperimental.tsx @@ -57,6 +57,8 @@ const CreateWorkspacePageExperimental: FC = () => { const [mode, setMode] = useState(() => getWorkspaceMode(searchParams)); const [autoCreateError, setAutoCreateError] = useState(null); + const defaultOwner = me; + const [owner, setOwner] = useState(defaultOwner); const queryClient = useQueryClient(); const autoCreateWorkspaceMutation = useMutation( @@ -96,19 +98,23 @@ const CreateWorkspacePageExperimental: FC = () => { return; } - const socket = API.templateVersionDynamicParameters(realizedVersionId, { - onMessage, - onError: (error) => { - setWsError(error); + const socket = API.templateVersionDynamicParameters( + owner.id, + realizedVersionId, + { + onMessage, + onError: (error) => { + setWsError(error); + }, }, - }); + ); ws.current = socket; return () => { socket.close(); }; - }, [realizedVersionId, onMessage]); + }, [owner.id, realizedVersionId, onMessage]); const sendMessage = useCallback((formValues: Record) => { setWSResponseId((prevId) => { @@ -237,7 +243,9 @@ const CreateWorkspacePageExperimental: FC = () => { defaultName={defaultName} diagnostics={currentResponse?.diagnostics ?? []} disabledParams={disabledParams} - defaultOwner={me} + defaultOwner={defaultOwner} + owner={owner} + setOwner={setOwner} autofillParameters={autofillParameters} error={ wsError || diff --git a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx index 1e0fbbf2281ff..0b33c27d57434 100644 --- a/site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx +++ b/site/src/pages/CreateWorkspacePage/CreateWorkspacePageViewExperimental.tsx @@ -22,14 +22,7 @@ import { useValidationSchemaForDynamicParameters, } from "modules/workspaces/DynamicParameter/DynamicParameter"; import { generateWorkspaceName } from "modules/workspaces/generateWorkspaceName"; -import { - type FC, - useCallback, - useEffect, - useId, - useMemo, - useState, -} from "react"; +import { type FC, useCallback, useEffect, useId, useState } from "react"; import { getFormHelpers, nameValidator } from "utils/formUtils"; import type { AutofillBuildParameter } from "utils/richParameters"; import * as Yup from "yup"; @@ -65,6 +58,8 @@ export interface CreateWorkspacePageViewExperimentalProps { resetMutation: () => void; sendMessage: (message: Record) => void; startPollingExternalAuth: () => void; + owner: TypesGen.User; + setOwner: (user: TypesGen.User) => void; } export const CreateWorkspacePageViewExperimental: FC< @@ -91,8 +86,9 @@ export const CreateWorkspacePageViewExperimental: FC< resetMutation, sendMessage, startPollingExternalAuth, + owner, + setOwner, }) => { - const [owner, setOwner] = useState(defaultOwner); const [suggestedName, setSuggestedName] = useState(() => generateWorkspaceName(), ); @@ -140,14 +136,6 @@ export const CreateWorkspacePageViewExperimental: FC< error, ); - const autofillByName = useMemo( - () => - Object.fromEntries( - autofillParameters.map((param) => [param.name, param]), - ), - [autofillParameters], - ); - const [presetOptions, setPresetOptions] = useState([ { label: "None", value: "" }, ]); @@ -252,7 +240,7 @@ export const CreateWorkspacePageViewExperimental: FC< return ( <> -
+