@tsed/schema 7.86.3 → 7.87.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (399) hide show
  1. package/lib/browser/schema.umd.min.js +1 -1
  2. package/lib/browser/schema.umd.min.js.map +1 -1
  3. package/lib/cjs/components/default/anyMapper.js +1 -2
  4. package/lib/cjs/components/default/anyMapper.js.map +1 -1
  5. package/lib/cjs/components/default/classMapper.js +2 -22
  6. package/lib/cjs/components/default/classMapper.js.map +1 -1
  7. package/lib/cjs/components/default/discriminatorMappingMapper.js.map +1 -1
  8. package/lib/cjs/components/default/genericsMapper.js +61 -47
  9. package/lib/cjs/components/default/genericsMapper.js.map +1 -1
  10. package/lib/cjs/components/default/inheritedClassMapper.js.map +1 -1
  11. package/lib/cjs/components/default/lazyRefMapper.js +1 -2
  12. package/lib/cjs/components/default/lazyRefMapper.js.map +1 -1
  13. package/lib/cjs/components/default/mapMapper.js +0 -2
  14. package/lib/cjs/components/default/mapMapper.js.map +1 -1
  15. package/lib/cjs/components/default/nextMapper.js +80 -0
  16. package/lib/cjs/components/default/nextMapper.js.map +1 -0
  17. package/lib/cjs/components/default/nullableMapper.js.map +1 -1
  18. package/lib/cjs/components/default/objectMapper.js +8 -3
  19. package/lib/cjs/components/default/objectMapper.js.map +1 -1
  20. package/lib/cjs/components/default/ofMapper.js +2 -5
  21. package/lib/cjs/components/default/ofMapper.js.map +1 -1
  22. package/lib/cjs/components/default/requiredMapper.js +2 -2
  23. package/lib/cjs/components/default/requiredMapper.js.map +1 -1
  24. package/lib/cjs/components/default/schemaMapper.js +6 -7
  25. package/lib/cjs/components/default/schemaMapper.js.map +1 -1
  26. package/lib/cjs/components/index.js +1 -7
  27. package/lib/cjs/components/index.js.map +1 -1
  28. package/lib/cjs/components/open-spec/enumsMapper.js.map +1 -1
  29. package/lib/cjs/components/open-spec/generate.js.map +1 -1
  30. package/lib/cjs/components/open-spec/nullableMapper.js +5 -1
  31. package/lib/cjs/components/open-spec/nullableMapper.js.map +1 -1
  32. package/lib/cjs/components/open-spec/operationInFilesMapper.js.map +1 -1
  33. package/lib/cjs/components/open-spec/operationInParameterMapper.js +3 -7
  34. package/lib/cjs/components/open-spec/operationInParameterMapper.js.map +1 -1
  35. package/lib/cjs/components/open-spec/operationInQueryMapper.js +21 -16
  36. package/lib/cjs/components/open-spec/operationInQueryMapper.js.map +1 -1
  37. package/lib/cjs/components/open-spec/operationMediaMapper.js +5 -2
  38. package/lib/cjs/components/open-spec/operationMediaMapper.js.map +1 -1
  39. package/lib/cjs/components/open-spec/operationRequestBodyMapper.js +4 -3
  40. package/lib/cjs/components/open-spec/operationRequestBodyMapper.js.map +1 -1
  41. package/lib/cjs/components/open-spec/pathsMapper.js +1 -0
  42. package/lib/cjs/components/open-spec/pathsMapper.js.map +1 -1
  43. package/lib/cjs/constants/VendorKeys.js +15 -0
  44. package/lib/cjs/constants/VendorKeys.js.map +1 -0
  45. package/lib/cjs/constants/httpStatusMessages.js +1 -1
  46. package/lib/cjs/constants/httpStatusMessages.js.map +1 -1
  47. package/lib/cjs/decorators/class/children.js.map +1 -1
  48. package/lib/cjs/decorators/collections/collectionOf.js +29 -0
  49. package/lib/cjs/decorators/collections/collectionOf.js.map +1 -1
  50. package/lib/cjs/decorators/common/allow.js.map +1 -1
  51. package/lib/cjs/decorators/common/any.js.map +1 -1
  52. package/lib/cjs/decorators/common/defaultMsg.js.map +1 -1
  53. package/lib/cjs/decorators/common/description.js +8 -11
  54. package/lib/cjs/decorators/common/description.js.map +1 -1
  55. package/lib/cjs/decorators/common/discriminatorKey.js +1 -1
  56. package/lib/cjs/decorators/common/discriminatorKey.js.map +1 -1
  57. package/lib/cjs/decorators/common/enum.js.map +1 -1
  58. package/lib/cjs/decorators/common/examples.js.map +1 -1
  59. package/lib/cjs/decorators/common/format.js.map +1 -1
  60. package/lib/cjs/decorators/common/forwardGroups.js +1 -1
  61. package/lib/cjs/decorators/common/forwardGroups.js.map +1 -1
  62. package/lib/cjs/decorators/common/groups.js +15 -26
  63. package/lib/cjs/decorators/common/groups.js.map +1 -1
  64. package/lib/cjs/decorators/common/integer.js.map +1 -1
  65. package/lib/cjs/decorators/common/oneOf.js +1 -2
  66. package/lib/cjs/decorators/common/oneOf.js.map +1 -1
  67. package/lib/cjs/decorators/common/optional.js.map +1 -1
  68. package/lib/cjs/decorators/config/jsonEntityComponent.js.map +1 -1
  69. package/lib/cjs/decorators/generics/genericOf.js +7 -16
  70. package/lib/cjs/decorators/generics/genericOf.js.map +1 -1
  71. package/lib/cjs/decorators/generics/generics.js +3 -3
  72. package/lib/cjs/decorators/generics/generics.js.map +1 -1
  73. package/lib/cjs/decorators/operations/acceptMime.js.map +1 -1
  74. package/lib/cjs/decorators/operations/consumes.js.map +1 -1
  75. package/lib/cjs/decorators/operations/deprecated.js.map +1 -1
  76. package/lib/cjs/decorators/operations/header.js.map +1 -1
  77. package/lib/cjs/decorators/operations/in.js.map +1 -1
  78. package/lib/cjs/decorators/operations/inFile.js +2 -2
  79. package/lib/cjs/decorators/operations/inFile.js.map +1 -1
  80. package/lib/cjs/decorators/operations/operation.js +5 -1
  81. package/lib/cjs/decorators/operations/operation.js.map +1 -1
  82. package/lib/cjs/decorators/operations/operationId.js.map +1 -1
  83. package/lib/cjs/decorators/operations/operationPath.js +1 -1
  84. package/lib/cjs/decorators/operations/operationPath.js.map +1 -1
  85. package/lib/cjs/decorators/operations/path.js.map +1 -1
  86. package/lib/cjs/decorators/operations/produces.js.map +1 -1
  87. package/lib/cjs/decorators/operations/redirect.js +1 -1
  88. package/lib/cjs/decorators/operations/redirect.js.map +1 -1
  89. package/lib/cjs/decorators/operations/returns.js +39 -62
  90. package/lib/cjs/decorators/operations/returns.js.map +1 -1
  91. package/lib/cjs/decorators/operations/security.js.map +1 -1
  92. package/lib/cjs/decorators/operations/status.js.map +1 -1
  93. package/lib/cjs/decorators/operations/summary.js.map +1 -1
  94. package/lib/cjs/decorators/operations/tags.js +10 -1
  95. package/lib/cjs/decorators/operations/tags.js.map +1 -1
  96. package/lib/cjs/domain/DecoratorContext.js.map +1 -1
  97. package/lib/cjs/domain/JsonClassStore.js +1 -1
  98. package/lib/cjs/domain/JsonClassStore.js.map +1 -1
  99. package/lib/cjs/domain/JsonEntityStore.js +40 -35
  100. package/lib/cjs/domain/JsonEntityStore.js.map +1 -1
  101. package/lib/cjs/domain/JsonLazyRef.js.map +1 -1
  102. package/lib/cjs/domain/JsonMap.js.map +1 -1
  103. package/lib/cjs/domain/JsonMedia.js +27 -6
  104. package/lib/cjs/domain/JsonMedia.js.map +1 -1
  105. package/lib/cjs/domain/JsonMethodStore.js +27 -8
  106. package/lib/cjs/domain/JsonMethodStore.js.map +1 -1
  107. package/lib/cjs/domain/JsonOperation.js +36 -8
  108. package/lib/cjs/domain/JsonOperation.js.map +1 -1
  109. package/lib/cjs/domain/JsonParameter.js +20 -5
  110. package/lib/cjs/domain/JsonParameter.js.map +1 -1
  111. package/lib/cjs/domain/JsonParameterStore.js +15 -25
  112. package/lib/cjs/domain/JsonParameterStore.js.map +1 -1
  113. package/lib/cjs/domain/JsonPropertyStore.js +14 -45
  114. package/lib/cjs/domain/JsonPropertyStore.js.map +1 -1
  115. package/lib/cjs/domain/JsonSchema.js +286 -79
  116. package/lib/cjs/domain/JsonSchema.js.map +1 -1
  117. package/lib/cjs/domain/__fixtures__/inspectOperationsPaths.js +11 -0
  118. package/lib/cjs/domain/__fixtures__/inspectOperationsPaths.js.map +1 -0
  119. package/lib/cjs/fn/email.js +2 -2
  120. package/lib/cjs/fn/email.js.map +1 -1
  121. package/lib/cjs/fn/uri.js +2 -2
  122. package/lib/cjs/fn/uri.js.map +1 -1
  123. package/lib/cjs/fn/url.js +2 -2
  124. package/lib/cjs/fn/url.js.map +1 -1
  125. package/lib/cjs/index.js +4 -8
  126. package/lib/cjs/index.js.map +1 -1
  127. package/lib/cjs/utils/generics.js +5 -36
  128. package/lib/cjs/utils/generics.js.map +1 -1
  129. package/lib/cjs/utils/getJsonEntityStore.js +3 -3
  130. package/lib/cjs/utils/getJsonEntityStore.js.map +1 -1
  131. package/lib/cjs/utils/getJsonSchema.js +24 -17
  132. package/lib/cjs/utils/getJsonSchema.js.map +1 -1
  133. package/lib/cjs/utils/getOperationsStores.js.map +1 -1
  134. package/lib/cjs/utils/getPropertiesStores.js.map +1 -1
  135. package/lib/cjs/utils/getSpec.js.map +1 -1
  136. package/lib/cjs/utils/mergeSchema.js +103 -0
  137. package/lib/cjs/utils/mergeSchema.js.map +1 -0
  138. package/lib/cjs/utils/ref.js +15 -13
  139. package/lib/cjs/utils/ref.js.map +1 -1
  140. package/lib/esm/components/default/anyMapper.js +1 -2
  141. package/lib/esm/components/default/anyMapper.js.map +1 -1
  142. package/lib/esm/components/default/classMapper.js +2 -22
  143. package/lib/esm/components/default/classMapper.js.map +1 -1
  144. package/lib/esm/components/default/discriminatorMappingMapper.js.map +1 -1
  145. package/lib/esm/components/default/genericsMapper.js +62 -48
  146. package/lib/esm/components/default/genericsMapper.js.map +1 -1
  147. package/lib/esm/components/default/inheritedClassMapper.js.map +1 -1
  148. package/lib/esm/components/default/lazyRefMapper.js +1 -2
  149. package/lib/esm/components/default/lazyRefMapper.js.map +1 -1
  150. package/lib/esm/components/default/mapMapper.js +0 -2
  151. package/lib/esm/components/default/mapMapper.js.map +1 -1
  152. package/lib/esm/components/default/nextMapper.js +75 -0
  153. package/lib/esm/components/default/nextMapper.js.map +1 -0
  154. package/lib/esm/components/default/nullableMapper.js.map +1 -1
  155. package/lib/esm/components/default/objectMapper.js +8 -3
  156. package/lib/esm/components/default/objectMapper.js.map +1 -1
  157. package/lib/esm/components/default/ofMapper.js +2 -5
  158. package/lib/esm/components/default/ofMapper.js.map +1 -1
  159. package/lib/esm/components/default/requiredMapper.js +2 -2
  160. package/lib/esm/components/default/requiredMapper.js.map +1 -1
  161. package/lib/esm/components/default/schemaMapper.js +7 -8
  162. package/lib/esm/components/default/schemaMapper.js.map +1 -1
  163. package/lib/esm/components/index.js +1 -7
  164. package/lib/esm/components/index.js.map +1 -1
  165. package/lib/esm/components/open-spec/enumsMapper.js.map +1 -1
  166. package/lib/esm/components/open-spec/generate.js.map +1 -1
  167. package/lib/esm/components/open-spec/nullableMapper.js +5 -1
  168. package/lib/esm/components/open-spec/nullableMapper.js.map +1 -1
  169. package/lib/esm/components/open-spec/operationInFilesMapper.js.map +1 -1
  170. package/lib/esm/components/open-spec/operationInParameterMapper.js +3 -7
  171. package/lib/esm/components/open-spec/operationInParameterMapper.js.map +1 -1
  172. package/lib/esm/components/open-spec/operationInQueryMapper.js +22 -17
  173. package/lib/esm/components/open-spec/operationInQueryMapper.js.map +1 -1
  174. package/lib/esm/components/open-spec/operationMediaMapper.js +5 -2
  175. package/lib/esm/components/open-spec/operationMediaMapper.js.map +1 -1
  176. package/lib/esm/components/open-spec/operationRequestBodyMapper.js +4 -3
  177. package/lib/esm/components/open-spec/operationRequestBodyMapper.js.map +1 -1
  178. package/lib/esm/components/open-spec/pathsMapper.js +1 -0
  179. package/lib/esm/components/open-spec/pathsMapper.js.map +1 -1
  180. package/lib/esm/constants/VendorKeys.js +12 -0
  181. package/lib/esm/constants/VendorKeys.js.map +1 -0
  182. package/lib/esm/constants/httpStatusMessages.js +1 -1
  183. package/lib/esm/constants/httpStatusMessages.js.map +1 -1
  184. package/lib/esm/decorators/class/children.js.map +1 -1
  185. package/lib/esm/decorators/collections/collectionOf.js +29 -0
  186. package/lib/esm/decorators/collections/collectionOf.js.map +1 -1
  187. package/lib/esm/decorators/common/allow.js.map +1 -1
  188. package/lib/esm/decorators/common/any.js.map +1 -1
  189. package/lib/esm/decorators/common/defaultMsg.js.map +1 -1
  190. package/lib/esm/decorators/common/description.js +9 -12
  191. package/lib/esm/decorators/common/description.js.map +1 -1
  192. package/lib/esm/decorators/common/discriminatorKey.js +1 -1
  193. package/lib/esm/decorators/common/discriminatorKey.js.map +1 -1
  194. package/lib/esm/decorators/common/enum.js.map +1 -1
  195. package/lib/esm/decorators/common/examples.js.map +1 -1
  196. package/lib/esm/decorators/common/format.js.map +1 -1
  197. package/lib/esm/decorators/common/forwardGroups.js +1 -1
  198. package/lib/esm/decorators/common/forwardGroups.js.map +1 -1
  199. package/lib/esm/decorators/common/groups.js +15 -26
  200. package/lib/esm/decorators/common/groups.js.map +1 -1
  201. package/lib/esm/decorators/common/integer.js.map +1 -1
  202. package/lib/esm/decorators/common/oneOf.js +1 -2
  203. package/lib/esm/decorators/common/oneOf.js.map +1 -1
  204. package/lib/esm/decorators/common/optional.js.map +1 -1
  205. package/lib/esm/decorators/config/jsonEntityComponent.js.map +1 -1
  206. package/lib/esm/decorators/generics/genericOf.js +8 -17
  207. package/lib/esm/decorators/generics/genericOf.js.map +1 -1
  208. package/lib/esm/decorators/generics/generics.js +3 -3
  209. package/lib/esm/decorators/generics/generics.js.map +1 -1
  210. package/lib/esm/decorators/operations/acceptMime.js.map +1 -1
  211. package/lib/esm/decorators/operations/consumes.js.map +1 -1
  212. package/lib/esm/decorators/operations/deprecated.js.map +1 -1
  213. package/lib/esm/decorators/operations/header.js.map +1 -1
  214. package/lib/esm/decorators/operations/in.js.map +1 -1
  215. package/lib/esm/decorators/operations/inFile.js +2 -2
  216. package/lib/esm/decorators/operations/inFile.js.map +1 -1
  217. package/lib/esm/decorators/operations/operation.js +5 -1
  218. package/lib/esm/decorators/operations/operation.js.map +1 -1
  219. package/lib/esm/decorators/operations/operationId.js.map +1 -1
  220. package/lib/esm/decorators/operations/operationPath.js +1 -1
  221. package/lib/esm/decorators/operations/operationPath.js.map +1 -1
  222. package/lib/esm/decorators/operations/path.js.map +1 -1
  223. package/lib/esm/decorators/operations/produces.js.map +1 -1
  224. package/lib/esm/decorators/operations/redirect.js +1 -1
  225. package/lib/esm/decorators/operations/redirect.js.map +1 -1
  226. package/lib/esm/decorators/operations/returns.js +40 -63
  227. package/lib/esm/decorators/operations/returns.js.map +1 -1
  228. package/lib/esm/decorators/operations/security.js.map +1 -1
  229. package/lib/esm/decorators/operations/status.js.map +1 -1
  230. package/lib/esm/decorators/operations/summary.js.map +1 -1
  231. package/lib/esm/decorators/operations/tags.js +10 -1
  232. package/lib/esm/decorators/operations/tags.js.map +1 -1
  233. package/lib/esm/domain/DecoratorContext.js.map +1 -1
  234. package/lib/esm/domain/JsonClassStore.js +1 -1
  235. package/lib/esm/domain/JsonClassStore.js.map +1 -1
  236. package/lib/esm/domain/JsonEntityStore.js +40 -35
  237. package/lib/esm/domain/JsonEntityStore.js.map +1 -1
  238. package/lib/esm/domain/JsonLazyRef.js.map +1 -1
  239. package/lib/esm/domain/JsonMap.js.map +1 -1
  240. package/lib/esm/domain/JsonMedia.js +27 -6
  241. package/lib/esm/domain/JsonMedia.js.map +1 -1
  242. package/lib/esm/domain/JsonMethodStore.js +28 -9
  243. package/lib/esm/domain/JsonMethodStore.js.map +1 -1
  244. package/lib/esm/domain/JsonOperation.js +34 -7
  245. package/lib/esm/domain/JsonOperation.js.map +1 -1
  246. package/lib/esm/domain/JsonParameter.js +20 -5
  247. package/lib/esm/domain/JsonParameter.js.map +1 -1
  248. package/lib/esm/domain/JsonParameterStore.js +16 -26
  249. package/lib/esm/domain/JsonParameterStore.js.map +1 -1
  250. package/lib/esm/domain/JsonPropertyStore.js +15 -46
  251. package/lib/esm/domain/JsonPropertyStore.js.map +1 -1
  252. package/lib/esm/domain/JsonSchema.js +287 -80
  253. package/lib/esm/domain/JsonSchema.js.map +1 -1
  254. package/lib/esm/domain/__fixtures__/inspectOperationsPaths.js +7 -0
  255. package/lib/esm/domain/__fixtures__/inspectOperationsPaths.js.map +1 -0
  256. package/lib/esm/fn/email.js +2 -2
  257. package/lib/esm/fn/email.js.map +1 -1
  258. package/lib/esm/fn/uri.js +2 -2
  259. package/lib/esm/fn/uri.js.map +1 -1
  260. package/lib/esm/fn/url.js +2 -2
  261. package/lib/esm/fn/url.js.map +1 -1
  262. package/lib/esm/index.js +4 -8
  263. package/lib/esm/index.js.map +1 -1
  264. package/lib/esm/utils/generics.js +3 -32
  265. package/lib/esm/utils/generics.js.map +1 -1
  266. package/lib/esm/utils/getJsonEntityStore.js +3 -3
  267. package/lib/esm/utils/getJsonEntityStore.js.map +1 -1
  268. package/lib/esm/utils/getJsonSchema.js +24 -17
  269. package/lib/esm/utils/getJsonSchema.js.map +1 -1
  270. package/lib/esm/utils/getOperationsStores.js.map +1 -1
  271. package/lib/esm/utils/getPropertiesStores.js.map +1 -1
  272. package/lib/esm/utils/getSpec.js.map +1 -1
  273. package/lib/esm/utils/mergeSchema.js +99 -0
  274. package/lib/esm/utils/mergeSchema.js.map +1 -0
  275. package/lib/esm/utils/ref.js +14 -13
  276. package/lib/esm/utils/ref.js.map +1 -1
  277. package/lib/types/components/default/classMapper.d.ts +1 -1
  278. package/lib/types/components/default/genericsMapper.d.ts +9 -2
  279. package/lib/types/components/default/lazyRefMapper.d.ts +1 -1
  280. package/lib/types/components/default/nextMapper.d.ts +5 -0
  281. package/lib/types/components/default/ofMapper.d.ts +1 -1
  282. package/lib/types/components/index.d.ts +1 -7
  283. package/lib/types/components/open-spec/nullableMapper.d.ts +2 -1
  284. package/lib/types/components/open-spec/operationInQueryMapper.d.ts +1 -1
  285. package/lib/types/constants/VendorKeys.d.ts +10 -0
  286. package/lib/types/decorators/collections/collectionOf.d.ts +6 -0
  287. package/lib/types/decorators/generics/genericOf.d.ts +3 -0
  288. package/lib/types/decorators/generics/generics.d.ts +2 -2
  289. package/lib/types/decorators/operations/acceptMime.d.ts +1 -1
  290. package/lib/types/decorators/operations/consumes.d.ts +1 -1
  291. package/lib/types/decorators/operations/header.d.ts +1 -1
  292. package/lib/types/decorators/operations/operationId.d.ts +1 -1
  293. package/lib/types/decorators/operations/operationPath.d.ts +1 -1
  294. package/lib/types/decorators/operations/path.d.ts +1 -1
  295. package/lib/types/decorators/operations/returns.d.ts +11 -9
  296. package/lib/types/decorators/operations/tags.d.ts +11 -2
  297. package/lib/types/domain/JsonClassStore.d.ts +1 -1
  298. package/lib/types/domain/JsonEntityStore.d.ts +20 -16
  299. package/lib/types/domain/JsonMedia.d.ts +4 -5
  300. package/lib/types/domain/JsonMethodStore.d.ts +9 -2
  301. package/lib/types/domain/JsonOperation.d.ts +7 -4
  302. package/lib/types/domain/JsonParameter.d.ts +4 -7
  303. package/lib/types/domain/JsonParameterStore.d.ts +1 -4
  304. package/lib/types/domain/JsonPropertyStore.d.ts +2 -21
  305. package/lib/types/domain/JsonSchema.d.ts +83 -40
  306. package/lib/types/domain/__fixtures__/inspectOperationsPaths.d.ts +5 -0
  307. package/lib/types/index.d.ts +4 -8
  308. package/lib/types/interfaces/JsonSchemaOptions.d.ts +16 -2
  309. package/lib/types/utils/generics.d.ts +7 -48
  310. package/lib/types/utils/getJsonEntityStore.d.ts +3 -3
  311. package/lib/types/utils/getJsonSchema.d.ts +3 -2
  312. package/lib/types/utils/mergeSchema.d.ts +2 -0
  313. package/lib/types/utils/ref.d.ts +4 -2
  314. package/lib/types-esm/components/default/classMapper.d.ts +1 -1
  315. package/lib/types-esm/components/default/genericsMapper.d.ts +9 -2
  316. package/lib/types-esm/components/default/lazyRefMapper.d.ts +1 -1
  317. package/lib/types-esm/components/default/nextMapper.d.ts +5 -0
  318. package/lib/types-esm/components/default/ofMapper.d.ts +1 -1
  319. package/lib/types-esm/components/index.d.ts +1 -7
  320. package/lib/types-esm/components/open-spec/nullableMapper.d.ts +2 -1
  321. package/lib/types-esm/components/open-spec/operationInQueryMapper.d.ts +1 -1
  322. package/lib/types-esm/constants/VendorKeys.d.ts +10 -0
  323. package/lib/types-esm/decorators/collections/collectionOf.d.ts +6 -0
  324. package/lib/types-esm/decorators/generics/genericOf.d.ts +3 -0
  325. package/lib/types-esm/decorators/generics/generics.d.ts +2 -2
  326. package/lib/types-esm/decorators/operations/acceptMime.d.ts +1 -1
  327. package/lib/types-esm/decorators/operations/consumes.d.ts +1 -1
  328. package/lib/types-esm/decorators/operations/header.d.ts +1 -1
  329. package/lib/types-esm/decorators/operations/operationId.d.ts +1 -1
  330. package/lib/types-esm/decorators/operations/operationPath.d.ts +1 -1
  331. package/lib/types-esm/decorators/operations/path.d.ts +1 -1
  332. package/lib/types-esm/decorators/operations/returns.d.ts +11 -9
  333. package/lib/types-esm/decorators/operations/tags.d.ts +11 -2
  334. package/lib/types-esm/domain/JsonClassStore.d.ts +1 -1
  335. package/lib/types-esm/domain/JsonEntityStore.d.ts +20 -16
  336. package/lib/types-esm/domain/JsonMedia.d.ts +4 -5
  337. package/lib/types-esm/domain/JsonMethodStore.d.ts +9 -2
  338. package/lib/types-esm/domain/JsonOperation.d.ts +7 -4
  339. package/lib/types-esm/domain/JsonParameter.d.ts +4 -7
  340. package/lib/types-esm/domain/JsonParameterStore.d.ts +1 -4
  341. package/lib/types-esm/domain/JsonPropertyStore.d.ts +2 -21
  342. package/lib/types-esm/domain/JsonSchema.d.ts +83 -40
  343. package/lib/types-esm/domain/__fixtures__/inspectOperationsPaths.d.ts +5 -0
  344. package/lib/types-esm/index.d.ts +4 -8
  345. package/lib/types-esm/interfaces/JsonSchemaOptions.d.ts +16 -2
  346. package/lib/types-esm/utils/generics.d.ts +7 -48
  347. package/lib/types-esm/utils/getJsonEntityStore.d.ts +3 -3
  348. package/lib/types-esm/utils/getJsonSchema.d.ts +3 -2
  349. package/lib/types-esm/utils/mergeSchema.d.ts +2 -0
  350. package/lib/types-esm/utils/ref.d.ts +4 -2
  351. package/package.json +6 -6
  352. package/lib/cjs/components/async-api/channelsMapper.js +0 -62
  353. package/lib/cjs/components/async-api/channelsMapper.js.map +0 -1
  354. package/lib/cjs/components/async-api/generate.js +0 -20
  355. package/lib/cjs/components/async-api/generate.js.map +0 -1
  356. package/lib/cjs/components/async-api/messageMapper.js +0 -44
  357. package/lib/cjs/components/async-api/messageMapper.js.map +0 -1
  358. package/lib/cjs/components/async-api/payloadMapper.js +0 -52
  359. package/lib/cjs/components/async-api/payloadMapper.js.map +0 -1
  360. package/lib/cjs/components/async-api/responseMapper.js +0 -58
  361. package/lib/cjs/components/async-api/responseMapper.js.map +0 -1
  362. package/lib/cjs/components/default/itemMapper.js +0 -10
  363. package/lib/cjs/components/default/itemMapper.js.map +0 -1
  364. package/lib/cjs/components/default/propertiesMapper.js +0 -25
  365. package/lib/cjs/components/default/propertiesMapper.js.map +0 -1
  366. package/lib/cjs/utils/somethingOf.js +0 -16
  367. package/lib/cjs/utils/somethingOf.js.map +0 -1
  368. package/lib/esm/components/async-api/channelsMapper.js +0 -58
  369. package/lib/esm/components/async-api/channelsMapper.js.map +0 -1
  370. package/lib/esm/components/async-api/generate.js +0 -18
  371. package/lib/esm/components/async-api/generate.js.map +0 -1
  372. package/lib/esm/components/async-api/messageMapper.js +0 -40
  373. package/lib/esm/components/async-api/messageMapper.js.map +0 -1
  374. package/lib/esm/components/async-api/payloadMapper.js +0 -48
  375. package/lib/esm/components/async-api/payloadMapper.js.map +0 -1
  376. package/lib/esm/components/async-api/responseMapper.js +0 -54
  377. package/lib/esm/components/async-api/responseMapper.js.map +0 -1
  378. package/lib/esm/components/default/itemMapper.js +0 -6
  379. package/lib/esm/components/default/itemMapper.js.map +0 -1
  380. package/lib/esm/components/default/propertiesMapper.js +0 -21
  381. package/lib/esm/components/default/propertiesMapper.js.map +0 -1
  382. package/lib/esm/utils/somethingOf.js +0 -12
  383. package/lib/esm/utils/somethingOf.js.map +0 -1
  384. package/lib/types/components/async-api/channelsMapper.d.ts +0 -2
  385. package/lib/types/components/async-api/generate.d.ts +0 -1
  386. package/lib/types/components/async-api/messageMapper.d.ts +0 -6
  387. package/lib/types/components/async-api/payloadMapper.d.ts +0 -4
  388. package/lib/types/components/async-api/responseMapper.d.ts +0 -6
  389. package/lib/types/components/default/itemMapper.d.ts +0 -2
  390. package/lib/types/components/default/propertiesMapper.d.ts +0 -3
  391. package/lib/types/utils/somethingOf.d.ts +0 -1
  392. package/lib/types-esm/components/async-api/channelsMapper.d.ts +0 -2
  393. package/lib/types-esm/components/async-api/generate.d.ts +0 -1
  394. package/lib/types-esm/components/async-api/messageMapper.d.ts +0 -6
  395. package/lib/types-esm/components/async-api/payloadMapper.d.ts +0 -4
  396. package/lib/types-esm/components/async-api/responseMapper.d.ts +0 -6
  397. package/lib/types-esm/components/default/itemMapper.d.ts +0 -2
  398. package/lib/types-esm/components/default/propertiesMapper.d.ts +0 -3
  399. package/lib/types-esm/utils/somethingOf.d.ts +0 -1
