From 175919c7876a9cb888b26d750d8d0e26d906acc9 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 12 Apr 2025 17:53:23 -0700 Subject: [PATCH] enh: widescreen mode in shared chats --- src/routes/s/[id]/+page.svelte | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/src/routes/s/[id]/+page.svelte b/src/routes/s/[id]/+page.svelte index 963d80d56..d8f3f42ea 100644 --- a/src/routes/s/[id]/+page.svelte +++ b/src/routes/s/[id]/+page.svelte @@ -13,7 +13,7 @@ import Messages from '$lib/components/chat/Messages.svelte'; import Navbar from '$lib/components/layout/Navbar.svelte'; - import { getUserById } from '$lib/apis/users'; + import { getUserById, getUserSettings } from '$lib/apis/users'; import { getModels } from '$lib/apis'; import { toast } from 'svelte-sonner'; import localizedFormat from 'dayjs/plugin/localizedFormat'; @@ -61,6 +61,25 @@ ////////////////////////// const loadSharedChat = async () => { + const userSettings = await getUserSettings(localStorage.token).catch((error) => { + console.error(error); + return null; + }); + + if (userSettings) { + settings.set(userSettings.ui); + } else { + let localStorageSettings = {} as Parameters<(typeof settings)['set']>[0]; + + try { + localStorageSettings = JSON.parse(localStorage.getItem('settings') ?? '{}'); + } catch (e: unknown) { + console.error('Failed to parse settings from localStorage', e); + } + + settings.set(localStorageSettings); + } + await models.set( await getModels( localStorage.token, @@ -137,7 +156,11 @@ >