fix: update url for parameters websocket endpoint (#17462)

This commit is contained in:
ケイラ
2025-04-17 17:01:44 -05:00
committed by GitHub
parent 2cc56ab515
commit 5f0ce7f543
3 changed files with 23 additions and 26 deletions
+2 -1
View File
@@ -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) =>
@@ -57,6 +57,8 @@ const CreateWorkspacePageExperimental: FC = () => {
const [mode, setMode] = useState(() => getWorkspaceMode(searchParams));
const [autoCreateError, setAutoCreateError] =
useState<ApiErrorResponse | null>(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<string, string>) => {
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 ||
@@ -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<string, string>) => 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 (
<>
<div className="absolute sticky top-5 ml-10">
<div className="sticky top-5 ml-10">
<button
onClick={onCancel}
type="button"