ts-openapi-codegen 2.0.0-beta.8 → 2.0.0-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (239) hide show
  1. package/dist/cli/checkAndUpdateConfig/checkConfig.d.ts +2 -1
  2. package/dist/cli/checkAndUpdateConfig/checkConfig.d.ts.map +1 -1
  3. package/dist/cli/checkAndUpdateConfig/checkConfig.js +14 -6
  4. package/dist/cli/checkAndUpdateConfig/updateConfig.d.ts +2 -1
  5. package/dist/cli/checkAndUpdateConfig/updateConfig.d.ts.map +1 -1
  6. package/dist/cli/checkAndUpdateConfig/updateConfig.js +13 -5
  7. package/dist/cli/generateOpenApiClient/generateOpenApiClient.d.ts.map +1 -1
  8. package/dist/cli/generateOpenApiClient/generateOpenApiClient.js +4 -5
  9. package/dist/cli/index.js +5 -5
  10. package/dist/cli/initOpenApiConfig/init.d.ts.map +1 -1
  11. package/dist/cli/initOpenApiConfig/init.js +5 -13
  12. package/dist/cli/initOpenApiConfig/initConfig.js +3 -3
  13. package/dist/cli/previewChanges/previewChanges.d.ts.map +1 -1
  14. package/dist/cli/previewChanges/previewChanges.js +12 -5
  15. package/dist/cli/schemas/base.d.ts +6 -1
  16. package/dist/cli/schemas/base.d.ts.map +1 -1
  17. package/dist/cli/schemas/base.js +10 -6
  18. package/dist/cli/schemas/checkConfig.d.ts +1 -1
  19. package/dist/cli/schemas/generate.d.ts +1 -25
  20. package/dist/cli/schemas/generate.d.ts.map +1 -1
  21. package/dist/cli/schemas/generate.js +21 -32
  22. package/dist/cli/schemas/index.d.ts +2 -1
  23. package/dist/cli/schemas/index.d.ts.map +1 -1
  24. package/dist/cli/schemas/index.js +1 -0
  25. package/dist/cli/schemas/init.d.ts +5 -5
  26. package/dist/cli/schemas/init.d.ts.map +1 -1
  27. package/dist/cli/schemas/init.js +4 -5
  28. package/dist/cli/schemas/previewChanges.d.ts +9 -0
  29. package/dist/cli/schemas/previewChanges.d.ts.map +1 -0
  30. package/dist/cli/schemas/previewChanges.js +11 -0
  31. package/dist/cli/schemas/updateConfig.d.ts +1 -1
  32. package/dist/common/Consts.d.ts +2 -0
  33. package/dist/common/Consts.d.ts.map +1 -1
  34. package/dist/common/Consts.js +4 -1
  35. package/dist/common/LoggerMessages.js +1 -1
  36. package/dist/common/TRawOptions.d.ts +1 -1
  37. package/dist/common/TRawOptions.d.ts.map +1 -1
  38. package/dist/common/Validation/formatZodError.d.ts +10 -0
  39. package/dist/common/Validation/formatZodError.d.ts.map +1 -0
  40. package/dist/{cli/validation/errorFormatter.js → common/Validation/formatZodError.js} +14 -13
  41. package/dist/common/Validation/index.d.ts +3 -0
  42. package/dist/common/Validation/index.d.ts.map +1 -0
  43. package/dist/{cli/validation → common/Validation}/index.js +2 -2
  44. package/dist/{cli/validation/validateCLIOptions.d.ts → common/Validation/validateZodOptions.d.ts} +4 -4
  45. package/dist/common/Validation/validateZodOptions.d.ts.map +1 -0
  46. package/dist/{cli/validation/validateCLIOptions.js → common/Validation/validateZodOptions.js} +7 -10
  47. package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts +6 -1
  48. package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts.map +1 -1
  49. package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.js +8 -14
  50. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.d.ts +28 -0
  51. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.d.ts.map +1 -0
  52. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedBase.js +25 -0
  53. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.d.ts +36 -6
  54. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.d.ts.map +1 -1
  55. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV1.js +33 -37
  56. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.d.ts +37 -6
  57. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.d.ts.map +1 -1
  58. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV2.js +30 -37
  59. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV3.d.ts +40 -0
  60. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV3.d.ts.map +1 -0
  61. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedOptionsSchemaV3.js +36 -0
  62. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts +65 -0
  63. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.d.ts.map +1 -0
  64. package/dist/common/VersionedSchema/AllVersionedSchemas/UnifiedVersionedSchemas.js +31 -0
  65. package/dist/common/VersionedSchema/CommonSchemas.d.ts +53 -30
  66. package/dist/common/VersionedSchema/CommonSchemas.d.ts.map +1 -1
  67. package/dist/common/VersionedSchema/CommonSchemas.js +47 -72
  68. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV1.d.ts +25 -5
  69. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV1.d.ts.map +1 -1
  70. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV1.js +34 -17
  71. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV2.d.ts +25 -5
  72. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV2.d.ts.map +1 -1
  73. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV2.js +28 -19
  74. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.d.ts +25 -1
  75. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.d.ts.map +1 -1
  76. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV3.js +29 -2
  77. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.d.ts +25 -5
  78. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.d.ts.map +1 -1
  79. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV4.js +30 -14
  80. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV5.d.ts +23 -5
  81. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV5.d.ts.map +1 -1
  82. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsSchemaV5.js +33 -18
  83. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsVersionedSchemas.d.ts +3 -2
  84. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsVersionedSchemas.d.ts.map +1 -1
  85. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsVersionedSchemas.js +18 -11
  86. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV1.d.ts +22 -5
  87. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV1.d.ts.map +1 -1
  88. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV1.js +30 -12
  89. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV2.d.ts +22 -5
  90. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV2.d.ts.map +1 -1
  91. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV2.js +27 -13
  92. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.d.ts +22 -1
  93. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.d.ts.map +1 -1
  94. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV3.js +28 -2
  95. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.d.ts +22 -5
  96. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.d.ts.map +1 -1
  97. package/dist/common/VersionedSchema/OptionsVersioned/OptionsSchemaV4.js +31 -12
  98. package/dist/common/VersionedSchema/OptionsVersioned/OptionsVersionedSchemas.d.ts +3 -2
  99. package/dist/common/VersionedSchema/OptionsVersioned/OptionsVersionedSchemas.d.ts.map +1 -1
  100. package/dist/common/VersionedSchema/OptionsVersioned/OptionsVersionedSchemas.js +15 -9
  101. package/dist/common/VersionedSchema/Types.d.ts +5 -5
  102. package/dist/common/VersionedSchema/Types.d.ts.map +1 -1
  103. package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.d.ts +16 -0
  104. package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.d.ts.map +1 -0
  105. package/dist/common/VersionedSchema/Utils/__mocks__/compatibilityCases.js +85 -0
  106. package/dist/common/VersionedSchema/Utils/__tests__/compareShapes.test.d.ts +2 -0
  107. package/dist/common/VersionedSchema/Utils/__tests__/compareShapes.test.d.ts.map +1 -0
  108. package/dist/common/VersionedSchema/Utils/__tests__/compareShapes.test.js +23 -0
  109. package/dist/common/VersionedSchema/Utils/__tests__/migrateDataToLatestSchemaVersion.test.d.ts +2 -0
  110. package/dist/common/VersionedSchema/Utils/__tests__/migrateDataToLatestSchemaVersion.test.d.ts.map +1 -0
  111. package/dist/common/VersionedSchema/Utils/__tests__/migrateDataToLatestSchemaVersion.test.js +75 -0
  112. package/dist/common/VersionedSchema/Utils/buildVersionedSchema.d.ts +12 -0
  113. package/dist/common/VersionedSchema/Utils/buildVersionedSchema.d.ts.map +1 -0
  114. package/dist/common/VersionedSchema/Utils/buildVersionedSchema.js +13 -0
  115. package/dist/common/VersionedSchema/Utils/compareShapes.d.ts +16 -0
  116. package/dist/common/VersionedSchema/Utils/compareShapes.d.ts.map +1 -0
  117. package/dist/common/VersionedSchema/Utils/compareShapes.js +30 -0
  118. package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts +2 -1
  119. package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts.map +1 -1
  120. package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.js +5 -5
  121. package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.d.ts +2 -2
  122. package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.d.ts.map +1 -1
  123. package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.js +15 -7
  124. package/dist/common/VersionedSchema/Utils/getUniqueKeysFromSchemas.d.ts +2 -2
  125. package/dist/common/VersionedSchema/Utils/getUniqueKeysFromSchemas.d.ts.map +1 -1
  126. package/dist/common/VersionedSchema/Utils/getUniqueKeysFromSchemas.js +16 -3
  127. package/dist/common/VersionedSchema/Utils/getUniqueObjectKeys.d.ts.map +1 -1
  128. package/dist/common/VersionedSchema/Utils/getUniqueObjectKeys.js +19 -2
  129. package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts +2 -1
  130. package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts.map +1 -1
  131. package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.js +10 -9
  132. package/dist/common/VersionedSchema/refinements/dependentOptionsRefinement.d.ts +4 -0
  133. package/dist/common/VersionedSchema/refinements/dependentOptionsRefinement.d.ts.map +1 -0
  134. package/dist/common/VersionedSchema/refinements/dependentOptionsRefinement.js +43 -0
  135. package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.d.ts +4 -0
  136. package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.d.ts.map +1 -0
  137. package/dist/common/VersionedSchema/refinements/singleOrMultiRefinement.js +21 -0
  138. package/dist/core/Context.d.ts +6 -5
  139. package/dist/core/Context.d.ts.map +1 -1
  140. package/dist/core/Context.js +69 -26
  141. package/dist/core/OpenApiClient.d.ts.map +1 -1
  142. package/dist/core/OpenApiClient.js +12 -8
  143. package/dist/core/api/v2/Parser.d.ts +1 -1
  144. package/dist/core/api/v2/Parser.d.ts.map +1 -1
  145. package/dist/core/api/v2/Parser.js +2 -2
  146. package/dist/core/api/v2/parser/getModel.d.ts.map +1 -1
  147. package/dist/core/api/v2/parser/getModel.js +2 -5
  148. package/dist/core/api/v2/parser/getModelProperties.d.ts.map +1 -1
  149. package/dist/core/api/v2/parser/getModelProperties.js +1 -3
  150. package/dist/core/api/v2/parser/getModels.d.ts.map +1 -1
  151. package/dist/core/api/v2/parser/getModels.js +1 -2
  152. package/dist/core/api/v2/parser/getOperationParameter.d.ts.map +1 -1
  153. package/dist/core/api/v2/parser/getOperationParameter.js +2 -5
  154. package/dist/core/api/v2/parser/getOperationParameters.js +1 -1
  155. package/dist/core/api/v2/parser/getOperationResponse.d.ts.map +1 -1
  156. package/dist/core/api/v2/parser/getOperationResponse.js +1 -3
  157. package/dist/core/api/v2/parser/getOperationResponses.js +1 -1
  158. package/dist/core/api/v2/parser/getServices.d.ts.map +1 -1
  159. package/dist/core/api/v2/parser/getServices.js +4 -3
  160. package/dist/core/api/v2/parser/getType.d.ts.map +1 -1
  161. package/dist/core/api/v2/parser/getType.js +2 -2
  162. package/dist/core/api/v3/Parser.d.ts +1 -1
  163. package/dist/core/api/v3/Parser.d.ts.map +1 -1
  164. package/dist/core/api/v3/Parser.js +2 -2
  165. package/dist/core/api/v3/parser/getModel.d.ts.map +1 -1
  166. package/dist/core/api/v3/parser/getModel.js +2 -5
  167. package/dist/core/api/v3/parser/getModelProperties.d.ts.map +1 -1
  168. package/dist/core/api/v3/parser/getModelProperties.js +1 -3
  169. package/dist/core/api/v3/parser/getModels.d.ts.map +1 -1
  170. package/dist/core/api/v3/parser/getModels.js +1 -2
  171. package/dist/core/api/v3/parser/getOperation.js +1 -1
  172. package/dist/core/api/v3/parser/getOperationParameter.d.ts.map +1 -1
  173. package/dist/core/api/v3/parser/getOperationParameter.js +2 -5
  174. package/dist/core/api/v3/parser/getOperationParameters.js +1 -1
  175. package/dist/core/api/v3/parser/getOperationRequestBody.d.ts.map +1 -1
  176. package/dist/core/api/v3/parser/getOperationRequestBody.js +1 -3
  177. package/dist/core/api/v3/parser/getOperationResponse.d.ts.map +1 -1
  178. package/dist/core/api/v3/parser/getOperationResponse.js +1 -3
  179. package/dist/core/api/v3/parser/getOperationResponses.js +1 -1
  180. package/dist/core/api/v3/parser/getServices.d.ts.map +1 -1
  181. package/dist/core/api/v3/parser/getServices.js +4 -3
  182. package/dist/core/api/v3/parser/getType.js +2 -2
  183. package/dist/core/index.d.ts.map +1 -1
  184. package/dist/core/index.js +2 -0
  185. package/dist/core/utils/__tests__/isSubdirectory.test.js +2 -2
  186. package/dist/core/utils/serviceHelpers.d.ts.map +1 -1
  187. package/dist/core/utils/serviceHelpers.js +32 -6
  188. package/dist/core/utils/validateRawOptions.d.ts +3 -0
  189. package/dist/core/utils/validateRawOptions.d.ts.map +1 -0
  190. package/dist/core/utils/validateRawOptions.js +15 -0
  191. package/dist/templatesCompiled/client/exportService.js +1 -1
  192. package/dist/templatesCompiled/client/partials/exportComposition.d.ts +2 -0
  193. package/dist/templatesCompiled/client/partials/exportComposition.d.ts.map +1 -1
  194. package/dist/templatesCompiled/client/partials/exportComposition.js +17 -9
  195. package/package.json +1 -1
  196. package/dist/cli/validation/errorFormatter.d.ts +0 -6
  197. package/dist/cli/validation/errorFormatter.d.ts.map +0 -1
  198. package/dist/cli/validation/index.d.ts +0 -3
  199. package/dist/cli/validation/index.d.ts.map +0 -1
  200. package/dist/cli/validation/validateCLIOptions.d.ts.map +0 -1
  201. package/dist/common/VersionedSchema/Utils/getErrorFieldsFromValidation.d.ts +0 -6
  202. package/dist/common/VersionedSchema/Utils/getErrorFieldsFromValidation.d.ts.map +0 -1
  203. package/dist/common/VersionedSchema/Utils/getErrorFieldsFromValidation.js +0 -7
  204. package/dist/common/VersionedSchema/Utils/joiHandlers.d.ts +0 -6
  205. package/dist/common/VersionedSchema/Utils/joiHandlers.d.ts.map +0 -1
  206. package/dist/common/VersionedSchema/Utils/joiHandlers.js +0 -59
  207. package/dist/common/VersionedSchema/Utils/mergeObjectSchemas.d.ts +0 -3
  208. package/dist/common/VersionedSchema/Utils/mergeObjectSchemas.d.ts.map +0 -1
  209. package/dist/common/VersionedSchema/Utils/mergeObjectSchemas.js +0 -12
  210. package/dist/common/VersionedSchema/Utils/traverseObjectStructure.d.ts +0 -3
  211. package/dist/common/VersionedSchema/Utils/traverseObjectStructure.d.ts.map +0 -1
  212. package/dist/common/VersionedSchema/Utils/traverseObjectStructure.js +0 -31
  213. package/dist/common/schemas/configSchemas.d.ts +0 -91
  214. package/dist/common/schemas/configSchemas.d.ts.map +0 -1
  215. package/dist/common/schemas/configSchemas.js +0 -131
  216. package/dist/common/utils/__tests__/__mock__/mockJoiSchema.d.ts +0 -19
  217. package/dist/common/utils/__tests__/__mock__/mockJoiSchema.d.ts.map +0 -1
  218. package/dist/common/utils/__tests__/__mock__/mockJoiSchema.js +0 -14
  219. package/dist/common/utils/__tests__/determineBestMatchingSchemaVersion.test.d.ts +0 -2
  220. package/dist/common/utils/__tests__/determineBestMatchingSchemaVersion.test.d.ts.map +0 -1
  221. package/dist/common/utils/__tests__/determineBestMatchingSchemaVersion.test.js +0 -38
  222. package/dist/common/utils/__tests__/getUniqueKeysFromSchemas.test.d.ts +0 -2
  223. package/dist/common/utils/__tests__/getUniqueKeysFromSchemas.test.d.ts.map +0 -1
  224. package/dist/common/utils/__tests__/getUniqueKeysFromSchemas.test.js +0 -20
  225. package/dist/common/utils/__tests__/mergeObjectSchemas.test.d.ts +0 -2
  226. package/dist/common/utils/__tests__/mergeObjectSchemas.test.d.ts.map +0 -1
  227. package/dist/common/utils/__tests__/mergeObjectSchemas.test.js +0 -35
  228. package/dist/common/utils/__tests__/migrationForMultiOptions.test.d.ts +0 -2
  229. package/dist/common/utils/__tests__/migrationForMultiOptions.test.d.ts.map +0 -1
  230. package/dist/common/utils/__tests__/migrationForMultiOptions.test.js +0 -112
  231. package/dist/common/utils/__tests__/migrationForOptions.test.d.ts +0 -2
  232. package/dist/common/utils/__tests__/migrationForOptions.test.d.ts.map +0 -1
  233. package/dist/common/utils/__tests__/migrationForOptions.test.js +0 -56
  234. package/dist/core/utils/__tests__/getRelativeModelPath.test.d.ts +0 -2
  235. package/dist/core/utils/__tests__/getRelativeModelPath.test.d.ts.map +0 -1
  236. package/dist/core/utils/__tests__/getRelativeModelPath.test.js +0 -21
  237. package/dist/core/utils/getRelativeModelPath.d.ts +0 -9
  238. package/dist/core/utils/getRelativeModelPath.d.ts.map +0 -1
  239. package/dist/core/utils/getRelativeModelPath.js +0 -37
