swagger-typescript-api 13.0.21 → 13.0.23

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/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../cli/constants.js","../cli/execute.js","../cli/parse-args.js","../cli/operations/display-help.js","../cli/operations/display-version.js","../cli/process-option.js","../cli/index.js","../index.js"],"names":["root_command","skip_command","reservedOptions","parseArgs","args","type","argsCopy","didYouMean","execute","params","commands","instance","resolve","reject","command","usageOptions","error","processArgs","option","operationOptions","processUserOptionData","userOption","data","acc","d","parsedOptionsObject","o","flagValue","internal","walkingOption","allFlagKeys","arg","i","tip","existedOption","generateOptionsOutput","options","flags","description","generateOptionsTextOutput","maxLength","spaces","leftStr","leftStrFiller","descriptionLines","line","displayAllHelp","maxOptionLength","commandLabels","maxCommandLength","lodash","name","optionsOutput","commandsOutput","commandLabel","optionsTextOutput","outputTest","displayHelp","displayVersion","optionFormatters","str","processFlags","keys","value","isNoFlag","strArr","rawValue","variadic","longestKey","a","b","processOption","processedFlags","cli","input","addCommand","addVersion","addHelp","processed","codeGenBaseConfig","CodeGenConfig","templateGenBaseConfig","TemplatesGenConfig","program","package_default","moduleNameIndex","HTTP_CLIENT","v","main","customConfig","customConfigPath","e","generateApi","generateTemplates"],"mappings":"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","file":"cli.js","sourcesContent":["const root_command = Symbol(\"root\");\nconst skip_command = Symbol(\"skip\");\n\nconst reservedOptions = [\"version\", \"help\"];\n\nexport { root_command, skip_command, reservedOptions };\n","import didYouMean from \"didyoumean\";\nimport lodash from \"lodash\";\nimport { root_command, skip_command } from \"./constants.js\";\nimport { parseArgs } from \"./parse-args.js\";\n\ndidYouMean.threshold = 0.5;\n\n// eslint-disable-next-line no-unused-vars\nconst execute = (params, commands, instance) => {\n const args = parseArgs(params.args, params.from);\n\n return new Promise((resolve, reject) => {\n const { command, usageOptions, error } = processArgs(commands, args);\n\n if (error) {\n reject(new Error(error));\n return;\n }\n\n if (!usageOptions.length && command.name === root_command) {\n usageOptions.push(\n command.options.find((option) => option.flags.name === \"help\"),\n );\n }\n\n const operationOptions = usageOptions.filter((option) => option.operation);\n if (operationOptions.length) {\n operationOptions[0].operation();\n resolve({\n command: skip_command,\n options: {},\n });\n return;\n } else {\n let error = \"\";\n\n const processUserOptionData = (userOption, option) => {\n if (userOption) {\n const data = userOption.$data;\n if (!data.length && !option.flags.value) {\n return !option.flags.isNoFlag;\n }\n if (option.flags.value) {\n if (option.flags.value.variadic) {\n return data.reduce((acc, d) => {\n acc.push(...d.split(\",\").map(option.flags.value.formatter));\n return acc;\n }, []);\n } else {\n return option.flags.value.formatter(data[0] || option.default);\n }\n }\n }\n\n return option.default;\n };\n\n const parsedOptionsObject = command.options.reduce((acc, option) => {\n if (error) return acc;\n\n const userOption = usageOptions.find(\n (o) => o.flags.name === option.flags.name,\n );\n\n if (!userOption && option.required) {\n error = `required option '${option.flags.raw}' not specified`;\n return acc;\n }\n\n const flagValue = processUserOptionData(userOption, option);\n if (!option.operation) {\n const internal = option.internal || {};\n acc[internal.name || option.flags.name] = internal.formatter\n ? internal.formatter(flagValue)\n : flagValue;\n }\n\n return acc;\n }, {});\n\n if (error) {\n reject(new Error(error));\n } else {\n resolve({\n command: command.name === root_command ? null : command.name,\n options: parsedOptionsObject,\n });\n }\n }\n });\n};\n\nconst processArgs = (commands, args) => {\n let command = null;\n let usageOptions = [];\n let walkingOption = null;\n let error = \"\";\n\n let allFlagKeys = [];\n\n args.forEach((arg, i) => {\n if (error) return;\n\n if (i === 0) {\n command = commands[arg];\n\n if (!command && !arg.startsWith(\"-\")) {\n const tip = didYouMean(arg, commands.keys());\n error = `unknown command ${arg}${\n tip ? `\\n(Did you mean ${tip} ?)` : \"\"\n }`;\n } else if (!command) {\n command = commands[root_command];\n }\n\n if (command) {\n allFlagKeys = command.options.reduce(\n (acc, option) => [...acc, ...option.flags.keys],\n [],\n );\n }\n }\n\n if (error) return;\n\n if (arg.startsWith(\"-\")) {\n const option = command.options.find((option) =>\n option.flags.keys.includes(arg),\n );\n\n if (!option) {\n const tip = didYouMean(arg, allFlagKeys);\n error = `unknown option ${arg}${\n tip ? `\\n(Did you mean ${tip} ?)` : \"\"\n }`;\n }\n\n if (option) {\n if (walkingOption && walkingOption.flags.name === option.flags.name) {\n return;\n }\n const existedOption = usageOptions.find(\n (o) => o.flags.name === option.flags.name,\n );\n if (existedOption) {\n walkingOption = existedOption;\n } else {\n walkingOption = {\n ...option,\n $data: [],\n };\n usageOptions.push(walkingOption);\n }\n }\n\n return;\n }\n\n if (walkingOption) {\n walkingOption.$data.push(arg);\n }\n });\n command = command || commands[root_command];\n\n if (error) {\n return {\n command: null,\n usageOptions: [],\n error,\n };\n }\n\n return {\n command,\n usageOptions,\n error,\n };\n};\n\nexport { execute };\n","const parseArgs = (args, type) => {\n if (args == null || !Array.isArray(args)) {\n throw \"args should be array\";\n }\n const argsCopy = args.slice();\n\n switch (type) {\n case \"electron\": {\n if (process.defaultApp) {\n return argsCopy.slice(2);\n }\n\n return argsCopy.slice(1);\n }\n case \"user\": {\n return argsCopy;\n }\n default: {\n return argsCopy.slice(2);\n }\n }\n};\n\nexport { parseArgs };\n","import lodash from \"lodash\";\nimport { root_command } from \"../constants.js\";\n\nconst generateOptionsOutput = (options) =>\n options.reduce(\n (acc, option) => {\n const flags = `${option.flags.keys.join(\", \")}${\n option.flags.value?.raw ? ` ${option.flags.value?.raw}` : \"\"\n }`;\n const description = `${option.description || \"\"}${\n option.default === undefined ||\n (option.flags.isNoFlag && option.default === true)\n ? \"\"\n : ` (default: ${\n typeof option.default === \"string\"\n ? `\"${option.default}\"`\n : option.default\n })`\n }`;\n\n if (flags.length > acc.maxLength) {\n acc.maxLength = flags.length;\n }\n\n acc.options.push({\n flags,\n description,\n });\n return acc;\n },\n {\n options: [],\n maxLength: 0,\n },\n );\n\nconst generateOptionsTextOutput = (options, maxLength, spaces) =>\n options\n .map((option) => {\n const spacesText = Array(spaces).fill(\" \").join(\"\");\n const leftStr = `${spacesText}${option.flags.padEnd(maxLength, \" \")} `;\n const leftStrFiller = Array(leftStr.length).fill(\" \").join(\"\");\n const descriptionLines = option.description.split(\"\\n\");\n\n return (\n leftStr +\n descriptionLines\n .map((line, i) => {\n if (i === 0) {\n return line;\n }\n\n return `\\n${leftStrFiller}${line}`;\n })\n .join(\"\")\n );\n })\n .join(\"\\n\");\n\nconst displayAllHelp = (commands, instance) => {\n const { options, maxLength: maxOptionLength } = generateOptionsOutput(\n commands[root_command].options,\n );\n\n const { commands: commandLabels, maxLength: maxCommandLength } = lodash\n .filter(commands, (command) => command.name !== root_command)\n .reduce(\n (acc, command) => {\n const options = generateOptionsOutput(command.options);\n const name = `${command.name}${options.length ? \" [options]\" : \"\"}`;\n const description = command.description;\n\n const maxLength = Math.max(name.length, options.maxLength);\n if (maxLength > acc.maxLength) {\n acc.maxLength = maxLength;\n }\n\n acc.commands.push({\n description,\n name,\n options,\n });\n return acc;\n },\n {\n commands: [],\n maxLength: maxOptionLength,\n },\n );\n\n const optionsOutput = generateOptionsTextOutput(options, maxOptionLength, 2);\n\n const commandsOutput = commandLabels\n .map((commandLabel) => {\n const leftStr = ` ${commandLabel.name.padEnd(\n maxCommandLength,\n \" \",\n )} `;\n const leftStrFiller = Array(leftStr.length).fill(\" \").join(\"\");\n const descriptionLines = commandLabel.description.split(\"\\n\");\n const optionsTextOutput = generateOptionsTextOutput(\n commandLabel.options.options,\n maxCommandLength,\n 4,\n );\n\n return (\n leftStr +\n descriptionLines\n .map((line, i) => {\n if (i === 0) {\n return line;\n }\n\n return `\\n${leftStrFiller}${line}`;\n })\n .join(\"\") +\n (optionsTextOutput.length ? `\\n${optionsTextOutput}` : \"\")\n );\n })\n .join(\"\\n\");\n\n const outputTest = [\n optionsOutput &&\n `Options:\n${optionsOutput}`,\n commandsOutput &&\n `Commands:\n${commandsOutput}`,\n ]\n .filter(Boolean)\n .join(\"\\n\\n\");\n\n console.log(`Usage: ${[instance.input.name, instance.input.alias]\n .filter(Boolean)\n .join(\"|\")}${optionsOutput ? \" [options]\" : \"\"}${\n commandsOutput ? \" [command]\" : \"\"\n }\n${\n instance.input.description &&\n `\n${instance.input.description}`\n}\n\n${outputTest}`);\n};\n\nconst displayHelp = (commands, instance, command) => {\n if (command.name === root_command) return displayAllHelp(commands, instance);\n\n const { options, maxLength: maxOptionLength } = generateOptionsOutput(\n command.options,\n );\n const optionsOutput = generateOptionsTextOutput(options, maxOptionLength, 2);\n\n const outputTest = [\n optionsOutput &&\n `Options:\n${optionsOutput}`,\n ]\n .filter(Boolean)\n .join(\"\\n\\n\");\n\n console.log(`Usage: ${instance.input.name} ${command.name}${\n optionsOutput ? \" [options]\" : \"\"\n }\n${\n command.description &&\n `\n${command.description}`\n}\n\n${outputTest}`);\n};\n\nexport { displayHelp };\n","const displayVersion = (instance) => {\n console.log(instance.input.version);\n};\n\nexport { displayVersion };\n","import lodash from \"lodash\";\n\nconst optionFormatters = {\n number: (str) => +str,\n numeric: (str) => +str,\n str: (str) => `${str}`,\n string: (str) => `${str}`,\n bool: (str) => !!str,\n boolean: (str) => !!str,\n};\n\nconst processFlags = (flags) => {\n let name = null;\n const keys = [];\n let value = null;\n const isNoFlag = flags.includes(\"--no-\");\n\n const strArr = lodash.compact(\n flags.split(\" \").map((str) => str.replace(/,/g, \"\")),\n );\n\n for (const str of strArr) {\n if (str.startsWith(\"-\")) {\n keys.push(str);\n } else if (value === null) {\n if (str.startsWith(\"{\") || str.startsWith(\"[\") || str.startsWith(\"<\")) {\n const rawValue = str.replace(/[{[<>}\\].]/g, \"\");\n const variadic = str.includes(\"...\");\n value = {\n raw: str,\n variadic,\n name: rawValue,\n formatter: optionFormatters[rawValue] || optionFormatters.string,\n };\n }\n }\n }\n\n const longestKey = keys.slice().sort((a, b) => b.length - a.length)[0];\n\n if (longestKey !== \"\") {\n name = lodash.camelCase(\n (isNoFlag ? longestKey.replace(\"--no-\", \"\") : longestKey).replace(\n /(--?)/,\n \"\",\n ),\n );\n }\n\n return {\n isNoFlag,\n raw: flags,\n name,\n keys,\n value,\n };\n};\n\nconst processOption = (option) => {\n const processedFlags = processFlags(option.flags);\n\n if (!processedFlags.name) {\n console.warn(\"invalid option\", option);\n return null;\n }\n\n return {\n required: !!option.required,\n description: `${option.description || \"\"}`,\n default: option.default,\n flags: processedFlags,\n operation: option.operation,\n internal: option.internal,\n };\n};\n\nexport { processOption };\n","import lodash from \"lodash\";\nimport { reservedOptions, root_command } from \"./constants.js\";\nimport { execute } from \"./execute.js\";\nimport { displayHelp } from \"./operations/display-help.js\";\nimport { displayVersion } from \"./operations/display-version.js\";\nimport { processOption } from \"./process-option.js\";\n\nconst cli = (input) => {\n const commands = {};\n\n const addCommand = (command, { addVersion = false, addHelp = true } = {}) => {\n commands[command.name] = {\n name: command.name,\n description: `${command.description || \"\"}`,\n options: lodash.compact(command.options.map(processOption)),\n };\n\n if (addVersion) {\n commands[command.name].options.unshift(\n processOption({\n flags: \"-v, --version\",\n description: \"output the current version\",\n operation: () => displayVersion(instance),\n }),\n );\n }\n\n if (addHelp) {\n commands[command.name].options.push(\n processOption({\n flags: \"-h, --help\",\n description: \"display help for command\",\n operation: () =>\n displayHelp(commands, instance, commands[command.name]),\n }),\n );\n }\n\n return instance;\n };\n\n const instance = {\n commands,\n input,\n addCommand,\n execute: (params) => execute(params, commands, instance),\n };\n\n addCommand(\n {\n name: root_command,\n options: [],\n },\n {\n addVersion: false,\n addHelp: false,\n },\n );\n\n for (const option of input.options) {\n const processed = processOption(option);\n\n if (!processed) return;\n\n if (reservedOptions.includes(processed.name)) {\n console.warn(\"reserved option\", processed.name);\n return;\n }\n\n commands[root_command].options.push(processed);\n }\n\n commands[root_command].options.unshift(\n processOption({\n flags: \"-v, --version\",\n description: \"output the current version\",\n operation: () => displayVersion(instance),\n }),\n );\n\n commands[root_command].options.push(\n processOption({\n flags: \"-h, --help\",\n description: \"display help for command\",\n operation: () => displayHelp(commands, instance, commands[root_command]),\n }),\n );\n\n for (const command of Object.entries(input.commands ?? {})) {\n addCommand(command);\n }\n\n return instance;\n};\n\nexport { cli };\n","#!/usr/bin/env node\n\nimport { resolve } from \"node:path\";\nimport { cli } from \"./cli/index.js\";\nimport packageJson from \"./package.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\";\n\nconst codeGenBaseConfig = new CodeGenConfig({});\nconst templateGenBaseConfig = new TemplatesGenConfig({});\n\nconst program = cli({\n name: packageJson.name,\n alias: \"sta\",\n version: packageJson.version,\n description:\n \"Generate api via swagger scheme.\\nSupports OA 3.0, 2.0, JSON, yaml.\",\n options: [\n {\n flags: \"-p, --path <string>\",\n description: \"path/url to swagger scheme\",\n required: true,\n },\n {\n flags: \"-o, --output <string>\",\n description: \"output path of typescript api file\",\n default: \"./\",\n },\n {\n flags: \"-n, --name <string>\",\n description: \"name of output typescript api file\",\n default: codeGenBaseConfig.fileName,\n },\n {\n flags: \"-t, --templates <string>\",\n description: \"path to folder containing templates\",\n },\n {\n flags: \"-d, --default-as-success\",\n description:\n 'use \"default\" response status code as success response too.\\n' +\n 'some swagger schemas use \"default\" response status code as success response type by default.',\n default: codeGenBaseConfig.defaultResponseAsSuccess,\n internal: { name: \"defaultResponseAsSuccess\" },\n },\n {\n flags: \"-r, --responses\",\n description:\n \"generate additional information about request responses\\n\" +\n \"also add typings for bad responses\",\n default: codeGenBaseConfig.generateResponses,\n internal: { name: \"generateResponses\" },\n },\n {\n flags: \"--union-enums\",\n description: 'generate all \"enum\" types as union types (T1 | T2 | TN)',\n default: codeGenBaseConfig.generateUnionEnums,\n internal: { name: \"generateUnionEnums\" },\n },\n {\n flags: \"--add-readonly\",\n description: \"generate readonly properties\",\n default: codeGenBaseConfig.addReadonly,\n },\n {\n flags: \"--route-types\",\n description: \"generate type definitions for API routes\",\n default: codeGenBaseConfig.generateRouteTypes,\n internal: { name: \"generateRouteTypes\" },\n },\n {\n flags: \"--no-client\",\n description: \"do not generate an API class\",\n default: codeGenBaseConfig.generateClient,\n },\n {\n flags: \"--enum-names-as-values\",\n description:\n \"use values in 'x-enumNames' as enum values (not only as keys)\",\n default: codeGenBaseConfig.enumNamesAsValues,\n },\n {\n flags: \"--extract-request-params\",\n description:\n \"extract request params to data contract (Also combine path params and query params into one object)\",\n default: codeGenBaseConfig.extractRequestParams,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--extract-request-body\",\n description: \"extract request body type to data contract\",\n default: codeGenBaseConfig.extractRequestBody,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--extract-response-body\",\n description: \"extract response body type to data contract\",\n default: codeGenBaseConfig.extractResponseBody,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--extract-response-error\",\n description: \"extract response error type to data contract\",\n default: codeGenBaseConfig.extractResponseError,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--extract-responses\",\n description: \"extract all responses described in /components/responses\",\n default: codeGenBaseConfig.extractResponses,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--modular\",\n description:\n \"generate separated files for http client, data contracts, and routes\",\n default: codeGenBaseConfig.modular,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--js\",\n description: \"generate js api module with declaration file\",\n default: codeGenBaseConfig.toJS,\n internal: { formatter: Boolean, name: \"toJS\" },\n },\n {\n flags: \"--module-name-index <number>\",\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,\n internal: { formatter: (moduleNameIndex) => +moduleNameIndex || 0 },\n },\n {\n flags: \"--module-name-first-tag\",\n description: \"splits routes based on the first tag\",\n default: codeGenBaseConfig.moduleNameFirstTag,\n },\n {\n flags: \"--disableStrictSSL\",\n description: \"disabled strict SSL\",\n default: codeGenBaseConfig.disableStrictSSL,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--disableProxy\",\n description: \"disabled proxy\",\n default: codeGenBaseConfig.disableProxy,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--axios\",\n description: \"generate axios http client\",\n default: codeGenBaseConfig.httpClientType === HTTP_CLIENT.AXIOS,\n },\n {\n flags: \"--unwrap-response-data\",\n description: \"unwrap the data item from the response\",\n default: codeGenBaseConfig.unwrapResponseData,\n },\n {\n flags: \"--disable-throw-on-error\",\n description: \"Do not throw an error when response.ok is not true\",\n default: codeGenBaseConfig.disableThrowOnError,\n },\n {\n flags: \"--single-http-client\",\n description: \"Ability to send HttpClient instance to Api constructor\",\n default: codeGenBaseConfig.singleHttpClient,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--silent\",\n description: \"Output only errors to console\",\n default: codeGenBaseConfig.silent,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--default-response <type>\",\n description: \"default type for empty response schema\",\n default: codeGenBaseConfig.defaultResponseType,\n internal: { name: \"defaultResponseType\" },\n },\n {\n flags: \"--type-prefix <string>\",\n description: \"data contract name prefix\",\n default: codeGenBaseConfig.typePrefix,\n },\n {\n flags: \"--type-suffix <string>\",\n description: \"data contract name suffix\",\n default: codeGenBaseConfig.typeSuffix,\n },\n {\n flags: \"--clean-output\",\n description:\n \"clean output folder before generate api. WARNING: May cause data loss\",\n default: codeGenBaseConfig.cleanOutput,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--api-class-name <string>\",\n description: \"name of the api class\",\n default: codeGenBaseConfig.apiClassName,\n },\n {\n flags: \"--patch\",\n description: \"fix up small errors in the swagger source definition\",\n default: codeGenBaseConfig.patch,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--debug\",\n description: \"additional information about processes inside this tool\",\n default: codeGenBaseConfig.debug,\n },\n {\n flags: \"--another-array-type\",\n description: \"generate array types as Array<Type> (by default Type[])\",\n default: codeGenBaseConfig.anotherArrayType,\n },\n {\n flags: \"--sort-types\",\n description: \"sort fields and types\",\n default: codeGenBaseConfig.sortTypes,\n },\n {\n flags: \"--extract-enums\",\n description:\n \"extract all enums from inline interface\\\\type content to typescript enum construction\",\n default: codeGenBaseConfig.extractEnums,\n },\n {\n flags: \"--sort-routes\",\n description: \"sort routes in alphabetical order\",\n default: codeGenBaseConfig.sortRoutes,\n },\n {\n flags: \"--custom-config <string>\",\n description: \"custom config: primitiveTypeConstructs, hooks, ... \",\n default: \"\",\n },\n ],\n});\n\nprogram.addCommand({\n name: \"generate-templates\",\n description: `Generate \".ejs\" templates needed for generate api`,\n options: [\n {\n flags: \"-o, --output <string>\",\n description: \"output path of generated templates\",\n default: templateGenBaseConfig.output,\n },\n {\n flags: \"-m, --modular\",\n description:\n \"generate templates needed to separate files for http client, data contracts, and routes\",\n default: templateGenBaseConfig.modular,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--http-client <string>\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )\n .map((v) => `\"${v}\"`)\n .join(\", \")})`,\n default: templateGenBaseConfig.httpClientType,\n internal: { name: \"httpClientType\" },\n },\n {\n flags: \"-c, --clean-output\",\n description:\n \"clean output folder before generate template. WARNING: May cause data loss\",\n default: templateGenBaseConfig.cleanOutput,\n internal: { formatter: Boolean },\n },\n {\n flags: \"-r, --rewrite\",\n description: \"rewrite content in existing templates\",\n default: templateGenBaseConfig.rewrite,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--silent\",\n description: \"Output only errors to console\",\n default: templateGenBaseConfig.silent,\n internal: { formatter: Boolean },\n },\n ],\n});\n\nconst main = async () => {\n const { command, options } = await program.execute({ args: process.argv });\n\n let customConfig = null;\n let customConfigPath;\n\n if (options.customConfig) {\n try {\n customConfigPath = resolve(process.cwd(), options.customConfig);\n customConfig = await import(customConfigPath);\n customConfig = customConfig.default || customConfig;\n } catch (e) {\n console.error(\"Error loading custom config\", e);\n }\n if (customConfig) {\n console.log(`✨ found custom config at: ${customConfigPath}`);\n }\n }\n\n try {\n switch (command) {\n case null: {\n await generateApi({\n ...options,\n name: options.name,\n url: options.path,\n generateRouteTypes: options.generateRouteTypes,\n generateClient: !!(options.axios || options.client),\n httpClientType: options.axios ? HTTP_CLIENT.AXIOS : HTTP_CLIENT.FETCH,\n input: resolve(process.cwd(), options.path),\n output: resolve(process.cwd(), options.output || \".\"),\n ...customConfig,\n });\n break;\n }\n case \"generate-templates\": {\n await generateTemplates(options);\n break;\n }\n default: {\n break;\n }\n }\n } catch (e) {\n console.error(e);\n process.exit(1);\n }\n process.exit(0);\n};\n\nmain();\n"]}
1
+ {"version":3,"sources":["../cli/constants.js","../cli/parse-args.js","../cli/execute.js","../cli/operations/display-help.js","../cli/operations/display-version.js","../cli/process-option.js","../cli/index.js","../index.js"],"names":["root_command","skip_command","reservedOptions","parseArgs","args","type","argsCopy","didYouMean","execute","params","commands","instance","resolve","reject","command","usageOptions","error","processArgs","option","operationOptions","processUserOptionData","userOption","data","acc","d","parsedOptionsObject","o","flagValue","internal","walkingOption","allFlagKeys","arg","i","tip","existedOption","generateOptionsOutput","options","flags","description","generateOptionsTextOutput","maxLength","spaces","leftStr","leftStrFiller","descriptionLines","line","displayAllHelp","maxOptionLength","commandLabels","maxCommandLength","lodash","name","optionsOutput","commandsOutput","commandLabel","optionsTextOutput","outputTest","displayHelp","displayVersion","optionFormatters","str","processFlags","keys","value","isNoFlag","strArr","rawValue","variadic","longestKey","b","processOption","processedFlags","cli","input","addCommand","addVersion","addHelp","processed","codeGenBaseConfig","CodeGenConfig","templateGenBaseConfig","TemplatesGenConfig","program","package_default","moduleNameIndex","HTTP_CLIENT","v","main","customConfig","customConfigPath","pathToFileURL","e","generateApi","generateTemplates"],"mappings":"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","file":"cli.js","sourcesContent":["const root_command = Symbol(\"root\");\nconst skip_command = Symbol(\"skip\");\n\nconst reservedOptions = [\"version\", \"help\"];\n\nexport { root_command, skip_command, reservedOptions };\n","const parseArgs = (args, type) => {\n if (args == null || !Array.isArray(args)) {\n throw \"args should be array\";\n }\n const argsCopy = args.slice();\n\n switch (type) {\n case \"electron\": {\n if (process.defaultApp) {\n return argsCopy.slice(2);\n }\n\n return argsCopy.slice(1);\n }\n case \"user\": {\n return argsCopy;\n }\n default: {\n return argsCopy.slice(2);\n }\n }\n};\n\nexport { parseArgs };\n","import didYouMean from \"didyoumean\";\nimport { root_command, skip_command } from \"./constants.js\";\nimport { parseArgs } from \"./parse-args.js\";\n\ndidYouMean.threshold = 0.5;\n\nconst execute = (params, commands, instance) => {\n const args = parseArgs(params.args, params.from);\n\n return new Promise((resolve, reject) => {\n const { command, usageOptions, error } = processArgs(commands, args);\n\n if (error) {\n reject(new Error(error));\n return;\n }\n\n if (!usageOptions.length && command.name === root_command) {\n usageOptions.push(\n command.options.find((option) => option.flags.name === \"help\"),\n );\n }\n\n const operationOptions = usageOptions.filter((option) => option.operation);\n if (operationOptions.length) {\n operationOptions[0].operation();\n resolve({\n command: skip_command,\n options: {},\n });\n return;\n } else {\n let error = \"\";\n\n const processUserOptionData = (userOption, option) => {\n if (userOption) {\n const data = userOption.$data;\n if (!data.length && !option.flags.value) {\n return !option.flags.isNoFlag;\n }\n if (option.flags.value) {\n if (option.flags.value.variadic) {\n return data.reduce((acc, d) => {\n acc.push(...d.split(\",\").map(option.flags.value.formatter));\n return acc;\n }, []);\n } else {\n return option.flags.value.formatter(data[0] || option.default);\n }\n }\n }\n\n return option.default;\n };\n\n const parsedOptionsObject = command.options.reduce((acc, option) => {\n if (error) return acc;\n\n const userOption = usageOptions.find(\n (o) => o.flags.name === option.flags.name,\n );\n\n if (!userOption && option.required) {\n error = `required option '${option.flags.raw}' not specified`;\n return acc;\n }\n\n const flagValue = processUserOptionData(userOption, option);\n if (!option.operation) {\n const internal = option.internal || {};\n acc[internal.name || option.flags.name] = internal.formatter\n ? internal.formatter(flagValue)\n : flagValue;\n }\n\n return acc;\n }, {});\n\n if (error) {\n reject(new Error(error));\n } else {\n resolve({\n command: command.name === root_command ? null : command.name,\n options: parsedOptionsObject,\n });\n }\n }\n });\n};\n\nconst processArgs = (commands, args) => {\n let command = null;\n let usageOptions = [];\n let walkingOption = null;\n let error = \"\";\n\n let allFlagKeys = [];\n\n args.forEach((arg, i) => {\n if (error) return;\n\n if (i === 0) {\n command = commands[arg];\n\n if (!command && !arg.startsWith(\"-\")) {\n const tip = didYouMean(arg, commands.keys());\n error = `unknown command ${arg}${\n tip ? `\\n(Did you mean ${tip} ?)` : \"\"\n }`;\n } else if (!command) {\n command = commands[root_command];\n }\n\n if (command) {\n allFlagKeys = command.options.reduce(\n (acc, option) => [...acc, ...option.flags.keys],\n [],\n );\n }\n }\n\n if (error) return;\n\n if (arg.startsWith(\"-\")) {\n const option = command.options.find((option) =>\n option.flags.keys.includes(arg),\n );\n\n if (!option) {\n const tip = didYouMean(arg, allFlagKeys);\n error = `unknown option ${arg}${\n tip ? `\\n(Did you mean ${tip} ?)` : \"\"\n }`;\n }\n\n if (option) {\n if (walkingOption && walkingOption.flags.name === option.flags.name) {\n return;\n }\n const existedOption = usageOptions.find(\n (o) => o.flags.name === option.flags.name,\n );\n if (existedOption) {\n walkingOption = existedOption;\n } else {\n walkingOption = {\n ...option,\n $data: [],\n };\n usageOptions.push(walkingOption);\n }\n }\n\n return;\n }\n\n if (walkingOption) {\n walkingOption.$data.push(arg);\n }\n });\n command = command || commands[root_command];\n\n if (error) {\n return {\n command: null,\n usageOptions: [],\n error,\n };\n }\n\n return {\n command,\n usageOptions,\n error,\n };\n};\n\nexport { execute };\n","import lodash from \"lodash\";\nimport { root_command } from \"../constants.js\";\n\nconst generateOptionsOutput = (options) =>\n options.reduce(\n (acc, option) => {\n const flags = `${option.flags.keys.join(\", \")}${\n option.flags.value?.raw ? ` ${option.flags.value?.raw}` : \"\"\n }`;\n const description = `${option.description || \"\"}${\n option.default === undefined ||\n (option.flags.isNoFlag && option.default === true)\n ? \"\"\n : ` (default: ${\n typeof option.default === \"string\"\n ? `\"${option.default}\"`\n : option.default\n })`\n }`;\n\n if (flags.length > acc.maxLength) {\n acc.maxLength = flags.length;\n }\n\n acc.options.push({\n flags,\n description,\n });\n return acc;\n },\n {\n options: [],\n maxLength: 0,\n },\n );\n\nconst generateOptionsTextOutput = (options, maxLength, spaces) =>\n options\n .map((option) => {\n const spacesText = Array(spaces).fill(\" \").join(\"\");\n const leftStr = `${spacesText}${option.flags.padEnd(maxLength, \" \")} `;\n const leftStrFiller = Array(leftStr.length).fill(\" \").join(\"\");\n const descriptionLines = option.description.split(\"\\n\");\n\n return (\n leftStr +\n descriptionLines\n .map((line, i) => {\n if (i === 0) {\n return line;\n }\n\n return `\\n${leftStrFiller}${line}`;\n })\n .join(\"\")\n );\n })\n .join(\"\\n\");\n\nconst displayAllHelp = (commands, instance) => {\n const { options, maxLength: maxOptionLength } = generateOptionsOutput(\n commands[root_command].options,\n );\n\n const { commands: commandLabels, maxLength: maxCommandLength } = lodash\n .filter(commands, (command) => command.name !== root_command)\n .reduce(\n (acc, command) => {\n const options = generateOptionsOutput(command.options);\n const name = `${command.name}${options.length ? \" [options]\" : \"\"}`;\n const description = command.description;\n\n const maxLength = Math.max(name.length, options.maxLength);\n if (maxLength > acc.maxLength) {\n acc.maxLength = maxLength;\n }\n\n acc.commands.push({\n description,\n name,\n options,\n });\n return acc;\n },\n {\n commands: [],\n maxLength: maxOptionLength,\n },\n );\n\n const optionsOutput = generateOptionsTextOutput(options, maxOptionLength, 2);\n\n const commandsOutput = commandLabels\n .map((commandLabel) => {\n const leftStr = ` ${commandLabel.name.padEnd(\n maxCommandLength,\n \" \",\n )} `;\n const leftStrFiller = Array(leftStr.length).fill(\" \").join(\"\");\n const descriptionLines = commandLabel.description.split(\"\\n\");\n const optionsTextOutput = generateOptionsTextOutput(\n commandLabel.options.options,\n maxCommandLength,\n 4,\n );\n\n return (\n leftStr +\n descriptionLines\n .map((line, i) => {\n if (i === 0) {\n return line;\n }\n\n return `\\n${leftStrFiller}${line}`;\n })\n .join(\"\") +\n (optionsTextOutput.length ? `\\n${optionsTextOutput}` : \"\")\n );\n })\n .join(\"\\n\");\n\n const outputTest = [\n optionsOutput &&\n `Options:\n${optionsOutput}`,\n commandsOutput &&\n `Commands:\n${commandsOutput}`,\n ]\n .filter(Boolean)\n .join(\"\\n\\n\");\n\n console.log(`Usage: ${[instance.input.name, instance.input.alias]\n .filter(Boolean)\n .join(\"|\")}${optionsOutput ? \" [options]\" : \"\"}${\n commandsOutput ? \" [command]\" : \"\"\n }\n${\n instance.input.description &&\n `\n${instance.input.description}`\n}\n\n${outputTest}`);\n};\n\nconst displayHelp = (commands, instance, command) => {\n if (command.name === root_command) return displayAllHelp(commands, instance);\n\n const { options, maxLength: maxOptionLength } = generateOptionsOutput(\n command.options,\n );\n const optionsOutput = generateOptionsTextOutput(options, maxOptionLength, 2);\n\n const outputTest = [\n optionsOutput &&\n `Options:\n${optionsOutput}`,\n ]\n .filter(Boolean)\n .join(\"\\n\\n\");\n\n console.log(`Usage: ${instance.input.name} ${command.name}${\n optionsOutput ? \" [options]\" : \"\"\n }\n${\n command.description &&\n `\n${command.description}`\n}\n\n${outputTest}`);\n};\n\nexport { displayHelp };\n","const displayVersion = (instance) => {\n console.log(instance.input.version);\n};\n\nexport { displayVersion };\n","import lodash from \"lodash\";\n\nconst optionFormatters = {\n number: (str) => +str,\n numeric: (str) => +str,\n str: (str) => `${str}`,\n string: (str) => `${str}`,\n bool: (str) => !!str,\n boolean: (str) => !!str,\n};\n\nconst processFlags = (flags) => {\n let name = null;\n const keys = [];\n let value = null;\n const isNoFlag = flags.includes(\"--no-\");\n\n const strArr = lodash.compact(\n flags.split(\" \").map((str) => str.replace(/,/g, \"\")),\n );\n\n for (const str of strArr) {\n if (str.startsWith(\"-\")) {\n keys.push(str);\n } else if (value === null) {\n if (str.startsWith(\"{\") || str.startsWith(\"[\") || str.startsWith(\"<\")) {\n const rawValue = str.replace(/[{[<>}\\].]/g, \"\");\n const variadic = str.includes(\"...\");\n value = {\n raw: str,\n variadic,\n name: rawValue,\n formatter: optionFormatters[rawValue] || optionFormatters.string,\n };\n }\n }\n }\n\n const longestKey = keys.slice().sort((a, b) => b.length - a.length)[0];\n\n if (longestKey !== \"\") {\n name = lodash.camelCase(\n (isNoFlag ? longestKey.replace(\"--no-\", \"\") : longestKey).replace(\n /(--?)/,\n \"\",\n ),\n );\n }\n\n return {\n isNoFlag,\n raw: flags,\n name,\n keys,\n value,\n };\n};\n\nconst processOption = (option) => {\n const processedFlags = processFlags(option.flags);\n\n if (!processedFlags.name) {\n console.warn(\"invalid option\", option);\n return null;\n }\n\n return {\n required: !!option.required,\n description: `${option.description || \"\"}`,\n default: option.default,\n flags: processedFlags,\n operation: option.operation,\n internal: option.internal,\n };\n};\n\nexport { processOption };\n","import lodash from \"lodash\";\nimport { reservedOptions, root_command } from \"./constants.js\";\nimport { execute } from \"./execute.js\";\nimport { displayHelp } from \"./operations/display-help.js\";\nimport { displayVersion } from \"./operations/display-version.js\";\nimport { processOption } from \"./process-option.js\";\n\nconst cli = (input) => {\n const commands = {};\n\n const addCommand = (command, { addVersion = false, addHelp = true } = {}) => {\n commands[command.name] = {\n name: command.name,\n description: `${command.description || \"\"}`,\n options: lodash.compact(command.options.map(processOption)),\n };\n\n if (addVersion) {\n commands[command.name].options.unshift(\n processOption({\n flags: \"-v, --version\",\n description: \"output the current version\",\n operation: () => displayVersion(instance),\n }),\n );\n }\n\n if (addHelp) {\n commands[command.name].options.push(\n processOption({\n flags: \"-h, --help\",\n description: \"display help for command\",\n operation: () =>\n displayHelp(commands, instance, commands[command.name]),\n }),\n );\n }\n\n return instance;\n };\n\n const instance = {\n commands,\n input,\n addCommand,\n execute: (params) => execute(params, commands, instance),\n };\n\n addCommand(\n {\n name: root_command,\n options: [],\n },\n {\n addVersion: false,\n addHelp: false,\n },\n );\n\n for (const option of input.options) {\n const processed = processOption(option);\n\n if (!processed) return;\n\n if (reservedOptions.includes(processed.name)) {\n console.warn(\"reserved option\", processed.name);\n return;\n }\n\n commands[root_command].options.push(processed);\n }\n\n commands[root_command].options.unshift(\n processOption({\n flags: \"-v, --version\",\n description: \"output the current version\",\n operation: () => displayVersion(instance),\n }),\n );\n\n commands[root_command].options.push(\n processOption({\n flags: \"-h, --help\",\n description: \"display help for command\",\n operation: () => displayHelp(commands, instance, commands[root_command]),\n }),\n );\n\n for (const command of Object.entries(input.commands ?? {})) {\n addCommand(command);\n }\n\n return instance;\n};\n\nexport { cli };\n","#!/usr/bin/env node\n\nimport { resolve } from \"node:path\";\nimport { pathToFileURL } from \"node:url\";\nimport { cli } from \"./cli/index.js\";\nimport packageJson from \"./package.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\";\n\nconst codeGenBaseConfig = new CodeGenConfig({});\nconst templateGenBaseConfig = new TemplatesGenConfig({});\n\nconst program = cli({\n name: packageJson.name,\n alias: \"sta\",\n version: packageJson.version,\n description:\n \"Generate api via swagger scheme.\\nSupports OA 3.0, 2.0, JSON, yaml.\",\n options: [\n {\n flags: \"-p, --path <string>\",\n description: \"path/url to swagger scheme\",\n required: true,\n },\n {\n flags: \"-o, --output <string>\",\n description: \"output path of typescript api file\",\n default: \"./\",\n },\n {\n flags: \"-n, --name <string>\",\n description: \"name of output typescript api file\",\n default: codeGenBaseConfig.fileName,\n },\n {\n flags: \"-t, --templates <string>\",\n description: \"path to folder containing templates\",\n },\n {\n flags: \"-d, --default-as-success\",\n description:\n 'use \"default\" response status code as success response too.\\n' +\n 'some swagger schemas use \"default\" response status code as success response type by default.',\n default: codeGenBaseConfig.defaultResponseAsSuccess,\n internal: { name: \"defaultResponseAsSuccess\" },\n },\n {\n flags: \"-r, --responses\",\n description:\n \"generate additional information about request responses\\n\" +\n \"also add typings for bad responses\",\n default: codeGenBaseConfig.generateResponses,\n internal: { name: \"generateResponses\" },\n },\n {\n flags: \"--union-enums\",\n description: 'generate all \"enum\" types as union types (T1 | T2 | TN)',\n default: codeGenBaseConfig.generateUnionEnums,\n internal: { name: \"generateUnionEnums\" },\n },\n {\n flags: \"--add-readonly\",\n description: \"generate readonly properties\",\n default: codeGenBaseConfig.addReadonly,\n },\n {\n flags: \"--route-types\",\n description: \"generate type definitions for API routes\",\n default: codeGenBaseConfig.generateRouteTypes,\n internal: { name: \"generateRouteTypes\" },\n },\n {\n flags: \"--no-client\",\n description: \"do not generate an API class\",\n default: codeGenBaseConfig.generateClient,\n },\n {\n flags: \"--enum-names-as-values\",\n description:\n \"use values in 'x-enumNames' as enum values (not only as keys)\",\n default: codeGenBaseConfig.enumNamesAsValues,\n },\n {\n flags: \"--extract-request-params\",\n description:\n \"extract request params to data contract (Also combine path params and query params into one object)\",\n default: codeGenBaseConfig.extractRequestParams,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--extract-request-body\",\n description: \"extract request body type to data contract\",\n default: codeGenBaseConfig.extractRequestBody,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--extract-response-body\",\n description: \"extract response body type to data contract\",\n default: codeGenBaseConfig.extractResponseBody,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--extract-response-error\",\n description: \"extract response error type to data contract\",\n default: codeGenBaseConfig.extractResponseError,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--extract-responses\",\n description: \"extract all responses described in /components/responses\",\n default: codeGenBaseConfig.extractResponses,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--modular\",\n description:\n \"generate separated files for http client, data contracts, and routes\",\n default: codeGenBaseConfig.modular,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--js\",\n description: \"generate js api module with declaration file\",\n default: codeGenBaseConfig.toJS,\n internal: { formatter: Boolean, name: \"toJS\" },\n },\n {\n flags: \"--module-name-index <number>\",\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,\n internal: { formatter: (moduleNameIndex) => +moduleNameIndex || 0 },\n },\n {\n flags: \"--module-name-first-tag\",\n description: \"splits routes based on the first tag\",\n default: codeGenBaseConfig.moduleNameFirstTag,\n },\n {\n flags: \"--disableStrictSSL\",\n description: \"disabled strict SSL\",\n default: codeGenBaseConfig.disableStrictSSL,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--disableProxy\",\n description: \"disabled proxy\",\n default: codeGenBaseConfig.disableProxy,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--axios\",\n description: \"generate axios http client\",\n default: codeGenBaseConfig.httpClientType === HTTP_CLIENT.AXIOS,\n },\n {\n flags: \"--unwrap-response-data\",\n description: \"unwrap the data item from the response\",\n default: codeGenBaseConfig.unwrapResponseData,\n },\n {\n flags: \"--disable-throw-on-error\",\n description: \"Do not throw an error when response.ok is not true\",\n default: codeGenBaseConfig.disableThrowOnError,\n },\n {\n flags: \"--single-http-client\",\n description: \"Ability to send HttpClient instance to Api constructor\",\n default: codeGenBaseConfig.singleHttpClient,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--silent\",\n description: \"Output only errors to console\",\n default: codeGenBaseConfig.silent,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--default-response <type>\",\n description: \"default type for empty response schema\",\n default: codeGenBaseConfig.defaultResponseType,\n internal: { name: \"defaultResponseType\" },\n },\n {\n flags: \"--type-prefix <string>\",\n description: \"data contract name prefix\",\n default: codeGenBaseConfig.typePrefix,\n },\n {\n flags: \"--type-suffix <string>\",\n description: \"data contract name suffix\",\n default: codeGenBaseConfig.typeSuffix,\n },\n {\n flags: \"--clean-output\",\n description:\n \"clean output folder before generate api. WARNING: May cause data loss\",\n default: codeGenBaseConfig.cleanOutput,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--api-class-name <string>\",\n description: \"name of the api class\",\n default: codeGenBaseConfig.apiClassName,\n },\n {\n flags: \"--patch\",\n description: \"fix up small errors in the swagger source definition\",\n default: codeGenBaseConfig.patch,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--debug\",\n description: \"additional information about processes inside this tool\",\n default: codeGenBaseConfig.debug,\n },\n {\n flags: \"--another-array-type\",\n description: \"generate array types as Array<Type> (by default Type[])\",\n default: codeGenBaseConfig.anotherArrayType,\n },\n {\n flags: \"--sort-types\",\n description: \"sort fields and types\",\n default: codeGenBaseConfig.sortTypes,\n },\n {\n flags: \"--extract-enums\",\n description:\n \"extract all enums from inline interface\\\\type content to typescript enum construction\",\n default: codeGenBaseConfig.extractEnums,\n },\n {\n flags: \"--sort-routes\",\n description: \"sort routes in alphabetical order\",\n default: codeGenBaseConfig.sortRoutes,\n },\n {\n flags: \"--custom-config <string>\",\n description: \"custom config: primitiveTypeConstructs, hooks, ... \",\n default: \"\",\n },\n ],\n});\n\nprogram.addCommand({\n name: \"generate-templates\",\n description: `Generate \".ejs\" templates needed for generate api`,\n options: [\n {\n flags: \"-o, --output <string>\",\n description: \"output path of generated templates\",\n default: templateGenBaseConfig.output,\n },\n {\n flags: \"-m, --modular\",\n description:\n \"generate templates needed to separate files for http client, data contracts, and routes\",\n default: templateGenBaseConfig.modular,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--http-client <string>\",\n description: `http client type (possible values: ${Object.values(\n HTTP_CLIENT,\n )\n .map((v) => `\"${v}\"`)\n .join(\", \")})`,\n default: templateGenBaseConfig.httpClientType,\n internal: { name: \"httpClientType\" },\n },\n {\n flags: \"-c, --clean-output\",\n description:\n \"clean output folder before generate template. WARNING: May cause data loss\",\n default: templateGenBaseConfig.cleanOutput,\n internal: { formatter: Boolean },\n },\n {\n flags: \"-r, --rewrite\",\n description: \"rewrite content in existing templates\",\n default: templateGenBaseConfig.rewrite,\n internal: { formatter: Boolean },\n },\n {\n flags: \"--silent\",\n description: \"Output only errors to console\",\n default: templateGenBaseConfig.silent,\n internal: { formatter: Boolean },\n },\n ],\n});\n\nconst main = async () => {\n const { command, options } = await program.execute({ args: process.argv });\n\n let customConfig;\n\n if (options.customConfig) {\n try {\n const customConfigPath = pathToFileURL(\n resolve(process.cwd(), options.customConfig),\n ).toString();\n customConfig = await import(customConfigPath);\n customConfig = customConfig.default || customConfig;\n if (customConfig) {\n console.log(`✨ found custom config at: ${customConfigPath}`);\n }\n } catch (e) {\n console.error(\"Error loading custom config\", e);\n }\n }\n\n try {\n switch (command) {\n case null: {\n await generateApi({\n ...options,\n name: options.name,\n url: options.path,\n generateRouteTypes: options.generateRouteTypes,\n generateClient: !!(options.axios || options.client),\n httpClientType: options.axios ? HTTP_CLIENT.AXIOS : HTTP_CLIENT.FETCH,\n input: resolve(process.cwd(), options.path),\n output: resolve(process.cwd(), options.output || \".\"),\n ...customConfig,\n });\n break;\n }\n case \"generate-templates\": {\n await generateTemplates(options);\n break;\n }\n default: {\n break;\n }\n }\n } catch (e) {\n console.error(e);\n process.exit(1);\n }\n process.exit(0);\n};\n\nmain();\n"]}
package/dist/lib.cjs CHANGED
@@ -1,21 +1,21 @@
1
1
  #!/usr/bin/env node
