From 2746753f81a82bb3bf09ee4770dcc8a94bf651ee Mon Sep 17 00:00:00 2001 From: Diego Imbert <70353967+diegoimbert@users.noreply.github.com> Date: Tue, 28 Oct 2025 12:32:23 +0100 Subject: [PATCH] Store workspace in session storage (#6973) --- frontend/src/lib/stores.ts | 7 +++---- frontend/src/routes/(root)/(logged)/+layout.svelte | 1 + .../(root)/(logged)/user/(user)/workspaces/+page.svelte | 5 +++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/frontend/src/lib/stores.ts b/frontend/src/lib/stores.ts index edab0c5649..87a0a53356 100644 --- a/frontend/src/lib/stores.ts +++ b/frontend/src/lib/stores.ts @@ -36,11 +36,11 @@ export interface UserWorkspace { disabled: boolean } -const persistedWorkspace = BROWSER && getWorkspace() +const persistedWorkspace = BROWSER && getWorkspaceFromStorage() -function getWorkspace(): string | undefined { +export function getWorkspaceFromStorage(): string | undefined { try { - return localStorage.getItem('workspace') ?? undefined + return sessionStorage.getItem('workspace') ?? localStorage.getItem('workspace') ?? undefined } catch (e) { console.error('error interacting with local storage', e) } @@ -116,7 +116,6 @@ export const codeCompletionSessionEnabled = writable( getLocalSetting(CODE_COMPLETION_SETTING_NAME) != 'false' ) - export const usedTriggerKinds = writable([]) type SQLBaseSchema = { diff --git a/frontend/src/routes/(root)/(logged)/+layout.svelte b/frontend/src/routes/(root)/(logged)/+layout.svelte index de79f789c2..329fbc6877 100644 --- a/frontend/src/routes/(root)/(logged)/+layout.svelte +++ b/frontend/src/routes/(root)/(logged)/+layout.svelte @@ -97,6 +97,7 @@ async function updateUserStore(workspace: string | undefined) { if (workspace) { try { + sessionStorage.setItem('workspace', String(workspace)) localStorage.setItem('workspace', String(workspace)) } catch (e) { console.error('Could not persist workspace to local storage', e) diff --git a/frontend/src/routes/(root)/(logged)/user/(user)/workspaces/+page.svelte b/frontend/src/routes/(root)/(logged)/user/(user)/workspaces/+page.svelte index b8c3f679fd..045c904e27 100644 --- a/frontend/src/routes/(root)/(logged)/user/(user)/workspaces/+page.svelte +++ b/frontend/src/routes/(root)/(logged)/user/(user)/workspaces/+page.svelte @@ -10,7 +10,8 @@ usersWorkspaceStore, userWorkspaces, workspaceStore, - userStore + userStore, + getWorkspaceFromStorage } from '$lib/stores' import { Button, Skeleton } from '$lib/components/common' import Toggle from '$lib/components/Toggle.svelte' @@ -58,7 +59,7 @@ } if ($usersWorkspaceStore) { if (!$workspaceStore) { - const local = localStorage.getItem('workspace')?.toString() + const local = getWorkspaceFromStorage()?.toString() switchWorkspace(local) } } else {