@hey-api/openapi-ts 0.87.0 → 0.87.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +3 -1
  2. package/dist/clients/angular/index.ts +0 -1
  3. package/dist/clients/angular/types.ts +0 -27
  4. package/dist/clients/axios/index.ts +0 -1
  5. package/dist/clients/axios/types.ts +0 -19
  6. package/dist/clients/fetch/index.ts +0 -1
  7. package/dist/clients/fetch/types.ts +0 -27
  8. package/dist/clients/ky/client.ts +339 -0
  9. package/dist/clients/ky/index.ts +24 -0
  10. package/dist/clients/ky/types.ts +271 -0
  11. package/dist/clients/ky/utils.ts +328 -0
  12. package/dist/clients/next/index.ts +0 -1
  13. package/dist/clients/next/types.ts +0 -19
  14. package/dist/clients/nuxt/index.ts +0 -1
  15. package/dist/clients/nuxt/types.ts +0 -12
  16. package/dist/clients/ofetch/index.ts +0 -1
  17. package/dist/clients/ofetch/types.ts +0 -27
  18. package/dist/{config-B2o9ax_a.d.cts → config-CQeoZYf_.d.cts} +769 -266
  19. package/dist/{config-oAoGatJ7.d.ts → config-U5JEpxGS.d.ts} +794 -291
  20. package/dist/index.cjs +1 -1
  21. package/dist/index.d.cts +28 -14
  22. package/dist/index.d.ts +28 -14
  23. package/dist/index.js +1 -1
  24. package/dist/internal.cjs +1 -1
  25. package/dist/internal.d.cts +1 -1
  26. package/dist/internal.d.ts +1 -1
  27. package/dist/internal.js +1 -1
  28. package/dist/openApi-CT-iM-D8.cjs +19 -0
  29. package/dist/openApi-CT-iM-D8.cjs.map +1 -0
  30. package/dist/openApi-HKXoyF4o.js +19 -0
  31. package/dist/openApi-HKXoyF4o.js.map +1 -0
  32. package/dist/run.cjs +1 -1
  33. package/dist/run.cjs.map +1 -1
  34. package/dist/run.js +1 -1
  35. package/dist/run.js.map +1 -1
  36. package/dist/{src-CTUbY-zd.js → src-Ba-zyEiS.js} +2 -2
  37. package/dist/{src-CTUbY-zd.js.map → src-Ba-zyEiS.js.map} +1 -1
  38. package/dist/{src-H1fIt1p4.cjs → src-CNO_U6s-.cjs} +2 -2
  39. package/dist/{src-H1fIt1p4.cjs.map → src-CNO_U6s-.cjs.map} +1 -1
  40. package/package.json +4 -3
  41. package/dist/openApi-BWD76jue.cjs +0 -21
  42. package/dist/openApi-BWD76jue.cjs.map +0 -1
  43. package/dist/openApi-DXfWYPpF.js +0 -21
  44. package/dist/openApi-DXfWYPpF.js.map +0 -1
package/dist/run.cjs CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- const e=require(`./openApi-BWD76jue.cjs`),t=require(`./src-H1fIt1p4.cjs`);let n=require(`commander`);n=e.E(n);var r=`0.87.0`,i={"openapi-ts":`./bin/run.js`};const a=e=>e===`true`?!0:e===`false`?!1:e,o=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`string`){let r=a(t);delete e[n],e[n]=r}}return e},s=async()=>{let e=new n.Command().name(Object.keys(i)[0]).usage(`[options]`).version(r).option(`-c, --client <value>`,`HTTP client to generate`).option(`-d, --debug`,`Set log level to debug`).option(`--dry-run [value]`,`Skip writing files to disk?`).option(`-f, --file [value]`,`Path to the config file`).option(`-i, --input <value>`,`OpenAPI specification (path, url, or string content)`).option(`-l, --logs [value]`,`Logs folder`).option(`-o, --output <value>`,`Output folder`).option(`-p, --plugins [value...]`,`List of plugins you'd like to use`).option(`-s, --silent`,`Set log level to silent`).option(`--no-log-file`,`Disable writing a log file. Works like --silent but without suppressing console output`).option(`-w, --watch [value]`,`Regenerate the client when the input file changes?`).parse(process.argv).opts(),s;try{s=o(e,[`dryRun`,`logFile`]),s.file&&(s.configFile=s.file,delete s.file),e.plugins===!0?s.plugins=[]:e.plugins?s.plugins=e.plugins:s.client&&(s.plugins=[`@hey-api/typescript`,`@hey-api/sdk`]),s.client&&(s.plugins.push(s.client),delete s.client),s.logs=s.logs?{path:s.logs}:{},s.debug||a(process.env.DEBUG)?(s.logs.level=`debug`,delete s.debug):s.silent&&(s.logs.level=`silent`,delete s.silent),s.logs.file=s.logFile,delete s.logFile,typeof e.watch==`string`&&(s.watch=Number.parseInt(e.watch,10)),Object.keys(s.logs).length||delete s.logs,(await t.r(s))[0]?.config.input.some(e=>e.watch&&e.watch.enabled)||process.exit(0)}catch{process.exit(1)}};s();
2
+ const e=require(`./openApi-CT-iM-D8.cjs`),t=require(`./src-CNO_U6s-.cjs`);let n=require(`commander`);n=e.E(n);var r=`0.87.2`,i={"openapi-ts":`./bin/run.js`};const a=e=>e===`true`?!0:e===`false`?!1:e,o=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`string`){let r=a(t);delete e[n],e[n]=r}}return e},s=async()=>{let e=new n.Command().name(Object.keys(i)[0]).usage(`[options]`).version(r).option(`-c, --client <value>`,`HTTP client to generate`).option(`-d, --debug`,`Set log level to debug`).option(`--dry-run [value]`,`Skip writing files to disk?`).option(`-f, --file [value]`,`Path to the config file`).option(`-i, --input <value>`,`OpenAPI specification (path, url, or string content)`).option(`-l, --logs [value]`,`Logs folder`).option(`-o, --output <value>`,`Output folder`).option(`-p, --plugins [value...]`,`List of plugins you'd like to use`).option(`-s, --silent`,`Set log level to silent`).option(`--no-log-file`,`Disable writing a log file. Works like --silent but without suppressing console output`).option(`-w, --watch [value]`,`Regenerate the client when the input file changes?`).parse(process.argv).opts(),s;try{s=o(e,[`dryRun`,`logFile`]),s.file&&(s.configFile=s.file,delete s.file),e.plugins===!0?s.plugins=[]:e.plugins?s.plugins=e.plugins:s.client&&(s.plugins=[`@hey-api/typescript`,`@hey-api/sdk`]),s.client&&(s.plugins.push(s.client),delete s.client),s.logs=s.logs?{path:s.logs}:{},s.debug||a(process.env.DEBUG)?(s.logs.level=`debug`,delete s.debug):s.silent&&(s.logs.level=`silent`,delete s.silent),s.logs.file=s.logFile,delete s.logFile,typeof e.watch==`string`&&(s.watch=Number.parseInt(e.watch,10)),Object.keys(s.logs).length||delete s.logs,(await t.r(s))[0]?.config.input.some(e=>e.watch&&e.watch.enabled)||process.exit(0)}catch{process.exit(1)}};s();
3
3
  //# sourceMappingURL=run.cjs.map
