@@ -42,6 +42,7 @@ import { PromptProvider } from "@/context/prompt"
4242import { ServerConnection , ServerProvider , serverName , useServer } from "@/context/server"
4343import { SettingsProvider } from "@/context/settings"
4444import { TerminalProvider } from "@/context/terminal"
45+ import { WslServersProvider } from "@/context/wsl-servers"
4546import DirectoryLayout from "@/pages/directory-layout"
4647import Layout from "@/pages/layout"
4748import { ErrorPage } from "./pages/error"
@@ -74,7 +75,7 @@ declare global {
7475 __OPENCODE__ ?: {
7576 updaterEnabled ?: boolean
7677 deepLinks ?: string [ ]
77- wsl ?: boolean
78+ activeServer ?: string
7879 }
7980 api ?: {
8081 setTitlebar ?: ( theme : { mode : "light" | "dark" } ) => Promise < void >
@@ -156,11 +157,13 @@ export function AppBaseProviders(props: ParentProps<{ locale?: Locale }>) {
156157 } }
157158 >
158159 < QueryProvider >
159- < DialogProvider >
160- < MarkedProvider >
161- < FileComponentProvider component = { File } > { props . children } </ FileComponentProvider >
162- </ MarkedProvider >
163- </ DialogProvider >
160+ < WslServersProvider >
161+ < DialogProvider >
162+ < MarkedProvider >
163+ < FileComponentProvider component = { File } > { props . children } </ FileComponentProvider >
164+ </ MarkedProvider >
165+ </ DialogProvider >
166+ </ WslServersProvider >
164167 </ QueryProvider >
165168 </ ErrorBoundary >
166169 </ UiI18nBridge >
@@ -283,11 +286,11 @@ function ConnectionError(props: { onRetry?: () => void; onServerSelected?: (key:
283286 )
284287}
285288
286- function ServerKey ( props : ParentProps ) {
289+ function ServerKey ( props : { children : ( key : ServerConnection . Key ) => JSX . Element } ) {
287290 const server = useServer ( )
288291 return (
289292 < Show when = { server . key } keyed >
290- { props . children }
293+ { ( key ) => props . children ( key ) }
291294 </ Show >
292295 )
293296}
@@ -307,22 +310,24 @@ export function AppInterface(props: {
307310 >
308311 < ConnectionGate disableHealthCheck = { props . disableHealthCheck } >
309312 < ServerKey >
310- < QueryProvider >
311- < GlobalSDKProvider >
312- < GlobalSyncProvider >
313- < Dynamic
314- component = { props . router ?? Router }
315- root = { ( routerProps ) => < RouterRoot appChildren = { props . children } > { routerProps . children } </ RouterRoot > }
316- >
317- < Route path = "/" component = { HomeRoute } />
318- < Route path = "/:dir" component = { DirectoryLayout } >
319- < Route path = "/" component = { SessionIndexRoute } />
320- < Route path = "/session/:id?" component = { SessionRoute } />
321- </ Route >
322- </ Dynamic >
323- </ GlobalSyncProvider >
324- </ GlobalSDKProvider >
325- </ QueryProvider >
313+ { ( ) => (
314+ < QueryProvider >
315+ < GlobalSDKProvider >
316+ < GlobalSyncProvider >
317+ < Dynamic
318+ component = { props . router ?? Router }
319+ root = { ( routerProps ) => < RouterRoot appChildren = { props . children } > { routerProps . children } </ RouterRoot > }
320+ >
321+ < Route path = "/" component = { HomeRoute } />
322+ < Route path = "/:dir" component = { DirectoryLayout } >
323+ < Route path = "/" component = { SessionIndexRoute } />
324+ < Route path = "/session/:id?" component = { SessionRoute } />
325+ </ Route >
326+ </ Dynamic >
327+ </ GlobalSyncProvider >
328+ </ GlobalSDKProvider >
329+ </ QueryProvider >
330+ ) }
326331 </ ServerKey >
327332 </ ConnectionGate >
328333 </ ServerProvider >
0 commit comments