@@ -1,4 +1,5 @@
1
1
  import { SpecTypes } from "../domain/SpecTypes.js";
2
+ import type { GenericsMap } from "../utils/generics.js";
2
3
  export interface JsonSchemaOptions {
3
4
  /**
4
5
  * Map properties with the alias name. By default, false
@@ -13,12 +14,16 @@ export interface JsonSchemaOptions {
13
14
  */
14
15
  specType?: SpecTypes;
15
16
  /**
16
- * Define a groups restriction to generate the JsonSchema.
17
+ * Define the spec version for OPENAPI (3.1.0, 3.0.3, 3.0.2, 3.0.1, 3.0.0)
18
+ */
19
+ specVersion?: string;
20
+ /**
21
+ * Define a group restriction to generate the JsonSchema.
17
22
  * Set false to disable groups.
18
23
  */
19
24
  groups?: string[] | false;
20
25
  /**
21
- * Set the postfix groups name for generated model and ref.
26
+ * Set the postfix groups name for a generated model and ref.
22
27
  */
23
28
  groupsName?: string;
24
29
  /**
@@ -29,5 +34,14 @@ export interface JsonSchemaOptions {
29
34
  * Inline enums when enum instead of using $ref.
30
35
  */
31
36
  inlineEnums?: boolean;
37
+ /**
38
+ * Represents optional generic definitions that adhere to the JSON Schema standard.
39
+ *
40
+ * This property allows the specification of generics when constructing or representing a JSON schema.
41
+ * It can be used to define reusable and parameterized components within the schema structure.
42
+ *
43
+ * @type {GenericsMap|undefined}
44
+ */
45
+ generics?: GenericsMap;
32
46
  [key: string]: any;
33
47
  }
