@@ -43,6 +43,7 @@ import { PromptProvider } from "@/context/prompt"
4343import { ServerConnection , ServerProvider , serverName , useServer } from "@/context/server"
4444import { SettingsProvider , useSettings } from "@/context/settings"
4545import { TerminalProvider } from "@/context/terminal"
46+ import { WslServersProvider } from "@/context/wsl-servers"
4647import DirectoryLayout from "@/pages/directory-layout"
4748import Layout from "@/pages/layout"
4849import { ErrorPage } from "./pages/error"
@@ -71,7 +72,7 @@ declare global {
7172 __OPENCODE__ ?: {
7273 updaterEnabled ?: boolean
7374 deepLinks ?: string [ ]
74- wsl ?: boolean
75+ activeServer ?: string
7576 }
7677 api ?: {
7778 setTitlebar ?: ( theme : { mode : "light" | "dark" } ) => Promise < void >
@@ -171,11 +172,13 @@ export function AppBaseProviders(props: ParentProps<{ locale?: Locale }>) {
171172 } }
172173 >
173174 < QueryProvider >
174- < DialogProvider >
175- < MarkedProvider >
176- < FileComponentProvider component = { File } > { props . children } </ FileComponentProvider >
177- </ MarkedProvider >
178- </ DialogProvider >
175+ < WslServersProvider >
176+ < DialogProvider >
177+ < MarkedProvider >
178+ < FileComponentProvider component = { File } > { props . children } </ FileComponentProvider >
179+ </ MarkedProvider >
180+ </ DialogProvider >
181+ </ WslServersProvider >
179182 </ QueryProvider >
180183 </ ErrorBoundary >
181184 </ UiI18nBridge >
@@ -298,11 +301,11 @@ function ConnectionError(props: { onRetry?: () => void; onServerSelected?: (key:
298301 )
299302}
300303
301- function ServerKey ( props : ParentProps ) {
304+ function ServerKey ( props : { children : ( key : ServerConnection . Key ) => JSX . Element } ) {
302305 const server = useServer ( )
303306 return (
304307 < Show when = { server . key } keyed >
305- { props . children }
308+ { ( key ) => props . children ( key ) }
306309 </ Show >
307310 )
308311}
@@ -319,22 +322,24 @@ export function AppInterface(props: {
319322 < ServersProvider >
320323 < ConnectionGate disableHealthCheck = { props . disableHealthCheck } >
321324 < ServerKey >
322- < QueryProvider >
323- < ServerSDKProvider >
324- < ServerSyncProvider >
325- < Dynamic
326- component = { props . router ?? Router }
327- root = { ( routerProps ) => < RouterRoot appChildren = { props . children } > { routerProps . children } </ RouterRoot > }
328- >
329- < Route path = "/" component = { HomeRoute } />
330- < Route path = "/:dir" component = { DirectoryLayout } >
331- < Route path = "/" component = { ( ) => < Navigate href = "session" /> } />
332- < Route path = "/session/:id?" component = { SessionRoute } />
333- </ Route >
334- </ Dynamic >
335- </ ServerSyncProvider >
336- </ ServerSDKProvider >
337- </ QueryProvider >
325+ { ( ) => (
326+ < QueryProvider >
327+ < ServerSDKProvider >
328+ < ServerSyncProvider >
329+ < Dynamic
330+ component = { props . router ?? Router }
331+ root = { ( routerProps ) => < RouterRoot appChildren = { props . children } > { routerProps . children } </ RouterRoot > }
332+ >
333+ < Route path = "/" component = { HomeRoute } />
334+ < Route path = "/:dir" component = { DirectoryLayout } >
335+ < Route path = "/" component = { ( ) => < Navigate href = "session" /> } />
336+ < Route path = "/session/:id?" component = { SessionRoute } />
337+ </ Route >
338+ </ Dynamic >
339+ </ ServerSyncProvider >
340+ </ ServerSDKProvider >
341+ </ QueryProvider >
342+ ) }
338343 </ ServerKey >
339344 </ ConnectionGate >
340345 </ ServersProvider >
0 commit comments