diff options
Diffstat (limited to 'packages/app/src/app.tsx')
| -rw-r--r-- | packages/app/src/app.tsx | 43 |
1 files changed, 24 insertions, 19 deletions
diff --git a/packages/app/src/app.tsx b/packages/app/src/app.tsx index d03d10d0e..33a5556ef 100644 --- a/packages/app/src/app.tsx +++ b/packages/app/src/app.tsx @@ -14,6 +14,7 @@ import { PermissionProvider } from "@/context/permission" import { LayoutProvider } from "@/context/layout" import { GlobalSDKProvider } from "@/context/global-sdk" import { ServerProvider, useServer } from "@/context/server" +import { SettingsProvider } from "@/context/settings" import { TerminalProvider } from "@/context/terminal" import { PromptProvider } from "@/context/prompt" import { FileProvider } from "@/context/file" @@ -82,15 +83,17 @@ export function AppInterface(props: { defaultUrl?: string }) { <GlobalSyncProvider> <Router root={(props) => ( - <PermissionProvider> - <LayoutProvider> - <NotificationProvider> - <CommandProvider> - <Layout>{props.children}</Layout> - </CommandProvider> - </NotificationProvider> - </LayoutProvider> - </PermissionProvider> + <SettingsProvider> + <PermissionProvider> + <LayoutProvider> + <NotificationProvider> + <CommandProvider> + <Layout>{props.children}</Layout> + </CommandProvider> + </NotificationProvider> + </LayoutProvider> + </PermissionProvider> + </SettingsProvider> )} > <Route @@ -105,16 +108,18 @@ export function AppInterface(props: { defaultUrl?: string }) { <Route path="/" component={() => <Navigate href="session" />} /> <Route path="/session/:id?" - component={() => ( - <TerminalProvider> - <FileProvider> - <PromptProvider> - <Suspense fallback={<Loading />}> - <Session /> - </Suspense> - </PromptProvider> - </FileProvider> - </TerminalProvider> + component={(p) => ( + <Show when={p.params.id ?? "new"} keyed> + <TerminalProvider> + <FileProvider> + <PromptProvider> + <Suspense fallback={<Loading />}> + <Session /> + </Suspense> + </PromptProvider> + </FileProvider> + </TerminalProvider> + </Show> )} /> </Route> |
