diff options
| author | Brendan Allan <[email protected]> | 2026-02-18 23:03:24 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-02-18 23:03:24 +0800 |
| commit | 1bb8574179bbf7c49a34ad0e5df522a752af08c2 (patch) | |
| tree | d10e2ec54cc027dc8ffd76bb40031300f9eaeef8 /packages/app/src/entry.tsx | |
| parent | 2611c35acc3dc64582e15ad1efca36c60a2883a8 (diff) | |
| download | opencode-1bb8574179bbf7c49a34ad0e5df522a752af08c2.tar.gz opencode-1bb8574179bbf7c49a34ad0e5df522a752af08c2.zip | |
app: refactor server management backend (#13813)
Diffstat (limited to 'packages/app/src/entry.tsx')
| -rw-r--r-- | packages/app/src/entry.tsx | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/packages/app/src/entry.tsx b/packages/app/src/entry.tsx index 3a85086b4..82e4fc0eb 100644 --- a/packages/app/src/entry.tsx +++ b/packages/app/src/entry.tsx @@ -1,11 +1,14 @@ // @refresh reload + +import { iife } from "@opencode-ai/util/iife" import { render } from "solid-js/web" import { AppBaseProviders, AppInterface } from "@/app" -import { Platform, PlatformProvider } from "@/context/platform" +import { type Platform, PlatformProvider } from "@/context/platform" import { dict as en } from "@/i18n/en" import { dict as zh } from "@/i18n/zh" import { handleNotificationClick } from "@/utils/notification-click" import pkg from "../package.json" +import { ServerConnection } from "./context/server" const DEFAULT_SERVER_URL_KEY = "opencode.settings.dat:defaultServerUrl" @@ -107,12 +110,22 @@ const platform: Platform = { setDefaultServerUrl: writeDefaultServerUrl, } +const defaultUrl = iife(() => { + const lsDefault = readDefaultServerUrl() + if (lsDefault) return lsDefault + if (location.hostname.includes("opencode.ai")) return "http://localhost:4096" + if (import.meta.env.DEV) + return `http://${import.meta.env.VITE_OPENCODE_SERVER_HOST ?? "localhost"}:${import.meta.env.VITE_OPENCODE_SERVER_PORT ?? "4096"}` + return location.origin +}) + if (root instanceof HTMLElement) { + const server: ServerConnection.Http = { type: "http", http: { url: defaultUrl } } render( () => ( <PlatformProvider value={platform}> <AppBaseProviders> - <AppInterface /> + <AppInterface defaultServer={ServerConnection.key(server)} servers={[server]} /> </AppBaseProviders> </PlatformProvider> ), |