package/dist/run.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.cjs","names":["Command","pkg.bin","pkg.version","userConfig: Record<string, unknown>","createClient"],"sources":["../package.json","../src/cli.ts","../src/run.ts"],"sourcesContent":["{\n \"name\": \"@hey-api/openapi-ts\",\n \"version\": \"0.87.0\",\n \"description\": \"🚀 The OpenAPI to TypeScript codegen. Generate clients, SDKs, validators, and more.\",\n \"homepage\": \"https://heyapi.dev/\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/hey-api/openapi-ts.git\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/hey-api/openapi-ts/issues\"\n },\n \"license\": \"MIT\",\n \"author\": {\n \"email\": \"lubos@heyapi.dev\",\n \"name\": \"Hey API\",\n \"url\": \"https://heyapi.dev\"\n },\n \"funding\": \"https://github.com/sponsors/hey-api\",\n \"keywords\": [\n \"angular\",\n \"axios\",\n \"codegen\",\n \"fetch\",\n \"generator\",\n \"http\",\n \"javascript\",\n \"json\",\n \"next\",\n \"next.js\",\n \"node\",\n \"nuxt\",\n \"ofetch\",\n \"openapi\",\n \"rest\",\n \"swagger\",\n \"typescript\",\n \"xhr\",\n \"yaml\"\n ],\n \"type\": \"module\",\n \"main\": \"./dist/index.cjs\",\n \"module\": \"./dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": {\n \"types\": \"./dist/index.d.ts\",\n \"default\": \"./dist/index.js\"\n },\n \"require\": {\n \"types\": \"./dist/index.d.cts\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"./internal\": {\n \"import\": {\n \"types\": \"./dist/internal.d.ts\",\n \"default\": \"./dist/internal.js\"\n },\n \"require\": {\n \"types\": \"./dist/internal.d.cts\",\n \"default\": \"./dist/internal.cjs\"\n }\n },\n \"./package.json\": \"./package.json\"\n },\n \"bin\": {\n \"openapi-ts\": \"./bin/run.js\"\n },\n \"files\": [\n \"bin\",\n \"dist\",\n \"LICENSE.md\",\n \"README.md\"\n ],\n \"scripts\": {\n \"build\": \"tsdown && pnpm check-exports\",\n \"check-exports\": \"attw --pack . --profile node16\",\n \"dev\": \"tsdown --watch\",\n \"prepublishOnly\": \"pnpm build\",\n \"test:coverage\": \"vitest run --coverage\",\n \"test:update\": \"vitest watch --update\",\n \"test:watch\": \"vitest watch\",\n \"test\": \"vitest run\",\n \"typecheck\": \"tsc --noEmit\"\n },\n \"engines\": {\n \"node\": \">=20.19.0\"\n },\n \"dependencies\": {\n \"@hey-api/codegen-core\": \"workspace:^0.3.3\",\n \"@hey-api/json-schema-ref-parser\": \"1.2.1\",\n \"ansi-colors\": \"4.1.3\",\n \"c12\": \"3.3.1\",\n \"color-support\": \"1.1.3\",\n \"commander\": \"14.0.1\",\n \"open\": \"10.2.0\",\n \"semver\": \"7.7.2\"\n },\n \"peerDependencies\": {\n \"typescript\": \">=5.5.3\"\n },\n \"devDependencies\": {\n \"@angular/common\": \"19.2.15\",\n \"@angular/compiler\": \"19.2.15\",\n \"@angular/compiler-cli\": \"19.2.15\",\n \"@angular/core\": \"19.2.15\",\n \"@angular/platform-browser\": \"19.2.15\",\n \"@angular/platform-browser-dynamic\": \"19.2.15\",\n \"@angular/router\": \"19.2.15\",\n \"@config/vite-base\": \"workspace:*\",\n \"@types/bun\": \"1.3.1\",\n \"@types/cross-spawn\": \"6.0.6\",\n \"@types/semver\": \"7.7.1\",\n \"axios\": \"1.8.2\",\n \"cross-spawn\": \"7.0.6\",\n \"eslint\": \"9.17.0\",\n \"nuxt\": \"3.14.1592\",\n \"ofetch\": \"1.4.1\",\n \"prettier\": \"3.4.2\",\n \"rxjs\": \"7.8.2\",\n \"typescript\": \"5.9.3\",\n \"vue\": \"3.5.13\",\n \"yaml\": \"2.8.0\",\n \"zone.js\": \"0.15.1\"\n }\n}\n","import type { OptionValues } from 'commander';\nimport { Command } from 'commander';\n\nimport { createClient } from '~/index';\n\nimport pkg from '../package.json' assert { type: 'json' };\n\nconst stringToBoolean = (\n value: string | undefined,\n): boolean | string | undefined => {\n if (value === 'true') return true;\n if (value === 'false') return false;\n return value;\n};\n\nconst processParams = (\n obj: OptionValues,\n booleanKeys: ReadonlyArray<string>,\n): OptionValues => {\n for (const key of booleanKeys) {\n const value = obj[key];\n if (typeof value === 'string') {\n const parsedValue = stringToBoolean(value);\n delete obj[key];\n obj[key] = parsedValue;\n }\n }\n return obj;\n};\n\nexport const runCli = async (): Promise<void> => {\n const params = new Command()\n .name(Object.keys(pkg.bin)[0]!)\n .usage('[options]')\n .version(pkg.version)\n .option('-c, --client <value>', 'HTTP client to generate')\n .option('-d, --debug', 'Set log level to debug')\n .option('--dry-run [value]', 'Skip writing files to disk?')\n .option('-f, --file [value]', 'Path to the config file')\n .option(\n '-i, --input <value>',\n 'OpenAPI specification (path, url, or string content)',\n )\n .option('-l, --logs [value]', 'Logs folder')\n .option('-o, --output <value>', 'Output folder')\n .option('-p, --plugins [value...]', \"List of plugins you'd like to use\")\n .option('-s, --silent', 'Set log level to silent')\n .option(\n '--no-log-file',\n 'Disable writing a log file. Works like --silent but without suppressing console output',\n )\n .option(\n '-w, --watch [value]',\n 'Regenerate the client when the input file changes?',\n )\n .parse(process.argv)\n .opts();\n\n let userConfig: Record<string, unknown>;\n\n try {\n userConfig = processParams(params, ['dryRun', 'logFile']);\n\n if (userConfig.file) {\n userConfig.configFile = userConfig.file;\n delete userConfig.file;\n }\n\n if (params.plugins === true) {\n userConfig.plugins = [];\n } else if (params.plugins) {\n userConfig.plugins = params.plugins;\n } else if (userConfig.client) {\n userConfig.plugins = ['@hey-api/typescript', '@hey-api/sdk'];\n }\n\n if (userConfig.client) {\n (userConfig.plugins as Array<string>).push(userConfig.client as string);\n delete userConfig.client;\n }\n\n userConfig.logs = userConfig.logs\n ? {\n path: userConfig.logs,\n }\n : {};\n\n if (userConfig.debug || stringToBoolean(process.env.DEBUG)) {\n (userConfig.logs as Record<string, unknown>).level = 'debug';\n delete userConfig.debug;\n } else if (userConfig.silent) {\n (userConfig.logs as Record<string, unknown>).level = 'silent';\n delete userConfig.silent;\n }\n\n (userConfig.logs as Record<string, unknown>).file = userConfig.logFile;\n delete userConfig.logFile;\n\n if (typeof params.watch === 'string') {\n userConfig.watch = Number.parseInt(params.watch, 10);\n }\n\n if (!Object.keys(userConfig.logs as Record<string, unknown>).length) {\n delete userConfig.logs;\n }\n\n const context = await createClient(\n userConfig as unknown as Required<Parameters<typeof createClient>>[0],\n );\n if (\n !context[0]?.config.input.some(\n (input) => input.watch && input.watch.enabled,\n )\n ) {\n process.exit(0);\n }\n } catch {\n process.exit(1);\n }\n};\n","#!/usr/bin/env node\n\nimport { runCli } from '~/cli';\n\nrunCli();\n"],"mappings":";oHAEa,WAiEJ,CACL,aAAc,eACf,CC9DH,MAAM,EACJ,GAEI,IAAU,OAAe,GACzB,IAAU,QAAgB,GACvB,EAGH,GACJ,EACA,IACiB,CACjB,IAAK,IAAM,KAAO,EAAa,CAC7B,IAAM,EAAQ,EAAI,GAClB,GAAI,OAAO,GAAU,SAAU,CAC7B,IAAM,EAAc,EAAgB,EAAM,CAC1C,OAAO,EAAI,GACX,EAAI,GAAO,GAGf,OAAO,GAGI,EAAS,SAA2B,CAC/C,IAAM,EAAS,IAAIA,EAAAA,SAAS,CACzB,KAAK,OAAO,KAAKC,EAAQ,CAAC,GAAI,CAC9B,MAAM,YAAY,CAClB,QAAQC,EAAY,CACpB,OAAO,uBAAwB,0BAA0B,CACzD,OAAO,cAAe,yBAAyB,CAC/C,OAAO,oBAAqB,8BAA8B,CAC1D,OAAO,qBAAsB,0BAA0B,CACvD,OACC,sBACA,uDACD,CACA,OAAO,qBAAsB,cAAc,CAC3C,OAAO,uBAAwB,gBAAgB,CAC/C,OAAO,2BAA4B,oCAAoC,CACvE,OAAO,eAAgB,0BAA0B,CACjD,OACC,gBACA,yFACD,CACA,OACC,sBACA,qDACD,CACA,MAAM,QAAQ,KAAK,CACnB,MAAM,CAELC,EAEJ,GAAI,CACF,EAAa,EAAc,EAAQ,CAAC,SAAU,UAAU,CAAC,CAErD,EAAW,OACb,EAAW,WAAa,EAAW,KACnC,OAAO,EAAW,MAGhB,EAAO,UAAY,GACrB,EAAW,QAAU,EAAE,CACd,EAAO,QAChB,EAAW,QAAU,EAAO,QACnB,EAAW,SACpB,EAAW,QAAU,CAAC,sBAAuB,eAAe,EAG1D,EAAW,SACZ,EAAW,QAA0B,KAAK,EAAW,OAAiB,CACvE,OAAO,EAAW,QAGpB,EAAW,KAAO,EAAW,KACzB,CACE,KAAM,EAAW,KAClB,CACD,EAAE,CAEF,EAAW,OAAS,EAAgB,QAAQ,IAAI,MAAM,EACvD,EAAW,KAAiC,MAAQ,QACrD,OAAO,EAAW,OACT,EAAW,SACnB,EAAW,KAAiC,MAAQ,SACrD,OAAO,EAAW,QAGnB,EAAW,KAAiC,KAAO,EAAW,QAC/D,OAAO,EAAW,QAEd,OAAO,EAAO,OAAU,WAC1B,EAAW,MAAQ,OAAO,SAAS,EAAO,MAAO,GAAG,EAGjD,OAAO,KAAK,EAAW,KAAgC,CAAC,QAC3D,OAAO,EAAW,MAGJ,MAAMC,EAAAA,EACpB,EACD,EAEU,IAAI,OAAO,MAAM,KACvB,GAAU,EAAM,OAAS,EAAM,MAAM,QACvC,EAED,QAAQ,KAAK,EAAE,MAEX,CACN,QAAQ,KAAK,EAAE,GCjHnB,GAAQ"}
1
+ {"version":3,"file":"run.cjs","names":["Command","pkg.bin","pkg.version","userConfig: Record<string, unknown>","createClient"],"sources":["../package.json","../src/cli.ts","../src/run.ts"],"sourcesContent":["{\n \"name\": \"@hey-api/openapi-ts\",\n \"version\": \"0.87.2\",\n \"description\": \"🚀 The OpenAPI to TypeScript codegen. Generate clients, SDKs, validators, and more.\",\n \"homepage\": \"https://heyapi.dev/\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/hey-api/openapi-ts.git\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/hey-api/openapi-ts/issues\"\n },\n \"license\": \"MIT\",\n \"author\": {\n \"email\": \"lubos@heyapi.dev\",\n \"name\": \"Hey API\",\n \"url\": \"https://heyapi.dev\"\n },\n \"funding\": \"https://github.com/sponsors/hey-api\",\n \"keywords\": [\n \"angular\",\n \"axios\",\n \"codegen\",\n \"fetch\",\n \"generator\",\n \"http\",\n \"javascript\",\n \"json\",\n \"next\",\n \"next.js\",\n \"node\",\n \"nuxt\",\n \"ofetch\",\n \"openapi\",\n \"rest\",\n \"swagger\",\n \"typescript\",\n \"xhr\",\n \"yaml\"\n ],\n \"type\": \"module\",\n \"main\": \"./dist/index.cjs\",\n \"module\": \"./dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": {\n \"types\": \"./dist/index.d.ts\",\n \"default\": \"./dist/index.js\"\n },\n \"require\": {\n \"types\": \"./dist/index.d.cts\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"./internal\": {\n \"import\": {\n \"types\": \"./dist/internal.d.ts\",\n \"default\": \"./dist/internal.js\"\n },\n \"require\": {\n \"types\": \"./dist/internal.d.cts\",\n \"default\": \"./dist/internal.cjs\"\n }\n },\n \"./package.json\": \"./package.json\"\n },\n \"bin\": {\n \"openapi-ts\": \"./bin/run.js\"\n },\n \"files\": [\n \"bin\",\n \"dist\",\n \"LICENSE.md\",\n \"README.md\"\n ],\n \"scripts\": {\n \"build\": \"tsdown && pnpm check-exports\",\n \"check-exports\": \"attw --pack . --profile node16\",\n \"dev\": \"tsdown --watch\",\n \"prepublishOnly\": \"pnpm build\",\n \"test:coverage\": \"vitest run --coverage\",\n \"test:update\": \"vitest watch --update\",\n \"test:watch\": \"vitest watch\",\n \"test\": \"vitest run\",\n \"typecheck\": \"tsc --noEmit\"\n },\n \"engines\": {\n \"node\": \">=20.19.0\"\n },\n \"dependencies\": {\n \"@hey-api/codegen-core\": \"workspace:^0.3.3\",\n \"@hey-api/json-schema-ref-parser\": \"1.2.1\",\n \"ansi-colors\": \"4.1.3\",\n \"c12\": \"3.3.1\",\n \"color-support\": \"1.1.3\",\n \"commander\": \"14.0.1\",\n \"open\": \"10.2.0\",\n \"semver\": \"7.7.2\"\n },\n \"peerDependencies\": {\n \"typescript\": \">=5.5.3\"\n },\n \"devDependencies\": {\n \"@angular/common\": \"19.2.15\",\n \"@angular/compiler\": \"19.2.15\",\n \"@angular/compiler-cli\": \"19.2.15\",\n \"@angular/core\": \"19.2.15\",\n \"@angular/platform-browser\": \"19.2.15\",\n \"@angular/platform-browser-dynamic\": \"19.2.15\",\n \"@angular/router\": \"19.2.15\",\n \"@config/vite-base\": \"workspace:*\",\n \"@types/bun\": \"1.3.1\",\n \"@types/cross-spawn\": \"6.0.6\",\n \"@types/semver\": \"7.7.1\",\n \"axios\": \"1.8.2\",\n \"cross-spawn\": \"7.0.6\",\n \"eslint\": \"9.17.0\",\n \"ky\": \"1.14.0\",\n \"nuxt\": \"3.14.1592\",\n \"ofetch\": \"1.4.1\",\n \"prettier\": \"3.4.2\",\n \"rxjs\": \"7.8.2\",\n \"typescript\": \"5.9.3\",\n \"vue\": \"3.5.23\",\n \"yaml\": \"2.8.1\",\n \"zone.js\": \"0.15.1\"\n }\n}\n","import type { OptionValues } from 'commander';\nimport { Command } from 'commander';\n\nimport { createClient } from '~/index';\n\nimport pkg from '../package.json' assert { type: 'json' };\n\nconst stringToBoolean = (\n value: string | undefined,\n): boolean | string | undefined => {\n if (value === 'true') return true;\n if (value === 'false') return false;\n return value;\n};\n\nconst processParams = (\n obj: OptionValues,\n booleanKeys: ReadonlyArray<string>,\n): OptionValues => {\n for (const key of booleanKeys) {\n const value = obj[key];\n if (typeof value === 'string') {\n const parsedValue = stringToBoolean(value);\n delete obj[key];\n obj[key] = parsedValue;\n }\n }\n return obj;\n};\n\nexport const runCli = async (): Promise<void> => {\n const params = new Command()\n .name(Object.keys(pkg.bin)[0]!)\n .usage('[options]')\n .version(pkg.version)\n .option('-c, --client <value>', 'HTTP client to generate')\n .option('-d, --debug', 'Set log level to debug')\n .option('--dry-run [value]', 'Skip writing files to disk?')\n .option('-f, --file [value]', 'Path to the config file')\n .option(\n '-i, --input <value>',\n 'OpenAPI specification (path, url, or string content)',\n )\n .option('-l, --logs [value]', 'Logs folder')\n .option('-o, --output <value>', 'Output folder')\n .option('-p, --plugins [value...]', \"List of plugins you'd like to use\")\n .option('-s, --silent', 'Set log level to silent')\n .option(\n '--no-log-file',\n 'Disable writing a log file. Works like --silent but without suppressing console output',\n )\n .option(\n '-w, --watch [value]',\n 'Regenerate the client when the input file changes?',\n )\n .parse(process.argv)\n .opts();\n\n let userConfig: Record<string, unknown>;\n\n try {\n userConfig = processParams(params, ['dryRun', 'logFile']);\n\n if (userConfig.file) {\n userConfig.configFile = userConfig.file;\n delete userConfig.file;\n }\n\n if (params.plugins === true) {\n userConfig.plugins = [];\n } else if (params.plugins) {\n userConfig.plugins = params.plugins;\n } else if (userConfig.client) {\n userConfig.plugins = ['@hey-api/typescript', '@hey-api/sdk'];\n }\n\n if (userConfig.client) {\n (userConfig.plugins as Array<string>).push(userConfig.client as string);\n delete userConfig.client;\n }\n\n userConfig.logs = userConfig.logs\n ? {\n path: userConfig.logs,\n }\n : {};\n\n if (userConfig.debug || stringToBoolean(process.env.DEBUG)) {\n (userConfig.logs as Record<string, unknown>).level = 'debug';\n delete userConfig.debug;\n } else if (userConfig.silent) {\n (userConfig.logs as Record<string, unknown>).level = 'silent';\n delete userConfig.silent;\n }\n\n (userConfig.logs as Record<string, unknown>).file = userConfig.logFile;\n delete userConfig.logFile;\n\n if (typeof params.watch === 'string') {\n userConfig.watch = Number.parseInt(params.watch, 10);\n }\n\n if (!Object.keys(userConfig.logs as Record<string, unknown>).length) {\n delete userConfig.logs;\n }\n\n const context = await createClient(\n userConfig as unknown as Required<Parameters<typeof createClient>>[0],\n );\n if (\n !context[0]?.config.input.some(\n (input) => input.watch && input.watch.enabled,\n )\n ) {\n process.exit(0);\n }\n } catch {\n process.exit(1);\n }\n};\n","#!/usr/bin/env node\n\nimport { runCli } from '~/cli';\n\nrunCli();\n"],"mappings":";oHAEa,WAiEJ,CACL,aAAc,eACf,CC9DH,MAAM,EACJ,GAEI,IAAU,OAAe,GACzB,IAAU,QAAgB,GACvB,EAGH,GACJ,EACA,IACiB,CACjB,IAAK,IAAM,KAAO,EAAa,CAC7B,IAAM,EAAQ,EAAI,GAClB,GAAI,OAAO,GAAU,SAAU,CAC7B,IAAM,EAAc,EAAgB,EAAM,CAC1C,OAAO,EAAI,GACX,EAAI,GAAO,GAGf,OAAO,GAGI,EAAS,SAA2B,CAC/C,IAAM,EAAS,IAAIA,EAAAA,SAAS,CACzB,KAAK,OAAO,KAAKC,EAAQ,CAAC,GAAI,CAC9B,MAAM,YAAY,CAClB,QAAQC,EAAY,CACpB,OAAO,uBAAwB,0BAA0B,CACzD,OAAO,cAAe,yBAAyB,CAC/C,OAAO,oBAAqB,8BAA8B,CAC1D,OAAO,qBAAsB,0BAA0B,CACvD,OACC,sBACA,uDACD,CACA,OAAO,qBAAsB,cAAc,CAC3C,OAAO,uBAAwB,gBAAgB,CAC/C,OAAO,2BAA4B,oCAAoC,CACvE,OAAO,eAAgB,0BAA0B,CACjD,OACC,gBACA,yFACD,CACA,OACC,sBACA,qDACD,CACA,MAAM,QAAQ,KAAK,CACnB,MAAM,CAELC,EAEJ,GAAI,CACF,EAAa,EAAc,EAAQ,CAAC,SAAU,UAAU,CAAC,CAErD,EAAW,OACb,EAAW,WAAa,EAAW,KACnC,OAAO,EAAW,MAGhB,EAAO,UAAY,GACrB,EAAW,QAAU,EAAE,CACd,EAAO,QAChB,EAAW,QAAU,EAAO,QACnB,EAAW,SACpB,EAAW,QAAU,CAAC,sBAAuB,eAAe,EAG1D,EAAW,SACZ,EAAW,QAA0B,KAAK,EAAW,OAAiB,CACvE,OAAO,EAAW,QAGpB,EAAW,KAAO,EAAW,KACzB,CACE,KAAM,EAAW,KAClB,CACD,EAAE,CAEF,EAAW,OAAS,EAAgB,QAAQ,IAAI,MAAM,EACvD,EAAW,KAAiC,MAAQ,QACrD,OAAO,EAAW,OACT,EAAW,SACnB,EAAW,KAAiC,MAAQ,SACrD,OAAO,EAAW,QAGnB,EAAW,KAAiC,KAAO,EAAW,QAC/D,OAAO,EAAW,QAEd,OAAO,EAAO,OAAU,WAC1B,EAAW,MAAQ,OAAO,SAAS,EAAO,MAAO,GAAG,EAGjD,OAAO,KAAK,EAAW,KAAgC,CAAC,QAC3D,OAAO,EAAW,MAGJ,MAAMC,EAAAA,EACpB,EACD,EAEU,IAAI,OAAO,MAAM,KACvB,GAAU,EAAM,OAAS,EAAM,MAAM,QACvC,EAED,QAAQ,KAAK,EAAE,MAEX,CACN,QAAQ,KAAK,EAAE,GCjHnB,GAAQ"}
package/dist/run.js CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import"./openApi-DXfWYPpF.js";import{r as e}from"./src-CTUbY-zd.js";import{Command as t}from"commander";var n=`0.87.0`,r={"openapi-ts":`./bin/run.js`};const i=e=>e===`true`?!0:e===`false`?!1:e,a=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`string`){let r=i(t);delete e[n],e[n]=r}}return e};(async()=>{let o=new t().name(Object.keys(r)[0]).usage(`[options]`).version(n).option(`-c, --client <value>`,`HTTP client to generate`).option(`-d, --debug`,`Set log level to debug`).option(`--dry-run [value]`,`Skip writing files to disk?`).option(`-f, --file [value]`,`Path to the config file`).option(`-i, --input <value>`,`OpenAPI specification (path, url, or string content)`).option(`-l, --logs [value]`,`Logs folder`).option(`-o, --output <value>`,`Output folder`).option(`-p, --plugins [value...]`,`List of plugins you'd like to use`).option(`-s, --silent`,`Set log level to silent`).option(`--no-log-file`,`Disable writing a log file. Works like --silent but without suppressing console output`).option(`-w, --watch [value]`,`Regenerate the client when the input file changes?`).parse(process.argv).opts(),s;try{s=a(o,[`dryRun`,`logFile`]),s.file&&(s.configFile=s.file,delete s.file),o.plugins===!0?s.plugins=[]:o.plugins?s.plugins=o.plugins:s.client&&(s.plugins=[`@hey-api/typescript`,`@hey-api/sdk`]),s.client&&(s.plugins.push(s.client),delete s.client),s.logs=s.logs?{path:s.logs}:{},s.debug||i(process.env.DEBUG)?(s.logs.level=`debug`,delete s.debug):s.silent&&(s.logs.level=`silent`,delete s.silent),s.logs.file=s.logFile,delete s.logFile,typeof o.watch==`string`&&(s.watch=Number.parseInt(o.watch,10)),Object.keys(s.logs).length||delete s.logs,(await e(s))[0]?.config.input.some(e=>e.watch&&e.watch.enabled)||process.exit(0)}catch{process.exit(1)}})();export{};
2
+ import"./openApi-HKXoyF4o.js";import{r as e}from"./src-Ba-zyEiS.js";import{Command as t}from"commander";var n=`0.87.2`,r={"openapi-ts":`./bin/run.js`};const i=e=>e===`true`?!0:e===`false`?!1:e,a=(e,t)=>{for(let n of t){let t=e[n];if(typeof t==`string`){let r=i(t);delete e[n],e[n]=r}}return e};(async()=>{let o=new t().name(Object.keys(r)[0]).usage(`[options]`).version(n).option(`-c, --client <value>`,`HTTP client to generate`).option(`-d, --debug`,`Set log level to debug`).option(`--dry-run [value]`,`Skip writing files to disk?`).option(`-f, --file [value]`,`Path to the config file`).option(`-i, --input <value>`,`OpenAPI specification (path, url, or string content)`).option(`-l, --logs [value]`,`Logs folder`).option(`-o, --output <value>`,`Output folder`).option(`-p, --plugins [value...]`,`List of plugins you'd like to use`).option(`-s, --silent`,`Set log level to silent`).option(`--no-log-file`,`Disable writing a log file. Works like --silent but without suppressing console output`).option(`-w, --watch [value]`,`Regenerate the client when the input file changes?`).parse(process.argv).opts(),s;try{s=a(o,[`dryRun`,`logFile`]),s.file&&(s.configFile=s.file,delete s.file),o.plugins===!0?s.plugins=[]:o.plugins?s.plugins=o.plugins:s.client&&(s.plugins=[`@hey-api/typescript`,`@hey-api/sdk`]),s.client&&(s.plugins.push(s.client),delete s.client),s.logs=s.logs?{path:s.logs}:{},s.debug||i(process.env.DEBUG)?(s.logs.level=`debug`,delete s.debug):s.silent&&(s.logs.level=`silent`,delete s.silent),s.logs.file=s.logFile,delete s.logFile,typeof o.watch==`string`&&(s.watch=Number.parseInt(o.watch,10)),Object.keys(s.logs).length||delete s.logs,(await e(s))[0]?.config.input.some(e=>e.watch&&e.watch.enabled)||process.exit(0)}catch{process.exit(1)}})();export{};
3
3
  //# sourceMappingURL=run.js.map
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","names":["pkg.bin","pkg.version","userConfig: Record<string, unknown>"],"sources":["../package.json","../src/cli.ts","../src/run.ts"],"sourcesContent":["{\n \"name\": \"@hey-api/openapi-ts\",\n \"version\": \"0.87.0\",\n \"description\": \"🚀 The OpenAPI to TypeScript codegen. Generate clients, SDKs, validators, and more.\",\n \"homepage\": \"https://heyapi.dev/\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/hey-api/openapi-ts.git\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/hey-api/openapi-ts/issues\"\n },\n \"license\": \"MIT\",\n \"author\": {\n \"email\": \"lubos@heyapi.dev\",\n \"name\": \"Hey API\",\n \"url\": \"https://heyapi.dev\"\n },\n \"funding\": \"https://github.com/sponsors/hey-api\",\n \"keywords\": [\n \"angular\",\n \"axios\",\n \"codegen\",\n \"fetch\",\n \"generator\",\n \"http\",\n \"javascript\",\n \"json\",\n \"next\",\n \"next.js\",\n \"node\",\n \"nuxt\",\n \"ofetch\",\n \"openapi\",\n \"rest\",\n \"swagger\",\n \"typescript\",\n \"xhr\",\n \"yaml\"\n ],\n \"type\": \"module\",\n \"main\": \"./dist/index.cjs\",\n \"module\": \"./dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": {\n \"types\": \"./dist/index.d.ts\",\n \"default\": \"./dist/index.js\"\n },\n \"require\": {\n \"types\": \"./dist/index.d.cts\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"./internal\": {\n \"import\": {\n \"types\": \"./dist/internal.d.ts\",\n \"default\": \"./dist/internal.js\"\n },\n \"require\": {\n \"types\": \"./dist/internal.d.cts\",\n \"default\": \"./dist/internal.cjs\"\n }\n },\n \"./package.json\": \"./package.json\"\n },\n \"bin\": {\n \"openapi-ts\": \"./bin/run.js\"\n },\n \"files\": [\n \"bin\",\n \"dist\",\n \"LICENSE.md\",\n \"README.md\"\n ],\n \"scripts\": {\n \"build\": \"tsdown && pnpm check-exports\",\n \"check-exports\": \"attw --pack . --profile node16\",\n \"dev\": \"tsdown --watch\",\n \"prepublishOnly\": \"pnpm build\",\n \"test:coverage\": \"vitest run --coverage\",\n \"test:update\": \"vitest watch --update\",\n \"test:watch\": \"vitest watch\",\n \"test\": \"vitest run\",\n \"typecheck\": \"tsc --noEmit\"\n },\n \"engines\": {\n \"node\": \">=20.19.0\"\n },\n \"dependencies\": {\n \"@hey-api/codegen-core\": \"workspace:^0.3.3\",\n \"@hey-api/json-schema-ref-parser\": \"1.2.1\",\n \"ansi-colors\": \"4.1.3\",\n \"c12\": \"3.3.1\",\n \"color-support\": \"1.1.3\",\n \"commander\": \"14.0.1\",\n \"open\": \"10.2.0\",\n \"semver\": \"7.7.2\"\n },\n \"peerDependencies\": {\n \"typescript\": \">=5.5.3\"\n },\n \"devDependencies\": {\n \"@angular/common\": \"19.2.15\",\n \"@angular/compiler\": \"19.2.15\",\n \"@angular/compiler-cli\": \"19.2.15\",\n \"@angular/core\": \"19.2.15\",\n \"@angular/platform-browser\": \"19.2.15\",\n \"@angular/platform-browser-dynamic\": \"19.2.15\",\n \"@angular/router\": \"19.2.15\",\n \"@config/vite-base\": \"workspace:*\",\n \"@types/bun\": \"1.3.1\",\n \"@types/cross-spawn\": \"6.0.6\",\n \"@types/semver\": \"7.7.1\",\n \"axios\": \"1.8.2\",\n \"cross-spawn\": \"7.0.6\",\n \"eslint\": \"9.17.0\",\n \"nuxt\": \"3.14.1592\",\n \"ofetch\": \"1.4.1\",\n \"prettier\": \"3.4.2\",\n \"rxjs\": \"7.8.2\",\n \"typescript\": \"5.9.3\",\n \"vue\": \"3.5.13\",\n \"yaml\": \"2.8.0\",\n \"zone.js\": \"0.15.1\"\n }\n}\n","import type { OptionValues } from 'commander';\nimport { Command } from 'commander';\n\nimport { createClient } from '~/index';\n\nimport pkg from '../package.json' assert { type: 'json' };\n\nconst stringToBoolean = (\n value: string | undefined,\n): boolean | string | undefined => {\n if (value === 'true') return true;\n if (value === 'false') return false;\n return value;\n};\n\nconst processParams = (\n obj: OptionValues,\n booleanKeys: ReadonlyArray<string>,\n): OptionValues => {\n for (const key of booleanKeys) {\n const value = obj[key];\n if (typeof value === 'string') {\n const parsedValue = stringToBoolean(value);\n delete obj[key];\n obj[key] = parsedValue;\n }\n }\n return obj;\n};\n\nexport const runCli = async (): Promise<void> => {\n const params = new Command()\n .name(Object.keys(pkg.bin)[0]!)\n .usage('[options]')\n .version(pkg.version)\n .option('-c, --client <value>', 'HTTP client to generate')\n .option('-d, --debug', 'Set log level to debug')\n .option('--dry-run [value]', 'Skip writing files to disk?')\n .option('-f, --file [value]', 'Path to the config file')\n .option(\n '-i, --input <value>',\n 'OpenAPI specification (path, url, or string content)',\n )\n .option('-l, --logs [value]', 'Logs folder')\n .option('-o, --output <value>', 'Output folder')\n .option('-p, --plugins [value...]', \"List of plugins you'd like to use\")\n .option('-s, --silent', 'Set log level to silent')\n .option(\n '--no-log-file',\n 'Disable writing a log file. Works like --silent but without suppressing console output',\n )\n .option(\n '-w, --watch [value]',\n 'Regenerate the client when the input file changes?',\n )\n .parse(process.argv)\n .opts();\n\n let userConfig: Record<string, unknown>;\n\n try {\n userConfig = processParams(params, ['dryRun', 'logFile']);\n\n if (userConfig.file) {\n userConfig.configFile = userConfig.file;\n delete userConfig.file;\n }\n\n if (params.plugins === true) {\n userConfig.plugins = [];\n } else if (params.plugins) {\n userConfig.plugins = params.plugins;\n } else if (userConfig.client) {\n userConfig.plugins = ['@hey-api/typescript', '@hey-api/sdk'];\n }\n\n if (userConfig.client) {\n (userConfig.plugins as Array<string>).push(userConfig.client as string);\n delete userConfig.client;\n }\n\n userConfig.logs = userConfig.logs\n ? {\n path: userConfig.logs,\n }\n : {};\n\n if (userConfig.debug || stringToBoolean(process.env.DEBUG)) {\n (userConfig.logs as Record<string, unknown>).level = 'debug';\n delete userConfig.debug;\n } else if (userConfig.silent) {\n (userConfig.logs as Record<string, unknown>).level = 'silent';\n delete userConfig.silent;\n }\n\n (userConfig.logs as Record<string, unknown>).file = userConfig.logFile;\n delete userConfig.logFile;\n\n if (typeof params.watch === 'string') {\n userConfig.watch = Number.parseInt(params.watch, 10);\n }\n\n if (!Object.keys(userConfig.logs as Record<string, unknown>).length) {\n delete userConfig.logs;\n }\n\n const context = await createClient(\n userConfig as unknown as Required<Parameters<typeof createClient>>[0],\n );\n if (\n !context[0]?.config.input.some(\n (input) => input.watch && input.watch.enabled,\n )\n ) {\n process.exit(0);\n }\n } catch {\n process.exit(1);\n }\n};\n","#!/usr/bin/env node\n\nimport { runCli } from '~/cli';\n\nrunCli();\n"],"mappings":";8GAEa,WAiEJ,CACL,aAAc,eACf,CC9DH,MAAM,EACJ,GAEI,IAAU,OAAe,GACzB,IAAU,QAAgB,GACvB,EAGH,GACJ,EACA,IACiB,CACjB,IAAK,IAAM,KAAO,EAAa,CAC7B,IAAM,EAAQ,EAAI,GAClB,GAAI,OAAO,GAAU,SAAU,CAC7B,IAAM,EAAc,EAAgB,EAAM,CAC1C,OAAO,EAAI,GACX,EAAI,GAAO,GAGf,OAAO,IAGa,SAA2B,CAC/C,IAAM,EAAS,IAAI,GAAS,CACzB,KAAK,OAAO,KAAKA,EAAQ,CAAC,GAAI,CAC9B,MAAM,YAAY,CAClB,QAAQC,EAAY,CACpB,OAAO,uBAAwB,0BAA0B,CACzD,OAAO,cAAe,yBAAyB,CAC/C,OAAO,oBAAqB,8BAA8B,CAC1D,OAAO,qBAAsB,0BAA0B,CACvD,OACC,sBACA,uDACD,CACA,OAAO,qBAAsB,cAAc,CAC3C,OAAO,uBAAwB,gBAAgB,CAC/C,OAAO,2BAA4B,oCAAoC,CACvE,OAAO,eAAgB,0BAA0B,CACjD,OACC,gBACA,yFACD,CACA,OACC,sBACA,qDACD,CACA,MAAM,QAAQ,KAAK,CACnB,MAAM,CAELC,EAEJ,GAAI,CACF,EAAa,EAAc,EAAQ,CAAC,SAAU,UAAU,CAAC,CAErD,EAAW,OACb,EAAW,WAAa,EAAW,KACnC,OAAO,EAAW,MAGhB,EAAO,UAAY,GACrB,EAAW,QAAU,EAAE,CACd,EAAO,QAChB,EAAW,QAAU,EAAO,QACnB,EAAW,SACpB,EAAW,QAAU,CAAC,sBAAuB,eAAe,EAG1D,EAAW,SACZ,EAAW,QAA0B,KAAK,EAAW,OAAiB,CACvE,OAAO,EAAW,QAGpB,EAAW,KAAO,EAAW,KACzB,CACE,KAAM,EAAW,KAClB,CACD,EAAE,CAEF,EAAW,OAAS,EAAgB,QAAQ,IAAI,MAAM,EACvD,EAAW,KAAiC,MAAQ,QACrD,OAAO,EAAW,OACT,EAAW,SACnB,EAAW,KAAiC,MAAQ,SACrD,OAAO,EAAW,QAGnB,EAAW,KAAiC,KAAO,EAAW,QAC/D,OAAO,EAAW,QAEd,OAAO,EAAO,OAAU,WAC1B,EAAW,MAAQ,OAAO,SAAS,EAAO,MAAO,GAAG,EAGjD,OAAO,KAAK,EAAW,KAAgC,CAAC,QAC3D,OAAO,EAAW,MAGJ,MAAM,EACpB,EACD,EAEU,IAAI,OAAO,MAAM,KACvB,GAAU,EAAM,OAAS,EAAM,MAAM,QACvC,EAED,QAAQ,KAAK,EAAE,MAEX,CACN,QAAQ,KAAK,EAAE,KCjHX"}
1
+ {"version":3,"file":"run.js","names":["pkg.bin","pkg.version","userConfig: Record<string, unknown>"],"sources":["../package.json","../src/cli.ts","../src/run.ts"],"sourcesContent":["{\n \"name\": \"@hey-api/openapi-ts\",\n \"version\": \"0.87.2\",\n \"description\": \"🚀 The OpenAPI to TypeScript codegen. Generate clients, SDKs, validators, and more.\",\n \"homepage\": \"https://heyapi.dev/\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/hey-api/openapi-ts.git\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/hey-api/openapi-ts/issues\"\n },\n \"license\": \"MIT\",\n \"author\": {\n \"email\": \"lubos@heyapi.dev\",\n \"name\": \"Hey API\",\n \"url\": \"https://heyapi.dev\"\n },\n \"funding\": \"https://github.com/sponsors/hey-api\",\n \"keywords\": [\n \"angular\",\n \"axios\",\n \"codegen\",\n \"fetch\",\n \"generator\",\n \"http\",\n \"javascript\",\n \"json\",\n \"next\",\n \"next.js\",\n \"node\",\n \"nuxt\",\n \"ofetch\",\n \"openapi\",\n \"rest\",\n \"swagger\",\n \"typescript\",\n \"xhr\",\n \"yaml\"\n ],\n \"type\": \"module\",\n \"main\": \"./dist/index.cjs\",\n \"module\": \"./dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": {\n \"types\": \"./dist/index.d.ts\",\n \"default\": \"./dist/index.js\"\n },\n \"require\": {\n \"types\": \"./dist/index.d.cts\",\n \"default\": \"./dist/index.cjs\"\n }\n },\n \"./internal\": {\n \"import\": {\n \"types\": \"./dist/internal.d.ts\",\n \"default\": \"./dist/internal.js\"\n },\n \"require\": {\n \"types\": \"./dist/internal.d.cts\",\n \"default\": \"./dist/internal.cjs\"\n }\n },\n \"./package.json\": \"./package.json\"\n },\n \"bin\": {\n \"openapi-ts\": \"./bin/run.js\"\n },\n \"files\": [\n \"bin\",\n \"dist\",\n \"LICENSE.md\",\n \"README.md\"\n ],\n \"scripts\": {\n \"build\": \"tsdown && pnpm check-exports\",\n \"check-exports\": \"attw --pack . --profile node16\",\n \"dev\": \"tsdown --watch\",\n \"prepublishOnly\": \"pnpm build\",\n \"test:coverage\": \"vitest run --coverage\",\n \"test:update\": \"vitest watch --update\",\n \"test:watch\": \"vitest watch\",\n \"test\": \"vitest run\",\n \"typecheck\": \"tsc --noEmit\"\n },\n \"engines\": {\n \"node\": \">=20.19.0\"\n },\n \"dependencies\": {\n \"@hey-api/codegen-core\": \"workspace:^0.3.3\",\n \"@hey-api/json-schema-ref-parser\": \"1.2.1\",\n \"ansi-colors\": \"4.1.3\",\n \"c12\": \"3.3.1\",\n \"color-support\": \"1.1.3\",\n \"commander\": \"14.0.1\",\n \"open\": \"10.2.0\",\n \"semver\": \"7.7.2\"\n },\n \"peerDependencies\": {\n \"typescript\": \">=5.5.3\"\n },\n \"devDependencies\": {\n \"@angular/common\": \"19.2.15\",\n \"@angular/compiler\": \"19.2.15\",\n \"@angular/compiler-cli\": \"19.2.15\",\n \"@angular/core\": \"19.2.15\",\n \"@angular/platform-browser\": \"19.2.15\",\n \"@angular/platform-browser-dynamic\": \"19.2.15\",\n \"@angular/router\": \"19.2.15\",\n \"@config/vite-base\": \"workspace:*\",\n \"@types/bun\": \"1.3.1\",\n \"@types/cross-spawn\": \"6.0.6\",\n \"@types/semver\": \"7.7.1\",\n \"axios\": \"1.8.2\",\n \"cross-spawn\": \"7.0.6\",\n \"eslint\": \"9.17.0\",\n \"ky\": \"1.14.0\",\n \"nuxt\": \"3.14.1592\",\n \"ofetch\": \"1.4.1\",\n \"prettier\": \"3.4.2\",\n \"rxjs\": \"7.8.2\",\n \"typescript\": \"5.9.3\",\n \"vue\": \"3.5.23\",\n \"yaml\": \"2.8.1\",\n \"zone.js\": \"0.15.1\"\n }\n}\n","import type { OptionValues } from 'commander';\nimport { Command } from 'commander';\n\nimport { createClient } from '~/index';\n\nimport pkg from '../package.json' assert { type: 'json' };\n\nconst stringToBoolean = (\n value: string | undefined,\n): boolean | string | undefined => {\n if (value === 'true') return true;\n if (value === 'false') return false;\n return value;\n};\n\nconst processParams = (\n obj: OptionValues,\n booleanKeys: ReadonlyArray<string>,\n): OptionValues => {\n for (const key of booleanKeys) {\n const value = obj[key];\n if (typeof value === 'string') {\n const parsedValue = stringToBoolean(value);\n delete obj[key];\n obj[key] = parsedValue;\n }\n }\n return obj;\n};\n\nexport const runCli = async (): Promise<void> => {\n const params = new Command()\n .name(Object.keys(pkg.bin)[0]!)\n .usage('[options]')\n .version(pkg.version)\n .option('-c, --client <value>', 'HTTP client to generate')\n .option('-d, --debug', 'Set log level to debug')\n .option('--dry-run [value]', 'Skip writing files to disk?')\n .option('-f, --file [value]', 'Path to the config file')\n .option(\n '-i, --input <value>',\n 'OpenAPI specification (path, url, or string content)',\n )\n .option('-l, --logs [value]', 'Logs folder')\n .option('-o, --output <value>', 'Output folder')\n .option('-p, --plugins [value...]', \"List of plugins you'd like to use\")\n .option('-s, --silent', 'Set log level to silent')\n .option(\n '--no-log-file',\n 'Disable writing a log file. Works like --silent but without suppressing console output',\n )\n .option(\n '-w, --watch [value]',\n 'Regenerate the client when the input file changes?',\n )\n .parse(process.argv)\n .opts();\n\n let userConfig: Record<string, unknown>;\n\n try {\n userConfig = processParams(params, ['dryRun', 'logFile']);\n\n if (userConfig.file) {\n userConfig.configFile = userConfig.file;\n delete userConfig.file;\n }\n\n if (params.plugins === true) {\n userConfig.plugins = [];\n } else if (params.plugins) {\n userConfig.plugins = params.plugins;\n } else if (userConfig.client) {\n userConfig.plugins = ['@hey-api/typescript', '@hey-api/sdk'];\n }\n\n if (userConfig.client) {\n (userConfig.plugins as Array<string>).push(userConfig.client as string);\n delete userConfig.client;\n }\n\n userConfig.logs = userConfig.logs\n ? {\n path: userConfig.logs,\n }\n : {};\n\n if (userConfig.debug || stringToBoolean(process.env.DEBUG)) {\n (userConfig.logs as Record<string, unknown>).level = 'debug';\n delete userConfig.debug;\n } else if (userConfig.silent) {\n (userConfig.logs as Record<string, unknown>).level = 'silent';\n delete userConfig.silent;\n }\n\n (userConfig.logs as Record<string, unknown>).file = userConfig.logFile;\n delete userConfig.logFile;\n\n if (typeof params.watch === 'string') {\n userConfig.watch = Number.parseInt(params.watch, 10);\n }\n\n if (!Object.keys(userConfig.logs as Record<string, unknown>).length) {\n delete userConfig.logs;\n }\n\n const context = await createClient(\n userConfig as unknown as Required<Parameters<typeof createClient>>[0],\n );\n if (\n !context[0]?.config.input.some(\n (input) => input.watch && input.watch.enabled,\n )\n ) {\n process.exit(0);\n }\n } catch {\n process.exit(1);\n }\n};\n","#!/usr/bin/env node\n\nimport { runCli } from '~/cli';\n\nrunCli();\n"],"mappings":";8GAEa,WAiEJ,CACL,aAAc,eACf,CC9DH,MAAM,EACJ,GAEI,IAAU,OAAe,GACzB,IAAU,QAAgB,GACvB,EAGH,GACJ,EACA,IACiB,CACjB,IAAK,IAAM,KAAO,EAAa,CAC7B,IAAM,EAAQ,EAAI,GAClB,GAAI,OAAO,GAAU,SAAU,CAC7B,IAAM,EAAc,EAAgB,EAAM,CAC1C,OAAO,EAAI,GACX,EAAI,GAAO,GAGf,OAAO,IAGa,SAA2B,CAC/C,IAAM,EAAS,IAAI,GAAS,CACzB,KAAK,OAAO,KAAKA,EAAQ,CAAC,GAAI,CAC9B,MAAM,YAAY,CAClB,QAAQC,EAAY,CACpB,OAAO,uBAAwB,0BAA0B,CACzD,OAAO,cAAe,yBAAyB,CAC/C,OAAO,oBAAqB,8BAA8B,CAC1D,OAAO,qBAAsB,0BAA0B,CACvD,OACC,sBACA,uDACD,CACA,OAAO,qBAAsB,cAAc,CAC3C,OAAO,uBAAwB,gBAAgB,CAC/C,OAAO,2BAA4B,oCAAoC,CACvE,OAAO,eAAgB,0BAA0B,CACjD,OACC,gBACA,yFACD,CACA,OACC,sBACA,qDACD,CACA,MAAM,QAAQ,KAAK,CACnB,MAAM,CAELC,EAEJ,GAAI,CACF,EAAa,EAAc,EAAQ,CAAC,SAAU,UAAU,CAAC,CAErD,EAAW,OACb,EAAW,WAAa,EAAW,KACnC,OAAO,EAAW,MAGhB,EAAO,UAAY,GACrB,EAAW,QAAU,EAAE,CACd,EAAO,QAChB,EAAW,QAAU,EAAO,QACnB,EAAW,SACpB,EAAW,QAAU,CAAC,sBAAuB,eAAe,EAG1D,EAAW,SACZ,EAAW,QAA0B,KAAK,EAAW,OAAiB,CACvE,OAAO,EAAW,QAGpB,EAAW,KAAO,EAAW,KACzB,CACE,KAAM,EAAW,KAClB,CACD,EAAE,CAEF,EAAW,OAAS,EAAgB,QAAQ,IAAI,MAAM,EACvD,EAAW,KAAiC,MAAQ,QACrD,OAAO,EAAW,OACT,EAAW,SACnB,EAAW,KAAiC,MAAQ,SACrD,OAAO,EAAW,QAGnB,EAAW,KAAiC,KAAO,EAAW,QAC/D,OAAO,EAAW,QAEd,OAAO,EAAO,OAAU,WAC1B,EAAW,MAAQ,OAAO,SAAS,EAAO,MAAO,GAAG,EAGjD,OAAO,KAAK,EAAW,KAAgC,CAAC,QAC3D,OAAO,EAAW,MAGJ,MAAM,EACpB,EACD,EAEU,IAAI,OAAO,MAAM,KACvB,GAAU,EAAM,OAAS,EAAM,MAAM,QACvC,EAED,QAAQ,KAAK,EAAE,MAEX,CACN,QAAQ,KAAK,EAAE,KCjHX"}
@@ -1,4 +1,4 @@
1
- import{i as e,r as t,t as n}from"./chunk-C-EqMg7d.js";import{C as r,S as i,_ as a,b as o,f as s,g as c,i as l,n as u,p as d,r as f,s as p,t as m,v as h,w as g,x as _,y as v}from"./openApi-DXfWYPpF.js";import"@hey-api/codegen-core";import y from"ansi-colors";import b from"color-support";import x from"node:fs";import S from"node:path";import{$RefParser as C}from"@hey-api/json-schema-ref-parser";const w=()=>{if(typeof Bun<`u`){let[e]=Bun.version.split(`.`).map(Number);if(e<1)throw new a(`Unsupported Bun version ${Bun.version}. Please use Bun 1.0.0 or newer.`)}else if(typeof process<`u`&&process.versions?.node){let[e]=process.versions.node.split(`.`).map(Number);if(e<20)throw new a(`Unsupported Node version ${process.versions.node}. Please use Node 20 or newer.`)}},T=async({context:e})=>{let t=S.resolve(e.config.output.path);e.config.output.clean&&x.existsSync(t)&&x.rmSync(t,{force:!0,recursive:!0});let n={importFileExtension:e.config.output.importFileExtension},r=s(e.config);`bundle`in r.config&&r.config.bundle&&!e.config.dryRun&&(e.config._FRAGILE_CLIENT_BUNDLE_RENAMED=p({meta:n,outputPath:t,plugin:r,project:e.gen}));for(let t of e.registerPlugins())await t.run();for(let r of e.gen.render(n)){let n=S.resolve(t,r.path),i=S.dirname(n);e.config.dryRun||(x.mkdirSync(i,{recursive:!0}),x.writeFileSync(n,r.content,{encoding:`utf8`}))}},E=({patchOptions:e,spec:t})=>{if(!e)return;let n=t;if(`swagger`in n){if(e.version&&n.swagger&&(n.swagger=typeof e.version==`string`?e.version:e.version(n.swagger)),e.meta&&n.info&&e.meta(n.info),e.schemas&&n.definitions)for(let t in e.schemas){let r=n.definitions[t];if(!r||typeof r!=`object`)continue;let i=e.schemas[t];i(r)}if(e.operations&&n.paths)for(let t in e.operations){let[r,i]=t.split(` `);if(!r||!i)continue;let a=n.paths[i];if(!a)continue;let o=a[r.toLocaleLowerCase()]||a[r.toLocaleUpperCase()];if(!o||typeof o!=`object`)continue;let s=e.operations[t];s(o)}return}if(e.version&&n.openapi&&(n.openapi=typeof e.version==`string`?e.version:e.version(n.openapi)),e.meta&&n.info&&e.meta(n.info),n.components){if(e.schemas&&n.components.schemas)for(let t in e.schemas){let r=n.components.schemas[t];if(!r||typeof r!=`object`)continue;let i=e.schemas[t];i(r)}if(e.parameters&&n.components.parameters)for(let t in e.parameters){let r=n.components.parameters[t];if(!r||typeof r!=`object`)continue;let i=e.parameters[t];i(r)}if(e.requestBodies&&n.components.requestBodies)for(let t in e.requestBodies){let r=n.components.requestBodies[t];if(!r||typeof r!=`object`)continue;let i=e.requestBodies[t];i(r)}if(e.responses&&n.components.responses)for(let t in e.responses){let r=n.components.responses[t];if(!r||typeof r!=`object`)continue;let i=e.responses[t];i(r)}}if(e.operations&&n.paths)for(let t in e.operations){let[r,i]=t.split(` `);if(!r||!i)continue;let a=n.paths[i];if(!a)continue;let o=a[r.toLocaleLowerCase()]||a[r.toLocaleUpperCase()];if(!o||typeof o!=`object`)continue;let s=e.operations[t];s(o)}};var D=n(((e,n)=>{n.exports=o,o.sync=s;var r=t(`fs`);function i(e,t){var n=t.pathExt===void 0?process.env.PATHEXT:t.pathExt;if(!n||(n=n.split(`;`),n.indexOf(``)!==-1))return!0;for(var r=0;r<n.length;r++){var i=n[r].toLowerCase();if(i&&e.substr(-i.length).toLowerCase()===i)return!0}return!1}function a(e,t,n){return!e.isSymbolicLink()&&!e.isFile()?!1:i(t,n)}function o(e,t,n){r.stat(e,function(r,i){n(r,r?!1:a(i,e,t))})}function s(e,t){return a(r.statSync(e),e,t)}})),O=n(((e,n)=>{n.exports=i,i.sync=a;var r=t(`fs`);function i(e,t,n){r.stat(e,function(e,r){n(e,e?!1:o(r,t))})}function a(e,t){return o(r.statSync(e),t)}function o(e,t){return e.isFile()&&s(e,t)}function s(e,t){var n=e.mode,r=e.uid,i=e.gid,a=t.uid===void 0?process.getuid&&process.getuid():t.uid,o=t.gid===void 0?process.getgid&&process.getgid():t.gid,s=64,c=8,l=1,u=s|c;return n&l||n&c&&i===o||n&s&&r===a||n&u&&a===0}})),k=n(((e,n)=>{t(`fs`);var r=process.platform===`win32`||global.TESTING_WINDOWS?D():O();n.exports=i,i.sync=a;function i(e,t,n){if(typeof t==`function`&&(n=t,t={}),!n){if(typeof Promise!=`function`)throw TypeError(`callback not provided`);return new Promise(function(n,r){i(e,t||{},function(e,t){e?r(e):n(t)})})}r(e,t||{},function(e,r){e&&(e.code===`EACCES`||t&&t.ignoreErrors)&&(e=null,r=!1),n(e,r)})}function a(e,t){try{return r.sync(e,t||{})}catch(e){if(t&&t.ignoreErrors||e.code===`EACCES`)return!1;throw e}}})),A=n(((e,n)=>{let r=process.platform===`win32`||process.env.OSTYPE===`cygwin`||process.env.OSTYPE===`msys`,i=t(`path`),a=r?`;`:`:`,o=k(),s=e=>Object.assign(Error(`not found: ${e}`),{code:`ENOENT`}),c=(e,t)=>{let n=t.colon||a,i=e.match(/\//)||r&&e.match(/\\/)?[``]:[...r?[process.cwd()]:[],...(t.path||process.env.PATH||``).split(n)],o=r?t.pathExt||process.env.PATHEXT||`.EXE;.CMD;.BAT;.COM`:``,s=r?o.split(n):[``];return r&&e.indexOf(`.`)!==-1&&s[0]!==``&&s.unshift(``),{pathEnv:i,pathExt:s,pathExtExe:o}},l=(e,t,n)=>{typeof t==`function`&&(n=t,t={}),t||={};let{pathEnv:r,pathExt:a,pathExtExe:l}=c(e,t),u=[],d=n=>new Promise((a,o)=>{if(n===r.length)return t.all&&u.length?a(u):o(s(e));let c=r[n],l=/^".*"$/.test(c)?c.slice(1,-1):c,d=i.join(l,e);a(f(!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+d:d,n,0))}),f=(e,n,r)=>new Promise((i,s)=>{if(r===a.length)return i(d(n+1));let c=a[r];o(e+c,{pathExt:l},(a,o)=>{if(!a&&o)if(t.all)u.push(e+c);else return i(e+c);return i(f(e,n,r+1))})});return n?d(0).then(e=>n(null,e),n):d(0)};n.exports=l,l.sync=(e,t)=>{t||={};let{pathEnv:n,pathExt:r,pathExtExe:a}=c(e,t),l=[];for(let s=0;s<n.length;s++){let c=n[s],u=/^".*"$/.test(c)?c.slice(1,-1):c,d=i.join(u,e),f=!u&&/^\.[\\\/]/.test(e)?e.slice(0,2)+d:d;for(let e=0;e<r.length;e++){let n=f+r[e];try{if(o.sync(n,{pathExt:a}))if(t.all)l.push(n);else return n}catch{}}}if(t.all&&l.length)return l;if(t.nothrow)return null;throw s(e)}})),j=n(((e,t)=>{let n=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)===`win32`?Object.keys(t).reverse().find(e=>e.toUpperCase()===`PATH`)||`Path`:`PATH`};t.exports=n,t.exports.default=n})),M=n(((e,n)=>{let r=t(`path`),i=A(),a=j();function o(e,t){let n=e.options.env||process.env,o=process.cwd(),s=e.options.cwd!=null,c=s&&process.chdir!==void 0&&!process.chdir.disabled;if(c)try{process.chdir(e.options.cwd)}catch{}let l;try{l=i.sync(e.command,{path:n[a({env:n})],pathExt:t?r.delimiter:void 0})}catch{}finally{c&&process.chdir(o)}return l&&=r.resolve(s?e.options.cwd:``,l),l}function s(e){return o(e)||o(e,!0)}n.exports=s})),N=n(((e,t)=>{let n=/([()\][%!^"`<>&|;, *?])/g;function r(e){return e=e.replace(n,`^$1`),e}function i(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,`$1$1\\"`),e=e.replace(/(?=(\\+?)?)\1$/,`$1$1`),e=`"${e}"`,e=e.replace(n,`^$1`),t&&(e=e.replace(n,`^$1`)),e}t.exports.command=r,t.exports.argument=i})),P=n(((e,t)=>{t.exports=/^#!(.*)/})),F=n(((e,t)=>{let n=P();t.exports=(e=``)=>{let t=e.match(n);if(!t)return null;let[r,i]=t[0].replace(/#! ?/,``).split(` `),a=r.split(`/`).pop();return a===`env`?i:i?`${a} ${i}`:a}})),I=n(((e,n)=>{let r=t(`fs`),i=F();function a(e){let t=Buffer.alloc(150),n;try{n=r.openSync(e,`r`),r.readSync(n,t,0,150,0),r.closeSync(n)}catch{}return i(t.toString())}n.exports=a})),L=n(((e,n)=>{let r=t(`path`),i=M(),a=N(),o=I(),s=process.platform===`win32`,c=/\.(?:com|exe)$/i,l=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function u(e){e.file=i(e);let t=e.file&&o(e.file);return t?(e.args.unshift(e.file),e.command=t,i(e)):e.file}function d(e){if(!s)return e;let t=u(e),n=!c.test(t);if(e.options.forceShell||n){let n=l.test(t);e.command=r.normalize(e.command),e.command=a.command(e.command),e.args=e.args.map(e=>a.argument(e,n)),e.args=[`/d`,`/s`,`/c`,`"${[e.command].concat(e.args).join(` `)}"`],e.command=process.env.comspec||`cmd.exe`,e.options.windowsVerbatimArguments=!0}return e}function f(e,t,n){t&&!Array.isArray(t)&&(n=t,t=null),t=t?t.slice(0):[],n=Object.assign({},n);let r={command:e,args:t,options:n,file:void 0,original:{command:e,args:t}};return n.shell?r:d(r)}n.exports=f})),R=n(((e,t)=>{let n=process.platform===`win32`;function r(e,t){return Object.assign(Error(`${t} ${e.command} ENOENT`),{code:`ENOENT`,errno:`ENOENT`,syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function i(e,t){if(!n)return;let r=e.emit;e.emit=function(n,i){if(n===`exit`){let n=a(i,t);if(n)return r.call(e,`error`,n)}return r.apply(e,arguments)}}function a(e,t){return n&&e===1&&!t.file?r(t.original,`spawn`):null}function o(e,t){return n&&e===1&&!t.file?r(t.original,`spawnSync`):null}t.exports={hookChildProcess:i,verifyENOENT:a,verifyENOENTSync:o,notFoundError:r}})),z=e(n(((e,n)=>{let r=t(`child_process`),i=L(),a=R();function o(e,t,n){let o=i(e,t,n),s=r.spawn(o.command,o.args,o.options);return a.hookChildProcess(s,o),s}function s(e,t,n){let o=i(e,t,n),s=r.spawnSync(o.command,o.args,o.options);return s.error=s.error||a.verifyENOENTSync(s.status,o),s}n.exports=o,n.exports.spawn=o,n.exports.sync=s,n.exports._parse=i,n.exports._enoent=a}))(),1);const B={biome:{args:e=>[`format`,`--write`,e],command:`biome`,name:`Biome (Format)`},prettier:{args:e=>[`--ignore-unknown`,e,`--write`,`--ignore-path`,`./.prettierignore`],command:`prettier`,name:`Prettier`}},V={biome:{args:e=>[`lint`,`--apply`,e],command:`biome`,name:`Biome (Lint)`},eslint:{args:e=>[e,`--fix`],command:`eslint`,name:`ESLint`},oxlint:{args:e=>[`--fix`,e],command:`oxlint`,name:`oxlint`}},H=({config:e})=>{if(e.output.format){let t=B[e.output.format];console.log(`✨ Running ${t.name}`),(0,z.sync)(t.command,t.args(e.output.path))}if(e.output.lint){let t=V[e.output.lint];console.log(`✨ Running ${t.name}`),(0,z.sync)(t.command,t.args(e.output.path))}},U=e=>{let t={...e,path:``};if(e.path&&(typeof e.path!=`string`||e.registry!==`hey-api`))return t.path=e.path,t;let[n,r]=e.path.split(`?`),i=(r||``).split(`&`).map(e=>e.split(`=`)),a=n||``;a.endsWith(`/`)&&(a=a.slice(0,a.length-1));let[,o]=a.split(`://`),[s,c,l]=(o||``).split(`/`);t.organization=c||e.organization,t.project=l||e.project;let u=[],d=`api_key`;t.api_key=i.find(([e])=>e===d)?.[1]||e.api_key||process.env.HEY_API_TOKEN,t.api_key&&u.push(`${d}=${t.api_key}`);let f=`branch`;t.branch=i.find(([e])=>e===f)?.[1]||e.branch,t.branch&&u.push(`${f}=${t.branch}`);let p=`commit_sha`;t.commit_sha=i.find(([e])=>e===p)?.[1]||e.commit_sha,t.commit_sha&&u.push(`${p}=${t.commit_sha}`);let m=`tags`;t.tags=i.find(([e])=>e===m)?.[1]?.split(`,`)||e.tags,t.tags?.length&&u.push(`${m}=${t.tags.join(`,`)}`);let h=`version`;if(t.version=i.find(([e])=>e===h)?.[1]||e.version,t.version&&u.push(`${h}=${t.version}`),!t.organization)throw Error(`missing organization - from which Hey API Platform organization do you want to generate your output?`);if(!t.project)throw Error(`missing project - from which Hey API Platform project do you want to generate your output?`);let g=u.join(`&`),_=s||`get.heyapi.dev`,v=_.startsWith(`localhost`),y=[v?`http`:`https`,_].join(`://`),b=v?[y,`v1`,`get`,t.organization,t.project].join(`/`):[y,t.organization,t.project].join(`/`);return t.path=g?`${b}?${g}`:b,t},W=(e,t)=>{let n=[],r=y.gray(`[Job ${t+1}] `),i=e.length,a=y.cyan(`Generating from ${i} ${i===1?`input`:`inputs`}:`);n.push(`${r}⏳ ${a}`),e.forEach((e,t)=>{let i=` [${t+1}] `,a=y.cyan(i),o=` `.repeat(i.length);if(typeof e.path!=`string`){n.push(`${r}${a}raw OpenAPI specification`);return}switch(e.registry){case`hey-api`:{let t=[e.organization,e.project].filter(Boolean).join(`/`);n.push(`${r}${a}${t}`),e.branch&&n.push(`${r}${o}${y.gray(`branch:`)} ${y.green(e.branch)}`),e.commit_sha&&n.push(`${r}${o}${y.gray(`commit:`)} ${y.green(e.commit_sha)}`),e.tags?.length&&n.push(`${r}${o}${y.gray(`tags:`)} ${y.green(e.tags.join(`, `))}`),e.version&&n.push(`${r}${o}${y.gray(`version:`)} ${y.green(e.version)}`),n.push(`${r}${o}${y.gray(`registry:`)} ${y.green(`Hey API`)}`);break}case`readme`:{let t=[e.organization,e.project].filter(Boolean).join(`/`);t?n.push(`${r}${a}${t}`):n.push(`${r}${a}${e.path}`),e.uuid&&n.push(`${r}${o}${y.gray(`uuid:`)} ${y.green(e.uuid)}`),n.push(`${r}${o}${y.gray(`registry:`)} ${y.green(`ReadMe`)}`);break}case`scalar`:{let t=[e.organization,e.project].filter(Boolean).join(`/`);n.push(`${r}${a}${t}`),n.push(`${r}${o}${y.gray(`registry:`)} ${y.green(`Scalar`)}`);break}default:n.push(`${r}${a}${e.path}`);break}});for(let e of n)console.log(e)},G=async({config:e,dependencies:t,jobIndex:n,logger:r,watches:i})=>{let a=i||Array.from({length:e.input.length},()=>({headers:new Headers})),o=e.input.map(e=>U(e));e.logs.level!==`silent`&&!i&&W(o,n);let s=async(e,t)=>{let n=r.timeEvent(`spec`),{arrayBuffer:s,error:c,resolvedInput:l,response:u}=await f({fetchOptions:e.fetch,inputPath:o[t].path,timeout:e.watch.timeout,watch:a[t]});if(n.timeEnd(),c&&!i)throw Error(`Request failed with status ${u.status}: ${u.statusText}`);return{arrayBuffer:s,resolvedInput:l}},c=(await Promise.all(e.input.map((e,t)=>s(e,t)))).filter(e=>e.arrayBuffer||e.resolvedInput),l;if(c.length){let a=new C,s=c.length>1?await a.bundleMany({arrayBuffer:c.map(e=>e.arrayBuffer),pathOrUrlOrSchemas:[],resolvedInputs:c.map(e=>e.resolvedInput)}):await a.bundle({arrayBuffer:c[0].arrayBuffer,pathOrUrlOrSchema:void 0,resolvedInput:c[0].resolvedInput});e.logs.level!==`silent`&&i&&(console.clear(),W(o,n));let d=r.timeEvent(`input.patch`);E({patchOptions:e.parser.patch,spec:s}),d.timeEnd();let f=r.timeEvent(`parser`);l=m({config:e,dependencies:t,logger:r,spec:s}),l.graph=u(l.ir,r).graph,f.timeEnd();let p=r.timeEvent(`generator`);await T({context:l}),p.timeEnd();let h=r.timeEvent(`postprocess`);if(!e.dryRun&&(H({config:e}),e.logs.level!==`silent`)){let t=process.env.INIT_CWD?`./${S.relative(process.env.INIT_CWD,e.output.path)}`:e.output.path,r=y.gray(`[Job ${n+1}] `);console.log(`${r}${y.green(`✅ Done!`)} Your output is in ${y.cyanBright(t)}`)}h.timeEnd()}let d=e.input.find((e,t)=>e.watch.enabled&&typeof o[t].path==`string`);return d&&setTimeout(()=>{G({config:e,dependencies:t,jobIndex:n,logger:r,watches:a})},d.watch.interval),l},K=(e,t)=>{let n=[],r=Array.from({length:t?.padding??0}).fill(``);n.push(...r);let i=0,a=``;for(let t of e)t===`
1
+ import{i as e,r as t,t as n}from"./chunk-C-EqMg7d.js";import{C as r,S as i,_ as a,b as o,f as s,g as c,i as l,n as u,p as d,r as f,s as p,t as m,v as h,w as g,x as _,y as v}from"./openApi-HKXoyF4o.js";import"@hey-api/codegen-core";import y from"ansi-colors";import b from"color-support";import x from"node:fs";import S from"node:path";import{$RefParser as C}from"@hey-api/json-schema-ref-parser";const w=()=>{if(typeof Bun<`u`){let[e]=Bun.version.split(`.`).map(Number);if(e<1)throw new a(`Unsupported Bun version ${Bun.version}. Please use Bun 1.0.0 or newer.`)}else if(typeof process<`u`&&process.versions?.node){let[e]=process.versions.node.split(`.`).map(Number);if(e<20)throw new a(`Unsupported Node version ${process.versions.node}. Please use Node 20 or newer.`)}},T=async({context:e})=>{let t=S.resolve(e.config.output.path);e.config.output.clean&&x.existsSync(t)&&x.rmSync(t,{force:!0,recursive:!0});let n={importFileExtension:e.config.output.importFileExtension},r=s(e.config);`bundle`in r.config&&r.config.bundle&&!e.config.dryRun&&(e.config._FRAGILE_CLIENT_BUNDLE_RENAMED=p({meta:n,outputPath:t,plugin:r,project:e.gen}));for(let t of e.registerPlugins())await t.run();for(let r of e.gen.render(n)){let n=S.resolve(t,r.path),i=S.dirname(n);e.config.dryRun||(x.mkdirSync(i,{recursive:!0}),x.writeFileSync(n,r.content,{encoding:`utf8`}))}},E=({patchOptions:e,spec:t})=>{if(!e)return;let n=t;if(`swagger`in n){if(e.version&&n.swagger&&(n.swagger=typeof e.version==`string`?e.version:e.version(n.swagger)),e.meta&&n.info&&e.meta(n.info),e.schemas&&n.definitions)for(let t in e.schemas){let r=n.definitions[t];if(!r||typeof r!=`object`)continue;let i=e.schemas[t];i(r)}if(e.operations&&n.paths)for(let t in e.operations){let[r,i]=t.split(` `);if(!r||!i)continue;let a=n.paths[i];if(!a)continue;let o=a[r.toLocaleLowerCase()]||a[r.toLocaleUpperCase()];if(!o||typeof o!=`object`)continue;let s=e.operations[t];s(o)}return}if(e.version&&n.openapi&&(n.openapi=typeof e.version==`string`?e.version:e.version(n.openapi)),e.meta&&n.info&&e.meta(n.info),n.components){if(e.schemas&&n.components.schemas)for(let t in e.schemas){let r=n.components.schemas[t];if(!r||typeof r!=`object`)continue;let i=e.schemas[t];i(r)}if(e.parameters&&n.components.parameters)for(let t in e.parameters){let r=n.components.parameters[t];if(!r||typeof r!=`object`)continue;let i=e.parameters[t];i(r)}if(e.requestBodies&&n.components.requestBodies)for(let t in e.requestBodies){let r=n.components.requestBodies[t];if(!r||typeof r!=`object`)continue;let i=e.requestBodies[t];i(r)}if(e.responses&&n.components.responses)for(let t in e.responses){let r=n.components.responses[t];if(!r||typeof r!=`object`)continue;let i=e.responses[t];i(r)}}if(e.operations&&n.paths)for(let t in e.operations){let[r,i]=t.split(` `);if(!r||!i)continue;let a=n.paths[i];if(!a)continue;let o=a[r.toLocaleLowerCase()]||a[r.toLocaleUpperCase()];if(!o||typeof o!=`object`)continue;let s=e.operations[t];s(o)}};var D=n(((e,n)=>{n.exports=o,o.sync=s;var r=t(`fs`);function i(e,t){var n=t.pathExt===void 0?process.env.PATHEXT:t.pathExt;if(!n||(n=n.split(`;`),n.indexOf(``)!==-1))return!0;for(var r=0;r<n.length;r++){var i=n[r].toLowerCase();if(i&&e.substr(-i.length).toLowerCase()===i)return!0}return!1}function a(e,t,n){return!e.isSymbolicLink()&&!e.isFile()?!1:i(t,n)}function o(e,t,n){r.stat(e,function(r,i){n(r,r?!1:a(i,e,t))})}function s(e,t){return a(r.statSync(e),e,t)}})),O=n(((e,n)=>{n.exports=i,i.sync=a;var r=t(`fs`);function i(e,t,n){r.stat(e,function(e,r){n(e,e?!1:o(r,t))})}function a(e,t){return o(r.statSync(e),t)}function o(e,t){return e.isFile()&&s(e,t)}function s(e,t){var n=e.mode,r=e.uid,i=e.gid,a=t.uid===void 0?process.getuid&&process.getuid():t.uid,o=t.gid===void 0?process.getgid&&process.getgid():t.gid,s=64,c=8,l=1,u=s|c;return n&l||n&c&&i===o||n&s&&r===a||n&u&&a===0}})),k=n(((e,n)=>{t(`fs`);var r=process.platform===`win32`||global.TESTING_WINDOWS?D():O();n.exports=i,i.sync=a;function i(e,t,n){if(typeof t==`function`&&(n=t,t={}),!n){if(typeof Promise!=`function`)throw TypeError(`callback not provided`);return new Promise(function(n,r){i(e,t||{},function(e,t){e?r(e):n(t)})})}r(e,t||{},function(e,r){e&&(e.code===`EACCES`||t&&t.ignoreErrors)&&(e=null,r=!1),n(e,r)})}function a(e,t){try{return r.sync(e,t||{})}catch(e){if(t&&t.ignoreErrors||e.code===`EACCES`)return!1;throw e}}})),A=n(((e,n)=>{let r=process.platform===`win32`||process.env.OSTYPE===`cygwin`||process.env.OSTYPE===`msys`,i=t(`path`),a=r?`;`:`:`,o=k(),s=e=>Object.assign(Error(`not found: ${e}`),{code:`ENOENT`}),c=(e,t)=>{let n=t.colon||a,i=e.match(/\//)||r&&e.match(/\\/)?[``]:[...r?[process.cwd()]:[],...(t.path||process.env.PATH||``).split(n)],o=r?t.pathExt||process.env.PATHEXT||`.EXE;.CMD;.BAT;.COM`:``,s=r?o.split(n):[``];return r&&e.indexOf(`.`)!==-1&&s[0]!==``&&s.unshift(``),{pathEnv:i,pathExt:s,pathExtExe:o}},l=(e,t,n)=>{typeof t==`function`&&(n=t,t={}),t||={};let{pathEnv:r,pathExt:a,pathExtExe:l}=c(e,t),u=[],d=n=>new Promise((a,o)=>{if(n===r.length)return t.all&&u.length?a(u):o(s(e));let c=r[n],l=/^".*"$/.test(c)?c.slice(1,-1):c,d=i.join(l,e);a(f(!l&&/^\.[\\\/]/.test(e)?e.slice(0,2)+d:d,n,0))}),f=(e,n,r)=>new Promise((i,s)=>{if(r===a.length)return i(d(n+1));let c=a[r];o(e+c,{pathExt:l},(a,o)=>{if(!a&&o)if(t.all)u.push(e+c);else return i(e+c);return i(f(e,n,r+1))})});return n?d(0).then(e=>n(null,e),n):d(0)};n.exports=l,l.sync=(e,t)=>{t||={};let{pathEnv:n,pathExt:r,pathExtExe:a}=c(e,t),l=[];for(let s=0;s<n.length;s++){let c=n[s],u=/^".*"$/.test(c)?c.slice(1,-1):c,d=i.join(u,e),f=!u&&/^\.[\\\/]/.test(e)?e.slice(0,2)+d:d;for(let e=0;e<r.length;e++){let n=f+r[e];try{if(o.sync(n,{pathExt:a}))if(t.all)l.push(n);else return n}catch{}}}if(t.all&&l.length)return l;if(t.nothrow)return null;throw s(e)}})),j=n(((e,t)=>{let n=(e={})=>{let t=e.env||process.env;return(e.platform||process.platform)===`win32`?Object.keys(t).reverse().find(e=>e.toUpperCase()===`PATH`)||`Path`:`PATH`};t.exports=n,t.exports.default=n})),M=n(((e,n)=>{let r=t(`path`),i=A(),a=j();function o(e,t){let n=e.options.env||process.env,o=process.cwd(),s=e.options.cwd!=null,c=s&&process.chdir!==void 0&&!process.chdir.disabled;if(c)try{process.chdir(e.options.cwd)}catch{}let l;try{l=i.sync(e.command,{path:n[a({env:n})],pathExt:t?r.delimiter:void 0})}catch{}finally{c&&process.chdir(o)}return l&&=r.resolve(s?e.options.cwd:``,l),l}function s(e){return o(e)||o(e,!0)}n.exports=s})),N=n(((e,t)=>{let n=/([()\][%!^"`<>&|;, *?])/g;function r(e){return e=e.replace(n,`^$1`),e}function i(e,t){return e=`${e}`,e=e.replace(/(?=(\\+?)?)\1"/g,`$1$1\\"`),e=e.replace(/(?=(\\+?)?)\1$/,`$1$1`),e=`"${e}"`,e=e.replace(n,`^$1`),t&&(e=e.replace(n,`^$1`)),e}t.exports.command=r,t.exports.argument=i})),P=n(((e,t)=>{t.exports=/^#!(.*)/})),F=n(((e,t)=>{let n=P();t.exports=(e=``)=>{let t=e.match(n);if(!t)return null;let[r,i]=t[0].replace(/#! ?/,``).split(` `),a=r.split(`/`).pop();return a===`env`?i:i?`${a} ${i}`:a}})),I=n(((e,n)=>{let r=t(`fs`),i=F();function a(e){let t=Buffer.alloc(150),n;try{n=r.openSync(e,`r`),r.readSync(n,t,0,150,0),r.closeSync(n)}catch{}return i(t.toString())}n.exports=a})),L=n(((e,n)=>{let r=t(`path`),i=M(),a=N(),o=I(),s=process.platform===`win32`,c=/\.(?:com|exe)$/i,l=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function u(e){e.file=i(e);let t=e.file&&o(e.file);return t?(e.args.unshift(e.file),e.command=t,i(e)):e.file}function d(e){if(!s)return e;let t=u(e),n=!c.test(t);if(e.options.forceShell||n){let n=l.test(t);e.command=r.normalize(e.command),e.command=a.command(e.command),e.args=e.args.map(e=>a.argument(e,n)),e.args=[`/d`,`/s`,`/c`,`"${[e.command].concat(e.args).join(` `)}"`],e.command=process.env.comspec||`cmd.exe`,e.options.windowsVerbatimArguments=!0}return e}function f(e,t,n){t&&!Array.isArray(t)&&(n=t,t=null),t=t?t.slice(0):[],n=Object.assign({},n);let r={command:e,args:t,options:n,file:void 0,original:{command:e,args:t}};return n.shell?r:d(r)}n.exports=f})),R=n(((e,t)=>{let n=process.platform===`win32`;function r(e,t){return Object.assign(Error(`${t} ${e.command} ENOENT`),{code:`ENOENT`,errno:`ENOENT`,syscall:`${t} ${e.command}`,path:e.command,spawnargs:e.args})}function i(e,t){if(!n)return;let r=e.emit;e.emit=function(n,i){if(n===`exit`){let n=a(i,t);if(n)return r.call(e,`error`,n)}return r.apply(e,arguments)}}function a(e,t){return n&&e===1&&!t.file?r(t.original,`spawn`):null}function o(e,t){return n&&e===1&&!t.file?r(t.original,`spawnSync`):null}t.exports={hookChildProcess:i,verifyENOENT:a,verifyENOENTSync:o,notFoundError:r}})),z=e(n(((e,n)=>{let r=t(`child_process`),i=L(),a=R();function o(e,t,n){let o=i(e,t,n),s=r.spawn(o.command,o.args,o.options);return a.hookChildProcess(s,o),s}function s(e,t,n){let o=i(e,t,n),s=r.spawnSync(o.command,o.args,o.options);return s.error=s.error||a.verifyENOENTSync(s.status,o),s}n.exports=o,n.exports.spawn=o,n.exports.sync=s,n.exports._parse=i,n.exports._enoent=a}))(),1);const B={biome:{args:e=>[`format`,`--write`,e],command:`biome`,name:`Biome (Format)`},prettier:{args:e=>[`--ignore-unknown`,e,`--write`,`--ignore-path`,`./.prettierignore`],command:`prettier`,name:`Prettier`}},V={biome:{args:e=>[`lint`,`--apply`,e],command:`biome`,name:`Biome (Lint)`},eslint:{args:e=>[e,`--fix`],command:`eslint`,name:`ESLint`},oxlint:{args:e=>[`--fix`,e],command:`oxlint`,name:`oxlint`}},H=({config:e})=>{if(e.output.lint){let t=V[e.output.lint];console.log(`✨ Running ${t.name}`),(0,z.sync)(t.command,t.args(e.output.path))}if(e.output.format){let t=B[e.output.format];console.log(`✨ Running ${t.name}`),(0,z.sync)(t.command,t.args(e.output.path))}},U=e=>{let t={...e,path:``};if(e.path&&(typeof e.path!=`string`||e.registry!==`hey-api`))return t.path=e.path,t;let[n,r]=e.path.split(`?`),i=(r||``).split(`&`).map(e=>e.split(`=`)),a=n||``;a.endsWith(`/`)&&(a=a.slice(0,a.length-1));let[,o]=a.split(`://`),[s,c,l]=(o||``).split(`/`);t.organization=c||e.organization,t.project=l||e.project;let u=[],d=`api_key`;t.api_key=i.find(([e])=>e===d)?.[1]||e.api_key||process.env.HEY_API_TOKEN,t.api_key&&u.push(`${d}=${t.api_key}`);let f=`branch`;t.branch=i.find(([e])=>e===f)?.[1]||e.branch,t.branch&&u.push(`${f}=${t.branch}`);let p=`commit_sha`;t.commit_sha=i.find(([e])=>e===p)?.[1]||e.commit_sha,t.commit_sha&&u.push(`${p}=${t.commit_sha}`);let m=`tags`;t.tags=i.find(([e])=>e===m)?.[1]?.split(`,`)||e.tags,t.tags?.length&&u.push(`${m}=${t.tags.join(`,`)}`);let h=`version`;if(t.version=i.find(([e])=>e===h)?.[1]||e.version,t.version&&u.push(`${h}=${t.version}`),!t.organization)throw Error(`missing organization - from which Hey API Platform organization do you want to generate your output?`);if(!t.project)throw Error(`missing project - from which Hey API Platform project do you want to generate your output?`);let g=u.join(`&`),_=s||`get.heyapi.dev`,v=_.startsWith(`localhost`),y=[v?`http`:`https`,_].join(`://`),b=v?[y,`v1`,`get`,t.organization,t.project].join(`/`):[y,t.organization,t.project].join(`/`);return t.path=g?`${b}?${g}`:b,t},W=(e,t)=>{let n=[],r=y.gray(`[Job ${t+1}] `),i=e.length,a=y.cyan(`Generating from ${i} ${i===1?`input`:`inputs`}:`);n.push(`${r}⏳ ${a}`),e.forEach((e,t)=>{let i=` [${t+1}] `,a=y.cyan(i),o=` `.repeat(i.length);if(typeof e.path!=`string`){n.push(`${r}${a}raw OpenAPI specification`);return}switch(e.registry){case`hey-api`:{let t=[e.organization,e.project].filter(Boolean).join(`/`);n.push(`${r}${a}${t}`),e.branch&&n.push(`${r}${o}${y.gray(`branch:`)} ${y.green(e.branch)}`),e.commit_sha&&n.push(`${r}${o}${y.gray(`commit:`)} ${y.green(e.commit_sha)}`),e.tags?.length&&n.push(`${r}${o}${y.gray(`tags:`)} ${y.green(e.tags.join(`, `))}`),e.version&&n.push(`${r}${o}${y.gray(`version:`)} ${y.green(e.version)}`),n.push(`${r}${o}${y.gray(`registry:`)} ${y.green(`Hey API`)}`);break}case`readme`:{let t=[e.organization,e.project].filter(Boolean).join(`/`);t?n.push(`${r}${a}${t}`):n.push(`${r}${a}${e.path}`),e.uuid&&n.push(`${r}${o}${y.gray(`uuid:`)} ${y.green(e.uuid)}`),n.push(`${r}${o}${y.gray(`registry:`)} ${y.green(`ReadMe`)}`);break}case`scalar`:{let t=[e.organization,e.project].filter(Boolean).join(`/`);n.push(`${r}${a}${t}`),n.push(`${r}${o}${y.gray(`registry:`)} ${y.green(`Scalar`)}`);break}default:n.push(`${r}${a}${e.path}`);break}});for(let e of n)console.log(e)},G=async({config:e,dependencies:t,jobIndex:n,logger:r,watches:i})=>{let a=i||Array.from({length:e.input.length},()=>({headers:new Headers})),o=e.input.map(e=>U(e));e.logs.level!==`silent`&&!i&&W(o,n);let s=async(e,t)=>{let n=r.timeEvent(`spec`),{arrayBuffer:s,error:c,resolvedInput:l,response:u}=await f({fetchOptions:e.fetch,inputPath:o[t].path,timeout:e.watch.timeout,watch:a[t]});if(n.timeEnd(),c&&!i)throw Error(`Request failed with status ${u.status}: ${u.statusText}`);return{arrayBuffer:s,resolvedInput:l}},c=(await Promise.all(e.input.map((e,t)=>s(e,t)))).filter(e=>e.arrayBuffer||e.resolvedInput),l;if(c.length){let a=new C,s=c.length>1?await a.bundleMany({arrayBuffer:c.map(e=>e.arrayBuffer),pathOrUrlOrSchemas:[],resolvedInputs:c.map(e=>e.resolvedInput)}):await a.bundle({arrayBuffer:c[0].arrayBuffer,pathOrUrlOrSchema:void 0,resolvedInput:c[0].resolvedInput});e.logs.level!==`silent`&&i&&(console.clear(),W(o,n));let d=r.timeEvent(`input.patch`);E({patchOptions:e.parser.patch,spec:s}),d.timeEnd();let f=r.timeEvent(`parser`);l=m({config:e,dependencies:t,logger:r,spec:s}),l.graph=u(l.ir,r).graph,f.timeEnd();let p=r.timeEvent(`generator`);await T({context:l}),p.timeEnd();let h=r.timeEvent(`postprocess`);if(!e.dryRun&&(H({config:e}),e.logs.level!==`silent`)){let t=process.env.INIT_CWD?`./${S.relative(process.env.INIT_CWD,e.output.path)}`:e.output.path,r=y.gray(`[Job ${n+1}] `);console.log(`${r}${y.green(`✅ Done!`)} Your output is in ${y.cyanBright(t)}`)}h.timeEnd()}let d=e.input.find((e,t)=>e.watch.enabled&&typeof o[t].path==`string`);return d&&setTimeout(()=>{G({config:e,dependencies:t,jobIndex:n,logger:r,watches:a})},d.watch.interval),l},K=(e,t)=>{let n=[],r=Array.from({length:t?.padding??0}).fill(``);n.push(...r);let i=0,a=``;for(let t of e)t===`
2
2
  `?a&&=(n.push(a),i=Math.max(i,a.length),``):a+=t;return n.push(...r),{lines:n,maxLineLength:i}};function q(){let e=g(),t=K(`
3
3
  888 | e 888~-_ 888
4
4
  888___| e88~~8e Y88b / d8b 888 \\ 888
@@ -8,4 +8,4 @@ import{i as e,r as t,t as n}from"./chunk-C-EqMg7d.js";import{C as r,S as i,_ as
8
8
  888 | "88___/ / / Y88b 888 888
9
9
  _/
10
10
  `,{padding:1});for(let e of t.lines)console.log(y.cyan(e));console.log(y.gray(`${e.name} v${e.version}`)),console.log(``)}let J=0;const Y=e=>`${e}-${J++}`,X=e=>`${e}-end`,Z=e=>`${e}-length`,Q=e=>`${e}-start`,ee=(e,t)=>{if(e>200)return{color:y.red,type:`duration`};if(t>30)return{color:y.red,type:`percentage`};if(e>50)return{color:y.yellow,type:`duration`};if(t>10)return{color:y.yellow,type:`percentage`}};var $=class{events=[];end(e){let t,n=this.events;for(let r of e.position)t=n[r],t?.events&&(n=t.events);t&&!t.end&&(t.end=performance.mark(X(t.id)))}endAllEvents(e){for(let t of e)t.end||=performance.mark(X(t.id)),t.events.length>0&&this.endAllEvents(t.events)}report(e=!0){let t=this.events[0];if(!t)return;this.endAllEvents(this.events);let n=this.events[this.events.length-1],r=`root`,i=Y(r);try{let a=performance.measure(Z(i),Q(t.id),X(n.id));return e&&this.reportEvent({end:n.end,events:this.events,id:i,indent:0,measure:a,name:r,start:t.start}),a}catch{return}}reportEvent({indent:e,...t}){let n=e?y.gray:y.cyan,r=t.events.length-1;t.events.forEach((i,a)=>{try{let o=performance.measure(Z(i.id),Q(i.id),X(i.id)),s=Math.ceil(o.duration*100)/100,c=Math.ceil(o.duration/t.measure.duration*100*100)/100,l=e?ee(s,c):void 0,u=`${s.toFixed(2).padStart(8)}ms`;l?.type===`duration`&&(u=l.color(u));let d=a===r?`└─ `:`├─ `,f=e?`│ `.repeat(e-1)+d:``,p=38-f.length,m=e?`↳ `:``,h=`${e?` `.repeat(e-1)+m:``}${c.toFixed(2)}%`;l?.type===`percentage`&&(h=l.color(h));let g=y.gray(`[root] `);console.log(`${g}${y.gray(f)}${n(`${i.name.padEnd(p)} ${u} (${h})`)}`),this.reportEvent({...i,indent:e+1,measure:o})}catch{}})}start(e){return performance.mark(Q(e))}storeEvent({result:e,...t}){let n=t.events.length-1,r=t.events[n];if(r&&!r.end){e.position=[...e.position,n],this.storeEvent({...t,events:r.events,result:e});return}let i=t.events.push({...t,events:[]});e.position=[...e.position,i-1]}timeEvent(e){let t=Y(e),n=this.start(t),r={events:this.events,id:t,name:e,start:n},i={position:[]};return this.storeEvent({...r,result:i}),{mark:n,timeEnd:()=>this.end(i)}}};const te=async(e,t=new $)=>{let n=typeof e==`function`?await e():e,a=n?n instanceof Array?n:[n]:[],s=a.find(e=>c(e).level!==`silent`)?.logs;typeof s==`string`&&(s=c({logs:s}));let u;try{w();let e=t.timeEvent(`createClient`),n=t.timeEvent(`config`);u=await l({logger:t,userConfigs:a}),u.results.some(e=>e.config.logs.level!==`silent`)&&q(),n.timeEnd();let r=u.results.flatMap(e=>e.errors.map(t=>({error:t,jobIndex:e.jobIndex})));if(r.length)throw new h(r);let i=(await Promise.all(u.results.map(async e=>{try{return await G({config:e.config,dependencies:u.dependencies,jobIndex:e.jobIndex,logger:t})}catch(t){throw new v(``,{error:t,jobIndex:e.jobIndex})}}))).filter(e=>!!e);e.timeEnd();let o=u.results.some(e=>e.config.logs.level===`debug`);return t.report(o),i}catch(e){let t=u?.results??[],n=t.find(e=>e.config.logs.level!==`silent`)?.config.logs??t[0]?.config.logs??s,c=t.some(e=>e.config.dryRun)??a.some(e=>e.dryRun)??!1,l=n?.file&&!c?o(e,n.path??``):void 0;throw(!n||n.level!==`silent`)&&(i({error:e,logPath:l}),await r({error:e,isInteractive:t.some(e=>e.config.interactive)??a.some(e=>e.interactive)??!1})&&await _(e)),e}},ne={stringCase:d};y.enabled=b().hasBasic;const re=async e=>typeof e==`function`?await e():e;export{$ as i,ne as n,te as r,re as t};
11
- //# sourceMappingURL=src-CTUbY-zd.js.map
11
+ //# sourceMappingURL=src-Ba-zyEiS.js.map