@ismael1361/router 1.2.92 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/README.md +956 -505
  2. package/dist/1.0/Doc/index.d.ts.map +1 -0
  3. package/dist/1.0/Doc/type.d.ts.map +1 -0
  4. package/dist/1.0/HandleError.d.ts.map +1 -0
  5. package/dist/1.0/Layer.d.ts.map +1 -0
  6. package/dist/1.0/Middlewares.d.ts.map +1 -0
  7. package/dist/1.0/handler.d.ts.map +1 -0
  8. package/dist/1.0/index.d.ts +150 -0
  9. package/dist/1.0/index.d.ts.map +1 -0
  10. package/dist/1.0/middleware.d.ts.map +1 -0
  11. package/dist/1.0/redocUi/index.d.ts.map +1 -0
  12. package/dist/1.0/router.d.ts.map +1 -0
  13. package/dist/1.0/swagger-markdown/index.d.ts.map +1 -0
  14. package/dist/1.0/swagger-markdown/lib/anchor.d.ts.map +1 -0
  15. package/dist/1.0/swagger-markdown/lib/inArray.d.ts.map +1 -0
  16. package/dist/1.0/swagger-markdown/models/schema.d.ts.map +1 -0
  17. package/dist/1.0/swagger-markdown/transformers/contact.d.ts.map +1 -0
  18. package/dist/1.0/swagger-markdown/transformers/dataTypes.d.ts.map +1 -0
  19. package/dist/1.0/swagger-markdown/transformers/definitions.d.ts.map +1 -0
  20. package/dist/1.0/swagger-markdown/transformers/externalDocs.d.ts.map +1 -0
  21. package/dist/1.0/swagger-markdown/transformers/info.d.ts.map +1 -0
  22. package/dist/1.0/swagger-markdown/transformers/license.d.ts.map +1 -0
  23. package/dist/1.0/swagger-markdown/transformers/path.d.ts.map +1 -0
  24. package/dist/1.0/swagger-markdown/transformers/pathParameters.d.ts.map +1 -0
  25. package/dist/1.0/swagger-markdown/transformers/pathResponses.d.ts.map +1 -0
  26. package/dist/1.0/swagger-markdown/transformers/security.d.ts.map +1 -0
  27. package/dist/1.0/swagger-markdown/transformers/securityDefinitions.d.ts.map +1 -0
  28. package/dist/1.0/type.d.ts.map +1 -0
  29. package/dist/1.0/utils.d.ts.map +1 -0
  30. package/dist/2.0/HandleError.d.ts +127 -0
  31. package/dist/2.0/HandleError.d.ts.map +1 -0
  32. package/dist/2.0/HandleError.esm.js.map +1 -0
  33. package/dist/2.0/HandleError.js.map +1 -0
  34. package/dist/2.0/Middlewares.d.ts +178 -0
  35. package/dist/2.0/Middlewares.d.ts.map +1 -0
  36. package/dist/{Middlewares.esm.js → 2.0/Middlewares.esm.js} +5 -5
  37. package/dist/2.0/Middlewares.esm.js.map +1 -0
  38. package/dist/{Middlewares.js → 2.0/Middlewares.js} +5 -5
  39. package/dist/2.0/Middlewares.js.map +1 -0
  40. package/dist/2.0/analyzeSwagger.d.ts +7 -0
  41. package/dist/2.0/analyzeSwagger.d.ts.map +1 -0
  42. package/dist/2.0/analyzeSwagger.esm.js +432 -0
  43. package/dist/2.0/analyzeSwagger.esm.js.map +1 -0
  44. package/dist/2.0/analyzeSwagger.js +435 -0
  45. package/dist/2.0/analyzeSwagger.js.map +1 -0
  46. package/dist/2.0/create.d.ts +75 -0
  47. package/dist/2.0/create.d.ts.map +1 -0
  48. package/dist/2.0/create.esm.js +321 -0
  49. package/dist/2.0/create.esm.js.map +1 -0
  50. package/dist/2.0/create.js +323 -0
  51. package/dist/2.0/create.js.map +1 -0
  52. package/dist/2.0/doc.d.ts +3 -0
  53. package/dist/2.0/doc.d.ts.map +1 -0
  54. package/dist/2.0/doc.esm.js +10 -0
  55. package/dist/2.0/doc.esm.js.map +1 -0
  56. package/dist/2.0/doc.js +12 -0
  57. package/dist/2.0/doc.js.map +1 -0
  58. package/dist/2.0/handler.d.ts +149 -0
  59. package/dist/2.0/handler.d.ts.map +1 -0
  60. package/dist/2.0/handler.esm.js +188 -0
  61. package/dist/2.0/handler.esm.js.map +1 -0
  62. package/dist/2.0/handler.js +191 -0
  63. package/dist/2.0/handler.js.map +1 -0
  64. package/dist/2.0/index.d.ts +8 -0
  65. package/dist/2.0/index.d.ts.map +1 -0
  66. package/dist/2.0/redocUi/index.d.ts +4 -0
  67. package/dist/2.0/redocUi/index.d.ts.map +1 -0
  68. package/dist/{redocUi → 2.0/redocUi}/index.esm.js +1 -1
  69. package/dist/2.0/redocUi/index.esm.js.map +1 -0
  70. package/dist/{redocUi → 2.0/redocUi}/index.js +1 -1
  71. package/dist/2.0/redocUi/index.js.map +1 -0
  72. package/dist/2.0/renderChainDocs.d.ts +3 -0
  73. package/dist/2.0/renderChainDocs.d.ts.map +1 -0
  74. package/dist/2.0/renderChainDocs.esm.js +118 -0
  75. package/dist/2.0/renderChainDocs.esm.js.map +1 -0
  76. package/dist/2.0/renderChainDocs.js +120 -0
  77. package/dist/2.0/renderChainDocs.js.map +1 -0
  78. package/dist/2.0/router.d.ts +73 -0
  79. package/dist/2.0/router.d.ts.map +1 -0
  80. package/dist/2.0/router.esm.js +320 -0
  81. package/dist/2.0/router.esm.js.map +1 -0
  82. package/dist/2.0/router.js +322 -0
  83. package/dist/2.0/router.js.map +1 -0
  84. package/dist/2.0/swagger-markdown/index.d.ts +10 -0
  85. package/dist/2.0/swagger-markdown/index.d.ts.map +1 -0
  86. package/dist/{swagger-markdown → 2.0/swagger-markdown}/index.esm.js +1 -1
  87. package/dist/2.0/swagger-markdown/index.esm.js.map +1 -0
  88. package/dist/{swagger-markdown → 2.0/swagger-markdown}/index.js +1 -1
  89. package/dist/2.0/swagger-markdown/index.js.map +1 -0
  90. package/dist/2.0/swagger-markdown/lib/anchor.d.ts +6 -0
  91. package/dist/2.0/swagger-markdown/lib/anchor.d.ts.map +1 -0
  92. package/dist/2.0/swagger-markdown/lib/anchor.esm.js.map +1 -0
  93. package/dist/2.0/swagger-markdown/lib/anchor.js.map +1 -0
  94. package/dist/2.0/swagger-markdown/lib/inArray.d.ts +9 -0
  95. package/dist/2.0/swagger-markdown/lib/inArray.d.ts.map +1 -0
  96. package/dist/2.0/swagger-markdown/lib/inArray.esm.js.map +1 -0
  97. package/dist/2.0/swagger-markdown/lib/inArray.js.map +1 -0
  98. package/dist/2.0/swagger-markdown/models/schema.d.ts +28 -0
  99. package/dist/2.0/swagger-markdown/models/schema.d.ts.map +1 -0
  100. package/dist/2.0/swagger-markdown/models/schema.esm.js.map +1 -0
  101. package/dist/2.0/swagger-markdown/models/schema.js.map +1 -0
  102. package/dist/2.0/swagger-markdown/transformers/contact.d.ts +8 -0
  103. package/dist/2.0/swagger-markdown/transformers/contact.d.ts.map +1 -0
  104. package/dist/2.0/swagger-markdown/transformers/contact.esm.js.map +1 -0
  105. package/dist/2.0/swagger-markdown/transformers/contact.js.map +1 -0
  106. package/dist/2.0/swagger-markdown/transformers/dataTypes.d.ts +9 -0
  107. package/dist/2.0/swagger-markdown/transformers/dataTypes.d.ts.map +1 -0
  108. package/dist/2.0/swagger-markdown/transformers/dataTypes.esm.js.map +1 -0
  109. package/dist/2.0/swagger-markdown/transformers/dataTypes.js.map +1 -0
  110. package/dist/2.0/swagger-markdown/transformers/definitions.d.ts +14 -0
  111. package/dist/2.0/swagger-markdown/transformers/definitions.d.ts.map +1 -0
  112. package/dist/2.0/swagger-markdown/transformers/definitions.esm.js.map +1 -0
  113. package/dist/2.0/swagger-markdown/transformers/definitions.js.map +1 -0
  114. package/dist/2.0/swagger-markdown/transformers/externalDocs.d.ts +4 -0
  115. package/dist/2.0/swagger-markdown/transformers/externalDocs.d.ts.map +1 -0
  116. package/dist/2.0/swagger-markdown/transformers/externalDocs.esm.js.map +1 -0
  117. package/dist/2.0/swagger-markdown/transformers/externalDocs.js.map +1 -0
  118. package/dist/2.0/swagger-markdown/transformers/info.d.ts +11 -0
  119. package/dist/2.0/swagger-markdown/transformers/info.d.ts.map +1 -0
  120. package/dist/2.0/swagger-markdown/transformers/info.esm.js.map +1 -0
  121. package/dist/2.0/swagger-markdown/transformers/info.js.map +1 -0
  122. package/dist/2.0/swagger-markdown/transformers/license.d.ts +8 -0
  123. package/dist/2.0/swagger-markdown/transformers/license.d.ts.map +1 -0
  124. package/dist/2.0/swagger-markdown/transformers/license.esm.js.map +1 -0
  125. package/dist/2.0/swagger-markdown/transformers/license.js.map +1 -0
  126. package/dist/2.0/swagger-markdown/transformers/path.d.ts +9 -0
  127. package/dist/2.0/swagger-markdown/transformers/path.d.ts.map +1 -0
  128. package/dist/2.0/swagger-markdown/transformers/path.esm.js.map +1 -0
  129. package/dist/2.0/swagger-markdown/transformers/path.js.map +1 -0
  130. package/dist/2.0/swagger-markdown/transformers/pathParameters.d.ts +4 -0
  131. package/dist/2.0/swagger-markdown/transformers/pathParameters.d.ts.map +1 -0
  132. package/dist/2.0/swagger-markdown/transformers/pathParameters.esm.js.map +1 -0
  133. package/dist/2.0/swagger-markdown/transformers/pathParameters.js.map +1 -0
  134. package/dist/2.0/swagger-markdown/transformers/pathResponses.d.ts +9 -0
  135. package/dist/2.0/swagger-markdown/transformers/pathResponses.d.ts.map +1 -0
  136. package/dist/2.0/swagger-markdown/transformers/pathResponses.esm.js.map +1 -0
  137. package/dist/2.0/swagger-markdown/transformers/pathResponses.js.map +1 -0
  138. package/dist/2.0/swagger-markdown/transformers/security.d.ts +4 -0
  139. package/dist/2.0/swagger-markdown/transformers/security.d.ts.map +1 -0
  140. package/dist/2.0/swagger-markdown/transformers/security.esm.js.map +1 -0
  141. package/dist/2.0/swagger-markdown/transformers/security.js.map +1 -0
  142. package/dist/2.0/swagger-markdown/transformers/securityDefinitions.d.ts +6 -0
  143. package/dist/2.0/swagger-markdown/transformers/securityDefinitions.d.ts.map +1 -0
  144. package/dist/2.0/swagger-markdown/transformers/securityDefinitions.esm.js.map +1 -0
  145. package/dist/2.0/swagger-markdown/transformers/securityDefinitions.js.map +1 -0
  146. package/dist/2.0/type.d.ts +661 -0
  147. package/dist/2.0/type.d.ts.map +1 -0
  148. package/dist/2.0/utils.d.ts +79 -0
  149. package/dist/2.0/utils.d.ts.map +1 -0
  150. package/dist/{utils.esm.js → 2.0/utils.esm.js} +61 -89
  151. package/dist/2.0/utils.esm.js.map +1 -0
  152. package/dist/{utils.js → 2.0/utils.js} +65 -94
  153. package/dist/2.0/utils.js.map +1 -0
  154. package/dist/index.d.ts +1 -149
  155. package/dist/index.d.ts.map +1 -1
  156. package/dist/index.esm.js +6 -163
  157. package/dist/index.esm.js.map +1 -1
  158. package/dist/index.js +11 -169
  159. package/dist/index.js.map +1 -1
  160. package/package.json +5 -3
  161. package/dist/Doc/index.d.ts.map +0 -1
  162. package/dist/Doc/type.d.ts.map +0 -1
  163. package/dist/HandleError.d.ts.map +0 -1
  164. package/dist/HandleError.esm.js.map +0 -1
  165. package/dist/HandleError.js.map +0 -1
  166. package/dist/Layer.d.ts.map +0 -1
  167. package/dist/Layer.esm.js +0 -274
  168. package/dist/Layer.esm.js.map +0 -1
  169. package/dist/Layer.js +0 -276
  170. package/dist/Layer.js.map +0 -1
  171. package/dist/Middlewares.d.ts.map +0 -1
  172. package/dist/Middlewares.esm.js.map +0 -1
  173. package/dist/Middlewares.js.map +0 -1
  174. package/dist/handler.d.ts.map +0 -1
  175. package/dist/handler.esm.js +0 -171
  176. package/dist/handler.esm.js.map +0 -1
  177. package/dist/handler.js +0 -174
  178. package/dist/handler.js.map +0 -1
  179. package/dist/middleware.d.ts.map +0 -1
  180. package/dist/middleware.esm.js +0 -152
  181. package/dist/middleware.esm.js.map +0 -1
  182. package/dist/middleware.js +0 -155
  183. package/dist/middleware.js.map +0 -1
  184. package/dist/redocUi/index.d.ts.map +0 -1
  185. package/dist/redocUi/index.esm.js.map +0 -1
  186. package/dist/redocUi/index.js.map +0 -1
  187. package/dist/router.d.ts.map +0 -1
  188. package/dist/router.esm.js +0 -723
  189. package/dist/router.esm.js.map +0 -1
  190. package/dist/router.js +0 -744
  191. package/dist/router.js.map +0 -1
  192. package/dist/swagger-markdown/index.d.ts.map +0 -1
  193. package/dist/swagger-markdown/index.esm.js.map +0 -1
  194. package/dist/swagger-markdown/index.js.map +0 -1
  195. package/dist/swagger-markdown/lib/anchor.d.ts.map +0 -1
  196. package/dist/swagger-markdown/lib/anchor.esm.js.map +0 -1
  197. package/dist/swagger-markdown/lib/anchor.js.map +0 -1
  198. package/dist/swagger-markdown/lib/inArray.d.ts.map +0 -1
  199. package/dist/swagger-markdown/lib/inArray.esm.js.map +0 -1
  200. package/dist/swagger-markdown/lib/inArray.js.map +0 -1
  201. package/dist/swagger-markdown/models/schema.d.ts.map +0 -1
  202. package/dist/swagger-markdown/models/schema.esm.js.map +0 -1
  203. package/dist/swagger-markdown/models/schema.js.map +0 -1
  204. package/dist/swagger-markdown/transformers/contact.d.ts.map +0 -1
  205. package/dist/swagger-markdown/transformers/contact.esm.js.map +0 -1
  206. package/dist/swagger-markdown/transformers/contact.js.map +0 -1
  207. package/dist/swagger-markdown/transformers/dataTypes.d.ts.map +0 -1
  208. package/dist/swagger-markdown/transformers/dataTypes.esm.js.map +0 -1
  209. package/dist/swagger-markdown/transformers/dataTypes.js.map +0 -1
  210. package/dist/swagger-markdown/transformers/definitions.d.ts.map +0 -1
  211. package/dist/swagger-markdown/transformers/definitions.esm.js.map +0 -1
  212. package/dist/swagger-markdown/transformers/definitions.js.map +0 -1
  213. package/dist/swagger-markdown/transformers/externalDocs.d.ts.map +0 -1
  214. package/dist/swagger-markdown/transformers/externalDocs.esm.js.map +0 -1
  215. package/dist/swagger-markdown/transformers/externalDocs.js.map +0 -1
  216. package/dist/swagger-markdown/transformers/info.d.ts.map +0 -1
  217. package/dist/swagger-markdown/transformers/info.esm.js.map +0 -1
  218. package/dist/swagger-markdown/transformers/info.js.map +0 -1
  219. package/dist/swagger-markdown/transformers/license.d.ts.map +0 -1
  220. package/dist/swagger-markdown/transformers/license.esm.js.map +0 -1
  221. package/dist/swagger-markdown/transformers/license.js.map +0 -1
  222. package/dist/swagger-markdown/transformers/path.d.ts.map +0 -1
  223. package/dist/swagger-markdown/transformers/path.esm.js.map +0 -1
  224. package/dist/swagger-markdown/transformers/path.js.map +0 -1
  225. package/dist/swagger-markdown/transformers/pathParameters.d.ts.map +0 -1
  226. package/dist/swagger-markdown/transformers/pathParameters.esm.js.map +0 -1
  227. package/dist/swagger-markdown/transformers/pathParameters.js.map +0 -1
  228. package/dist/swagger-markdown/transformers/pathResponses.d.ts.map +0 -1
  229. package/dist/swagger-markdown/transformers/pathResponses.esm.js.map +0 -1
  230. package/dist/swagger-markdown/transformers/pathResponses.js.map +0 -1
  231. package/dist/swagger-markdown/transformers/security.d.ts.map +0 -1
  232. package/dist/swagger-markdown/transformers/security.esm.js.map +0 -1
  233. package/dist/swagger-markdown/transformers/security.js.map +0 -1
  234. package/dist/swagger-markdown/transformers/securityDefinitions.d.ts.map +0 -1
  235. package/dist/swagger-markdown/transformers/securityDefinitions.esm.js.map +0 -1
  236. package/dist/swagger-markdown/transformers/securityDefinitions.js.map +0 -1
  237. package/dist/type.d.ts.map +0 -1
  238. package/dist/utils.d.ts.map +0 -1
  239. package/dist/utils.esm.js.map +0 -1
  240. package/dist/utils.js.map +0 -1
  241. /package/dist/{Doc → 1.0/Doc}/index.d.ts +0 -0
  242. /package/dist/{Doc → 1.0/Doc}/type.d.ts +0 -0
  243. /package/dist/{HandleError.d.ts → 1.0/HandleError.d.ts} +0 -0
  244. /package/dist/{Layer.d.ts → 1.0/Layer.d.ts} +0 -0
  245. /package/dist/{Middlewares.d.ts → 1.0/Middlewares.d.ts} +0 -0
  246. /package/dist/{handler.d.ts → 1.0/handler.d.ts} +0 -0
  247. /package/dist/{middleware.d.ts → 1.0/middleware.d.ts} +0 -0
  248. /package/dist/{redocUi → 1.0/redocUi}/index.d.ts +0 -0
  249. /package/dist/{router.d.ts → 1.0/router.d.ts} +0 -0
  250. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/index.d.ts +0 -0
  251. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/lib/anchor.d.ts +0 -0
  252. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/lib/inArray.d.ts +0 -0
  253. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/models/schema.d.ts +0 -0
  254. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/contact.d.ts +0 -0
  255. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/dataTypes.d.ts +0 -0
  256. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/definitions.d.ts +0 -0
  257. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/externalDocs.d.ts +0 -0
  258. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/info.d.ts +0 -0
  259. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/license.d.ts +0 -0
  260. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/path.d.ts +0 -0
  261. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/pathParameters.d.ts +0 -0
  262. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/pathResponses.d.ts +0 -0
  263. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/security.d.ts +0 -0
  264. /package/dist/{swagger-markdown → 1.0/swagger-markdown}/transformers/securityDefinitions.d.ts +0 -0
  265. /package/dist/{type.d.ts → 1.0/type.d.ts} +0 -0
  266. /package/dist/{utils.d.ts → 1.0/utils.d.ts} +0 -0
  267. /package/dist/{HandleError.esm.js → 2.0/HandleError.esm.js} +0 -0
  268. /package/dist/{HandleError.js → 2.0/HandleError.js} +0 -0
  269. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/lib/anchor.esm.js +0 -0
  270. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/lib/anchor.js +0 -0
  271. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/lib/inArray.esm.js +0 -0
  272. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/lib/inArray.js +0 -0
  273. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/models/schema.esm.js +0 -0
  274. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/models/schema.js +0 -0
  275. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/contact.esm.js +0 -0
  276. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/contact.js +0 -0
  277. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/dataTypes.esm.js +0 -0
  278. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/dataTypes.js +0 -0
  279. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/definitions.esm.js +0 -0
  280. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/definitions.js +0 -0
  281. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/externalDocs.esm.js +0 -0
  282. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/externalDocs.js +0 -0
  283. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/info.esm.js +0 -0
  284. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/info.js +0 -0
  285. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/license.esm.js +0 -0
  286. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/license.js +0 -0
  287. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/path.esm.js +0 -0
  288. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/path.js +0 -0
  289. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/pathParameters.esm.js +0 -0
  290. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/pathParameters.js +0 -0
  291. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/pathResponses.esm.js +0 -0
  292. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/pathResponses.js +0 -0
  293. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/security.esm.js +0 -0
  294. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/security.js +0 -0
  295. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/securityDefinitions.esm.js +0 -0
  296. /package/dist/{swagger-markdown → 2.0/swagger-markdown}/transformers/securityDefinitions.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sources":["../../src/2.0/create.ts"],"sourcesContent":[null],"names":["router","HandleError","StacksController"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { IDoc, TDocOperation } from "./type";
