@nestia/sdk 14.0.0 → 14.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (391) hide show
  1. package/README.md +1 -1
  2. package/assets/bundle/distribute/build-sdk.cjs +28 -0
  3. package/assets/bundle/distribute/package.json +7 -3
  4. package/assets/bundle/distribute/tsconfig.json +15 -105
  5. package/lib/INestiaConfig.d.ts +74 -34
  6. package/lib/NestiaSdkApplication.d.ts +60 -0
  7. package/lib/NestiaSdkApplication.js +121 -32
  8. package/lib/NestiaSdkApplication.js.map +1 -1
  9. package/lib/NestiaSwaggerComposer.d.ts +21 -0
  10. package/lib/NestiaSwaggerComposer.js +32 -13
  11. package/lib/NestiaSwaggerComposer.js.map +1 -1
  12. package/lib/analyses/AccessorAnalyzer.d.ts +26 -0
  13. package/lib/analyses/AccessorAnalyzer.js +26 -0
  14. package/lib/analyses/AccessorAnalyzer.js.map +1 -1
  15. package/lib/analyses/ConfigAnalyzer.d.ts +41 -0
  16. package/lib/analyses/ConfigAnalyzer.js +52 -77
  17. package/lib/analyses/ConfigAnalyzer.js.map +1 -1
  18. package/lib/analyses/ImportAnalyzer.d.ts +25 -0
  19. package/lib/analyses/ImportAnalyzer.js +25 -0
  20. package/lib/analyses/ImportAnalyzer.js.map +1 -1
  21. package/lib/analyses/ParameterNameAnalyzer.d.ts +44 -0
  22. package/lib/analyses/ParameterNameAnalyzer.js +63 -0
  23. package/lib/analyses/ParameterNameAnalyzer.js.map +1 -0
  24. package/lib/analyses/PathAnalyzer.d.ts +93 -1
  25. package/lib/analyses/PathAnalyzer.js +160 -23
  26. package/lib/analyses/PathAnalyzer.js.map +1 -1
  27. package/lib/analyses/ReflectControllerAnalyzer.d.ts +32 -0
  28. package/lib/analyses/ReflectControllerAnalyzer.js +24 -1
  29. package/lib/analyses/ReflectControllerAnalyzer.js.map +1 -1
  30. package/lib/analyses/ReflectHttpOperationAnalyzer.d.ts +29 -0
  31. package/lib/analyses/ReflectHttpOperationAnalyzer.js +35 -24
  32. package/lib/analyses/ReflectHttpOperationAnalyzer.js.map +1 -1
  33. package/lib/analyses/ReflectHttpOperationExceptionAnalyzer.d.ts +31 -0
  34. package/lib/analyses/ReflectHttpOperationExceptionAnalyzer.js +21 -0
  35. package/lib/analyses/ReflectHttpOperationExceptionAnalyzer.js.map +1 -1
  36. package/lib/analyses/ReflectHttpOperationParameterAnalyzer.d.ts +31 -0
  37. package/lib/analyses/ReflectHttpOperationParameterAnalyzer.js +143 -23
  38. package/lib/analyses/ReflectHttpOperationParameterAnalyzer.js.map +1 -1
  39. package/lib/analyses/ReflectHttpOperationResponseAnalyzer.d.ts +32 -0
  40. package/lib/analyses/ReflectHttpOperationResponseAnalyzer.js +27 -2
  41. package/lib/analyses/ReflectHttpOperationResponseAnalyzer.js.map +1 -1
  42. package/lib/analyses/ReflectMcpOperationAnalyzer.d.ts +29 -0
  43. package/lib/analyses/ReflectMcpOperationAnalyzer.js +35 -11
  44. package/lib/analyses/ReflectMcpOperationAnalyzer.js.map +1 -1
  45. package/lib/analyses/ReflectMetadataAnalyzer.d.ts +47 -0
  46. package/lib/analyses/ReflectMetadataAnalyzer.js +47 -0
  47. package/lib/analyses/ReflectMetadataAnalyzer.js.map +1 -1
  48. package/lib/analyses/ReflectWebSocketOperationAnalyzer.d.ts +29 -0
  49. package/lib/analyses/ReflectWebSocketOperationAnalyzer.js +27 -5
  50. package/lib/analyses/ReflectWebSocketOperationAnalyzer.js.map +1 -1
  51. package/lib/analyses/SecurityAnalyzer.d.ts +25 -0
  52. package/lib/analyses/SecurityAnalyzer.js +39 -19
  53. package/lib/analyses/SecurityAnalyzer.js.map +1 -1
  54. package/lib/analyses/SwaggerExampleAnalyzer.d.ts +31 -0
  55. package/lib/analyses/SwaggerExampleAnalyzer.js +36 -0
  56. package/lib/analyses/SwaggerExampleAnalyzer.js.map +1 -0
  57. package/lib/analyses/TypedHttpRouteAnalyzer.d.ts +41 -3
  58. package/lib/analyses/TypedHttpRouteAnalyzer.js +196 -172
  59. package/lib/analyses/TypedHttpRouteAnalyzer.js.map +1 -1
  60. package/lib/analyses/TypedMcpRouteAnalyzer.d.ts +29 -0
  61. package/lib/analyses/TypedMcpRouteAnalyzer.js +152 -20
  62. package/lib/analyses/TypedMcpRouteAnalyzer.js.map +1 -1
  63. package/lib/analyses/TypedWebSocketRouteAnalyzer.d.ts +19 -0
  64. package/lib/analyses/TypedWebSocketRouteAnalyzer.js +20 -1
  65. package/lib/analyses/TypedWebSocketRouteAnalyzer.js.map +1 -1
  66. package/lib/decorators/OperationMetadata.d.ts +6 -0
  67. package/lib/decorators/OperationMetadata.js +6 -0
  68. package/lib/decorators/OperationMetadata.js.map +1 -1
  69. package/lib/executable/internal/CommandParser.d.ts +19 -0
  70. package/lib/executable/internal/CommandParser.js +19 -0
  71. package/lib/executable/internal/CommandParser.js.map +1 -1
  72. package/lib/executable/internal/NestiaConfigLoader.d.ts +56 -0
  73. package/lib/executable/internal/NestiaConfigLoader.js +48 -42
  74. package/lib/executable/internal/NestiaConfigLoader.js.map +1 -1
  75. package/lib/executable/internal/NestiaSdkCommand.d.ts +60 -0
  76. package/lib/executable/internal/NestiaSdkCommand.js +95 -3
  77. package/lib/executable/internal/NestiaSdkCommand.js.map +1 -1
  78. package/lib/executable/internal/NestiaSdkWatcher.d.ts +81 -0
  79. package/lib/executable/internal/NestiaSdkWatcher.js +125 -41
  80. package/lib/executable/internal/NestiaSdkWatcher.js.map +1 -1
  81. package/lib/executable/internal/NestiaSwaggerWatch.d.ts +80 -0
  82. package/lib/executable/internal/NestiaSwaggerWatch.js +308 -0
  83. package/lib/executable/internal/NestiaSwaggerWatch.js.map +1 -0
  84. package/lib/executable/sdk.js +16 -1
  85. package/lib/executable/sdk.js.map +1 -1
  86. package/lib/factories/ExpressionFactory.d.ts +18 -0
  87. package/lib/factories/ExpressionFactory.js +21 -2
  88. package/lib/factories/ExpressionFactory.js.map +1 -1
  89. package/lib/factories/IdentifierFactory.d.ts +24 -0
  90. package/lib/factories/IdentifierFactory.js +24 -0
  91. package/lib/factories/IdentifierFactory.js.map +1 -1
  92. package/lib/factories/LiteralFactory.d.ts +22 -4
  93. package/lib/factories/LiteralFactory.js +33 -11
  94. package/lib/factories/LiteralFactory.js.map +1 -1
  95. package/lib/factories/StatementFactory.d.ts +28 -1
  96. package/lib/factories/StatementFactory.js +28 -1
  97. package/lib/factories/StatementFactory.js.map +1 -1
  98. package/lib/factories/TypeFactory.d.ts +24 -0
  99. package/lib/factories/TypeFactory.js +15 -0
  100. package/lib/factories/TypeFactory.js.map +1 -1
  101. package/lib/generates/CloneGenerator.d.ts +22 -0
  102. package/lib/generates/CloneGenerator.js +26 -5
  103. package/lib/generates/CloneGenerator.js.map +1 -1
  104. package/lib/generates/E2eGenerator.d.ts +19 -0
  105. package/lib/generates/E2eGenerator.js +19 -0
  106. package/lib/generates/E2eGenerator.js.map +1 -1
  107. package/lib/generates/SdkGenerator.d.ts +38 -0
  108. package/lib/generates/SdkGenerator.js +43 -5
  109. package/lib/generates/SdkGenerator.js.map +1 -1
  110. package/lib/generates/SwaggerGenerator.d.ts +36 -6
  111. package/lib/generates/SwaggerGenerator.js +190 -40
  112. package/lib/generates/SwaggerGenerator.js.map +1 -1
  113. package/lib/generates/internal/E2eFileProgrammer.d.ts +19 -0
  114. package/lib/generates/internal/E2eFileProgrammer.js +20 -1
  115. package/lib/generates/internal/E2eFileProgrammer.js.map +1 -1
  116. package/lib/generates/internal/FilePrinter.d.ts +57 -0
  117. package/lib/generates/internal/FilePrinter.js +74 -0
  118. package/lib/generates/internal/FilePrinter.js.map +1 -1
  119. package/lib/generates/internal/ImportDictionary.d.ts +93 -1
  120. package/lib/generates/internal/ImportDictionary.js +103 -2
  121. package/lib/generates/internal/ImportDictionary.js.map +1 -1
  122. package/lib/generates/internal/SdkAliasCollection.d.ts +121 -1
  123. package/lib/generates/internal/SdkAliasCollection.js +132 -11
  124. package/lib/generates/internal/SdkAliasCollection.js.map +1 -1
  125. package/lib/generates/internal/SdkDistributionComposer.d.ts +19 -0
  126. package/lib/generates/internal/SdkDistributionComposer.js +149 -52
  127. package/lib/generates/internal/SdkDistributionComposer.js.map +1 -1
  128. package/lib/generates/internal/SdkFileProgrammer.d.ts +18 -0
  129. package/lib/generates/internal/SdkFileProgrammer.js +101 -12
  130. package/lib/generates/internal/SdkFileProgrammer.js.map +1 -1
  131. package/lib/generates/internal/SdkHttpCloneProgrammer.d.ts +29 -0
  132. package/lib/generates/internal/SdkHttpCloneProgrammer.js +33 -0
  133. package/lib/generates/internal/SdkHttpCloneProgrammer.js.map +1 -1
  134. package/lib/generates/internal/SdkHttpCloneReferencer.d.ts +19 -0
  135. package/lib/generates/internal/SdkHttpCloneReferencer.js +78 -25
  136. package/lib/generates/internal/SdkHttpCloneReferencer.js.map +1 -1
  137. package/lib/generates/internal/SdkHttpFunctionProgrammer.d.ts +19 -0
  138. package/lib/generates/internal/SdkHttpFunctionProgrammer.js +40 -23
  139. package/lib/generates/internal/SdkHttpFunctionProgrammer.js.map +1 -1
  140. package/lib/generates/internal/SdkHttpNamespaceProgrammer.d.ts +19 -0
  141. package/lib/generates/internal/SdkHttpNamespaceProgrammer.js +46 -34
  142. package/lib/generates/internal/SdkHttpNamespaceProgrammer.js.map +1 -1
  143. package/lib/generates/internal/SdkHttpParameterProgrammer.d.ts +142 -1
  144. package/lib/generates/internal/SdkHttpParameterProgrammer.js +175 -6
  145. package/lib/generates/internal/SdkHttpParameterProgrammer.js.map +1 -1
  146. package/lib/generates/internal/SdkHttpRouteProgrammer.d.ts +20 -0
  147. package/lib/generates/internal/SdkHttpRouteProgrammer.js +36 -32
  148. package/lib/generates/internal/SdkHttpRouteProgrammer.js.map +1 -1
  149. package/lib/generates/internal/SdkHttpSimulationProgrammer.d.ts +38 -0
  150. package/lib/generates/internal/SdkHttpSimulationProgrammer.js +66 -18
  151. package/lib/generates/internal/SdkHttpSimulationProgrammer.js.map +1 -1
  152. package/lib/generates/internal/SdkImportWizard.d.ts +63 -0
  153. package/lib/generates/internal/SdkImportWizard.js +63 -0
  154. package/lib/generates/internal/SdkImportWizard.js.map +1 -1
  155. package/lib/generates/internal/SdkMcpRouteProgrammer.d.ts +17 -2
  156. package/lib/generates/internal/SdkMcpRouteProgrammer.js +72 -24
  157. package/lib/generates/internal/SdkMcpRouteProgrammer.js.map +1 -1
  158. package/lib/generates/internal/SdkPathTemplate.d.ts +36 -0
  159. package/lib/generates/internal/SdkPathTemplate.js +65 -0
  160. package/lib/generates/internal/SdkPathTemplate.js.map +1 -0
  161. package/lib/generates/internal/SdkRouteDirectory.d.ts +10 -0
  162. package/lib/generates/internal/SdkRouteDirectory.js +10 -0
  163. package/lib/generates/internal/SdkRouteDirectory.js.map +1 -1
  164. package/lib/generates/internal/SdkTypeProgrammer.d.ts +54 -1
  165. package/lib/generates/internal/SdkTypeProgrammer.js +111 -27
  166. package/lib/generates/internal/SdkTypeProgrammer.js.map +1 -1
  167. package/lib/generates/internal/SdkTypeTagProgrammer.d.ts +53 -1
  168. package/lib/generates/internal/SdkTypeTagProgrammer.js +407 -67
  169. package/lib/generates/internal/SdkTypeTagProgrammer.js.map +1 -1
  170. package/lib/generates/internal/SdkWebSocketCloneProgrammer.d.ts +40 -0
  171. package/lib/generates/internal/SdkWebSocketCloneProgrammer.js +149 -142
  172. package/lib/generates/internal/SdkWebSocketCloneProgrammer.js.map +1 -1
  173. package/lib/generates/internal/SdkWebSocketNamespaceProgrammer.d.ts +19 -0
  174. package/lib/generates/internal/SdkWebSocketNamespaceProgrammer.js +46 -36
  175. package/lib/generates/internal/SdkWebSocketNamespaceProgrammer.js.map +1 -1
  176. package/lib/generates/internal/SdkWebSocketParameterProgrammer.d.ts +114 -1
  177. package/lib/generates/internal/SdkWebSocketParameterProgrammer.js +120 -5
  178. package/lib/generates/internal/SdkWebSocketParameterProgrammer.js.map +1 -1
  179. package/lib/generates/internal/SdkWebSocketRouteProgrammer.d.ts +18 -0
  180. package/lib/generates/internal/SdkWebSocketRouteProgrammer.js +75 -33
  181. package/lib/generates/internal/SdkWebSocketRouteProgrammer.js.map +1 -1
  182. package/lib/generates/internal/SwaggerDescriptionComposer.d.ts +42 -0
  183. package/lib/generates/internal/SwaggerDescriptionComposer.js +44 -1
  184. package/lib/generates/internal/SwaggerDescriptionComposer.js.map +1 -1
  185. package/lib/generates/internal/SwaggerOperationComposer.d.ts +18 -0
  186. package/lib/generates/internal/SwaggerOperationComposer.js +37 -8
  187. package/lib/generates/internal/SwaggerOperationComposer.js.map +1 -1
  188. package/lib/generates/internal/SwaggerOperationParameterComposer.d.ts +40 -1
  189. package/lib/generates/internal/SwaggerOperationParameterComposer.js +230 -25
  190. package/lib/generates/internal/SwaggerOperationParameterComposer.js.map +1 -1
  191. package/lib/generates/internal/SwaggerOperationResponseComposer.d.ts +21 -0
  192. package/lib/generates/internal/SwaggerOperationResponseComposer.js +58 -7
  193. package/lib/generates/internal/SwaggerOperationResponseComposer.js.map +1 -1
  194. package/lib/internal/legacy.d.ts +342 -31
  195. package/lib/internal/legacy.js +207 -31
  196. package/lib/internal/legacy.js.map +1 -1
  197. package/lib/structures/INestiaProject.d.ts +10 -0
  198. package/lib/structures/INestiaSdkInput.d.ts +30 -0
  199. package/lib/structures/IOperationMetadata.d.ts +77 -0
  200. package/lib/structures/IReflectController.d.ts +10 -0
  201. package/lib/structures/IReflectHttpOperation.d.ts +10 -0
  202. package/lib/structures/IReflectHttpOperationException.d.ts +13 -2
  203. package/lib/structures/IReflectHttpOperationParameter.d.ts +55 -3
  204. package/lib/structures/IReflectHttpOperationSuccess.d.ts +15 -3
  205. package/lib/structures/IReflectImport.d.ts +10 -0
  206. package/lib/structures/IReflectMcpOperation.d.ts +19 -0
  207. package/lib/structures/IReflectMcpOperationParameter.d.ts +9 -0
  208. package/lib/structures/IReflectOperationError.d.ts +28 -0
  209. package/lib/structures/IReflectOperationError.js +22 -2
  210. package/lib/structures/IReflectOperationError.js.map +1 -1
  211. package/lib/structures/IReflectType.d.ts +9 -0
  212. package/lib/structures/IReflectWebSocketOperation.d.ts +10 -0
  213. package/lib/structures/IReflectWebSocketOperationParameter.d.ts +55 -0
  214. package/lib/structures/ITypedApplication.d.ts +10 -0
  215. package/lib/structures/ITypedHttpRoute.d.ts +18 -0
  216. package/lib/structures/ITypedHttpRouteException.d.ts +13 -1
  217. package/lib/structures/ITypedHttpRouteParameter.d.ts +48 -1
  218. package/lib/structures/ITypedHttpRouteSuccess.d.ts +13 -1
  219. package/lib/structures/ITypedMcpRoute.d.ts +11 -0
  220. package/lib/structures/ITypedWebSocketRoute.d.ts +18 -0
  221. package/lib/transform.d.ts +6 -0
  222. package/lib/transform.js +6 -0
  223. package/lib/transform.js.map +1 -1
  224. package/lib/utils/ArrayUtil.d.ts +31 -1
  225. package/lib/utils/ArrayUtil.js +32 -11
  226. package/lib/utils/ArrayUtil.js.map +1 -1
  227. package/lib/utils/EmittedJavaScriptPatcher.d.ts +20 -0
  228. package/lib/utils/EmittedJavaScriptPatcher.js +65 -46
  229. package/lib/utils/EmittedJavaScriptPatcher.js.map +1 -1
  230. package/lib/utils/FileRetriever.d.ts +29 -0
  231. package/lib/utils/FileRetriever.js +29 -0
  232. package/lib/utils/FileRetriever.js.map +1 -1
  233. package/lib/utils/HttpResponseContentTypeUtil.d.ts +41 -0
  234. package/lib/utils/HttpResponseContentTypeUtil.js +31 -0
  235. package/lib/utils/HttpResponseContentTypeUtil.js.map +1 -1
  236. package/lib/utils/MapUtil.d.ts +64 -1
  237. package/lib/utils/MapUtil.js +24 -3
  238. package/lib/utils/MapUtil.js.map +1 -1
  239. package/lib/utils/PathUtil.d.ts +31 -0
  240. package/lib/utils/PathUtil.js +38 -0
  241. package/lib/utils/PathUtil.js.map +1 -1
  242. package/lib/utils/SdkBundlePath.d.ts +2 -0
  243. package/lib/utils/SdkBundlePath.js +10 -0
  244. package/lib/utils/SdkBundlePath.js.map +1 -0
  245. package/lib/utils/SdkInputFilter.d.ts +31 -0
  246. package/lib/utils/SdkInputFilter.js +115 -0
  247. package/lib/utils/SdkInputFilter.js.map +1 -0
  248. package/lib/utils/SourceFinder.d.ts +45 -0
  249. package/lib/utils/SourceFinder.js +74 -16
  250. package/lib/utils/SourceFinder.js.map +1 -1
  251. package/lib/utils/StringUtil.d.ts +77 -2
  252. package/lib/utils/StringUtil.js +166 -4
  253. package/lib/utils/StringUtil.js.map +1 -1
  254. package/lib/utils/TemporaryDirectory.d.ts +60 -0
  255. package/lib/utils/TemporaryDirectory.js +112 -0
  256. package/lib/utils/TemporaryDirectory.js.map +1 -0
  257. package/lib/utils/TsConfigReader.d.ts +42 -0
  258. package/lib/utils/TsConfigReader.js +98 -14
  259. package/lib/utils/TsConfigReader.js.map +1 -1
  260. package/lib/utils/TtscExecutor.d.ts +23 -1
  261. package/lib/utils/TtscExecutor.js +22 -0
  262. package/lib/utils/TtscExecutor.js.map +1 -1
  263. package/lib/utils/VersioningStrategy.d.ts +39 -2
  264. package/lib/utils/VersioningStrategy.js +46 -13
  265. package/lib/utils/VersioningStrategy.js.map +1 -1
  266. package/lib/validators/TextPlainValidator.d.ts +19 -0
  267. package/lib/validators/TextPlainValidator.js +19 -0
  268. package/lib/validators/TextPlainValidator.js.map +1 -1
  269. package/native/go.mod +1 -1
  270. package/native/go.sum +2 -2
  271. package/native/sdk/register.go +12 -2
  272. package/native/sdk/sdk_http_rules.go +210 -0
  273. package/native/sdk/sdk_metadata_json.go +79 -4
  274. package/native/sdk/sdk_transform.go +1157 -414
  275. package/package.json +8 -6
  276. package/src/INestiaConfig.ts +74 -34
  277. package/src/NestiaSdkApplication.ts +129 -41
  278. package/src/NestiaSwaggerComposer.ts +32 -14
  279. package/src/analyses/AccessorAnalyzer.ts +26 -0
  280. package/src/analyses/ConfigAnalyzer.ts +52 -90
  281. package/src/analyses/ImportAnalyzer.ts +25 -0
  282. package/src/analyses/ParameterNameAnalyzer.ts +75 -0
  283. package/src/analyses/PathAnalyzer.ts +167 -23
  284. package/src/analyses/ReflectControllerAnalyzer.ts +34 -1
  285. package/src/analyses/ReflectHttpOperationAnalyzer.ts +36 -14
  286. package/src/analyses/ReflectHttpOperationExceptionAnalyzer.ts +31 -0
  287. package/src/analyses/ReflectHttpOperationParameterAnalyzer.ts +153 -39
  288. package/src/analyses/ReflectHttpOperationResponseAnalyzer.ts +38 -7
  289. package/src/analyses/ReflectMcpOperationAnalyzer.ts +38 -3
  290. package/src/analyses/ReflectMetadataAnalyzer.ts +47 -0
  291. package/src/analyses/ReflectWebSocketOperationAnalyzer.ts +40 -7
  292. package/src/analyses/SecurityAnalyzer.ts +45 -20
  293. package/src/analyses/SwaggerExampleAnalyzer.ts +39 -0
  294. package/src/analyses/TypedHttpRouteAnalyzer.ts +263 -198
  295. package/src/analyses/TypedMcpRouteAnalyzer.ts +180 -20
  296. package/src/analyses/TypedWebSocketRouteAnalyzer.ts +20 -0
  297. package/src/decorators/OperationMetadata.ts +6 -0
  298. package/src/executable/internal/CommandParser.ts +19 -0
  299. package/src/executable/internal/NestiaConfigLoader.ts +66 -50
  300. package/src/executable/internal/NestiaSdkCommand.ts +96 -3
  301. package/src/executable/internal/NestiaSdkWatcher.ts +172 -44
  302. package/src/executable/internal/NestiaSwaggerWatch.ts +359 -0
  303. package/src/executable/sdk.ts +24 -1
  304. package/src/factories/ExpressionFactory.ts +23 -2
  305. package/src/factories/IdentifierFactory.ts +24 -0
  306. package/src/factories/LiteralFactory.ts +51 -13
  307. package/src/factories/StatementFactory.ts +28 -1
  308. package/src/factories/TypeFactory.ts +24 -0
  309. package/src/generates/CloneGenerator.ts +26 -5
  310. package/src/generates/E2eGenerator.ts +19 -0
  311. package/src/generates/SdkGenerator.ts +43 -12
  312. package/src/generates/SwaggerGenerator.ts +229 -46
  313. package/src/generates/internal/E2eFileProgrammer.ts +20 -0
  314. package/src/generates/internal/FilePrinter.ts +71 -0
  315. package/src/generates/internal/ImportDictionary.ts +120 -2
  316. package/src/generates/internal/SdkAliasCollection.ts +144 -15
  317. package/src/generates/internal/SdkDistributionComposer.ts +181 -56
  318. package/src/generates/internal/SdkFileProgrammer.ts +126 -16
  319. package/src/generates/internal/SdkHttpCloneProgrammer.ts +55 -0
  320. package/src/generates/internal/SdkHttpCloneReferencer.ts +97 -23
  321. package/src/generates/internal/SdkHttpFunctionProgrammer.ts +47 -30
  322. package/src/generates/internal/SdkHttpNamespaceProgrammer.ts +53 -64
  323. package/src/generates/internal/SdkHttpParameterProgrammer.ts +295 -13
  324. package/src/generates/internal/SdkHttpRouteProgrammer.ts +37 -31
  325. package/src/generates/internal/SdkHttpSimulationProgrammer.ts +122 -18
  326. package/src/generates/internal/SdkImportWizard.ts +63 -0
  327. package/src/generates/internal/SdkMcpRouteProgrammer.ts +150 -33
  328. package/src/generates/internal/SdkPathTemplate.ts +88 -0
  329. package/src/generates/internal/SdkRouteDirectory.ts +10 -0
  330. package/src/generates/internal/SdkTypeProgrammer.ts +137 -36
  331. package/src/generates/internal/SdkTypeTagProgrammer.ts +536 -78
  332. package/src/generates/internal/SdkWebSocketCloneProgrammer.ts +185 -142
  333. package/src/generates/internal/SdkWebSocketNamespaceProgrammer.ts +62 -68
  334. package/src/generates/internal/SdkWebSocketParameterProgrammer.ts +205 -5
  335. package/src/generates/internal/SdkWebSocketRouteProgrammer.ts +89 -48
  336. package/src/generates/internal/SwaggerDescriptionComposer.ts +47 -1
  337. package/src/generates/internal/SwaggerOperationComposer.ts +38 -6
  338. package/src/generates/internal/SwaggerOperationParameterComposer.ts +318 -36
  339. package/src/generates/internal/SwaggerOperationResponseComposer.ts +74 -11
  340. package/src/internal/legacy-augmentation.d.ts +16 -0
  341. package/src/internal/legacy.ts +407 -49
  342. package/src/structures/INestiaProject.ts +10 -0
  343. package/src/structures/INestiaSdkInput.ts +30 -0
  344. package/src/structures/IOperationMetadata.ts +83 -0
  345. package/src/structures/IReflectController.ts +10 -0
  346. package/src/structures/IReflectHttpOperation.ts +10 -0
  347. package/src/structures/IReflectHttpOperationException.ts +17 -2
  348. package/src/structures/IReflectHttpOperationParameter.ts +56 -2
  349. package/src/structures/IReflectHttpOperationSuccess.ts +19 -3
  350. package/src/structures/IReflectImport.ts +10 -0
  351. package/src/structures/IReflectMcpOperation.ts +19 -0
  352. package/src/structures/IReflectMcpOperationParameter.ts +9 -0
  353. package/src/structures/IReflectOperationError.ts +31 -2
  354. package/src/structures/IReflectType.ts +9 -0
  355. package/src/structures/IReflectWebSocketOperation.ts +10 -0
  356. package/src/structures/IReflectWebSocketOperationParameter.ts +55 -0
  357. package/src/structures/ITypedApplication.ts +10 -0
  358. package/src/structures/ITypedHttpRoute.ts +18 -0
  359. package/src/structures/ITypedHttpRouteException.ts +14 -1
  360. package/src/structures/ITypedHttpRouteParameter.ts +48 -1
  361. package/src/structures/ITypedHttpRouteSuccess.ts +14 -1
  362. package/src/structures/ITypedMcpRoute.ts +12 -0
  363. package/src/structures/ITypedWebSocketRoute.ts +18 -0
  364. package/src/transform.ts +6 -0
  365. package/src/utils/ArrayUtil.ts +32 -13
  366. package/src/utils/EmittedJavaScriptPatcher.ts +70 -47
  367. package/src/utils/FileRetriever.ts +29 -0
  368. package/src/utils/HttpResponseContentTypeUtil.ts +41 -0
  369. package/src/utils/MapUtil.ts +68 -3
  370. package/src/utils/PathUtil.ts +38 -0
  371. package/src/utils/SdkBundlePath.ts +11 -0
  372. package/src/utils/SdkInputFilter.ts +108 -0
  373. package/src/utils/SourceFinder.ts +76 -18
  374. package/src/utils/StringUtil.ts +182 -5
  375. package/src/utils/TemporaryDirectory.ts +108 -0
  376. package/src/utils/TsConfigReader.ts +124 -26
  377. package/src/utils/TtscExecutor.ts +23 -1
  378. package/src/utils/VersioningStrategy.ts +51 -16
  379. package/src/validators/TextPlainValidator.ts +19 -0
  380. package/lib/generates/internal/SwaggerReadonlyArrayEmender.d.ts +0 -9
  381. package/lib/generates/internal/SwaggerReadonlyArrayEmender.js +0 -178
  382. package/lib/generates/internal/SwaggerReadonlyArrayEmender.js.map +0 -1
  383. package/lib/validators/HttpHeadersValidator.d.ts +0 -11
  384. package/lib/validators/HttpHeadersValidator.js +0 -15
  385. package/lib/validators/HttpHeadersValidator.js.map +0 -1
  386. package/lib/validators/HttpQueryValidator.d.ts +0 -10
  387. package/lib/validators/HttpQueryValidator.js +0 -14
  388. package/lib/validators/HttpQueryValidator.js.map +0 -1
  389. package/src/generates/internal/SwaggerReadonlyArrayEmender.ts +0 -264
  390. package/src/validators/HttpHeadersValidator.ts +0 -12
  391. package/src/validators/HttpQueryValidator.ts +0 -11