@@ -1,50 +1,9 @@
1
1
  import { Type } from "@tsed/core";
2
2
  import { JsonSchema } from "../domain/JsonSchema.js";
3
- export type GenericValue = Type<any> | JsonSchema | any;
4
- /**
5
- * @ignore
6
- */
7
- export type GenericsMap = Map<string, GenericValue>;
8
- /**
9
- * @ignore
10
- */
11
- export interface GenericTypes {
12
- genericTypes: Type<any>[];
13
- [key: string]: any;
14
- }
15
- /**
16
- * @ignore
17
- */
18
- export interface GenericLabels {
19
- genericLabels: string[];
20
- [key: string]: any;
21
- }
22
- /**
23
- * @ignore
24
- */
25
- export interface NestedGenerics {
26
- nestedGenerics: GenericValue[][];
27
- [key: string]: any;
28
- }
29
- /**
30
- * @ignore
31
- */
32
- export interface GenericsContext extends GenericTypes, GenericLabels, NestedGenerics {
33
- generics: GenericsMap;
34
- }
35
- /**
36
- * @ignore
37
- * @param genericLabels
38
- * @param genericTypes
39
- */
40
- export declare function getGenericsMap(genericLabels: string[], genericTypes: GenericValue[]): GenericsMap;
41
- /**
42
- * @ignore
43
- * @param options
44
- */
45
- export declare function mapGenericsOptions(options: Partial<GenericTypes & GenericLabels>): Partial<GenericTypes & GenericLabels>;
46
- /**
47
- * @ignore
48
- * @param value
49
- */
50
- export declare function popGenerics(value: NestedGenerics): NestedGenerics & GenericTypes;
3
+ import { JsonSchemaOptions } from "../interfaces/JsonSchemaOptions.js";
4
+ export type GenericValue = Type<any> | JsonSchema | String | Number | Boolean | Object | Date;
5
+ export type GenericsMap = Record<string, [GenericValue] | [GenericValue, GenericsMap]>;
6
+ export declare function getGenericsOptions(value: JsonSchema, options: JsonSchemaOptions): {
7
+ generics: GenericsMap | undefined;
8
+ mapper: string;
9
+ };
@@ -1,9 +1,9 @@
1
1
  import { Type } from "@tsed/core";
