ts-openapi-codegen 1.0.0-beta.8 → 2.0.0-beta.0

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 (375) hide show
  1. package/README.md +221 -123
  2. package/README.rus.md +725 -0
  3. package/dist/cli/checkAndUpdateConfig/checkConfig.d.ts +12 -0
  4. package/dist/cli/checkAndUpdateConfig/checkConfig.d.ts.map +1 -0
  5. package/dist/cli/checkAndUpdateConfig/checkConfig.js +66 -0
  6. package/dist/cli/checkAndUpdateConfig/constants.d.ts +13 -0
  7. package/dist/cli/checkAndUpdateConfig/constants.d.ts.map +1 -0
  8. package/dist/cli/checkAndUpdateConfig/constants.js +29 -0
  9. package/dist/cli/checkAndUpdateConfig/types.d.ts +20 -0
  10. package/dist/cli/checkAndUpdateConfig/types.d.ts.map +1 -0
  11. package/dist/cli/checkAndUpdateConfig/types.js +12 -0
  12. package/dist/cli/checkAndUpdateConfig/updateConfig.d.ts +12 -0
  13. package/dist/cli/checkAndUpdateConfig/updateConfig.d.ts.map +1 -0
  14. package/dist/cli/checkAndUpdateConfig/updateConfig.js +56 -0
  15. package/dist/cli/checkAndUpdateConfig/utils/generateConfigExample.d.ts +2 -0
  16. package/dist/cli/checkAndUpdateConfig/utils/generateConfigExample.d.ts.map +1 -0
  17. package/dist/cli/checkAndUpdateConfig/utils/generateConfigExample.js +11 -0
  18. package/dist/cli/checkAndUpdateConfig/utils/prepareConfigData.d.ts +14 -0
  19. package/dist/cli/checkAndUpdateConfig/utils/prepareConfigData.d.ts.map +1 -0
  20. package/dist/cli/checkAndUpdateConfig/utils/prepareConfigData.js +30 -0
  21. package/dist/cli/checkAndUpdateConfig/utils/removeDefaultConfigValues.d.ts +17 -0
  22. package/dist/cli/checkAndUpdateConfig/utils/removeDefaultConfigValues.d.ts.map +1 -0
  23. package/dist/cli/checkAndUpdateConfig/utils/removeDefaultConfigValues.js +29 -0
  24. package/dist/cli/checkAndUpdateConfig/utils/rewriteConfigFile.d.ts +2 -0
  25. package/dist/cli/checkAndUpdateConfig/utils/rewriteConfigFile.d.ts.map +1 -0
  26. package/dist/cli/checkAndUpdateConfig/utils/rewriteConfigFile.js +11 -0
  27. package/dist/cli/checkAndUpdateConfig/utils/selectConfigAction.d.ts +29 -0
  28. package/dist/cli/checkAndUpdateConfig/utils/selectConfigAction.d.ts.map +1 -0
  29. package/dist/cli/checkAndUpdateConfig/utils/selectConfigAction.js +49 -0
  30. package/dist/cli/checkAndUpdateConfig/utils/updateExistingConfigFile.d.ts +6 -0
  31. package/dist/cli/checkAndUpdateConfig/utils/updateExistingConfigFile.d.ts.map +1 -0
  32. package/dist/cli/checkAndUpdateConfig/utils/updateExistingConfigFile.js +22 -0
  33. package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.d.ts +17 -0
  34. package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.d.ts.map +1 -0
  35. package/dist/cli/checkAndUpdateConfig/utils/validateAndMigrateConfigData.js +53 -0
  36. package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.d.ts +34 -0
  37. package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.d.ts.map +1 -0
  38. package/dist/cli/checkAndUpdateConfig/utils/writeConfigFile.js +41 -0
  39. package/dist/cli/checkAndUpdateConfig/utils/writeExampleConfigFile.d.ts +6 -0
  40. package/dist/cli/checkAndUpdateConfig/utils/writeExampleConfigFile.d.ts.map +1 -0
  41. package/dist/cli/checkAndUpdateConfig/utils/writeExampleConfigFile.js +18 -0
  42. package/dist/cli/generate/runGenerateOpenApi.d.ts +2 -2
  43. package/dist/cli/generate/runGenerateOpenApi.d.ts.map +1 -1
  44. package/dist/cli/generate/runGenerateOpenApi.js +20 -37
  45. package/dist/cli/index.d.ts +1 -0
  46. package/dist/cli/index.js +56 -30
  47. package/dist/cli/initOpenApiConfig/runInitOpenapiConfig.d.ts.map +1 -1
  48. package/dist/cli/initOpenApiConfig/runInitOpenapiConfig.js +11 -18
  49. package/dist/cli/interactive/confirmDialog.d.ts +17 -0
  50. package/dist/cli/interactive/confirmDialog.d.ts.map +1 -0
  51. package/dist/cli/interactive/confirmDialog.js +36 -0
  52. package/dist/cli/interactive/constants.d.ts +7 -0
  53. package/dist/cli/interactive/constants.d.ts.map +1 -0
  54. package/dist/cli/interactive/constants.js +25 -0
  55. package/dist/cli/interactive/selectDialog.d.ts +17 -0
  56. package/dist/cli/interactive/selectDialog.d.ts.map +1 -0
  57. package/dist/cli/interactive/selectDialog.js +43 -0
  58. package/dist/cli/interactive/types.d.ts +40 -0
  59. package/dist/cli/interactive/types.d.ts.map +1 -0
  60. package/dist/cli/interactive/types.js +12 -0
  61. package/dist/common/Consts.d.ts +4 -0
  62. package/dist/common/Consts.d.ts.map +1 -1
  63. package/dist/common/Consts.js +31 -1
  64. package/dist/common/Enums.d.ts +4 -0
  65. package/dist/common/Enums.d.ts.map +1 -1
  66. package/dist/common/Enums.js +6 -1
  67. package/dist/common/Logger.d.ts +1 -1
  68. package/dist/common/Logger.d.ts.map +1 -1
  69. package/dist/common/Logger.js +7 -39
  70. package/dist/common/LoggerMessages.d.ts +64 -0
  71. package/dist/common/LoggerMessages.d.ts.map +1 -0
  72. package/dist/common/LoggerMessages.js +82 -0
  73. package/dist/common/TRawOptions.d.ts +40 -0
  74. package/dist/common/TRawOptions.d.ts.map +1 -0
  75. package/dist/common/UpdateNotifier.d.ts +36 -2
  76. package/dist/common/UpdateNotifier.d.ts.map +1 -1
  77. package/dist/common/UpdateNotifier.js +150 -57
  78. package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.d.ts +8 -0
  79. package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.d.ts.map +1 -0
  80. package/dist/common/VersionedSchema/AllVersionedSchemas/AllMigrationPlans.js +31 -0
  81. package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts +8 -0
  82. package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.d.ts.map +1 -0
  83. package/dist/common/VersionedSchema/AllVersionedSchemas/AllVersionedSchemas.js +33 -0
  84. package/dist/common/VersionedSchema/Enums.d.ts +2 -1
  85. package/dist/common/VersionedSchema/Enums.d.ts.map +1 -1
  86. package/dist/common/VersionedSchema/Enums.js +1 -0
  87. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan.d.ts.map +1 -1
  88. package/dist/common/VersionedSchema/MultiOptionsVersioned/MultiOptionsMigrationPlan.js +10 -19
  89. package/dist/common/VersionedSchema/OptionsVersioned/OptionsMigrationPlans.d.ts.map +1 -1
  90. package/dist/common/VersionedSchema/OptionsVersioned/OptionsMigrationPlans.js +10 -10
  91. package/dist/common/VersionedSchema/Types.d.ts +10 -0
  92. package/dist/common/VersionedSchema/Types.d.ts.map +1 -1
  93. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.d.ts +3 -0
  94. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.d.ts.map +1 -0
  95. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsMigrationPlan.js +28 -0
  96. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.d.ts +7 -0
  97. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.d.ts.map +1 -0
  98. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsSchemaV1.js +42 -0
  99. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.d.ts +3 -0
  100. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.d.ts.map +1 -0
  101. package/dist/common/VersionedSchema/UnifiedOptionsVersioned/UnifiedOptionsVersionedSchemas.js +10 -0
  102. package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.d.ts +11 -0
  103. package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.d.ts.map +1 -0
  104. package/dist/common/VersionedSchema/Utils/createDefaultFieldsMigration.js +19 -0
  105. package/dist/common/VersionedSchema/Utils/createTrivialMigration.d.ts +7 -0
  106. package/dist/common/VersionedSchema/Utils/createTrivialMigration.d.ts.map +1 -0
  107. package/dist/common/VersionedSchema/Utils/createTrivialMigration.js +15 -0
  108. package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts +1 -7
  109. package/dist/common/VersionedSchema/Utils/determineBestMatchingSchemaVersion.d.ts.map +1 -1
  110. package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.d.ts +3 -0
  111. package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.d.ts.map +1 -0
  112. package/dist/common/VersionedSchema/Utils/getCurrentErrorMessage.js +14 -0
  113. package/dist/common/VersionedSchema/Utils/getKeyByMapValue.d.ts +2 -0
  114. package/dist/common/VersionedSchema/Utils/getKeyByMapValue.d.ts.map +1 -0
  115. package/dist/common/VersionedSchema/Utils/getKeyByMapValue.js +11 -0
  116. package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts +5 -2
  117. package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.d.ts.map +1 -1
  118. package/dist/common/VersionedSchema/Utils/migrateDataToLatestSchemaVersion.js +31 -17
  119. package/dist/common/utils/__tests__/__mock__/mockJoiSchema.d.ts.map +1 -0
  120. package/dist/common/utils/__tests__/convertArrayToObject.test.d.ts.map +1 -0
  121. package/dist/common/{__tests__ → utils/__tests__}/convertArrayToObject.test.js +14 -14
  122. package/dist/common/utils/__tests__/determineBestMatchingSchemaVersion.test.d.ts.map +1 -0
  123. package/dist/common/{__tests__ → utils/__tests__}/determineBestMatchingSchemaVersion.test.js +5 -5
  124. package/dist/common/utils/__tests__/generateKeyMappingForInvalidKeys.test.d.ts.map +1 -0
  125. package/dist/common/{__tests__ → utils/__tests__}/generateKeyMappingForInvalidKeys.test.js +4 -4
  126. package/dist/common/utils/__tests__/getUniqueKeysFromSchemas.test.d.ts.map +1 -0
  127. package/dist/common/{__tests__ → utils/__tests__}/getUniqueKeysFromSchemas.test.js +4 -4
  128. package/dist/common/utils/__tests__/getUniqueObjectKeys.test.d.ts.map +1 -0
  129. package/dist/common/{__tests__ → utils/__tests__}/getUniqueObjectKeys.test.js +5 -5
  130. package/dist/common/utils/__tests__/mergeObjectSchemas.test.d.ts.map +1 -0
  131. package/dist/common/{__tests__ → utils/__tests__}/mergeObjectSchemas.test.js +5 -5
  132. package/dist/common/utils/__tests__/migrationForMultiOptions.test.d.ts.map +1 -0
  133. package/dist/common/{__tests__ → utils/__tests__}/migrationForMultiOptions.test.js +21 -15
  134. package/dist/common/utils/__tests__/migrationForOptions.test.d.ts.map +1 -0
  135. package/dist/common/{__tests__ → utils/__tests__}/migrationForOptions.test.js +13 -9
  136. package/dist/common/utils/__tests__/pathHelpers.test.d.ts.map +1 -0
  137. package/dist/{core → common}/utils/__tests__/pathHelpers.test.js +8 -8
  138. package/dist/common/utils/__tests__/replaceInvalidKeysWithMappedNames.test.d.ts.map +1 -0
  139. package/dist/common/{__tests__ → utils/__tests__}/replaceInvalidKeysWithMappedNames.test.js +5 -5
  140. package/dist/common/utils/__tests__/validateAndSuggestKeyCorrections.test.d.ts.map +1 -0
  141. package/dist/common/{__tests__ → utils/__tests__}/validateAndSuggestKeyCorrections.test.js +5 -5
  142. package/dist/common/utils/convertArrayToObject.d.ts +2 -0
  143. package/dist/common/utils/convertArrayToObject.d.ts.map +1 -0
  144. package/dist/common/{Utils.js → utils/convertArrayToObject.js} +0 -20
  145. package/dist/{core/utils/fileSystem.d.ts → common/utils/fileSystemHelpers.d.ts} +8 -5
  146. package/dist/common/utils/fileSystemHelpers.d.ts.map +1 -0
  147. package/dist/common/utils/fileSystemHelpers.js +85 -0
  148. package/dist/common/utils/format.d.ts +3 -0
  149. package/dist/common/utils/format.d.ts.map +1 -0
  150. package/dist/{core → common}/utils/format.js +2 -2
  151. package/dist/common/utils/loadConfigIfExists.d.ts +2 -0
  152. package/dist/common/utils/loadConfigIfExists.d.ts.map +1 -0
  153. package/dist/common/utils/loadConfigIfExists.js +22 -0
  154. package/dist/common/utils/pathHelpers.d.ts +6 -0
  155. package/dist/common/utils/pathHelpers.d.ts.map +1 -0
  156. package/dist/{core → common}/utils/pathHelpers.js +16 -20
  157. package/dist/common/utils/safeHasOwn.d.ts +2 -0
  158. package/dist/common/utils/safeHasOwn.d.ts.map +1 -0
  159. package/dist/common/utils/safeHasOwn.js +9 -0
  160. package/dist/core/Context.d.ts.map +1 -1
  161. package/dist/core/Context.js +3 -3
  162. package/dist/core/OpenApiClient.d.ts +13 -0
  163. package/dist/core/OpenApiClient.d.ts.map +1 -0
  164. package/dist/core/OpenApiClient.js +175 -0
  165. package/dist/core/WriteClient.d.ts +1 -1
  166. package/dist/core/WriteClient.d.ts.map +1 -1
  167. package/dist/core/WriteClient.js +20 -20
  168. package/dist/core/__tests__/WriteClient.test.js +61 -60
  169. package/dist/core/api/v2/Parser.d.ts.map +1 -1
  170. package/dist/core/api/v2/Parser.js +2 -9
  171. package/dist/core/api/v2/parser/__tests__/getServer.test.js +2 -2
  172. package/dist/core/api/v2/parser/__tests__/getType.test.js +3 -3
  173. package/dist/core/api/v2/parser/getModelProperties.d.ts.map +1 -1
  174. package/dist/core/api/v2/parser/getModelProperties.js +2 -5
  175. package/dist/core/api/v2/parser/getModels.d.ts.map +1 -1
  176. package/dist/core/api/v2/parser/getModels.js +2 -1
  177. package/dist/core/api/v2/parser/getOperationParameter.d.ts.map +1 -1
  178. package/dist/core/api/v2/parser/getOperationParameter.js +2 -1
  179. package/dist/core/api/v2/parser/getOperationResponse.d.ts.map +1 -1
  180. package/dist/core/api/v2/parser/getOperationResponse.js +2 -5
  181. package/dist/core/api/v2/parser/getOperationResponses.d.ts.map +1 -1
  182. package/dist/core/api/v2/parser/getOperationResponses.js +2 -5
  183. package/dist/core/api/v2/parser/getServices.d.ts.map +1 -1
  184. package/dist/core/api/v2/parser/getServices.js +2 -5
  185. package/dist/core/api/v2/parser/getType.js +4 -4
  186. package/dist/core/api/v3/Parser.d.ts +1 -1
  187. package/dist/core/api/v3/Parser.d.ts.map +1 -1
  188. package/dist/core/api/v3/Parser.js +2 -9
  189. package/dist/core/api/v3/parser/__tests__/getServer.test.js +3 -3
  190. package/dist/core/api/v3/parser/__tests__/getType.test.js +3 -3
  191. package/dist/core/api/v3/parser/getModelProperties.d.ts.map +1 -1
  192. package/dist/core/api/v3/parser/getModelProperties.js +2 -5
  193. package/dist/core/api/v3/parser/getModels.d.ts.map +1 -1
  194. package/dist/core/api/v3/parser/getModels.js +2 -1
  195. package/dist/core/api/v3/parser/getOperationResponse.d.ts.map +1 -1
  196. package/dist/core/api/v3/parser/getOperationResponse.js +2 -5
  197. package/dist/core/api/v3/parser/getOperationResponses.d.ts.map +1 -1
  198. package/dist/core/api/v3/parser/getOperationResponses.js +2 -5
  199. package/dist/core/api/v3/parser/getServer.d.ts.map +1 -1
  200. package/dist/core/api/v3/parser/getServer.js +2 -5
  201. package/dist/core/api/v3/parser/getServices.d.ts.map +1 -1
  202. package/dist/core/api/v3/parser/getServices.js +2 -5
  203. package/dist/core/api/v3/parser/getType.d.ts.map +1 -1
  204. package/dist/core/api/v3/parser/getType.js +5 -13
  205. package/dist/core/index.d.ts +2 -2
  206. package/dist/core/index.d.ts.map +1 -1
  207. package/dist/core/index.js +6 -161
  208. package/dist/core/types/Consts.d.ts +5 -1
  209. package/dist/core/types/Consts.d.ts.map +1 -1
  210. package/dist/core/types/Consts.js +6 -2
  211. package/dist/core/types/base/Root.model.d.ts +1 -0
  212. package/dist/core/types/base/Root.model.d.ts.map +1 -1
  213. package/dist/core/utils/__tests__/escapeDescription.test.js +3 -3
  214. package/dist/core/utils/__tests__/escapeName.test.js +2 -2
  215. package/dist/core/utils/__tests__/flatMap.test.js +2 -2
  216. package/dist/core/utils/__tests__/getAbsolutePath.test.js +6 -6
  217. package/dist/core/utils/__tests__/getClassName.test.js +2 -2
  218. package/dist/core/utils/__tests__/getComment.test.js +2 -2
  219. package/dist/core/utils/__tests__/getEnumFromDescription.test.js +2 -2
  220. package/dist/core/utils/__tests__/getFileName.test.js +2 -2
  221. package/dist/core/utils/__tests__/getGatheringRefs.test.js +2 -2
  222. package/dist/core/utils/__tests__/getMappedType.test.js +2 -2
  223. package/dist/core/utils/__tests__/getModelNames.test.js +2 -2
  224. package/dist/core/utils/__tests__/getOpenApiVersion.test.js +2 -2
  225. package/dist/core/utils/__tests__/getOperationName.test.js +2 -2
  226. package/dist/core/utils/__tests__/getOperationParameterName.test.js +2 -2
  227. package/dist/core/utils/__tests__/getOperationPath.test.js +2 -2
  228. package/dist/core/utils/__tests__/getOperationResponseCode.test.js +2 -2
  229. package/dist/core/utils/__tests__/getPattern.test.js +2 -2
  230. package/dist/core/utils/__tests__/getRefFromSchema.test.js +2 -2
  231. package/dist/core/utils/__tests__/getRefs.test.js +2 -2
  232. package/dist/core/utils/__tests__/getRelativeModelPath.test.js +3 -3
  233. package/dist/core/utils/__tests__/getServiceClassName.test.js +2 -2
  234. package/dist/core/utils/__tests__/getServiceNames.test.js +2 -2
  235. package/dist/core/utils/__tests__/getServiceVersion.test.js +2 -2
  236. package/dist/core/utils/__tests__/isString.test.js +2 -2
  237. package/dist/core/utils/__tests__/isSubdirectory.test.js +10 -10
  238. package/dist/core/utils/__tests__/registerHandlebarHelpers.test.js +2 -2
  239. package/dist/core/utils/__tests__/registerHandlebarTemplates.test.js +2 -2
  240. package/dist/core/utils/__tests__/replaceString.test.js +2 -2
  241. package/dist/core/utils/__tests__/resolveRefToImportPath.test.js +360 -51
  242. package/dist/core/utils/__tests__/sort.test.js +2 -2
  243. package/dist/core/utils/__tests__/sortByRequiredExtended.test.js +11 -11
  244. package/dist/core/utils/__tests__/sortByRequiredSimple.test.js +11 -11
  245. package/dist/core/utils/__tests__/sortModelsByName.test.js +2 -2
  246. package/dist/core/utils/__tests__/sortServicesByName.test.js +2 -2
  247. package/dist/core/utils/__tests__/stripNamespace.test.js +2 -2
  248. package/dist/core/utils/__tests__/unique.test.js +2 -2
  249. package/dist/core/utils/__tests__/writeClientCore.test.js +52 -50
  250. package/dist/core/utils/__tests__/writeClientFullIndex.test.js +39 -37
  251. package/dist/core/utils/__tests__/writeClientModels.test.js +65 -63
  252. package/dist/core/utils/__tests__/writeClientSchemas.test.js +65 -63
  253. package/dist/core/utils/__tests__/writeClientServices.test.js +60 -58
  254. package/dist/core/utils/appendUniqueLinesToFile.js +4 -4
  255. package/dist/core/utils/createNormalizedRef.js +2 -2
  256. package/dist/core/utils/getAbsolutePath.js +3 -3
  257. package/dist/core/utils/getModelNameWithPrefix.d.ts +3 -0
  258. package/dist/core/utils/getModelNameWithPrefix.d.ts.map +1 -0
  259. package/dist/core/utils/getModelNameWithPrefix.js +15 -0
  260. package/dist/core/utils/getOpenApiSpec.d.ts.map +1 -1
  261. package/dist/core/utils/getOpenApiSpec.js +4 -4
  262. package/dist/core/utils/getOutputPaths.d.ts.map +1 -1
  263. package/dist/core/utils/getOutputPaths.js +6 -6
  264. package/dist/core/utils/getPattern.d.ts.map +1 -1
  265. package/dist/core/utils/getPattern.js +2 -1
  266. package/dist/core/utils/getRelativeModelPath.d.ts.map +1 -1
  267. package/dist/core/utils/getRelativeModelPath.js +2 -6
  268. package/dist/core/utils/isSubdirectory.d.ts.map +1 -1
  269. package/dist/core/utils/isSubdirectory.js +4 -3
  270. package/dist/core/utils/mapPathToTargetDirSafe.d.ts.map +1 -1
  271. package/dist/core/utils/mapPathToTargetDirSafe.js +11 -12
  272. package/dist/core/utils/modelHelpers.d.ts.map +1 -1
  273. package/dist/core/utils/modelHelpers.js +18 -6
  274. package/dist/core/utils/normalizeString.d.ts +2 -0
  275. package/dist/core/utils/normalizeString.d.ts.map +1 -0
  276. package/dist/core/utils/normalizeString.js +14 -0
  277. package/dist/core/utils/normalizedAbsolutePath.js +3 -3
  278. package/dist/core/utils/parseRef.d.ts.map +1 -1
  279. package/dist/core/utils/parseRef.js +7 -10
  280. package/dist/core/utils/precompileTemplates.js +14 -10
  281. package/dist/core/utils/registerHandlebarHelpers.d.ts.map +1 -1
  282. package/dist/core/utils/registerHandlebarHelpers.js +24 -0
  283. package/dist/core/utils/replaceString.d.ts.map +1 -1
  284. package/dist/core/utils/replaceString.js +2 -1
  285. package/dist/core/utils/resolveRefPath.d.ts.map +1 -1
  286. package/dist/core/utils/resolveRefPath.js +3 -3
  287. package/dist/core/utils/resolveRefToImportPath.d.ts +8 -2
  288. package/dist/core/utils/resolveRefToImportPath.d.ts.map +1 -1
  289. package/dist/core/utils/resolveRefToImportPath.js +91 -31
  290. package/dist/core/utils/serviceHelpers.d.ts.map +1 -1
  291. package/dist/core/utils/serviceHelpers.js +2 -1
  292. package/dist/core/utils/stripNamespace.js +5 -5
  293. package/dist/core/utils/writeClientCore.d.ts.map +1 -1
  294. package/dist/core/utils/writeClientCore.js +12 -12
  295. package/dist/core/utils/writeClientCoreIndex.d.ts.map +1 -1
  296. package/dist/core/utils/writeClientCoreIndex.js +2 -2
  297. package/dist/core/utils/writeClientFullIndex.d.ts.map +1 -1
  298. package/dist/core/utils/writeClientFullIndex.js +4 -4
  299. package/dist/core/utils/writeClientModels.d.ts.map +1 -1
  300. package/dist/core/utils/writeClientModels.js +7 -7
  301. package/dist/core/utils/writeClientModelsIndex.d.ts.map +1 -1
  302. package/dist/core/utils/writeClientModelsIndex.js +2 -2
  303. package/dist/core/utils/writeClientSchemas.d.ts.map +1 -1
  304. package/dist/core/utils/writeClientSchemas.js +7 -7
  305. package/dist/core/utils/writeClientSchemasIndex.d.ts.map +1 -1
  306. package/dist/core/utils/writeClientSchemasIndex.js +2 -2
  307. package/dist/core/utils/writeClientServices.d.ts.map +1 -1
  308. package/dist/core/utils/writeClientServices.js +5 -5
  309. package/dist/core/utils/writeClientServicesIndex.d.ts.map +1 -1
  310. package/dist/core/utils/writeClientServicesIndex.js +2 -2
  311. package/dist/core/utils/writeClientSimpleIndex.d.ts.map +1 -1
  312. package/dist/core/utils/writeClientSimpleIndex.js +4 -4
  313. package/dist/templatesCompiled/client/exportModel.js +4 -4
  314. package/dist/templatesCompiled/client/exportService.d.ts.map +1 -1
  315. package/dist/templatesCompiled/client/exportService.js +12 -13
  316. package/dist/templatesCompiled/client/indexFull.d.ts.map +1 -1
  317. package/dist/templatesCompiled/client/indexFull.js +35 -29
  318. package/dist/templatesCompiled/client/partials/parameters.d.ts +3 -2
  319. package/dist/templatesCompiled/client/partials/parameters.d.ts.map +1 -1
  320. package/dist/templatesCompiled/client/partials/parameters.js +25 -20
  321. package/dist/templatesCompiled/client/partials/parametersDefinition.d.ts +4 -2
  322. package/dist/templatesCompiled/client/partials/parametersDefinition.d.ts.map +1 -1
  323. package/dist/templatesCompiled/client/partials/parametersDefinition.js +31 -10
  324. package/package.json +15 -13
  325. package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.d.ts +0 -5
  326. package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.d.ts.map +0 -1
  327. package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.js +0 -45
  328. package/dist/common/Options.d.ts +0 -26
  329. package/dist/common/Options.d.ts.map +0 -1
  330. package/dist/common/Utils.d.ts +0 -3
  331. package/dist/common/Utils.d.ts.map +0 -1
  332. package/dist/common/__tests__/__mock__/mockJoiSchema.d.ts.map +0 -1
  333. package/dist/common/__tests__/convertArrayToObject.test.d.ts.map +0 -1
  334. package/dist/common/__tests__/determineBestMatchingSchemaVersion.test.d.ts.map +0 -1
  335. package/dist/common/__tests__/generateKeyMappingForInvalidKeys.test.d.ts.map +0 -1
  336. package/dist/common/__tests__/getUniqueKeysFromSchemas.test.d.ts.map +0 -1
  337. package/dist/common/__tests__/getUniqueObjectKeys.test.d.ts.map +0 -1
  338. package/dist/common/__tests__/mergeObjectSchemas.test.d.ts.map +0 -1
  339. package/dist/common/__tests__/migrationForMultiOptions.test.d.ts.map +0 -1
  340. package/dist/common/__tests__/migrationForOptions.test.d.ts.map +0 -1
  341. package/dist/common/__tests__/replaceInvalidKeysWithMappedNames.test.d.ts.map +0 -1
  342. package/dist/common/__tests__/validateAndSuggestKeyCorrections.test.d.ts.map +0 -1
  343. package/dist/core/utils/__tests__/getRelativeModelImportPath.test.d.ts +0 -2
  344. package/dist/core/utils/__tests__/getRelativeModelImportPath.test.d.ts.map +0 -1
  345. package/dist/core/utils/__tests__/getRelativeModelImportPath.test.js +0 -82
  346. package/dist/core/utils/__tests__/pathHelpers.test.d.ts.map +0 -1
  347. package/dist/core/utils/fileSystem.d.ts.map +0 -1
  348. package/dist/core/utils/fileSystem.js +0 -26
  349. package/dist/core/utils/format.d.ts +0 -2
  350. package/dist/core/utils/format.d.ts.map +0 -1
  351. package/dist/core/utils/getRelativeModelImportPath.d.ts +0 -9
  352. package/dist/core/utils/getRelativeModelImportPath.d.ts.map +0 -1
  353. package/dist/core/utils/getRelativeModelImportPath.js +0 -45
  354. package/dist/core/utils/isDirectory.d.ts +0 -2
  355. package/dist/core/utils/isDirectory.d.ts.map +0 -1
  356. package/dist/core/utils/isDirectory.js +0 -13
  357. package/dist/core/utils/pathHelpers.d.ts +0 -7
  358. package/dist/core/utils/pathHelpers.d.ts.map +0 -1
  359. package/dist/core/utils/prepareOptions.d.ts +0 -8
  360. package/dist/core/utils/prepareOptions.d.ts.map +0 -1
  361. package/dist/core/utils/prepareOptions.js +0 -31
  362. /package/dist/common/{Options.js → TRawOptions.js} +0 -0
  363. /package/dist/common/{__tests__ → utils/__tests__}/__mock__/mockJoiSchema.d.ts +0 -0
  364. /package/dist/common/{__tests__ → utils/__tests__}/__mock__/mockJoiSchema.js +0 -0
  365. /package/dist/common/{__tests__ → utils/__tests__}/convertArrayToObject.test.d.ts +0 -0
  366. /package/dist/common/{__tests__ → utils/__tests__}/determineBestMatchingSchemaVersion.test.d.ts +0 -0
  367. /package/dist/common/{__tests__ → utils/__tests__}/generateKeyMappingForInvalidKeys.test.d.ts +0 -0
  368. /package/dist/common/{__tests__ → utils/__tests__}/getUniqueKeysFromSchemas.test.d.ts +0 -0
  369. /package/dist/common/{__tests__ → utils/__tests__}/getUniqueObjectKeys.test.d.ts +0 -0
  370. /package/dist/common/{__tests__ → utils/__tests__}/mergeObjectSchemas.test.d.ts +0 -0
  371. /package/dist/common/{__tests__ → utils/__tests__}/migrationForMultiOptions.test.d.ts +0 -0
  372. /package/dist/common/{__tests__ → utils/__tests__}/migrationForOptions.test.d.ts +0 -0
  373. /package/dist/{core → common}/utils/__tests__/pathHelpers.test.d.ts +0 -0
  374. /package/dist/common/{__tests__ → utils/__tests__}/replaceInvalidKeysWithMappedNames.test.d.ts +0 -0
  375. /package/dist/common/{__tests__ → utils/__tests__}/validateAndSuggestKeyCorrections.test.d.ts +0 -0