@@ -29,10 +29,35 @@ const SwaggerGenerator_1 = require("./generates/SwaggerGenerator");
29
29
  const IReflectOperationError_1 = require("./structures/IReflectOperationError");
30
30
  const StringUtil_1 = require("./utils/StringUtil");
31
31
  const VersioningStrategy_1 = require("./utils/VersioningStrategy");
32
+ /**
33
+ * Runs the generators of `@nestia/sdk` over one configuration.
34
+ *
35
+ * Each method validates the configuration for the output it needs, analyzes the
36
+ * controllers and the TypeScript metadata, reports every error at once, and
37
+ * then generates.
38
+ *
39
+ * @evidence contracts/common.md#principled-implementation The shared pipeline reflects controllers, types routes from transform metadata, assigns accessors and rejects collected analysis errors before writing. SDK-specific representability checks are attached by sdk and SDK-producing all; e2e currently invokes the SDK writer without that additional validation callback.
40
+ * @evidence contracts/common.md#clear-and-simple-design One class with four public generators over one private pipeline; directory assertion, title, and error report are module-private helpers.
41
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts No controller or route name is special-cased; the same pipeline serves the CLI and programmatic callers.
42
+ * @evidence contracts/common.md#meaningful-documentation The comment states the four generators and that the errors of an analysis are reported together.
43
+ * @evidence contracts/portability.md#os-neutral-implementation Output checks and diagnostic locations use Node fs.stat and path operations; controller compilation and output writes remain owned by ConfigAnalyzer and the generators. Filesystem errors distinguish missing/non-directory locations from other native failures.
44
+ */
32
45
  class NestiaSdkApplication {
33
46
  constructor(config) {
34
47
  this.config = config;
35
48
  }
49
+ /**
50
+ * Generates everything the configuration asks for: the SDK and its e2e tests
51
+ * when `output` is set, and the Swagger document when `swagger` is set.
52
+ *
53
+ * It throws when neither `output` nor `swagger.output` is configured.
54
+ *
55
+ * @evidence contracts/common.md#principled-implementation The SDK validation is attached only when an SDK is generated, so a Swagger-only run does not fail on SDK rules, and the e2e tests are generated after the SDK they import.
56
+ * @evidence contracts/common.md#clear-and-simple-design One method that composes the generators inside the shared pipeline.
57
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The error names the properties a caller can configure; none is stale.
58
+ * @evidence contracts/common.md#meaningful-documentation The comment states what is generated and the failure.
59
+ * @evidence contracts/portability.md#os-neutral-implementation all delegates configured output creation to the native writers and does not apply the explicit parent-directory checks used by sdk/e2e/swagger. Diagnostic source paths are rendered relative to the current native working directory.
60
+ */
36
61
  all() {
37
62
  return __awaiter(this, void 0, void 0, function* () {
38
63
  var _a;
@@ -42,7 +67,6 @@ class NestiaSdkApplication {
42
67
  "",
43
68
  " - INestiaConfig.output",
44
69
  " - INestiaConfig.swagger.output",
45
- " - INestiaConfig.openai.output",
46
70
  ].join("\n"));
47
71
  print_title("Nestia All Generator");
48
72
  yield this.generate({
@@ -59,20 +83,36 @@ class NestiaSdkApplication {
59
83
  });
60
84
  });
61
85
  }
86
+ /**
87
+ * Generates the SDK and the automatic e2e test functions.
88
+ *
89
+ * It throws when `output` or `e2e` is missing, or when the parent directory
90
+ * of either does not exist.
91
+ *
92
+ * @evidence contracts/common.md#principled-implementation The e2e functions import the generated SDK, so the SDK is generated first, and both parent directories are asserted before any analysis runs.
93
+ * @evidence contracts/common.md#clear-and-simple-design One method over the shared pipeline.
94
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The directory check follows the configuration and no path is special-cased.
95
+ * @evidence contracts/common.md#meaningful-documentation The comment states the requirements and the failures.
96
+ * @evidence contracts/portability.md#os-neutral-implementation path.resolve obtains each native parent and fs.stat follows symlinks to verify a directory before analysis. ENOENT/ENOTDIR become configuration diagnostics; permission and other filesystem errors propagate without a platform-specific shell fallback.
97
+ */
62
98
  e2e() {
63
99
  return __awaiter(this, void 0, void 0, function* () {
64
100
  if (!this.config.output)
65
101
  throw new Error("Error on NestiaApplication.e2e(): configure INestiaConfig.output property.");
66
102
  else if (!this.config.e2e)
67
103
  throw new Error("Error on NestiaApplication.e2e(): configure INestiaConfig.e2e property.");
68
- const validate = (title) => (location) => __awaiter(this, void 0, void 0, function* () {
69
- const parent = path_1.default.resolve(location + "/..");
70
- const stats = yield fs_1.default.promises.lstat(parent);
71
- if (stats.isDirectory() === false)
72
- throw new Error(`Error on NestiaApplication.e2e(): output directory of ${title} does not exists.`);
104
+ yield assertDirectory({
105
+ method: "e2e",
106
+ property: "output",
107
+ location: this.config.output,
108
+ directory: path_1.default.resolve(this.config.output + "/.."),
109
+ });
110
+ yield assertDirectory({
111
+ method: "e2e",
112
+ property: "e2e",
113
+ location: this.config.e2e,
114
+ directory: path_1.default.resolve(this.config.e2e + "/.."),
73
115
  });
74
- yield validate("sdk")(this.config.output);
75
- yield validate("e2e")(this.config.e2e);
76
116
  print_title("Nestia E2E Generator");
77
117
  yield this.generate({
78
118
  generate: (app) => __awaiter(this, void 0, void 0, function* () {
@@ -82,14 +122,27 @@ class NestiaSdkApplication {
82
122
  });
83
123
  });
84
124
  }
125
+ /**
126
+ * Generates the SDK library.
127
+ *
128
+ * It throws when `output` is missing or its parent directory does not exist.
129
+ *
130
+ * @evidence contracts/common.md#principled-implementation The SDK validation runs after route typing and before the generator, so a route the SDK cannot express is reported instead of written.
131
+ * @evidence contracts/common.md#clear-and-simple-design One method over the shared pipeline.
132
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The directory check follows the configuration.
133
+ * @evidence contracts/common.md#meaningful-documentation The comment states the requirement and the failures.
134
+ * @evidence contracts/portability.md#os-neutral-implementation The configured output parent is resolved through Node path and verified by fs.stat, including linked directories. Generator writes use their own native boundaries; this entry does not infer case identity from an OS name.
135
+ */
85
136
  sdk() {
86
137
  return __awaiter(this, void 0, void 0, function* () {
87
138
  if (!this.config.output)
88
139
  throw new Error("Error on NestiaApplication.sdk(): configure INestiaConfig.output property.");
89
- const parent = path_1.default.resolve(this.config.output + "/..");
90
- const stats = yield fs_1.default.promises.lstat(parent);
91
- if (stats.isDirectory() === false)
92
- throw new Error("Error on NestiaApplication.sdk(): output directory does not exists.");
140
+ yield assertDirectory({
141
+ method: "sdk",
142
+ property: "output",
143
+ location: this.config.output,
144
+ directory: path_1.default.resolve(this.config.output + "/.."),
145
+ });
93
146
  print_title("Nestia SDK Generator");
94
147
  yield this.generate({
95
148
  generate: SdkGenerator_1.SdkGenerator.generate,
@@ -97,18 +150,32 @@ class NestiaSdkApplication {
97
150
  });
98
151
  });
99
152
  }
153
+ /**
154
+ * Generates the Swagger document.
155
+ *
156
+ * It throws when `swagger.output` is missing or the directory that will hold
157
+ * the document does not exist; the output may be a file or a directory.
158
+ *
159
+ * @evidence contracts/common.md#principled-implementation The directory to check is the parent of a file path with an extension and the path itself otherwise, which is how the generator decides where to write.
160
+ * @evidence contracts/common.md#clear-and-simple-design One method over the shared pipeline.
161
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The rule is the generator's own output rule.
162
+ * @evidence contracts/common.md#meaningful-documentation The comment states the requirement and the two output forms.
163
+ * @evidence contracts/portability.md#os-neutral-implementation path.parse/resolve decide the native containing directory from whether the output has an extension, matching SwaggerGenerator's destination rule. The common directory check distinguishes missing paths from non-directory entries and propagates other filesystem errors.
164
+ */
100
165
  swagger() {
101
166
  return __awaiter(this, void 0, void 0, function* () {
102
167
  var _a;
103
168
  if (!((_a = this.config.swagger) === null || _a === void 0 ? void 0 : _a.output))
104
169
  throw new Error(`Error on NestiaApplication.swagger(): configure INestiaConfig.swagger property.`);
105
170
  const parsed = path_1.default.parse(this.config.swagger.output);
106
- const directory = !!parsed.ext
107
- ? path_1.default.resolve(parsed.dir)
108
- : this.config.swagger.output;
109
- const stats = yield fs_1.default.promises.lstat(directory);
110
- if (stats.isDirectory() === false)
111
- throw new Error("Error on NestiaApplication.swagger(): output directory does not exists.");
171
+ yield assertDirectory({
172
+ method: "swagger",
173
+ property: "swagger.output",
174
+ location: this.config.swagger.output,
175
+ directory: !!parsed.ext
176
+ ? path_1.default.resolve(parsed.dir)
177
+ : path_1.default.resolve(this.config.swagger.output),
178
+ });
112
179
  print_title("Nestia Swagger Generator");
113
180
  yield this.generate({
114
181
  generate: SwaggerGenerator_1.SwaggerGenerator.generate,
@@ -118,7 +185,7 @@ class NestiaSdkApplication {
118
185
  generate(props) {
119
186
  return __awaiter(this, void 0, void 0, function* () {
120
187
  var _a, _b;
121
- var _c, _d, _e;
188
+ var _c;
122
189
  //----
123
190
  // ANALYZE REFLECTS
124
191
  //----
@@ -169,8 +236,6 @@ class NestiaSdkApplication {
169
236
  // ANALYZE TYPESCRIPT CODE
170
237
  //----
171
238
  console.log("Analyzing source codes");
172
- // METADATA COMPONENTS
173
- const sourceCollection = TypedHttpRouteAnalyzer_1.TypedHttpRouteAnalyzer.dictionary(controllers);
174
239
  // CONVERT TO TYPED OPERATIONS
175
240
  const routes = [];
176
241
  for (const c of controllers)
@@ -179,21 +244,23 @@ class NestiaSdkApplication {
179
244
  routes.push(...TypedMcpRouteAnalyzer_1.TypedMcpRouteAnalyzer.analyze({
180
245
  controller: c,
181
246
  operation: o,
247
+ clone: project.config.clone,
248
+ errors: project.errors,
182
249
  }));
183
250
  continue;
184
251
  }
185
252
  const pathList = new Set();
186
- const versions = VersioningStrategy_1.VersioningStrategy.merge(project)([
187
- ...((_c = c.versions) !== null && _c !== void 0 ? _c : []),
188
- ...((_d = o.versions) !== null && _d !== void 0 ? _d : []),
189
- ]);
253
+ const versions = VersioningStrategy_1.VersioningStrategy.merge(project)({
254
+ controller: c.versions,
255
+ method: o.versions,
256
+ });
190
257
  for (const v of versions)
191
258
  for (const prefix of wrapPaths(c.prefixes))
192
259
  for (const cPath of wrapPaths(c.paths))
193
260
  for (const filePath of wrapPaths(o.paths)) {
194
261
  const localPath = PathAnalyzer_1.PathAnalyzer.join(prefix, cPath, filePath);
195
262
  pathList.add(PathAnalyzer_1.PathAnalyzer.joinWithGlobalPrefix({
196
- globalPrefix: (_e = (_a = project.input.globalPrefix) === null || _a === void 0 ? void 0 : _a.prefix) !== null && _e !== void 0 ? _e : "",
263
+ globalPrefix: (_c = (_a = project.input.globalPrefix) === null || _a === void 0 ? void 0 : _a.prefix) !== null && _c !== void 0 ? _c : "",
197
264
  exclude: (_b = project.input.globalPrefix) === null || _b === void 0 ? void 0 : _b.exclude,
198
265
  excludePath: localPath,
199
266
  method: o.protocol === "http" ? o.method : "",
@@ -204,7 +271,6 @@ class NestiaSdkApplication {
204
271
  routes.push(...TypedHttpRouteAnalyzer_1.TypedHttpRouteAnalyzer.analyze({
205
272
  controller: c,
206
273
  errors: project.errors,
207
- dictionary: sourceCollection,
208
274
  operation: o,
209
275
  paths: Array.from(pathList),
210
276
  }));
@@ -216,7 +282,7 @@ class NestiaSdkApplication {
216
282
  }));
217
283
  }
218
284
  AccessorAnalyzer_1.AccessorAnalyzer.analyze(routes);
219
- const collection = TypedHttpRouteAnalyzer_1.TypedHttpRouteAnalyzer.routeDictionary(routes.filter((r) => r.protocol === "http"));
285
+ const collection = TypedHttpRouteAnalyzer_1.TypedHttpRouteAnalyzer.routeDictionary(routes.filter((r) => r.protocol !== "websocket"));
220
286
  if (props.validate !== undefined)
221
287
  project.errors.push(...props.validate({
222
288
  project,
@@ -237,6 +303,23 @@ class NestiaSdkApplication {
237
303
  }
238
304
  }
239
305
  exports.NestiaSdkApplication = NestiaSdkApplication;
306
+ /**
307
+ * Asserts the directory an output is written into exists, naming the configured
308
+ * location. `fs.promises.stat()` itself rejects a missing path, so it is caught
309
+ * rather than left to surface as a bare `ENOENT`; a symbolic link to a
310
+ * directory is followed.
311
+ */
312
+ const assertDirectory = (props) => __awaiter(void 0, void 0, void 0, function* () {
313
+ const stats = yield fs_1.default.promises
314
+ .stat(props.directory)
315
+ .catch((error) => {
316
+ if (error.code === "ENOENT" || error.code === "ENOTDIR")
317
+ return null;
318
+ throw error;
319
+ });
320
+ if (stats === null || stats.isDirectory() === false)
321
+ throw new Error(`Error on NestiaApplication.${props.method}(): directory ${JSON.stringify(props.directory)} of INestiaConfig.${props.property} ${JSON.stringify(props.location)} ${stats === null ? "does not exist" : "is not a directory"}.`);
322
+ });
240
323
  const print_title = (str) => {
241
324
  console.log("-----------------------------------------------------------");
242
325
  console.log(` ${str}`);
@@ -248,6 +331,8 @@ const report = (props) => {
248
331
  map.take(new IReflectOperationError_1.IReflectOperationError.Key(e), () => []).push(...e.contents);
249
332
  console.log("");
250
333
  print_title(`Nestia ${StringUtil_1.StringUtil.capitalize(props.type)} Report`);
334
+ // every contradiction at once, not only the first function's
335
+ const messages = [];
251
336
  for (const { first: { error }, second: contents, } of map) {
252
337
  if (error.contents.length === 0)
253
338
  continue;
@@ -256,7 +341,8 @@ const report = (props) => {
256
341
  `${location} - `,
257
342
  error.class,
258
343
  ...(error.function !== null ? [`.${error.function}()`] : [""]),
259
- ...(error.from !== null ? [` from ${error.from}`] : [""]),
344
+ // an empty origin names no part of the function
345
+ ...(error.from ? [` from ${error.from}`] : [""]),
260
346
  ":\n",
261
347
  contents
262
348
  .map((c) => {
@@ -264,19 +350,22 @@ const report = (props) => {
264
350
  return ` - ${c}`;
265
351
  else
266
352
  return [
353
+ // the property the type was found at, when there is one
267
354
  c.accessor
268
- ? ` - ${c.name}: `
269
- : ` - ${c.name} (${c.accessor}): `,
355
+ ? ` - ${c.name} (${c.accessor}): `
356
+ : ` - ${c.name}: `,
270
357
  ...c.messages.map((msg) => ` - ${msg}`),
271
358
  ].join("\n");
272
359
  })
273
360
  .join("\n"),
274
361
  ].join("");
275
362
  if (props.type === "error")
276
- throw new Error(message);
363
+ messages.push(message);
277
364
  else
278
365
  console.log(message);
279
366
  }
367
+ if (messages.length !== 0)
368
+ throw new Error(messages.join("\n\n"));
280
369
  };
281
370
  const wrapPaths = (paths) => paths.length === 0 ? [""] : paths;
282
371
  //# sourceMappingURL=NestiaSdkApplication.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaSdkApplication.js","sourceRoot":"","sources":["../src/NestiaSdkApplication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NestiaSdkApplication.js","sourceRoot":"","sources":["../src/NestiaSdkApplication.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,27 @@ import { INestApplication } from "@nestjs/common";
2
2
  import { OpenApiV3, OpenApiV3_1, SwaggerV2 } from "@typia/interface";
3
3
  import { OpenApi } from "typia";
4
4
  import { INestiaConfig } from "./INestiaConfig";
5
+ /**
6
+ * Composes the Swagger document of a running NestJS application, without files.
7
+ *
8
+ * @evidence contracts/common.md#principled-implementation The controllers are taken from the application's module graph and analyzed like the CLI does, and only the HTTP routes are composed.
9
+ * @evidence contracts/common.md#clear-and-simple-design One public function with a private analysis pipeline.
10
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts It uses the same analyzers and composer as the CLI, so both produce one document.
11
+ * @evidence contracts/common.md#meaningful-documentation The comment states its purpose.
12
+ * @evidence contracts/portability.md#os-neutral-implementation Controller source lookup is delegated to ConfigAnalyzer.application; diagnostic filenames use Node path.relative from process.cwd. Route paths and versions remain protocol text rather than native filesystem identity.
13
+ */
5
14
  export declare namespace NestiaSwaggerComposer {
15
+ /**
16
+ * Returns the OpenAPI document of the application in the requested version.
17
+ *
18
+ * The document is composed as OpenAPI 3.2 and converted to the configured
19
+ * older version; every analysis error is collected and thrown together.
20
+ *
21
+ * @evidence contracts/common.md#principled-implementation Composition runs at the newest version and `OpenApiConverter.downgradeDocument` produces the older ones, so version differences live in one converter, and a failure of the analysis throws one error that lists every problem.
22
+ * @evidence contracts/common.md#clear-and-simple-design One function over the shared analyzers and the Swagger generator.
23
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts No route is special-cased; the module graph is read through `ConfigAnalyzer.application`.
24
+ * @evidence contracts/common.md#meaningful-documentation The comment states the returned versions and the error behavior.
25
+ * @evidence contracts/portability.md#os-neutral-implementation The composer receives an existing application and writes no output file. Its delegated controller discovery obtains native source locations, and its report renders those locations through path.relative; initialize may read package metadata for default info.
26
+ */
6
27
  const document: (app: INestApplication, config: Omit<INestiaConfig.ISwaggerConfig, "output">) => Promise<OpenApi.IDocument | OpenApiV3_1.IDocument | OpenApiV3.IDocument | SwaggerV2.IDocument>;
7
28
  }
@@ -24,8 +24,29 @@ const TypedHttpRouteAnalyzer_1 = require("./analyses/TypedHttpRouteAnalyzer");
24
24
  const SwaggerGenerator_1 = require("./generates/SwaggerGenerator");
25
25
  const IReflectOperationError_1 = require("./structures/IReflectOperationError");
26
26
  const VersioningStrategy_1 = require("./utils/VersioningStrategy");
27
+ /**
28
+ * Composes the Swagger document of a running NestJS application, without files.
29
+ *
30
+ * @evidence contracts/common.md#principled-implementation The controllers are taken from the application's module graph and analyzed like the CLI does, and only the HTTP routes are composed.
31
+ * @evidence contracts/common.md#clear-and-simple-design One public function with a private analysis pipeline.
32
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts It uses the same analyzers and composer as the CLI, so both produce one document.
33
+ * @evidence contracts/common.md#meaningful-documentation The comment states its purpose.
34
+ * @evidence contracts/portability.md#os-neutral-implementation Controller source lookup is delegated to ConfigAnalyzer.application; diagnostic filenames use Node path.relative from process.cwd. Route paths and versions remain protocol text rather than native filesystem identity.
35
+ */
27
36
  var NestiaSwaggerComposer;
28
37
  (function (NestiaSwaggerComposer) {
38
+ /**
39
+ * Returns the OpenAPI document of the application in the requested version.
40
+ *
41
+ * The document is composed as OpenAPI 3.2 and converted to the configured
42
+ * older version; every analysis error is collected and thrown together.
43
+ *
44
+ * @evidence contracts/common.md#principled-implementation Composition runs at the newest version and `OpenApiConverter.downgradeDocument` produces the older ones, so version differences live in one converter, and a failure of the analysis throws one error that lists every problem.
45
+ * @evidence contracts/common.md#clear-and-simple-design One function over the shared analyzers and the Swagger generator.
46
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts No route is special-cased; the module graph is read through `ConfigAnalyzer.application`.
47
+ * @evidence contracts/common.md#meaningful-documentation The comment states the returned versions and the error behavior.
48
+ * @evidence contracts/portability.md#os-neutral-implementation The composer receives an existing application and writes no output file. Its delegated controller discovery obtains native source locations, and its report renders those locations through path.relative; initialize may read package metadata for default info.
49
+ */
29
50
  NestiaSwaggerComposer.document = (app, config) => __awaiter(this, void 0, void 0, function* () {
30
51
  var _a;
31
52
  const input = yield ConfigAnalyzer_1.ConfigAnalyzer.application(app);
@@ -40,7 +61,7 @@ var NestiaSwaggerComposer;
40
61
  });
41
62
  const analyze = (input) => {
42
63
  var _a, _b;
43
- var _c, _d, _e;
64
+ var _c;
44
65
  // GET REFLECT CONTROLLERS
45
66
  const unique = new WeakSet();
46
67
  const project = {
@@ -53,8 +74,6 @@ var NestiaSwaggerComposer;
53
74
  .filter((c) => c !== null);
54
75
  if (project.errors.length)
55
76
  throw report({ type: "error", errors: project.errors });
56
- // METADATA COMPONENTS
57
- const collection = TypedHttpRouteAnalyzer_1.TypedHttpRouteAnalyzer.dictionary(controllers);
58
77
  // CONVERT TO TYPED OPERATIONS
59
78
  const routes = [];
60
79
  for (const c of controllers)
@@ -62,17 +81,17 @@ var NestiaSwaggerComposer;
62
81
  if (o.protocol !== "http")
63
82
  continue;
64
83
  const pathList = new Set();
65
- const versions = VersioningStrategy_1.VersioningStrategy.merge(project)([
66
- ...((_c = c.versions) !== null && _c !== void 0 ? _c : []),
67
- ...((_d = o.versions) !== null && _d !== void 0 ? _d : []),
68
- ]);
84
+ const versions = VersioningStrategy_1.VersioningStrategy.merge(project)({
85
+ controller: c.versions,
86
+ method: o.versions,
87
+ });
69
88
  for (const v of versions)
70
89
  for (const prefix of wrapPaths(c.prefixes))
71
90
  for (const cPath of wrapPaths(c.paths))
72
91
  for (const filePath of wrapPaths(o.paths)) {
73
92
  const localPath = PathAnalyzer_1.PathAnalyzer.join(prefix, cPath, filePath);
74
93
  pathList.add(PathAnalyzer_1.PathAnalyzer.joinWithGlobalPrefix({
75
- globalPrefix: (_e = (_a = project.input.globalPrefix) === null || _a === void 0 ? void 0 : _a.prefix) !== null && _e !== void 0 ? _e : "",
94
+ globalPrefix: (_c = (_a = project.input.globalPrefix) === null || _a === void 0 ? void 0 : _a.prefix) !== null && _c !== void 0 ? _c : "",
76
95
  exclude: (_b = project.input.globalPrefix) === null || _b === void 0 ? void 0 : _b.exclude,
77
96
  excludePath: localPath,
78
97
  method: o.method,
@@ -82,7 +101,6 @@ var NestiaSwaggerComposer;
82
101
  routes.push(...TypedHttpRouteAnalyzer_1.TypedHttpRouteAnalyzer.analyze({
83
102
  controller: c,
84
103
  errors: project.errors,
85
- dictionary: collection,
86
104
  operation: o,
87
105
  paths: Array.from(pathList),
88
106
  }));
@@ -106,7 +124,8 @@ const report = (props) => {
106
124
  `${location} - `,
107
125
  error.class,
108
126
  ...(error.function !== null ? [`.${error.function}()`] : [""]),
109
- ...(error.from !== null ? [` from ${error.from}`] : [""]),
127
+ // an empty origin names no part of the function
128
+ ...(error.from ? [` from ${error.from}`] : [""]),
110
129
  ":\n",
111
130
  contents
112
131
  .map((c) => {
@@ -115,15 +134,15 @@ const report = (props) => {
115
134
  else
116
135
  return [
117
136
  c.accessor
118
- ? ` - ${c.name}: `
119
- : ` - ${c.name} (${c.accessor}): `,
137
+ ? ` - ${c.name} (${c.accessor}): `
138
+ : ` - ${c.name}: `,
120
139
  ...c.messages.map((msg) => ` - ${msg}`),
121
140
  ].join("\n");
122
141
  })
123
142
  .join("\n"),
124
143
  ].join(""));
125
144
  }
126
- throw new Error(`Error on NestiaSwaggerComposer.compose():\n${messages}`);
145
+ throw new Error(`Error on NestiaSwaggerComposer.compose():\n${messages.join("\n\n")}`);
127
146
  };
128
147
  const wrapPaths = (paths) => paths.length === 0 ? [""] : paths;
129
148
  //# sourceMappingURL=NestiaSwaggerComposer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NestiaSwaggerComposer.js","sourceRoot":"","sources":["../src/NestiaSwaggerComposer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NestiaSwaggerComposer.js","sourceRoot":"","sources":["../src/NestiaSwaggerComposer.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,33 @@ import { ITypedHttpRoute } from "../structures/ITypedHttpRoute";
2
2
  import { ITypedMcpRoute } from "../structures/ITypedMcpRoute";
3
3
  import { ITypedWebSocketRoute } from "../structures/ITypedWebSocketRoute";
4
4
  type AnyRoute = ITypedHttpRoute | ITypedWebSocketRoute | ITypedMcpRoute;
5
+ /**
6
+ * Assigns each route the accessor path under which the generated SDK exposes
7
+ * it.
8
+ *
9
+ * @evidence contracts/common.md#principled-implementation The accessors are shrunk where a name repeats, escaped into valid unique identifiers, shrunk again, and each route is renamed to its last accessor segment.
10
+ * @evidence contracts/common.md#clear-and-simple-design One public function over three private passes.
11
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The passes follow the accessor structure and no route or controller name is special-cased.
12
+ * @evidence contracts/common.md#meaningful-documentation The comment states its purpose.
13
+ * efficient algorithms: For R routes of at most D accessor segments, the prefix maps avoid repeated route-to-route searches. Prefix slicing and joining costs O(R D²) character work before collision escapes; collisions add probes and longer names. Two shrink passes are required around escaping because escaping changes the names being shrunk.
14
+ * reuse equivalent work: This invocation computes its own result and coordinates no completed or in-flight computation across requests.
15
+ * bound retention and release resources: This operation owns only invocation-local values, with no retained cache, handle or background task.
16
+ * @evidenceExclude contracts/portability.md#os-neutral-implementation AccessorAnalyzer analyzes reflected route metadata; it does not resolve native file identity or launch a process. Source resolution and file emission belong to their filesystem owners.
17
+ */
5
18
  export declare namespace AccessorAnalyzer {
19
+ /**
20
+ * Rewrites the accessor of every route in place so that accessors are valid,
21
+ * unique, and as short as they can be.
22
+ *
23
+ * @evidence contracts/common.md#principled-implementation Segments that repeat their parent are removed when no sibling shares the parent, non-identifier characters become underscores, a segment that collides with an existing accessor gets an underscore prefix, and the route name becomes the last segment.
24
+ * @evidence contracts/common.md#clear-and-simple-design One function that runs the passes in a fixed order.
25
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The rules apply to every route, and reserved names are computed from the routes themselves.
26
+ * @evidence contracts/common.md#meaningful-documentation The comment states the passes and the in-place rewrite.
27
+ * efficient algorithms: For R routes of at most D accessor segments, the prefix maps avoid repeated route-to-route searches. Prefix slicing and joining costs O(R D²) character work before collision escapes; collisions add probes and longer names. Two shrink passes are required around escaping because escaping changes the names being shrunk.
28
+ * reuse equivalent work: This invocation computes its own result and coordinates no completed or in-flight computation across requests.
29
+ * bound retention and release resources: This operation owns only invocation-local values, with no retained cache, handle or background task.
30
+ * @evidenceExclude contracts/portability.md#os-neutral-implementation AccessorAnalyzer.analyze analyzes reflected route metadata; it does not resolve native file identity or launch a process. Source resolution and file emission belong to their filesystem owners.
31
+ */
6
32
  const analyze: (routes: Array<AnyRoute>) => void;
7
33
  }
8
34
  export {};
@@ -2,8 +2,34 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AccessorAnalyzer = void 0;
4
4
  const utils_1 = require("@typia/utils");
5
+ /**
6
+ * Assigns each route the accessor path under which the generated SDK exposes
7
+ * it.
8
+ *
9
+ * @evidence contracts/common.md#principled-implementation The accessors are shrunk where a name repeats, escaped into valid unique identifiers, shrunk again, and each route is renamed to its last accessor segment.
10
+ * @evidence contracts/common.md#clear-and-simple-design One public function over three private passes.
11
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The passes follow the accessor structure and no route or controller name is special-cased.
12
+ * @evidence contracts/common.md#meaningful-documentation The comment states its purpose.
13
+ * efficient algorithms: For R routes of at most D accessor segments, the prefix maps avoid repeated route-to-route searches. Prefix slicing and joining costs O(R D²) character work before collision escapes; collisions add probes and longer names. Two shrink passes are required around escaping because escaping changes the names being shrunk.
14
+ * reuse equivalent work: This invocation computes its own result and coordinates no completed or in-flight computation across requests.
15
+ * bound retention and release resources: This operation owns only invocation-local values, with no retained cache, handle or background task.
16
+ * @evidenceExclude contracts/portability.md#os-neutral-implementation AccessorAnalyzer analyzes reflected route metadata; it does not resolve native file identity or launch a process. Source resolution and file emission belong to their filesystem owners.
17
+ */
5
18
  var AccessorAnalyzer;
6
19
  (function (AccessorAnalyzer) {
20
+ /**
21
+ * Rewrites the accessor of every route in place so that accessors are valid,
22
+ * unique, and as short as they can be.
23
+ *
24
+ * @evidence contracts/common.md#principled-implementation Segments that repeat their parent are removed when no sibling shares the parent, non-identifier characters become underscores, a segment that collides with an existing accessor gets an underscore prefix, and the route name becomes the last segment.
25
+ * @evidence contracts/common.md#clear-and-simple-design One function that runs the passes in a fixed order.
26
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts The rules apply to every route, and reserved names are computed from the routes themselves.
27
+ * @evidence contracts/common.md#meaningful-documentation The comment states the passes and the in-place rewrite.
28
+ * efficient algorithms: For R routes of at most D accessor segments, the prefix maps avoid repeated route-to-route searches. Prefix slicing and joining costs O(R D²) character work before collision escapes; collisions add probes and longer names. Two shrink passes are required around escaping because escaping changes the names being shrunk.
29
+ * reuse equivalent work: This invocation computes its own result and coordinates no completed or in-flight computation across requests.
30
+ * bound retention and release resources: This operation owns only invocation-local values, with no retained cache, handle or background task.
31
+ * @evidenceExclude contracts/portability.md#os-neutral-implementation AccessorAnalyzer.analyze analyzes reflected route metadata; it does not resolve native file identity or launch a process. Source resolution and file emission belong to their filesystem owners.
32
+ */
7
33
  AccessorAnalyzer.analyze = (routes) => {
8
34
  var _b;
9
35
  shrink(routes);
@@ -1 +1 @@
1
- {"version":3,"file":"AccessorAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/AccessorAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AccessorAnalyzer.js","sourceRoot":"","sources":["../../src/analyses/AccessorAnalyzer.ts"],"names":[],"mappings":"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"}