typia 6.0.0-dev.20240122 → 6.0.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 (853) hide show
  1. package/README.md +2 -1
  2. package/lib/CamelCase.d.ts +2 -2
  3. package/lib/IRandomGenerator.d.ts +19 -5
  4. package/lib/PascalCase.d.ts +2 -2
  5. package/lib/Resolved.d.ts +1 -1
  6. package/lib/SnakeCase.d.ts +1 -1
  7. package/lib/TypeGuardError.js +4 -1
  8. package/lib/TypeGuardError.js.map +1 -1
  9. package/lib/executable/TypiaGenerateWizard.js +24 -23
  10. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  11. package/lib/executable/TypiaPatchWizard.js +9 -9
  12. package/lib/executable/TypiaPatchWizard.js.map +1 -1
  13. package/lib/executable/TypiaSetupWizard.js +31 -22
  14. package/lib/executable/TypiaSetupWizard.js.map +1 -1
  15. package/lib/executable/setup/ArgumentParser.js +5 -5
  16. package/lib/executable/setup/ArgumentParser.js.map +1 -1
  17. package/lib/executable/setup/PackageManager.js +8 -8
  18. package/lib/executable/setup/PackageManager.js.map +1 -1
  19. package/lib/executable/setup/PluginConfigurator.js +5 -4
  20. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  21. package/lib/executable/typia.js +21 -21
  22. package/lib/executable/typia.js.map +1 -1
  23. package/lib/factories/CommentFactory.js +2 -0
  24. package/lib/factories/CommentFactory.js.map +1 -1
  25. package/lib/factories/IdentifierFactory.d.ts +1 -1
  26. package/lib/factories/IdentifierFactory.js +2 -0
  27. package/lib/factories/IdentifierFactory.js.map +1 -1
  28. package/lib/factories/LiteralFactory.js +1 -0
  29. package/lib/factories/LiteralFactory.js.map +1 -1
  30. package/lib/factories/MetadataCollection.js +19 -1
  31. package/lib/factories/MetadataCollection.js.map +1 -1
  32. package/lib/factories/MetadataCommentTagFactory.js +79 -39
  33. package/lib/factories/MetadataCommentTagFactory.js.map +1 -1
  34. package/lib/factories/MetadataFactory.js +9 -1
  35. package/lib/factories/MetadataFactory.js.map +1 -1
  36. package/lib/factories/MetadataTypeTagFactory.js +61 -17
  37. package/lib/factories/MetadataTypeTagFactory.js.map +1 -1
  38. package/lib/factories/MetadataTypeTagSchemaFactory.d.ts +4 -0
  39. package/lib/factories/MetadataTypeTagSchemaFactory.js +84 -0
  40. package/lib/factories/MetadataTypeTagSchemaFactory.js.map +1 -0
  41. package/lib/factories/ProtobufFactory.js +46 -1
  42. package/lib/factories/ProtobufFactory.js.map +1 -1
  43. package/lib/factories/TypeFactory.js +9 -0
  44. package/lib/factories/TypeFactory.js.map +1 -1
  45. package/lib/factories/internal/metadata/MetadataHelper.js +7 -1
  46. package/lib/factories/internal/metadata/MetadataHelper.js.map +1 -1
  47. package/lib/factories/internal/metadata/emend_metadata_atomics.js +15 -5
  48. package/lib/factories/internal/metadata/emend_metadata_atomics.js.map +1 -1
  49. package/lib/factories/internal/metadata/emplace_metadata_alias.js +2 -0
  50. package/lib/factories/internal/metadata/emplace_metadata_alias.js.map +1 -1
  51. package/lib/factories/internal/metadata/emplace_metadata_array_type.js +2 -0
  52. package/lib/factories/internal/metadata/emplace_metadata_array_type.js.map +1 -1
  53. package/lib/factories/internal/metadata/emplace_metadata_object.js +18 -2
  54. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  55. package/lib/factories/internal/metadata/emplace_metadata_tuple.js +4 -0
  56. package/lib/factories/internal/metadata/emplace_metadata_tuple.js.map +1 -1
  57. package/lib/factories/internal/metadata/explore_metadata.js +2 -0
  58. package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
  59. package/lib/factories/internal/metadata/iterate_metadata.js +4 -2
  60. package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
  61. package/lib/factories/internal/metadata/iterate_metadata_alias.js +1 -0
  62. package/lib/factories/internal/metadata/iterate_metadata_alias.js.map +1 -1
  63. package/lib/factories/internal/metadata/iterate_metadata_array.js +54 -1
  64. package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
  65. package/lib/factories/internal/metadata/iterate_metadata_atomic.js +2 -0
  66. package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
  67. package/lib/factories/internal/metadata/iterate_metadata_constant.js +9 -2
  68. package/lib/factories/internal/metadata/iterate_metadata_constant.js.map +1 -1
  69. package/lib/factories/internal/metadata/{iterate_metadata_resolve.d.ts → iterate_metadata_escape.d.ts} +1 -1
  70. package/lib/factories/internal/metadata/{iterate_metadata_resolve.js → iterate_metadata_escape.js} +4 -4
  71. package/lib/factories/internal/metadata/iterate_metadata_escape.js.map +1 -0
  72. package/lib/factories/internal/metadata/iterate_metadata_intersection.js +49 -138
  73. package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
  74. package/lib/factories/internal/metadata/iterate_metadata_native.js +20 -21
  75. package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
  76. package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
  77. package/lib/factories/internal/metadata/iterate_metadata_sort.js +49 -23
  78. package/lib/factories/internal/metadata/iterate_metadata_sort.js.map +1 -1
  79. package/lib/factories/internal/metadata/iterate_metadata_template.js +2 -0
  80. package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
  81. package/lib/functional/$FormDataReader/$FormDataReader.d.ts +7 -0
  82. package/lib/functional/$FormDataReader/$FormDataReader.js +86 -0
  83. package/lib/functional/$FormDataReader/$FormDataReader.js.map +1 -0
  84. package/lib/functional/$FormDataReader/index.d.ts +1 -0
  85. package/lib/functional/$FormDataReader/index.js +28 -0
  86. package/lib/functional/$FormDataReader/index.js.map +1 -0
  87. package/lib/functional/$HeadersReader/$HeadersReader.d.ts +4 -0
  88. package/lib/functional/$HeadersReader/$HeadersReader.js +36 -0
  89. package/lib/functional/$HeadersReader/$HeadersReader.js.map +1 -0
  90. package/lib/functional/$HeadersReader/index.d.ts +1 -0
  91. package/lib/functional/$HeadersReader/index.js +28 -0
  92. package/lib/functional/$HeadersReader/index.js.map +1 -0
  93. package/lib/functional/$ParameterReader/$ParameterReader.d.ts +4 -0
  94. package/lib/functional/$ParameterReader/$ParameterReader.js +36 -0
  95. package/lib/functional/$ParameterReader/$ParameterReader.js.map +1 -0
  96. package/lib/functional/$ParameterReader/index.d.ts +1 -0
  97. package/lib/functional/$ParameterReader/index.js +28 -0
  98. package/lib/functional/$ParameterReader/index.js.map +1 -0
  99. package/lib/functional/$ProtobufReader.d.ts +35 -1
  100. package/lib/functional/$ProtobufReader.js +13 -11
  101. package/lib/functional/$ProtobufReader.js.map +1 -1
  102. package/lib/functional/$ProtobufSizer.d.ts +36 -1
  103. package/lib/functional/$ProtobufSizer.js +28 -13
  104. package/lib/functional/$ProtobufSizer.js.map +1 -1
  105. package/lib/functional/$ProtobufWriter.d.ts +45 -1
  106. package/lib/functional/$ProtobufWriter.js +11 -9
  107. package/lib/functional/$ProtobufWriter.js.map +1 -1
  108. package/lib/functional/$QueryReader/$QueryReader.d.ts +6 -0
  109. package/lib/functional/$QueryReader/$QueryReader.js +55 -0
  110. package/lib/functional/$QueryReader/$QueryReader.js.map +1 -0
  111. package/lib/functional/$QueryReader/index.d.ts +1 -0
  112. package/lib/functional/$QueryReader/index.js +28 -0
  113. package/lib/functional/$QueryReader/index.js.map +1 -0
  114. package/lib/functional/$any.d.ts +1 -0
  115. package/lib/functional/$any.js +9 -0
  116. package/lib/functional/$any.js.map +1 -0
  117. package/lib/functional/$clone.d.ts +2 -1
  118. package/lib/functional/$clone.js +1 -1
  119. package/lib/functional/$clone.js.map +1 -1
  120. package/lib/functional/$convention.d.ts +1 -1
  121. package/lib/functional/$convention.js.map +1 -1
  122. package/lib/functional/$dictionary.d.ts +2 -0
  123. package/lib/functional/$dictionary.js +18 -0
  124. package/lib/functional/$dictionary.js.map +1 -0
  125. package/lib/functional/$every.d.ts +2 -0
  126. package/lib/functional/$every.js +12 -0
  127. package/lib/functional/$every.js.map +1 -0
  128. package/lib/functional/$guard.js +5 -2
  129. package/lib/functional/$guard.js.map +1 -1
  130. package/lib/functional/$is_between.d.ts +1 -1
  131. package/lib/functional/$is_between.js.map +1 -1
  132. package/lib/functional/$join.d.ts +1 -1
  133. package/lib/functional/$join.js.map +1 -1
  134. package/lib/functional/$number.d.ts +1 -1
  135. package/lib/functional/$number.js.map +1 -1
  136. package/lib/functional/$report.d.ts +2 -1
  137. package/lib/functional/$report.js.map +1 -1
  138. package/lib/functional/$rest.d.ts +1 -1
  139. package/lib/functional/$rest.js.map +1 -1
  140. package/lib/functional/$stoll.d.ts +1 -1
  141. package/lib/functional/$stoll.js.map +1 -1
  142. package/lib/functional/$string.js +20 -9
  143. package/lib/functional/$string.js.map +1 -1
  144. package/lib/functional/$strlen.d.ts +1 -1
  145. package/lib/functional/$strlen.js.map +1 -1
  146. package/lib/functional/$tail.js +3 -0
  147. package/lib/functional/$tail.js.map +1 -1
  148. package/lib/functional/$throws.d.ts +2 -1
  149. package/lib/functional/$throws.js.map +1 -1
  150. package/lib/functional/$varint.d.ts +6 -0
  151. package/lib/functional/$varint.js +100 -0
  152. package/lib/functional/$varint.js.map +1 -0
  153. package/lib/functional/$zigzag.d.ts +4 -0
  154. package/lib/functional/$zigzag.js +36 -0
  155. package/lib/functional/$zigzag.js.map +1 -0
  156. package/lib/functional/IProtobufWriter.d.ts +15 -1
  157. package/lib/functional/Namespace/functional.d.ts +4 -0
  158. package/lib/functional/Namespace/functional.js +9 -0
  159. package/lib/functional/Namespace/functional.js.map +1 -0
  160. package/lib/functional/Namespace/http.d.ts +8 -0
  161. package/lib/functional/Namespace/http.js +16 -0
  162. package/lib/functional/Namespace/http.js.map +1 -0
  163. package/lib/functional/Namespace/index.d.ts +30 -0
  164. package/lib/functional/Namespace/index.js +85 -0
  165. package/lib/functional/Namespace/index.js.map +1 -0
  166. package/lib/functional/Namespace/json.d.ts +9 -0
  167. package/lib/functional/Namespace/json.js +23 -0
  168. package/lib/functional/Namespace/json.js.map +1 -0
  169. package/lib/functional/Namespace/misc.d.ts +11 -0
  170. package/lib/functional/Namespace/misc.js +22 -0
  171. package/lib/functional/Namespace/misc.js.map +1 -0
  172. package/lib/functional/Namespace/notations.d.ts +18 -0
  173. package/lib/functional/Namespace/notations.js +26 -0
  174. package/lib/functional/Namespace/notations.js.map +1 -0
  175. package/lib/functional/Namespace/protobuf.d.ts +17 -0
  176. package/lib/functional/Namespace/protobuf.js +25 -0
  177. package/lib/functional/Namespace/protobuf.js.map +1 -0
  178. package/lib/functional/is.js +14 -0
  179. package/lib/functional/is.js.map +1 -0
  180. package/lib/functional.d.ts +526 -0
  181. package/lib/functional.js +195 -0
  182. package/lib/functional.js.map +1 -0
  183. package/lib/http.d.ts +265 -369
  184. package/lib/http.js +226 -19
  185. package/lib/http.js.map +1 -1
  186. package/lib/json.d.ts +81 -58
  187. package/lib/json.js +109 -14
  188. package/lib/json.js.map +1 -1
  189. package/lib/misc.d.ts +81 -38
  190. package/lib/misc.js +133 -16
  191. package/lib/misc.js.map +1 -1
  192. package/lib/module.d.ts +91 -38
  193. package/lib/module.js +102 -21
  194. package/lib/module.js.map +1 -1
  195. package/lib/notations.d.ts +106 -45
  196. package/lib/notations.js +188 -24
  197. package/lib/notations.js.map +1 -1
  198. package/lib/programmers/AssertProgrammer.d.ts +6 -1
  199. package/lib/programmers/AssertProgrammer.js +48 -5
  200. package/lib/programmers/AssertProgrammer.js.map +1 -1
  201. package/lib/programmers/CheckerProgrammer.js +57 -2
  202. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  203. package/lib/programmers/FeatureProgrammer.js +11 -0
  204. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  205. package/lib/programmers/IsProgrammer.js +10 -1
  206. package/lib/programmers/IsProgrammer.js.map +1 -1
  207. package/lib/programmers/RandomProgrammer.js +49 -4
  208. package/lib/programmers/RandomProgrammer.js.map +1 -1
  209. package/lib/programmers/TypiaProgrammer.js +41 -44
  210. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  211. package/lib/programmers/ValidateProgrammer.js +5 -5
  212. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  213. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.d.ts +14 -0
  214. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js +81 -0
  215. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js.map +1 -0
  216. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.d.ts +7 -0
  217. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js +75 -0
  218. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js.map +1 -0
  219. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.d.ts +10 -0
  220. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js +46 -0
  221. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js.map +1 -0
  222. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.d.ts +7 -0
  223. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js +68 -0
  224. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js.map +1 -0
  225. package/lib/programmers/functional/FunctionalIsParametersProgrammer.d.ts +7 -0
  226. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js +72 -0
  227. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js.map +1 -0
  228. package/lib/programmers/functional/FunctionalIsReturnProgrammer.d.ts +10 -0
  229. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js +46 -0
  230. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js.map +1 -0
  231. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.d.ts +11 -0
  232. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js +74 -0
  233. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js.map +1 -0
  234. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.d.ts +7 -0
  235. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js +98 -0
  236. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js.map +1 -0
  237. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.d.ts +10 -0
  238. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js +53 -0
  239. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js.map +1 -0
  240. package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.d.ts +9 -0
  241. package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.js +25 -0
  242. package/lib/programmers/functional/internal/FunctionalGeneralProgrammer.js.map +1 -0
  243. package/lib/programmers/helpers/AtomicPredicator.js +2 -3
  244. package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
  245. package/lib/programmers/helpers/FunctionImporeter.d.ts +1 -0
  246. package/lib/programmers/helpers/FunctionImporeter.js +18 -0
  247. package/lib/programmers/helpers/FunctionImporeter.js.map +1 -0
  248. package/lib/programmers/helpers/FunctionImporter.d.ts +2 -2
  249. package/lib/programmers/helpers/FunctionImporter.js +8 -24
  250. package/lib/programmers/helpers/FunctionImporter.js.map +1 -1
  251. package/lib/programmers/helpers/ProtobufUtil.js +2 -2
  252. package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
  253. package/lib/programmers/helpers/PruneJoiner.js +9 -5
  254. package/lib/programmers/helpers/PruneJoiner.js.map +1 -1
  255. package/lib/programmers/helpers/RandomJoiner.js +2 -0
  256. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  257. package/lib/programmers/helpers/RandomRanger.js +8 -0
  258. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  259. package/lib/programmers/helpers/StringifyJoinder.js +5 -1
  260. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  261. package/lib/programmers/helpers/UnionExplorer.js +10 -0
  262. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  263. package/lib/programmers/helpers/UnionPredicator.js +5 -0
  264. package/lib/programmers/helpers/UnionPredicator.js.map +1 -1
  265. package/lib/programmers/helpers/disable_function_importer_declare.js +2 -4
  266. package/lib/programmers/helpers/disable_function_importer_declare.js.map +1 -1
  267. package/lib/programmers/http/HttpAssertFormDataProgrammer.d.ts +6 -0
  268. package/lib/programmers/http/HttpAssertFormDataProgrammer.js +47 -0
  269. package/lib/programmers/http/HttpAssertFormDataProgrammer.js.map +1 -0
  270. package/lib/programmers/http/HttpAssertHeadersProgrammer.d.ts +1 -1
  271. package/lib/programmers/http/HttpAssertHeadersProgrammer.js +9 -3
  272. package/lib/programmers/http/HttpAssertHeadersProgrammer.js.map +1 -1
  273. package/lib/programmers/http/HttpAssertQueryProgrammer.d.ts +1 -1
  274. package/lib/programmers/http/HttpAssertQueryProgrammer.js +9 -3
  275. package/lib/programmers/http/HttpAssertQueryProgrammer.js.map +1 -1
  276. package/lib/programmers/http/HttpFormDataProgrammer.d.ts +9 -0
  277. package/lib/programmers/http/HttpFormDataProgrammer.js +193 -0
  278. package/lib/programmers/http/HttpFormDataProgrammer.js.map +1 -0
  279. package/lib/programmers/http/HttpHeadersProgrammer.js +27 -9
  280. package/lib/programmers/http/HttpHeadersProgrammer.js.map +1 -1
  281. package/lib/programmers/http/HttpIsFormDataProgrammer.d.ts +6 -0
  282. package/lib/programmers/http/HttpIsFormDataProgrammer.js +47 -0
  283. package/lib/programmers/http/HttpIsFormDataProgrammer.js.map +1 -0
  284. package/lib/programmers/http/HttpIsHeadersProgrammer.js +5 -3
  285. package/lib/programmers/http/HttpIsHeadersProgrammer.js.map +1 -1
  286. package/lib/programmers/http/HttpIsQueryProgrammer.js +5 -3
  287. package/lib/programmers/http/HttpIsQueryProgrammer.js.map +1 -1
  288. package/lib/programmers/http/HttpParameterProgrammer.js +4 -2
  289. package/lib/programmers/http/HttpParameterProgrammer.js.map +1 -1
  290. package/lib/programmers/http/HttpQueryProgrammer.js +20 -5
  291. package/lib/programmers/http/HttpQueryProgrammer.js.map +1 -1
  292. package/lib/programmers/http/HttpValidateFormDataProgrammer.d.ts +6 -0
  293. package/lib/programmers/http/HttpValidateFormDataProgrammer.js +41 -0
  294. package/lib/programmers/http/HttpValidateFormDataProgrammer.js.map +1 -0
  295. package/lib/programmers/http/HttpValidateHeadersProgrammer.js +2 -2
  296. package/lib/programmers/http/HttpValidateHeadersProgrammer.js.map +1 -1
  297. package/lib/programmers/http/HttpValidateQueryProgrammer.js +2 -2
  298. package/lib/programmers/http/HttpValidateQueryProgrammer.js.map +1 -1
  299. package/lib/programmers/internal/application_array.js +10 -99
  300. package/lib/programmers/internal/application_array.js.map +1 -1
  301. package/lib/programmers/internal/application_boolean.js +8 -32
  302. package/lib/programmers/internal/application_boolean.js.map +1 -1
  303. package/lib/programmers/internal/application_escaped.d.ts +1 -4
  304. package/lib/programmers/internal/application_escaped.js +29 -22
  305. package/lib/programmers/internal/application_escaped.js.map +1 -1
  306. package/lib/programmers/internal/application_number.js +8 -137
  307. package/lib/programmers/internal/application_number.js.map +1 -1
  308. package/lib/programmers/internal/application_plugin.js +55 -0
  309. package/lib/programmers/internal/application_plugin.js.map +1 -0
  310. package/lib/programmers/internal/application_string.js +8 -107
  311. package/lib/programmers/internal/application_string.js.map +1 -1
  312. package/lib/programmers/internal/application_templates.js +7 -8
  313. package/lib/programmers/internal/application_templates.js.map +1 -1
  314. package/lib/programmers/internal/application_v30_alias.js +44 -0
  315. package/lib/programmers/internal/application_v30_alias.js.map +1 -0
  316. package/lib/programmers/internal/application_v30_constant.js +13 -0
  317. package/lib/programmers/internal/application_v30_constant.js.map +1 -0
  318. package/lib/programmers/internal/application_v30_native.js +34 -0
  319. package/lib/programmers/internal/application_v30_native.js.map +1 -0
  320. package/lib/programmers/internal/application_v30_object.js +154 -0
  321. package/lib/programmers/internal/application_v30_object.js.map +1 -0
  322. package/lib/programmers/internal/application_v30_schema.js +228 -0
  323. package/lib/programmers/internal/application_v30_schema.js.map +1 -0
  324. package/lib/programmers/internal/application_v30_tuple.js +33 -0
  325. package/lib/programmers/internal/application_v30_tuple.js.map +1 -0
  326. package/lib/programmers/internal/application_v31_alias.js +38 -0
  327. package/lib/programmers/internal/application_v31_alias.js.map +1 -0
  328. package/lib/programmers/internal/application_v31_constant.js +19 -0
  329. package/lib/programmers/internal/application_v31_constant.js.map +1 -0
  330. package/lib/programmers/internal/application_v31_native.js +29 -0
  331. package/lib/programmers/internal/application_v31_native.js.map +1 -0
  332. package/lib/programmers/internal/application_v31_object.js +146 -0
  333. package/lib/programmers/internal/application_v31_object.js.map +1 -0
  334. package/lib/programmers/internal/application_v31_schema.js +224 -0
  335. package/lib/programmers/internal/application_v31_schema.js.map +1 -0
  336. package/lib/programmers/internal/application_v31_tuple.js +22 -0
  337. package/lib/programmers/internal/application_v31_tuple.js.map +1 -0
  338. package/lib/programmers/internal/check_array_length.js +3 -0
  339. package/lib/programmers/internal/check_array_length.js.map +1 -1
  340. package/lib/programmers/internal/check_bigint.js +6 -0
  341. package/lib/programmers/internal/check_bigint.js.map +1 -1
  342. package/lib/programmers/internal/check_dynamic_key.js +7 -1
  343. package/lib/programmers/internal/check_dynamic_key.js.map +1 -1
  344. package/lib/programmers/internal/check_dynamic_properties.js +29 -4
  345. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  346. package/lib/programmers/internal/check_everything.js +3 -0
  347. package/lib/programmers/internal/check_everything.js.map +1 -1
  348. package/lib/programmers/internal/check_native.js +3 -0
  349. package/lib/programmers/internal/check_native.js.map +1 -1
  350. package/lib/programmers/internal/check_number.js +8 -1
  351. package/lib/programmers/internal/check_number.js.map +1 -1
  352. package/lib/programmers/internal/check_object.js +9 -0
  353. package/lib/programmers/internal/check_object.js.map +1 -1
  354. package/lib/programmers/internal/check_string.js +6 -0
  355. package/lib/programmers/internal/check_string.js.map +1 -1
  356. package/lib/programmers/internal/check_template.js +7 -1
  357. package/lib/programmers/internal/check_template.js.map +1 -1
  358. package/lib/programmers/internal/check_union_array_like.js +4 -0
  359. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  360. package/lib/programmers/internal/decode_union_object.js +52 -10
  361. package/lib/programmers/internal/decode_union_object.js.map +1 -1
  362. package/lib/programmers/internal/feature_object_entries.js +3 -0
  363. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  364. package/lib/programmers/internal/metadata_to_pattern.js +10 -4
  365. package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
  366. package/lib/programmers/internal/prune_object_properties.js +3 -0
  367. package/lib/programmers/internal/prune_object_properties.js.map +1 -1
  368. package/lib/programmers/internal/random_custom.js +3 -0
  369. package/lib/programmers/internal/random_custom.js.map +1 -1
  370. package/lib/programmers/internal/stringify_dynamic_properties.js +11 -0
  371. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  372. package/lib/programmers/internal/stringify_native.js +3 -0
  373. package/lib/programmers/internal/stringify_native.js.map +1 -1
  374. package/lib/programmers/internal/stringify_regular_properties.js +7 -0
  375. package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
  376. package/lib/programmers/internal/template_to_pattern.js +3 -0
  377. package/lib/programmers/internal/template_to_pattern.js.map +1 -1
  378. package/lib/programmers/json/JsonApplicationProgrammer.d.ts +2 -5
  379. package/lib/programmers/json/JsonApplicationProgrammer.js +85 -34
  380. package/lib/programmers/json/JsonApplicationProgrammer.js.map +1 -1
  381. package/lib/programmers/json/JsonAssertParseProgrammer.d.ts +1 -1
  382. package/lib/programmers/json/JsonAssertParseProgrammer.js +11 -3
  383. package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
  384. package/lib/programmers/json/JsonAssertStringifyProgrammer.d.ts +1 -1
  385. package/lib/programmers/json/JsonAssertStringifyProgrammer.js +9 -3
  386. package/lib/programmers/json/JsonAssertStringifyProgrammer.js.map +1 -1
  387. package/lib/programmers/json/JsonIsParseProgrammer.js +3 -1
  388. package/lib/programmers/json/JsonIsParseProgrammer.js.map +1 -1
  389. package/lib/programmers/json/JsonStringifyProgrammer.js +43 -4
  390. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  391. package/lib/programmers/misc/MiscAssertCloneProgrammer.d.ts +1 -1
  392. package/lib/programmers/misc/MiscAssertCloneProgrammer.js +11 -3
  393. package/lib/programmers/misc/MiscAssertCloneProgrammer.js.map +1 -1
  394. package/lib/programmers/misc/MiscAssertPruneProgrammer.d.ts +1 -1
  395. package/lib/programmers/misc/MiscAssertPruneProgrammer.js +9 -3
  396. package/lib/programmers/misc/MiscAssertPruneProgrammer.js.map +1 -1
  397. package/lib/programmers/misc/MiscCloneProgrammer.js +30 -4
  398. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  399. package/lib/programmers/misc/MiscIsCloneProgrammer.js +3 -1
  400. package/lib/programmers/misc/MiscIsCloneProgrammer.js.map +1 -1
  401. package/lib/programmers/misc/MiscLiteralsProgrammer.js +1 -2
  402. package/lib/programmers/misc/MiscLiteralsProgrammer.js.map +1 -1
  403. package/lib/programmers/misc/MiscPruneProgrammer.js +21 -1
  404. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  405. package/lib/programmers/notations/NotationAssertGeneralProgrammer.d.ts +1 -1
  406. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js +9 -3
  407. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js.map +1 -1
  408. package/lib/programmers/notations/NotationGeneralProgrammer.js +189 -175
  409. package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
  410. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.d.ts +1 -1
  411. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js +9 -3
  412. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js.map +1 -1
  413. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.d.ts +1 -1
  414. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js +9 -3
  415. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js.map +1 -1
  416. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +16 -4
  417. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  418. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +39 -19
  419. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  420. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js +3 -1
  421. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js.map +1 -1
  422. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +7 -1
  423. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  424. package/lib/protobuf.d.ts +72 -31
  425. package/lib/protobuf.js +136 -16
  426. package/lib/protobuf.js.map +1 -1
  427. package/lib/reflect.d.ts +4 -2
  428. package/lib/reflect.js +8 -1
  429. package/lib/reflect.js.map +1 -1
  430. package/lib/schemas/json/IJsonApplication.d.ts +13 -7
  431. package/lib/schemas/metadata/IMetadataConstant.d.ts +2 -1
  432. package/lib/schemas/metadata/IMetadataConstantValue.d.ts +6 -0
  433. package/lib/schemas/metadata/IMetadataConstantValue.js +3 -0
  434. package/lib/schemas/metadata/IMetadataConstantValue.js.map +1 -0
  435. package/lib/schemas/metadata/IMetadataTypeTag.d.ts +1 -0
  436. package/lib/schemas/metadata/Metadata.d.ts +1 -1
  437. package/lib/schemas/metadata/Metadata.js +84 -8
  438. package/lib/schemas/metadata/Metadata.js.map +1 -1
  439. package/lib/schemas/metadata/MetadataAlias.js +13 -1
  440. package/lib/schemas/metadata/MetadataAlias.js.map +1 -1
  441. package/lib/schemas/metadata/MetadataApplication.js +7 -1
  442. package/lib/schemas/metadata/MetadataApplication.js.map +1 -1
  443. package/lib/schemas/metadata/MetadataArray.js +4 -1
  444. package/lib/schemas/metadata/MetadataArray.js.map +1 -1
  445. package/lib/schemas/metadata/MetadataArrayType.js +10 -1
  446. package/lib/schemas/metadata/MetadataArrayType.js.map +1 -1
  447. package/lib/schemas/metadata/MetadataAtomic.js +20 -17
  448. package/lib/schemas/metadata/MetadataAtomic.js.map +1 -1
  449. package/lib/schemas/metadata/MetadataComponents.js +4 -1
  450. package/lib/schemas/metadata/MetadataComponents.js.map +1 -1
  451. package/lib/schemas/metadata/MetadataConstant.d.ts +2 -1
  452. package/lib/schemas/metadata/MetadataConstant.js +5 -9
  453. package/lib/schemas/metadata/MetadataConstant.js.map +1 -1
  454. package/lib/schemas/metadata/MetadataConstantValue.d.ts +13 -0
  455. package/lib/schemas/metadata/MetadataConstantValue.js +44 -0
  456. package/lib/schemas/metadata/MetadataConstantValue.js.map +1 -0
  457. package/lib/schemas/metadata/MetadataEscaped.js +10 -1
  458. package/lib/schemas/metadata/MetadataEscaped.js.map +1 -1
  459. package/lib/schemas/metadata/MetadataObject.js +28 -1
  460. package/lib/schemas/metadata/MetadataObject.js.map +1 -1
  461. package/lib/schemas/metadata/MetadataProperty.js +13 -1
  462. package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
  463. package/lib/schemas/metadata/MetadataTuple.js +7 -1
  464. package/lib/schemas/metadata/MetadataTuple.js.map +1 -1
  465. package/lib/schemas/metadata/MetadataTupleType.js +7 -1
  466. package/lib/schemas/metadata/MetadataTupleType.js.map +1 -1
  467. package/lib/tags/Constant.d.ts +10 -0
  468. package/lib/{schemas/json/IJsonSchema.js → tags/Constant.js} +1 -1
  469. package/lib/tags/Constant.js.map +1 -0
  470. package/lib/tags/ContentMediaType.d.ts +9 -0
  471. package/lib/{schemas/json/IJsonComponents.js → tags/ContentMediaType.js} +1 -1
  472. package/lib/tags/ContentMediaType.js.map +1 -0
  473. package/lib/tags/Default.d.ts +3 -0
  474. package/lib/tags/ExclusiveMaximum.d.ts +4 -0
  475. package/lib/tags/ExclusiveMinimum.d.ts +4 -0
  476. package/lib/tags/Format.d.ts +10 -3
  477. package/lib/tags/JsonSchemaPlugin.d.ts +7 -0
  478. package/lib/tags/JsonSchemaPlugin.js +3 -0
  479. package/lib/tags/JsonSchemaPlugin.js.map +1 -0
  480. package/lib/tags/MaxItems.d.ts +3 -0
  481. package/lib/tags/MaxLength.d.ts +3 -0
  482. package/lib/tags/Maximum.d.ts +3 -0
  483. package/lib/tags/MinItems.d.ts +3 -0
  484. package/lib/tags/MinLength.d.ts +3 -0
  485. package/lib/tags/Minimum.d.ts +3 -0
  486. package/lib/tags/MultipleOf.d.ts +3 -0
  487. package/lib/tags/Pattern.d.ts +3 -0
  488. package/lib/tags/TagBase.d.ts +6 -2
  489. package/lib/tags/Type.d.ts +3 -0
  490. package/lib/tags/index.d.ts +3 -0
  491. package/lib/tags/index.js +3 -0
  492. package/lib/tags/index.js.map +1 -1
  493. package/lib/tags/internal/FormatCheatSheet.d.ts +27 -0
  494. package/lib/tags/internal/FormatCheatSheet.js +38 -0
  495. package/lib/tags/internal/FormatCheatSheet.js.map +1 -0
  496. package/lib/transformers/CallExpressionTransformer.js +195 -1
  497. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  498. package/lib/transformers/FileTransformer.js +2 -0
  499. package/lib/transformers/FileTransformer.js.map +1 -1
  500. package/lib/transformers/TransformerError.js +2 -1
  501. package/lib/transformers/TransformerError.js.map +1 -1
  502. package/lib/transformers/features/AssertTransformer.js.map +1 -1
  503. package/lib/transformers/features/CreateAssertTransformer.js.map +1 -1
  504. package/lib/transformers/features/CreateRandomTransformer.js +3 -0
  505. package/lib/transformers/features/CreateRandomTransformer.js.map +1 -1
  506. package/lib/transformers/features/RandomTransformer.js +3 -0
  507. package/lib/transformers/features/RandomTransformer.js.map +1 -1
  508. package/lib/transformers/features/functional/FunctionalGenericTransformer.d.ts +10 -0
  509. package/lib/transformers/features/functional/FunctionalGenericTransformer.js +39 -0
  510. package/lib/transformers/features/functional/FunctionalGenericTransformer.js.map +1 -0
  511. package/lib/transformers/features/http/CreateHttpAssertFormDataTransformer.d.ts +4 -0
  512. package/lib/transformers/features/http/CreateHttpAssertFormDataTransformer.js +12 -0
  513. package/lib/transformers/features/http/CreateHttpAssertFormDataTransformer.js.map +1 -0
  514. package/lib/transformers/features/http/CreateHttpFormDataTransformer.d.ts +4 -0
  515. package/lib/transformers/features/http/CreateHttpFormDataTransformer.js +10 -0
  516. package/lib/transformers/features/http/CreateHttpFormDataTransformer.js.map +1 -0
  517. package/lib/transformers/features/http/CreateHttpIsFormDataTransformer.d.ts +4 -0
  518. package/lib/transformers/features/http/CreateHttpIsFormDataTransformer.js +10 -0
  519. package/lib/transformers/features/http/CreateHttpIsFormDataTransformer.js.map +1 -0
  520. package/lib/transformers/features/http/CreateHttpValidateFormDataTransformer.d.ts +4 -0
  521. package/lib/transformers/features/http/CreateHttpValidateFormDataTransformer.js +12 -0
  522. package/lib/transformers/features/http/CreateHttpValidateFormDataTransformer.js.map +1 -0
  523. package/lib/transformers/features/http/HttpAssertFormDataTransformer.d.ts +4 -0
  524. package/lib/transformers/features/http/HttpAssertFormDataTransformer.js +12 -0
  525. package/lib/transformers/features/http/HttpAssertFormDataTransformer.js.map +1 -0
  526. package/lib/transformers/features/http/HttpFormDataTransformer.d.ts +4 -0
  527. package/lib/transformers/features/http/HttpFormDataTransformer.js +10 -0
  528. package/lib/transformers/features/http/HttpFormDataTransformer.js.map +1 -0
  529. package/lib/transformers/features/http/HttpIsFormDataTransformer.d.ts +4 -0
  530. package/lib/transformers/features/http/HttpIsFormDataTransformer.js +10 -0
  531. package/lib/transformers/features/http/HttpIsFormDataTransformer.js.map +1 -0
  532. package/lib/transformers/features/http/HttpValidateFormDataTransformer.d.ts +4 -0
  533. package/lib/transformers/features/http/HttpValidateFormDataTransformer.js +12 -0
  534. package/lib/transformers/features/http/HttpValidateFormDataTransformer.js.map +1 -0
  535. package/lib/transformers/features/json/JsonApplicationTransformer.js +20 -17
  536. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  537. package/lib/transformers/features/misc/MiscLiteralsTransformer.js +3 -0
  538. package/lib/transformers/features/misc/MiscLiteralsTransformer.js.map +1 -1
  539. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js +3 -0
  540. package/lib/transformers/features/protobuf/ProtobufMessageTransformer.js.map +1 -1
  541. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js +4 -0
  542. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js.map +1 -1
  543. package/lib/transformers/internal/GenericTransformer.d.ts +1 -1
  544. package/lib/transformers/internal/GenericTransformer.js +9 -3
  545. package/lib/transformers/internal/GenericTransformer.js.map +1 -1
  546. package/lib/utils/ArrayUtil.d.ts +0 -1
  547. package/lib/utils/ArrayUtil.js +0 -29
  548. package/lib/utils/ArrayUtil.js.map +1 -1
  549. package/lib/utils/NamingConvention/NamingConvention.d.ts +3 -0
  550. package/lib/utils/{NamingConvention.js → NamingConvention/NamingConvention.js} +55 -51
  551. package/lib/utils/NamingConvention/NamingConvention.js.map +1 -0
  552. package/lib/utils/NamingConvention/index.d.ts +1 -0
  553. package/lib/utils/NamingConvention/index.js +28 -0
  554. package/lib/utils/NamingConvention/index.js.map +1 -0
  555. package/lib/utils/PatternUtil.js +3 -3
  556. package/lib/utils/PatternUtil.js.map +1 -1
  557. package/lib/utils/RandomGenerator/RandomGenerator.d.ts +31 -0
  558. package/lib/utils/RandomGenerator/RandomGenerator.js +167 -0
  559. package/lib/utils/RandomGenerator/RandomGenerator.js.map +1 -0
  560. package/lib/utils/RandomGenerator/index.d.ts +1 -0
  561. package/lib/utils/RandomGenerator/index.js +28 -0
  562. package/lib/utils/RandomGenerator/index.js.map +1 -0
  563. package/lib/utils/Singleton.js +1 -1
  564. package/lib/utils/StringUtil/StringUtil.d.ts +2 -0
  565. package/lib/utils/StringUtil/StringUtil.js +14 -0
  566. package/lib/utils/StringUtil/StringUtil.js.map +1 -0
  567. package/lib/utils/StringUtil/index.d.ts +1 -0
  568. package/lib/utils/StringUtil/index.js +28 -0
  569. package/lib/utils/StringUtil/index.js.map +1 -0
  570. package/package.json +14 -10
  571. package/src/CamelCase.ts +68 -61
  572. package/src/IRandomGenerator.ts +30 -5
  573. package/src/PascalCase.ts +68 -61
  574. package/src/Primitive.ts +48 -47
  575. package/src/Resolved.ts +61 -58
  576. package/src/SnakeCase.ts +67 -62
  577. package/src/executable/TypiaSetupWizard.ts +5 -5
  578. package/src/factories/IdentifierFactory.ts +1 -1
  579. package/src/factories/MetadataCommentTagFactory.ts +72 -157
  580. package/src/factories/MetadataFactory.ts +6 -1
  581. package/src/factories/MetadataTypeTagFactory.ts +38 -15
  582. package/src/factories/MetadataTypeTagSchemaFactory.ts +59 -0
  583. package/src/factories/ProtobufFactory.ts +9 -1
  584. package/src/factories/TypeFactory.ts +14 -14
  585. package/src/factories/internal/metadata/MetadataHelper.ts +7 -1
  586. package/src/factories/internal/metadata/emend_metadata_atomics.ts +15 -7
  587. package/src/factories/internal/metadata/emplace_metadata_object.ts +2 -1
  588. package/src/factories/internal/metadata/iterate_metadata.ts +2 -2
  589. package/src/factories/internal/metadata/iterate_metadata_array.ts +34 -1
  590. package/src/factories/internal/metadata/iterate_metadata_constant.ts +17 -2
  591. package/src/factories/internal/metadata/{iterate_metadata_resolve.ts → iterate_metadata_escape.ts} +1 -1
  592. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +51 -97
  593. package/src/factories/internal/metadata/iterate_metadata_native.ts +21 -20
  594. package/src/factories/internal/metadata/iterate_metadata_object.ts +0 -10
  595. package/src/factories/internal/metadata/iterate_metadata_sort.ts +15 -2
  596. package/src/functional/$FormDataReader/$FormDataReader.ts +83 -0
  597. package/src/functional/$FormDataReader/index.ts +1 -0
  598. package/src/functional/$HeadersReader/$HeadersReader.ts +26 -0
  599. package/src/functional/$HeadersReader/index.ts +1 -0
  600. package/src/functional/$ParameterReader/$ParameterReader.ts +29 -0
  601. package/src/functional/$ParameterReader/index.ts +1 -0
  602. package/src/functional/$ProtobufReader.ts +5 -19
  603. package/src/functional/$ProtobufSizer.ts +11 -21
  604. package/src/functional/$ProtobufWriter.ts +8 -33
  605. package/src/functional/$QueryReader/$QueryReader.ts +46 -0
  606. package/src/functional/$QueryReader/index.ts +1 -0
  607. package/src/functional/$any.ts +4 -0
  608. package/src/functional/$clone.ts +1 -4
  609. package/src/functional/$convention.ts +0 -3
  610. package/src/functional/$dictionary.ts +22 -0
  611. package/src/functional/$every.ts +11 -0
  612. package/src/functional/$guard.ts +6 -20
  613. package/src/functional/$is_between.ts +0 -3
  614. package/src/functional/$join.ts +0 -12
  615. package/src/functional/$number.ts +0 -3
  616. package/src/functional/$report.ts +0 -3
  617. package/src/functional/$rest.ts +0 -3
  618. package/src/functional/$stoll.ts +0 -3
  619. package/src/functional/$string.ts +3 -10
  620. package/src/functional/$strlen.ts +0 -3
  621. package/src/functional/$throws.ts +0 -3
  622. package/src/functional/$varint.ts +130 -0
  623. package/src/functional/$zigzag.ts +39 -0
  624. package/src/functional/IProtobufWriter.ts +0 -3
  625. package/src/functional/Namespace/functional.ts +5 -0
  626. package/src/functional/Namespace/http.ts +9 -0
  627. package/src/functional/Namespace/index.ts +76 -0
  628. package/src/functional/Namespace/json.ts +15 -0
  629. package/src/functional/Namespace/misc.ts +14 -0
  630. package/src/functional/Namespace/notations.ts +23 -0
  631. package/src/functional/Namespace/protobuf.ts +20 -0
  632. package/src/functional/is.ts +10 -0
  633. package/src/functional.ts +872 -0
  634. package/src/http.ts +566 -412
  635. package/src/json.ts +181 -80
  636. package/src/misc.ts +190 -60
  637. package/src/module.ts +205 -60
  638. package/src/notations.ts +312 -76
  639. package/src/programmers/AssertProgrammer.ts +90 -46
  640. package/src/programmers/CheckerProgrammer.ts +57 -3
  641. package/src/programmers/FeatureProgrammer.ts +27 -27
  642. package/src/programmers/IsProgrammer.ts +1 -1
  643. package/src/programmers/RandomProgrammer.ts +85 -22
  644. package/src/programmers/TypiaProgrammer.ts +10 -18
  645. package/src/programmers/ValidateProgrammer.ts +47 -48
  646. package/src/programmers/functional/FunctionalAssertFunctionProgrammer.ts +130 -0
  647. package/src/programmers/functional/FunctionalAssertParametersProgrammer.ts +81 -0
  648. package/src/programmers/functional/FunctionalAssertReturnProgrammer.ts +77 -0
  649. package/src/programmers/functional/FunctionalIsFunctionProgrammer.ts +61 -0
  650. package/src/programmers/functional/FunctionalIsParametersProgrammer.ts +73 -0
  651. package/src/programmers/functional/FunctionalIsReturnProgrammer.ts +84 -0
  652. package/src/programmers/functional/FunctionalValidateFunctionProgrammer.ts +113 -0
  653. package/src/programmers/functional/FunctionalValidateParametersProgrammer.ts +203 -0
  654. package/src/programmers/functional/FunctionalValidateReturnProgrammer.ts +107 -0
  655. package/src/programmers/functional/internal/FunctionalGeneralProgrammer.ts +32 -0
  656. package/src/programmers/helpers/AtomicPredicator.ts +1 -2
  657. package/src/programmers/helpers/FunctionImporeter.ts +1 -0
  658. package/src/programmers/helpers/FunctionImporter.ts +17 -58
  659. package/src/programmers/helpers/ProtobufUtil.ts +2 -2
  660. package/src/programmers/helpers/PruneJoiner.ts +8 -10
  661. package/src/programmers/helpers/StringifyJoinder.ts +3 -2
  662. package/src/programmers/helpers/disable_function_importer_declare.ts +4 -5
  663. package/src/programmers/http/HttpAssertFormDataProgrammer.ts +87 -0
  664. package/src/programmers/http/HttpAssertHeadersProgrammer.ts +18 -6
  665. package/src/programmers/http/HttpAssertQueryProgrammer.ts +18 -6
  666. package/src/programmers/http/HttpFormDataProgrammer.ts +256 -0
  667. package/src/programmers/http/HttpHeadersProgrammer.ts +36 -25
  668. package/src/programmers/http/HttpIsFormDataProgrammer.ts +90 -0
  669. package/src/programmers/http/HttpIsHeadersProgrammer.ts +14 -6
  670. package/src/programmers/http/HttpIsQueryProgrammer.ts +14 -6
  671. package/src/programmers/http/HttpParameterProgrammer.ts +4 -6
  672. package/src/programmers/http/HttpQueryProgrammer.ts +38 -30
  673. package/src/programmers/http/HttpValidateFormDataProgrammer.ts +75 -0
  674. package/src/programmers/http/HttpValidateHeadersProgrammer.ts +2 -2
  675. package/src/programmers/http/HttpValidateQueryProgrammer.ts +2 -2
  676. package/src/programmers/internal/application_array.ts +27 -50
  677. package/src/programmers/internal/application_boolean.ts +18 -28
  678. package/src/programmers/internal/application_escaped.ts +40 -18
  679. package/src/programmers/internal/application_number.ts +17 -89
  680. package/src/programmers/internal/application_plugin.ts +19 -0
  681. package/src/programmers/internal/application_string.ts +17 -53
  682. package/src/programmers/internal/application_templates.ts +17 -16
  683. package/src/programmers/internal/application_v30_alias.ts +51 -0
  684. package/src/programmers/internal/application_v30_constant.ts +18 -0
  685. package/src/programmers/internal/application_v30_native.ts +28 -0
  686. package/src/programmers/internal/application_v30_object.ts +148 -0
  687. package/src/programmers/internal/application_v30_schema.ts +155 -0
  688. package/src/programmers/internal/application_v30_tuple.ts +33 -0
  689. package/src/programmers/internal/application_v31_alias.ts +43 -0
  690. package/src/programmers/internal/application_v31_constant.ts +22 -0
  691. package/src/programmers/internal/application_v31_native.ts +24 -0
  692. package/src/programmers/internal/application_v31_object.ts +141 -0
  693. package/src/programmers/internal/application_v31_schema.ts +150 -0
  694. package/src/programmers/internal/application_v31_tuple.ts +22 -0
  695. package/src/programmers/internal/check_dynamic_key.ts +5 -6
  696. package/src/programmers/internal/check_dynamic_properties.ts +20 -7
  697. package/src/programmers/internal/check_number.ts +35 -34
  698. package/src/programmers/internal/check_object.ts +5 -4
  699. package/src/programmers/internal/check_template.ts +1 -1
  700. package/src/programmers/internal/decode_union_object.ts +37 -16
  701. package/src/programmers/internal/feature_object_entries.ts +8 -8
  702. package/src/programmers/internal/metadata_to_pattern.ts +7 -6
  703. package/src/programmers/json/JsonApplicationProgrammer.ts +70 -37
  704. package/src/programmers/json/JsonAssertParseProgrammer.ts +21 -7
  705. package/src/programmers/json/JsonAssertStringifyProgrammer.ts +9 -3
  706. package/src/programmers/json/JsonIsParseProgrammer.ts +12 -4
  707. package/src/programmers/json/JsonStringifyProgrammer.ts +33 -26
  708. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +21 -7
  709. package/src/programmers/misc/MiscAssertPruneProgrammer.ts +9 -3
  710. package/src/programmers/misc/MiscCloneProgrammer.ts +25 -19
  711. package/src/programmers/misc/MiscIsCloneProgrammer.ts +12 -4
  712. package/src/programmers/misc/MiscLiteralsProgrammer.ts +9 -11
  713. package/src/programmers/misc/MiscPruneProgrammer.ts +1 -1
  714. package/src/programmers/notations/NotationAssertGeneralProgrammer.ts +9 -3
  715. package/src/programmers/notations/NotationGeneralProgrammer.ts +12 -23
  716. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +18 -6
  717. package/src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts +9 -3
  718. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +52 -41
  719. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +55 -58
  720. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +12 -4
  721. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +3 -3
  722. package/src/protobuf.ts +211 -51
  723. package/src/reflect.ts +9 -3
  724. package/src/schemas/json/IJsonApplication.ts +14 -7
  725. package/src/schemas/metadata/IMetadataConstant.ts +3 -1
  726. package/src/schemas/metadata/IMetadataConstantValue.ts +8 -0
  727. package/src/schemas/metadata/IMetadataTypeTag.ts +1 -0
  728. package/src/schemas/metadata/Metadata.ts +30 -13
  729. package/src/schemas/metadata/MetadataAtomic.ts +17 -15
  730. package/src/schemas/metadata/MetadataConstant.ts +5 -17
  731. package/src/schemas/metadata/MetadataConstantValue.ts +53 -0
  732. package/src/tags/Constant.ts +15 -0
  733. package/src/tags/ContentMediaType.ts +10 -0
  734. package/src/tags/Default.ts +7 -4
  735. package/src/tags/ExclusiveMaximum.ts +6 -0
  736. package/src/tags/ExclusiveMinimum.ts +6 -0
  737. package/src/tags/Format.ts +10 -24
  738. package/src/tags/JsonSchemaPlugin.ts +8 -0
  739. package/src/tags/MaxItems.ts +3 -0
  740. package/src/tags/MaxLength.ts +3 -0
  741. package/src/tags/Maximum.ts +5 -0
  742. package/src/tags/MinItems.ts +3 -0
  743. package/src/tags/MinLength.ts +3 -0
  744. package/src/tags/Minimum.ts +5 -0
  745. package/src/tags/MultipleOf.ts +5 -0
  746. package/src/tags/Pattern.ts +3 -0
  747. package/src/tags/TagBase.ts +9 -1
  748. package/src/tags/Type.ts +19 -14
  749. package/src/tags/index.ts +3 -0
  750. package/src/tags/internal/FormatCheatSheet.ts +71 -0
  751. package/src/transformers/CallExpressionTransformer.ts +146 -1
  752. package/src/transformers/features/AssertTransformer.ts +2 -2
  753. package/src/transformers/features/CreateAssertTransformer.ts +2 -2
  754. package/src/transformers/features/functional/FunctionalGenericTransformer.ts +57 -0
  755. package/src/transformers/features/http/CreateHttpAssertFormDataTransformer.ts +12 -0
  756. package/src/transformers/features/http/CreateHttpFormDataTransformer.ts +9 -0
  757. package/src/transformers/features/http/CreateHttpIsFormDataTransformer.ts +9 -0
  758. package/src/transformers/features/http/CreateHttpValidateFormDataTransformer.ts +12 -0
  759. package/src/transformers/features/http/HttpAssertFormDataTransformer.ts +10 -0
  760. package/src/transformers/features/http/HttpFormDataTransformer.ts +9 -0
  761. package/src/transformers/features/http/HttpIsFormDataTransformer.ts +9 -0
  762. package/src/transformers/features/http/HttpValidateFormDataTransformer.ts +10 -0
  763. package/src/transformers/features/json/JsonApplicationTransformer.ts +8 -18
  764. package/src/transformers/internal/GenericTransformer.ts +12 -4
  765. package/src/utils/ArrayUtil.ts +0 -2
  766. package/src/utils/NamingConvention/NamingConvention.ts +86 -0
  767. package/src/utils/NamingConvention/index.ts +1 -0
  768. package/src/utils/RandomGenerator/RandomGenerator.ts +105 -0
  769. package/src/utils/RandomGenerator/index.ts +1 -0
  770. package/src/utils/StringUtil/StringUtil.ts +7 -0
  771. package/src/utils/StringUtil/index.ts +1 -0
  772. package/lib/factories/internal/metadata/iterate_metadata_resolve.js.map +0 -1
  773. package/lib/functional/$HeadersReader.js +0 -35
  774. package/lib/functional/$HeadersReader.js.map +0 -1
  775. package/lib/functional/$ParameterReader.js +0 -35
  776. package/lib/functional/$ParameterReader.js.map +0 -1
  777. package/lib/functional/$QueryReader.js +0 -60
  778. package/lib/functional/$QueryReader.js.map +0 -1
  779. package/lib/functional/$camel.js +0 -7
  780. package/lib/functional/$camel.js.map +0 -1
  781. package/lib/functional/$generator.js +0 -6
  782. package/lib/functional/$generator.js.map +0 -1
  783. package/lib/functional/$pascal.js +0 -7
  784. package/lib/functional/$pascal.js.map +0 -1
  785. package/lib/functional/$snake.js +0 -7
  786. package/lib/functional/$snake.js.map +0 -1
  787. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.d.ts +0 -1
  788. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.js +0 -5
  789. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.js.map +0 -1
  790. package/lib/programmers/internal/application_alias.d.ts +0 -5
  791. package/lib/programmers/internal/application_alias.js +0 -67
  792. package/lib/programmers/internal/application_alias.js.map +0 -1
  793. package/lib/programmers/internal/application_constant.js +0 -21
  794. package/lib/programmers/internal/application_constant.js.map +0 -1
  795. package/lib/programmers/internal/application_default.js +0 -40
  796. package/lib/programmers/internal/application_default.js.map +0 -1
  797. package/lib/programmers/internal/application_default_string.js +0 -63
  798. package/lib/programmers/internal/application_default_string.js.map +0 -1
  799. package/lib/programmers/internal/application_native.js +0 -33
  800. package/lib/programmers/internal/application_native.js.map +0 -1
  801. package/lib/programmers/internal/application_object.js +0 -202
  802. package/lib/programmers/internal/application_object.js.map +0 -1
  803. package/lib/programmers/internal/application_schema.js +0 -236
  804. package/lib/programmers/internal/application_schema.js.map +0 -1
  805. package/lib/programmers/internal/application_tuple.js +0 -46
  806. package/lib/programmers/internal/application_tuple.js.map +0 -1
  807. package/lib/schemas/json/IJsonComponents.d.ts +0 -18
  808. package/lib/schemas/json/IJsonComponents.js.map +0 -1
  809. package/lib/schemas/json/IJsonSchema.d.ts +0 -88
  810. package/lib/schemas/json/IJsonSchema.js.map +0 -1
  811. package/lib/utils/NamingConvention.d.ts +0 -5
  812. package/lib/utils/NamingConvention.js.map +0 -1
  813. package/lib/utils/RandomGenerator.d.ts +0 -1
  814. package/lib/utils/RandomGenerator.js +0 -66
  815. package/lib/utils/RandomGenerator.js.map +0 -1
  816. package/lib/utils/StringUtil.d.ts +0 -3
  817. package/lib/utils/StringUtil.js +0 -10
  818. package/lib/utils/StringUtil.js.map +0 -1
  819. package/src/functional/$HeadersReader.ts +0 -37
  820. package/src/functional/$ParameterReader.ts +0 -40
  821. package/src/functional/$QueryReader.ts +0 -65
  822. package/src/functional/$camel.ts +0 -8
  823. package/src/functional/$generator.ts +0 -6
  824. package/src/functional/$pascal.ts +0 -8
  825. package/src/functional/$snake.ts +0 -8
  826. package/src/programmers/internal/JSON_SCHEMA_PREFIX.ts +0 -1
  827. package/src/programmers/internal/application_alias.ts +0 -74
  828. package/src/programmers/internal/application_constant.ts +0 -25
  829. package/src/programmers/internal/application_default.ts +0 -17
  830. package/src/programmers/internal/application_default_string.ts +0 -33
  831. package/src/programmers/internal/application_native.ts +0 -34
  832. package/src/programmers/internal/application_object.ts +0 -183
  833. package/src/programmers/internal/application_schema.ts +0 -165
  834. package/src/programmers/internal/application_tuple.ts +0 -54
  835. package/src/schemas/json/IJsonComponents.ts +0 -19
  836. package/src/schemas/json/IJsonSchema.ts +0 -122
  837. package/src/utils/NamingConvention.ts +0 -87
  838. package/src/utils/RandomGenerator.ts +0 -83
  839. package/src/utils/StringUtil.ts +0 -4
  840. /package/lib/functional/{$HeadersReader.d.ts → is.d.ts} +0 -0
  841. /package/lib/{functional/$ParameterReader.d.ts → programmers/internal/application_plugin.d.ts} +0 -0
  842. /package/lib/{functional/$QueryReader.d.ts → programmers/internal/application_v30_alias.d.ts} +0 -0
  843. /package/lib/{functional/$camel.d.ts → programmers/internal/application_v30_constant.d.ts} +0 -0
  844. /package/lib/{functional/$generator.d.ts → programmers/internal/application_v30_native.d.ts} +0 -0
  845. /package/lib/{functional/$pascal.d.ts → programmers/internal/application_v30_object.d.ts} +0 -0
  846. /package/lib/{functional/$snake.d.ts → programmers/internal/application_v30_schema.d.ts} +0 -0
  847. /package/lib/programmers/internal/{application_constant.d.ts → application_v30_tuple.d.ts} +0 -0
  848. /package/lib/programmers/internal/{application_default.d.ts → application_v31_alias.d.ts} +0 -0
  849. /package/lib/programmers/internal/{application_default_string.d.ts → application_v31_constant.d.ts} +0 -0
  850. /package/lib/programmers/internal/{application_native.d.ts → application_v31_native.d.ts} +0 -0
  851. /package/lib/programmers/internal/{application_object.d.ts → application_v31_object.d.ts} +0 -0
  852. /package/lib/programmers/internal/{application_schema.d.ts → application_v31_schema.d.ts} +0 -0
  853. /package/lib/programmers/internal/{application_tuple.d.ts → application_v31_tuple.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"emplace_metadata_object.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/emplace_metadata_object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emplace_metadata_object.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/emplace_metadata_object.ts"],"names":[],"mappings":"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"}
