fix: add workspace owner id as query param to websocket (#18363)

Co-authored-by: Steven Masley <stevenmasley@gmail.com>
This commit is contained in:
Jaayden Halko
2025-06-13 14:49:32 -04:00
committed by GitHub
co-authored by Steven Masley
parent c1341cccdd
commit 9a432b8d9f
7 changed files with 74 additions and 24 deletions
+2
View File
@@ -1017,6 +1017,7 @@ class ApiMethods {
templateVersionDynamicParameters = (
versionId: string,
userId: string,
{
onMessage,
onError,
@@ -1029,6 +1030,7 @@ class ApiMethods {
): WebSocket => {
const socket = createWebSocket(
`/api/v2/templateversions/${versionId}/dynamic-parameters`,
new URLSearchParams({ user_id: userId }),
);
socket.addEventListener("message", (event) =>
@@ -148,31 +148,35 @@ const CreateWorkspacePageExperimental: FC = () => {
useEffect(() => {
if (!realizedVersionId) return;
const socket = API.templateVersionDynamicParameters(realizedVersionId, {
onMessage,
onError: (error) => {
if (ws.current === socket) {
setWsError(error);
}
const socket = API.templateVersionDynamicParameters(
realizedVersionId,
defaultOwner.id,
{
onMessage,
onError: (error) => {
if (ws.current === socket) {
setWsError(error);
}
},
onClose: () => {
if (ws.current === socket) {
setWsError(
new DetailedError(
"Websocket connection for dynamic parameters unexpectedly closed.",
"Refresh the page to reset the form.",
),
);
}
},
},
onClose: () => {
if (ws.current === socket) {
setWsError(
new DetailedError(
"Websocket connection for dynamic parameters unexpectedly closed.",
"Refresh the page to reset the form.",
),
);
}
},
});
);
ws.current = socket;
return () => {
socket.close();
};
}, [realizedVersionId, onMessage]);
}, [realizedVersionId, onMessage, defaultOwner.id]);
const organizationId = templateQuery.data?.organization_id;
@@ -111,6 +111,7 @@ const WorkspaceParametersPageExperimental: FC = () => {
const socket = API.templateVersionDynamicParameters(
templateVersionId ?? workspace.latest_build.template_version_id,
workspace.owner_id,
{
onMessage,
onError: (error) => {
@@ -140,6 +141,7 @@ const WorkspaceParametersPageExperimental: FC = () => {
templateVersionId,
workspace.latest_build.template_version_id,
onMessage,
workspace.owner_id,
]);
const updateParameters = useMutation({