diff options
Diffstat (limited to 'packages/sdk/js/src')
| -rw-r--r-- | packages/sdk/js/src/client.ts | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/packages/sdk/js/src/client.ts b/packages/sdk/js/src/client.ts index ac9aa1519..ebe0b8ed4 100644 --- a/packages/sdk/js/src/client.ts +++ b/packages/sdk/js/src/client.ts @@ -5,7 +5,7 @@ import { createClient } from "./gen/client/client.gen.js" import { type Config } from "./gen/client/types.gen.js" import { OpencodeClient } from "./gen/sdk.gen.js" -export function createOpencodeClient(config?: Config) { +export function createOpencodeClient(config?: Config, options?: { directory?: string }) { if (!config?.fetch) { config = { ...config, @@ -18,5 +18,15 @@ export function createOpencodeClient(config?: Config) { } const client = createClient(config) + + if (options?.directory) { + async function middleware(request: Request) { + const url = new URL(request.url) + url.searchParams.set("directory", options!.directory!) + return new Request(url.toString(), request) + } + client.interceptors.request.use(middleware) + } + return new OpencodeClient({ client }) } |