2
- import { JsonEntityStore } from "../domain/JsonEntityStore.js";
3
2
  import { JsonClassStore } from "../domain/JsonClassStore.js";
4
- import { JsonPropertyStore } from "../domain/JsonPropertyStore.js";
5
- import { JsonParameterStore } from "../domain/JsonParameterStore.js";
3
+ import { JsonEntityStore } from "../domain/JsonEntityStore.js";
6
4
  import { JsonMethodStore } from "../domain/JsonMethodStore.js";
5
+ import { JsonParameterStore } from "../domain/JsonParameterStore.js";
6
+ import { JsonPropertyStore } from "../domain/JsonPropertyStore.js";
7
7
  /**
8
8
  * Get entity store from decorator args
9
9
  * @param target
@@ -1,4 +1,5 @@
1
+ import "../components/index.js";
1
2
  import { Type } from "@tsed/core";
2
- import "../components/index";
3
+ import { JsonParameterStore } from "../domain/JsonParameterStore.js";
3
4
  import { JsonSchemaOptions } from "../interfaces/JsonSchemaOptions.js";
4
- export declare function getJsonSchema(model: Type<any> | any, options?: JsonSchemaOptions): any;
5
+ export declare function getJsonSchema(model: Type<any> | JsonParameterStore, options?: JsonSchemaOptions): any;
@@ -0,0 +1,2 @@
1
+ import type { JSONSchema7 } from "json-schema";
2
+ export declare function mergeSchema(schema1: JSONSchema7, schema2: JSONSchema7): JSONSchema7;
@@ -1,5 +1,7 @@
1
+ import type { JSONSchema7 } from "json-schema";
1
2
  import type { JsonSchema } from "../domain/JsonSchema.js";
2
3
  import { JsonSchemaOptions } from "../interfaces/JsonSchemaOptions.js";
4
+ export declare function getSchemaFromRef($ref: string | undefined, options: JsonSchemaOptions): JSONSchema7 | undefined;
3
5
  /**
4
6
  * @ignore
5
7
  */
