swagger-typescript-api 13.2.0 → 13.2.1

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # swagger-typescript-api
2
2
 
3
+ ## 13.2.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#1260](https://github.com/acacode/swagger-typescript-api/pull/1260) [`31b628f`](https://github.com/acacode/swagger-typescript-api/commit/31b628f3f553e3d5024ff711a46c810151ea6521) Thanks [@parsaghk](https://github.com/parsaghk)! - Fix enum key generation for values like `ENUM_123_VALUE_456`.
8
+
9
+ - [#1277](https://github.com/acacode/swagger-typescript-api/pull/1277) [`3fd6224`](https://github.com/acacode/swagger-typescript-api/commit/3fd62241a75a2578961069b799b850941cfc4545) Thanks [@smorimoto](https://github.com/smorimoto)! - Revert "Integrate `generateCommand` arguments and run method into main command (#1198)".
10
+
11
+ - [`8a059bd`](https://github.com/acacode/swagger-typescript-api/commit/8a059bdd005a7af540148bf01c3eeda4a6d7dbdb) Thanks [@smorimoto](https://github.com/smorimoto)! - Update Node.js version requirements.
12
+
3
13
  ## 13.2.0
4
14
 
5
15
  ### Minor Changes
package/dist/cli.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- const require_src = require('./src-uYLAh71S.cjs');
2
+ const require_src = require('./src-Ct6srJuH.cjs');
3
3
  const node_path = require_src.__toESM(require("node:path"));
4
4
  const c12 = require_src.__toESM(require("c12"));
5
5
  const citty = require_src.__toESM(require("citty"));
@@ -315,8 +315,6 @@ const main = (0, citty.defineCommand)({
315
315
  description: require_src.package_default.description,
316
316
  version: require_src.package_default.version
317
317
  },
318
- args: generateCommand.args,
319
- run: generateCommand.run,
320
318
  subCommands: {
321
319
  generate: generateCommand,
322
320
  "generate-templates": generateTemplatesCommand
package/dist/cli.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.cjs","names":["TemplatesGenConfig","HTTP_CLIENT","CodeGenConfig","packageJson"],"sources":["../index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as path from \"node:path\";\nimport { loadConfig } from \"c12\";\nimport { defineCommand, runMain } from \"citty\";\nimport packageJson from \"./package.json\" with { type: \"json\" };\nimport { TemplatesGenConfig } from \"./src/commands/generate-templates/configuration.js\";\nimport { CodeGenConfig } from \"./src/configuration.js\";\nimport { HTTP_CLIENT } from \"./src/constants.js\";\nimport { generateApi, generateTemplates } from \"./src/index.js\";\nimport type { GenerateApiParams, HttpClientType } from \"./types/index.js\";\n\nconst templateGenBaseConfig = new TemplatesGenConfig({});\n\nconst generateTemplatesCommand = defineCommand({\n meta: {\n name: \"generate-templates\",\n description: 'Generate \".ejs\" templates needed for generate api',\n },\n args: {\n \"clean-output\": {\n type: \"boolean\",\n description:\n \"clean output folder before generate template. WARNING: May cause data loss\",\n default: templateGenBaseConfig.cleanOutput,\n },\n debug: {\n type: \"boolean\",\n description: \"additional information about processes inside this tool\",\n default: templateGenBaseConfig.debug,\n },\n \"http-client\": {\n type: \"string\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )})`,\n default: templateGenBaseConfig.httpClientType,\n },\n modular: {\n type: \"boolean\",\n description:\n \"generate templates needed to separate files for http client, data contracts, and routes\",\n default: templateGenBaseConfig.modular,\n },\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"output path of generated templates\",\n default: templateGenBaseConfig.output,\n },\n rewrite: {\n type: \"boolean\",\n alias: \"r\",\n description: \"rewrite content in existing templates\",\n default: templateGenBaseConfig.rewrite,\n },\n silent: {\n type: \"boolean\",\n description: \"Output only errors to console\",\n default: templateGenBaseConfig.silent,\n },\n },\n run: async ({ args }) => {\n await generateTemplates({\n cleanOutput: args[\"clean-output\"],\n httpClientType: args[\"http-client\"] as HttpClientType,\n modular: args.modular,\n output: args.output,\n rewrite: args.rewrite,\n silent: args.silent,\n debug: args.debug,\n });\n },\n});\n\nconst codeGenBaseConfig = new CodeGenConfig({});\n\nconst generateCommand = defineCommand({\n meta: {\n name: \"generate\",\n description: packageJson.description,\n },\n args: {\n \"add-readonly\": {\n type: \"boolean\",\n description: \"generate readonly properties\",\n default: codeGenBaseConfig.addReadonly,\n },\n \"another-array-type\": {\n type: \"boolean\",\n description: \"generate array types as Array<Type> (by default Type[])\",\n default: codeGenBaseConfig.anotherArrayType,\n },\n \"api-class-name\": {\n type: \"string\",\n description: \"name of the api class\",\n default: codeGenBaseConfig.apiClassName,\n },\n axios: {\n type: \"boolean\",\n description: \"generate axios http client\",\n default: false,\n },\n \"clean-output\": {\n type: \"boolean\",\n description:\n \"clean output folder before generate api. WARNING: May cause data loss\",\n default: codeGenBaseConfig.cleanOutput,\n },\n client: {\n type: \"boolean\",\n description: \"do not generate an API class\",\n default: codeGenBaseConfig.generateClient,\n },\n \"custom-config\": {\n type: \"string\",\n description: \"custom config: primitiveTypeConstructs, hooks, ... \",\n },\n debug: {\n type: \"boolean\",\n description: \"additional information about processes inside this tool\",\n default: codeGenBaseConfig.debug,\n },\n \"default-as-success\": {\n type: \"boolean\",\n alias: \"d\",\n description:\n 'use \"default\" response status code as success response too. some swagger schemas use \"default\" response status code as success response type by default.',\n default: codeGenBaseConfig.defaultResponseAsSuccess,\n },\n \"default-response\": {\n type: \"string\",\n description: \"default type for empty response schema\",\n default: codeGenBaseConfig.defaultResponseType,\n },\n \"disable-throw-on-error\": {\n type: \"boolean\",\n description: \"Do not throw an error when response.ok is not true\",\n default: codeGenBaseConfig.disableThrowOnError,\n },\n \"enum-names-as-values\": {\n type: \"boolean\",\n description:\n \"use values in 'x-enumNames' as enum values (not only as keys)\",\n default: codeGenBaseConfig.enumNamesAsValues,\n },\n \"extract-enums\": {\n type: \"boolean\",\n description:\n \"extract all enums from inline interface/type content to typescript enum construction\",\n default: codeGenBaseConfig.extractEnums,\n },\n \"extract-request-body\": {\n type: \"boolean\",\n description: \"extract request body type to data contract\",\n default: codeGenBaseConfig.extractRequestBody,\n },\n \"extract-request-params\": {\n type: \"boolean\",\n description:\n \"extract request params to data contract (Also combine path params and query params into one object)\",\n default: codeGenBaseConfig.extractRequestParams,\n },\n \"extract-response-body\": {\n type: \"boolean\",\n description: \"extract response body type to data contract\",\n default: codeGenBaseConfig.extractResponseBody,\n },\n \"extract-response-error\": {\n type: \"boolean\",\n description: \"extract response error type to data contract\",\n default: codeGenBaseConfig.extractResponseError,\n },\n \"extract-responses\": {\n type: \"boolean\",\n description: \"extract all responses described in /components/responses\",\n default: codeGenBaseConfig.extractResponses,\n },\n \"generate-union-enums\": {\n type: \"boolean\",\n description: 'generate all \"enum\" types as union types (T1 | T2 | TN)',\n default: codeGenBaseConfig.generateUnionEnums,\n },\n \"http-client\": {\n type: \"string\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )})`,\n },\n js: {\n type: \"boolean\",\n description: \"generate js api module with declaration file\",\n default: codeGenBaseConfig.toJS,\n },\n modular: {\n type: \"boolean\",\n description:\n \"generate separated files for http client, data contracts, and routes\",\n default: codeGenBaseConfig.modular,\n },\n \"module-name-first-tag\": {\n type: \"boolean\",\n description: \"splits routes based on the first tag\",\n default: codeGenBaseConfig.moduleNameFirstTag,\n },\n \"module-name-index\": {\n type: \"string\",\n description:\n \"determines which path index should be used for routes separation (example: GET:/fruits/getFruit -> index:0 -> moduleName -> fruits)\",\n default: codeGenBaseConfig.moduleNameIndex.toString(),\n },\n name: {\n type: \"string\",\n alias: \"n\",\n description: \"name of output typescript api file\",\n default: codeGenBaseConfig.fileName,\n },\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"output path of typescript api file\",\n default: \"./\",\n },\n patch: {\n type: \"boolean\",\n description: \"fix up small errors in the swagger source definition\",\n default: codeGenBaseConfig.patch,\n },\n path: {\n type: \"string\",\n alias: \"p\",\n description: \"path/url to swagger schema\",\n },\n responses: {\n type: \"boolean\",\n alias: \"r\",\n description:\n \"generate additional information about request responses also add typings for bad responses\",\n default: codeGenBaseConfig.generateResponses,\n },\n \"route-types\": {\n type: \"boolean\",\n description: \"generate type definitions for API routes\",\n default: codeGenBaseConfig.generateRouteTypes,\n },\n silent: {\n type: \"boolean\",\n description: \"Output only errors to console\",\n default: codeGenBaseConfig.silent,\n },\n \"single-http-client\": {\n type: \"boolean\",\n description: \"Ability to send HttpClient instance to Api constructor\",\n default: codeGenBaseConfig.singleHttpClient,\n },\n \"sort-routes\": {\n type: \"boolean\",\n description: \"sort routes in alphabetical order\",\n default: codeGenBaseConfig.sortRoutes,\n },\n \"sort-types\": {\n type: \"boolean\",\n description: \"sort fields and types\",\n default: codeGenBaseConfig.sortTypes,\n },\n templates: {\n type: \"string\",\n alias: \"t\",\n description: \"path to folder containing templates\",\n },\n \"type-prefix\": {\n type: \"string\",\n description: \"data contract name prefix\",\n default: codeGenBaseConfig.typePrefix,\n },\n \"type-suffix\": {\n type: \"string\",\n description: \"data contract name suffix\",\n default: codeGenBaseConfig.typeSuffix,\n },\n \"unwrap-response-data\": {\n type: \"boolean\",\n description: \"unwrap the data item from the response\",\n default: codeGenBaseConfig.unwrapResponseData,\n },\n },\n run: async ({ args }) => {\n const customConfig = await loadConfig<GenerateApiParams>({\n name: \"swagger-typescript-api\",\n configFile: args[\"custom-config\"],\n });\n\n await generateApi({\n addReadonly: args[\"add-readonly\"],\n anotherArrayType: args[\"another-array-type\"],\n apiClassName: args[\"api-class-name\"],\n cleanOutput: args[\"clean-output\"],\n debug: args.debug,\n defaultResponseAsSuccess: args[\"default-as-success\"],\n defaultResponseType: args[\"default-response\"],\n disableThrowOnError: args[\"disable-throw-on-error\"],\n enumNamesAsValues: args[\"enum-names-as-values\"],\n extractEnums: args[\"extract-enums\"],\n extractRequestBody: args[\"extract-request-body\"],\n extractRequestParams: args[\"extract-request-params\"],\n extractResponseBody: args[\"extract-response-body\"],\n extractResponseError: args[\"extract-response-error\"],\n extractResponses: args[\"extract-responses\"],\n fileName: args.name,\n generateClient: args.client,\n generateResponses: args.responses,\n generateRouteTypes: args[\"route-types\"],\n generateUnionEnums: args[\"generate-union-enums\"],\n httpClientType:\n args[\"http-client\"] || args.axios\n ? HTTP_CLIENT.AXIOS\n : HTTP_CLIENT.FETCH,\n input: path.resolve(process.cwd(), args.path as string),\n modular: args.modular,\n moduleNameFirstTag: args[\"module-name-first-tag\"],\n moduleNameIndex: +args[\"module-name-index\"] || 0,\n output: path.resolve(process.cwd(), (args.output as string) || \".\"),\n patch: args.patch,\n silent: args.silent,\n singleHttpClient: args[\"single-http-client\"],\n sortRoutes: args[\"sort-routes\"],\n sortTypes: args[\"sort-types\"],\n templates: args.templates,\n toJS: args.js,\n typePrefix: args[\"type-prefix\"],\n typeSuffix: args[\"type-suffix\"],\n unwrapResponseData: args[\"unwrap-response-data\"],\n url: args.path,\n ...customConfig.config,\n });\n },\n});\n\nconst main = defineCommand({\n meta: {\n name: packageJson.name,\n description: packageJson.description,\n version: packageJson.version,\n },\n args: generateCommand.args,\n run: generateCommand.run,\n subCommands: {\n generate: generateCommand,\n \"generate-templates\": generateTemplatesCommand,\n },\n});\n\nrunMain(main);\n"],"mappings":"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"}
1
+ {"version":3,"file":"cli.cjs","names":["TemplatesGenConfig","HTTP_CLIENT","CodeGenConfig","packageJson"],"sources":["../index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as path from \"node:path\";\nimport { loadConfig } from \"c12\";\nimport { defineCommand, runMain } from \"citty\";\nimport packageJson from \"./package.json\" with { type: \"json\" };\nimport { TemplatesGenConfig } from \"./src/commands/generate-templates/configuration.js\";\nimport { CodeGenConfig } from \"./src/configuration.js\";\nimport { HTTP_CLIENT } from \"./src/constants.js\";\nimport { generateApi, generateTemplates } from \"./src/index.js\";\nimport type { GenerateApiParams, HttpClientType } from \"./types/index.js\";\n\nconst templateGenBaseConfig = new TemplatesGenConfig({});\n\nconst generateTemplatesCommand = defineCommand({\n meta: {\n name: \"generate-templates\",\n description: 'Generate \".ejs\" templates needed for generate api',\n },\n args: {\n \"clean-output\": {\n type: \"boolean\",\n description:\n \"clean output folder before generate template. WARNING: May cause data loss\",\n default: templateGenBaseConfig.cleanOutput,\n },\n debug: {\n type: \"boolean\",\n description: \"additional information about processes inside this tool\",\n default: templateGenBaseConfig.debug,\n },\n \"http-client\": {\n type: \"string\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )})`,\n default: templateGenBaseConfig.httpClientType,\n },\n modular: {\n type: \"boolean\",\n description:\n \"generate templates needed to separate files for http client, data contracts, and routes\",\n default: templateGenBaseConfig.modular,\n },\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"output path of generated templates\",\n default: templateGenBaseConfig.output,\n },\n rewrite: {\n type: \"boolean\",\n alias: \"r\",\n description: \"rewrite content in existing templates\",\n default: templateGenBaseConfig.rewrite,\n },\n silent: {\n type: \"boolean\",\n description: \"Output only errors to console\",\n default: templateGenBaseConfig.silent,\n },\n },\n run: async ({ args }) => {\n await generateTemplates({\n cleanOutput: args[\"clean-output\"],\n httpClientType: args[\"http-client\"] as HttpClientType,\n modular: args.modular,\n output: args.output,\n rewrite: args.rewrite,\n silent: args.silent,\n debug: args.debug,\n });\n },\n});\n\nconst codeGenBaseConfig = new CodeGenConfig({});\n\nconst generateCommand = defineCommand({\n meta: {\n name: \"generate\",\n description: packageJson.description,\n },\n args: {\n \"add-readonly\": {\n type: \"boolean\",\n description: \"generate readonly properties\",\n default: codeGenBaseConfig.addReadonly,\n },\n \"another-array-type\": {\n type: \"boolean\",\n description: \"generate array types as Array<Type> (by default Type[])\",\n default: codeGenBaseConfig.anotherArrayType,\n },\n \"api-class-name\": {\n type: \"string\",\n description: \"name of the api class\",\n default: codeGenBaseConfig.apiClassName,\n },\n axios: {\n type: \"boolean\",\n description: \"generate axios http client\",\n default: false,\n },\n \"clean-output\": {\n type: \"boolean\",\n description:\n \"clean output folder before generate api. WARNING: May cause data loss\",\n default: codeGenBaseConfig.cleanOutput,\n },\n client: {\n type: \"boolean\",\n description: \"do not generate an API class\",\n default: codeGenBaseConfig.generateClient,\n },\n \"custom-config\": {\n type: \"string\",\n description: \"custom config: primitiveTypeConstructs, hooks, ... \",\n },\n debug: {\n type: \"boolean\",\n description: \"additional information about processes inside this tool\",\n default: codeGenBaseConfig.debug,\n },\n \"default-as-success\": {\n type: \"boolean\",\n alias: \"d\",\n description:\n 'use \"default\" response status code as success response too. some swagger schemas use \"default\" response status code as success response type by default.',\n default: codeGenBaseConfig.defaultResponseAsSuccess,\n },\n \"default-response\": {\n type: \"string\",\n description: \"default type for empty response schema\",\n default: codeGenBaseConfig.defaultResponseType,\n },\n \"disable-throw-on-error\": {\n type: \"boolean\",\n description: \"Do not throw an error when response.ok is not true\",\n default: codeGenBaseConfig.disableThrowOnError,\n },\n \"enum-names-as-values\": {\n type: \"boolean\",\n description:\n \"use values in 'x-enumNames' as enum values (not only as keys)\",\n default: codeGenBaseConfig.enumNamesAsValues,\n },\n \"extract-enums\": {\n type: \"boolean\",\n description:\n \"extract all enums from inline interface/type content to typescript enum construction\",\n default: codeGenBaseConfig.extractEnums,\n },\n \"extract-request-body\": {\n type: \"boolean\",\n description: \"extract request body type to data contract\",\n default: codeGenBaseConfig.extractRequestBody,\n },\n \"extract-request-params\": {\n type: \"boolean\",\n description:\n \"extract request params to data contract (Also combine path params and query params into one object)\",\n default: codeGenBaseConfig.extractRequestParams,\n },\n \"extract-response-body\": {\n type: \"boolean\",\n description: \"extract response body type to data contract\",\n default: codeGenBaseConfig.extractResponseBody,\n },\n \"extract-response-error\": {\n type: \"boolean\",\n description: \"extract response error type to data contract\",\n default: codeGenBaseConfig.extractResponseError,\n },\n \"extract-responses\": {\n type: \"boolean\",\n description: \"extract all responses described in /components/responses\",\n default: codeGenBaseConfig.extractResponses,\n },\n \"generate-union-enums\": {\n type: \"boolean\",\n description: 'generate all \"enum\" types as union types (T1 | T2 | TN)',\n default: codeGenBaseConfig.generateUnionEnums,\n },\n \"http-client\": {\n type: \"string\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )})`,\n },\n js: {\n type: \"boolean\",\n description: \"generate js api module with declaration file\",\n default: codeGenBaseConfig.toJS,\n },\n modular: {\n type: \"boolean\",\n description:\n \"generate separated files for http client, data contracts, and routes\",\n default: codeGenBaseConfig.modular,\n },\n \"module-name-first-tag\": {\n type: \"boolean\",\n description: \"splits routes based on the first tag\",\n default: codeGenBaseConfig.moduleNameFirstTag,\n },\n \"module-name-index\": {\n type: \"string\",\n description:\n \"determines which path index should be used for routes separation (example: GET:/fruits/getFruit -> index:0 -> moduleName -> fruits)\",\n default: codeGenBaseConfig.moduleNameIndex.toString(),\n },\n name: {\n type: \"string\",\n alias: \"n\",\n description: \"name of output typescript api file\",\n default: codeGenBaseConfig.fileName,\n },\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"output path of typescript api file\",\n default: \"./\",\n },\n patch: {\n type: \"boolean\",\n description: \"fix up small errors in the swagger source definition\",\n default: codeGenBaseConfig.patch,\n },\n path: {\n type: \"string\",\n alias: \"p\",\n description: \"path/url to swagger schema\",\n },\n responses: {\n type: \"boolean\",\n alias: \"r\",\n description:\n \"generate additional information about request responses also add typings for bad responses\",\n default: codeGenBaseConfig.generateResponses,\n },\n \"route-types\": {\n type: \"boolean\",\n description: \"generate type definitions for API routes\",\n default: codeGenBaseConfig.generateRouteTypes,\n },\n silent: {\n type: \"boolean\",\n description: \"Output only errors to console\",\n default: codeGenBaseConfig.silent,\n },\n \"single-http-client\": {\n type: \"boolean\",\n description: \"Ability to send HttpClient instance to Api constructor\",\n default: codeGenBaseConfig.singleHttpClient,\n },\n \"sort-routes\": {\n type: \"boolean\",\n description: \"sort routes in alphabetical order\",\n default: codeGenBaseConfig.sortRoutes,\n },\n \"sort-types\": {\n type: \"boolean\",\n description: \"sort fields and types\",\n default: codeGenBaseConfig.sortTypes,\n },\n templates: {\n type: \"string\",\n alias: \"t\",\n description: \"path to folder containing templates\",\n },\n \"type-prefix\": {\n type: \"string\",\n description: \"data contract name prefix\",\n default: codeGenBaseConfig.typePrefix,\n },\n \"type-suffix\": {\n type: \"string\",\n description: \"data contract name suffix\",\n default: codeGenBaseConfig.typeSuffix,\n },\n \"unwrap-response-data\": {\n type: \"boolean\",\n description: \"unwrap the data item from the response\",\n default: codeGenBaseConfig.unwrapResponseData,\n },\n },\n run: async ({ args }) => {\n const customConfig = await loadConfig<GenerateApiParams>({\n name: \"swagger-typescript-api\",\n configFile: args[\"custom-config\"],\n });\n\n await generateApi({\n addReadonly: args[\"add-readonly\"],\n anotherArrayType: args[\"another-array-type\"],\n apiClassName: args[\"api-class-name\"],\n cleanOutput: args[\"clean-output\"],\n debug: args.debug,\n defaultResponseAsSuccess: args[\"default-as-success\"],\n defaultResponseType: args[\"default-response\"],\n disableThrowOnError: args[\"disable-throw-on-error\"],\n enumNamesAsValues: args[\"enum-names-as-values\"],\n extractEnums: args[\"extract-enums\"],\n extractRequestBody: args[\"extract-request-body\"],\n extractRequestParams: args[\"extract-request-params\"],\n extractResponseBody: args[\"extract-response-body\"],\n extractResponseError: args[\"extract-response-error\"],\n extractResponses: args[\"extract-responses\"],\n fileName: args.name,\n generateClient: args.client,\n generateResponses: args.responses,\n generateRouteTypes: args[\"route-types\"],\n generateUnionEnums: args[\"generate-union-enums\"],\n httpClientType:\n args[\"http-client\"] || args.axios\n ? HTTP_CLIENT.AXIOS\n : HTTP_CLIENT.FETCH,\n input: path.resolve(process.cwd(), args.path as string),\n modular: args.modular,\n moduleNameFirstTag: args[\"module-name-first-tag\"],\n moduleNameIndex: +args[\"module-name-index\"] || 0,\n output: path.resolve(process.cwd(), (args.output as string) || \".\"),\n patch: args.patch,\n silent: args.silent,\n singleHttpClient: args[\"single-http-client\"],\n sortRoutes: args[\"sort-routes\"],\n sortTypes: args[\"sort-types\"],\n templates: args.templates,\n toJS: args.js,\n typePrefix: args[\"type-prefix\"],\n typeSuffix: args[\"type-suffix\"],\n unwrapResponseData: args[\"unwrap-response-data\"],\n url: args.path,\n ...customConfig.config,\n });\n },\n});\n\nconst main = defineCommand({\n meta: {\n name: packageJson.name,\n description: packageJson.description,\n version: packageJson.version,\n },\n subCommands: {\n generate: generateCommand,\n \"generate-templates\": generateTemplatesCommand,\n },\n});\n\nrunMain(main);\n"],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { CodeGenConfig, HTTP_CLIENT, TemplatesGenConfig, generateApi, generateTemplates, package_default } from "./src-Bt12Ak64.js";
2
+ import { CodeGenConfig, HTTP_CLIENT, TemplatesGenConfig, generateApi, generateTemplates, package_default } from "./src-CyhiKzh-.js";
3
3
  import * as path$1 from "node:path";
4
4
  import { loadConfig } from "c12";
5
5
  import { defineCommand, runMain } from "citty";
@@ -315,8 +315,6 @@ const main = defineCommand({
315
315
  description: package_default.description,
316
316
  version: package_default.version
317
317
  },
318
- args: generateCommand.args,
319
- run: generateCommand.run,
320
318
  subCommands: {
321
319
  generate: generateCommand,
322
320
  "generate-templates": generateTemplatesCommand
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","names":["packageJson"],"sources":["../index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as path from \"node:path\";\nimport { loadConfig } from \"c12\";\nimport { defineCommand, runMain } from \"citty\";\nimport packageJson from \"./package.json\" with { type: \"json\" };\nimport { TemplatesGenConfig } from \"./src/commands/generate-templates/configuration.js\";\nimport { CodeGenConfig } from \"./src/configuration.js\";\nimport { HTTP_CLIENT } from \"./src/constants.js\";\nimport { generateApi, generateTemplates } from \"./src/index.js\";\nimport type { GenerateApiParams, HttpClientType } from \"./types/index.js\";\n\nconst templateGenBaseConfig = new TemplatesGenConfig({});\n\nconst generateTemplatesCommand = defineCommand({\n meta: {\n name: \"generate-templates\",\n description: 'Generate \".ejs\" templates needed for generate api',\n },\n args: {\n \"clean-output\": {\n type: \"boolean\",\n description:\n \"clean output folder before generate template. WARNING: May cause data loss\",\n default: templateGenBaseConfig.cleanOutput,\n },\n debug: {\n type: \"boolean\",\n description: \"additional information about processes inside this tool\",\n default: templateGenBaseConfig.debug,\n },\n \"http-client\": {\n type: \"string\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )})`,\n default: templateGenBaseConfig.httpClientType,\n },\n modular: {\n type: \"boolean\",\n description:\n \"generate templates needed to separate files for http client, data contracts, and routes\",\n default: templateGenBaseConfig.modular,\n },\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"output path of generated templates\",\n default: templateGenBaseConfig.output,\n },\n rewrite: {\n type: \"boolean\",\n alias: \"r\",\n description: \"rewrite content in existing templates\",\n default: templateGenBaseConfig.rewrite,\n },\n silent: {\n type: \"boolean\",\n description: \"Output only errors to console\",\n default: templateGenBaseConfig.silent,\n },\n },\n run: async ({ args }) => {\n await generateTemplates({\n cleanOutput: args[\"clean-output\"],\n httpClientType: args[\"http-client\"] as HttpClientType,\n modular: args.modular,\n output: args.output,\n rewrite: args.rewrite,\n silent: args.silent,\n debug: args.debug,\n });\n },\n});\n\nconst codeGenBaseConfig = new CodeGenConfig({});\n\nconst generateCommand = defineCommand({\n meta: {\n name: \"generate\",\n description: packageJson.description,\n },\n args: {\n \"add-readonly\": {\n type: \"boolean\",\n description: \"generate readonly properties\",\n default: codeGenBaseConfig.addReadonly,\n },\n \"another-array-type\": {\n type: \"boolean\",\n description: \"generate array types as Array<Type> (by default Type[])\",\n default: codeGenBaseConfig.anotherArrayType,\n },\n \"api-class-name\": {\n type: \"string\",\n description: \"name of the api class\",\n default: codeGenBaseConfig.apiClassName,\n },\n axios: {\n type: \"boolean\",\n description: \"generate axios http client\",\n default: false,\n },\n \"clean-output\": {\n type: \"boolean\",\n description:\n \"clean output folder before generate api. WARNING: May cause data loss\",\n default: codeGenBaseConfig.cleanOutput,\n },\n client: {\n type: \"boolean\",\n description: \"do not generate an API class\",\n default: codeGenBaseConfig.generateClient,\n },\n \"custom-config\": {\n type: \"string\",\n description: \"custom config: primitiveTypeConstructs, hooks, ... \",\n },\n debug: {\n type: \"boolean\",\n description: \"additional information about processes inside this tool\",\n default: codeGenBaseConfig.debug,\n },\n \"default-as-success\": {\n type: \"boolean\",\n alias: \"d\",\n description:\n 'use \"default\" response status code as success response too. some swagger schemas use \"default\" response status code as success response type by default.',\n default: codeGenBaseConfig.defaultResponseAsSuccess,\n },\n \"default-response\": {\n type: \"string\",\n description: \"default type for empty response schema\",\n default: codeGenBaseConfig.defaultResponseType,\n },\n \"disable-throw-on-error\": {\n type: \"boolean\",\n description: \"Do not throw an error when response.ok is not true\",\n default: codeGenBaseConfig.disableThrowOnError,\n },\n \"enum-names-as-values\": {\n type: \"boolean\",\n description:\n \"use values in 'x-enumNames' as enum values (not only as keys)\",\n default: codeGenBaseConfig.enumNamesAsValues,\n },\n \"extract-enums\": {\n type: \"boolean\",\n description:\n \"extract all enums from inline interface/type content to typescript enum construction\",\n default: codeGenBaseConfig.extractEnums,\n },\n \"extract-request-body\": {\n type: \"boolean\",\n description: \"extract request body type to data contract\",\n default: codeGenBaseConfig.extractRequestBody,\n },\n \"extract-request-params\": {\n type: \"boolean\",\n description:\n \"extract request params to data contract (Also combine path params and query params into one object)\",\n default: codeGenBaseConfig.extractRequestParams,\n },\n \"extract-response-body\": {\n type: \"boolean\",\n description: \"extract response body type to data contract\",\n default: codeGenBaseConfig.extractResponseBody,\n },\n \"extract-response-error\": {\n type: \"boolean\",\n description: \"extract response error type to data contract\",\n default: codeGenBaseConfig.extractResponseError,\n },\n \"extract-responses\": {\n type: \"boolean\",\n description: \"extract all responses described in /components/responses\",\n default: codeGenBaseConfig.extractResponses,\n },\n \"generate-union-enums\": {\n type: \"boolean\",\n description: 'generate all \"enum\" types as union types (T1 | T2 | TN)',\n default: codeGenBaseConfig.generateUnionEnums,\n },\n \"http-client\": {\n type: \"string\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )})`,\n },\n js: {\n type: \"boolean\",\n description: \"generate js api module with declaration file\",\n default: codeGenBaseConfig.toJS,\n },\n modular: {\n type: \"boolean\",\n description:\n \"generate separated files for http client, data contracts, and routes\",\n default: codeGenBaseConfig.modular,\n },\n \"module-name-first-tag\": {\n type: \"boolean\",\n description: \"splits routes based on the first tag\",\n default: codeGenBaseConfig.moduleNameFirstTag,\n },\n \"module-name-index\": {\n type: \"string\",\n description:\n \"determines which path index should be used for routes separation (example: GET:/fruits/getFruit -> index:0 -> moduleName -> fruits)\",\n default: codeGenBaseConfig.moduleNameIndex.toString(),\n },\n name: {\n type: \"string\",\n alias: \"n\",\n description: \"name of output typescript api file\",\n default: codeGenBaseConfig.fileName,\n },\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"output path of typescript api file\",\n default: \"./\",\n },\n patch: {\n type: \"boolean\",\n description: \"fix up small errors in the swagger source definition\",\n default: codeGenBaseConfig.patch,\n },\n path: {\n type: \"string\",\n alias: \"p\",\n description: \"path/url to swagger schema\",\n },\n responses: {\n type: \"boolean\",\n alias: \"r\",\n description:\n \"generate additional information about request responses also add typings for bad responses\",\n default: codeGenBaseConfig.generateResponses,\n },\n \"route-types\": {\n type: \"boolean\",\n description: \"generate type definitions for API routes\",\n default: codeGenBaseConfig.generateRouteTypes,\n },\n silent: {\n type: \"boolean\",\n description: \"Output only errors to console\",\n default: codeGenBaseConfig.silent,\n },\n \"single-http-client\": {\n type: \"boolean\",\n description: \"Ability to send HttpClient instance to Api constructor\",\n default: codeGenBaseConfig.singleHttpClient,\n },\n \"sort-routes\": {\n type: \"boolean\",\n description: \"sort routes in alphabetical order\",\n default: codeGenBaseConfig.sortRoutes,\n },\n \"sort-types\": {\n type: \"boolean\",\n description: \"sort fields and types\",\n default: codeGenBaseConfig.sortTypes,\n },\n templates: {\n type: \"string\",\n alias: \"t\",\n description: \"path to folder containing templates\",\n },\n \"type-prefix\": {\n type: \"string\",\n description: \"data contract name prefix\",\n default: codeGenBaseConfig.typePrefix,\n },\n \"type-suffix\": {\n type: \"string\",\n description: \"data contract name suffix\",\n default: codeGenBaseConfig.typeSuffix,\n },\n \"unwrap-response-data\": {\n type: \"boolean\",\n description: \"unwrap the data item from the response\",\n default: codeGenBaseConfig.unwrapResponseData,\n },\n },\n run: async ({ args }) => {\n const customConfig = await loadConfig<GenerateApiParams>({\n name: \"swagger-typescript-api\",\n configFile: args[\"custom-config\"],\n });\n\n await generateApi({\n addReadonly: args[\"add-readonly\"],\n anotherArrayType: args[\"another-array-type\"],\n apiClassName: args[\"api-class-name\"],\n cleanOutput: args[\"clean-output\"],\n debug: args.debug,\n defaultResponseAsSuccess: args[\"default-as-success\"],\n defaultResponseType: args[\"default-response\"],\n disableThrowOnError: args[\"disable-throw-on-error\"],\n enumNamesAsValues: args[\"enum-names-as-values\"],\n extractEnums: args[\"extract-enums\"],\n extractRequestBody: args[\"extract-request-body\"],\n extractRequestParams: args[\"extract-request-params\"],\n extractResponseBody: args[\"extract-response-body\"],\n extractResponseError: args[\"extract-response-error\"],\n extractResponses: args[\"extract-responses\"],\n fileName: args.name,\n generateClient: args.client,\n generateResponses: args.responses,\n generateRouteTypes: args[\"route-types\"],\n generateUnionEnums: args[\"generate-union-enums\"],\n httpClientType:\n args[\"http-client\"] || args.axios\n ? HTTP_CLIENT.AXIOS\n : HTTP_CLIENT.FETCH,\n input: path.resolve(process.cwd(), args.path as string),\n modular: args.modular,\n moduleNameFirstTag: args[\"module-name-first-tag\"],\n moduleNameIndex: +args[\"module-name-index\"] || 0,\n output: path.resolve(process.cwd(), (args.output as string) || \".\"),\n patch: args.patch,\n silent: args.silent,\n singleHttpClient: args[\"single-http-client\"],\n sortRoutes: args[\"sort-routes\"],\n sortTypes: args[\"sort-types\"],\n templates: args.templates,\n toJS: args.js,\n typePrefix: args[\"type-prefix\"],\n typeSuffix: args[\"type-suffix\"],\n unwrapResponseData: args[\"unwrap-response-data\"],\n url: args.path,\n ...customConfig.config,\n });\n },\n});\n\nconst main = defineCommand({\n meta: {\n name: packageJson.name,\n description: packageJson.description,\n version: packageJson.version,\n },\n args: generateCommand.args,\n run: generateCommand.run,\n subCommands: {\n generate: generateCommand,\n \"generate-templates\": generateTemplatesCommand,\n },\n});\n\nrunMain(main);\n"],"mappings":";;;;;;;AAYA,MAAM,wBAAwB,IAAI,mBAAmB,CAAE;AAEvD,MAAM,2BAA2B,cAAc;CAC7C,MAAM;EACJ,MAAM;EACN,aAAa;CACd;CACD,MAAM;EACJ,gBAAgB;GACd,MAAM;GACN,aACE;GACF,SAAS,sBAAsB;EAChC;EACD,OAAO;GACL,MAAM;GACN,aAAa;GACb,SAAS,sBAAsB;EAChC;EACD,eAAe;GACb,MAAM;GACN,cAAc,qCAAqC,OAAO,OACxD,YACD,CAAC;GACF,SAAS,sBAAsB;EAChC;EACD,SAAS;GACP,MAAM;GACN,aACE;GACF,SAAS,sBAAsB;EAChC;EACD,QAAQ;GACN,MAAM;GACN,OAAO;GACP,aAAa;GACb,SAAS,sBAAsB;EAChC;EACD,SAAS;GACP,MAAM;GACN,OAAO;GACP,aAAa;GACb,SAAS,sBAAsB;EAChC;EACD,QAAQ;GACN,MAAM;GACN,aAAa;GACb,SAAS,sBAAsB;EAChC;CACF;CACD,KAAK,OAAO,EAAE,MAAM,KAAK;AACvB,QAAM,kBAAkB;GACtB,aAAa,KAAK;GAClB,gBAAgB,KAAK;GACrB,SAAS,KAAK;GACd,QAAQ,KAAK;GACb,SAAS,KAAK;GACd,QAAQ,KAAK;GACb,OAAO,KAAK;EACb,EAAC;CACH;AACF,EAAC;AAEF,MAAM,oBAAoB,IAAI,cAAc,CAAE;AAE9C,MAAM,kBAAkB,cAAc;CACpC,MAAM;EACJ,MAAM;EACN,aAAaA,gBAAY;CAC1B;CACD,MAAM;EACJ,gBAAgB;GACd,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,sBAAsB;GACpB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,kBAAkB;GAChB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,OAAO;GACL,MAAM;GACN,aAAa;GACb,SAAS;EACV;EACD,gBAAgB;GACd,MAAM;GACN,aACE;GACF,SAAS,kBAAkB;EAC5B;EACD,QAAQ;GACN,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,iBAAiB;GACf,MAAM;GACN,aAAa;EACd;EACD,OAAO;GACL,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,sBAAsB;GACpB,MAAM;GACN,OAAO;GACP,aACE;GACF,SAAS,kBAAkB;EAC5B;EACD,oBAAoB;GAClB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,0BAA0B;GACxB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,wBAAwB;GACtB,MAAM;GACN,aACE;GACF,SAAS,kBAAkB;EAC5B;EACD,iBAAiB;GACf,MAAM;GACN,aACE;GACF,SAAS,kBAAkB;EAC5B;EACD,wBAAwB;GACtB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,0BAA0B;GACxB,MAAM;GACN,aACE;GACF,SAAS,kBAAkB;EAC5B;EACD,yBAAyB;GACvB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,0BAA0B;GACxB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,qBAAqB;GACnB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,wBAAwB;GACtB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,eAAe;GACb,MAAM;GACN,cAAc,qCAAqC,OAAO,OACxD,YACD,CAAC;EACH;EACD,IAAI;GACF,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,SAAS;GACP,MAAM;GACN,aACE;GACF,SAAS,kBAAkB;EAC5B;EACD,yBAAyB;GACvB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,qBAAqB;GACnB,MAAM;GACN,aACE;GACF,SAAS,kBAAkB,gBAAgB,UAAU;EACtD;EACD,MAAM;GACJ,MAAM;GACN,OAAO;GACP,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,QAAQ;GACN,MAAM;GACN,OAAO;GACP,aAAa;GACb,SAAS;EACV;EACD,OAAO;GACL,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,MAAM;GACJ,MAAM;GACN,OAAO;GACP,aAAa;EACd;EACD,WAAW;GACT,MAAM;GACN,OAAO;GACP,aACE;GACF,SAAS,kBAAkB;EAC5B;EACD,eAAe;GACb,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,QAAQ;GACN,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,sBAAsB;GACpB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,eAAe;GACb,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,cAAc;GACZ,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,WAAW;GACT,MAAM;GACN,OAAO;GACP,aAAa;EACd;EACD,eAAe;GACb,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,eAAe;GACb,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;EACD,wBAAwB;GACtB,MAAM;GACN,aAAa;GACb,SAAS,kBAAkB;EAC5B;CACF;CACD,KAAK,OAAO,EAAE,MAAM,KAAK;EACvB,MAAM,eAAe,MAAM,WAA8B;GACvD,MAAM;GACN,YAAY,KAAK;EAClB,EAAC;AAEF,QAAM,YAAY;GAChB,aAAa,KAAK;GAClB,kBAAkB,KAAK;GACvB,cAAc,KAAK;GACnB,aAAa,KAAK;GAClB,OAAO,KAAK;GACZ,0BAA0B,KAAK;GAC/B,qBAAqB,KAAK;GAC1B,qBAAqB,KAAK;GAC1B,mBAAmB,KAAK;GACxB,cAAc,KAAK;GACnB,oBAAoB,KAAK;GACzB,sBAAsB,KAAK;GAC3B,qBAAqB,KAAK;GAC1B,sBAAsB,KAAK;GAC3B,kBAAkB,KAAK;GACvB,UAAU,KAAK;GACf,gBAAgB,KAAK;GACrB,mBAAmB,KAAK;GACxB,oBAAoB,KAAK;GACzB,oBAAoB,KAAK;GACzB,gBACE,KAAK,kBAAkB,KAAK,QACxB,YAAY,QACZ,YAAY;GAClB,OAAO,OAAK,QAAQ,QAAQ,KAAK,EAAE,KAAK,KAAe;GACvD,SAAS,KAAK;GACd,oBAAoB,KAAK;GACzB,kBAAkB,KAAK,wBAAwB;GAC/C,QAAQ,OAAK,QAAQ,QAAQ,KAAK,EAAG,KAAK,UAAqB,IAAI;GACnE,OAAO,KAAK;GACZ,QAAQ,KAAK;GACb,kBAAkB,KAAK;GACvB,YAAY,KAAK;GACjB,WAAW,KAAK;GAChB,WAAW,KAAK;GAChB,MAAM,KAAK;GACX,YAAY,KAAK;GACjB,YAAY,KAAK;GACjB,oBAAoB,KAAK;GACzB,KAAK,KAAK;GACV,GAAG,aAAa;EACjB,EAAC;CACH;AACF,EAAC;AAEF,MAAM,OAAO,cAAc;CACzB,MAAM;EACJ,MAAMA,gBAAY;EAClB,aAAaA,gBAAY;EACzB,SAASA,gBAAY;CACtB;CACD,MAAM,gBAAgB;CACtB,KAAK,gBAAgB;CACrB,aAAa;EACX,UAAU;EACV,sBAAsB;CACvB;AACF,EAAC;AAEF,QAAQ,KAAK"}
1
+ {"version":3,"file":"cli.js","names":["packageJson"],"sources":["../index.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport * as path from \"node:path\";\nimport { loadConfig } from \"c12\";\nimport { defineCommand, runMain } from \"citty\";\nimport packageJson from \"./package.json\" with { type: \"json\" };\nimport { TemplatesGenConfig } from \"./src/commands/generate-templates/configuration.js\";\nimport { CodeGenConfig } from \"./src/configuration.js\";\nimport { HTTP_CLIENT } from \"./src/constants.js\";\nimport { generateApi, generateTemplates } from \"./src/index.js\";\nimport type { GenerateApiParams, HttpClientType } from \"./types/index.js\";\n\nconst templateGenBaseConfig = new TemplatesGenConfig({});\n\nconst generateTemplatesCommand = defineCommand({\n meta: {\n name: \"generate-templates\",\n description: 'Generate \".ejs\" templates needed for generate api',\n },\n args: {\n \"clean-output\": {\n type: \"boolean\",\n description:\n \"clean output folder before generate template. WARNING: May cause data loss\",\n default: templateGenBaseConfig.cleanOutput,\n },\n debug: {\n type: \"boolean\",\n description: \"additional information about processes inside this tool\",\n default: templateGenBaseConfig.debug,\n },\n \"http-client\": {\n type: \"string\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )})`,\n default: templateGenBaseConfig.httpClientType,\n },\n modular: {\n type: \"boolean\",\n description:\n \"generate templates needed to separate files for http client, data contracts, and routes\",\n default: templateGenBaseConfig.modular,\n },\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"output path of generated templates\",\n default: templateGenBaseConfig.output,\n },\n rewrite: {\n type: \"boolean\",\n alias: \"r\",\n description: \"rewrite content in existing templates\",\n default: templateGenBaseConfig.rewrite,\n },\n silent: {\n type: \"boolean\",\n description: \"Output only errors to console\",\n default: templateGenBaseConfig.silent,\n },\n },\n run: async ({ args }) => {\n await generateTemplates({\n cleanOutput: args[\"clean-output\"],\n httpClientType: args[\"http-client\"] as HttpClientType,\n modular: args.modular,\n output: args.output,\n rewrite: args.rewrite,\n silent: args.silent,\n debug: args.debug,\n });\n },\n});\n\nconst codeGenBaseConfig = new CodeGenConfig({});\n\nconst generateCommand = defineCommand({\n meta: {\n name: \"generate\",\n description: packageJson.description,\n },\n args: {\n \"add-readonly\": {\n type: \"boolean\",\n description: \"generate readonly properties\",\n default: codeGenBaseConfig.addReadonly,\n },\n \"another-array-type\": {\n type: \"boolean\",\n description: \"generate array types as Array<Type> (by default Type[])\",\n default: codeGenBaseConfig.anotherArrayType,\n },\n \"api-class-name\": {\n type: \"string\",\n description: \"name of the api class\",\n default: codeGenBaseConfig.apiClassName,\n },\n axios: {\n type: \"boolean\",\n description: \"generate axios http client\",\n default: false,\n },\n \"clean-output\": {\n type: \"boolean\",\n description:\n \"clean output folder before generate api. WARNING: May cause data loss\",\n default: codeGenBaseConfig.cleanOutput,\n },\n client: {\n type: \"boolean\",\n description: \"do not generate an API class\",\n default: codeGenBaseConfig.generateClient,\n },\n \"custom-config\": {\n type: \"string\",\n description: \"custom config: primitiveTypeConstructs, hooks, ... \",\n },\n debug: {\n type: \"boolean\",\n description: \"additional information about processes inside this tool\",\n default: codeGenBaseConfig.debug,\n },\n \"default-as-success\": {\n type: \"boolean\",\n alias: \"d\",\n description:\n 'use \"default\" response status code as success response too. some swagger schemas use \"default\" response status code as success response type by default.',\n default: codeGenBaseConfig.defaultResponseAsSuccess,\n },\n \"default-response\": {\n type: \"string\",\n description: \"default type for empty response schema\",\n default: codeGenBaseConfig.defaultResponseType,\n },\n \"disable-throw-on-error\": {\n type: \"boolean\",\n description: \"Do not throw an error when response.ok is not true\",\n default: codeGenBaseConfig.disableThrowOnError,\n },\n \"enum-names-as-values\": {\n type: \"boolean\",\n description:\n \"use values in 'x-enumNames' as enum values (not only as keys)\",\n default: codeGenBaseConfig.enumNamesAsValues,\n },\n \"extract-enums\": {\n type: \"boolean\",\n description:\n \"extract all enums from inline interface/type content to typescript enum construction\",\n default: codeGenBaseConfig.extractEnums,\n },\n \"extract-request-body\": {\n type: \"boolean\",\n description: \"extract request body type to data contract\",\n default: codeGenBaseConfig.extractRequestBody,\n },\n \"extract-request-params\": {\n type: \"boolean\",\n description:\n \"extract request params to data contract (Also combine path params and query params into one object)\",\n default: codeGenBaseConfig.extractRequestParams,\n },\n \"extract-response-body\": {\n type: \"boolean\",\n description: \"extract response body type to data contract\",\n default: codeGenBaseConfig.extractResponseBody,\n },\n \"extract-response-error\": {\n type: \"boolean\",\n description: \"extract response error type to data contract\",\n default: codeGenBaseConfig.extractResponseError,\n },\n \"extract-responses\": {\n type: \"boolean\",\n description: \"extract all responses described in /components/responses\",\n default: codeGenBaseConfig.extractResponses,\n },\n \"generate-union-enums\": {\n type: \"boolean\",\n description: 'generate all \"enum\" types as union types (T1 | T2 | TN)',\n default: codeGenBaseConfig.generateUnionEnums,\n },\n \"http-client\": {\n type: \"string\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )})`,\n },\n js: {\n type: \"boolean\",\n description: \"generate js api module with declaration file\",\n default: codeGenBaseConfig.toJS,\n },\n modular: {\n type: \"boolean\",\n description:\n \"generate separated files for http client, data contracts, and routes\",\n default: codeGenBaseConfig.modular,\n },\n \"module-name-first-tag\": {\n type: \"boolean\",\n description: \"splits routes based on the first tag\",\n default: codeGenBaseConfig.moduleNameFirstTag,\n },\n \"module-name-index\": {\n type: \"string\",\n description:\n \"determines which path index should be used for routes separation (example: GET:/fruits/getFruit -> index:0 -> moduleName -> fruits)\",\n default: codeGenBaseConfig.moduleNameIndex.toString(),\n },\n name: {\n type: \"string\",\n alias: \"n\",\n description: \"name of output typescript api file\",\n default: codeGenBaseConfig.fileName,\n },\n output: {\n type: \"string\",\n alias: \"o\",\n description: \"output path of typescript api file\",\n default: \"./\",\n },\n patch: {\n type: \"boolean\",\n description: \"fix up small errors in the swagger source definition\",\n default: codeGenBaseConfig.patch,\n },\n path: {\n type: \"string\",\n alias: \"p\",\n description: \"path/url to swagger schema\",\n },\n responses: {\n type: \"boolean\",\n alias: \"r\",\n description:\n \"generate additional information about request responses also add typings for bad responses\",\n default: codeGenBaseConfig.generateResponses,\n },\n \"route-types\": {\n type: \"boolean\",\n description: \"generate type definitions for API routes\",\n default: codeGenBaseConfig.generateRouteTypes,\n },\n silent: {\n type: \"boolean\",\n description: \"Output only errors to console\",\n default: codeGenBaseConfig.silent,\n },\n \"single-http-client\": {\n type: \"boolean\",\n description: \"Ability to send HttpClient instance to Api constructor\",\n default: codeGenBaseConfig.singleHttpClient,\n },\n \"sort-routes\": {\n type: \"boolean\",\n description: \"sort routes in alphabetical order\",\n default: codeGenBaseConfig.sortRoutes,\n },\n \"sort-types\": {\n type: \"boolean\",\n description: \"sort fields and types\",\n default: codeGenBaseConfig.sortTypes,\n },\n templates: {\n type: \"string\",\n alias: \"t\",\n description: \"path to folder containing templates\",\n },\n \"type-prefix\": {\n type: \"string\",\n description: \"data contract name prefix\",\n default: codeGenBaseConfig.typePrefix,\n },\n \"type-suffix\": {\n type: \"string\",\n description: \"data contract name suffix\",\n default: codeGenBaseConfig.typeSuffix,\n },\n \"unwrap-response-data\": {\n type: \"boolean\",\n description: \"unwrap the data item from the response\",\n default: codeGenBaseConfig.unwrapResponseData,\n },\n },\n run: async ({ args }) => {\n const customConfig = await loadConfig<GenerateApiParams>({\n name: \"swagger-typescript-api\",\n configFile: args[\"custom-config\"],\n });\n\n await generateApi({\n addReadonly: args[\"add-readonly\"],\n anotherArrayType: args[\"another-array-type\"],\n apiClassName: args[\"api-class-name\"],\n cleanOutput: args[\"clean-output\"],\n debug: args.debug,\n defaultResponseAsSuccess: args[\"default-as-success\"],\n defaultResponseType: args[\"default-response\"],\n disableThrowOnError: args[\"disable-throw-on-error\"],\n enumNamesAsValues: args[\"enum-names-as-values\"],\n extractEnums: args[\"extract-enums\"],\n extractRequestBody: args[\"extract-request-body\"],\n extractRequestParams: args[\"extract-request-params\"],\n extractResponseBody: args[\"extract-response-body\"],\n extractResponseError: args[\"extract-response-error\"],\n extractResponses: args[\"extract-responses\"],\n fileName: args.name,\n generateClient: args.client,\n generateResponses: args.responses,\n generateRouteTypes: args[\"route-types\"],\n generateUnionEnums: args[\"generate-union-enums\"],\n httpClientType:\n args[\"http-client\"] || args.axios\n ? HTTP_CLIENT.AXIOS\n : HTTP_CLIENT.FETCH,\n input: path.resolve(process.cwd(), args.path as string),\n modular: args.modular,\n moduleNameFirstTag: args[\"module-name-first-tag\"],\n moduleNameIndex: +args[\"module-name-index\"] || 0,\n output: path.resolve(process.cwd(), (args.output as string) || \".\"),\n patch: args.patch,\n silent: args.silent,\n singleHttpClient: args[\"single-http-client\"],\n sortRoutes: args[\"sort-routes\"],\n sortTypes: args[\"sort-types\"],\n templates: args.templates,\n toJS: args.js,\n typePrefix: args[\"type-prefix\"],\n typeSuffix: args[\"type-suffix\"],\n unwrapResponseData: args[\"unwrap-response-data\"],\n url: args.path,\n ...customConfig.config,\n });\n },\n});\n\nconst main = defineCommand({\n meta: {\n name: packageJson.name,\n description: packageJson.description,\n version: packageJson.version,\n },\n subCommands: {\n generate: generateCommand,\n \"generate-templates\": generateTemplatesCommand,\n },\n});\n\nrunMain(main);\n"],"mappings":"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"}
package/dist/lib.cjs CHANGED
@@ -1,4 +1,4 @@
1
- const require_src = require('./src-uYLAh71S.cjs');
1
+ const require_src = require('./src-Ct6srJuH.cjs');
2
2
 
3
3
  Object.defineProperty(exports, 'constants', {
4
4
  enumerable: true,
package/dist/lib.d.cts CHANGED
@@ -1,11 +1,11 @@
1
1
  import { OpenAPI } from "openapi-types";
2
2
  import * as typescript$1 from "typescript";
3
3
  import * as typescript from "typescript";
4
- import * as lodash19 from "lodash";
4
+ import * as lodash20 from "lodash";
5
5
  import * as lodash14 from "lodash";
6
6
  import lodash from "lodash";
7
- import * as swagger_schema_official16 from "swagger-schema-official";
8
- import * as eta20 from "eta";
7
+ import * as swagger_schema_official17 from "swagger-schema-official";
8
+ import * as eta21 from "eta";
9
9
 
10
10
  //#region rolldown:runtime
11
11
  //#endregion
@@ -914,7 +914,7 @@ type RawRouteInfo = {
914
914
  description?: string;
915
915
  tags?: string[];
916
916
  summary?: string;
917
- responses?: swagger_schema_official16.Spec["responses"];
917
+ responses?: swagger_schema_official17.Spec["responses"];
918
918
  produces?: string[];
919
919
  requestBody?: object;
920
920
  consumes?: string[];
@@ -1147,7 +1147,7 @@ interface GenerateApiConfiguration {
1147
1147
  fmtToJSDocLine: (line: string, params?: {
1148
1148
  eol?: boolean;
1149
1149
  }) => string;
1150
- _: lodash19.LoDashStatic;
1150
+ _: lodash20.LoDashStatic;
1151
1151
  require: (path: string) => unknown;
1152
1152
  };
1153
1153
  }
@@ -1168,7 +1168,7 @@ interface GenerateApiOutput {
1168
1168
  content: string;
1169
1169
  withPrefix: boolean;
1170
1170
  }) => void;
1171
- renderTemplate: (templateContent: string, data: Record<string, unknown>, etaOptions?: Partial<eta20.EtaConfig>) => Promise<string> | string;
1171
+ renderTemplate: (templateContent: string, data: Record<string, unknown>, etaOptions?: Partial<eta21.EtaConfig>) => Promise<string> | string;
1172
1172
  getTemplate: (params: {
1173
1173
  fileName?: string;
1174
1174
  name?: string;
package/dist/lib.js CHANGED
@@ -1,3 +1,3 @@
1
- import { constants_exports, generateApi, generateTemplates } from "./src-Bt12Ak64.js";
1
+ import { constants_exports, generateApi, generateTemplates } from "./src-CyhiKzh-.js";
2
2
 
3
3
  export { constants_exports as constants, generateApi, generateTemplates };
@@ -203,7 +203,7 @@ var ComponentTypeNameResolver = class extends NameResolver {
203
203
  //#endregion
204
204
  //#region package.json
205
205
  var name = "swagger-typescript-api";
206
- var version = "13.2.0";
206
+ var version = "13.2.1";
207
207
  var description = "Generate the API client for Fetch or Axios from an OpenAPI Specification";
208
208
  var homepage = "https://github.com/acacode/swagger-typescript-api";
209
209
  var bugs = "https://github.com/acacode/swagger-typescript-api/issues";
@@ -265,16 +265,16 @@ var devDependencies = {
265
265
  "@tsconfig/strictest": "2.0.5",
266
266
  "@types/js-yaml": "4.0.9",
267
267
  "@types/lodash": "4.17.17",
268
- "@types/node": "22.15.29",
268
+ "@types/node": "22.15.30",
269
269
  "@types/swagger2openapi": "7.0.4",
270
270
  "axios": "1.9.0",
271
271
  "openapi-types": "12.1.3",
272
- "tsdown": "0.12.6",
272
+ "tsdown": "0.12.7",
273
273
  "typedoc": "0.28.5",
274
- "vitest": "3.2.1"
274
+ "vitest": "3.2.2"
275
275
  };
276
276
  var packageManager = "yarn@4.9.2";
277
- var engines = { "node": ">=18.0.0" };
277
+ var engines = { "node": ">=20" };
278
278
  var publishConfig = {
279
279
  "access": "public",
280
280
  "provenance": true,
@@ -2633,7 +2633,7 @@ var TypeNameFormatter = class {
2633
2633
  consola.consola.warn("wrong model name", name$1);
2634
2634
  return name$1;
2635
2635
  }
2636
- if (/^([A-Z_]{1,})$/g.test(name$1)) return lodash.default.compact([
2636
+ if (/^(?!\d)([A-Z0-9_]{1,})$/g.test(name$1)) return lodash.default.compact([
2637
2637
  typePrefix,
2638
2638
  name$1,
2639
2639
  typeSuffix
@@ -3197,4 +3197,4 @@ Object.defineProperty(exports, 'package_default', {
3197
3197
  return package_default;
3198
3198
  }
3199
3199
  });
3200
- //# sourceMappingURL=src-uYLAh71S.cjs.map
3200
+ //# sourceMappingURL=src-Ct6srJuH.cjs.map