2
2
  'use strict';
3
3
 
4
- var chunk725EVWJG_cjs = require('./chunk-725EVWJG.cjs');
4
+ var chunkB7E4I4GW_cjs = require('./chunk-B7E4I4GW.cjs');
5
5
 
6
6
 
7
7
 
8
8
  Object.defineProperty(exports, "constants", {
9
9
  enumerable: true,
10
- get: function () { return chunk725EVWJG_cjs.c; }
10
+ get: function () { return chunkB7E4I4GW_cjs.c; }
11
11
  });
12
12
  Object.defineProperty(exports, "generateApi", {
13
13
  enumerable: true,
14
- get: function () { return chunk725EVWJG_cjs.g; }
14
+ get: function () { return chunkB7E4I4GW_cjs.g; }
15
15
  });
16
16
  Object.defineProperty(exports, "generateTemplates", {
17
17
  enumerable: true,
18
- get: function () { return chunk725EVWJG_cjs.f; }
18
+ get: function () { return chunkB7E4I4GW_cjs.f; }
19
19
  });
20
20
  //# sourceMappingURL=lib.cjs.map
21
21
  //# sourceMappingURL=lib.cjs.map
package/dist/lib.js CHANGED
@@ -1,4 +1,4 @@
1
1
  #!/usr/bin/env node
