generate.ts 803 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/usr/bin/env bun
  2. const dir = new URL("..", import.meta.url).pathname
  3. process.chdir(dir)
  4. import { $ } from "bun"
  5. import path from "path"
  6. import { createClient } from "@hey-api/openapi-ts"
  7. await $`bun dev generate > ${dir}/openapi.json`.cwd(path.resolve(dir, "../../opencode"))
  8. await createClient({
  9. input: "./openapi.json",
  10. output: {
  11. path: "./src/gen",
  12. tsConfigPath: path.join(dir, "tsconfig.json"),
  13. },
  14. plugins: [
  15. {
  16. name: "@hey-api/typescript",
  17. exportFromIndex: false,
  18. },
  19. {
  20. name: "@hey-api/sdk",
  21. instance: "OpencodeClient",
  22. exportFromIndex: false,
  23. auth: false,
  24. },
  25. {
  26. name: "@hey-api/client-fetch",
  27. exportFromIndex: false,
  28. baseUrl: "http://localhost:4096",
  29. },
  30. ],
  31. })
  32. await $`bun prettier --write src/gen`