@@ -42,18 +42,22 @@ var emplace_metadata_tuple = function (checker) {
42
42
  return function (errors) {
43
43
  return function (type, nullable, explore) {
44
44
  var _a, _b, _c;
45
+ // CHECK EXISTENCE
45
46
  var _d = __read(collection.emplaceTuple(checker, type), 3), tuple = _d[0], newbie = _d[1], closure = _d[2];
46
47
  ArrayUtil_1.ArrayUtil.add(tuple.nullables, nullable);
47
48
  if (newbie === false)
48
49
  return tuple;
50
+ // CONSTRUCT ELEMENT TYPES
49
51
  var flagList = (_c = (_a = type.elementFlags) !== null && _a !== void 0 ? _a : (_b = type.target) === null || _b === void 0 ? void 0 : _b.elementFlags) !== null && _c !== void 0 ? _c : [];
50
52
  var elements = checker
51
53
  .getTypeArguments(type)
52
54
  .map(function (elem, i) {
53
55
  var child = (0, explore_metadata_1.explore_metadata)(checker)(options)(collection)(errors)(elem, __assign(__assign({}, explore), { nested: tuple, aliased: false, escaped: false }));
56
+ // CHECK OPTIONAL
54
57
  var flag = flagList[i];
55
58
  if (flag === typescript_1.default.ElementFlags.Optional)
56
59
  (0, Writable_1.Writable)(child).optional = true;
60
+ // REST TYPE
57
61
  if (flag !== typescript_1.default.ElementFlags.Rest)
58
62
  return child;
59
63
  var wrapper = Metadata_1.Metadata.initialize();
@@ -1 +1 @@
1
- {"version":3,"file":"emplace_metadata_tuple.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/emplace_metadata_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,+DAA8D;AAG9D,sDAAqD;AAErD,sDAAqD;AAIrD,uDAAsD;AAE/C,IAAM,sBAAsB,GACjC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UACE,IAAkB,EAClB,QAAiB,EACjB,OAAiC;;oBAG3B,IAAA,KAAA,OAA2B,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,IAAA,EAAhE,KAAK,QAAA,EAAE,MAAM,QAAA,EAAE,OAAO,QAA0C,CAAC;oBACxE,qBAAS,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;oBACzC,IAAI,MAAM,KAAK,KAAK;wBAAE,OAAO,KAAK,CAAC;oBAGnC,IAAM,QAAQ,GACZ,MAAA,MAAA,IAAI,CAAC,YAAY,mCAAI,MAAC,IAAI,CAAC,MAAuB,0CAAE,YAAY,mCAAI,EAAE,CAAC;oBACzE,IAAM,QAAQ,GAAe,OAAO;yBACjC,gBAAgB,CAAC,IAAwB,CAAC;yBAC1C,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;wBACX,IAAM,KAAK,GAAa,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACpE,MAAM,CACP,CAAC,IAAI,wBACD,OAAO,KACV,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,KAAK,IACd,CAAC;wBAGH,IAAM,IAAI,GAAgC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBACtD,IAAI,IAAI,KAAK,oBAAE,CAAC,YAAY,CAAC,QAAQ;4BAAE,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;wBAGvE,IAAI,IAAI,KAAK,oBAAE,CAAC,YAAY,CAAC,IAAI;4BAAE,OAAO,KAAK,CAAC;wBAChD,IAAM,OAAO,GAAa,mBAAQ,CAAC,UAAU,EAAE,CAAC;wBAChD,IAAA,mBAAQ,EAAC,OAAO,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;wBAC/B,OAAO,OAAO,CAAC;oBACjB,CAAC,CAAC,CAAC;oBACL,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAElB,OAAO,KAAK,CAAC;gBACf,CAAC;YAtCD,CAsCC;QAvCD,CAuCC;IAxCD,CAwCC;AAzCD,CAyCC,CAAC;AA3CS,QAAA,sBAAsB,0BA2C/B"}
1
+ {"version":3,"file":"emplace_metadata_tuple.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/emplace_metadata_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,+DAA8D;AAG9D,sDAAqD;AAErD,sDAAqD;AAIrD,uDAAsD;AAE/C,IAAM,sBAAsB,GACjC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UACE,IAAkB,EAClB,QAAiB,EACjB,OAAiC;;oBAEjC,kBAAkB;oBACZ,IAAA,KAAA,OAA2B,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,IAAA,EAAhE,KAAK,QAAA,EAAE,MAAM,QAAA,EAAE,OAAO,QAA0C,CAAC;oBACxE,qBAAS,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;oBACzC,IAAI,MAAM,KAAK,KAAK;wBAAE,OAAO,KAAK,CAAC;oBAEnC,0BAA0B;oBAC1B,IAAM,QAAQ,GACZ,MAAA,MAAA,IAAI,CAAC,YAAY,mCAAI,MAAC,IAAI,CAAC,MAAuB,0CAAE,YAAY,mCAAI,EAAE,CAAC;oBACzE,IAAM,QAAQ,GAAe,OAAO;yBACjC,gBAAgB,CAAC,IAAwB,CAAC;yBAC1C,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;wBACX,IAAM,KAAK,GAAa,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACpE,MAAM,CACP,CAAC,IAAI,wBACD,OAAO,KACV,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,KAAK,IACd,CAAC;wBAEH,iBAAiB;wBACjB,IAAM,IAAI,GAAgC,QAAQ,CAAC,CAAC,CAAC,CAAC;wBACtD,IAAI,IAAI,KAAK,oBAAE,CAAC,YAAY,CAAC,QAAQ;4BAAE,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;wBAEvE,YAAY;wBACZ,IAAI,IAAI,KAAK,oBAAE,CAAC,YAAY,CAAC,IAAI;4BAAE,OAAO,KAAK,CAAC;wBAChD,IAAM,OAAO,GAAa,mBAAQ,CAAC,UAAU,EAAE,CAAC;wBAChD,IAAA,mBAAQ,EAAC,OAAO,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;wBAC/B,OAAO,OAAO,CAAC;oBACjB,CAAC,CAAC,CAAC;oBACL,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAElB,OAAO,KAAK,CAAC;gBACf,CAAC;YAtCD,CAsCC;QAvCD,CAuCC;IAxCD,CAwCC;AAzCD,CAyCC,CAAC;AA3CS,QAAA,sBAAsB,0BA2C/B"}
@@ -9,9 +9,11 @@ var explore_metadata = function (checker) {
9
9
  return function (collection) {
10
10
  return function (errors) {
11
11
  return function (type, explore) {
12
+ // CONSTRUCT METADATA
12
13
  var meta = Metadata_1.Metadata.initialize(explore.escaped);
13
14
  if (type === null)
14
15
  return meta;
16
+ // ITERATE TYPESCRIPT TYPES
15
17
  (0, iterate_metadata_1.iterate_metadata)(checker)(options)(collection)(errors)(meta, type, explore);
16
18
  (0, emend_metadata_atomics_1.emend_metadata_atomics)(meta);
17
19
  if (meta.escaped) {
@@ -1 +1 @@
1
- {"version":3,"file":"explore_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/explore_metadata.ts"],"names":[],"mappings":";;;AAEA,+DAA8D;AAI9D,mEAAkE;AAClE,uDAAsD;AAE/C,IAAM,gBAAgB,GAC3B,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UAAC,IAAoB,EAAE,OAAiC;oBAEtD,IAAM,IAAI,GAAa,mBAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC5D,IAAI,IAAI,KAAK,IAAI;wBAAE,OAAO,IAAI,CAAC;oBAG/B,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBAC5E,IAAA,+CAAsB,EAAC,IAAI,CAAC,CAAC;oBAC7B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBACjB,IAAA,+CAAsB,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;wBAC9C,IAAA,+CAAsB,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC/C,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;YAbD,CAaC;QAdD,CAcC;IAfD,CAeC;AAhBD,CAgBC,CAAC;AAlBS,QAAA,gBAAgB,oBAkBzB"}
1
+ {"version":3,"file":"explore_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/explore_metadata.ts"],"names":[],"mappings":";;;AAEA,+DAA8D;AAI9D,mEAAkE;AAClE,uDAAsD;AAE/C,IAAM,gBAAgB,GAC3B,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UAAC,IAAoB,EAAE,OAAiC;oBACtD,qBAAqB;oBACrB,IAAM,IAAI,GAAa,mBAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC5D,IAAI,IAAI,KAAK,IAAI;wBAAE,OAAO,IAAI,CAAC;oBAE/B,2BAA2B;oBAC3B,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBAC5E,IAAA,+CAAsB,EAAC,IAAI,CAAC,CAAC;oBAC7B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBACjB,IAAA,+CAAsB,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;wBAC9C,IAAA,+CAAsB,EAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC/C,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;YAbD,CAaC;QAdD,CAcC;IAfD,CAeC;AAhBD,CAgBC,CAAC;AAlBS,QAAA,gBAAgB,oBAkBzB"}
@@ -18,11 +18,11 @@ var iterate_metadata_array_1 = require("./iterate_metadata_array");
18
18
  var iterate_metadata_atomic_1 = require("./iterate_metadata_atomic");
19
19
  var iterate_metadata_coalesce_1 = require("./iterate_metadata_coalesce");
20
20
  var iterate_metadata_constant_1 = require("./iterate_metadata_constant");
21
+ var iterate_metadata_escape_1 = require("./iterate_metadata_escape");
21
22
  var iterate_metadata_intersection_1 = require("./iterate_metadata_intersection");
22
23
  var iterate_metadata_map_1 = require("./iterate_metadata_map");
23
24
  var iterate_metadata_native_1 = require("./iterate_metadata_native");
24
25
  var iterate_metadata_object_1 = require("./iterate_metadata_object");
25
- var iterate_metadata_resolve_1 = require("./iterate_metadata_resolve");
26
26
  var iterate_metadata_set_1 = require("./iterate_metadata_set");
27
27
  var iterate_metadata_template_1 = require("./iterate_metadata_template");
28
28
  var iterate_metadata_tuple_1 = require("./iterate_metadata_tuple");
@@ -40,12 +40,14 @@ var iterate_metadata = function (checker) {
40
40
  });
41
41
  return;
42
42
  }
43
+ // CHECK SPECIAL CASES
43
44
  else if ((explore.aliased !== true &&
44
45
  (0, iterate_metadata_alias_1.iterate_metadata_alias)(checker)(options)(collection)(errors)(meta, type, explore)) ||
45
46
  (0, iterate_metadata_intersection_1.iterate_metadata_intersection)(checker)(options)(collection)(errors)(meta, type, explore) ||
46
47
  (0, iterate_metadata_union_1.iterate_metadata_union)(checker)(options)(collection)(errors)(meta, type, explore) ||
47
- (0, iterate_metadata_resolve_1.iterate_metadata_resolve)(checker)(options)(collection)(errors)(meta, type, explore))
48
+ (0, iterate_metadata_escape_1.iterate_metadata_escape)(checker)(options)(collection)(errors)(meta, type, explore))
48
49
  return;
50
+ // ITERATE CASES
49
51
  (0, iterate_metadata_coalesce_1.iterate_metadata_coalesce)(meta, type) ||
50
52
  (0, iterate_metadata_constant_1.iterate_metadata_constant)(checker)(options)(meta, type) ||
51
53
  (0, iterate_metadata_template_1.iterate_metadata_template)(checker)(options)(collection)(errors)(meta, type, explore) ||
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAMA,iDAAgD;AAChD,mEAAkE;AAClE,mEAAkE;AAClE,qEAAoE;AACpE,yEAAwE;AACxE,yEAAwE;AACxE,iFAAgF;AAChF,+DAA8D;AAC9D,qEAAoE;AACpE,qEAAoE;AACpE,uEAAsE;AACtE,+DAA8D;AAC9D,yEAAwE;AACxE,mEAAkE;AAClE,mEAAkE;AAE3D,IAAM,gBAAgB,GAC3B,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UAAC,IAAc,EAAE,IAAa,EAAE,OAAiC;oBAC/D,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC;wBACpC,MAAM,CAAC,IAAI,CAAC;4BACV,IAAI,EAAE,yBAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;4BAC5C,OAAO,eAAO,OAAO,CAAE;4BACvB,QAAQ,EAAE,CAAC,uCAAuC,CAAC;yBACpD,CAAC,CAAC;wBACH,OAAO;oBACT,CAAC;yBAEI,IACH,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI;wBACvB,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAC1D,IAAI,EACJ,IAAI,EACJ,OAAO,CACR,CAAC;wBACJ,IAAA,6DAA6B,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CACjE,IAAI,EACJ,IAAI,EACJ,OAAO,CACR;wBACD,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAC1D,IAAI,EACJ,IAAI,EACJ,OAAO,CACR;wBACD,IAAA,mDAAwB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAC5D,IAAI,EACJ,IAAI,EACJ,OAAO,CACR;wBAED,OAAO;oBAGT,IAAA,qDAAyB,EAAC,IAAI,EAAE,IAAI,CAAC;wBACnC,IAAA,qDAAyB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;wBACvD,IAAA,qDAAyB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAC7D,IAAI,EACJ,IAAI,EACJ,OAAO,CACR;wBACD,IAAA,iDAAuB,EAAC,IAAI,EAAE,IAAI,CAAC;wBACnC,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAC1D,IAAI,EACJ,IAAoB,EACpB,OAAO,CACR;wBACD,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAC1D,IAAI,EACJ,IAAI,EACJ,OAAO,CACR;wBACD,IAAA,iDAAuB,EAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;wBAC5C,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CACxD,IAAI,EACJ,IAAI,EACJ,OAAO,CACR;wBACD,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CACxD,IAAI,EACJ,IAAI,EACJ,OAAO,CACR;wBACD,IAAA,iDAAuB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC9E,CAAC;YAlED,CAkEC;QAnED,CAmEC;IApED,CAoEC;AArED,CAqEC,CAAC;AAvES,QAAA,gBAAgB,oBAuEzB"}
1
+ {"version":3,"file":"iterate_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ var iterate_metadata_alias = function (checker) {
14
14
  var node = (_a = type.aliasSymbol.declarations) === null || _a === void 0 ? void 0 : _a[0];
15
15
  if (node === undefined)
16
16
  return false;
17
+ // CONSTRUCT DEFINITION
17
18
  var alias = (0, emplace_metadata_alias_1.emplace_metadata_alias)(checker)(options)(collection)(errors)(type, meta.nullable, explore);
18
19
  ArrayUtil_1.ArrayUtil.add(meta.aliases, alias, function (elem) { return elem.name === alias.name; });
19
20
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_metadata_alias.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_alias.ts"],"names":[],"mappings":";;;AAKA,sDAAqD;AAIrD,mEAAkE;AAE3D,IAAM,sBAAsB,GACjC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UACE,IAAc,EACd,IAAa,EACb,OAAiC;;oBAEjC,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;wBAC5D,OAAO,KAAK,CAAC;oBAEf,IAAM,IAAI,GAA+B,MAAA,IAAI,CAAC,WAAW,CAAC,YAAY,0CAAG,CAAC,CAAC,CAAC;oBAC5E,IAAI,IAAI,KAAK,SAAS;wBAAE,OAAO,KAAK,CAAC;oBAGrC,IAAM,KAAK,GAAkB,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CACnE,UAAU,CACX,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACxC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAxB,CAAwB,CAAC,CAAC;oBACvE,OAAO,IAAI,CAAC;gBACd,CAAC;YAjBD,CAiBC;QAlBD,CAkBC;IAnBD,CAmBC;AApBD,CAoBC,CAAC;AAtBS,QAAA,sBAAsB,0BAsB/B"}
1
+ {"version":3,"file":"iterate_metadata_alias.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_alias.ts"],"names":[],"mappings":";;;AAKA,sDAAqD;AAIrD,mEAAkE;AAE3D,IAAM,sBAAsB,GACjC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UACE,IAAc,EACd,IAAa,EACb,OAAiC;;oBAEjC,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;wBAC5D,OAAO,KAAK,CAAC;oBAEf,IAAM,IAAI,GAA+B,MAAA,IAAI,CAAC,WAAW,CAAC,YAAY,0CAAG,CAAC,CAAC,CAAC;oBAC5E,IAAI,IAAI,KAAK,SAAS;wBAAE,OAAO,KAAK,CAAC;oBAErC,uBAAuB;oBACvB,IAAM,KAAK,GAAkB,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CACnE,UAAU,CACX,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACxC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAxB,CAAwB,CAAC,CAAC;oBACvE,OAAO,IAAI,CAAC;gBACd,CAAC;YAjBD,CAiBC;QAlBD,CAkBC;IAnBD,CAmBC;AApBD,CAoBC,CAAC;AAtBS,QAAA,sBAAsB,0BAsB/B"}
@@ -1,4 +1,15 @@
1
1
  "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
2
13
  Object.defineProperty(exports, "__esModule", { value: true });
3
14
  exports.iterate_metadata_array = void 0;
4
15
  var MetadataArray_1 = require("../../../schemas/metadata/MetadataArray");
@@ -9,8 +20,12 @@ var iterate_metadata_array = function (checker) {
9
20
  return function (collection) {
10
21
  return function (errors) {
11
22
  return function (meta, type, explore) {
12
- if (!checker.isArrayType(type))
23
+ if (checker.isArrayType(type) === false) {
24
+ var array = find_array_extended(checker)(new Map())(type);
25
+ if (array !== null)
26
+ return (0, exports.iterate_metadata_array)(checker)(options)(collection)(errors)(meta, array, explore);
13
27
  return false;
28
+ }
14
29
  var arrayType = (0, emplace_metadata_array_type_1.emplace_metadata_array_type)(checker)(options)(collection)(errors)(type, meta.nullable, explore);
15
30
  ArrayUtil_1.ArrayUtil.add(meta.arrays, MetadataArray_1.MetadataArray.create({
16
31
  type: arrayType,
@@ -23,4 +38,42 @@ var iterate_metadata_array = function (checker) {
23
38
  };
24
39
  };
25
40
  exports.iterate_metadata_array = iterate_metadata_array;
41
+ var find_array_extended = function (checker) {
42
+ return function (memory) {
43
+ return function (type) {
44
+ var cached = memory.get(type);
45
+ if (cached !== undefined)
46
+ return null;
47
+ memory.set(type, null);
48
+ var res = (function () {
49
+ var e_1, _a;
50
+ var _b;
51
+ if (type.isClassOrInterface() === false)
52
+ return null;
53
+ try {
54
+ for (var _c = __values((_b = type.resolvedBaseTypes) !== null && _b !== void 0 ? _b : []), _d = _c.next(); !_d.done; _d = _c.next()) {
55
+ var t = _d.value;
56
+ if (checker.isArrayType(t))
57
+ return t;
58
+ else {
59
+ var res_1 = find_array_extended(checker)(memory)(t);
60
+ if (res_1 !== null)
61
+ return res_1;
62
+ }
63
+ }
64
+ }
65
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
66
+ finally {
67
+ try {
68
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
69
+ }
70
+ finally { if (e_1) throw e_1.error; }
71
+ }
72
+ return null;
73
+ })();
74
+ memory.set(type, res);
75
+ return res;
76
+ };
77
+ };
78
+ };
26
79
  //# sourceMappingURL=iterate_metadata_array.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_metadata_array.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_array.ts"],"names":[],"mappings":";;;AAGA,yEAAwE;AAGxE,sDAAqD;AAIrD,6EAA4E;AAErE,IAAM,sBAAsB,GACjC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UACE,IAAc,EACd,IAAa,EACb,OAAiC;oBAEjC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;wBAAE,OAAO,KAAK,CAAC;oBAE7C,IAAM,SAAS,GAAsB,IAAA,yDAA2B,EAAC,OAAO,CAAC,CACvE,OAAO,CACR,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACpD,qBAAS,CAAC,GAAG,CACX,IAAI,CAAC,MAAM,EACX,6BAAa,CAAC,MAAM,CAAC;wBACnB,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,EAAE;qBACT,CAAC,EACF,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,EAAjC,CAAiC,CAC5C,CAAC;oBACF,OAAO,IAAI,CAAC;gBACd,CAAC;YAnBD,CAmBC;QApBD,CAoBC;IArBD,CAqBC;AAtBD,CAsBC,CAAC;AAxBS,QAAA,sBAAsB,0BAwB/B"}
1
+ {"version":3,"file":"iterate_metadata_array.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_array.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,yEAAwE;AAGxE,sDAAqD;AAIrD,6EAA4E;AAErE,IAAM,sBAAsB,GACjC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UACE,IAAc,EACd,IAAa,EACb,OAAiC;oBAEjC,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;wBACxC,IAAM,KAAK,GAAmB,mBAAmB,CAAC,OAAO,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CACnE,IAAI,CACL,CAAC;wBACF,IAAI,KAAK,KAAK,IAAI;4BAChB,OAAO,IAAA,8BAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CACjE,IAAI,EACJ,KAAK,EACL,OAAO,CACR,CAAC;wBACJ,OAAO,KAAK,CAAC;oBACf,CAAC;oBAED,IAAM,SAAS,GAAsB,IAAA,yDAA2B,EAAC,OAAO,CAAC,CACvE,OAAO,CACR,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACpD,qBAAS,CAAC,GAAG,CACX,IAAI,CAAC,MAAM,EACX,6BAAa,CAAC,MAAM,CAAC;wBACnB,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,EAAE;qBACT,CAAC,EACF,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,EAAjC,CAAiC,CAC5C,CAAC;oBACF,OAAO,IAAI,CAAC;gBACd,CAAC;YA9BD,CA8BC;QA/BD,CA+BC;IAhCD,CAgCC;AAjCD,CAiCC,CAAC;AAnCS,QAAA,sBAAsB,0BAmC/B;AAEJ,IAAM,mBAAmB,GACvB,UAAC,OAAuB;IACxB,OAAA,UAAC,MAAoC;QACrC,OAAA,UAAC,IAAa;YACZ,IAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,MAAM,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;YAEtC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACvB,IAAM,GAAG,GAAmB,CAAC;;;gBAC3B,IAAI,IAAI,CAAC,kBAAkB,EAAE,KAAK,KAAK;oBAAE,OAAO,IAAI,CAAC;;oBACrD,KAAgB,IAAA,KAAA,SAAA,MAAA,IAAI,CAAC,iBAAiB,mCAAI,EAAE,CAAA,gBAAA;wBAAvC,IAAM,CAAC,WAAA;wBACV,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;4BAAE,OAAO,CAAC,CAAC;6BAChC,CAAC;4BACJ,IAAM,KAAG,GAAmB,mBAAmB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;4BACpE,IAAI,KAAG,KAAK,IAAI;gCAAE,OAAO,KAAG,CAAC;wBAC/B,CAAC;qBAAA;;;;;;;;;gBACH,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,EAAE,CAAC;YACL,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACtB,OAAO,GAAG,CAAC;QACb,CAAC;IAjBD,CAiBC;AAlBD,CAkBC,CAAC"}
@@ -13,6 +13,7 @@ var same = function (type) {
13
13
  return function (flag) { return (type.getFlags() & flag) !== 0; };
14
14
  };
15
15
  var iterate_metadata_atomic = function (meta, type) {
16
+ // PREPARE INTERNAL FUNCTIONS
16
17
  var filter = same(type);
17
18
  var check = function (info) {
18
19
  if (filter(info.atomic) || filter(info.literal)) {
@@ -21,6 +22,7 @@ var iterate_metadata_atomic = function (meta, type) {
21
22
  }
22
23
  return false;
23
24
  };
25
+ // CHECK EACH TYPES
24
26
  return ATOMICS.some(function (info) { return check(info); });
25
27
  };
26
28
  exports.iterate_metadata_atomic = iterate_metadata_atomic;
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_metadata_atomic.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_atomic.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,2EAA0E;AAE1E,sDAAqD;AAErD,IAAM,IAAI,GAAG,UAAC,IAAoB;IAChC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,cAAM,OAAA,KAAK,EAAL,CAAK,CAAC;IACtC,OAAO,UAAC,IAAkB,IAAK,OAAA,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAA9B,CAA8B,CAAC;AAChE,CAAC,CAAC;AAEK,IAAM,uBAAuB,GAAG,UACrC,IAAc,EACd,IAAa;IAGb,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAM,KAAK,GAAG,UAAC,IAAiB;QAC9B,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,qBAAS,CAAC,GAAG,CACX,IAAI,CAAC,OAAO,EACZ,+BAAc,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EACpD,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAjB,CAAiB,CAC5B,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAGF,OAAO,OAAO,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,KAAK,CAAC,IAAI,CAAC,EAAX,CAAW,CAAC,CAAC;AAC7C,CAAC,CAAC;AApBW,QAAA,uBAAuB,2BAoBlC;AAEF,IAAM,OAAO,GAAkB;IAC7B;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,oBAAE,CAAC,SAAS,CAAC,WAAW;QAChC,OAAO,EAAE,oBAAE,CAAC,SAAS,CAAC,cAAc;KACrC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,oBAAE,CAAC,SAAS,CAAC,UAAU;QAC/B,OAAO,EAAE,oBAAE,CAAC,SAAS,CAAC,aAAa;KACpC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,oBAAE,CAAC,SAAS,CAAC,MAAM;QAC3B,OAAO,EAAE,oBAAE,CAAC,SAAS,CAAC,aAAa;KACpC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,oBAAE,CAAC,SAAS,CAAC,UAAU;QAC/B,OAAO,EAAE,oBAAE,CAAC,SAAS,CAAC,aAAa;KACpC;CACF,CAAC"}
1
+ {"version":3,"file":"iterate_metadata_atomic.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_atomic.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,2EAA0E;AAE1E,sDAAqD;AAErD,IAAM,IAAI,GAAG,UAAC,IAAoB;IAChC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,cAAM,OAAA,KAAK,EAAL,CAAK,CAAC;IACtC,OAAO,UAAC,IAAkB,IAAK,OAAA,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAA9B,CAA8B,CAAC;AAChE,CAAC,CAAC;AAEK,IAAM,uBAAuB,GAAG,UACrC,IAAc,EACd,IAAa;IAEb,6BAA6B;IAC7B,IAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAM,KAAK,GAAG,UAAC,IAAiB;QAC9B,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,qBAAS,CAAC,GAAG,CACX,IAAI,CAAC,OAAO,EACZ,+BAAc,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EACpD,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAjB,CAAiB,CAC5B,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,mBAAmB;IACnB,OAAO,OAAO,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,KAAK,CAAC,IAAI,CAAC,EAAX,CAAW,CAAC,CAAC;AAC7C,CAAC,CAAC;AApBW,QAAA,uBAAuB,2BAoBlC;AAEF,IAAM,OAAO,GAAkB;IAC7B;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,oBAAE,CAAC,SAAS,CAAC,WAAW;QAChC,OAAO,EAAE,oBAAE,CAAC,SAAS,CAAC,cAAc;KACrC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,oBAAE,CAAC,SAAS,CAAC,UAAU;QAC/B,OAAO,EAAE,oBAAE,CAAC,SAAS,CAAC,aAAa;KACpC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,oBAAE,CAAC,SAAS,CAAC,MAAM;QAC3B,OAAO,EAAE,oBAAE,CAAC,SAAS,CAAC,aAAa;KACpC;IACD;QACE,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,oBAAE,CAAC,SAAS,CAAC,UAAU;QAC/B,OAAO,EAAE,oBAAE,CAAC,SAAS,CAAC,aAAa;KACpC;CACF,CAAC"}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.iterate_metadata_constant = void 0;
7
7
  var typescript_1 = __importDefault(require("typescript"));
8
8
  var MetadataConstant_1 = require("../../../schemas/metadata/MetadataConstant");
9
+ var MetadataConstantValue_1 = require("../../../schemas/metadata/MetadataConstantValue");
9
10
  var ArrayUtil_1 = require("../../../utils/ArrayUtil");
10
11
  var iterate_metadata_constant = function (checker) {
11
12
  return function (options) {
@@ -23,7 +24,10 @@ var iterate_metadata_constant = function (checker) {
23
24
  values: [],
24
25
  });
25
26
  });
26
- ArrayUtil_1.ArrayUtil.add(constant.values, value_1, function (a, b) { return a === b; });
27
+ ArrayUtil_1.ArrayUtil.add(constant.values, MetadataConstantValue_1.MetadataConstantValue.create({
28
+ value: value_1,
29
+ tags: [],
30
+ }), function (a, b) { return a.value === b.value; });
27
31
  return true;
28
32
  }
29
33
  else if (filter(typescript_1.default.TypeFlags.BooleanLiteral)) {
@@ -34,7 +38,10 @@ var iterate_metadata_constant = function (checker) {
34
38
  values: [],
35
39
  });
36
40
  });
37
- ArrayUtil_1.ArrayUtil.add(constant.values, value, function (a, b) { return a === b; });
41
+ ArrayUtil_1.ArrayUtil.add(constant.values, MetadataConstantValue_1.MetadataConstantValue.create({
42
+ value: value,
43
+ tags: [],
44
+ }), function (a, b) { return a.value === b.value; });
38
45
  return true;
39
46
  }
40
47
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_metadata_constant.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_constant.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,+EAA8E;AAE9E,sDAAqD;AAI9C,IAAM,yBAAyB,GACpC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,IAAc,EAAE,IAAa;YAC5B,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAEpC,IAAM,MAAM,GAAG,UAAC,IAAkB,IAAK,OAAA,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAA9B,CAA8B,CAAC;YACtE,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;gBACrB,IAAM,OAAK,GACT,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;oBAC5B,CAAC,CAAC,MAAM,CAAC,UAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAE,CAAC;oBACtE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;gBACjB,IAAM,QAAQ,GAAqB,qBAAS,CAAC,IAAI,CAC/C,IAAI,CAAC,SAAS,EACd,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,OAAO,OAAK,EAA1B,CAA0B,EACpC;oBACE,OAAA,mCAAgB,CAAC,MAAM,CAAC;wBACtB,IAAI,EAAE,OAAO,OAAiB;wBAC9B,MAAM,EAAE,EAAE;qBACX,CAAC;gBAHF,CAGE,CACL,CAAC;gBACF,qBAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAoB,EAAE,OAAK,EAAE,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,KAAK,CAAC,EAAP,CAAO,CAAC,CAAC;gBACvE,OAAO,IAAI,CAAC;YACd,CAAC;iBAAM,IAAI,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC/C,IAAM,KAAK,GAAY,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC;gBAC7D,IAAM,QAAQ,GAAqB,qBAAS,CAAC,IAAI,CAC/C,IAAI,CAAC,SAAS,EACd,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,SAAS,EAAvB,CAAuB,EACjC;oBACE,OAAA,mCAAgB,CAAC,MAAM,CAAC;wBACtB,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,EAAE;qBACX,CAAC;gBAHF,CAGE,CACL,CAAC;gBACF,qBAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAmB,EAAE,KAAK,EAAE,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,KAAK,CAAC,EAAP,CAAO,CAAC,CAAC;gBACtE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IAnCD,CAmCC;AApCD,CAoCC,CAAC;AAtCS,QAAA,yBAAyB,6BAsClC"}
1
+ {"version":3,"file":"iterate_metadata_constant.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_constant.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,+EAA8E;AAC9E,yFAAwF;AAExF,sDAAqD;AAI9C,IAAM,yBAAyB,GACpC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,IAAc,EAAE,IAAa;YAC5B,IAAI,CAAC,OAAO,CAAC,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAEpC,IAAM,MAAM,GAAG,UAAC,IAAkB,IAAK,OAAA,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAA9B,CAA8B,CAAC;YACtE,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;gBACrB,IAAM,OAAK,GACT,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;oBAC5B,CAAC,CAAC,MAAM,CAAC,UAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,SAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAE,CAAC;oBACtE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;gBACjB,IAAM,QAAQ,GAAqB,qBAAS,CAAC,IAAI,CAC/C,IAAI,CAAC,SAAS,EACd,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,OAAO,OAAK,EAA1B,CAA0B,EACpC;oBACE,OAAA,mCAAgB,CAAC,MAAM,CAAC;wBACtB,IAAI,EAAE,OAAO,OAAiB;wBAC9B,MAAM,EAAE,EAAE;qBACX,CAAC;gBAHF,CAGE,CACL,CAAC;gBACF,qBAAS,CAAC,GAAG,CACX,QAAQ,CAAC,MAAM,EACf,6CAAqB,CAAC,MAAM,CAAC;oBAC3B,KAAK,SAAA;oBACL,IAAI,EAAE,EAAE;iBACT,CAAC,EACF,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAnB,CAAmB,CAC9B,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;iBAAM,IAAI,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC/C,IAAM,KAAK,GAAY,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC;gBAC7D,IAAM,QAAQ,GAAqB,qBAAS,CAAC,IAAI,CAC/C,IAAI,CAAC,SAAS,EACd,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,SAAS,EAAvB,CAAuB,EACjC;oBACE,OAAA,mCAAgB,CAAC,MAAM,CAAC;wBACtB,IAAI,EAAE,SAAS;wBACf,MAAM,EAAE,EAAE;qBACX,CAAC;gBAHF,CAGE,CACL,CAAC;gBACF,qBAAS,CAAC,GAAG,CACX,QAAQ,CAAC,MAAM,EACf,6CAAqB,CAAC,MAAM,CAAC;oBAC3B,KAAK,OAAA;oBACL,IAAI,EAAE,EAAE;iBACT,CAAC,EACF,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAnB,CAAmB,CAC9B,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IAjDD,CAiDC;AAlDD,CAkDC,CAAC;AApDS,QAAA,yBAAyB,6BAoDlC"}
@@ -3,4 +3,4 @@ import ts from "typescript";
3
3
  import { Metadata } from "../../../schemas/metadata/Metadata";
4
4
  import { MetadataCollection } from "../../MetadataCollection";
5
5
  import { MetadataFactory } from "../../MetadataFactory";
6
- export declare const iterate_metadata_resolve: (checker: ts.TypeChecker) => (options: MetadataFactory.IOptions) => (collection: MetadataCollection) => (errors: MetadataFactory.IError[]) => (meta: Metadata, type: ts.Type, explore: MetadataFactory.IExplore) => boolean;
6
+ export declare const iterate_metadata_escape: (checker: ts.TypeChecker) => (options: MetadataFactory.IOptions) => (collection: MetadataCollection) => (errors: MetadataFactory.IError[]) => (meta: Metadata, type: ts.Type, explore: MetadataFactory.IExplore) => boolean;
@@ -11,13 +11,13 @@ var __assign = (this && this.__assign) || function () {
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.iterate_metadata_resolve = void 0;
14
+ exports.iterate_metadata_escape = void 0;
15
15
  var Metadata_1 = require("../../../schemas/metadata/Metadata");
16
16
  var MetadataEscaped_1 = require("../../../schemas/metadata/MetadataEscaped");
17
17
  var Writable_1 = require("../../../typings/Writable");
18
18
  var TypeFactory_1 = require("../../TypeFactory");
19
19
  var iterate_metadata_1 = require("./iterate_metadata");
20
- var iterate_metadata_resolve = function (checker) {
20
+ var iterate_metadata_escape = function (checker) {
21
21
  return function (options) {
22
22
  return function (collection) {
23
23
  return function (errors) {
@@ -41,5 +41,5 @@ var iterate_metadata_resolve = function (checker) {
41
41
  };
42
42
  };
43
43
  };
44
- exports.iterate_metadata_resolve = iterate_metadata_resolve;
45
- //# sourceMappingURL=iterate_metadata_resolve.js.map
44
+ exports.iterate_metadata_escape = iterate_metadata_escape;
45
+ //# sourceMappingURL=iterate_metadata_escape.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iterate_metadata_escape.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_escape.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,+DAA8D;AAC9D,6EAA4E;AAE5E,sDAAqD;AAIrD,iDAAgD;AAChD,uDAAsD;AAE/C,IAAM,uBAAuB,GAClC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,MAAgC;gBACjC,OAAA,UACE,IAAc,EACd,IAAa,EACb,OAAiC;oBAEjC,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI;wBAAE,OAAO,KAAK,CAAC;oBAEvE,IAAM,OAAO,GACX,yBAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;oBACrD,IAAI,OAAO,KAAK,IAAI;wBAAE,OAAO,KAAK,CAAC;oBAEnC,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;wBAC1B,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,OAAO,GAAG,iCAAe,CAAC,MAAM,CAAC;4BAC9C,QAAQ,EAAE,mBAAQ,CAAC,UAAU,EAAE;4BAC/B,OAAO,EAAE,mBAAQ,CAAC,UAAU,EAAE;yBAC/B,CAAC,CAAC;oBACL,CAAC;oBACD,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CACpD,IAAI,CAAC,OAAQ,CAAC,QAAQ,EACtB,IAAI,wBAEC,OAAO,KACV,OAAO,EAAE,IAAI,IAEhB,CAAC;oBACF,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CACpD,IAAI,CAAC,OAAQ,CAAC,OAAO,EACrB,OAAO,wBAEF,OAAO,KACV,OAAO,EAAE,IAAI,IAEhB,CAAC;oBACF,OAAO,IAAI,CAAC;gBACd,CAAC;YAlCD,CAkCC;QAnCD,CAmCC;IApCD,CAoCC;AArCD,CAqCC,CAAC;AAvCS,QAAA,uBAAuB,2BAuChC"}
@@ -35,17 +35,6 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
35
35
  }
36
36
  return to.concat(ar || Array.prototype.slice.call(from));
37
37
  };
38
- var __values = (this && this.__values) || function(o) {
39
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
40
- if (m) return m.call(o);
41
- if (o && typeof o.length === "number") return {
42
- next: function () {
43
- if (o && i >= o.length) o = void 0;
44
- return { value: o && o[i++], done: !o };
45
- }
46
- };
47
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
48
- };
49
38
  var __importDefault = (this && this.__importDefault) || function (mod) {
50
39
  return (mod && mod.__esModule) ? mod : { "default": mod };
51
40
  };
@@ -54,6 +43,7 @@ exports.iterate_metadata_intersection = void 0;
54
43
  var typescript_1 = __importDefault(require("typescript"));
55
44
  var MetadataAtomic_1 = require("../../../schemas/metadata/MetadataAtomic");
56
45
  var MetadataConstant_1 = require("../../../schemas/metadata/MetadataConstant");
46
+ var MetadataConstantValue_1 = require("../../../schemas/metadata/MetadataConstantValue");
57
47
  var ArrayUtil_1 = require("../../../utils/ArrayUtil");
58
48
  var MetadataCollection_1 = require("../../MetadataCollection");
59
49
  var MetadataTypeTagFactory_1 = require("../../MetadataTypeTagFactory");
@@ -65,8 +55,7 @@ var iterate_metadata_intersection = function (checker) {
65
55
  return function (collection) {
66
56
  return function (errors) {
67
57
  return function (meta, type, explore) {
68
- var e_1, _a, e_2, _b, e_3, _c;
69
- var _d;
58
+ var _a;
70
59
  if (!type.isIntersection())
71
60
  return false;
72
61
  else if (type.types.every(function (child) {
@@ -75,6 +64,7 @@ var iterate_metadata_intersection = function (checker) {
75
64
  !checker.isTupleType(child);
76
65
  }))
77
66
  return false;
67
+ // COSTRUCT FAKE METADATA LIST
78
68
  var fakeCollection = new MetadataCollection_1.MetadataCollection();
79
69
  var fakeErrors = [];
80
70
  var children = __spreadArray([], __read(new Map(type.types.map(function (t) {
@@ -85,47 +75,25 @@ var iterate_metadata_intersection = function (checker) {
85
75
  errors.push.apply(errors, __spreadArray([], __read(fakeErrors), false));
86
76
  return true;
87
77
  }
78
+ // ONLY ONE CHILD AFTER REMOVING DUPLICATES
88
79
  if (children.length === 1) {
89
80
  (0, iterate_metadata_1.iterate_metadata)(checker)(options)(collection)(errors)(meta, type.types[0], explore);
90
81
  return true;
91
82
  }
92
83
  else if (children.every(function (c) { return c.objects.length === c.size(); }))
93
84
  return false;
94
- var booleanLiteral = (function () {
95
- var _a, _b;
96
- var found = (_b = (_a = children.find(function (c) {
97
- return c.size() === 1 &&
98
- c.constants.length === 1 &&
99
- c.constants[0].type === "boolean";
100
- })) === null || _a === void 0 ? void 0 : _a.constants[0]) === null || _b === void 0 ? void 0 : _b.values[0];
101
- if (found === undefined)
102
- return null;
103
- return children.every(function (c) {
104
- return c.atomics.length === 0 ||
105
- c.atomics.every(function (a) { return a.type !== "boolean"; });
106
- })
107
- ? found
108
- : null;
109
- })();
110
- if (booleanLiteral !== null && meta.boolean_literal_intersected_ === true) {
111
- meta.constants.find(function (c) { return c.type === "boolean"; }).values.push(booleanLiteral);
112
- return true;
113
- }
85
+ // VALIDATE EACH TYPES
114
86
  var individuals = children
115
87
  .map(function (child, i) { return [child, i]; })
116
88
  .filter(function (_a) {
117
89
  var _b = __read(_a, 1), c = _b[0];
118
90
  return c.size() === 1 &&
119
91
  (c.atomics.length === 1 ||
120
- (c.constants.length === 1 && c.constants[0].type === "boolean") ||
92
+ (c.constants.length === 1 && c.constants[0].values.length === 1) ||
121
93
  c.arrays.length === 1);
122
94
  });
123
- var constants = children.filter(function (m) {
124
- return m.size() ===
125
- m.constants.map(function (c) { return c.values.length; }).reduce(function (a, b) { return a + b; }, 0) +
126
- m.templates.length &&
127
- !(m.size() === 1 && m.constants[0].type === "boolean");
128
- });
95
+ if (individuals.length !== 1)
96
+ return false;
129
97
  var objects = children.filter(function (c) {
130
98
  return c.nullable === false &&
131
99
  c.isRequired() === true &&
@@ -133,18 +101,23 @@ var iterate_metadata_intersection = function (checker) {
133
101
  c.objects.length === c.size() &&
134
102
  c.objects.every(function (o) { return o.properties.every(function (p) { return p.value.optional; }); });
135
103
  });
136
- var atomics = new Set(individuals
137
- .map(function (_a) {
138
- var _b = __read(_a, 1), c = _b[0];
139
- return __spreadArray(__spreadArray([], __read(c.atomics.map(function (a) { return a.type; })), false), __read(c.constants.filter(function (l) { return l.type === "boolean"; }).map(function (l) { return l.type; })), false);
140
- })
141
- .flat());
142
104
  var arrays = new Set(individuals.map(function (_a) {
143
105
  var _b = __read(_a, 1), c = _b[0];
144
106
  return c.arrays.map(function (a) { return a.type.name; });
145
107
  }).flat());
146
- if (atomics.size + arrays.size > 1 ||
147
- individuals.length + objects.length + constants.length !== children.length) {
108
+ var atomics = new Set(individuals.map(function (_a) {
109
+ var _b = __read(_a, 1), c = _b[0];
110
+ return __spreadArray([], __read(c.atomics.map(function (a) { return a.type; })), false);
111
+ }).flat());
112
+ var constants = individuals
113
+ .filter(function (i) { return i[0].constants.length === 1; })
114
+ .map(function (_a) {
115
+ var _b = __read(_a, 1), c = _b[0];
116
+ return c;
117
+ });
118
+ // ESCAPE WHEN ONLY CONSTANT TYPES EXIST
119
+ if (atomics.size + constants.length + arrays.size > 1 ||
120
+ individuals.length + objects.length !== children.length) {
148
121
  errors.push({
149
122
  name: children.map(function (c) { return c.getName(); }).join(" & "),
150
123
  explore: __assign({}, explore),
@@ -152,112 +125,50 @@ var iterate_metadata_intersection = function (checker) {
152
125
  });
153
126
  return true;
154
127
  }
155
- else if (atomics.size === 0 && arrays.size === 0 && constants.length) {
156
- try {
157
- for (var constants_1 = __values(constants), constants_1_1 = constants_1.next(); !constants_1_1.done; constants_1_1 = constants_1.next()) {
158
- var m = constants_1_1.value;
159
- try {
160
- for (var _e = (e_2 = void 0, __values(m.templates)), _f = _e.next(); !_f.done; _f = _e.next()) {
161
- var tpl = _f.value;
162
- ArrayUtil_1.ArrayUtil.add(meta.templates, tpl, function (a, b) {
163
- return a.map(function (ab) { return ab.getName(); }).join(" | ") ===
164
- b.map(function (bb) { return bb.getName(); }).join(" | ");
165
- });
166
- }
167
- }
168
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
169
- finally {
170
- try {
171
- if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
172
- }
173
- finally { if (e_2) throw e_2.error; }
174
- }
175
- var _loop_1 = function (c) {
176
- var e_4, _j;
177
- var oldbie = meta.constants.find(function (o) { return o.type === c.type; });
178
- if (oldbie)
179
- try {
180
- for (var _k = (e_4 = void 0, __values(c.values)), _l = _k.next(); !_l.done; _l = _k.next()) {
181
- var elem = _l.value;
182
- ArrayUtil_1.ArrayUtil.add(oldbie.values, elem, function (a, b) { return a === b; });
183
- }
184
- }
185
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
186
- finally {
187
- try {
188
- if (_l && !_l.done && (_j = _k.return)) _j.call(_k);
189
- }
190
- finally { if (e_4) throw e_4.error; }
191
- }
192
- else
193
- meta.constants.push(MetadataConstant_1.MetadataConstant.create(c));
194
- };
195
- try {
196
- for (var _g = (e_3 = void 0, __values(m.constants)), _h = _g.next(); !_h.done; _h = _g.next()) {
197
- var c = _h.value;
198
- _loop_1(c);
199
- }
200
- }
201
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
202
- finally {
203
- try {
204
- if (_h && !_h.done && (_c = _g.return)) _c.call(_g);
205
- }
206
- finally { if (e_3) throw e_3.error; }
207
- }
208
- }
209
- }
210
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
211
- finally {
212
- try {
213
- if (constants_1_1 && !constants_1_1.done && (_a = constants_1.return)) _a.call(constants_1);
214
- }
215
- finally { if (e_1) throw e_1.error; }
216
- }
217
- return true;
218
- }
219
- var target = booleanLiteral
220
- ? "boolean"
128
+ // RE-GENERATE TYPE
129
+ var target = arrays.size
130
+ ? "array"
221
131
  : atomics.size
222
132
  ? atomics.values().next().value
223
- : "array";
224
- if (target === "boolean" ||
225
- target === "bigint" ||
226
- target === "number" ||
227
- target === "string")
228
- if (booleanLiteral === null)
229
- ArrayUtil_1.ArrayUtil.add(meta.atomics, MetadataAtomic_1.MetadataAtomic.create({
230
- type: atomics.values().next().value,
231
- tags: [],
232
- }), function (a, b) { return a.type === b.type; });
233
- else
234
- ArrayUtil_1.ArrayUtil.take(meta.constants, function (x) { return x.type === "boolean"; }, function () {
235
- return MetadataConstant_1.MetadataConstant.create({
236
- type: "boolean",
237
- values: [booleanLiteral],
238
- });
239
- });
240
- else if (target === "array") {
133
+ : constants[0].constants[0].type;
134
+ if (target === "array") {
241
135
  var name_1 = arrays.values().next().value;
242
136
  if (!meta.arrays.some(function (a) { return a.type.name === name_1; })) {
243
137
  (0, iterate_metadata_array_1.iterate_metadata_array)(checker)(options)(collection)(errors)(meta, type.types[individuals.find(function (i) { return i[0].arrays.length === 1; })[1]], __assign(__assign({}, explore), { aliased: false, escaped: false }));
244
138
  }
245
139
  }
140
+ else if (atomics.size)
141
+ ArrayUtil_1.ArrayUtil.add(meta.atomics, MetadataAtomic_1.MetadataAtomic.create({
142
+ type: atomics.values().next().value,
143
+ tags: [],
144
+ }), function (a, b) { return a.type === b.type; });
145
+ else
146
+ ArrayUtil_1.ArrayUtil.take(ArrayUtil_1.ArrayUtil.take(meta.constants, function (o) { return o.type === target; }, function () {
147
+ return MetadataConstant_1.MetadataConstant.create({
148
+ type: target,
149
+ values: [],
150
+ });
151
+ }).values, function (o) { return o.value === constants[0].constants[0].values[0].value; }, function () {
152
+ return MetadataConstantValue_1.MetadataConstantValue.create({
153
+ value: constants[0].constants[0].values[0].value,
154
+ tags: [],
155
+ });
156
+ });
157
+ // ASSIGN TAGS
246
158
  if (objects.length) {
247
159
  var tags = MetadataTypeTagFactory_1.MetadataTypeTagFactory.analyze(errors)(target)(objects.map(function (om) { return om.objects; }).flat(), explore);
248
160
  if (tags.length)
249
161
  if (target === "array")
250
162
  meta.arrays.at(-1).tags.push(tags);
251
- else if (booleanLiteral === null)
163
+ else if (atomics.size)
252
164
  meta.atomics.find(function (a) { return a.type === target; }).tags.push(tags);
253
165
  else {
254
- var constant = meta.constants.find(function (c) { return c.type === "boolean"; });
255
- (_d = constant.tags) !== null && _d !== void 0 ? _d : (constant.tags = []);
256
- constant.tags.push(tags);
166
+ var constant = meta.constants.find(function (c) { return c.type === target; });
167
+ var value = constant.values.find(function (v) { return v.value === constants[0].constants[0].values[0].value; });
168
+ (_a = value.tags) !== null && _a !== void 0 ? _a : (value.tags = []);
169
+ value.tags.push(tags);
257
170
  }
258
171
  }
259
- if (booleanLiteral !== null)
260
- meta.boolean_literal_intersected_ = true;
261
172
  return true;
262
173
  };
263
174
  };