2
- export { c as constants, g as generateApi, f as generateTemplates } from './chunk-3LHF3KLG.js';
2
+ export { c as constants, g as generateApi, f as generateTemplates } from './chunk-7R2HP255.js';
3
3
  //# sourceMappingURL=lib.js.map
4
4
  //# sourceMappingURL=lib.js.map
package/dist/types.d.cts CHANGED
@@ -8,17 +8,13 @@ declare class NameResolver {
8
8
 
9
9
  /** @type {CodeGenConfig} */
10
10
  config;
11
- /** @type {Logger} */
12
- logger;
13
11
 
14
12
  /**
15
13
  * @param {CodeGenConfig} config;
16
- * @param {Logger} logger;
17
14
  * @param {string[]} reservedNames
18
15
  */
19
- constructor(config, logger, reservedNames, getFallbackName) {
16
+ constructor(config, reservedNames, getFallbackName) {
20
17
  this.config = config;
21
- this.logger = logger;
22
18
  this.getFallbackName = getFallbackName;
23
19
  this.reserve(reservedNames);
24
20
  }
@@ -59,7 +55,7 @@ declare class NameResolver {
59
55
  const variant = resolver(variants, extras);
60
56
 
61
57
  if (variant === undefined) {
62
- this.logger.warn(
58
+ consola.warn(
63
59
  "unable to resolve name. current reserved names: ",
64
60
  this.reservedNames,
65
61
  );
@@ -89,14 +85,14 @@ declare class NameResolver {
89
85
  return usageName;
90
86
  }
91
87
 
92
- this.logger.debug(
88
+ consola.debug(
93
89
  "trying to resolve name with using fallback name generator using variants",
94
90
  variants,
95
91
  );
96
92
  return this.resolve(variants, this.getFallbackName, extras);
97
93
  }
98
94
 
99
- this.logger.debug(
95
+ consola.debug(
100
96
  "problem with reserving names. current reserved names: ",
101
97
  this.reservedNames,
102
98
  );
@@ -111,11 +107,10 @@ declare class ComponentTypeNameResolver extends NameResolver {
111
107
 
112
108
  /**
113
109
  * @param {CodeGenConfig} config;
114
- * @param {Logger} logger;
115
110
  * @param {string[]} reservedNames
116
111
  */
117
- constructor(config, logger, reservedNames) {
118
- super(config, logger, reservedNames, (variants) => {
112
+ constructor(config, reservedNames) {
113
+ super(config, reservedNames, (variants) => {
119
114
  const randomVariant = variants[getRandomInt(0, variants.length - 1)];
120
115
  if (randomVariant) {
121
116
  if (!this.countersByVariant.has(randomVariant)) {
@@ -124,7 +119,7 @@ declare class ComponentTypeNameResolver extends NameResolver {
124
119
  const variantCounter = this.countersByVariant.get(randomVariant) + 1;
125
120
  this.countersByVariant.set(randomVariant, variantCounter);
126
121
  const dirtyResolvedName = `${randomVariant}${variantCounter}`;
127
- this.logger.debug(
122
+ consola.debug(
128
123
  "generated dirty resolved type name for component - ",
129
124
  dirtyResolvedName,
130
125
  );
@@ -133,7 +128,7 @@ declare class ComponentTypeNameResolver extends NameResolver {
133
128
 
134
129
  const fallbackName = `${this.config.componentTypeNameResolver}${this
135
130
  .fallbackNameCounter++}`;
136
- this.logger.debug(
131
+ consola.debug(
137
132
  "generated fallback type name for component - ",
138
133
  fallbackName,
139
134
  );
@@ -147,8 +142,6 @@ declare class MonoSchemaParser {
147
142
  typeName;
148
143
  schemaPath;
149
144
 
150
- /** @type {Logger} */
151
- logger;
152
145
  /** @type {SchemaParser} */
153
146
  schemaParser;
154
147
  /** @type {SchemaParserFabric} */
@@ -167,7 +160,6 @@ declare class MonoSchemaParser {
167
160
  constructor(schemaParser, schema, typeName = null, schemaPath = []) {
168
161
  this.schemaParser = schemaParser;
169
162
  this.schemaParserFabric = schemaParser.schemaParserFabric;
170
- this.logger = schemaParser.logger;
171
163
  this.schema = schema;
172
164
  this.typeName = typeName;
173
165
  this.typeNameFormatter = schemaParser.typeNameFormatter;
@@ -192,8 +184,6 @@ declare class SchemaParser {
192
184
  schemaParserFabric;
193
185
  /** @type {CodeGenConfig} */
194
186
  config;
195
- /** @type {Logger} */
196
- logger;
197
187
  /** @type {SchemaComponentsMap} */
198
188
  schemaComponentsMap;
199
189
  /** @type {TypeNameFormatter} */
@@ -214,7 +204,6 @@ declare class SchemaParser {
214
204
  constructor(schemaParserFabric, { typeName, schema, schemaPath } = {}) {
215
205
  this.schemaParserFabric = schemaParserFabric;
216
206
  this.config = schemaParserFabric.config;
217
- this.logger = schemaParserFabric.logger;
218
207
  this.templatesWorker = schemaParserFabric.templatesWorker;
219
208
  this.schemaComponentsMap = schemaParserFabric.schemaComponentsMap;
220
209
  this.typeNameFormatter = schemaParserFabric.typeNameFormatter;
@@ -379,7 +368,7 @@ declare class SchemaParser {
379
368
  this.schema.enum.length === 1 &&
380
369
  this.schema.enum[0] == null
381
370
  ) {
382
- this.logger.debug("invalid enum schema", this.schema);
371
+ consola.debug("invalid enum schema", this.schema);
383
372
  this.schema = { type: this.config.Ts.Keyword.Null };
384
373
  }
385
374
  // schema is response schema
@@ -470,8 +459,6 @@ declare class SchemaParser {
470
459
  */
471
460
 
472
461
  declare class Translator {
473
- /** @type {Logger} */
474
- logger;
475
462
  /** @type {CodeGenConfig} */
476
463
  config;
477
464
  /** @type {CodeFormatter} */
@@ -481,7 +468,6 @@ declare class Translator {
481
468
  * @param codeGenProcess
482
469
  */
483
470
  constructor(codeGenProcess) {
484
- this.logger = codeGenProcess.logger;
485
471
  this.config = codeGenProcess.config;
486
472
  this.codeFormatter = codeGenProcess.codeFormatter;
487
473
  }
@@ -491,7 +477,6 @@ declare class Translator {
491
477
  * @param input {TranslatorIO}
492
478
  * @return {Promise<TranslatorIO[]>}
493
479
  */
494
- // eslint-disable-next-line no-unused-vars
495
480
  translate(input) {
496
481
  throw new Error("not implemented");
497
482
  }
@@ -504,8 +489,6 @@ declare class CodeGenProcess {
504
489
  swaggerSchemaResolver;
505
490
  /** @type {SchemaComponentsMap} */
506
491
  schemaComponentsMap;
507
- /** @type {Logger} */
508
- logger;
509
492
  /** @type {TypeNameFormatter} */
510
493
  typeNameFormatter;
511
494
  /** @type {SchemaParserFabric} */
@@ -529,7 +512,6 @@ declare class CodeGenProcess {
529
512
  */
530
513
  constructor(config) {
531
514
  this.config = new CodeGenConfig(config);
532
- this.logger = new Logger(this);
533
515
  this.fileSystem = new FileSystem(this);
534
516
  this.schemaWalker = new SchemaWalker(this);
535
517
  this.swaggerSchemaResolver = new SwaggerSchemaResolver(this);
@@ -540,7 +522,6 @@ declare class CodeGenProcess {
540
522
  this.schemaParserFabric = new SchemaParserFabric(this);
541
523
  this.schemaRoutes = new SchemaRoutes(this);
542
524
  this.javascriptTranslator = new JavascriptTranslator(this);
543
- this.config.componentTypeNameResolver.logger = this.logger;
544
525
  }
545
526
 
546
527
  async start() {
@@ -563,7 +544,7 @@ declare class CodeGenProcess {
563
544
  this.schemaWalker.addSchema("$usage", swagger.usageSchema);
564
545
  this.schemaWalker.addSchema("$original", swagger.originalSchema);
565
546
 
566
- this.logger.event("start generating your typescript api");
547
+ consola.info("start generating your typescript api");
567
548
 
568
549
  this.config.update(
569
550
  this.config.hooks.onInit(this.config, this) || this.config,
@@ -628,11 +609,11 @@ declare class CodeGenProcess {
628
609
 
629
610
  if (this.fileSystem.pathIsExist(this.config.output)) {
630
611
  if (this.config.cleanOutput) {
631
- this.logger.debug(`cleaning dir ${this.config.output}`);
612
+ consola.debug("cleaning dir", this.config.output);
632
613
  this.fileSystem.cleanDir(this.config.output);
633
614
  }
634
615
  } else {
635
- this.logger.debug(
616
+ consola.debug(
636
617
  `path ${this.config.output} is not exist. creating dir by this path`,
637
618
  );
638
619
  this.fileSystem.createDir(this.config.output);
@@ -653,7 +634,7 @@ declare class CodeGenProcess {
653
634
  withPrefix: true,
654
635
  });
655
636
 
656
- this.logger.success(
637
+ consola.success(
657
638
  "api file",
658
639
  `"${file.fileName}${file.fileExtension}"`,
659
640
  `created in ${this.config.output}`,
@@ -978,7 +959,7 @@ declare class CodeGenProcess {
978
959
  const fileExtension = typescript.Extension.Ts;
979
960
 
980
961
  if (configuration.translateToJavaScript) {
981
- this.logger.debug("using js translator for", fileName);
962
+ consola.debug("using js translator for", fileName);
982
963
  return await this.javascriptTranslator.translate({
983
964
  fileName: fileName,
984
965
  fileExtension: fileExtension,
@@ -987,7 +968,7 @@ declare class CodeGenProcess {
987
968
  }
988
969
 
989
970
  if (configuration.customTranslator) {
990
- this.logger.debug("using custom translator for", fileName);
971
+ consola.debug("using custom translator for", fileName);
991
972
  return await configuration.customTranslator.translate({
992
973
  fileName: fileName,
993
974
  fileExtension: fileExtension,
@@ -995,7 +976,7 @@ declare class CodeGenProcess {
995
976
  });
996
977
  }
997
978
 
998
- this.logger.debug("generating output for", `${fileName}${fileExtension}`);
979
+ consola.debug("generating output for", `${fileName}${fileExtension}`);
999
980
 
1000
981
  return [
1001
982
  {
@@ -1240,7 +1221,6 @@ interface GenerateApiParamsBase {
1240
1221
  * translate({ fileName, fileExtension, fileContent }) {
1241
1222
  * this.codeFormatter.format()
1242
1223
  * this.config.
1243
- * this.logger.
1244
1224
  *
1245
1225
  * return [
1246
1226
  * {