@@ -7,8 +9,8 @@ export declare function createRefName(name: string, options: JsonSchemaOptions):
7
9
  /**
8
10
  * @ignore
9
11
  */
10
- export declare function createRef(name: string, schema: JsonSchema, options: JsonSchemaOptions): any;
12
+ export declare function createRef(name: string, schema: JsonSchema, options: JsonSchemaOptions): JSONSchema7;
11
13
  /**
12
14
  * @ignore
13
15
  */
14
- export declare function toRef(value: JsonSchema, schema: unknown | undefined, options: JsonSchemaOptions): any;
16
+ export declare function toRef(value: JsonSchema, schema: JSONSchema7 | undefined | null, options: JsonSchemaOptions): JSONSchema7;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@tsed/schema",
3
3
  "description": "JsonSchema module for Ts.ED Framework",
4
4
  "type": "commonjs",
5
- "version": "7.86.3",
5
+ "version": "7.87.0",
6
6
  "source": "./src/index.ts",
7
7
  "main": "./lib/cjs/index.js",
8
8
  "module": "./lib/esm/index.js",
@@ -37,7 +37,7 @@
37
37
  "tsed"
38
38
  ],
39
39
  "dependencies": {
40
- "@tsed/openspec": "7.86.3",
40
+ "@tsed/openspec": "7.87.0",
41
41
  "change-case": "^4.1.2",
42
42
  "fs-extra": "^11.2.0",
43
43
  "json-schema": "0.4.0",
@@ -47,10 +47,10 @@
47
47
  },
