client.ts 576 B

12345678910111213141516171819202122
  1. export * from "./gen/types.gen.js"
  2. export { type Config as OpencodeClientConfig, OpencodeClient }
  3. import { createClient } from "./gen/client/client.gen.js"
  4. import { type Config } from "./gen/client/types.gen.js"
  5. import { OpencodeClient } from "./gen/sdk.gen.js"
  6. export function createOpencodeClient(config?: Config) {
  7. if (!config?.fetch) {
  8. config = {
  9. ...config,
  10. fetch: (req) => {
  11. // @ts-ignore
  12. req.timeout = false
  13. return fetch(req)
  14. },
  15. }
  16. }
  17. const client = createClient(config)
  18. return new OpencodeClient({ client })
  19. }