diff options
| author | Adam <[email protected]> | 2025-12-18 04:26:17 -0600 |
|---|---|---|
| committer | Adam <[email protected]> | 2025-12-18 04:26:21 -0600 |
| commit | e37a75a411c584d3e463662a0219fd342d4247ab (patch) | |
| tree | eb3944722e942b3244c4f13466855fca712bc3c6 /packages/desktop/src/app.tsx | |
| parent | 194ff4919cd1e68caaaa8336da0b13b815c74072 (diff) | |
| download | opencode-e37a75a411c584d3e463662a0219fd342d4247ab.tar.gz opencode-e37a75a411c584d3e463662a0219fd342d4247ab.zip | |
feat(desktop): custom update toast
Diffstat (limited to 'packages/desktop/src/app.tsx')
| -rw-r--r-- | packages/desktop/src/app.tsx | 91 |
1 files changed, 47 insertions, 44 deletions
diff --git a/packages/desktop/src/app.tsx b/packages/desktop/src/app.tsx index 10bde2202..91952fc9d 100644 --- a/packages/desktop/src/app.tsx +++ b/packages/desktop/src/app.tsx @@ -1,5 +1,5 @@ import "@/index.css" -import { Show } from "solid-js" +import { ErrorBoundary, Show } from "solid-js" import { Router, Route, Navigate } from "@solidjs/router" import { MetaProvider } from "@solidjs/meta" import { Font } from "@opencode-ai/ui/font" @@ -20,6 +20,7 @@ import Layout from "@/pages/layout" import Home from "@/pages/home" import DirectoryLayout from "@/pages/directory-layout" import Session from "@/pages/session" +import { ErrorPage } from "./pages/error" declare global { interface Window { @@ -38,48 +39,50 @@ const url = export function App() { return ( - <MetaProvider> - <Font /> - <DialogProvider> - <MarkedProvider> - <DiffComponentProvider component={Diff}> - <CodeComponentProvider component={Code}> - <GlobalSDKProvider url={url}> - <GlobalSyncProvider> - <LayoutProvider> - <NotificationProvider> - <Router - root={(props) => ( - <CommandProvider> - <Layout>{props.children}</Layout> - </CommandProvider> - )} - > - <Route path="/" component={Home} /> - <Route path="/:dir" component={DirectoryLayout}> - <Route path="/" component={() => <Navigate href="session" />} /> - <Route - path="/session/:id?" - component={(p) => ( - <Show when={p.params.id || true} keyed> - <TerminalProvider> - <PromptProvider> - <Session /> - </PromptProvider> - </TerminalProvider> - </Show> - )} - /> - </Route> - </Router> - </NotificationProvider> - </LayoutProvider> - </GlobalSyncProvider> - </GlobalSDKProvider> - </CodeComponentProvider> - </DiffComponentProvider> - </MarkedProvider> - </DialogProvider> - </MetaProvider> + <ErrorBoundary fallback={ErrorPage}> + <MetaProvider> + <Font /> + <DialogProvider> + <MarkedProvider> + <DiffComponentProvider component={Diff}> + <CodeComponentProvider component={Code}> + <GlobalSDKProvider url={url}> + <GlobalSyncProvider> + <LayoutProvider> + <NotificationProvider> + <Router + root={(props) => ( + <CommandProvider> + <Layout>{props.children}</Layout> + </CommandProvider> + )} + > + <Route path="/" component={Home} /> + <Route path="/:dir" component={DirectoryLayout}> + <Route path="/" component={() => <Navigate href="session" />} /> + <Route + path="/session/:id?" + component={(p) => ( + <Show when={p.params.id || true} keyed> + <TerminalProvider> + <PromptProvider> + <Session /> + </PromptProvider> + </TerminalProvider> + </Show> + )} + /> + </Route> + </Router> + </NotificationProvider> + </LayoutProvider> + </GlobalSyncProvider> + </GlobalSDKProvider> + </CodeComponentProvider> + </DiffComponentProvider> + </MarkedProvider> + </DialogProvider> + </MetaProvider> + </ErrorBoundary> ) } |