48
48
  "devDependencies": {
49
49
  "@apidevtools/swagger-parser": "10.1.0",
50
- "@tsed/barrels": "7.86.3",
51
- "@tsed/core": "7.86.3",
52
- "@tsed/openspec": "7.86.3",
53
- "@tsed/typescript": "7.86.3",
50
+ "@tsed/barrels": "7.87.0",
51
+ "@tsed/core": "7.87.0",
52
+ "@tsed/openspec": "7.87.0",
53
+ "@tsed/typescript": "7.87.0",
54
54
  "@types/fs-extra": "11.0.4",
55
55
  "@types/json-schema": "7.0.15",
56
56
  "@types/picomatch": "2.3.3",
@@ -1,62 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.channelsMapper = void 0;
4
- const change_case_1 = require("change-case");
5
- const OperationVerbs_js_1 = require("../../constants/OperationVerbs.js");
6
- const JsonSchemaMapperContainer_js_1 = require("../../registries/JsonSchemaMapperContainer.js");
7
- const buildPath_js_1 = require("../../utils/buildPath.js");
8
- const getJsonEntityStore_js_1 = require("../../utils/getJsonEntityStore.js");
9
- const getOperationsStores_js_1 = require("../../utils/getOperationsStores.js");
10
- const removeHiddenOperation_js_1 = require("../../utils/removeHiddenOperation.js");
11
- const ALLOWED_VERBS = [OperationVerbs_js_1.OperationVerbs.PUBLISH, OperationVerbs_js_1.OperationVerbs.SUBSCRIBE];
12
- function pushToChannels(options) {
13
- return (channels, { operationPath, operationStore }) => {
14
- const path = options.ctrlRootPath || "/";
15
- const method = operationPath.method.toLowerCase();
16
- const operationId = (0, change_case_1.camelCase)(`${method.toLowerCase()} ${operationStore.parent.schema.getName()}`);
17
- const message = (0, JsonSchemaMapperContainer_js_1.execMapper)("message", [operationStore, operationPath], options);
18
- return {
19
- ...channels,
20
- [path]: {
21
- ...channels[path],
22
- [method]: {
23
- ...channels[path]?.[method],
24
- operationId,
25
- message: {
26
- oneOf: [...(channels[path]?.[method]?.message?.oneOf || []), message]
27
- }
28
- }
29
- }
30
- };
31
- };
32
- }
33
- function expandOperationPaths(options) {
34
- return (operationStore) => {
35
- const operationPaths = operationStore.operation.getAllowedOperationPath(ALLOWED_VERBS);
36
- if (operationPaths.length === 0) {
37
- return [];
38
- }
39
- return operationPaths.map((operationPath) => {
40
- return {
41
- operationPath,
42
- operationStore
43
- };
44
- });
45
- };
46
- }
47
- function channelsMapper(model, { channels, rootPath, ...options }) {
48
- const store = (0, getJsonEntityStore_js_1.getJsonEntityStore)(model);
49
- const ctrlPath = store.path;
50
- const ctrlRootPath = (0, buildPath_js_1.buildPath)(rootPath + ctrlPath);
51
- options = {
52
- ...options,
53
- ctrlRootPath
54
- };
55
- return [...(0, getOperationsStores_js_1.getOperationsStores)(model).values()]
56
- .filter(removeHiddenOperation_js_1.removeHiddenOperation)
57
- .flatMap(expandOperationPaths(options))
58
- .reduce(pushToChannels(options), channels);
59
- }
60
- exports.channelsMapper = channelsMapper;
61
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("channels", channelsMapper);
62
- //# sourceMappingURL=channelsMapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channelsMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/channelsMapper.ts"],"names":[],"mappings":";;;AAAA,6CAAsC;AACtC,yEAAiE;AAIjE,gGAAmG;AACnG,2DAAmD;AACnD,6EAAqE;AACrE,+EAAuE;AACvE,mFAA2E;AAE3E,MAAM,aAAa,GAAG,CAAC,kCAAc,CAAC,OAAO,EAAE,kCAAc,CAAC,SAAS,CAAC,CAAC;AAEzE,SAAS,cAAc,CAAC,OAA0B;IAChD,OAAO,CACL,QAAa,EACb,EACE,aAAa,EACb,cAAc,EAIf,EACD,EAAE;QACF,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,IAAI,GAAG,CAAC;QACzC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,WAAW,GAAG,IAAA,uBAAS,EAAC,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAEnG,MAAM,OAAO,GAAG,IAAA,yCAAU,EAAC,SAAS,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAEhF,OAAO;YACL,GAAG,QAAQ;YACX,CAAC,IAAI,CAAC,EAAE;gBACN,GAAI,QAAgB,CAAC,IAAI,CAAC;gBAC1B,CAAC,MAAM,CAAC,EAAE;oBACR,GAAI,QAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;oBACpC,WAAW;oBACX,OAAO,EAAE;wBACP,KAAK,EAAE,CAAC,GAAG,CAAE,QAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC;qBAC/E;iBACF;aACF;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,OAA0B;IACtD,OAAO,CAAC,cAA+B,EAAE,EAAE;QACzC,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAEvF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,OAAO,EAAE,CAAC;SACX;QAED,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;YAC1C,OAAO;gBACL,aAAa;gBACb,cAAc;aACf,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,SAAgB,cAAc,CAAC,KAAU,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAoB;IAC5F,MAAM,KAAK,GAAG,IAAA,0CAAkB,EAAC,KAAK,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;IAC5B,MAAM,YAAY,GAAG,IAAA,wBAAS,EAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;IAEpD,OAAO,GAAG;QACR,GAAG,OAAO;QACV,YAAY;KACb,CAAC;IAEF,OAAO,CAAC,GAAG,IAAA,4CAAmB,EAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;SAC5C,MAAM,CAAC,gDAAqB,CAAC;SAC7B,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;SACtC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAdD,wCAcC;AAED,IAAA,uDAAwB,EAAC,UAAU,EAAE,cAAc,CAAC,CAAC"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const core_1 = require("@tsed/core");
4
- const SpecTypes_js_1 = require("../../domain/SpecTypes.js");
5
- const JsonSchemaMapperContainer_js_1 = require("../../registries/JsonSchemaMapperContainer.js");
6
- function generate(model, options) {
7
- const specJson = {
8
- channels: (0, JsonSchemaMapperContainer_js_1.execMapper)("channels", [model], options)
9
- };
10
- specJson.tags = (0, core_1.uniqBy)(options.tags, "name");
11
- if (options.components?.schemas && Object.keys(options.components.schemas).length) {
12
- specJson.components = {
13
- ...options.components,
14
- schemas: options.components.schemas
15
- };
16
- }
17
- return specJson;
18
- }
19
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("generate", generate, SpecTypes_js_1.SpecTypes.ASYNCAPI);
20
- //# sourceMappingURL=generate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../../src/components/async-api/generate.ts"],"names":[],"mappings":";;AAAA,qCAAkD;AAClD,4DAAoD;AACpD,gGAAmG;AAGnG,SAAS,QAAQ,CAAC,KAAgB,EAAE,OAA8B;IAChE,MAAM,QAAQ,GAAQ;QACpB,QAAQ,EAAE,IAAA,yCAAU,EAAC,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;KACnD,CAAC;IAEF,QAAQ,CAAC,IAAI,GAAG,IAAA,aAAM,EAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE7C,IAAI,OAAO,CAAC,UAAU,EAAE,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;QACjF,QAAQ,CAAC,UAAU,GAAG;YACpB,GAAG,OAAO,CAAC,UAAU;YACrB,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO;SACpC,CAAC;KACH;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,IAAA,uDAAwB,EAAC,UAAU,EAAE,QAAQ,EAAE,wBAAS,CAAC,QAAQ,CAAC,CAAC"}
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.messageMapper = void 0;
4
- const core_1 = require("@tsed/core");
5
- const OperationVerbs_js_1 = require("../../constants/OperationVerbs.js");
6
- const SpecTypes_js_1 = require("../../domain/SpecTypes.js");
7
- const JsonSchemaMapperContainer_js_1 = require("../../registries/JsonSchemaMapperContainer.js");
8
- const somethingOf_js_1 = require("../../utils/somethingOf.js");
9
- function messageMapper(jsonOperationStore, operationPath, { tags = [], defaultTags = [], ...options } = {}) {
10
- const { path: event, method } = operationPath;
11
- const messageKey = String(event);
12
- let message = (0, core_1.getValue)(options.components, "messages." + event, (0, core_1.cleanObject)({
13
- description: jsonOperationStore.operation.get("description"),
14
- summary: jsonOperationStore.operation.get("summary")
15
- }));
16
- if (method.toUpperCase() === OperationVerbs_js_1.OperationVerbs.PUBLISH) {
17
- const payload = (0, JsonSchemaMapperContainer_js_1.execMapper)("payload", [jsonOperationStore, operationPath], options);
18
- if (payload) {
19
- message.payload = payload;
20
- }
21
- const responses = jsonOperationStore.operation
22
- .getAllowedOperationPath([OperationVerbs_js_1.OperationVerbs.SUBSCRIBE])
23
- .map((operationPath) => {
24
- return (0, JsonSchemaMapperContainer_js_1.execMapper)("message", [jsonOperationStore, operationPath], options);
25
- })
26
- .filter(Boolean);
27
- const responsesSchema = (0, somethingOf_js_1.makeOf)("oneOf", responses);
28
- if (responsesSchema) {
29
- message["x-response"] = responsesSchema;
30
- }
31
- }
32
- else {
33
- const response = (0, JsonSchemaMapperContainer_js_1.execMapper)("response", [jsonOperationStore, operationPath], options);
34
- if (response) {
35
- message["x-response"] = response;
36
- }
37
- }
38
- options.components.messages = options.components.messages || {};
39
- options.components.messages[messageKey] = message;
40
- return { $ref: `#/components/messages/${messageKey}` };
41
- }
42
- exports.messageMapper = messageMapper;
43
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("message", messageMapper, SpecTypes_js_1.SpecTypes.ASYNCAPI);
44
- //# sourceMappingURL=messageMapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"messageMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/messageMapper.ts"],"names":[],"mappings":";;;AAAA,qCAAiD;AACjD,yEAAiE;AAGjE,4DAAoD;AAEpD,gGAAmG;AACnG,+DAAkD;AAElD,SAAgB,aAAa,CAC3B,kBAAmC,EACnC,aAA6B,EAC7B,EAAC,IAAI,GAAG,EAAE,EAAE,WAAW,GAAG,EAAE,EAAE,GAAG,OAAO,KAAuB,EAAE;IAEjE,MAAM,EAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAC,GAAG,aAAa,CAAC;IAE5C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAEjC,IAAI,OAAO,GAAQ,IAAA,eAAQ,EACzB,OAAO,CAAC,UAAU,EAClB,WAAW,GAAG,KAAK,EACnB,IAAA,kBAAW,EAAC;QACV,WAAW,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;QAC5D,OAAO,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC;KACrD,CAAC,CACH,CAAC;IAEF,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,kCAAc,CAAC,OAAO,EAAE;QACnD,MAAM,OAAO,GAAG,IAAA,yCAAU,EAAC,SAAS,EAAE,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAEpF,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;SAC3B;QAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,SAAS;aAC3C,uBAAuB,CAAC,CAAC,kCAAc,CAAC,SAAS,CAAC,CAAC;aACnD,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;YACrB,OAAO,IAAA,yCAAU,EAAC,SAAS,EAAE,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAC7E,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnB,MAAM,eAAe,GAAG,IAAA,uBAAM,EAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAEnD,IAAI,eAAe,EAAE;YACnB,OAAO,CAAC,YAAY,CAAC,GAAG,eAAe,CAAC;SACzC;KACF;SAAM;QACL,MAAM,QAAQ,GAAG,IAAA,yCAAU,EAAC,UAAU,EAAE,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAEtF,IAAI,QAAQ,EAAE;YACZ,OAAO,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC;SAClC;KACF;IAED,OAAO,CAAC,UAAW,CAAC,QAAQ,GAAG,OAAO,CAAC,UAAW,CAAC,QAAQ,IAAI,EAAE,CAAC;IAClE,OAAO,CAAC,UAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;IAEnD,OAAO,EAAC,IAAI,EAAE,yBAAyB,UAAU,EAAE,EAAC,CAAC;AACvD,CAAC;AAjDD,sCAiDC;AAED,IAAA,uDAAwB,EAAC,SAAS,EAAE,aAAa,EAAE,wBAAS,CAAC,QAAQ,CAAC,CAAC"}
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.payloadMapper = void 0;
4
- const core_1 = require("@tsed/core");
5
- const change_case_1 = require("change-case");
6
- const JsonParameterTypes_js_1 = require("../../domain/JsonParameterTypes.js");
7
- const SpecTypes_js_1 = require("../../domain/SpecTypes.js");
8
- const JsonSchemaMapperContainer_js_1 = require("../../registries/JsonSchemaMapperContainer.js");
9
- const generics_js_1 = require("../../utils/generics.js");
10
- const somethingOf_js_1 = require("../../utils/somethingOf.js");
11
- function mapOptions(parameter, options = {}) {
12
- return {
13
- ...options,
14
- groups: parameter.groups,
15
- groupsName: parameter.groupsName
16
- };
17
- }
18
- function getParameters(jsonOperation, options) {
19
- return jsonOperation.get("parameters").filter((parameter) => (0, JsonParameterTypes_js_1.isParameterType)(parameter.get("in")));
20
- }
21
- function payloadMapper(jsonOperationStore, operationPath, options) {
22
- const parameters = getParameters(jsonOperationStore.operation, options);
23
- const payloadName = (0, change_case_1.pascalCase)([operationPath.path, operationPath.method, "Payload"].join(" "));
24
- (0, core_1.setValue)(options, `components.schemas.${payloadName}`, {});
25
- const allOf = parameters
26
- .map((parameter) => {
27
- const opts = mapOptions(parameter, options);
28
- const jsonSchema = (0, JsonSchemaMapperContainer_js_1.execMapper)("item", [parameter.$schema], {
29
- ...opts,
30
- ...(0, generics_js_1.popGenerics)(parameter)
31
- });
32
- switch (parameter.get("in")) {
33
- case JsonParameterTypes_js_1.JsonParameterTypes.BODY:
34
- return jsonSchema;
35
- case JsonParameterTypes_js_1.JsonParameterTypes.QUERY:
36
- case JsonParameterTypes_js_1.JsonParameterTypes.PATH:
37
- case JsonParameterTypes_js_1.JsonParameterTypes.HEADER:
38
- return {
39
- type: "object",
40
- properties: {
41
- [parameter.get("name")]: jsonSchema
42
- }
43
- };
44
- }
45
- return jsonSchema;
46
- }, {})
47
- .filter(Boolean);
48
- return (0, somethingOf_js_1.makeOf)("allOf", allOf);
49
- }
50
- exports.payloadMapper = payloadMapper;
51
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("payload", payloadMapper, SpecTypes_js_1.SpecTypes.ASYNCAPI);
52
- //# sourceMappingURL=payloadMapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"payloadMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/payloadMapper.ts"],"names":[],"mappings":";;;AAAA,qCAAoC;AACpC,6CAAuC;AAIvC,8EAAuF;AACvF,4DAAoD;AAEpD,gGAAmG;AACnG,yDAAoD;AACpD,+DAAkD;AAElD,SAAS,UAAU,CAAC,SAAwB,EAAE,UAA6B,EAAE;IAC3E,OAAO;QACL,GAAG,OAAO;QACV,MAAM,EAAE,SAAS,CAAC,MAAM;QACxB,UAAU,EAAE,SAAS,CAAC,UAAU;KACjC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,aAA4B,EAAE,OAA0B;IAC7E,OAAO,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,SAAwB,EAAE,EAAE,CAAC,IAAA,uCAAe,EAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpH,CAAC;AAED,SAAgB,aAAa,CAAC,kBAAmC,EAAE,aAA6B,EAAE,OAA0B;IAC1H,MAAM,UAAU,GAAG,aAAa,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACxE,MAAM,WAAW,GAAG,IAAA,wBAAU,EAAC,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAEhG,IAAA,eAAQ,EAAC,OAAO,EAAE,sBAAsB,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAE3D,MAAM,KAAK,GAAG,UAAU;SACrB,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;QACjB,MAAM,IAAI,GAAG,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAA,yCAAU,EAAC,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;YACzD,GAAG,IAAI;YACP,GAAG,IAAA,yBAAW,EAAC,SAAS,CAAC;SAC1B,CAAC,CAAC;QAEH,QAAQ,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC3B,KAAK,0CAAkB,CAAC,IAAI;gBAC1B,OAAO,UAAU,CAAC;YACpB,KAAK,0CAAkB,CAAC,KAAK,CAAC;YAC9B,KAAK,0CAAkB,CAAC,IAAI,CAAC;YAC7B,KAAK,0CAAkB,CAAC,MAAM;gBAC5B,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU;qBACpC;iBACF,CAAC;SACL;QAED,OAAO,UAAU,CAAC;IACpB,CAAC,EAAE,EAAE,CAAC;SACL,MAAM,CAAC,OAAO,CAAC,CAAC;IAEnB,OAAO,IAAA,uBAAM,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AAChC,CAAC;AAjCD,sCAiCC;AAED,IAAA,uDAAwB,EAAC,SAAS,EAAE,aAAa,EAAE,wBAAS,CAAC,QAAQ,CAAC,CAAC"}
@@ -1,58 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.responsePayloadMapper = void 0;
4
- const core_1 = require("@tsed/core");
5
- const change_case_1 = require("change-case");
6
- const SpecTypes_js_1 = require("../../domain/SpecTypes.js");
7
- const JsonSchemaMapperContainer_js_1 = require("../../registries/JsonSchemaMapperContainer.js");
8
- const somethingOf_js_1 = require("../../utils/somethingOf.js");
9
- function responsePayloadMapper(jsonOperationStore, operationPath, options) {
10
- const responses = jsonOperationStore.operation.getResponses();
11
- const statuses = [];
12
- const statusesTexts = [];
13
- const successSchemes = [];
14
- const errorSchemes = [];
15
- [...responses.entries()].forEach(([status, jsonResponse]) => {
16
- const response = (0, JsonSchemaMapperContainer_js_1.execMapper)("map", [jsonResponse], options);
17
- statuses.push(+status);
18
- statusesTexts.push(response.description);
19
- if (+status !== 204) {
20
- const { content } = response;
21
- const schema = content[Object.keys(content)[0]];
22
- if (+status >= 200 && +status < 400) {
23
- successSchemes.push(schema);
24
- }
25
- else {
26
- successSchemes.push(schema);
27
- }
28
- }
29
- });
30
- const responsePayloadName = (0, change_case_1.pascalCase)([operationPath.path, operationPath.method, "Response"].join(" "));
31
- const responsePayload = {
32
- type: "object",
33
- properties: {
34
- status: {
35
- type: "number",
36
- enum: statuses
37
- },
38
- statusText: {
39
- type: "string",
40
- enum: statusesTexts
41
- }
42
- },
43
- required: ["status"]
44
- };
45
- const dataSchema = (0, somethingOf_js_1.makeOf)("oneOf", successSchemes);
46
- if (dataSchema) {
47
- (0, core_1.setValue)(responsePayload, "properties.data", dataSchema);
48
- }
49
- const errorSchema = (0, somethingOf_js_1.makeOf)("oneOf", errorSchemes);
50
- if (errorSchemes.length) {
51
- (0, core_1.setValue)(responsePayload, "properties.error", errorSchema);
52
- }
53
- (0, core_1.setValue)(options, `components.schemas.${responsePayloadName}`, responsePayload);
54
- return { $ref: `#/components/schemas/${responsePayloadName}` };
55
- }
56
- exports.responsePayloadMapper = responsePayloadMapper;
57
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("response", responsePayloadMapper, SpecTypes_js_1.SpecTypes.ASYNCAPI);
58
- //# sourceMappingURL=responseMapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"responseMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/responseMapper.ts"],"names":[],"mappings":";;;AAAA,qCAAoC;AACpC,6CAAuC;AAGvC,4DAAoD;AAEpD,gGAAmG;AACnG,+DAAkD;AAElD,SAAgB,qBAAqB,CAAC,kBAAmC,EAAE,aAA6B,EAAE,OAA0B;IAClI,MAAM,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;IAC9D,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,MAAM,cAAc,GAAc,EAAE,CAAC;IACrC,MAAM,YAAY,GAAc,EAAE,CAAC;IAEnC,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE;QAC1D,MAAM,QAAQ,GAAG,IAAA,yCAAU,EAAC,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;QAE5D,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;QAEvB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAEzC,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE;YACnB,MAAM,EAAC,OAAO,EAAC,GAAG,QAAQ,CAAC;YAC3B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEhD,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE;gBACnC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC7B;iBAAM;gBACL,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC7B;SACF;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,IAAA,wBAAU,EAAC,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACzG,MAAM,eAAe,GAAG;QACtB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;aACf;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,aAAa;aACpB;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,uBAAM,EAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAEnD,IAAI,UAAU,EAAE;QACd,IAAA,eAAQ,EAAC,eAAe,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC;KAC1D;IAED,MAAM,WAAW,GAAG,IAAA,uBAAM,EAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAElD,IAAI,YAAY,CAAC,MAAM,EAAE;QACvB,IAAA,eAAQ,EAAC,eAAe,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC;KAC5D;IAED,IAAA,eAAQ,EAAC,OAAO,EAAE,sBAAsB,mBAAmB,EAAE,EAAE,eAAe,CAAC,CAAC;IAEhF,OAAO,EAAC,IAAI,EAAE,wBAAwB,mBAAmB,EAAE,EAAC,CAAC;AAC/D,CAAC;AAzDD,sDAyDC;AAED,IAAA,uDAAwB,EAAC,UAAU,EAAE,qBAAqB,EAAE,wBAAS,CAAC,QAAQ,CAAC,CAAC"}
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.itemMapper = void 0;
4
- const JsonSchemaMapperContainer_js_1 = require("../../registries/JsonSchemaMapperContainer.js");
5
- function itemMapper(value, options) {
6
- return value && value.isClass ? (0, JsonSchemaMapperContainer_js_1.execMapper)("class", [value], options) : (0, JsonSchemaMapperContainer_js_1.execMapper)("any", [value], options);
7
- }
8
- exports.itemMapper = itemMapper;
9
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("item", itemMapper);
10
- //# sourceMappingURL=itemMapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"itemMapper.js","sourceRoot":"","sources":["../../../../src/components/default/itemMapper.ts"],"names":[],"mappings":";;;AACA,gGAAmG;AAEnG,SAAgB,UAAU,CAAC,KAAU,EAAE,OAA0B;IAC/D,OAAO,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,yCAAU,EAAC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAA,yCAAU,EAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;AAC9G,CAAC;AAFD,gCAEC;AAED,IAAA,uDAAwB,EAAC,MAAM,EAAE,UAAU,CAAC,CAAC"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.propertiesMapper = void 0;
4
- const JsonSchemaMapperContainer_js_1 = require("../../registries/JsonSchemaMapperContainer.js");
5
- function propertiesMapper(input, options, parent) {
6
- if (input.isClass) {
7
- return (0, JsonSchemaMapperContainer_js_1.execMapper)("class", [input], options);
8
- }
9
- return (0, JsonSchemaMapperContainer_js_1.execMapper)("any", [input], {
10
- ...options,
11
- genericLabels: parent.genericLabels
12
- });
13
- }
14
- exports.propertiesMapper = propertiesMapper;
15
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("properties", propertiesMapper);
16
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("items", propertiesMapper);
17
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("additionalProperties", propertiesMapper);
18
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("propertyNames", propertiesMapper);
19
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("contains", propertiesMapper);
20
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("dependencies", propertiesMapper);
21
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("patternProperties", propertiesMapper);
22
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("additionalItems", propertiesMapper);
23
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("not", propertiesMapper);
24
- (0, JsonSchemaMapperContainer_js_1.registerJsonSchemaMapper)("definitions", propertiesMapper);
25
- //# sourceMappingURL=propertiesMapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"propertiesMapper.js","sourceRoot":"","sources":["../../../../src/components/default/propertiesMapper.ts"],"names":[],"mappings":";;;AAAA,gGAAmG;AAInG,SAAgB,gBAAgB,CAAC,KAAuB,EAAE,OAA0B,EAAE,MAAkB;IACtG,IAAI,KAAK,CAAC,OAAO,EAAE;QACjB,OAAO,IAAA,yCAAU,EAAC,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;KAC9C;IAED,OAAO,IAAA,yCAAU,EAAC,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE;QAChC,GAAG,OAAO;QACV,aAAa,EAAE,MAAM,CAAC,aAAa;KACpC,CAAC,CAAC;AACL,CAAC;AATD,4CASC;AAED,IAAA,uDAAwB,EAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;AACzD,IAAA,uDAAwB,EAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AACpD,IAAA,uDAAwB,EAAC,sBAAsB,EAAE,gBAAgB,CAAC,CAAC;AACnE,IAAA,uDAAwB,EAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC;AAC5D,IAAA,uDAAwB,EAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;AACvD,IAAA,uDAAwB,EAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;AAC3D,IAAA,uDAAwB,EAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAC;AAChE,IAAA,uDAAwB,EAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;AAC9D,IAAA,uDAAwB,EAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;AAClD,IAAA,uDAAwB,EAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC"}
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeOf = void 0;
4
- function makeOf(key, schemes) {
5
- if (schemes.length) {
6
- if (schemes.length === 1) {
7
- return schemes[0];
8
- }
9
- else {
10
- return { [key]: schemes };
11
- }
12
- }
13
- return null;
14
- }
15
- exports.makeOf = makeOf;
16
- //# sourceMappingURL=somethingOf.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"somethingOf.js","sourceRoot":"","sources":["../../../src/utils/somethingOf.ts"],"names":[],"mappings":";;;AAAA,SAAgB,MAAM,CAAC,GAAW,EAAE,OAAkB;IACpD,IAAI,OAAO,CAAC,MAAM,EAAE;QAClB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;YACxB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;SACnB;aAAM;YACL,OAAO,EAAC,CAAC,GAAG,CAAC,EAAE,OAAO,EAAC,CAAC;SACzB;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAVD,wBAUC"}
@@ -1,58 +0,0 @@
1
- import { camelCase } from "change-case";
2
- import { OperationVerbs } from "../../constants/OperationVerbs.js";
3
- import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
4
- import { buildPath } from "../../utils/buildPath.js";
5
- import { getJsonEntityStore } from "../../utils/getJsonEntityStore.js";
6
- import { getOperationsStores } from "../../utils/getOperationsStores.js";
7
- import { removeHiddenOperation } from "../../utils/removeHiddenOperation.js";
8
- const ALLOWED_VERBS = [OperationVerbs.PUBLISH, OperationVerbs.SUBSCRIBE];
9
- function pushToChannels(options) {
10
- return (channels, { operationPath, operationStore }) => {
11
- const path = options.ctrlRootPath || "/";
12
- const method = operationPath.method.toLowerCase();
13
- const operationId = camelCase(`${method.toLowerCase()} ${operationStore.parent.schema.getName()}`);
14
- const message = execMapper("message", [operationStore, operationPath], options);
15
- return {
16
- ...channels,
17
- [path]: {
18
- ...channels[path],
19
- [method]: {
20
- ...channels[path]?.[method],
21
- operationId,
22
- message: {
23
- oneOf: [...(channels[path]?.[method]?.message?.oneOf || []), message]
24
- }
25
- }
26
- }
27
- };
28
- };
29
- }
30
- function expandOperationPaths(options) {
31
- return (operationStore) => {
32
- const operationPaths = operationStore.operation.getAllowedOperationPath(ALLOWED_VERBS);
33
- if (operationPaths.length === 0) {
34
- return [];
35
- }
36
- return operationPaths.map((operationPath) => {
37
- return {
38
- operationPath,
39
- operationStore
40
- };
41
- });
42
- };
43
- }
44
- export function channelsMapper(model, { channels, rootPath, ...options }) {
45
- const store = getJsonEntityStore(model);
46
- const ctrlPath = store.path;
47
- const ctrlRootPath = buildPath(rootPath + ctrlPath);
48
- options = {
49
- ...options,
50
- ctrlRootPath
51
- };
52
- return [...getOperationsStores(model).values()]
53
- .filter(removeHiddenOperation)
54
- .flatMap(expandOperationPaths(options))
55
- .reduce(pushToChannels(options), channels);
56
- }
57
- registerJsonSchemaMapper("channels", channelsMapper);
58
- //# sourceMappingURL=channelsMapper.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"channelsMapper.js","sourceRoot":"","sources":["../../../../src/components/async-api/channelsMapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAC;AACtC,OAAO,EAAC,cAAc,EAAC,MAAM,mCAAmC,CAAC;AAIjE,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AACnG,OAAO,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAC,kBAAkB,EAAC,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAC,mBAAmB,EAAC,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAC,qBAAqB,EAAC,MAAM,sCAAsC,CAAC;AAE3E,MAAM,aAAa,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC;AAEzE,SAAS,cAAc,CAAC,OAA0B;IAChD,OAAO,CACL,QAAa,EACb,EACE,aAAa,EACb,cAAc,EAIf,EACD,EAAE;QACF,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,IAAI,GAAG,CAAC;QACzC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAClD,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAEnG,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;QAEhF,OAAO;YACL,GAAG,QAAQ;YACX,CAAC,IAAI,CAAC,EAAE;gBACN,GAAI,QAAgB,CAAC,IAAI,CAAC;gBAC1B,CAAC,MAAM,CAAC,EAAE;oBACR,GAAI,QAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;oBACpC,WAAW;oBACX,OAAO,EAAE;wBACP,KAAK,EAAE,CAAC,GAAG,CAAE,QAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC;qBAC/E;iBACF;aACF;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,OAA0B;IACtD,OAAO,CAAC,cAA+B,EAAE,EAAE;QACzC,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;QAEvF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,OAAO,EAAE,CAAC;SACX;QAED,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;YAC1C,OAAO;gBACL,aAAa;gBACb,cAAc;aACf,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAU,EAAE,EAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAoB;IAC5F,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;IAC5B,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;IAEpD,OAAO,GAAG;QACR,GAAG,OAAO;QACV,YAAY;KACb,CAAC;IAEF,OAAO,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;SAC5C,MAAM,CAAC,qBAAqB,CAAC;SAC7B,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;SACtC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,wBAAwB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC"}
@@ -1,18 +0,0 @@
1
- import { uniqBy } from "@tsed/core";
2
- import { SpecTypes } from "../../domain/SpecTypes.js";
3
- import { execMapper, registerJsonSchemaMapper } from "../../registries/JsonSchemaMapperContainer.js";
4
- function generate(model, options) {
5
- const specJson = {
6
- channels: execMapper("channels", [model], options)
7
- };
8
- specJson.tags = uniqBy(options.tags, "name");
9
- if (options.components?.schemas && Object.keys(options.components.schemas).length) {
10
- specJson.components = {
11
- ...options.components,
12
- schemas: options.components.schemas
13
- };
14
- }
15
- return specJson;
16
- }
17
- registerJsonSchemaMapper("generate", generate, SpecTypes.ASYNCAPI);
18
- //# sourceMappingURL=generate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../../src/components/async-api/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAC,MAAM,YAAY,CAAC;AAClD,OAAO,EAAC,SAAS,EAAC,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAC,UAAU,EAAE,wBAAwB,EAAC,MAAM,+CAA+C,CAAC;AAGnG,SAAS,QAAQ,CAAC,KAAgB,EAAE,OAA8B;IAChE,MAAM,QAAQ,GAAQ;QACpB,QAAQ,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;KACnD,CAAC;IAEF,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE7C,IAAI,OAAO,CAAC,UAAU,EAAE,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE;QACjF,QAAQ,CAAC,UAAU,GAAG;YACpB,GAAG,OAAO,CAAC,UAAU;YACrB,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO;SACpC,CAAC;KACH;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,wBAAwB,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC"}