@@ -1,3 +1,4 @@
1
+ import { OptionValues } from 'commander';
1
2
  /**
2
3
  * Проверяет конфигурационный файл на корректность и актуальность.
3
4
  * Если обнаружены проблемы, предлагает действия для их исправления.
@@ -8,5 +9,5 @@
8
9
  * @example
9
10
  * await checkConfig('./openapi-config.json');
10
11
  */
11
- export declare function checkConfig(configPath: string): Promise<void>;
12
+ export declare function checkConfig(options: OptionValues): Promise<void>;
12
13
  //# sourceMappingURL=checkConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkConfig.d.ts","sourceRoot":"","sources":["../../../src/cli/checkAndUpdateConfig/checkConfig.ts"],"names":[],"mappings":"AAMA;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoCnE"}
1
+ {"version":3,"file":"checkConfig.d.ts","sourceRoot":"","sources":["../../../src/cli/checkAndUpdateConfig/checkConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAUzC;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CtE"}
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.checkConfig = checkConfig;
4
4
  const Consts_1 = require("../../common/Consts");
5
5
  const loadConfigIfExists_1 = require("../../common/utils/loadConfigIfExists");
6
+ const validateZodOptions_1 = require("../../common/Validation/validateZodOptions");
7
+ const schemas_1 = require("../schemas");
6
8
  const constants_1 = require("./constants");
7
9
  const selectConfigAction_1 = require("./utils/selectConfigAction");
8
10
  const validateAndMigrateConfigData_1 = require("./utils/validateAndMigrateConfigData");
@@ -16,20 +18,26 @@ const validateAndMigrateConfigData_1 = require("./utils/validateAndMigrateConfig
16
18
  * @example
17
19
  * await checkConfig('./openapi-config.json');
18
20
  */
19
- async function checkConfig(configPath) {
20
- const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(configPath);
21
+ async function checkConfig(options) {
22
+ const validationResult = (0, validateZodOptions_1.validateZodOptions)(schemas_1.checkConfigOptionsSchema, options);
23
+ if (!validationResult.success) {
24
+ Consts_1.APP_LOGGER.error(validationResult.errors.join('\n'));
25
+ process.exit(1);
26
+ }
27
+ const validatedOptions = validationResult.data;
28
+ const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(validatedOptions.openapiConfig);
21
29
  if (!configData) {
22
- Consts_1.APP_LOGGER.error(`${constants_1.ERROR_MESSAGES.FILE_NOT_FOUND} ${configPath}`);
30
+ Consts_1.APP_LOGGER.error(`${constants_1.ERROR_MESSAGES.FILE_NOT_FOUND} ${validatedOptions.openapiConfig || ''}`);
23
31
  return;
24
32
  }
25
33
  try {
26
34
  const { isActualConfigVersion, hasDefaultValues, migratedData } = (0, validateAndMigrateConfigData_1.validateAndMigrateConfigData)(configData);
27
- Consts_1.APP_LOGGER.info(constants_1.SUCCESS_MESSAGES.CONFIG_VALID(configPath));
35
+ Consts_1.APP_LOGGER.info(constants_1.SUCCESS_MESSAGES.CONFIG_VALID(validatedOptions.openapiConfig || ''));
28
36
  // Если версия не актуальна, предложить обновление
29
37
  if (!isActualConfigVersion) {
30
38
  await (0, selectConfigAction_1.selectConfigAction)({
31
39
  migratedData,
32
- configPath,
40
+ configPath: validatedOptions.openapiConfig || '',
33
41
  warningMessage: 'Ваша версия конфигурации устарела и нуждается в обновлении.',
34
42
  actionChoices: constants_1.ACTION_FOR_CONFIG_DATA_OPTIONS,
35
43
  });
@@ -39,7 +47,7 @@ async function checkConfig(configPath) {
39
47
  if (hasDefaultValues) {
40
48
  await (0, selectConfigAction_1.selectConfigAction)({
41
49
  migratedData,
42
- configPath,
50
+ configPath: validatedOptions.openapiConfig || '',
43
51
  warningMessage: 'В вашей конфигурации есть значения по умолчанию, которые можно удалить.',
44
52
  actionChoices: constants_1.ACTION_FOR_CONFIG_DATA_OPTIONS,
45
53
  });
@@ -1,3 +1,4 @@
1
+ import { OptionValues } from 'commander';
1
2
  /**
2
3
  * Обновляет конфигурационный файл до актуальной версии.
3
4
  * Выполняет миграцию данных при необходимости.
@@ -8,5 +9,5 @@
8
9
  * @example
9
10
  * await updateConfig('./openapi-config.json');
10
11
  */
11
- export declare function updateConfig(configPath: string): Promise<void>;
12
+ export declare function updateConfig(options: OptionValues): Promise<void>;
12
13
  //# sourceMappingURL=updateConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateConfig.d.ts","sourceRoot":"","sources":["../../../src/cli/checkAndUpdateConfig/updateConfig.ts"],"names":[],"mappings":"AAMA;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuBpE"}
1
+ {"version":3,"file":"updateConfig.d.ts","sourceRoot":"","sources":["../../../src/cli/checkAndUpdateConfig/updateConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAUzC;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAgCvE"}
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.updateConfig = updateConfig;
4
4
  const Consts_1 = require("../../common/Consts");
5
5
  const loadConfigIfExists_1 = require("../../common/utils/loadConfigIfExists");
6
+ const validateZodOptions_1 = require("../../common/Validation/validateZodOptions");
7
+ const schemas_1 = require("../schemas");
6
8
  const constants_1 = require("./constants");
7
9
  const validateAndMigrateConfigData_1 = require("./utils/validateAndMigrateConfigData");
8
10
  const writeConfigFile_1 = require("./utils/writeConfigFile");
@@ -16,21 +18,27 @@ const writeConfigFile_1 = require("./utils/writeConfigFile");
16
18
  * @example
17
19
  * await updateConfig('./openapi-config.json');
18
20
  */
19
- async function updateConfig(configPath) {
20
- const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(configPath);
21
+ async function updateConfig(options) {
22
+ const validationResult = (0, validateZodOptions_1.validateZodOptions)(schemas_1.updateConfigOptionsSchema, options);
23
+ if (!validationResult.success) {
24
+ Consts_1.APP_LOGGER.error(validationResult.errors.join('\n'));
25
+ process.exit(1);
26
+ }
27
+ const validatedOptions = validationResult.data;
28
+ const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(validatedOptions.openapiConfig);
21
29
  if (!configData) {
22
- Consts_1.APP_LOGGER.error(`${constants_1.ERROR_MESSAGES.FILE_NOT_FOUND} ${configPath}`);
30
+ Consts_1.APP_LOGGER.error(`${constants_1.ERROR_MESSAGES.FILE_NOT_FOUND} ${validatedOptions.openapiConfig}`);
23
31
  return;
24
32
  }
25
33
  try {
26
34
  const { isActualConfigVersion, migratedData } = (0, validateAndMigrateConfigData_1.validateAndMigrateConfigData)(configData);
27
35
  if (isActualConfigVersion) {
28
- Consts_1.APP_LOGGER.info(constants_1.SUCCESS_MESSAGES.CONFIG_UP_TO_DATE(configPath));
36
+ Consts_1.APP_LOGGER.info(constants_1.SUCCESS_MESSAGES.CONFIG_UP_TO_DATE(validatedOptions.openapiConfig || ''));
29
37
  }
30
38
  else {
31
39
  await (0, writeConfigFile_1.writeConfigFile)({
32
40
  data: migratedData,
33
- configPath,
41
+ configPath: validatedOptions.openapiConfig || '',
34
42
  isUpdating: true,
35
43
  });
36
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generateOpenApiClient.d.ts","sourceRoot":"","sources":["../../../src/cli/generateOpenApiClient/generateOpenApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAgBzC;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA8DhF"}
1
+ {"version":3,"file":"generateOpenApiClient.d.ts","sourceRoot":"","sources":["../../../src/cli/generateOpenApiClient/generateOpenApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAgBzC;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA6DhF"}
@@ -40,12 +40,12 @@ const Enums_1 = require("../../common/Enums");
40
40
  const LoggerMessages_1 = require("../../common/LoggerMessages");
41
41
  const convertArrayToObject_1 = require("../../common/utils/convertArrayToObject");
42
42
  const loadConfigIfExists_1 = require("../../common/utils/loadConfigIfExists");
43
+ const validateZodOptions_1 = require("../../common/Validation/validateZodOptions");
43
44
  const AllMigrationPlans_1 = require("../../common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans");
44
45
  const AllVersionedSchemas_1 = require("../../common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas");
45
46
  const migrateDataToLatestSchemaVersion_1 = require("../../common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion");
46
47
  const OpenAPI = __importStar(require("../../core"));
47
- const generate_1 = require("../schemas/generate");
48
- const validation_1 = require("../validation");
48
+ const schemas_1 = require("../schemas");
49
49
  /**
50
50
  * Запускает генерацию OpenAPI клиента
51
51
  * Поддерживает как конфиг-файл, так и параметры из CLI
@@ -53,13 +53,12 @@ const validation_1 = require("../validation");
53
53
  async function generateOpenApiClient(options) {
54
54
  const { openapiConfig, ...clientOptions } = options;
55
55
  try {
56
- // Валидация опций через Zod
57
- const validationResult = (0, validation_1.validateCLIOptions)(generate_1.generateOptionsSchema, {
56
+ const validationResult = (0, validateZodOptions_1.validateZodOptions)(schemas_1.generateOptionsSchema, {
58
57
  openapiConfig,
59
58
  ...clientOptions,
60
59
  });
61
60
  if (!validationResult.success) {
62
- Consts_1.APP_LOGGER.error(validationResult.error);
61
+ Consts_1.APP_LOGGER.error(validationResult.errors.join('\n'));
63
62
  process.exit(1);
64
63
  }
65
64
  const validatedOptions = validationResult.data;
package/dist/cli/index.js CHANGED
@@ -89,7 +89,7 @@ program
89
89
  await updateNotifier.checkAndNotify();
90
90
  })
91
91
  .action(async (options) => {
92
- await (0, updateConfig_1.updateConfig)(options.openapiConfig);
92
+ await (0, updateConfig_1.updateConfig)(options);
93
93
  });
94
94
  /**
95
95
  * init - Команда для инициализации конфигурационного файла
@@ -116,10 +116,10 @@ program
116
116
  .command('preview-changes')
117
117
  .description('Preview changes that will be made to generated code before applying them')
118
118
  .addHelpText('before', (0, utils_1.getCLIName)(APP_NAME))
119
- .option('-ocn, --openapi-config <value>', 'The path to the configuration file, listing the options', Consts_1.DEFAULT_OPENAPI_CONFIG_FILENAME)
120
- .option('-gd, --generated-dir <value>', 'Directory with previously generated code (default: "generated")', './generated')
121
- .option('-pd, --preview-dir <value>', 'Temporary directory for preview generation (default: "generated-preview")', './generated-preview')
122
- .option('-dd, --diff-dir <value>', 'Directory to save diff files (default: "generated-diff")', './generated-diff')
119
+ .option('-ocn, --openapi-config <value>', 'The path to the configuration file, listing the options (default: "openapi.config.json")', Consts_1.DEFAULT_OPENAPI_CONFIG_FILENAME)
120
+ .option('-gd, --generated-dir <value>', 'Directory with previously generated code (default: "generated")', Consts_1.DEFAULT_OUTPUT_API_DIR)
121
+ .option('-pd, --preview-dir <value>', 'Temporary directory for preview generation (default: ".ts-openapi-codegen-preview-changes)', Consts_1.DEFAULT_PREVIEW_CHANGES_DIR)
122
+ .option('-dd, --diff-dir <value>', 'Directory to save diff files (default: ".ts-openapi-codegen-diff-changes")', Consts_1.DEFAULT_DIFF_CHANGES_DIR)
123
123
  .hook('preAction', async () => {
124
124
  await updateNotifier.checkAndNotify();
125
125
  })
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/initOpenApiConfig/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAUzC;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,EAAE,YAAY,iBAmD/C"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/initOpenApiConfig/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAUzC;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,EAAE,YAAY,iBA4C/C"}
@@ -2,9 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.init = init;
4
4
  const Consts_1 = require("../../common/Consts");
5
+ const validateZodOptions_1 = require("../../common/Validation/validateZodOptions");
5
6
  const confirmDialog_1 = require("../interactive/confirmDialog");
6
7
  const schemas_1 = require("../schemas");
7
- const validation_1 = require("../validation");
8
8
  const initConfig_1 = require("./initConfig");
9
9
  const initCustomRequest_1 = require("./initCustomRequest");
10
10
  const registerHandlebarTemplates_1 = require("./utils/registerHandlebarTemplates");
@@ -12,20 +12,12 @@ const registerHandlebarTemplates_1 = require("./utils/registerHandlebarTemplates
12
12
  * Фнукция изначальной настройки файлов конфигурации для последующего запуска генератора
13
13
  */
14
14
  async function init(options) {
15
- let validatedOptions;
16
- try {
17
- // Валидация опций через Zod
18
- const validationResult = (0, validation_1.validateCLIOptions)(schemas_1.initOptionsSchema, options);
19
- if (!validationResult.success) {
20
- Consts_1.APP_LOGGER.error(validationResult.error);
21
- process.exit(1);
22
- }
23
- validatedOptions = validationResult.data;
24
- }
25
- catch (error) {
26
- Consts_1.APP_LOGGER.error(error.message);
15
+ const validationResult = (0, validateZodOptions_1.validateZodOptions)(schemas_1.initOptionsSchema, options);
16
+ if (!validationResult.success) {
17
+ Consts_1.APP_LOGGER.error(validationResult.errors.join('\n'));
27
18
  process.exit(1);
28
19
  }
20
+ const validatedOptions = validationResult.data;
29
21
  const templates = (0, registerHandlebarTemplates_1.registerHandlebarTemplates)();
30
22
  if (validatedOptions.useInteractiveMode) {
31
23
  const shouldInitConfig = await (0, confirmDialog_1.confirmDialog)({
@@ -16,7 +16,7 @@ const writeConfigFile_1 = require("./utils/writeConfigFile");
16
16
  * Инициализирует файл конфигурации OpenAPI
17
17
  */
18
18
  async function initConfig(params) {
19
- const configPath = (0, pathHelpers_1.resolveHelper)(process.cwd(), params.openapiConfig);
19
+ const configPath = (0, pathHelpers_1.resolveHelper)(process.cwd(), params.openapiConfig || '');
20
20
  const configExists = await fileSystemHelpers_1.fileSystemHelpers.exists(configPath);
21
21
  // Шаг 3: Проверка существования файла конфигурации
22
22
  if (configExists) {
@@ -29,7 +29,7 @@ async function initConfig(params) {
29
29
  return;
30
30
  }
31
31
  }
32
- const currentSpecsDir = params.specsDir;
32
+ const currentSpecsDir = params.specsDir || '';
33
33
  // Шаг 4: Формирование файла конфигурации
34
34
  // Поиск файлов спецификаций
35
35
  let specFiles = [];
@@ -98,5 +98,5 @@ async function initConfig(params) {
98
98
  config = (0, buildConfig_1.buildExampleConfig)(useMultiOption, customRequest, perSpecRequest);
99
99
  }
100
100
  // Записываем конфигурацию на диск
101
- await (0, writeConfigFile_1.writeConfigFile)(params.openapiConfig, config, params.templates);
101
+ await (0, writeConfigFile_1.writeConfigFile)(params.openapiConfig || '', config, params.templates);
102
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"previewChanges.d.ts","sourceRoot":"","sources":["../../../src/cli/previewChanges/previewChanges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AA0BzC;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA0IzE"}
1
+ {"version":3,"file":"previewChanges.d.ts","sourceRoot":"","sources":["../../../src/cli/previewChanges/previewChanges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AA4BzC;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiJzE"}
@@ -40,10 +40,12 @@ const convertArrayToObject_1 = require("../../common/utils/convertArrayToObject"
40
40
  const fileSystemHelpers_1 = require("../../common/utils/fileSystemHelpers");
41
41
  const loadConfigIfExists_1 = require("../../common/utils/loadConfigIfExists");
42
42
  const pathHelpers_1 = require("../../common/utils/pathHelpers");
43
+ const validateZodOptions_1 = require("../../common/Validation/validateZodOptions");
43
44
  const AllMigrationPlans_1 = require("../../common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans");
44
45
  const AllVersionedSchemas_1 = require("../../common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas");
45
46
  const migrateDataToLatestSchemaVersion_1 = require("../../common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion");
46
47
  const OpenAPI = __importStar(require("../../core"));
48
+ const schemas_1 = require("../schemas");
47
49
  const compareFiles_1 = require("./utils/compareFiles");
48
50
  const formatDiff_1 = require("./utils/formatDiff");
49
51
  const isDirectoryEmpty_1 = require("./utils/isDirectoryEmpty");
@@ -55,10 +57,15 @@ const updateOutputPaths_1 = require("./utils/updateOutputPaths");
55
57
  * TODO: Добавить проверку опций команды перед выполнением
56
58
  */
57
59
  async function previewChanges(options) {
58
- const { openapiConfig, generatedDir = 'generated', previewDir = 'generated-preview', diffDir = 'generated-diff' } = options;
59
- const resolvedGeneratedDir = (0, pathHelpers_1.resolveHelper)(process.cwd(), generatedDir);
60
- const resolvedPreviewDir = (0, pathHelpers_1.resolveHelper)(process.cwd(), previewDir);
61
- const resolvedDiffDir = (0, pathHelpers_1.resolveHelper)(process.cwd(), diffDir);
60
+ const validationResult = (0, validateZodOptions_1.validateZodOptions)(schemas_1.previewChangesSchema, options);
61
+ if (!validationResult.success) {
62
+ Consts_1.APP_LOGGER.error(validationResult.errors.join('\n'));
63
+ process.exit(1);
64
+ }
65
+ const { openapiConfig, generatedDir, previewDir, diffDir } = validationResult.data;
66
+ const resolvedGeneratedDir = (0, pathHelpers_1.resolveHelper)(process.cwd(), generatedDir || '');
67
+ const resolvedPreviewDir = (0, pathHelpers_1.resolveHelper)(process.cwd(), previewDir || '');
68
+ const resolvedDiffDir = (0, pathHelpers_1.resolveHelper)(process.cwd(), diffDir || '');
62
69
  let previewDirCreated = false;
63
70
  try {
64
71
  // 1. Проверка директории со сгенерированным кодом
@@ -89,7 +96,7 @@ async function previewChanges(options) {
89
96
  }
90
97
  // 4. Обновление путей output для генерации в preview директорию
91
98
  const migratedValue = migratedOptions.value;
92
- const previewOptions = (0, updateOutputPaths_1.updateOutputPaths)(migratedValue, previewDir, generatedDir);
99
+ const previewOptions = (0, updateOutputPaths_1.updateOutputPaths)(migratedValue, previewDir || '', generatedDir || '');
93
100
  // 5. Генерация кода в preview директорию
94
101
  Consts_1.APP_LOGGER.info(`Generating code to preview directory: ${previewDir}`);
95
102
  await OpenAPI.generate(previewOptions);
@@ -1,11 +1,16 @@
1
1
  import { z } from 'zod';
2
2
  import { ELogLevel, ELogOutput } from '../../common/Enums';
3
3
  import { HttpClient } from '../../core/types/enums/HttpClient.enum';
4
+ /**
5
+ * Преобразует пустые строки в undefined для опциональных полей
6
+ * Это нужно, потому что Commander.js передает пустые строки для опций без значений
7
+ */
8
+ export declare const emptyStringToUndefined: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
4
9
  /**
5
10
  * Базовая схема с общими опциями для всех команд
6
11
  */
7
12
  export declare const baseCLIOptionsSchema: z.ZodObject<{
8
- openapiConfig: z.ZodDefault<z.ZodOptional<z.ZodString>>;
13
+ openapiConfig: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
9
14
  }, z.core.$strip>;
10
15
  export type BaseCLIOptions = z.infer<typeof baseCLIOptionsSchema>;
11
16
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,oBAAoB;;iBAE/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,gBAAgB,8BAA2B,CAAC;AACzD,eAAO,MAAM,cAAc,6BAA0B,CAAC;AACtD,eAAO,MAAM,eAAe,8BAA2B,CAAC"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,yEAAoF,CAAC;AAExH;;GAEG;AACH,eAAO,MAAM,oBAAoB;;iBAE/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,eAAO,MAAM,gBAAgB,8BAAqB,CAAC;AACnD,eAAO,MAAM,cAAc,6BAAoB,CAAC;AAChD,eAAO,MAAM,eAAe,8BAAqB,CAAC"}
@@ -1,19 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.logTargetSchema = exports.logLevelSchema = exports.httpClientSchema = exports.baseCLIOptionsSchema = void 0;
3
+ exports.logTargetSchema = exports.logLevelSchema = exports.httpClientSchema = exports.baseCLIOptionsSchema = exports.emptyStringToUndefined = void 0;
4
4
  const zod_1 = require("zod");
5
- const Consts_1 = require("../../common/Consts");
6
5
  const Enums_1 = require("../../common/Enums");
7
6
  const HttpClient_enum_1 = require("../../core/types/enums/HttpClient.enum");
7
+ /**
8
+ * Преобразует пустые строки в undefined для опциональных полей
9
+ * Это нужно, потому что Commander.js передает пустые строки для опций без значений
10
+ */
11
+ exports.emptyStringToUndefined = zod_1.z.preprocess(val => (val === '' ? undefined : val), zod_1.z.string().min(1).optional());
8
12
  /**
9
13
  * Базовая схема с общими опциями для всех команд
10
14
  */
11
15
  exports.baseCLIOptionsSchema = zod_1.z.object({
12
- openapiConfig: zod_1.z.string().optional().default(Consts_1.DEFAULT_OPENAPI_CONFIG_FILENAME),
16
+ openapiConfig: exports.emptyStringToUndefined,
13
17
  });
14
18
  /**
15
19
  * Enum схемы для типизированных значений
16
20
  */
17
- exports.httpClientSchema = zod_1.z.nativeEnum(HttpClient_enum_1.HttpClient);
18
- exports.logLevelSchema = zod_1.z.nativeEnum(Enums_1.ELogLevel);
19
- exports.logTargetSchema = zod_1.z.nativeEnum(Enums_1.ELogOutput);
21
+ exports.httpClientSchema = zod_1.z.enum(HttpClient_enum_1.HttpClient);
22
+ exports.logLevelSchema = zod_1.z.enum(Enums_1.ELogLevel);
23
+ exports.logTargetSchema = zod_1.z.enum(Enums_1.ELogOutput);
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  export declare const checkConfigOptionsSchema: z.ZodObject<{
3
- openapiConfig: z.ZodDefault<z.ZodOptional<z.ZodString>>;
3
+ openapiConfig: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
4
4
  }, z.core.$strip>;
5
5
  export type CheckConfigOptions = z.infer<typeof checkConfigOptionsSchema>;
6
6
  //# sourceMappingURL=checkConfig.d.ts.map
@@ -1,32 +1,8 @@
1
1
  import { z } from 'zod';
2
- /**
3
- * Схема для команды generate
4
- * Основана на baseFlatOptionsSchema, но с добавлением:
5
- * - openapiConfig (из baseCLIOptionsSchema)
6
- * - опциональными input/output (валидируются условно)
7
- */
8
2
  export declare const generateOptionsSchema: z.ZodObject<{
9
- openapiConfig: z.ZodDefault<z.ZodOptional<z.ZodString>>;
10
- outputCore: z.ZodOptional<z.ZodString>;
11
- outputServices: z.ZodOptional<z.ZodString>;
12
- outputModels: z.ZodOptional<z.ZodString>;
13
- outputSchemas: z.ZodOptional<z.ZodString>;
14
- interfacePrefix: z.ZodDefault<z.ZodOptional<z.ZodString>>;
15
- enumPrefix: z.ZodDefault<z.ZodOptional<z.ZodString>>;
16
- typePrefix: z.ZodDefault<z.ZodOptional<z.ZodString>>;
17
- httpClient: z.ZodOptional<z.ZodEnum<typeof import("../..").HttpClient>>;
18
- useOptions: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
19
- useUnionTypes: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
20
- excludeCoreServiceFiles: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
21
- request: z.ZodOptional<z.ZodString>;
22
- useCancelableRequest: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
23
- logLevel: z.ZodOptional<z.ZodEnum<typeof import("../../common/Enums").ELogLevel>>;
24
- logTarget: z.ZodOptional<z.ZodEnum<typeof import("../../common/Enums").ELogOutput>>;
25
- sortByRequired: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
26
- useSeparatedIndexes: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
27
- validationLibrary: z.ZodOptional<z.ZodEnum<typeof import("../../core/types/enums/ValidationLibrary.enum").ValidationLibrary>>;
28
3
  input: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
29
4
  output: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
5
+ openapiConfig: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
30
6
  }, z.core.$strip>;
31
7
  export type GenerateOptions = z.infer<typeof generateOptionsSchema>;
32
8
  //# sourceMappingURL=generate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgBxB;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;iBAwC5B,CAAC;AAEP,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,qBAAqB;;;;iBA2C5B,CAAC;AAEP,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -2,52 +2,41 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.generateOptionsSchema = void 0;
4
4
  const zod_1 = require("zod");
5
- const Consts_1 = require("../../common/Consts");
6
- const configSchemas_1 = require("../../common/schemas/configSchemas");
7
- const loadConfigIfExists_1 = require("../../common/utils/loadConfigIfExists");
8
5
  const base_1 = require("./base");
9
- /**
10
- * Преобразует пустые строки в undefined для опциональных полей
11
- * Это нужно, потому что Commander.js передает пустые строки для опций без значений
12
- */
13
- const emptyStringToUndefined = zod_1.z.preprocess((val) => (val === '' ? undefined : val), zod_1.z.string().min(1).optional());
14
- /**
15
- * Схема для команды generate
16
- * Основана на baseFlatOptionsSchema, но с добавлением:
17
- * - openapiConfig (из baseCLIOptionsSchema)
18
- * - опциональными input/output (валидируются условно)
19
- */
20
- exports.generateOptionsSchema = base_1.baseCLIOptionsSchema
21
- .merge(configSchemas_1.baseFlatOptionsSchema)
22
- .extend({
23
- input: emptyStringToUndefined,
24
- output: emptyStringToUndefined,
6
+ exports.generateOptionsSchema = zod_1.z
7
+ .object({
8
+ ...base_1.baseCLIOptionsSchema.shape,
9
+ input: base_1.emptyStringToUndefined,
10
+ output: base_1.emptyStringToUndefined,
25
11
  })
26
12
  .superRefine((data, ctx) => {
27
- // Проверка: если excludeCoreServiceFiles === true, request не должен быть указан
28
- if (data.excludeCoreServiceFiles === true && data.request) {
13
+ const hasInput = !!data.input;
14
+ const hasCongigPath = !!data.openapiConfig;
15
+ if (hasInput && hasCongigPath) {
29
16
  ctx.addIssue({
30
- code: zod_1.z.ZodIssueCode.custom,
31
- message: '"--request" can only be used when "excludeCoreServiceFiles" is false',
32
- path: ['request'],
17
+ code: 'custom',
18
+ message: 'Use either openapiConfig or input/output, but not both options.',
19
+ path: ['openapiConfig'],
33
20
  });
34
21
  }
35
- // Проверка: input и output обязательны, если конфиг-файл не существует или пуст
36
- const configPath = data.openapiConfig || Consts_1.DEFAULT_OPENAPI_CONFIG_FILENAME;
37
- const configData = (0, loadConfigIfExists_1.loadConfigIfExists)(configPath);
38
- // Если конфиг не существует или пуст, требуем input и output
39
- const needsInputOutput = !configData || (Array.isArray(configData) && configData.length === 0) || (typeof configData === 'object' && Object.keys(configData).length === 0);
40
- if (needsInputOutput) {
22
+ if (!hasInput && !hasCongigPath) {
23
+ ctx.addIssue({
24
+ code: 'custom',
25
+ message: 'You must specify either openapiConfig or input/output',
26
+ path: ['input'],
27
+ });
28
+ }
29
+ if (hasInput && !hasCongigPath) {
41
30
  if (!data.input || data.input.trim() === '') {
42
31
  ctx.addIssue({
43
- code: zod_1.z.ZodIssueCode.custom,
32
+ code: 'custom',
44
33
  message: '"--input" is required when no valid config file is provided',
45
34
  path: ['input'],
46
35
  });
47
36
  }
48
37
  if (!data.output || data.output.trim() === '') {
49
38
  ctx.addIssue({
50
- code: zod_1.z.ZodIssueCode.custom,
39
+ code: 'custom',
51
40
  message: '"--output" is required when no valid config file is provided',
52
41
  path: ['output'],
53
42
  });
@@ -2,6 +2,7 @@ export * from './base';
2
2
  export * from './checkConfig';
3
3
  export * from './generate';
4
4
  export * from './init';
5
+ export * from './previewChanges';
5
6
  export * from './updateConfig';
6
- export type CLIOptions = import('./generate').GenerateOptions | import('./checkConfig').CheckConfigOptions | import('./updateConfig').UpdateConfigOptions | import('./init').InitOptions;
7
+ export type CLIOptions = import('./generate').GenerateOptions | import('./checkConfig').CheckConfigOptions | import('./updateConfig').UpdateConfigOptions | import('./init').InitOptions | import('./previewChanges').TPreviewChangesOptions;
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAG/B,MAAM,MAAM,UAAU,GAAG,OAAO,YAAY,EAAE,eAAe,GAAG,OAAO,eAAe,EAAE,kBAAkB,GAAG,OAAO,gBAAgB,EAAE,mBAAmB,GAAG,OAAO,QAAQ,EAAE,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAG/B,MAAM,MAAM,UAAU,GAChB,OAAO,YAAY,EAAE,eAAe,GACpC,OAAO,eAAe,EAAE,kBAAkB,GAC1C,OAAO,gBAAgB,EAAE,mBAAmB,GAC5C,OAAO,QAAQ,EAAE,WAAW,GAC5B,OAAO,kBAAkB,EAAE,sBAAsB,CAAC"}
@@ -18,4 +18,5 @@ __exportStar(require("./base"), exports);
18
18
  __exportStar(require("./checkConfig"), exports);
19
19
  __exportStar(require("./generate"), exports);
20
20
  __exportStar(require("./init"), exports);
21
+ __exportStar(require("./previewChanges"), exports);
21
22
  __exportStar(require("./updateConfig"), exports);
@@ -1,10 +1,10 @@
1
1
  import { z } from 'zod';
2
2
  export declare const initOptionsSchema: z.ZodObject<{
3
- openapiConfig: z.ZodDefault<z.ZodOptional<z.ZodString>>;
4
- specsDir: z.ZodDefault<z.ZodOptional<z.ZodString>>;
5
- request: z.ZodDefault<z.ZodOptional<z.ZodString>>;
6
- useCancelableRequest: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
7
- useInteractiveMode: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
3
+ openapiConfig: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
4
+ specsDir: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
5
+ request: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
6
+ useCancelableRequest: z.ZodOptional<z.ZodBoolean>;
7
+ useInteractiveMode: z.ZodOptional<z.ZodBoolean>;
8
8
  }, z.core.$strip>;
9
9
  export type InitOptions = z.infer<typeof initOptionsSchema>;
10
10
  //# sourceMappingURL=init.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,iBAAiB;;;;;;iBAK5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB;;;;;;iBAK5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -2,11 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.initOptionsSchema = void 0;
4
4
  const zod_1 = require("zod");
5
- const Consts_1 = require("../../common/Consts");
6
5
  const base_1 = require("./base");
7
6
  exports.initOptionsSchema = base_1.baseCLIOptionsSchema.extend({
8
- specsDir: zod_1.z.string().min(1).optional().default(Consts_1.DEFAULT_SPECS_DIR),
9
- request: zod_1.z.string().min(1).optional().default(Consts_1.DEFAULT_CUSTOM_REQUEST_PATH),
10
- useCancelableRequest: zod_1.z.boolean().optional().default(false),
11
- useInteractiveMode: zod_1.z.boolean().optional().default(false),
7
+ specsDir: base_1.emptyStringToUndefined,
8
+ request: base_1.emptyStringToUndefined,
9
+ useCancelableRequest: zod_1.z.boolean().optional(),
10
+ useInteractiveMode: zod_1.z.boolean().optional(),
12
11
  });
@@ -0,0 +1,9 @@
1
+ import { z } from 'zod';
2
+ export declare const previewChangesSchema: z.ZodObject<{
3
+ generatedDir: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
4
+ previewDir: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
5
+ diffDir: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
6
+ openapiConfig: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
7
+ }, z.core.$strip>;
8
+ export type TPreviewChangesOptions = z.infer<typeof previewChangesSchema>;
9
+ //# sourceMappingURL=previewChanges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"previewChanges.d.ts","sourceRoot":"","sources":["../../../src/cli/schemas/previewChanges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,oBAAoB;;;;;iBAK/B,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.previewChangesSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const base_1 = require("./base");
6
+ exports.previewChangesSchema = zod_1.z.object({
7
+ ...base_1.baseCLIOptionsSchema.shape,
8
+ generatedDir: base_1.emptyStringToUndefined,
9
+ previewDir: base_1.emptyStringToUndefined,
10
+ diffDir: base_1.emptyStringToUndefined,
11
+ });
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  export declare const updateConfigOptionsSchema: z.ZodObject<{
3
- openapiConfig: z.ZodDefault<z.ZodOptional<z.ZodString>>;
3
+ openapiConfig: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodString>>;
4
4
  }, z.core.$strip>;
5
5
  export type UpdateConfigOptions = z.infer<typeof updateConfigOptionsSchema>;
6
6
  //# sourceMappingURL=updateConfig.d.ts.map
@@ -6,4 +6,6 @@ export declare const APP_LOGGER: Logger;
6
6
  export declare const DEFAULT_SPECS_DIR = "openapi/";
7
7
  export declare const DEFAULT_CUSTOM_REQUEST_PATH = "./src/custom/request.ts";
8
8
  export declare const DEFAULT_OUTPUT_API_DIR = "./generated";
9
+ export declare const DEFAULT_PREVIEW_CHANGES_DIR = "./.ts-openapi-codegen-preview-changes";
10
+ export declare const DEFAULT_DIFF_CHANGES_DIR = "./.ts-openapi-codegen-diff-changes";
9
11
  //# sourceMappingURL=Consts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Consts.d.ts","sourceRoot":"","sources":["../../src/common/Consts.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,eAAO,MAAM,+BAA+B,wBAAwB,CAAC;AAErE,eAAO,MAAM,6BAA6B,EAAE,kBAqB3C,CAAC;AAEF,eAAO,MAAM,UAAU,QAIrB,CAAC;AAEH,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAE5C,eAAO,MAAM,2BAA2B,4BAA4B,CAAA;AAEpE,eAAO,MAAM,sBAAsB,gBAAgB,CAAC"}
1
+ {"version":3,"file":"Consts.d.ts","sourceRoot":"","sources":["../../src/common/Consts.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,eAAO,MAAM,+BAA+B,wBAAwB,CAAC;AAErE,eAAO,MAAM,6BAA6B,EAAE,kBAsB3C,CAAC;AAEF,eAAO,MAAM,UAAU,QAIrB,CAAC;AAEH,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAE5C,eAAO,MAAM,2BAA2B,4BAA4B,CAAA;AAEpE,eAAO,MAAM,sBAAsB,gBAAgB,CAAC;AAEpD,eAAO,MAAM,2BAA2B,0CAA0C,CAAC;AAEnF,eAAO,MAAM,wBAAwB,uCAAuC,CAAC"}