2
+ export declare const doc: IDoc<TDocOperation>;
3
+ //# sourceMappingURL=doc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc.d.ts","sourceRoot":"","sources":["../../src/2.0/doc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAG7C,eAAO,MAAM,GAAG,EAAE,IAAI,CAAC,aAAa,CAOnC,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { __rest } from '../node_modules/tslib/tslib.es6.esm.js';
2
+ import { joinObject } from './utils.esm.js';
3
+
4
+ const doc = (operation, components) => {
5
+ const { components: comp = {} } = operation, op = __rest(operation, ["components"]);
6
+ return Object.assign(Object.assign({}, op), { components: joinObject(comp, components || {}) });
7
+ };
8
+
9
+ export { doc };
10
+ //# sourceMappingURL=doc.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc.esm.js","sources":["../../src/2.0/doc.ts"],"sourcesContent":[null],"names":[],"mappings":";;;MAGa,GAAG,GAAwB,CAAC,SAAS,EAAE,UAAU,KAAI;AACjE,IAAA,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,EAAA,GAAY,SAAS,EAAhB,EAAE,GAAK,MAAA,CAAA,SAAS,EAA5C,CAAA,YAAA,CAAgC,CAAY,CAAC;AAEnD,IAAA,OAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,EAAE,CAAA,EAAA,EACL,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,EAC7C,CAAA,CAAA;AACH;;;;"}
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var tslib_es6 = require('../node_modules/tslib/tslib.es6.js');
4
+ var utils = require('./utils.js');
5
+
6
+ const doc = (operation, components) => {
7
+ const { components: comp = {} } = operation, op = tslib_es6.__rest(operation, ["components"]);
8
+ return Object.assign(Object.assign({}, op), { components: utils.joinObject(comp, components || {}) });
9
+ };
10
+
11
+ exports.doc = doc;
12
+ //# sourceMappingURL=doc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc.js","sources":["../../src/2.0/doc.ts"],"sourcesContent":[null],"names":["__rest","joinObject"],"mappings":";;;;;MAGa,GAAG,GAAwB,CAAC,SAAS,EAAE,UAAU,KAAI;AACjE,IAAA,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,EAAA,GAAY,SAAS,EAAhB,EAAE,GAAKA,gBAAA,CAAA,SAAS,EAA5C,CAAA,YAAA,CAAgC,CAAY,CAAC;AAEnD,IAAA,OAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACI,EAAE,CAAA,EAAA,EACL,UAAU,EAAEC,gBAAU,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC,EAC7C,CAAA,CAAA;AACH;;;;"}
@@ -0,0 +1,149 @@
1
+ import type { Request, Response, RequestHandler, JoinRequest, JoinResponse, IHandler, IMiddleware } from "./type";
2
+ /**
3
+ * Representa um handler encadeável que combina execução de middlewares com documentação OpenAPI.
4
+ * Estende {@link RequestHandler}, podendo ser usado diretamente como middleware do Express.
5
+ *
6
+ * Cada chamada a {@link IHandler.handler | `.handler()`} adiciona um middleware à cadeia e
7
+ * mescla os tipos de `Request` e `Response` via {@link JoinRequest} e {@link JoinResponse},
8
+ * garantindo inferência de tipos acumulada ao longo da cadeia.
9
+ *
10
+ * @typeParam Rq - Tipo cumulativo do request, mesclado a cada `.handler()` encadeado.
11
+ * @typeParam Rs - Tipo cumulativo do response, mesclado a cada `.handler()` encadeado.
12
+ *
13
+ * @example
14
+ * // Uso básico: definir uma rota GET e encadear um handler final
15
+ * app.get("/users")
16
+ * .handler((req, res) => {
17
+ * res.json([{ name: "Alice" }]);
18
+ * });
19
+ *
20
+ * @example
21
+ * // Encadear múltiplos handlers com inferência de tipos acumulada
22
+ * interface AuthRequest extends Request {
23
+ * user: { userId: string; id: string; roles: string[] };
24
+ * }
25
+ *
26
+ * const authMiddleware = middleware((req: AuthRequest, res, next) => {
27
+ * req.user = { userId: "123", id: "abc", roles: ["admin"] };
28
+ * next();
29
+ * });
30
+ *
31
+ * app.get("/hello/:userId/:id")
32
+ * .handler(authMiddleware)
33
+ * .handler((req, res) => {
34
+ * // `req.user` e `req.params.userId` são inferidos automaticamente
35
+ * res.send(`Hello, ${req.user.userId}!`);
36
+ * });
37
+ *
38
+ * @example
39
+ * // Encadear handlers e documentação OpenAPI alternadamente
40
+ * app.post("/items")
41
+ * .handler(authMiddleware)
42
+ * .handler((req, res, next) => {
43
+ * console.log("Validando...");
44
+ * next();
45
+ * })
46
+ * .doc({
47
+ * tags: ["Items"],
48
+ * summary: "Criar item",
49
+ * requestBody: {
50
+ * content: {
51
+ * "application/json": {
52
+ * schema: { type: "object", properties: { name: { type: "string" } } },
53
+ * },
54
+ * },
55
+ * },
56
+ * })
57
+ * .handler((req, res) => {
58
+ * res.status(201).json({ id: 1, name: "Novo item" });
59
+ * });
60
+ */
61
+ export declare const handler: <Rq extends Request = Request, Rs extends Response = Response>(fn: RequestHandler<Rq, Rs>) => IHandler<JoinRequest<Rq, Rq>, JoinResponse<Rs, Rs>>;
62
+ /**
63
+ * Cria um middleware reutilizável com suporte a documentação OpenAPI, mas sem encadeamento
64
+ * via `.handler()`. Internamente utiliza {@link handler}, porém remove o método `.handler()`
65
+ * para deixar claro que um middleware não deve iniciar uma nova cadeia de handlers.
66
+ *
67
+ * O middleware resultante pode ser passado para `.handler()` de um {@link IHandler},
68
+ * e seus tipos genéricos serão mesclados automaticamente na cadeia.
69
+ *
70
+ * @typeParam Req - Tipo do request que o middleware espera/enriquece.
71
+ * @typeParam Res - Tipo do response que o middleware espera/enriquece.
72
+ * @param fn - Função de middleware que recebe `(req, res, next)`.
73
+ * @returns Instância de {@link IMiddleware} com método `.doc()` disponível.
74
+ *
75
+ * @example
76
+ * // Middleware simples de logging
77
+ * const logMiddleware = middleware((req, res, next) => {
78
+ * console.log(`${req.method} ${req.url}`);
79
+ * next();
80
+ * });
81
+ *
82
+ * app.get("/users")
83
+ * .handler(logMiddleware)
84
+ * .handler((req, res) => {
85
+ * res.json([]);
86
+ * });
87
+ *
88
+ * @example
89
+ * // Middleware de autenticação com tipo customizado e documentação OpenAPI
90
+ * interface AuthRequest extends Request {
91
+ * user: { userId: string; roles: string[] };
92
+ * }
93
+ *
94
+ * const authMiddleware = middleware((req: AuthRequest, res, next) => {
95
+ * req.user = { userId: "123", roles: ["admin"] };
96
+ * next();
97
+ * }).doc({
98
+ * security: [{ bearerAuth: [] }],
99
+ * components: {
100
+ * securitySchemes: {
101
+ * bearerAuth: { type: "http", scheme: "bearer" },
102
+ * },
103
+ * },
104
+ * });
105
+ *
106
+ * // Ao encadear, `req.user` é inferido automaticamente
107
+ * app.get("/profile")
108
+ * .handler(authMiddleware)
109
+ * .handler((req, res) => {
110
+ * res.json({ userId: req.user.userId });
111
+ * });
112
+ *
113
+ * @example
114
+ * // Middleware de validação de corpo da requisição
115
+ * interface BodyRequest extends Request<string, { name: string; email: string }> {}
116
+ *
117
+ * const validateBody = middleware((req: BodyRequest, res, next) => {
118
+ * if (!req.body.name || !req.body.email) {
119
+ * res.status(400).json({ error: "name e email são obrigatórios" });
120
+ * return;
121
+ * }
122
+ * next();
123
+ * }).doc({
124
+ * requestBody: {
125
+ * required: true,
126
+ * content: {
127
+ * "application/json": {
128
+ * schema: {
129
+ * type: "object",
130
+ * required: ["name", "email"],
131
+ * properties: {
132
+ * name: { type: "string" },
133
+ * email: { type: "string", format: "email" },
134
+ * },
135
+ * },
136
+ * },
137
+ * },
138
+ * },
139
+ * });
140
+ *
141
+ * app.post("/users")
142
+ * .handler(validateBody)
143
+ * .handler((req, res) => {
144
+ * // `req.body.name` e `req.body.email` são inferidos como string
145
+ * res.status(201).json({ name: req.body.name });
146
+ * });
147
+ */
148
+ export declare const middleware: <Req extends Request = Request, Res extends Response = Response>(fn: RequestHandler<Req, Res>) => IMiddleware<Req, Res>;
149
+ //# sourceMappingURL=handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/2.0/handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAA0B,QAAQ,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAM1I;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,eAAO,MAAM,OAAO,GAAI,EAAE,SAAS,OAAO,GAAG,OAAO,EAAE,EAAE,SAAS,QAAQ,GAAG,QAAQ,EAAE,IAAI,cAAc,CAAC,EAAE,EAAE,EAAE,CAAC,wDAkC/G,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqFG;AACH,eAAO,MAAM,UAAU,GAAI,GAAG,SAAS,OAAO,GAAG,OAAO,EAAE,GAAG,SAAS,QAAQ,GAAG,QAAQ,EAAE,IAAI,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,KAGtF,WAAW,CAAC,GAAG,EAAE,GAAG,CACpD,CAAC"}
@@ -0,0 +1,188 @@
1
+ import { __rest } from '../node_modules/tslib/tslib.es6.esm.js';
2
+ import express from 'express';
3
+ import { createDynamicMiddleware, parseStack, rootStack, joinObject } from './utils.esm.js';
4
+ import path from 'path';
5
+
6
+ /**
7
+ * Representa um handler encadeável que combina execução de middlewares com documentação OpenAPI.
8
+ * Estende {@link RequestHandler}, podendo ser usado diretamente como middleware do Express.
9
+ *
10
+ * Cada chamada a {@link IHandler.handler | `.handler()`} adiciona um middleware à cadeia e
11
+ * mescla os tipos de `Request` e `Response` via {@link JoinRequest} e {@link JoinResponse},
12
+ * garantindo inferência de tipos acumulada ao longo da cadeia.
13
+ *
14
+ * @typeParam Rq - Tipo cumulativo do request, mesclado a cada `.handler()` encadeado.
15
+ * @typeParam Rs - Tipo cumulativo do response, mesclado a cada `.handler()` encadeado.
16
+ *
17
+ * @example
18
+ * // Uso básico: definir uma rota GET e encadear um handler final
19
+ * app.get("/users")
20
+ * .handler((req, res) => {
21
+ * res.json([{ name: "Alice" }]);
22
+ * });
23
+ *
24
+ * @example
25
+ * // Encadear múltiplos handlers com inferência de tipos acumulada
26
+ * interface AuthRequest extends Request {
27
+ * user: { userId: string; id: string; roles: string[] };
28
+ * }
29
+ *
30
+ * const authMiddleware = middleware((req: AuthRequest, res, next) => {
31
+ * req.user = { userId: "123", id: "abc", roles: ["admin"] };
32
+ * next();
33
+ * });
34
+ *
35
+ * app.get("/hello/:userId/:id")
36
+ * .handler(authMiddleware)
37
+ * .handler((req, res) => {
38
+ * // `req.user` e `req.params.userId` são inferidos automaticamente
39
+ * res.send(`Hello, ${req.user.userId}!`);
40
+ * });
41
+ *
42
+ * @example
43
+ * // Encadear handlers e documentação OpenAPI alternadamente
44
+ * app.post("/items")
45
+ * .handler(authMiddleware)
46
+ * .handler((req, res, next) => {
47
+ * console.log("Validando...");
48
+ * next();
49
+ * })
50
+ * .doc({
51
+ * tags: ["Items"],
52
+ * summary: "Criar item",
53
+ * requestBody: {
54
+ * content: {
55
+ * "application/json": {
56
+ * schema: { type: "object", properties: { name: { type: "string" } } },
57
+ * },
58
+ * },
59
+ * },
60
+ * })
61
+ * .handler((req, res) => {
62
+ * res.status(201).json({ id: 1, name: "Novo item" });
63
+ * });
64
+ */
65
+ const handler = (fn) => {
66
+ const router = express.Router({ mergeParams: true });
67
+ const props = {
68
+ __chain_docs__: {
69
+ parent: null,
70
+ children: [],
71
+ },
72
+ handler(fn) {
73
+ router.use(createDynamicMiddleware(fn));
74
+ if ("__chain_docs__" in fn) {
75
+ this.__chain_docs__.children.push(fn.__chain_docs__);
76
+ }
77
+ return this;
78
+ },
79
+ doc(operation, components = {}) {
80
+ const { components: comp = {} } = operation, op = __rest(operation, ["components"]);
81
+ const stack = parseStack().filter(({ dir }) => !path.resolve(dir).startsWith(path.resolve(rootStack[0].dir)))[0];
82
+ this.__chain_docs__.children.push({
83
+ stackFrame: stack,
84
+ operation: op,
85
+ components: joinObject(comp, components),
86
+ });
87
+ return this;
88
+ },
89
+ };
90
+ const rootHandler = Object.setPrototypeOf(function (req, res, next) {
91
+ return router(req, res, next);
92
+ }, props);
93
+ return rootHandler.handler(fn);
94
+ };
95
+ /**
96
+ * Cria um middleware reutilizável com suporte a documentação OpenAPI, mas sem encadeamento
97
+ * via `.handler()`. Internamente utiliza {@link handler}, porém remove o método `.handler()`
98
+ * para deixar claro que um middleware não deve iniciar uma nova cadeia de handlers.
99
+ *
100
+ * O middleware resultante pode ser passado para `.handler()` de um {@link IHandler},
101
+ * e seus tipos genéricos serão mesclados automaticamente na cadeia.
102
+ *
103
+ * @typeParam Req - Tipo do request que o middleware espera/enriquece.
104
+ * @typeParam Res - Tipo do response que o middleware espera/enriquece.
105
+ * @param fn - Função de middleware que recebe `(req, res, next)`.
106
+ * @returns Instância de {@link IMiddleware} com método `.doc()` disponível.
107
+ *
108
+ * @example
109
+ * // Middleware simples de logging
110
+ * const logMiddleware = middleware((req, res, next) => {
111
+ * console.log(`${req.method} ${req.url}`);
112
+ * next();
113
+ * });
114
+ *
115
+ * app.get("/users")
116
+ * .handler(logMiddleware)
117
+ * .handler((req, res) => {
118
+ * res.json([]);
119
+ * });
120
+ *
121
+ * @example
122
+ * // Middleware de autenticação com tipo customizado e documentação OpenAPI
123
+ * interface AuthRequest extends Request {
124
+ * user: { userId: string; roles: string[] };
125
+ * }
126
+ *
127
+ * const authMiddleware = middleware((req: AuthRequest, res, next) => {
128
+ * req.user = { userId: "123", roles: ["admin"] };
129
+ * next();
130
+ * }).doc({
131
+ * security: [{ bearerAuth: [] }],
132
+ * components: {
133
+ * securitySchemes: {
134
+ * bearerAuth: { type: "http", scheme: "bearer" },
135
+ * },
136
+ * },
137
+ * });
138
+ *
139
+ * // Ao encadear, `req.user` é inferido automaticamente
140
+ * app.get("/profile")
141
+ * .handler(authMiddleware)
142
+ * .handler((req, res) => {
143
+ * res.json({ userId: req.user.userId });
144
+ * });
145
+ *
146
+ * @example
147
+ * // Middleware de validação de corpo da requisição
148
+ * interface BodyRequest extends Request<string, { name: string; email: string }> {}
149
+ *
150
+ * const validateBody = middleware((req: BodyRequest, res, next) => {
151
+ * if (!req.body.name || !req.body.email) {
152
+ * res.status(400).json({ error: "name e email são obrigatórios" });
153
+ * return;
154
+ * }
155
+ * next();
156
+ * }).doc({
157
+ * requestBody: {
158
+ * required: true,
159
+ * content: {
160
+ * "application/json": {
161
+ * schema: {
162
+ * type: "object",
163
+ * required: ["name", "email"],
164
+ * properties: {
165
+ * name: { type: "string" },
166
+ * email: { type: "string", format: "email" },
167
+ * },
168
+ * },
169
+ * },
170
+ * },
171
+ * },
172
+ * });
173
+ *
174
+ * app.post("/users")
175
+ * .handler(validateBody)
176
+ * .handler((req, res) => {
177
+ * // `req.body.name` e `req.body.email` são inferidos como string
178
+ * res.status(201).json({ name: req.body.name });
179
+ * });
180
+ */
181
+ const middleware = (fn) => {
182
+ const middleware = handler(fn);
183
+ middleware.handler = undefined; // Remove a referência ao handler para evitar confusão
184
+ return middleware;
185
+ };
186
+
187
+ export { handler, middleware };
188
+ //# sourceMappingURL=handler.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.esm.js","sources":["../../src/2.0/handler.ts"],"sourcesContent":[null],"names":["nodePath"],"mappings":";;;;;AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DG;AACU,MAAA,OAAO,GAAG,CAA+D,EAA0B,KAAI;AACnH,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AAErD,IAAA,MAAM,KAAK,GAAG;AACb,QAAA,cAAc,EAAE;AACf,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,QAAQ,EAAE,EAAE;AACA,SAAA;AACb,QAAA,OAAO,CAAiE,EAAuG,EAAA;YAC9K,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,CAAQ,CAAC,CAAC;AAC/C,YAAA,IAAI,gBAAgB,IAAI,EAAE,EAAE;gBAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAE,EAAU,CAAC,cAAc,CAAC,CAAC;aAC9D;AACD,YAAA,OAAO,IAAwE,CAAC;SAChF;AACD,QAAA,GAAG,CAAC,SAAmD,EAAE,UAAA,GAAsC,EAAE,EAAA;AAChG,YAAA,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,EAAA,GAAY,SAAS,EAAhB,EAAE,GAAK,MAAA,CAAA,SAAS,EAA5C,CAAA,YAAA,CAAgC,CAAY,CAAC;AAEnD,YAAA,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAACA,IAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAACA,IAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzH,YAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;AACjC,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,SAAS,EAAE,EAAE;AACb,gBAAA,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC;AACxC,aAAA,CAAC,CAAC;AACH,YAAA,OAAO,IAAmC,CAAC;SAC3C;KACD,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,UAAU,GAAO,EAAE,GAAO,EAAE,IAAkB,EAAA;QACvF,OAAO,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;KAC9B,EAAE,KAAK,CAAgC,CAAC;AAEzC,IAAA,OAAO,WAAW,CAAC,OAAO,CAAS,EAAE,CAAC,CAAC;AACxC,EAAE;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqFG;AACU,MAAA,UAAU,GAAG,CAAiE,EAA4B,KAAI;AAC1H,IAAA,MAAM,UAAU,GAAG,OAAO,CAAW,EAAE,CAAC,CAAC;AACzC,IAAA,UAAU,CAAC,OAAO,GAAG,SAAgB,CAAC;AACtC,IAAA,OAAO,UAA8C,CAAC;AACvD;;;;"}
@@ -0,0 +1,191 @@
1
+ 'use strict';
2
+
3
+ var tslib_es6 = require('../node_modules/tslib/tslib.es6.js');
4
+ var express = require('express');
5
+ var utils = require('./utils.js');
6
+ var path = require('path');
7
+
8
+ /**
9
+ * Representa um handler encadeável que combina execução de middlewares com documentação OpenAPI.
10
+ * Estende {@link RequestHandler}, podendo ser usado diretamente como middleware do Express.
11
+ *
12
+ * Cada chamada a {@link IHandler.handler | `.handler()`} adiciona um middleware à cadeia e
13
+ * mescla os tipos de `Request` e `Response` via {@link JoinRequest} e {@link JoinResponse},
14
+ * garantindo inferência de tipos acumulada ao longo da cadeia.
15
+ *
16
+ * @typeParam Rq - Tipo cumulativo do request, mesclado a cada `.handler()` encadeado.
17
+ * @typeParam Rs - Tipo cumulativo do response, mesclado a cada `.handler()` encadeado.
18
+ *
19
+ * @example
20
+ * // Uso básico: definir uma rota GET e encadear um handler final
21
+ * app.get("/users")
22
+ * .handler((req, res) => {
23
+ * res.json([{ name: "Alice" }]);
24
+ * });
25
+ *
26
+ * @example
27
+ * // Encadear múltiplos handlers com inferência de tipos acumulada
28
+ * interface AuthRequest extends Request {
29
+ * user: { userId: string; id: string; roles: string[] };
30
+ * }
31
+ *
32
+ * const authMiddleware = middleware((req: AuthRequest, res, next) => {
33
+ * req.user = { userId: "123", id: "abc", roles: ["admin"] };
34
+ * next();
35
+ * });
36
+ *
37
+ * app.get("/hello/:userId/:id")
38
+ * .handler(authMiddleware)
39
+ * .handler((req, res) => {
40
+ * // `req.user` e `req.params.userId` são inferidos automaticamente
41
+ * res.send(`Hello, ${req.user.userId}!`);
42
+ * });
43
+ *
44
+ * @example
45
+ * // Encadear handlers e documentação OpenAPI alternadamente
46
+ * app.post("/items")
47
+ * .handler(authMiddleware)
48
+ * .handler((req, res, next) => {
49
+ * console.log("Validando...");
50
+ * next();
51
+ * })
52
+ * .doc({
53
+ * tags: ["Items"],
54
+ * summary: "Criar item",
55
+ * requestBody: {
56
+ * content: {
57
+ * "application/json": {
58
+ * schema: { type: "object", properties: { name: { type: "string" } } },
59
+ * },
60
+ * },
61
+ * },
62
+ * })
63
+ * .handler((req, res) => {
64
+ * res.status(201).json({ id: 1, name: "Novo item" });
65
+ * });
66
+ */
67
+ const handler = (fn) => {
68
+ const router = express.Router({ mergeParams: true });
69
+ const props = {
70
+ __chain_docs__: {
71
+ parent: null,
72
+ children: [],
73
+ },
74
+ handler(fn) {
75
+ router.use(utils.createDynamicMiddleware(fn));
76
+ if ("__chain_docs__" in fn) {
77
+ this.__chain_docs__.children.push(fn.__chain_docs__);
78
+ }
79
+ return this;
80
+ },
81
+ doc(operation, components = {}) {
82
+ const { components: comp = {} } = operation, op = tslib_es6.__rest(operation, ["components"]);
83
+ const stack = utils.parseStack().filter(({ dir }) => !path.resolve(dir).startsWith(path.resolve(utils.rootStack[0].dir)))[0];
84
+ this.__chain_docs__.children.push({
85
+ stackFrame: stack,
86
+ operation: op,
87
+ components: utils.joinObject(comp, components),
88
+ });
89
+ return this;
90
+ },
91
+ };
92
+ const rootHandler = Object.setPrototypeOf(function (req, res, next) {
93
+ return router(req, res, next);
94
+ }, props);
95
+ return rootHandler.handler(fn);
96
+ };
97
+ /**
98
+ * Cria um middleware reutilizável com suporte a documentação OpenAPI, mas sem encadeamento
99
+ * via `.handler()`. Internamente utiliza {@link handler}, porém remove o método `.handler()`
100
+ * para deixar claro que um middleware não deve iniciar uma nova cadeia de handlers.
101
+ *
102
+ * O middleware resultante pode ser passado para `.handler()` de um {@link IHandler},
103
+ * e seus tipos genéricos serão mesclados automaticamente na cadeia.
104
+ *
105
+ * @typeParam Req - Tipo do request que o middleware espera/enriquece.
106
+ * @typeParam Res - Tipo do response que o middleware espera/enriquece.
107
+ * @param fn - Função de middleware que recebe `(req, res, next)`.
108
+ * @returns Instância de {@link IMiddleware} com método `.doc()` disponível.
109
+ *
110
+ * @example
111
+ * // Middleware simples de logging
112
+ * const logMiddleware = middleware((req, res, next) => {
113
+ * console.log(`${req.method} ${req.url}`);
114
+ * next();
115
+ * });
116
+ *
117
+ * app.get("/users")
118
+ * .handler(logMiddleware)
119
+ * .handler((req, res) => {
120
+ * res.json([]);
121
+ * });
122
+ *
123
+ * @example
124
+ * // Middleware de autenticação com tipo customizado e documentação OpenAPI
125
+ * interface AuthRequest extends Request {
126
+ * user: { userId: string; roles: string[] };
127
+ * }
128
+ *
129
+ * const authMiddleware = middleware((req: AuthRequest, res, next) => {
130
+ * req.user = { userId: "123", roles: ["admin"] };
131
+ * next();
132
+ * }).doc({
133
+ * security: [{ bearerAuth: [] }],
134
+ * components: {
135
+ * securitySchemes: {
136
+ * bearerAuth: { type: "http", scheme: "bearer" },
137
+ * },
138
+ * },
139
+ * });
140
+ *
141
+ * // Ao encadear, `req.user` é inferido automaticamente
142
+ * app.get("/profile")
143
+ * .handler(authMiddleware)
144
+ * .handler((req, res) => {
145
+ * res.json({ userId: req.user.userId });
146
+ * });
147
+ *
148
+ * @example
149
+ * // Middleware de validação de corpo da requisição
150
+ * interface BodyRequest extends Request<string, { name: string; email: string }> {}
151
+ *
152
+ * const validateBody = middleware((req: BodyRequest, res, next) => {
153
+ * if (!req.body.name || !req.body.email) {
154
+ * res.status(400).json({ error: "name e email são obrigatórios" });
155
+ * return;
156
+ * }
157
+ * next();
158
+ * }).doc({
159
+ * requestBody: {
160
+ * required: true,
161
+ * content: {
162
+ * "application/json": {
163
+ * schema: {
164
+ * type: "object",
165
+ * required: ["name", "email"],
166
+ * properties: {
167
+ * name: { type: "string" },
168
+ * email: { type: "string", format: "email" },
169
+ * },
170
+ * },
171
+ * },
172
+ * },
173
+ * },
174
+ * });
175
+ *
176
+ * app.post("/users")
177
+ * .handler(validateBody)
178
+ * .handler((req, res) => {
179
+ * // `req.body.name` e `req.body.email` são inferidos como string
180
+ * res.status(201).json({ name: req.body.name });
181
+ * });
182
+ */
183
+ const middleware = (fn) => {
184
+ const middleware = handler(fn);
185
+ middleware.handler = undefined; // Remove a referência ao handler para evitar confusão
186
+ return middleware;
187
+ };
188
+
189
+ exports.handler = handler;
190
+ exports.middleware = middleware;
191
+ //# sourceMappingURL=handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.js","sources":["../../src/2.0/handler.ts"],"sourcesContent":[null],"names":["createDynamicMiddleware","__rest","parseStack","nodePath","rootStack","joinObject"],"mappings":";;;;;;;AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DG;AACU,MAAA,OAAO,GAAG,CAA+D,EAA0B,KAAI;AACnH,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;AAErD,IAAA,MAAM,KAAK,GAAG;AACb,QAAA,cAAc,EAAE;AACf,YAAA,MAAM,EAAE,IAAI;AACZ,YAAA,QAAQ,EAAE,EAAE;AACA,SAAA;AACb,QAAA,OAAO,CAAiE,EAAuG,EAAA;YAC9K,MAAM,CAAC,GAAG,CAACA,6BAAuB,CAAC,EAAE,CAAQ,CAAC,CAAC;AAC/C,YAAA,IAAI,gBAAgB,IAAI,EAAE,EAAE;gBAC3B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAE,EAAU,CAAC,cAAc,CAAC,CAAC;aAC9D;AACD,YAAA,OAAO,IAAwE,CAAC;SAChF;AACD,QAAA,GAAG,CAAC,SAAmD,EAAE,UAAA,GAAsC,EAAE,EAAA;AAChG,YAAA,MAAM,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,EAAA,GAAY,SAAS,EAAhB,EAAE,GAAKC,gBAAA,CAAA,SAAS,EAA5C,CAAA,YAAA,CAAgC,CAAY,CAAC;AAEnD,YAAA,MAAM,KAAK,GAAGC,gBAAU,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAACC,IAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,CAACA,IAAQ,CAAC,OAAO,CAACC,eAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzH,YAAA,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;AACjC,gBAAA,UAAU,EAAE,KAAK;AACjB,gBAAA,SAAS,EAAE,EAAE;AACb,gBAAA,UAAU,EAAEC,gBAAU,CAAC,IAAI,EAAE,UAAU,CAAC;AACxC,aAAA,CAAC,CAAC;AACH,YAAA,OAAO,IAAmC,CAAC;SAC3C;KACD,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,CAAC,UAAU,GAAO,EAAE,GAAO,EAAE,IAAkB,EAAA;QACvF,OAAO,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;KAC9B,EAAE,KAAK,CAAgC,CAAC;AAEzC,IAAA,OAAO,WAAW,CAAC,OAAO,CAAS,EAAE,CAAC,CAAC;AACxC,EAAE;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqFG;AACU,MAAA,UAAU,GAAG,CAAiE,EAA4B,KAAI;AAC1H,IAAA,MAAM,UAAU,GAAG,OAAO,CAAW,EAAE,CAAC,CAAC;AACzC,IAAA,UAAU,CAAC,OAAO,GAAG,SAAgB,CAAC;AACtC,IAAA,OAAO,UAA8C,CAAC;AACvD;;;;;"}
@@ -0,0 +1,8 @@
1
+ export type { Methods, Request, Response, RequestHandler, NextFunction } from "./type";
2
+ export * from "./create";
3
+ export * from "./router";
4
+ export * from "./handler";
5
+ export { HandleError } from "./HandleError";
6
+ export * as Middlewares from "./Middlewares";
7
+ export * from "./doc";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/2.0/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACvF,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,WAAW,MAAM,eAAe,CAAC;AAC7C,cAAc,OAAO,CAAC"}
@@ -0,0 +1,4 @@
1
+ import swaggerJSDoc from "swagger-jsdoc";
2
+ import { RequestHandler } from "express";
3
+ export declare const setup: (swagger: swaggerJSDoc.Options) => RequestHandler;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/2.0/redocUi/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAGzC,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,eAAO,MAAM,KAAK,GAAI,SAAS,YAAY,CAAC,OAAO,KAAG,cAqErD,CAAC"}
@@ -1,4 +1,4 @@
1
- import { __awaiter } from '../node_modules/tslib/tslib.es6.esm.js';
1
+ import { __awaiter } from '../../node_modules/tslib/tslib.es6.esm.js';
2
2
  import path from 'path';