@@ -6,13 +6,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const node_assert_1 = __importDefault(require("node:assert"));
7
7
  const node_test_1 = require("node:test");
8
8
  const pathHelpers_1 = require("../pathHelpers");
9
- (0, node_test_1.describe)('path', () => {
10
- (0, node_test_1.test)('@unit: should relative', () => {
11
- node_assert_1.default.strictEqual((0, pathHelpers_1.relative)('/test/server', '/test/model'), '../model');
12
- node_assert_1.default.strictEqual((0, pathHelpers_1.relative)('/test/server', '/test/server'), './');
13
- node_assert_1.default.strictEqual((0, pathHelpers_1.relative)('/test/server', '/test/server/model'), './model');
14
- node_assert_1.default.strictEqual((0, pathHelpers_1.relative)('/test/server', '/model'), '../../model');
15
- node_assert_1.default.strictEqual((0, pathHelpers_1.relative)('/test', '/test'), './');
16
- node_assert_1.default.strictEqual((0, pathHelpers_1.relative)('/test', '/test/model'), './model');
9
+ (0, node_test_1.describe)('@unit: path', () => {
10
+ (0, node_test_1.test)('should relative', () => {
11
+ node_assert_1.default.strictEqual((0, pathHelpers_1.relativeHelper)('/test/server', '/test/model'), '../model');
12
+ node_assert_1.default.strictEqual((0, pathHelpers_1.relativeHelper)('/test/server', '/test/server'), './');
13
+ node_assert_1.default.strictEqual((0, pathHelpers_1.relativeHelper)('/test/server', '/test/server/model'), './model');
14
+ node_assert_1.default.strictEqual((0, pathHelpers_1.relativeHelper)('/test/server', '/model'), '../../model');
15
+ node_assert_1.default.strictEqual((0, pathHelpers_1.relativeHelper)('/test', '/test'), './');
16
+ node_assert_1.default.strictEqual((0, pathHelpers_1.relativeHelper)('/test', '/test/model'), './model');
17
17
  });
18
18
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"replaceInvalidKeysWithMappedNames.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/replaceInvalidKeysWithMappedNames.test.ts"],"names":[],"mappings":""}
@@ -5,21 +5,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const node_assert_1 = __importDefault(require("node:assert"));
7
7
  const node_test_1 = require("node:test");
8
- const replaceInvalidKeysWithMappedNames_1 = require("../VersionedSchema/Utils/replaceInvalidKeysWithMappedNames");
9
- (0, node_test_1.describe)('replaceInvalidKeysWithMappedNames', () => {
10
- (0, node_test_1.test)('@unit: must replace invalid keys in the object', async () => {
8
+ const replaceInvalidKeysWithMappedNames_1 = require("../../VersionedSchema/Utils/replaceInvalidKeysWithMappedNames");
9
+ (0, node_test_1.describe)('@unit: replaceInvalidKeysWithMappedNames', () => {
10
+ (0, node_test_1.test)('must replace invalid keys in the object', async () => {
11
11
  const input = { nmae: 'John', title: 'Mr' };
12
12
  const keyMap = new Map([['nmae', 'name']]);
13
13
  const result = (0, replaceInvalidKeysWithMappedNames_1.replaceInvalidKeysWithMappedNames)(input, keyMap);
14
14
  node_assert_1.default.deepEqual(result, { name: 'John', title: 'Mr' });
15
15
  });
16
- (0, node_test_1.test)('@unit: must replace invalid keys in an array of objects', async () => {
16
+ (0, node_test_1.test)('must replace invalid keys in an array of objects', async () => {
17
17
  const input = [{ nmae: 'John' }, { nmae: 'Jane' }];
18
18
  const keyMap = new Map([['nmae', 'name']]);
19
19
  const result = (0, replaceInvalidKeysWithMappedNames_1.replaceInvalidKeysWithMappedNames)(input, keyMap);
20
20
  node_assert_1.default.deepEqual(result, [{ name: 'John' }, { name: 'Jane' }]);
21
21
  });
22
- (0, node_test_1.test)('@unit: should throw an error for null or undefined', async () => {
22
+ (0, node_test_1.test)('should throw an error for null or undefined', async () => {
23
23
  node_assert_1.default.throws(() => (0, replaceInvalidKeysWithMappedNames_1.replaceInvalidKeysWithMappedNames)(null, new Map()), /The input data cannot be null or undefined./);
24
24
  });
25
25
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateAndSuggestKeyCorrections.test.d.ts","sourceRoot":"","sources":["../../../../src/common/utils/__tests__/validateAndSuggestKeyCorrections.test.ts"],"names":[],"mappings":""}
@@ -5,19 +5,19 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const node_assert_1 = __importDefault(require("node:assert"));
7
7
  const node_test_1 = require("node:test");
8
- const validateAndSuggestKeyCorrections_1 = require("../VersionedSchema/Utils/validateAndSuggestKeyCorrections");
9
- (0, node_test_1.describe)('validateAndSuggestKeyCorrections', () => {
10
- (0, node_test_1.test)('@unit: should throw an error for unknown keys with a suggestion for correction', async () => {
8
+ const validateAndSuggestKeyCorrections_1 = require("../../VersionedSchema/Utils/validateAndSuggestKeyCorrections");
9
+ (0, node_test_1.describe)('@unit: validateAndSuggestKeyCorrections', () => {
10
+ (0, node_test_1.test)('should throw an error for unknown keys with a suggestion for correction', async () => {
11
11
  const inputKeys = ['nmae'];
12
12
  const allowedKeys = new Set(['name', 'title']);
13
13
  node_assert_1.default.throws(() => (0, validateAndSuggestKeyCorrections_1.validateAndSuggestKeyCorrections)(inputKeys, allowedKeys), /The "nmae" field is not recognized. Perhaps you meant "name"./);
14
14
  });
15
- (0, node_test_1.test)('@unit: should throw an error without suggestions for keys with a large distance', async () => {
15
+ (0, node_test_1.test)('should throw an error without suggestions for keys with a large distance', async () => {
16
16
  const inputKeys = ['unknown'];
17
17
  const allowedKeys = new Set(['name', 'title']);
18
18
  node_assert_1.default.throws(() => (0, validateAndSuggestKeyCorrections_1.validateAndSuggestKeyCorrections)(inputKeys, allowedKeys), /The "unknown" field is not recognized./);
19
19
  });
20
- (0, node_test_1.test)('@unit: should not throw an error for valid keys', async () => {
20
+ (0, node_test_1.test)('should not throw an error for valid keys', async () => {
21
21
  const inputKeys = ['name', 'title'];
22
22
  const allowedKeys = new Set(['name', 'title']);
23
23
  node_assert_1.default.doesNotThrow(() => (0, validateAndSuggestKeyCorrections_1.validateAndSuggestKeyCorrections)(inputKeys, allowedKeys));
@@ -0,0 +1,2 @@
1
+ export declare function convertArrayToObject(optionsArr: Record<string, any> | Record<string, any>[] | null): Record<string, any>;
2
+ //# sourceMappingURL=convertArrayToObject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convertArrayToObject.d.ts","sourceRoot":"","sources":["../../../src/common/utils/convertArrayToObject.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA4DxH"}
@@ -1,26 +1,6 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.loadConfigIfExists = loadConfigIfExists;
7
3
  exports.convertArrayToObject = convertArrayToObject;
8
- const fs_1 = __importDefault(require("fs"));
9
- const utils_1 = require("../cli/utils");
10
- const pathHelpers_1 = require("../core/utils/pathHelpers");
11
- const Consts_1 = require("./Consts");
12
- function loadConfigIfExists(configPath) {
13
- const configFilePath = (0, pathHelpers_1.resolve)(process.cwd(), configPath ?? Consts_1.DEFAULT_OPENAPI_CONFIG_FILENAME);
14
- let configData;
15
- if (fs_1.default.existsSync(configFilePath)) {
16
- const dataString = fs_1.default.readFileSync(configFilePath, { encoding: 'utf-8' });
17
- configData = (0, utils_1.isValidJson)(dataString) ? JSON.parse(dataString) : [];
18
- }
19
- else {
20
- configData = null;
21
- }
22
- return configData;
23
- }
24
4
  function convertArrayToObject(optionsArr) {
25
5
  const emptyResult = {
26
6
  items: [],
@@ -1,12 +1,15 @@
1
1
  import { copyFile as __copyFile, exists as __exists, readFile as __readFile, writeFile as __writeFile } from 'fs';
2
- import mkdirp from 'mkdirp';
3
- declare const fileSystem: {
2
+ declare function isDirectory(path: string): boolean;
3
+ declare function isPathToFile(path: string): boolean;
4
+ declare const fileSystemHelpers: {
4
5
  readFile: typeof __readFile.__promisify__;
5
6
  writeFile: typeof __writeFile.__promisify__;
6
7
  copyFile: typeof __copyFile.__promisify__;
7
8
  exists: typeof __exists.__promisify__;
8
- mkdir: typeof mkdirp;
9
+ mkdir: (path: string) => Promise<void>;
9
10
  rmdir: (path: string) => Promise<void>;
11
+ isDirectory: typeof isDirectory;
12
+ isPathToFile: typeof isPathToFile;
10
13
  };
11
- export { fileSystem };
12
- //# sourceMappingURL=fileSystem.d.ts.map
14
+ export { fileSystemHelpers };
15
+ //# sourceMappingURL=fileSystemHelpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileSystemHelpers.d.ts","sourceRoot":"","sources":["../../../src/common/utils/fileSystemHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,QAAQ,IAAI,UAAU,EACtB,MAAM,IAAI,QAAQ,EAGlB,QAAQ,IAAI,UAAU,EAKtB,SAAS,IAAI,WAAW,EAC3B,MAAM,IAAI,CAAC;AAyDZ,iBAAS,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAM1C;AAED,iBAAS,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAM3C;AAED,QAAA,MAAM,iBAAiB;;;;;kBArDI,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;kBAgBtB,MAAM,KAAG,OAAO,CAAC,IAAI,CAAC;;;CA8ChD,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fileSystemHelpers = void 0;
4
+ const fs_1 = require("fs");
5
+ const path_1 = require("path");
6
+ const util_1 = require("util");
7
+ const pathHelpers_1 = require("./pathHelpers");
8
+ // Промисифицируем базовые функции fs
9
+ const mkdirBase = (0, util_1.promisify)(fs_1.mkdir);
10
+ const rmdirBase = (0, util_1.promisify)(fs_1.rmdir);
11
+ const readdir = (0, util_1.promisify)(fs_1.readdir);
12
+ const unlink = (0, util_1.promisify)(fs_1.unlink);
13
+ const stat = (0, util_1.promisify)(fs_1.stat);
14
+ // Экспортируемые промисифицированные функции
15
+ const readFile = (0, util_1.promisify)(fs_1.readFile);
16
+ const writeFile = (0, util_1.promisify)(fs_1.writeFile);
17
+ const copyFile = (0, util_1.promisify)(fs_1.copyFile);
18
+ const exists = (0, util_1.promisify)(fs_1.exists);
19
+ // Рекурсивное создание директорий (замена mkdirp)
20
+ const mkdir = async (path) => {
21
+ try {
22
+ await mkdirBase(path);
23
+ }
24
+ catch (error) {
25
+ if (error.code === 'ENOENT') {
26
+ // Родительская директория не существует, создаем ее рекурсивно
27
+ await mkdir((0, path_1.dirname)(path));
28
+ await mkdirBase(path);
29
+ }
30
+ else if (error.code !== 'EEXIST') {
31
+ // Пропускаем ошибку, если директория уже существует
32
+ throw error;
33
+ }
34
+ }
35
+ };
36
+ // Рекурсивное удаление директорий и файлов (замена rimraf)
37
+ const rmdir = async (path) => {
38
+ try {
39
+ const stats = await stat(path);
40
+ if (stats.isDirectory()) {
41
+ const files = await readdir(path);
42
+ for (const file of files) {
43
+ const curPath = `${path}/${file}`;
44
+ await rmdir(curPath); // Рекурсивно удаляем содержимое
45
+ }
46
+ await rmdirBase(path); // Удаляем пустую директорию
47
+ }
48
+ else {
49
+ await unlink(path); // Удаляем файл
50
+ }
51
+ }
52
+ catch (error) {
53
+ if (error.code !== 'ENOENT') {
54
+ // Пропускаем ошибку, если путь не существует
55
+ throw error;
56
+ }
57
+ }
58
+ };
59
+ function isDirectory(path) {
60
+ try {
61
+ return (0, fs_1.statSync)((0, pathHelpers_1.normalizeHelper)(path)).isDirectory();
62
+ }
63
+ catch {
64
+ return false;
65
+ }
66
+ }
67
+ function isPathToFile(path) {
68
+ try {
69
+ return (0, fs_1.statSync)((0, pathHelpers_1.normalizeHelper)(path)).isFile();
70
+ }
71
+ catch {
72
+ return false;
73
+ }
74
+ }
75
+ const fileSystemHelpers = {
76
+ readFile,
77
+ writeFile,
78
+ copyFile,
79
+ exists,
80
+ mkdir,
81
+ rmdir,
82
+ isDirectory,
83
+ isPathToFile,
84
+ };
85
+ exports.fileSystemHelpers = fileSystemHelpers;
@@ -0,0 +1,3 @@
1
+ import { BuiltInParserName, LiteralUnion } from 'prettier';
2
+ export declare function format(input: string, parser?: LiteralUnion<BuiltInParserName>): Promise<string>;
3
+ //# sourceMappingURL=format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/common/utils/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAA2B,YAAY,EAAE,MAAM,UAAU,CAAC;AAEpF,wBAAsB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBrG"}
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.format = format;
4
4
  const prettier_1 = require("prettier");
5
- async function format(input) {
5
+ async function format(input, parser) {
6
6
  try {
7
7
  const formatedCode = await (0, prettier_1.format)(input, {
8
- parser: 'typescript',
8
+ parser: parser ?? 'typescript',
9
9
  tabWidth: 4,
10
10
  printWidth: 120,
11
11
  useTabs: false,
@@ -0,0 +1,2 @@
1
+ export declare function loadConfigIfExists(configPath?: string): Record<string, any> | Record<string, any>[] | null;
2
+ //# sourceMappingURL=loadConfigIfExists.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loadConfigIfExists.d.ts","sourceRoot":"","sources":["../../../src/common/utils/loadConfigIfExists.ts"],"names":[],"mappings":"AAMA,wBAAgB,kBAAkB,CAAC,UAAU,CAAC,EAAE,MAAM,sDAYrD"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.loadConfigIfExists = loadConfigIfExists;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ const utils_1 = require("../../cli/utils");
9
+ const Consts_1 = require("../Consts");
10
+ const pathHelpers_1 = require("./pathHelpers");
11
+ function loadConfigIfExists(configPath) {
12
+ const configFilePath = (0, pathHelpers_1.resolveHelper)(process.cwd(), configPath ?? Consts_1.DEFAULT_OPENAPI_CONFIG_FILENAME);
13
+ let configData;
14
+ if (fs_1.default.existsSync(configFilePath)) {
15
+ const dataString = fs_1.default.readFileSync(configFilePath, { encoding: 'utf-8' });
16
+ configData = (0, utils_1.isValidJson)(dataString) ? JSON.parse(dataString) : [];
17
+ }
18
+ else {
19
+ configData = null;
20
+ }
21
+ return configData;
22
+ }
@@ -0,0 +1,6 @@
1
+ export declare function dirNameHelper(p: string): string;
2
+ export declare function joinHelper(...paths: string[]): string;
3
+ export declare function relativeHelper(from: string, to: string): string;
4
+ export declare function resolveHelper(...pathSegments: string[]): string;
5
+ export declare function normalizeHelper(p: string): string;
6
+ //# sourceMappingURL=pathHelpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pathHelpers.d.ts","sourceRoot":"","sources":["../../../src/common/utils/pathHelpers.ts"],"names":[],"mappings":"AAIA,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,UAAU,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAErD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAyB/D;AAED,wBAAgB,aAAa,CAAC,GAAG,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,CAE/D;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEjD"}
@@ -3,26 +3,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.dirName = dirName;
7
- exports.join = join;
8
- exports.relative = relative;
9
- exports.resolve = resolve;
10
- exports.normalize = normalize;
11
- exports.joinToDir = joinToDir;
6
+ exports.dirNameHelper = dirNameHelper;
7
+ exports.joinHelper = joinHelper;
8
+ exports.relativeHelper = relativeHelper;
9
+ exports.resolveHelper = resolveHelper;
10
+ exports.normalizeHelper = normalizeHelper;
12
11
  const path_1 = __importDefault(require("path"));
13
- const Consts_1 = require("../types/Consts");
14
- function dirName(p) {
15
- return path_1.default.dirname(p).replace(Consts_1.SEARCH_REGEXP, '/');
12
+ const Consts_1 = require("../../core/types/Consts");
13
+ function dirNameHelper(p) {
14
+ return path_1.default.dirname(p).replace(Consts_1.REGEX_BACKSLASH, '/');
16
15
  }
17
- function join(...paths) {
18
- return path_1.default.join(...paths).replace(Consts_1.SEARCH_REGEXP, '/');
16
+ function joinHelper(...paths) {
17
+ return path_1.default.join(...paths).replace(Consts_1.REGEX_BACKSLASH, '/');
19
18
  }
20
- function relative(from, to) {
19
+ function relativeHelper(from, to) {
21
20
  // Defensive defaults
22
21
  const fromSafe = from || '.';
23
22
  const toSafe = to || '.';
24
23
  // Get native relative and convert to POSIX separators
25
- const relativePath = path_1.default.relative(fromSafe, toSafe).replace(Consts_1.SEARCH_REGEXP, '/');
24
+ const relativePath = path_1.default.relative(fromSafe, toSafe).replace(Consts_1.REGEX_BACKSLASH, '/');
26
25
  // If empty -> same path
27
26
  if (!relativePath || relativePath === '') {
28
27
  return './';
@@ -38,12 +37,9 @@ function relative(from, to) {
38
37
  // Otherwise make explicit relative path (./something)
39
38
  return `./${relativePath}`;
40
39
  }
41
- function resolve(...pathSegments) {
42
- return path_1.default.resolve(...pathSegments).replace(Consts_1.SEARCH_REGEXP, '/');
40
+ function resolveHelper(...pathSegments) {
41
+ return path_1.default.resolve(...pathSegments).replace(Consts_1.REGEX_BACKSLASH, '/');
43
42
  }
44
- function normalize(p) {
45
- return path_1.default.normalize(p).replace(Consts_1.SEARCH_REGEXP, '/');
46
- }
47
- function joinToDir(parentFilePath, fileName) {
48
- return resolve(dirName(parentFilePath), fileName);
43
+ function normalizeHelper(p) {
44
+ return path_1.default.normalize(p).replace(Consts_1.REGEX_BACKSLASH, '/');
49
45
  }
@@ -0,0 +1,2 @@
1
+ export declare function safeHasOwn<T extends object>(obj: T, key: PropertyKey): key is keyof T;
2
+ //# sourceMappingURL=safeHasOwn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeHasOwn.d.ts","sourceRoot":"","sources":["../../../src/common/utils/safeHasOwn.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,GAAG,GAAG,IAAI,MAAM,CAAC,CAKrF"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.safeHasOwn = safeHasOwn;
4
+ function safeHasOwn(obj, key) {
5
+ if (typeof Object.hasOwn === 'function') {
6
+ return Object.hasOwn(obj, key);
7
+ }
8
+ return Object.prototype.hasOwnProperty.call(obj, key);
9
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../src/core/Context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAC,MAAM,yBAAyB,CAAC;AAK/C,KAAK,aAAa,GAAG;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAA;AAED,KAAK,QAAQ,GAAG;IACZ,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,eAAe,GAAG,eAAe,GAAG,eAAe,CAAC;IAC7E,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,EAAE,CAAC;IACpC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,qBAAa,OAAO;IAChB,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,OAAO,CAAc;IACtB,MAAM,EAAE,eAAe,CAI5B;IAEF,OAAO,CAAC,eAAe,CAAkB;gBAE7B,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,aAAa;IAmB7D,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO;IAKhC,MAAM,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAO/C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,eAAe;IAOtE,KAAK,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAOnC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO7B,QAAQ,IAAI,MAAM;IAOzB,IAAW,MAAM,gBAKhB;IAED,IAAW,cAAc,YAExB;IAED,IAAW,IAAI,IAAI,KAAK,GAAG,SAAS,CAEnC;CACJ"}
1
+ {"version":3,"file":"Context.d.ts","sourceRoot":"","sources":["../../src/core/Context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGhF,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAIhD,KAAK,aAAa,GAAG;IACjB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,KAAK,QAAQ,GAAG;IACZ,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChD,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,eAAe,GAAG,eAAe,GAAG,eAAe,CAAC;IAC7E,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,EAAE,CAAC;IACpC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC;CACvC,CAAC;AAEF;;GAEG;AACH,qBAAa,OAAO;IAChB,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,OAAO,CAAc;IACtB,MAAM,EAAE,eAAe,CAI5B;IAEF,OAAO,CAAC,eAAe,CAAkB;gBAE7B,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,aAAa;IAmB7D,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO;IAKhC,MAAM,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAO/C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,eAAe,GAAG,eAAe;IAOtE,KAAK,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAOnC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAO7B,QAAQ,IAAI,MAAM;IAOzB,IAAW,MAAM,gBAKhB;IAED,IAAW,cAAc,YAExB;IAED,IAAW,IAAI,IAAI,KAAK,GAAG,SAAS,CAEnC;CACJ"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Context = void 0;
4
+ const pathHelpers_1 = require("../common/utils/pathHelpers");
4
5
  const getFileName_1 = require("./utils/getFileName");
5
6
  const isString_1 = require("./utils/isString");
6
- const pathHelpers_1 = require("./utils/pathHelpers");
7
7
  /**
8
8
  * A Context wich can share a data between methods
9
9
  */
@@ -21,10 +21,10 @@ class Context {
21
21
  this._output = output;
22
22
  this._refs = {};
23
23
  if ((0, isString_1.isString)(input)) {
24
- this._root = { path: (0, pathHelpers_1.dirName)(input), fileName: (0, getFileName_1.getFileName)(input) };
24
+ this._root = { dirName: (0, pathHelpers_1.dirNameHelper)(input), path: input, fileName: (0, getFileName_1.getFileName)(input) };
25
25
  }
26
26
  else {
27
- this._root = { path: '' };
27
+ this._root = { dirName: '', path: '' };
28
28
  }
29
29
  if (prefix) {
30
30
  this.prefix = prefix;
@@ -0,0 +1,13 @@
1
+ import { TRawOptions } from '../common/TRawOptions';
2
+ import { WriteClient } from './WriteClient';
3
+ export declare class OpenApiClient {
4
+ private _writeClient;
5
+ get writeClient(): WriteClient;
6
+ private normalizeOptions;
7
+ private addDefaultValues;
8
+ private cleanOutputDirectories;
9
+ private generateCodeForItems;
10
+ private generateSingle;
11
+ generate(rawOptions: TRawOptions): Promise<void>;
12
+ }
13
+ //# sourceMappingURL=OpenApiClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenApiClient.d.ts","sourceRoot":"","sources":["../../src/core/OpenApiClient.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,WAAW,EAAsB,MAAM,uBAAuB,CAAC;AActF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,qBAAa,aAAa;IACtB,OAAO,CAAC,YAAY,CAA4B;IAEhD,IAAW,WAAW,gBAKrB;IAED,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,gBAAgB;YAyBV,sBAAsB;YAUtB,oBAAoB;YAmCpB,cAAc;IAiFtB,QAAQ,CAAC,UAAU,EAAE,WAAW;CAWzC"}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenApiClient = void 0;
4
+ const Consts_1 = require("../common/Consts");
5
+ const Logger_1 = require("../common/Logger");
6
+ const LoggerMessages_1 = require("../common/LoggerMessages");
7
+ const fileSystemHelpers_1 = require("../common/utils/fileSystemHelpers");
8
+ const pathHelpers_1 = require("../common/utils/pathHelpers");
9
+ const Parser_1 = require("./api/v2/Parser");
10
+ const Parser_2 = require("./api/v3/Parser");
11
+ const Context_1 = require("./Context");
12
+ const getOpenApiSpec_1 = require("./utils/getOpenApiSpec");
13
+ const getOpenApiVersion_1 = require("./utils/getOpenApiVersion");
14
+ const getOutputPaths_1 = require("./utils/getOutputPaths");
15
+ const postProcessClient_1 = require("./utils/postProcessClient");
16
+ const registerHandlebarTemplates_1 = require("./utils/registerHandlebarTemplates");
17
+ const WriteClient_1 = require("./WriteClient");
18
+ class OpenApiClient {
19
+ _writeClient = null;
20
+ get writeClient() {
21
+ if (!this._writeClient) {
22
+ throw new Error('WriteClient must be initialized');
23
+ }
24
+ return this._writeClient;
25
+ }
26
+ normalizeOptions(rawOptions) {
27
+ if (rawOptions.items && rawOptions.items.length > 0) {
28
+ // Для items: Наследуем глобальный request, если не переопределён
29
+ return rawOptions.items.map(item => ({
30
+ ...item,
31
+ request: item.request ?? rawOptions.request, // ?? для fallback на глобальный
32
+ }));
33
+ }
34
+ else {
35
+ // Плоский формат (из CLI или старого конфига): Один item с глобальным request
36
+ return [rawOptions];
37
+ }
38
+ }
39
+ addDefaultValues(item) {
40
+ return {
41
+ input: item.input || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.input,
42
+ output: item.output || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.output,
43
+ outputCore: item.outputCore || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.outputCore,
44
+ outputServices: item.outputServices || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.outputServices,
45
+ outputModels: item.outputModels || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.outputModels,
46
+ outputSchemas: item.outputSchemas || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.outputSchemas,
47
+ httpClient: item.httpClient || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.httpClient,
48
+ useOptions: item.useOptions ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.useOptions,
49
+ useUnionTypes: item.useUnionTypes ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.useUnionTypes,
50
+ excludeCoreServiceFiles: item.excludeCoreServiceFiles ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.excludeCoreServiceFiles,
51
+ includeSchemasFiles: item.includeSchemasFiles ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.includeSchemasFiles,
52
+ request: item.request || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.request,
53
+ interfacePrefix: item.interfacePrefix || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.interfacePrefix,
54
+ enumPrefix: item.enumPrefix || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.enumPrefix,
55
+ typePrefix: item.typePrefix || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.typePrefix,
56
+ useCancelableRequest: item.useCancelableRequest ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.useCancelableRequest,
57
+ logLevel: item.logLevel || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.logLevel,
58
+ logTarget: item.logTarget || Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.logTarget,
59
+ sortByRequired: item.sortByRequired ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.sortByRequired,
60
+ useSeparatedIndexes: item.useSeparatedIndexes ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.useSeparatedIndexes,
61
+ };
62
+ }
63
+ async cleanOutputDirectories(option) {
64
+ const outputDirs = [option.output, option.outputCore, option.outputSchemas, option.outputModels, option.outputServices];
65
+ for (const dir of outputDirs) {
66
+ if (dir) {
67
+ await fileSystemHelpers_1.fileSystemHelpers.rmdir(dir);
68
+ }
69
+ }
70
+ }
71
+ async generateCodeForItems(items) {
72
+ if (items.length === 0) {
73
+ throw new Error(LoggerMessages_1.LOGGER_MESSAGES.GENERATION.NO_OPTIONS);
74
+ }
75
+ this.writeClient.logger.forceInfo(LoggerMessages_1.LOGGER_MESSAGES.GENERATION.STARTED(items.length));
76
+ try {
77
+ const start = process.hrtime();
78
+ for (const option of items) {
79
+ await this.cleanOutputDirectories(option);
80
+ }
81
+ for (const option of items) {
82
+ const fileStart = process.hrtime();
83
+ await this.generateSingle(option);
84
+ const [fileSeconds, fileNanoseconds] = process.hrtime(fileStart);
85
+ const fileDuration = fileSeconds + fileNanoseconds / 1e6;
86
+ this.writeClient.logger.info(LoggerMessages_1.LOGGER_MESSAGES.GENERATION.DURATION_FOR_FILE(option.input, fileDuration.toFixed(2)));
87
+ }
88
+ if (items[0]?.useSeparatedIndexes) {
89
+ await this.writeClient.combineAndWrightSimple();
90
+ }
91
+ else {
92
+ await this.writeClient.combineAndWrite();
93
+ }
94
+ this.writeClient.logger.forceInfo(LoggerMessages_1.LOGGER_MESSAGES.GENERATION.FINISHED);
95
+ const [seconds, nanoseconds] = process.hrtime(start);
96
+ const durationInMs = seconds + nanoseconds / 1e6;
97
+ this.writeClient.logger.forceInfo(LoggerMessages_1.LOGGER_MESSAGES.GENERATION.FINISHED_WITH_DURATION(durationInMs.toFixed(2)));
98
+ }
99
+ catch (error) {
100
+ this.writeClient.logger.error(LoggerMessages_1.LOGGER_MESSAGES.ERROR.GENERIC(error.message));
101
+ }
102
+ this.writeClient.logger.shutdownLogger();
103
+ }
104
+ async generateSingle(item) {
105
+ const { input, output, outputCore, outputServices, outputModels, outputSchemas, httpClient, useOptions, useUnionTypes, excludeCoreServiceFiles, includeSchemasFiles, request, interfacePrefix, enumPrefix, typePrefix, useCancelableRequest, sortByRequired, useSeparatedIndexes, } = item;
106
+ const outputPaths = (0, getOutputPaths_1.getOutputPaths)({
107
+ output,
108
+ outputCore,
109
+ outputServices,
110
+ outputModels,
111
+ outputSchemas,
112
+ });
113
+ const absoluteInput = (0, pathHelpers_1.resolveHelper)(process.cwd(), input);
114
+ const context = new Context_1.Context({ input: absoluteInput, output: outputPaths, prefix: { interface: interfacePrefix, enum: enumPrefix, type: typePrefix }, sortByRequired });
115
+ const openApi = await (0, getOpenApiSpec_1.getOpenApiSpec)(context, absoluteInput);
116
+ const openApiVersion = (0, getOpenApiVersion_1.getOpenApiVersion)(openApi);
117
+ const templates = (0, registerHandlebarTemplates_1.registerHandlebarTemplates)({
118
+ httpClient,
119
+ useUnionTypes,
120
+ useOptions,
121
+ });
122
+ this.writeClient.logger.info(LoggerMessages_1.LOGGER_MESSAGES.OPENAPI.DEFINING_VERSION);
123
+ switch (openApiVersion) {
124
+ case getOpenApiVersion_1.OpenApiVersion.V2: {
125
+ const client = new Parser_1.Parser(context).parse(openApi);
126
+ const clientFinal = (0, postProcessClient_1.postProcessClient)(client);
127
+ this.writeClient.logger.info(LoggerMessages_1.LOGGER_MESSAGES.OPENAPI.WRITING_V2);
128
+ await this.writeClient.writeClient({
129
+ client: clientFinal,
130
+ templates,
131
+ outputPaths,
132
+ httpClient,
133
+ useOptions,
134
+ useUnionTypes,
135
+ excludeCoreServiceFiles,
136
+ includeSchemasFiles,
137
+ request,
138
+ useCancelableRequest,
139
+ useSeparatedIndexes,
140
+ });
141
+ break;
142
+ }
143
+ case getOpenApiVersion_1.OpenApiVersion.V3: {
144
+ const client = new Parser_2.Parser(context).parse(openApi);
145
+ const clientFinal = (0, postProcessClient_1.postProcessClient)(client);
146
+ this.writeClient.logger.info(LoggerMessages_1.LOGGER_MESSAGES.OPENAPI.WRITING_V3);
147
+ await this.writeClient.writeClient({
148
+ client: clientFinal,
149
+ templates,
150
+ outputPaths,
151
+ httpClient,
152
+ useOptions,
153
+ useUnionTypes,
154
+ excludeCoreServiceFiles,
155
+ includeSchemasFiles,
156
+ request,
157
+ useCancelableRequest,
158
+ useSeparatedIndexes,
159
+ });
160
+ break;
161
+ }
162
+ }
163
+ }
164
+ async generate(rawOptions) {
165
+ const logger = new Logger_1.Logger({
166
+ level: rawOptions.logLevel ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.logLevel,
167
+ instanceId: 'client',
168
+ logOutput: rawOptions.logTarget ?? Consts_1.COMMON_DEFAULT_OPTIONS_VALUES.logTarget,
169
+ });
170
+ this._writeClient = new WriteClient_1.WriteClient(logger);
171
+ const items = this.normalizeOptions(rawOptions).map(item => this.addDefaultValues(item));
172
+ await this.generateCodeForItems(items);
173
+ }
174
+ }
175
+ exports.OpenApiClient = OpenApiClient;
@@ -46,7 +46,7 @@ type TAPIClientGeneratorConfig = Omit<TWriteClientProps, 'httpClient' | 'useOpti
46
46
  export declare class WriteClient {
47
47
  private config;
48
48
  private _logger;
49
- constructor();
49
+ constructor(logger?: Logger);
50
50
  /**
51
51
  * Write our OpenAPI client, using the given templates at the given output
52
52
  * @param client Client object with all the models, services, etc.
@@ -1 +1 @@
1
- {"version":3,"file":"WriteClient.d.ts","sourceRoot":"","sources":["../../src/core/WriteClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAI1C,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAI1D,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE;;;;;;;;;;;;GAYG;AACH,KAAK,iBAAiB,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,EAAE,OAAO,CAAC;IACjC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,KAAK,yBAAyB,GAAG,IAAI,CAAC,iBAAiB,EAAE,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,sBAAsB,GAAG,qBAAqB,CAAC,CAAC;AAEnJ;;GAEG;AACH,qBAAa,WAAW;IACpB,OAAO,CAAC,MAAM,CAAuD;IACrE,OAAO,CAAC,OAAO,CAAS;;IAUxB;;;;;;;;;;;;OAYG;IACG,WAAW,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2F5D;;;OAGG;IACH,6BAA6B,CAAC,MAAM,EAAE,yBAAyB;IAUzD,eAAe;IAKf,sBAAsB;IAK5B,IAAW,MAAM,WAEhB;IAED,OAAO,CAAC,yBAAyB;IAyCjC,OAAO,CAAC,mBAAmB;YA4Db,gBAAgB;YAUhB,uBAAuB;IAMrC,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,uBAAuB;IAe/B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,aAAa;IAId,eAAe,yBAAmB;IAClC,oBAAoB,8BAAwB;IAC5C,oBAAoB,8BAAwB;IAC5C,iBAAiB,2BAAqB;IACtC,sBAAsB,gCAA0B;IAChD,kBAAkB,4BAAsB;IACxC,uBAAuB,iCAA2B;IAClD,mBAAmB,6BAAuB;IAC1C,wBAAwB,kCAA4B;IACpD,sBAAsB,gCAA0B;CAC1D"}
1
+ {"version":3,"file":"WriteClient.d.ts","sourceRoot":"","sources":["../../src/core/WriteClient.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAM1C,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAG/D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE;;;;;;;;;;;;GAYG;AACH,KAAK,iBAAiB,GAAG;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,uBAAuB,EAAE,OAAO,CAAC;IACjC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,KAAK,yBAAyB,GAAG,IAAI,CAAC,iBAAiB,EAAE,YAAY,GAAG,YAAY,GAAG,SAAS,GAAG,sBAAsB,GAAG,qBAAqB,CAAC,CAAC;AAEnJ;;GAEG;AACH,qBAAa,WAAW;IACpB,OAAO,CAAC,MAAM,CAAuD;IACrE,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,CAAC,EAAE,MAAM;IAQ3B;;;;;;;;;;;;OAYG;IACG,WAAW,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2F5D;;;OAGG;IACH,6BAA6B,CAAC,MAAM,EAAE,yBAAyB;IAUzD,eAAe;IAKf,sBAAsB;IAK5B,IAAW,MAAM,WAEhB;IAED,OAAO,CAAC,yBAAyB;IAyCjC,OAAO,CAAC,mBAAmB;YA4Db,gBAAgB;YAUhB,uBAAuB;IAMrC,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,uBAAuB;IAe/B,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,aAAa;IAId,eAAe,yBAAmB;IAClC,oBAAoB,8BAAwB;IAC5C,oBAAoB,8BAAwB;IAC5C,iBAAiB,2BAAqB;IACtC,sBAAsB,gCAA0B;IAChD,kBAAkB,4BAAsB;IACxC,uBAAuB,iCAA2B;IAClD,mBAAmB,6BAAuB;IAC1C,wBAAwB,kCAA4B;IACpD,sBAAsB,gCAA0B;CAC1D"}