diff options
| author | Adam <[email protected]> | 2025-11-18 11:00:27 -0600 |
|---|---|---|
| committer | opencode <[email protected]> | 2025-11-18 17:07:34 +0000 |
| commit | fc5fc2c570e6ac5a6f9647080b80f7fec0c4b605 (patch) | |
| tree | a3971bfbe17308df9f2d3e1771c0ab544900c099 /packages/desktop/src/context/sdk.tsx | |
| parent | 4069999b782cc00d4e707f5eca32082bdfad45bc (diff) | |
| download | opencode-fc5fc2c570e6ac5a6f9647080b80f7fec0c4b605.tar.gz opencode-fc5fc2c570e6ac5a6f9647080b80f7fec0c4b605.zip | |
wip(desktop): new layout work
Diffstat (limited to 'packages/desktop/src/context/sdk.tsx')
| -rw-r--r-- | packages/desktop/src/context/sdk.tsx | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/packages/desktop/src/context/sdk.tsx b/packages/desktop/src/context/sdk.tsx index b7b753dbc..40165b1ba 100644 --- a/packages/desktop/src/context/sdk.tsx +++ b/packages/desktop/src/context/sdk.tsx @@ -2,34 +2,31 @@ import { createOpencodeClient, type Event } from "@opencode-ai/sdk/client" import { createSimpleContext } from "./helper" import { createGlobalEmitter } from "@solid-primitives/event-bus" import { onCleanup } from "solid-js" +import { useGlobalSDK } from "./global-sdk" export const { use: useSDK, provider: SDKProvider } = createSimpleContext({ name: "SDK", - init: (props: { url: string; directory?: string }) => { + init: (props: { directory: string }) => { + const globalSDK = useGlobalSDK() const abort = new AbortController() - const sdk = createOpencodeClient( - { - baseUrl: props.url, - signal: abort.signal, - }, - { directory: props.directory }, - ) + const sdk = createOpencodeClient({ + baseUrl: globalSDK.url, + signal: abort.signal, + directory: props.directory, + }) const emitter = createGlobalEmitter<{ [key in Event["type"]]: Extract<Event, { type: key }> }>() - sdk.event.subscribe().then(async (events) => { - for await (const event of events.stream) { - console.log("event", event.type) - emitter.emit(event.type, event) - } + globalSDK.event.on(props.directory, async (event) => { + emitter.emit(event.type, event) }) onCleanup(() => { abort.abort() }) - return { url: props.url, directory: props.directory, client: sdk, event: emitter } + return { directory: props.directory, client: sdk, event: emitter } }, }) |
