@@ -6,6 +6,8 @@ import { MetaProvider } from "@solidjs/meta"
66import { Font } from "@opencode-ai/ui/font"
77import { Favicon } from "@opencode-ai/ui/favicon"
88import { MarkedProvider } from "@opencode-ai/ui/context/marked"
9+ import { DiffComponentProvider } from "@opencode-ai/ui/context/diff"
10+ import { Diff } from "@opencode-ai/ui/diff"
911import { GlobalSyncProvider , useGlobalSync } from "./context/global-sync"
1012import Layout from "@/pages/layout"
1113import DirectoryLayout from "@/pages/directory-layout"
@@ -35,38 +37,40 @@ if (import.meta.env.DEV && !(root instanceof HTMLElement)) {
3537render (
3638 ( ) => (
3739 < MarkedProvider >
38- < GlobalSDKProvider url = { url } >
39- < GlobalSyncProvider >
40- < LayoutProvider >
41- < MetaProvider >
42- < Font />
43- < Router root = { Layout } >
44- < Route
45- path = "/"
46- component = { ( ) => {
47- const globalSync = useGlobalSync ( )
48- const slug = createMemo ( ( ) => base64Encode ( globalSync . data . defaultProject ! . worktree ) )
49- return < Navigate href = { `${ slug ( ) } /session` } />
50- } }
51- />
52- < Route path = "/:dir" component = { DirectoryLayout } >
53- < Route path = "/" component = { ( ) => < Navigate href = "session" /> } />
40+ < DiffComponentProvider component = { Diff } >
41+ < GlobalSDKProvider url = { url } >
42+ < GlobalSyncProvider >
43+ < LayoutProvider >
44+ < MetaProvider >
45+ < Font />
46+ < Router root = { Layout } >
5447 < Route
55- path = "/session/:id?"
56- component = { ( p ) => (
57- < Show when = { p . params . id || true } keyed >
58- < SessionProvider >
59- < Session />
60- </ SessionProvider >
61- </ Show >
62- ) }
48+ path = "/"
49+ component = { ( ) => {
50+ const globalSync = useGlobalSync ( )
51+ const slug = createMemo ( ( ) => base64Encode ( globalSync . data . defaultProject ! . worktree ) )
52+ return < Navigate href = { `${ slug ( ) } /session` } />
53+ } }
6354 />
64- </ Route >
65- </ Router >
66- </ MetaProvider >
67- </ LayoutProvider >
68- </ GlobalSyncProvider >
69- </ GlobalSDKProvider >
55+ < Route path = "/:dir" component = { DirectoryLayout } >
56+ < Route path = "/" component = { ( ) => < Navigate href = "session" /> } />
57+ < Route
58+ path = "/session/:id?"
59+ component = { ( p ) => (
60+ < Show when = { p . params . id || true } keyed >
61+ < SessionProvider >
62+ < Session />
63+ </ SessionProvider >
64+ </ Show >
65+ ) }
66+ />
67+ </ Route >
68+ </ Router >
69+ </ MetaProvider >
70+ </ LayoutProvider >
71+ </ GlobalSyncProvider >
72+ </ GlobalSDKProvider >
73+ </ DiffComponentProvider >
7074 </ MarkedProvider >
7175 ) ,
7276 root ! ,
0 commit comments