3
3
  import fs from 'fs';
4
4
 
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":["../../../src/2.0/redocUi/index.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAKa,MAAA,KAAK,GAAG,CAAC,OAA6B,KAAoB;AACtE,IAAA,OAAO,CAAO,GAAG,EAAE,GAAG,KAAI,SAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;QACzB,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE;AAC9C,YAAA,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,uCAAuC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC3G,YAAA,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;AACxD,YAAA,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YACvC,OAAO;SACP;AAED,QAAA,MAAM,OAAO,GAAG,CAAA;;;;;;;;;;;;;mBAaC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;;;AAGjC,uBAAA,EAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuCnD,CAAC;AAEP,QAAA,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;AAC3C,QAAA,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AACxC,KAAC,CAAA,CAAC;AACH;;;;"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var tslib_es6 = require('../node_modules/tslib/tslib.es6.js');
3
+ var tslib_es6 = require('../../node_modules/tslib/tslib.es6.js');
4
4
  var path = require('path');
5
5
  var fs = require('fs');
6
6
 
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/2.0/redocUi/index.ts"],"sourcesContent":[null],"names":["__awaiter"],"mappings":";;;;;;AAKa,MAAA,KAAK,GAAG,CAAC,OAA6B,KAAoB;AACtE,IAAA,OAAO,CAAO,GAAG,EAAE,GAAG,KAAIA,mBAAA,CAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,KAAA,CAAA,EAAA,aAAA;QACzB,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE;AAC9C,YAAA,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,uCAAuC,CAAC,EAAE,OAAO,CAAC,CAAC;AAC3G,YAAA,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;AACxD,YAAA,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YACvC,OAAO;SACP;AAED,QAAA,MAAM,OAAO,GAAG,CAAA;;;;;;;;;;;;;mBAaC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;;;AAGjC,uBAAA,EAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAuCnD,CAAC;AAEP,QAAA,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;AAC3C,QAAA,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AACxC,KAAC,CAAA,CAAC;AACH;;;;"}
@@ -0,0 +1,3 @@
1
+ import type { ITreeDoc, SwaggerOptions } from "./type";
2
+ export declare const renderChainDocs: (docs: ITreeDoc[]) => Partial<SwaggerOptions>;
3
+ //# sourceMappingURL=renderChainDocs.d.ts.map