typia 4.0.0-dev.20230527 → 4.0.0-dev.20230604

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 (751) hide show
  1. package/lib/IRandomGenerator.d.ts +1 -0
  2. package/lib/TypeGuardError.js +2 -6
  3. package/lib/TypeGuardError.js.map +1 -1
  4. package/lib/executable/TypiaGenerateWizard.js +24 -25
  5. package/lib/executable/TypiaGenerateWizard.js.map +1 -1
  6. package/lib/executable/TypiaSetupWizard.js +21 -28
  7. package/lib/executable/TypiaSetupWizard.js.map +1 -1
  8. package/lib/executable/setup/ArgumentParser.js +6 -6
  9. package/lib/executable/setup/ArgumentParser.js.map +1 -1
  10. package/lib/executable/setup/CommandExecutor.js +1 -1
  11. package/lib/executable/setup/CommandExecutor.js.map +1 -1
  12. package/lib/executable/setup/FileRetriever.js +1 -1
  13. package/lib/executable/setup/FileRetriever.js.map +1 -1
  14. package/lib/executable/setup/PackageManager.js +8 -8
  15. package/lib/executable/setup/PackageManager.js.map +1 -1
  16. package/lib/executable/setup/PluginConfigurator.js +5 -6
  17. package/lib/executable/setup/PluginConfigurator.js.map +1 -1
  18. package/lib/executable/typia.js +17 -17
  19. package/lib/executable/typia.js.map +1 -1
  20. package/lib/factories/CommentFactory.d.ts +8 -3
  21. package/lib/factories/CommentFactory.js +63 -6
  22. package/lib/factories/CommentFactory.js.map +1 -1
  23. package/lib/factories/ExpressionFactory.d.ts +6 -6
  24. package/lib/factories/ExpressionFactory.js +29 -35
  25. package/lib/factories/ExpressionFactory.js.map +1 -1
  26. package/lib/factories/IdentifierFactory.d.ts +8 -4
  27. package/lib/factories/IdentifierFactory.js +28 -24
  28. package/lib/factories/IdentifierFactory.js.map +1 -1
  29. package/lib/factories/LiteralFactory.d.ts +2 -2
  30. package/lib/factories/LiteralFactory.js +37 -43
  31. package/lib/factories/LiteralFactory.js.map +1 -1
  32. package/lib/factories/MetadataCollection.d.ts +24 -7
  33. package/lib/factories/MetadataCollection.js +126 -39
  34. package/lib/factories/MetadataCollection.js.map +1 -1
  35. package/lib/factories/MetadataFactory.d.ts +7 -3
  36. package/lib/factories/MetadataFactory.js +9 -53
  37. package/lib/factories/MetadataFactory.js.map +1 -1
  38. package/lib/factories/MetadataTagFactory.d.ts +2 -2
  39. package/lib/factories/MetadataTagFactory.js +8 -23
  40. package/lib/factories/MetadataTagFactory.js.map +1 -1
  41. package/lib/factories/StatementFactory.d.ts +3 -2
  42. package/lib/factories/StatementFactory.js +13 -6
  43. package/lib/factories/StatementFactory.js.map +1 -1
  44. package/lib/factories/TemplateFactory.d.ts +2 -2
  45. package/lib/factories/TemplateFactory.js +36 -38
  46. package/lib/factories/TemplateFactory.js.map +1 -1
  47. package/lib/factories/TypeFactory.d.ts +6 -7
  48. package/lib/factories/TypeFactory.js +55 -75
  49. package/lib/factories/TypeFactory.js.map +1 -1
  50. package/lib/factories/ValueFactory.d.ts +6 -6
  51. package/lib/factories/ValueFactory.js +15 -15
  52. package/lib/factories/ValueFactory.js.map +1 -1
  53. package/lib/factories/internal/metadata/MetadataHelper.js +1 -1
  54. package/lib/factories/internal/metadata/MetadataHelper.js.map +1 -1
  55. package/lib/factories/internal/metadata/emplace_metadata_array.d.ts +5 -0
  56. package/lib/factories/internal/metadata/emplace_metadata_array.js +38 -0
  57. package/lib/factories/internal/metadata/emplace_metadata_array.js.map +1 -0
  58. package/lib/factories/internal/metadata/emplace_metadata_definition.d.ts +5 -0
  59. package/lib/factories/internal/metadata/emplace_metadata_definition.js +38 -0
  60. package/lib/factories/internal/metadata/emplace_metadata_definition.js.map +1 -0
  61. package/lib/factories/internal/metadata/emplace_metadata_object.d.ts +2 -3
  62. package/lib/factories/internal/metadata/emplace_metadata_object.js +44 -62
  63. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  64. package/lib/factories/internal/metadata/emplace_metadata_tuple.d.ts +5 -0
  65. package/lib/factories/internal/metadata/emplace_metadata_tuple.js +58 -0
  66. package/lib/factories/internal/metadata/emplace_metadata_tuple.js.map +1 -0
  67. package/lib/factories/internal/metadata/explore_metadata.d.ts +2 -3
  68. package/lib/factories/internal/metadata/explore_metadata.js +38 -70
  69. package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
  70. package/lib/factories/internal/metadata/iterate_metadata.d.ts +2 -3
  71. package/lib/factories/internal/metadata/iterate_metadata.js +20 -24
  72. package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
  73. package/lib/factories/internal/metadata/iterate_metadata_array.d.ts +2 -3
  74. package/lib/factories/internal/metadata/iterate_metadata_array.js +9 -12
  75. package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
  76. package/lib/factories/internal/metadata/iterate_metadata_atomic.d.ts +2 -2
  77. package/lib/factories/internal/metadata/iterate_metadata_atomic.js +24 -26
  78. package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
  79. package/lib/factories/internal/metadata/iterate_metadata_coalesce.d.ts +2 -2
  80. package/lib/factories/internal/metadata/iterate_metadata_coalesce.js +26 -26
  81. package/lib/factories/internal/metadata/iterate_metadata_coalesce.js.map +1 -1
  82. package/lib/factories/internal/metadata/iterate_metadata_collection.d.ts +2 -0
  83. package/lib/factories/internal/metadata/iterate_metadata_collection.js +151 -0
  84. package/lib/factories/internal/metadata/iterate_metadata_collection.js.map +1 -0
  85. package/lib/factories/internal/metadata/iterate_metadata_constant.d.ts +2 -3
  86. package/lib/factories/internal/metadata/iterate_metadata_constant.js +29 -29
  87. package/lib/factories/internal/metadata/iterate_metadata_constant.js.map +1 -1
  88. package/lib/factories/internal/metadata/iterate_metadata_definition.d.ts +5 -0
  89. package/lib/factories/internal/metadata/iterate_metadata_definition.js +24 -0
  90. package/lib/factories/internal/metadata/iterate_metadata_definition.js.map +1 -0
  91. package/lib/factories/internal/metadata/iterate_metadata_map.d.ts +2 -3
  92. package/lib/factories/internal/metadata/iterate_metadata_map.js +16 -18
  93. package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
  94. package/lib/factories/internal/metadata/iterate_metadata_native.d.ts +2 -3
  95. package/lib/factories/internal/metadata/iterate_metadata_native.js +37 -39
  96. package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
  97. package/lib/factories/internal/metadata/iterate_metadata_object.d.ts +2 -3
  98. package/lib/factories/internal/metadata/iterate_metadata_object.js +23 -25
  99. package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
  100. package/lib/factories/internal/metadata/iterate_metadata_resolve.d.ts +2 -3
  101. package/lib/factories/internal/metadata/iterate_metadata_resolve.js +10 -15
  102. package/lib/factories/internal/metadata/iterate_metadata_resolve.js.map +1 -1
  103. package/lib/factories/internal/metadata/iterate_metadata_set.d.ts +2 -3
  104. package/lib/factories/internal/metadata/iterate_metadata_set.js +12 -14
  105. package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
  106. package/lib/factories/internal/metadata/iterate_metadata_sort.d.ts +3 -0
  107. package/lib/factories/internal/metadata/iterate_metadata_sort.js +156 -0
  108. package/lib/factories/internal/metadata/iterate_metadata_sort.js.map +1 -0
  109. package/lib/factories/internal/metadata/iterate_metadata_template.d.ts +2 -3
  110. package/lib/factories/internal/metadata/iterate_metadata_template.js +20 -21
  111. package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
  112. package/lib/factories/internal/metadata/iterate_metadata_tuple.d.ts +2 -3
  113. package/lib/factories/internal/metadata/iterate_metadata_tuple.js +8 -32
  114. package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
  115. package/lib/factories/internal/metadata/iterate_metadata_union.d.ts +2 -3
  116. package/lib/factories/internal/metadata/iterate_metadata_union.js +54 -55
  117. package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
  118. package/lib/functional/$dictionary.js +0 -3
  119. package/lib/functional/$dictionary.js.map +1 -1
  120. package/lib/functional/$guard.js +0 -20
  121. package/lib/functional/$guard.js.map +1 -1
  122. package/lib/functional/$string.js +0 -5
  123. package/lib/functional/$string.js.map +1 -1
  124. package/lib/functional/$tail.js +0 -3
  125. package/lib/functional/$tail.js.map +1 -1
  126. package/lib/functional/Namespace.js +1 -6
  127. package/lib/functional/Namespace.js.map +1 -1
  128. package/lib/metadata/IMetadata.d.ts +3 -2
  129. package/lib/metadata/IMetadataAlias.d.ts +10 -0
  130. package/lib/metadata/IMetadataAlias.js +3 -0
  131. package/lib/metadata/IMetadataAlias.js.map +1 -0
  132. package/lib/metadata/IMetadataApplication.d.ts +2 -2
  133. package/lib/metadata/IMetadataArray.d.ts +8 -0
  134. package/lib/metadata/IMetadataArray.js +3 -0
  135. package/lib/metadata/IMetadataArray.js.map +1 -0
  136. package/lib/metadata/IMetadataCollection.d.ts +10 -0
  137. package/lib/metadata/IMetadataCollection.js +3 -0
  138. package/lib/metadata/IMetadataCollection.js.map +1 -0
  139. package/lib/metadata/IMetadataDictionary.js +3 -0
  140. package/lib/metadata/IMetadataDictionary.js.map +1 -0
  141. package/lib/metadata/IMetadataObject.d.ts +3 -0
  142. package/lib/metadata/IMetadataProperty.d.ts +1 -1
  143. package/lib/metadata/IMetadataTuple.d.ts +8 -0
  144. package/lib/metadata/IMetadataTuple.js +3 -0
  145. package/lib/metadata/IMetadataTuple.js.map +1 -0
  146. package/lib/metadata/Metadata.d.ts +24 -21
  147. package/lib/metadata/Metadata.js +326 -334
  148. package/lib/metadata/Metadata.js.map +1 -1
  149. package/lib/metadata/MetadataAlias.d.ts +16 -0
  150. package/lib/metadata/MetadataAlias.js +39 -0
  151. package/lib/metadata/MetadataAlias.js.map +1 -0
  152. package/lib/metadata/MetadataArray.d.ts +12 -0
  153. package/lib/metadata/MetadataArray.js +36 -0
  154. package/lib/metadata/MetadataArray.js.map +1 -0
  155. package/lib/metadata/MetadataObject.d.ts +4 -0
  156. package/lib/metadata/MetadataObject.js +6 -28
  157. package/lib/metadata/MetadataObject.js.map +1 -1
  158. package/lib/metadata/MetadataProperty.d.ts +1 -1
  159. package/lib/metadata/MetadataProperty.js +4 -16
  160. package/lib/metadata/MetadataProperty.js.map +1 -1
  161. package/lib/metadata/MetadataTuple.d.ts +12 -0
  162. package/lib/metadata/MetadataTuple.js +36 -0
  163. package/lib/metadata/MetadataTuple.js.map +1 -0
  164. package/lib/module.js +0 -186
  165. package/lib/module.js.map +1 -1
  166. package/lib/programmers/ApplicationProgrammer.d.ts +4 -0
  167. package/lib/programmers/ApplicationProgrammer.js +5 -7
  168. package/lib/programmers/ApplicationProgrammer.js.map +1 -1
  169. package/lib/programmers/AssertCloneProgrammer.d.ts +6 -2
  170. package/lib/programmers/AssertCloneProgrammer.js +19 -10
  171. package/lib/programmers/AssertCloneProgrammer.js.map +1 -1
  172. package/lib/programmers/AssertParseProgrammer.d.ts +6 -2
  173. package/lib/programmers/AssertParseProgrammer.js +17 -8
  174. package/lib/programmers/AssertParseProgrammer.js.map +1 -1
  175. package/lib/programmers/AssertProgrammer.d.ts +6 -2
  176. package/lib/programmers/AssertProgrammer.js +102 -106
  177. package/lib/programmers/AssertProgrammer.js.map +1 -1
  178. package/lib/programmers/AssertPruneProgrammer.d.ts +2 -2
  179. package/lib/programmers/AssertPruneProgrammer.js +14 -13
  180. package/lib/programmers/AssertPruneProgrammer.js.map +1 -1
  181. package/lib/programmers/AssertStringifyProgrammer.d.ts +6 -2
  182. package/lib/programmers/AssertStringifyProgrammer.js +18 -9
  183. package/lib/programmers/AssertStringifyProgrammer.js.map +1 -1
  184. package/lib/programmers/CheckerProgrammer.d.ts +8 -10
  185. package/lib/programmers/CheckerProgrammer.js +349 -274
  186. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  187. package/lib/programmers/CloneProgrammer.d.ts +6 -2
  188. package/lib/programmers/CloneProgrammer.js +319 -235
  189. package/lib/programmers/CloneProgrammer.js.map +1 -1
  190. package/lib/programmers/FeatureProgrammer.d.ts +23 -30
  191. package/lib/programmers/FeatureProgrammer.js +110 -131
  192. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  193. package/lib/programmers/IsCloneProgrammer.d.ts +6 -2
  194. package/lib/programmers/IsCloneProgrammer.js +22 -13
  195. package/lib/programmers/IsCloneProgrammer.js.map +1 -1
  196. package/lib/programmers/IsParseProgrammer.d.ts +6 -2
  197. package/lib/programmers/IsParseProgrammer.js +17 -8
  198. package/lib/programmers/IsParseProgrammer.js.map +1 -1
  199. package/lib/programmers/IsProgrammer.d.ts +9 -9
  200. package/lib/programmers/IsProgrammer.js +116 -112
  201. package/lib/programmers/IsProgrammer.js.map +1 -1
  202. package/lib/programmers/IsPruneProgrammer.d.ts +2 -2
  203. package/lib/programmers/IsPruneProgrammer.js +14 -13
  204. package/lib/programmers/IsPruneProgrammer.js.map +1 -1
  205. package/lib/programmers/IsStringifyProgrammer.d.ts +6 -2
  206. package/lib/programmers/IsStringifyProgrammer.js +20 -11
  207. package/lib/programmers/IsStringifyProgrammer.js.map +1 -1
  208. package/lib/programmers/LiteralsProgrammer.d.ts +2 -2
  209. package/lib/programmers/LiteralsProgrammer.js +15 -13
  210. package/lib/programmers/LiteralsProgrammer.js.map +1 -1
  211. package/lib/programmers/PruneProgrammer.d.ts +2 -2
  212. package/lib/programmers/PruneProgrammer.js +293 -218
  213. package/lib/programmers/PruneProgrammer.js.map +1 -1
  214. package/lib/programmers/RandomProgrammer.d.ts +6 -2
  215. package/lib/programmers/RandomProgrammer.js +346 -272
  216. package/lib/programmers/RandomProgrammer.js.map +1 -1
  217. package/lib/programmers/StringifyProgrammer.d.ts +6 -2
  218. package/lib/programmers/StringifyProgrammer.js +490 -426
  219. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  220. package/lib/programmers/TypiaProgrammer.js +44 -57
  221. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  222. package/lib/programmers/ValidateCloneProgrammer.d.ts +2 -2
  223. package/lib/programmers/ValidateCloneProgrammer.js +14 -13
  224. package/lib/programmers/ValidateCloneProgrammer.js.map +1 -1
  225. package/lib/programmers/ValidateParseProgrammer.d.ts +2 -2
  226. package/lib/programmers/ValidateParseProgrammer.js +13 -12
  227. package/lib/programmers/ValidateParseProgrammer.js.map +1 -1
  228. package/lib/programmers/ValidateProgrammer.d.ts +2 -2
  229. package/lib/programmers/ValidateProgrammer.js +97 -102
  230. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  231. package/lib/programmers/ValidatePruneProgrammer.d.ts +2 -2
  232. package/lib/programmers/ValidatePruneProgrammer.js +14 -13
  233. package/lib/programmers/ValidatePruneProgrammer.js.map +1 -1
  234. package/lib/programmers/ValidateStringifyProgrammer.d.ts +2 -2
  235. package/lib/programmers/ValidateStringifyProgrammer.js +14 -13
  236. package/lib/programmers/ValidateStringifyProgrammer.js.map +1 -1
  237. package/lib/programmers/helpers/AtomicPredicator.js +1 -1
  238. package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
  239. package/lib/programmers/helpers/CloneJoiner.d.ts +4 -4
  240. package/lib/programmers/helpers/CloneJoiner.js +44 -44
  241. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  242. package/lib/programmers/helpers/FunctionImporeter.d.ts +3 -3
  243. package/lib/programmers/helpers/FunctionImporeter.js +25 -8
  244. package/lib/programmers/helpers/FunctionImporeter.js.map +1 -1
  245. package/lib/programmers/helpers/ICheckEntry.d.ts +1 -1
  246. package/lib/programmers/helpers/IExpressionEntry.d.ts +1 -1
  247. package/lib/programmers/helpers/OptionPredicator.js +1 -1
  248. package/lib/programmers/helpers/OptionPredicator.js.map +1 -1
  249. package/lib/programmers/helpers/PruneJoiner.d.ts +4 -4
  250. package/lib/programmers/helpers/PruneJoiner.js +48 -55
  251. package/lib/programmers/helpers/PruneJoiner.js.map +1 -1
  252. package/lib/programmers/helpers/RandomJoiner.d.ts +9 -4
  253. package/lib/programmers/helpers/RandomJoiner.js +57 -66
  254. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  255. package/lib/programmers/helpers/RandomRanger.d.ts +3 -3
  256. package/lib/programmers/helpers/RandomRanger.js +82 -92
  257. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  258. package/lib/programmers/helpers/StringifyJoinder.d.ts +4 -4
  259. package/lib/programmers/helpers/StringifyJoinder.js +55 -63
  260. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  261. package/lib/programmers/helpers/StringifyPredicator.js +1 -1
  262. package/lib/programmers/helpers/StringifyPredicator.js.map +1 -1
  263. package/lib/programmers/helpers/UnionExplorer.d.ts +15 -14
  264. package/lib/programmers/helpers/UnionExplorer.js +108 -112
  265. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  266. package/lib/programmers/helpers/UnionPredicator.js +2 -7
  267. package/lib/programmers/helpers/UnionPredicator.js.map +1 -1
  268. package/lib/programmers/helpers/disable_function_importer_declare.js +1 -0
  269. package/lib/programmers/helpers/disable_function_importer_declare.js.map +1 -1
  270. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.d.ts +1 -1
  271. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.js +2 -2
  272. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.js.map +1 -1
  273. package/lib/programmers/internal/application_array.js +41 -26
  274. package/lib/programmers/internal/application_array.js.map +1 -1
  275. package/lib/programmers/internal/application_boolean.js +1 -4
  276. package/lib/programmers/internal/application_boolean.js.map +1 -1
  277. package/lib/programmers/internal/application_constant.js +2 -5
  278. package/lib/programmers/internal/application_constant.js.map +1 -1
  279. package/lib/programmers/internal/application_default.js +3 -6
  280. package/lib/programmers/internal/application_default.js.map +1 -1
  281. package/lib/programmers/internal/application_default_string.js +0 -5
  282. package/lib/programmers/internal/application_default_string.js.map +1 -1
  283. package/lib/programmers/internal/application_definition.d.ts +5 -0
  284. package/lib/programmers/internal/application_definition.js +45 -0
  285. package/lib/programmers/internal/application_definition.js.map +1 -0
  286. package/lib/programmers/internal/application_native.js +14 -14
  287. package/lib/programmers/internal/application_native.js.map +1 -1
  288. package/lib/programmers/internal/application_number.js +0 -9
  289. package/lib/programmers/internal/application_number.js.map +1 -1
  290. package/lib/programmers/internal/application_object.js +20 -24
  291. package/lib/programmers/internal/application_object.js.map +1 -1
  292. package/lib/programmers/internal/application_schema.js +28 -54
  293. package/lib/programmers/internal/application_schema.js.map +1 -1
  294. package/lib/programmers/internal/application_string.js +0 -9
  295. package/lib/programmers/internal/application_string.js.map +1 -1
  296. package/lib/programmers/internal/application_templates.js +0 -6
  297. package/lib/programmers/internal/application_templates.js.map +1 -1
  298. package/lib/programmers/internal/application_tuple.js +34 -8
  299. package/lib/programmers/internal/application_tuple.js.map +1 -1
  300. package/lib/programmers/internal/check_array.js +7 -12
  301. package/lib/programmers/internal/check_array.js.map +1 -1
  302. package/lib/programmers/internal/check_array_length.js +9 -8
  303. package/lib/programmers/internal/check_array_length.js.map +1 -1
  304. package/lib/programmers/internal/check_bigint.js +70 -71
  305. package/lib/programmers/internal/check_bigint.js.map +1 -1
  306. package/lib/programmers/internal/check_custom.js +19 -20
  307. package/lib/programmers/internal/check_custom.js.map +1 -1
  308. package/lib/programmers/internal/check_dynamic_properties.js +69 -82
  309. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  310. package/lib/programmers/internal/check_everything.js +10 -9
  311. package/lib/programmers/internal/check_everything.js.map +1 -1
  312. package/lib/programmers/internal/check_native.js +8 -7
  313. package/lib/programmers/internal/check_native.js.map +1 -1
  314. package/lib/programmers/internal/check_number.js +22 -27
  315. package/lib/programmers/internal/check_number.js.map +1 -1
  316. package/lib/programmers/internal/check_object.js +19 -32
  317. package/lib/programmers/internal/check_object.js.map +1 -1
  318. package/lib/programmers/internal/check_string.js +11 -12
  319. package/lib/programmers/internal/check_string.js.map +1 -1
  320. package/lib/programmers/internal/check_string_tags.js +50 -51
  321. package/lib/programmers/internal/check_string_tags.js.map +1 -1
  322. package/lib/programmers/internal/check_template.js +23 -27
  323. package/lib/programmers/internal/check_template.js.map +1 -1
  324. package/lib/programmers/internal/check_union_array_like.js +58 -83
  325. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  326. package/lib/programmers/internal/decode_union_object.js +21 -24
  327. package/lib/programmers/internal/decode_union_object.js.map +1 -1
  328. package/lib/programmers/internal/feature_object_entries.js +32 -33
  329. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  330. package/lib/programmers/internal/get_comment_tags.js +0 -3
  331. package/lib/programmers/internal/get_comment_tags.js.map +1 -1
  332. package/lib/programmers/internal/metadata_to_pattern.js +0 -3
  333. package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
  334. package/lib/programmers/internal/prune_object_properties.js +14 -15
  335. package/lib/programmers/internal/prune_object_properties.js.map +1 -1
  336. package/lib/programmers/internal/random_custom.js +9 -10
  337. package/lib/programmers/internal/random_custom.js.map +1 -1
  338. package/lib/programmers/internal/stringify_dynamic_properties.js +54 -65
  339. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  340. package/lib/programmers/internal/stringify_native.js +6 -5
  341. package/lib/programmers/internal/stringify_native.js.map +1 -1
  342. package/lib/programmers/internal/stringify_regular_properties.js +41 -46
  343. package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
  344. package/lib/programmers/internal/template_to_pattern.js +0 -3
  345. package/lib/programmers/internal/template_to_pattern.js.map +1 -1
  346. package/lib/programmers/internal/wrap_metadata_rest_tuple.d.ts +2 -0
  347. package/lib/programmers/internal/wrap_metadata_rest_tuple.js +18 -0
  348. package/lib/programmers/internal/wrap_metadata_rest_tuple.js.map +1 -0
  349. package/lib/schemas/IJsonApplication.d.ts +0 -4
  350. package/lib/schemas/IJsonComponents.d.ts +16 -4
  351. package/lib/schemas/IJsonSchema.d.ts +1 -1
  352. package/lib/transform.d.ts +3 -3
  353. package/lib/transform.js +10 -28
  354. package/lib/transform.js.map +1 -1
  355. package/lib/transformers/CallExpressionTransformer.d.ts +1 -1
  356. package/lib/transformers/CallExpressionTransformer.js +5 -33
  357. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  358. package/lib/transformers/FileTransformer.d.ts +1 -1
  359. package/lib/transformers/FileTransformer.js +11 -8
  360. package/lib/transformers/FileTransformer.js.map +1 -1
  361. package/lib/transformers/IProject.d.ts +1 -8
  362. package/lib/transformers/ImportTransformer.d.ts +2 -2
  363. package/lib/transformers/ImportTransformer.js +35 -47
  364. package/lib/transformers/ImportTransformer.js.map +1 -1
  365. package/lib/transformers/NodeTransformer.d.ts +1 -1
  366. package/lib/transformers/NodeTransformer.js +6 -2
  367. package/lib/transformers/NodeTransformer.js.map +1 -1
  368. package/lib/transformers/features/miscellaneous/ApplicationTransformer.d.ts +2 -2
  369. package/lib/transformers/features/miscellaneous/ApplicationTransformer.js +20 -29
  370. package/lib/transformers/features/miscellaneous/ApplicationTransformer.js.map +1 -1
  371. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.d.ts +1 -1
  372. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.js +1 -1
  373. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.js.map +1 -1
  374. package/lib/transformers/features/miscellaneous/AssertPruneTransformer.d.ts +1 -1
  375. package/lib/transformers/features/miscellaneous/AssertPruneTransformer.js +1 -1
  376. package/lib/transformers/features/miscellaneous/AssertPruneTransformer.js.map +1 -1
  377. package/lib/transformers/features/miscellaneous/CloneTransformer.d.ts +1 -1
  378. package/lib/transformers/features/miscellaneous/CloneTransformer.js +1 -1
  379. package/lib/transformers/features/miscellaneous/CloneTransformer.js.map +1 -1
  380. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.d.ts +1 -1
  381. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.js +1 -1
  382. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.js.map +1 -1
  383. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.d.ts +1 -1
  384. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js +1 -1
  385. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js.map +1 -1
  386. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.d.ts +1 -1
  387. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js +1 -1
  388. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js.map +1 -1
  389. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.d.ts +1 -1
  390. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.js +1 -1
  391. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.js.map +1 -1
  392. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.d.ts +1 -1
  393. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js +1 -1
  394. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js.map +1 -1
  395. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.d.ts +1 -1
  396. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js +1 -1
  397. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js.map +1 -1
  398. package/lib/transformers/features/miscellaneous/CreateRandomTransformer.d.ts +2 -2
  399. package/lib/transformers/features/miscellaneous/CreateRandomTransformer.js +5 -10
  400. package/lib/transformers/features/miscellaneous/CreateRandomTransformer.js.map +1 -1
  401. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.d.ts +1 -1
  402. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.js +1 -1
  403. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.js.map +1 -1
  404. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.d.ts +1 -1
  405. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js +1 -1
  406. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js.map +1 -1
  407. package/lib/transformers/features/miscellaneous/IsCloneTransformer.d.ts +1 -1
  408. package/lib/transformers/features/miscellaneous/IsCloneTransformer.js +1 -1
  409. package/lib/transformers/features/miscellaneous/IsCloneTransformer.js.map +1 -1
  410. package/lib/transformers/features/miscellaneous/IsPruneTransformer.d.ts +1 -1
  411. package/lib/transformers/features/miscellaneous/IsPruneTransformer.js +1 -1
  412. package/lib/transformers/features/miscellaneous/IsPruneTransformer.js.map +1 -1
  413. package/lib/transformers/features/miscellaneous/LiteralsTransformer.d.ts +2 -2
  414. package/lib/transformers/features/miscellaneous/LiteralsTransformer.js +5 -9
  415. package/lib/transformers/features/miscellaneous/LiteralsTransformer.js.map +1 -1
  416. package/lib/transformers/features/miscellaneous/MetadataTransformer.d.ts +2 -2
  417. package/lib/transformers/features/miscellaneous/MetadataTransformer.js +17 -16
  418. package/lib/transformers/features/miscellaneous/MetadataTransformer.js.map +1 -1
  419. package/lib/transformers/features/miscellaneous/PruneTransformer.d.ts +1 -1
  420. package/lib/transformers/features/miscellaneous/PruneTransformer.js +1 -1
  421. package/lib/transformers/features/miscellaneous/PruneTransformer.js.map +1 -1
  422. package/lib/transformers/features/miscellaneous/RandomTransformer.d.ts +2 -2
  423. package/lib/transformers/features/miscellaneous/RandomTransformer.js +9 -10
  424. package/lib/transformers/features/miscellaneous/RandomTransformer.js.map +1 -1
  425. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.d.ts +1 -1
  426. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.js +1 -1
  427. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.js.map +1 -1
  428. package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.d.ts +1 -1
  429. package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.js +1 -1
  430. package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.js.map +1 -1
  431. package/lib/transformers/features/parsers/AssertParseTransformer.d.ts +1 -1
  432. package/lib/transformers/features/parsers/AssertParseTransformer.js +1 -1
  433. package/lib/transformers/features/parsers/AssertParseTransformer.js.map +1 -1
  434. package/lib/transformers/features/parsers/CreateAssertParseTransformer.d.ts +1 -1
  435. package/lib/transformers/features/parsers/CreateAssertParseTransformer.js +1 -1
  436. package/lib/transformers/features/parsers/CreateAssertParseTransformer.js.map +1 -1
  437. package/lib/transformers/features/parsers/CreateIsParseTransformer.d.ts +1 -1
  438. package/lib/transformers/features/parsers/CreateIsParseTransformer.js +1 -1
  439. package/lib/transformers/features/parsers/CreateIsParseTransformer.js.map +1 -1
  440. package/lib/transformers/features/parsers/CreateValidateParseTransformer.d.ts +1 -1
  441. package/lib/transformers/features/parsers/CreateValidateParseTransformer.js +1 -1
  442. package/lib/transformers/features/parsers/CreateValidateParseTransformer.js.map +1 -1
  443. package/lib/transformers/features/parsers/IsParseTransformer.d.ts +1 -1
  444. package/lib/transformers/features/parsers/IsParseTransformer.js +1 -1
  445. package/lib/transformers/features/parsers/IsParseTransformer.js.map +1 -1
  446. package/lib/transformers/features/parsers/ValidateParseTransformer.d.ts +1 -1
  447. package/lib/transformers/features/parsers/ValidateParseTransformer.js +1 -1
  448. package/lib/transformers/features/parsers/ValidateParseTransformer.js.map +1 -1
  449. package/lib/transformers/features/stringifiers/AssertStringifyTransformer.d.ts +1 -1
  450. package/lib/transformers/features/stringifiers/AssertStringifyTransformer.js +1 -1
  451. package/lib/transformers/features/stringifiers/AssertStringifyTransformer.js.map +1 -1
  452. package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.d.ts +1 -1
  453. package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js +1 -1
  454. package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js.map +1 -1
  455. package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.d.ts +1 -1
  456. package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js +1 -1
  457. package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js.map +1 -1
  458. package/lib/transformers/features/stringifiers/CreateStringifyTransformer.d.ts +1 -1
  459. package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js +1 -1
  460. package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js.map +1 -1
  461. package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.d.ts +1 -1
  462. package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js +1 -1
  463. package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js.map +1 -1
  464. package/lib/transformers/features/stringifiers/IsStringifyTransformer.d.ts +1 -1
  465. package/lib/transformers/features/stringifiers/IsStringifyTransformer.js +1 -1
  466. package/lib/transformers/features/stringifiers/IsStringifyTransformer.js.map +1 -1
  467. package/lib/transformers/features/stringifiers/StringifyTransformer.d.ts +1 -1
  468. package/lib/transformers/features/stringifiers/StringifyTransformer.js +1 -1
  469. package/lib/transformers/features/stringifiers/StringifyTransformer.js.map +1 -1
  470. package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.d.ts +1 -1
  471. package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.js +1 -1
  472. package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.js.map +1 -1
  473. package/lib/transformers/features/validators/AssertTransformer.d.ts +1 -1
  474. package/lib/transformers/features/validators/AssertTransformer.js +1 -1
  475. package/lib/transformers/features/validators/AssertTransformer.js.map +1 -1
  476. package/lib/transformers/features/validators/CreateAssertTransformer.d.ts +1 -1
  477. package/lib/transformers/features/validators/CreateAssertTransformer.js +1 -1
  478. package/lib/transformers/features/validators/CreateAssertTransformer.js.map +1 -1
  479. package/lib/transformers/features/validators/CreateIsTransformer.d.ts +1 -1
  480. package/lib/transformers/features/validators/CreateIsTransformer.js +1 -1
  481. package/lib/transformers/features/validators/CreateIsTransformer.js.map +1 -1
  482. package/lib/transformers/features/validators/CreateValidateTransformer.d.ts +1 -1
  483. package/lib/transformers/features/validators/CreateValidateTransformer.js +1 -1
  484. package/lib/transformers/features/validators/CreateValidateTransformer.js.map +1 -1
  485. package/lib/transformers/features/validators/IsTransformer.d.ts +1 -1
  486. package/lib/transformers/features/validators/IsTransformer.js +1 -1
  487. package/lib/transformers/features/validators/IsTransformer.js.map +1 -1
  488. package/lib/transformers/features/validators/ValidateTransformer.d.ts +1 -1
  489. package/lib/transformers/features/validators/ValidateTransformer.js +1 -1
  490. package/lib/transformers/features/validators/ValidateTransformer.js.map +1 -1
  491. package/lib/transformers/internal/GenericTransformer.d.ts +3 -3
  492. package/lib/transformers/internal/GenericTransformer.js +18 -22
  493. package/lib/transformers/internal/GenericTransformer.js.map +1 -1
  494. package/lib/utils/ArrayUtil.d.ts +1 -1
  495. package/lib/utils/ArrayUtil.js +3 -2
  496. package/lib/utils/ArrayUtil.js.map +1 -1
  497. package/lib/utils/Escaper.js +1 -1
  498. package/lib/utils/Escaper.js.map +1 -1
  499. package/lib/utils/MapUtil.js +1 -1
  500. package/lib/utils/MapUtil.js.map +1 -1
  501. package/lib/utils/PatternUtil.js +1 -1
  502. package/lib/utils/PatternUtil.js.map +1 -1
  503. package/lib/utils/RandomGenerator.js +3 -13
  504. package/lib/utils/RandomGenerator.js.map +1 -1
  505. package/lib/utils/Singleton.js +1 -1
  506. package/package.json +14 -5
  507. package/src/CustomValidatorMap.ts +126 -126
  508. package/src/IRandomGenerator.ts +34 -33
  509. package/src/IValidation.ts +21 -21
  510. package/src/Primitive.ts +123 -123
  511. package/src/TypeGuardError.ts +36 -36
  512. package/src/executable/TypiaGenerateWizard.ts +85 -85
  513. package/src/executable/TypiaSetupWizard.ts +133 -133
  514. package/src/executable/setup/ArgumentParser.ts +45 -45
  515. package/src/executable/setup/CommandExecutor.ts +8 -8
  516. package/src/executable/setup/FileRetriever.ts +22 -22
  517. package/src/executable/setup/PackageManager.ts +71 -71
  518. package/src/executable/setup/PluginConfigurator.ts +70 -70
  519. package/src/executable/typia.ts +52 -52
  520. package/src/factories/CommentFactory.ts +74 -14
  521. package/src/factories/ExpressionFactory.ts +70 -77
  522. package/src/factories/IdentifierFactory.ts +65 -62
  523. package/src/factories/LiteralFactory.ts +39 -57
  524. package/src/factories/MetadataCollection.ts +254 -123
  525. package/src/factories/MetadataFactory.ts +40 -53
  526. package/src/factories/MetadataTagFactory.ts +298 -295
  527. package/src/factories/StatementFactory.ts +24 -20
  528. package/src/factories/TemplateFactory.ts +58 -64
  529. package/src/factories/TypeFactory.ts +124 -145
  530. package/src/factories/ValueFactory.ts +12 -15
  531. package/src/factories/internal/metadata/MetadataHelper.ts +12 -12
  532. package/src/factories/internal/metadata/emplace_metadata_array.ts +34 -0
  533. package/src/factories/internal/metadata/emplace_metadata_definition.ts +35 -0
  534. package/src/factories/internal/metadata/emplace_metadata_object.ts +142 -152
  535. package/src/factories/internal/metadata/emplace_metadata_tuple.ts +50 -0
  536. package/src/factories/internal/metadata/explore_metadata.ts +66 -93
  537. package/src/factories/internal/metadata/iterate_metadata.ts +77 -63
  538. package/src/factories/internal/metadata/iterate_metadata_array.ts +29 -32
  539. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
  540. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
  541. package/src/factories/internal/metadata/iterate_metadata_collection.ts +130 -0
  542. package/src/factories/internal/metadata/iterate_metadata_constant.ts +58 -62
  543. package/src/factories/internal/metadata/iterate_metadata_definition.ts +30 -0
  544. package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
  545. package/src/factories/internal/metadata/iterate_metadata_native.ts +219 -217
  546. package/src/factories/internal/metadata/iterate_metadata_object.ts +49 -51
  547. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +27 -30
  548. package/src/factories/internal/metadata/iterate_metadata_set.ts +33 -36
  549. package/src/factories/internal/metadata/iterate_metadata_sort.ts +68 -0
  550. package/src/factories/internal/metadata/iterate_metadata_template.ts +38 -40
  551. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +25 -51
  552. package/src/factories/internal/metadata/iterate_metadata_union.ts +68 -59
  553. package/src/functional/$any.ts +2 -2
  554. package/src/functional/$dictionary.ts +25 -25
  555. package/src/functional/$every.ts +11 -11
  556. package/src/functional/$guard.ts +35 -35
  557. package/src/functional/$is_between.ts +2 -2
  558. package/src/functional/$is_custom.ts +14 -14
  559. package/src/functional/$is_date.ts +3 -3
  560. package/src/functional/$is_datetime.ts +2 -2
  561. package/src/functional/$is_email.ts +4 -4
  562. package/src/functional/$is_ipv4.ts +4 -4
  563. package/src/functional/$is_ipv6.ts +4 -4
  564. package/src/functional/$is_url.ts +4 -4
  565. package/src/functional/$is_uuid.ts +4 -4
  566. package/src/functional/$join.ts +46 -46
  567. package/src/functional/$number.ts +12 -12
  568. package/src/functional/$report.ts +15 -15
  569. package/src/functional/$rest.ts +3 -3
  570. package/src/functional/$string.ts +37 -37
  571. package/src/functional/$tail.ts +5 -5
  572. package/src/functional/Namespace.ts +127 -127
  573. package/src/index.ts +4 -4
  574. package/src/metadata/ICommentTag.ts +4 -4
  575. package/src/metadata/IJsDocTagInfo.ts +10 -10
  576. package/src/metadata/IMetadata.ts +27 -26
  577. package/src/metadata/IMetadataAlias.ts +12 -0
  578. package/src/metadata/IMetadataApplication.ts +7 -7
  579. package/src/metadata/IMetadataArray.ts +10 -0
  580. package/src/metadata/IMetadataCollection.ts +11 -0
  581. package/src/metadata/IMetadataConstant.ts +16 -16
  582. package/src/metadata/IMetadataDictionary.ts +14 -0
  583. package/src/metadata/IMetadataEntry.ts +6 -6
  584. package/src/metadata/IMetadataObject.ts +18 -29
  585. package/src/metadata/IMetadataProperty.ts +11 -11
  586. package/src/metadata/IMetadataTag.ts +105 -105
  587. package/src/metadata/IMetadataTuple.ts +10 -0
  588. package/src/metadata/Metadata.ts +585 -539
  589. package/src/metadata/MetadataAlias.ts +61 -0
  590. package/src/metadata/MetadataArray.ts +52 -0
  591. package/src/metadata/MetadataConstant.ts +3 -3
  592. package/src/metadata/MetadataObject.ts +114 -127
  593. package/src/metadata/MetadataProperty.ts +64 -64
  594. package/src/metadata/MetadataTuple.ts +53 -0
  595. package/src/module.ts +2038 -2038
  596. package/src/programmers/ApplicationProgrammer.ts +55 -48
  597. package/src/programmers/AssertCloneProgrammer.ts +79 -68
  598. package/src/programmers/AssertParseProgrammer.ts +74 -66
  599. package/src/programmers/AssertProgrammer.ts +291 -274
  600. package/src/programmers/AssertPruneProgrammer.ts +76 -73
  601. package/src/programmers/AssertStringifyProgrammer.ts +74 -66
  602. package/src/programmers/CheckerProgrammer.ts +1182 -897
  603. package/src/programmers/CloneProgrammer.ts +595 -387
  604. package/src/programmers/FeatureProgrammer.ts +495 -510
  605. package/src/programmers/IsCloneProgrammer.ts +86 -79
  606. package/src/programmers/IsParseProgrammer.ts +80 -72
  607. package/src/programmers/IsProgrammer.ts +250 -223
  608. package/src/programmers/IsPruneProgrammer.ts +81 -83
  609. package/src/programmers/IsStringifyProgrammer.ts +84 -77
  610. package/src/programmers/LiteralsProgrammer.ts +66 -65
  611. package/src/programmers/PruneProgrammer.ts +550 -348
  612. package/src/programmers/RandomProgrammer.ts +589 -444
  613. package/src/programmers/StringifyProgrammer.ts +990 -758
  614. package/src/programmers/TypiaProgrammer.ts +129 -141
  615. package/src/programmers/ValidateCloneProgrammer.ts +93 -93
  616. package/src/programmers/ValidateParseProgrammer.ts +78 -78
  617. package/src/programmers/ValidateProgrammer.ts +313 -317
  618. package/src/programmers/ValidatePruneProgrammer.ts +86 -86
  619. package/src/programmers/ValidateStringifyProgrammer.ts +92 -93
  620. package/src/programmers/helpers/AtomicPredicator.ts +31 -31
  621. package/src/programmers/helpers/CloneJoiner.ts +131 -138
  622. package/src/programmers/helpers/FunctionImporeter.ts +78 -56
  623. package/src/programmers/helpers/ICheckEntry.ts +12 -12
  624. package/src/programmers/helpers/IExpressionEntry.ts +12 -12
  625. package/src/programmers/helpers/OptionPredicator.ts +15 -15
  626. package/src/programmers/helpers/PruneJoiner.ts +144 -156
  627. package/src/programmers/helpers/RandomJoiner.ts +173 -165
  628. package/src/programmers/helpers/RandomRanger.ts +216 -218
  629. package/src/programmers/helpers/StringifyJoinder.ts +113 -118
  630. package/src/programmers/helpers/StringifyPredicator.ts +12 -12
  631. package/src/programmers/helpers/UnionExplorer.ts +301 -281
  632. package/src/programmers/helpers/UnionPredicator.ts +81 -81
  633. package/src/programmers/helpers/disable_function_importer_declare.ts +26 -21
  634. package/src/programmers/internal/JSON_SCHEMA_PREFIX.ts +1 -1
  635. package/src/programmers/internal/application_array.ts +64 -32
  636. package/src/programmers/internal/application_boolean.ts +15 -15
  637. package/src/programmers/internal/application_constant.ts +26 -26
  638. package/src/programmers/internal/application_default.ts +17 -17
  639. package/src/programmers/internal/application_default_string.ts +33 -33
  640. package/src/programmers/internal/application_definition.ts +45 -0
  641. package/src/programmers/internal/application_native.ts +39 -36
  642. package/src/programmers/internal/application_number.ts +71 -71
  643. package/src/programmers/internal/application_object.ts +167 -162
  644. package/src/programmers/internal/application_schema.ts +164 -198
  645. package/src/programmers/internal/application_string.ts +44 -44
  646. package/src/programmers/internal/application_templates.ts +25 -25
  647. package/src/programmers/internal/application_tuple.ts +77 -27
  648. package/src/programmers/internal/check_array.ts +30 -31
  649. package/src/programmers/internal/check_array_length.ts +35 -35
  650. package/src/programmers/internal/check_bigint.ts +82 -95
  651. package/src/programmers/internal/check_custom.ts +31 -32
  652. package/src/programmers/internal/check_dynamic_properties.ts +194 -198
  653. package/src/programmers/internal/check_everything.ts +28 -28
  654. package/src/programmers/internal/check_native.ts +21 -22
  655. package/src/programmers/internal/check_number.ts +177 -177
  656. package/src/programmers/internal/check_object.ts +55 -65
  657. package/src/programmers/internal/check_string.ts +25 -27
  658. package/src/programmers/internal/check_string_tags.ts +67 -68
  659. package/src/programmers/internal/check_template.ts +56 -57
  660. package/src/programmers/internal/check_union_array_like.ts +329 -273
  661. package/src/programmers/internal/decode_union_object.ts +73 -75
  662. package/src/programmers/internal/feature_object_entries.ts +63 -64
  663. package/src/programmers/internal/get_comment_tags.ts +23 -23
  664. package/src/programmers/internal/metadata_to_pattern.ts +34 -34
  665. package/src/programmers/internal/prune_object_properties.ts +60 -63
  666. package/src/programmers/internal/random_custom.ts +29 -30
  667. package/src/programmers/internal/stringify_dynamic_properties.ts +167 -173
  668. package/src/programmers/internal/stringify_native.ts +7 -7
  669. package/src/programmers/internal/stringify_regular_properties.ts +83 -89
  670. package/src/programmers/internal/template_to_pattern.ts +15 -15
  671. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +16 -0
  672. package/src/schemas/IJsonApplication.ts +8 -13
  673. package/src/schemas/IJsonComponents.ts +45 -33
  674. package/src/schemas/IJsonSchema.ts +134 -134
  675. package/src/transform.ts +17 -39
  676. package/src/transformers/CallExpressionTransformer.ts +179 -183
  677. package/src/transformers/FileTransformer.ts +47 -50
  678. package/src/transformers/IProject.ts +11 -18
  679. package/src/transformers/ITransformOptions.ts +62 -62
  680. package/src/transformers/ImportTransformer.ts +66 -74
  681. package/src/transformers/NodeTransformer.ts +13 -13
  682. package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +104 -107
  683. package/src/transformers/features/miscellaneous/AssertCloneTransformer.ts +9 -9
  684. package/src/transformers/features/miscellaneous/AssertPruneTransformer.ts +9 -9
  685. package/src/transformers/features/miscellaneous/CloneTransformer.ts +9 -9
  686. package/src/transformers/features/miscellaneous/CreateAssertCloneTransformer.ts +9 -9
  687. package/src/transformers/features/miscellaneous/CreateAssertPruneTransformer.ts +9 -9
  688. package/src/transformers/features/miscellaneous/CreateCloneTransformer.ts +9 -9
  689. package/src/transformers/features/miscellaneous/CreateIsCloneTransformer.ts +9 -9
  690. package/src/transformers/features/miscellaneous/CreateIsPruneTransformer.ts +9 -9
  691. package/src/transformers/features/miscellaneous/CreatePruneTransformer.ts +9 -9
  692. package/src/transformers/features/miscellaneous/CreateRandomTransformer.ts +39 -43
  693. package/src/transformers/features/miscellaneous/CreateValidateCloneTransformer.ts +9 -9
  694. package/src/transformers/features/miscellaneous/CreateValidatePruneTransformer.ts +9 -9
  695. package/src/transformers/features/miscellaneous/IsCloneTransformer.ts +9 -9
  696. package/src/transformers/features/miscellaneous/IsPruneTransformer.ts +9 -9
  697. package/src/transformers/features/miscellaneous/LiteralsTransformer.ts +28 -31
  698. package/src/transformers/features/miscellaneous/MetadataTransformer.ts +53 -56
  699. package/src/transformers/features/miscellaneous/PruneTransformer.ts +9 -9
  700. package/src/transformers/features/miscellaneous/RandomTransformer.ts +42 -46
  701. package/src/transformers/features/miscellaneous/ValidateCloneTransformer.ts +9 -9
  702. package/src/transformers/features/miscellaneous/ValidatePruneTransformer.ts +9 -9
  703. package/src/transformers/features/parsers/AssertParseTransformer.ts +9 -9
  704. package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +9 -9
  705. package/src/transformers/features/parsers/CreateIsParseTransformer.ts +9 -9
  706. package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +9 -9
  707. package/src/transformers/features/parsers/IsParseTransformer.ts +9 -9
  708. package/src/transformers/features/parsers/ValidateParseTransformer.ts +9 -9
  709. package/src/transformers/features/stringifiers/AssertStringifyTransformer.ts +10 -10
  710. package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +12 -12
  711. package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +9 -9
  712. package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +9 -9
  713. package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +12 -12
  714. package/src/transformers/features/stringifiers/IsStringifyTransformer.ts +9 -9
  715. package/src/transformers/features/stringifiers/StringifyTransformer.ts +9 -9
  716. package/src/transformers/features/stringifiers/ValidateStringifyTransformer.ts +10 -10
  717. package/src/transformers/features/validators/AssertTransformer.ts +11 -11
  718. package/src/transformers/features/validators/CreateAssertTransformer.ts +13 -13
  719. package/src/transformers/features/validators/CreateIsTransformer.ts +11 -11
  720. package/src/transformers/features/validators/CreateValidateTransformer.ts +13 -13
  721. package/src/transformers/features/validators/IsTransformer.ts +11 -11
  722. package/src/transformers/features/validators/ValidateTransformer.ts +11 -11
  723. package/src/transformers/internal/GenericTransformer.ts +97 -101
  724. package/src/typings/Atomic.ts +17 -17
  725. package/src/typings/ClassProperties.ts +5 -5
  726. package/src/typings/Customizable.ts +5 -5
  727. package/src/typings/OmitNever.ts +3 -3
  728. package/src/typings/SpecialFields.ts +3 -3
  729. package/src/typings/Writable.ts +11 -11
  730. package/src/utils/ArrayUtil.ts +45 -44
  731. package/src/utils/Escaper.ts +45 -45
  732. package/src/utils/MapUtil.ts +12 -12
  733. package/src/utils/PatternUtil.ts +30 -30
  734. package/src/utils/RandomGenerator.ts +81 -81
  735. package/src/utils/Singleton.ts +17 -17
  736. package/lib/programmers/internal/check_union_tuple.js +0 -19
  737. package/lib/programmers/internal/check_union_tuple.js.map +0 -1
  738. package/lib/utils/TsNodeUtil.d.ts +0 -5
  739. package/lib/utils/TsNodeUtil.js +0 -17
  740. package/lib/utils/TsNodeUtil.js.map +0 -1
  741. package/lib/utils/TsSymbolUtil.d.ts +0 -6
  742. package/lib/utils/TsSymbolUtil.js +0 -152
  743. package/lib/utils/TsSymbolUtil.js.map +0 -1
  744. package/lib/utils/TsTypeUtil.d.ts +0 -9
  745. package/lib/utils/TsTypeUtil.js +0 -40
  746. package/lib/utils/TsTypeUtil.js.map +0 -1
  747. package/src/programmers/internal/check_union_tuple.ts +0 -34
  748. package/src/utils/TsNodeUtil.ts +0 -17
  749. package/src/utils/TsSymbolUtil.ts +0 -153
  750. package/src/utils/TsTypeUtil.ts +0 -38
  751. /package/lib/{programmers/internal/check_union_tuple.d.ts → metadata/IMetadataDictionary.d.ts} +0 -0
@@ -37,60 +37,47 @@ var __values = (this && this.__values) || function(o) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.MetadataCollection = void 0;
40
+ var MetadataAlias_1 = require("../metadata/MetadataAlias");
41
+ var MetadataArray_1 = require("../metadata/MetadataArray");
40
42
  var MetadataObject_1 = require("../metadata/MetadataObject");
43
+ var MetadataTuple_1 = require("../metadata/MetadataTuple");
44
+ var Writable_1 = require("../typings/Writable");
41
45
  var MapUtil_1 = require("../utils/MapUtil");
42
- var TsSymbolUtil_1 = require("../utils/TsSymbolUtil");
46
+ var CommentFactory_1 = require("./CommentFactory");
43
47
  var TypeFactory_1 = require("./TypeFactory");
44
- var MetadataCollection = /** @class */ (function () {
48
+ var MetadataCollection = (function () {
45
49
  function MetadataCollection(options) {
46
50
  this.options = options;
47
- this.dict_ = new Map();
51
+ this.objects_ = new Map();
52
+ this.object_unions_ = new Map();
53
+ this.aliases_ = new Map();
54
+ this.arrays_ = new Map();
55
+ this.tuples_ = new Map();
48
56
  this.names_ = new Map();
49
- this.unions_ = new Map();
50
- this.index_ = 0;
57
+ this.object_index_ = 0;
58
+ this.recursive_array_index_ = 0;
59
+ this.recursive_tuple_index_ = 0;
51
60
  }
61
+ MetadataCollection.prototype.aliases = function () {
62
+ return __spreadArray([], __read(this.aliases_.values()), false);
63
+ };
52
64
  MetadataCollection.prototype.objects = function () {
53
- return __spreadArray([], __read(this.dict_.values()), false);
65
+ return __spreadArray([], __read(this.objects_.values()), false);
54
66
  };
55
67
  MetadataCollection.prototype.unions = function () {
56
- return __spreadArray([], __read(this.unions_.values()), false);
68
+ return __spreadArray([], __read(this.object_unions_.values()), false);
57
69
  };
58
- MetadataCollection.prototype.emplace = function (p, type) {
59
- var _a;
60
- var oldbie = this.dict_.get(type);
61
- if (oldbie !== undefined)
62
- return [oldbie, false];
63
- var $id = this.get_name(p, type);
64
- var obj = MetadataObject_1.MetadataObject.create({
65
- name: $id,
66
- properties: [],
67
- description: type.symbol
68
- ? TsSymbolUtil_1.TsSymbolUtil.comments(p.tsc)(type.symbol)
69
- : undefined,
70
- jsDocTags: (_a = (type.symbol
71
- ? TsSymbolUtil_1.TsSymbolUtil.getCommentTags(p.tsc)(type.symbol)
72
- : undefined)) !== null && _a !== void 0 ? _a : [],
73
- validated: false,
74
- index: this.index_++,
75
- recursive: false,
76
- nullables: [],
77
- });
78
- this.dict_.set(type, obj);
79
- return [obj, true];
70
+ MetadataCollection.prototype.arrays = function () {
71
+ return __spreadArray([], __read(this.arrays_.values()), false);
80
72
  };
81
- /**
82
- * @internal
83
- */
84
- MetadataCollection.prototype.getUnionIndex = function (meta) {
85
- var key = meta.objects.map(function (obj) { return obj.name; }).join(" | ");
86
- MapUtil_1.MapUtil.take(this.unions_)(key, function () { return meta.objects; });
87
- return __spreadArray([], __read(this.unions_.keys()), false).indexOf(key);
73
+ MetadataCollection.prototype.tuples = function () {
74
+ return __spreadArray([], __read(this.tuples_.values()), false);
88
75
  };
89
- MetadataCollection.prototype.get_name = function (p, type) {
76
+ MetadataCollection.prototype.getName = function (checker, type) {
90
77
  var _this = this;
91
78
  var name = (function () {
92
79
  var _a;
93
- var str = TypeFactory_1.TypeFactory.getFullName(p)(type);
80
+ var str = TypeFactory_1.TypeFactory.getFullName(checker)(type);
94
81
  return ((_a = _this.options) === null || _a === void 0 ? void 0 : _a.replace) ? _this.options.replace(str) : str;
95
82
  })();
96
83
  var duplicates = MapUtil_1.MapUtil.take(this.names_)(name, function () { return new Map(); });
@@ -103,6 +90,105 @@ var MetadataCollection = /** @class */ (function () {
103
90
  duplicates.set(type, addicted);
104
91
  return addicted;
105
92
  };
93
+ MetadataCollection.prototype.getUnionIndex = function (meta) {
94
+ var key = meta.objects.map(function (obj) { return obj.name; }).join(" | ");
95
+ MapUtil_1.MapUtil.take(this.object_unions_)(key, function () { return meta.objects; });
96
+ return __spreadArray([], __read(this.object_unions_.keys()), false).indexOf(key);
97
+ };
98
+ MetadataCollection.prototype.emplace = function (checker, type) {
99
+ var _a, _b, _c;
100
+ var oldbie = this.objects_.get(type);
101
+ if (oldbie !== undefined)
102
+ return [oldbie, false];
103
+ var $id = this.getName(checker, type);
104
+ var obj = MetadataObject_1.MetadataObject.create({
105
+ name: $id,
106
+ properties: [],
107
+ description: (_a = (type.symbol && CommentFactory_1.CommentFactory.description(type.symbol))) !== null && _a !== void 0 ? _a : undefined,
108
+ jsDocTags: (_c = (_b = type.symbol) === null || _b === void 0 ? void 0 : _b.getJsDocTags()) !== null && _c !== void 0 ? _c : [],
109
+ validated: false,
110
+ index: this.object_index_++,
111
+ recursive: null,
112
+ nullables: [],
113
+ });
114
+ this.objects_.set(type, obj);
115
+ return [obj, true];
116
+ };
117
+ MetadataCollection.prototype.emplaceAlias = function (checker, type, symbol) {
118
+ var _a, _b;
119
+ var oldbie = this.aliases_.get(type);
120
+ if (oldbie !== undefined)
121
+ return [oldbie, false, function () { }];
122
+ var $id = this.getName(checker, type);
123
+ var alias = MetadataAlias_1.MetadataAlias.create({
124
+ name: $id,
125
+ value: null,
126
+ description: (_a = CommentFactory_1.CommentFactory.description(symbol)) !== null && _a !== void 0 ? _a : null,
127
+ recursive: null,
128
+ nullables: [],
129
+ jsDocTags: (_b = symbol.getJsDocTags()) !== null && _b !== void 0 ? _b : [],
130
+ });
131
+ this.aliases_.set(type, alias);
132
+ return [alias, true, function (meta) { return ((0, Writable_1.Writable)(alias).value = meta); }];
133
+ };
134
+ MetadataCollection.prototype.emplaceArray = function (checker, type) {
135
+ var oldbie = this.arrays_.get(type);
136
+ if (oldbie !== undefined)
137
+ return [oldbie, false, function () { }];
138
+ var $id = this.getName(checker, type);
139
+ var array = MetadataArray_1.MetadataArray.create({
140
+ name: $id,
141
+ value: null,
142
+ index: null,
143
+ recursive: null,
144
+ nullables: [],
145
+ });
146
+ this.arrays_.set(type, array);
147
+ return [array, true, function (meta) { return ((0, Writable_1.Writable)(array).value = meta); }];
148
+ };
149
+ MetadataCollection.prototype.emplaceTuple = function (checker, type) {
150
+ var oldbie = this.tuples_.get(type);
151
+ if (oldbie !== undefined)
152
+ return [oldbie, false, function () { }];
153
+ var $id = this.getName(checker, type);
154
+ var tuple = MetadataTuple_1.MetadataTuple.create({
155
+ name: $id,
156
+ elements: null,
157
+ index: null,
158
+ recursive: null,
159
+ nullables: [],
160
+ });
161
+ this.tuples_.set(type, tuple);
162
+ return [
163
+ tuple,
164
+ true,
165
+ function (elements) { return ((0, Writable_1.Writable)(tuple).elements = elements); },
166
+ ];
167
+ };
168
+ MetadataCollection.prototype.setObjectRecursive = function (obj, recursive) {
169
+ (0, Writable_1.Writable)(obj).recursive = recursive;
170
+ };
171
+ MetadataCollection.prototype.setAliasRecursive = function (alias, recursive) {
172
+ (0, Writable_1.Writable)(alias).recursive = recursive;
173
+ };
174
+ MetadataCollection.prototype.setArrayRecursive = function (array, recursive) {
175
+ (0, Writable_1.Writable)(array).recursive = recursive;
176
+ if (recursive)
177
+ (0, Writable_1.Writable)(array).index = this.recursive_array_index_++;
178
+ };
179
+ MetadataCollection.prototype.setTupleRecursive = function (tuple, recursive) {
180
+ (0, Writable_1.Writable)(tuple).recursive = recursive;
181
+ if (recursive)
182
+ (0, Writable_1.Writable)(tuple).index = this.recursive_tuple_index_++;
183
+ };
184
+ MetadataCollection.prototype.toJSON = function () {
185
+ return {
186
+ objects: this.objects().map(function (o) { return o.toJSON(); }),
187
+ aliases: this.aliases().map(function (d) { return d.toJSON(); }),
188
+ arrays: __spreadArray([], __read(this.arrays_.values()), false).map(function (a) { return a.toJSON(); }),
189
+ tuples: __spreadArray([], __read(this.tuples_.values()), false).map(function (t) { return t.toJSON(); }),
190
+ };
191
+ };
106
192
  return MetadataCollection;
107
193
  }());
108
194
  exports.MetadataCollection = MetadataCollection;
@@ -142,7 +228,8 @@ exports.MetadataCollection = MetadataCollection;
142
228
  }
143
229
  return str;
144
230
  };
145
- })(MetadataCollection || (exports.MetadataCollection = MetadataCollection = {}));
231
+ })(MetadataCollection = exports.MetadataCollection || (exports.MetadataCollection = {}));
232
+ exports.MetadataCollection = MetadataCollection;
146
233
  var REPLACERS = [
147
234
  ["$", "_dollar_"],
148
235
  ["&", "_and_"],
@@ -1 +1 @@
1
- {"version":3,"file":"MetadataCollection.js","sourceRoot":"","sources":["../../src/factories/MetadataCollection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,6DAA4D;AAI5D,4CAA2C;AAC3C,sDAAqD;AAErD,6CAA4C;AAE5C;IAMI,4BACqB,OAA8C;QAA9C,YAAO,GAAP,OAAO,CAAuC;QAE/D,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACpB,CAAC;IAEM,oCAAO,GAAd;QACI,gCAAW,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,UAAE;IACpC,CAAC;IACM,mCAAM,GAAb;QACI,gCAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAE;IACtC,CAAC;IAEM,oCAAO,GAAd,UACI,CAAmB,EACnB,IAAa;;QAEb,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEjD,IAAM,GAAG,GAAW,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAM,GAAG,GAAmB,+BAAc,CAAC,MAAM,CAAC;YAC9C,IAAI,EAAE,GAAG;YACT,UAAU,EAAE,EAAE;YACd,WAAW,EAAE,IAAI,CAAC,MAAM;gBACpB,CAAC,CAAC,2BAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC3C,CAAC,CAAC,SAAS;YACf,SAAS,EACL,MAAA,CAAC,IAAI,CAAC,MAAM;gBACR,CAAC,CAAC,2BAAY,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBACjD,CAAC,CAAC,SAAS,CAAC,mCAAI,EAAE;YAC1B,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE;YACpB,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,EAAE;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,0CAAa,GAApB,UAAqB,IAAc;QAC/B,IAAM,GAAG,GAAW,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,EAAR,CAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpE,iBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,cAAM,OAAA,IAAI,CAAC,OAAO,EAAZ,CAAY,CAAC,CAAC;QACpD,OAAO,yBAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,UAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;IAEO,qCAAQ,GAAhB,UAAiB,CAAmB,EAAE,IAAa;QAAnD,iBAkBC;QAjBG,IAAM,IAAI,GAAW,CAAC;;YAClB,IAAM,GAAG,GAAW,yBAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACrD,OAAO,CAAA,MAAA,KAAI,CAAC,OAAO,0CAAE,OAAO,EAAC,CAAC,CAAC,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACnE,CAAC,CAAC,EAAE,CAAC;QAEL,IAAM,UAAU,GAAyB,iBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAC9D,IAAI,EACJ,cAAM,OAAA,IAAI,GAAG,EAAE,EAAT,CAAS,CAClB,CAAC;QACF,IAAM,MAAM,GAAuB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QAExC,IAAM,QAAQ,GAAW,UAAU,CAAC,IAAI;YACpC,CAAC,CAAC,UAAG,IAAI,eAAK,UAAU,CAAC,IAAI,CAAE;YAC/B,CAAC,CAAC,IAAI,CAAC;QACX,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC/B,OAAO,QAAQ,CAAC;IACpB,CAAC;IACL,yBAAC;AAAD,CAAC,AA7ED,IA6EC;AA7EY,gDAAkB;AA8E/B,WAAiB,kBAAkB;IAKlB,0BAAO,GAAG,UAAC,GAAW;;;YAC/B,KAA8B,IAAA,cAAA,SAAA,SAAS,CAAA,oCAAA;gBAA5B,IAAA,KAAA,8BAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACrB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAAA;;;;;;;;;QACxC,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;IAEW,yBAAM,GAAG,UAAC,GAAW;;;YAC9B,KAA8B,IAAA,cAAA,SAAA,SAAS,CAAA,oCAAA;gBAA5B,IAAA,KAAA,8BAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACrB,IAAI,KAAK,KAAK,EAAE;oBAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAAA;;;;;;;;;QAC1D,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;AACN,CAAC,EAhBgB,kBAAkB,kCAAlB,kBAAkB,QAgBlC;AACD,IAAM,SAAS,GAAuB;IAClC,CAAC,GAAG,EAAE,UAAU,CAAC;IACjB,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,SAAS,CAAC;IAChB,CAAC,GAAG,EAAE,aAAa,CAAC;IACpB,CAAC,GAAG,EAAE,eAAe,CAAC;IACtB,CAAC,GAAG,EAAE,eAAe,CAAC;IACtB,CAAC,GAAG,EAAE,SAAS,CAAC;CACnB,CAAC"}
1
+ {"version":3,"file":"MetadataCollection.js","sourceRoot":"","sources":["../../src/factories/MetadataCollection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2DAA0D;AAC1D,2DAA0D;AAC1D,6DAA4D;AAC5D,2DAA0D;AAE1D,gDAA+C;AAE/C,4CAA2C;AAE3C,mDAAkD;AAClD,6CAA4C;AAE5C;IAYI,4BACqB,OAA8C;QAA9C,YAAO,GAAP,OAAO,CAAuC;QAE/D,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,EAAE,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;QAEzB,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;IACpC,CAAC;IAKM,oCAAO,GAAd;QACI,gCAAW,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAE;IACvC,CAAC;IAEM,oCAAO,GAAd;QACI,gCAAW,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAE;IACvC,CAAC;IAEM,mCAAM,GAAb;QACI,gCAAW,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,UAAE;IAC7C,CAAC;IAEM,mCAAM,GAAb;QACI,gCAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAE;IACtC,CAAC;IAEM,mCAAM,GAAb;QACI,gCAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAE;IACtC,CAAC;IAEO,oCAAO,GAAf,UAAgB,OAAuB,EAAE,IAAa;QAAtD,iBAkBC;QAjBG,IAAM,IAAI,GAAW,CAAC;;YAClB,IAAM,GAAG,GAAW,yBAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3D,OAAO,CAAA,MAAA,KAAI,CAAC,OAAO,0CAAE,OAAO,EAAC,CAAC,CAAC,KAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACnE,CAAC,CAAC,EAAE,CAAC;QAEL,IAAM,UAAU,GAAyB,iBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAC9D,IAAI,EACJ,cAAM,OAAA,IAAI,GAAG,EAAE,EAAT,CAAS,CAClB,CAAC;QACF,IAAM,MAAM,GAAuB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QAExC,IAAM,QAAQ,GAAW,UAAU,CAAC,IAAI;YACpC,CAAC,CAAC,UAAG,IAAI,eAAK,UAAU,CAAC,IAAI,CAAE;YAC/B,CAAC,CAAC,IAAI,CAAC;QACX,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC/B,OAAO,QAAQ,CAAC;IACpB,CAAC;IAKM,0CAAa,GAApB,UAAqB,IAAc;QAC/B,IAAM,GAAG,GAAW,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,EAAR,CAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpE,iBAAO,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,EAAE,cAAM,OAAA,IAAI,CAAC,OAAO,EAAZ,CAAY,CAAC,CAAC;QAC3D,OAAO,yBAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,UAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IACxD,CAAC;IAKM,oCAAO,GAAd,UACI,OAAuB,EACvB,IAAa;;QAEb,IAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEjD,IAAM,GAAG,GAAW,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAChD,IAAM,GAAG,GAAmB,+BAAc,CAAC,MAAM,CAAC;YAC9C,IAAI,EAAE,GAAG;YACT,UAAU,EAAE,EAAE;YACd,WAAW,EACP,MAAA,CAAC,IAAI,CAAC,MAAM,IAAI,+BAAc,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,mCACxD,SAAS;YACb,SAAS,EAAE,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,YAAY,EAAE,mCAAI,EAAE;YAC5C,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE;YAC3B,SAAS,EAAE,IAAK;YAChB,SAAS,EAAE,EAAE;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC7B,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACvB,CAAC;IAEM,yCAAY,GAAnB,UACI,OAAuB,EACvB,IAAa,EACb,MAAiB;;QAEjB,IAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,cAAO,CAAC,CAAC,CAAC;QAE3D,IAAM,GAAG,GAAW,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAChD,IAAM,KAAK,GAAkB,6BAAa,CAAC,MAAM,CAAC;YAC9C,IAAI,EAAE,GAAG;YACT,KAAK,EAAE,IAAK;YACZ,WAAW,EAAE,MAAA,+BAAc,CAAC,WAAW,CAAC,MAAM,CAAC,mCAAI,IAAI;YACvD,SAAS,EAAE,IAAK;YAChB,SAAS,EAAE,EAAE;YACb,SAAS,EAAE,MAAA,MAAM,CAAC,YAAY,EAAE,mCAAI,EAAE;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,UAAC,IAAI,IAAK,OAAA,CAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAA9B,CAA8B,CAAC,CAAC;IACnE,CAAC;IAEM,yCAAY,GAAnB,UACI,OAAuB,EACvB,IAAa;QAEb,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,cAAO,CAAC,CAAC,CAAC;QAE3D,IAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACxC,IAAM,KAAK,GAAkB,6BAAa,CAAC,MAAM,CAAC;YAC9C,IAAI,EAAE,GAAG;YACT,KAAK,EAAE,IAAK;YACZ,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAK;YAChB,SAAS,EAAE,EAAE;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9B,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,UAAC,IAAI,IAAK,OAAA,CAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,EAA9B,CAA8B,CAAC,CAAC;IACnE,CAAC;IAEM,yCAAY,GAAnB,UACI,OAAuB,EACvB,IAAkB;QAElB,IAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,cAAO,CAAC,CAAC,CAAC;QAE3D,IAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACxC,IAAM,KAAK,GAAkB,6BAAa,CAAC,MAAM,CAAC;YAC9C,IAAI,EAAE,GAAG;YACT,QAAQ,EAAE,IAAK;YACf,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,IAAK;YAChB,SAAS,EAAE,EAAE;SAChB,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC9B,OAAO;YACH,KAAK;YACL,IAAI;YACJ,UAAC,QAAQ,IAAK,OAAA,CAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAArC,CAAqC;SACtD,CAAC;IACN,CAAC;IAKM,+CAAkB,GAAzB,UAA0B,GAAmB,EAAE,SAAkB;QAC7D,IAAA,mBAAQ,EAAC,GAAG,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;IACxC,CAAC;IAKM,8CAAiB,GAAxB,UAAyB,KAAoB,EAAE,SAAkB;QAC7D,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;IAC1C,CAAC;IAKM,8CAAiB,GAAxB,UAAyB,KAAoB,EAAE,SAAkB;QAC7D,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;QACtC,IAAI,SAAS;YAAE,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;IACzE,CAAC;IAEM,8CAAiB,GAAxB,UAAyB,KAAoB,EAAE,SAAkB;QAC7D,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;QACtC,IAAI,SAAS;YAAE,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;IACzE,CAAC;IAEM,mCAAM,GAAb;QACI,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,EAAE,EAAV,CAAU,CAAC;YAC9C,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,EAAE,EAAV,CAAU,CAAC;YAC9C,MAAM,EAAE,yBAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAE,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,EAAE,EAAV,CAAU,CAAC;YACzD,MAAM,EAAE,yBAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAE,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,EAAE,EAAV,CAAU,CAAC;SAC5D,CAAC;IACN,CAAC;IACL,yBAAC;AAAD,CAAC,AA5MD,IA4MC;AA5MY,gDAAkB;AA6M/B,WAAiB,kBAAkB;IAKlB,0BAAO,GAAG,UAAC,GAAW;;;YAC/B,KAA8B,IAAA,cAAA,SAAA,SAAS,CAAA,oCAAA;gBAA5B,IAAA,KAAA,8BAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACrB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAAA;;;;;;;;;QACxC,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;IAEW,yBAAM,GAAG,UAAC,GAAW;;;YAC9B,KAA8B,IAAA,cAAA,SAAA,SAAS,CAAA,oCAAA;gBAA5B,IAAA,KAAA,8BAAe,EAAd,MAAM,QAAA,EAAE,KAAK,QAAA;gBACrB,IAAI,KAAK,KAAK,EAAE;oBAAE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAAA;;;;;;;;;QAC1D,OAAO,GAAG,CAAC;IACf,CAAC,CAAC;AACN,CAAC,EAhBgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAgBlC;AA7NY,gDAAkB;AA8N/B,IAAM,SAAS,GAAuB;IAClC,CAAC,GAAG,EAAE,UAAU,CAAC;IACjB,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,OAAO,CAAC;IACd,CAAC,GAAG,EAAE,SAAS,CAAC;IAChB,CAAC,GAAG,EAAE,aAAa,CAAC;IACpB,CAAC,GAAG,EAAE,eAAe,CAAC;IACtB,CAAC,GAAG,EAAE,eAAe,CAAC;IACtB,CAAC,GAAG,EAAE,SAAS,CAAC;CACnB,CAAC"}
@@ -1,12 +1,16 @@
1
- import type ts from "typescript/lib/tsclibrary";
1
+ import ts from "typescript";
2
2
  import { Metadata } from "../metadata/Metadata";
3
- import { IProject } from "../transformers/IProject";
4
3
  import { MetadataCollection } from "./MetadataCollection";
5
4
  export declare namespace MetadataFactory {
6
5
  interface IOptions {
7
6
  resolve: boolean;
8
7
  constant: boolean;
8
+ absorb: boolean;
9
9
  validate?: (meta: Metadata) => void;
10
10
  }
11
- const analyze: (project: IProject.IModule) => (options: IOptions) => (collection: MetadataCollection) => (type: ts.Type | null) => Metadata;
11
+ const analyze: (checker: ts.TypeChecker) => (options: IOptions) => (collection: MetadataCollection) => (type: ts.Type | null) => Metadata;
12
+ /**
13
+ * @deprecated Use `analyze` function instead
14
+ */
15
+ const generate: (checker: ts.TypeChecker, collection: MetadataCollection, type: ts.Type, options: IOptions) => Metadata;
12
16
  }
@@ -1,67 +1,23 @@
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
- };
13
2
  Object.defineProperty(exports, "__esModule", { value: true });
14
3
  exports.MetadataFactory = void 0;
15
4
  var explore_metadata_1 = require("./internal/metadata/explore_metadata");
5
+ var iterate_metadata_collection_1 = require("./internal/metadata/iterate_metadata_collection");
6
+ var iterate_metadata_sort_1 = require("./internal/metadata/iterate_metadata_sort");
16
7
  var MetadataFactory;
17
8
  (function (MetadataFactory) {
18
- MetadataFactory.analyze = function (project) {
9
+ MetadataFactory.analyze = function (checker) {
19
10
  return function (options) {
20
11
  return function (collection) {
21
12
  return function (type) {
22
- var e_1, _a;
23
- // CONSTRUCT SCHEMA WITH OBJECTS
24
- var metadata = (0, explore_metadata_1.explore_metadata)(project)(options)(collection)(false)(type);
25
- var _loop_1 = function (object) {
26
- object.recursive = object.properties.some(function (prop) {
27
- return isRecursive(object.name)(prop.value);
28
- });
29
- };
30
- try {
31
- // FIND RECURSIVE OBJECTS
32
- for (var _b = __values(collection.objects()), _c = _b.next(); !_c.done; _c = _b.next()) {
33
- var object = _c.value;
34
- _loop_1(object);
35
- }
36
- }
37
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
38
- finally {
39
- try {
40
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
41
- }
42
- finally { if (e_1) throw e_1.error; }
43
- }
44
- // RETURNS
45
- return metadata;
13
+ var meta = (0, explore_metadata_1.explore_metadata)(checker)(options)(collection)(type, false);
14
+ (0, iterate_metadata_collection_1.iterate_metadata_collection)(collection);
15
+ (0, iterate_metadata_sort_1.iterate_metadata_sort)(collection)(meta);
16
+ return meta;
46
17
  };
47
18
  };
48
19
  };
49
20
  };
50
- var isRecursive = function (name) {
51
- return function (meta) {
52
- var similar = function (str) {
53
- return name === str ||
54
- name.indexOf("<".concat(str, ",")) !== -1 ||
55
- name.indexOf(", ".concat(str, ">")) !== -1 ||
56
- name.indexOf(", ".concat(str, ",")) !== -1;
57
- };
58
- return (meta.objects.some(function (obj) { return similar(obj.name); }) ||
59
- meta.arrays.some(function (arr) { return isRecursive(name)(arr); }) ||
60
- meta.tuples.some(function (tuple) {
61
- return tuple.some(function (m) { var _a; return isRecursive(name)((_a = m.rest) !== null && _a !== void 0 ? _a : m); });
62
- }) ||
63
- meta.maps.some(function (map) { return isRecursive(name)(map.value); }));
64
- };
65
- };
66
- })(MetadataFactory || (exports.MetadataFactory = MetadataFactory = {}));
21
+ MetadataFactory.generate = function (checker, collection, type, options) { return MetadataFactory.analyze(checker)(options)(collection)(type); };
22
+ })(MetadataFactory = exports.MetadataFactory || (exports.MetadataFactory = {}));
67
23
  //# sourceMappingURL=MetadataFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MetadataFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,yEAAwE;AAMxE,IAAiB,eAAe,CA2C/B;AA3CD,WAAiB,eAAe;IAOf,uBAAO,GAChB,UAAC,OAAyB;QAC1B,OAAA,UAAC,OAAiB;YAClB,OAAA,UAAC,UAA8B;gBAC/B,OAAA,UAAC,IAAoB;;oBACjB,gCAAgC;oBAChC,IAAM,QAAQ,GACV,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;4CAGrD,MAAM;wBACb,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,UAAC,IAAI;4BAC3C,OAAA,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;wBAApC,CAAoC,CACvC,CAAC;;;wBAJN,yBAAyB;wBACzB,KAAqB,IAAA,KAAA,SAAA,UAAU,CAAC,OAAO,EAAE,CAAA,gBAAA;4BAApC,IAAM,MAAM,WAAA;oCAAN,MAAM;yBAGX;;;;;;;;;oBAEN,UAAU;oBACV,OAAO,QAAQ,CAAC;gBACpB,CAAC;YAbD,CAaC;QAdD,CAcC;IAfD,CAeC,CAAC;IAEN,IAAM,WAAW,GACb,UAAC,IAAY;QACb,OAAA,UAAC,IAAc;YACX,IAAM,OAAO,GAAG,UAAC,GAAW;gBACxB,OAAA,IAAI,KAAK,GAAG;oBACZ,IAAI,CAAC,OAAO,CAAC,WAAI,GAAG,MAAG,CAAC,KAAK,CAAC,CAAC;oBAC/B,IAAI,CAAC,OAAO,CAAC,YAAK,GAAG,MAAG,CAAC,KAAK,CAAC,CAAC;oBAChC,IAAI,CAAC,OAAO,CAAC,YAAK,GAAG,MAAG,CAAC,KAAK,CAAC,CAAC;YAHhC,CAGgC,CAAC;YACrC,OAAO,CACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAC,GAAG,IAAK,OAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAjB,CAAiB,CAAC;gBAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,GAAG,IAAK,OAAA,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAtB,CAAsB,CAAC;gBACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,KAAK;oBACnB,OAAA,KAAK,CAAC,IAAI,CAAC,UAAC,CAAC,YAAK,OAAA,WAAW,CAAC,IAAI,CAAC,CAAC,MAAA,CAAC,CAAC,IAAI,mCAAI,CAAC,CAAC,CAAA,EAAA,CAAC;gBAAjD,CAAiD,CACpD;gBACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAC,GAAG,IAAK,OAAA,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAA5B,CAA4B,CAAC,CACxD,CAAC;QACN,CAAC;IAdD,CAcC,CAAC;AACV,CAAC,EA3CgB,eAAe,+BAAf,eAAe,QA2C/B"}
1
+ {"version":3,"file":"MetadataFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataFactory.ts"],"names":[],"mappings":";;;AAGA,yEAAwE;AACxE,+FAA8F;AAC9F,mFAAkF;AAIlF,IAAiB,eAAe,CA8B/B;AA9BD,WAAiB,eAAe;IAQf,uBAAO,GAChB,UAAC,OAAuB;QACxB,OAAA,UAAC,OAAiB;YAClB,OAAA,UAAC,UAA8B;gBAC/B,OAAA,UAAC,IAAoB;oBACjB,IAAM,IAAI,GAAa,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CACrD,UAAU,CACb,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBACf,IAAA,yDAA2B,EAAC,UAAU,CAAC,CAAC;oBACxC,IAAA,6CAAqB,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;oBACxC,OAAO,IAAI,CAAC;gBAChB,CAAC;YAPD,CAOC;QARD,CAQC;IATD,CASC,CAAC;IAKO,wBAAQ,GAAG,UACpB,OAAuB,EACvB,UAA8B,EAC9B,IAAa,EACb,OAAiB,IAChB,OAAA,gBAAA,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC;AACrD,CAAC,EA9BgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QA8B/B"}
@@ -1,6 +1,6 @@
1
- import { JSDocTagInfo } from "typescript";
1
+ import ts from "typescript";
2
2
  import { IMetadataTag } from "../metadata/IMetadataTag";
3
3
  import { Metadata } from "../metadata/Metadata";
4
4
  export declare namespace MetadataTagFactory {
5
- const generate: (metadata: Metadata) => (tagList: JSDocTagInfo[]) => (identifier: () => string) => IMetadataTag[];
5
+ const generate: (metadata: Metadata) => (tagList: ts.JSDocTagInfo[]) => (identifier: () => string) => IMetadataTag[];
6
6
  }
@@ -39,22 +39,16 @@ var MetadataTagFactory;
39
39
  };
40
40
  };
41
41
  var parse = function (identifier, metadata, tag, output) {
42
- var _a, _b;
42
+ var _a;
43
43
  var closure = MetadataTagFactory._PARSER[tag.name];
44
44
  if (closure === undefined)
45
45
  return null;
46
- var text = (_b = (_a = tag.text) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.text;
46
+ var text = (_a = (tag.text || [])[0]) === null || _a === void 0 ? void 0 : _a.text;
47
47
  if (text === undefined)
48
48
  throw new Error("".concat(LABEL, ": no tag value on ").concat(identifier()));
49
49
  return closure(identifier, metadata, text, output);
50
50
  };
51
- /**
52
- * @internal
53
- */
54
51
  MetadataTagFactory._PARSER = {
55
- /* -----------------------------------------------------------
56
- ARRAY
57
- ----------------------------------------------------------- */
58
52
  items: function (identifier, metadata, text, output) {
59
53
  validate(identifier, metadata, output, "items", "array", [
60
54
  "minItems",
@@ -82,9 +76,6 @@ var MetadataTagFactory;
82
76
  value: parse_number(identifier, text),
83
77
  };
84
78
  },
85
- /* -----------------------------------------------------------
86
- NUMBER
87
- ----------------------------------------------------------- */
88
79
  type: function (_identifier, metadata, text, _output) {
89
80
  return has_atomic(metadata)("number") &&
90
81
  (text === "int" || text === "uint")
@@ -146,15 +137,10 @@ var MetadataTagFactory;
146
137
  value: parse_number(identifier, text),
147
138
  };
148
139
  },
149
- /* -----------------------------------------------------------
150
- STRING
151
- ----------------------------------------------------------- */
152
140
  format: function (identifier, metadata, str, output) {
153
141
  validate(identifier, metadata, output, "format", "string", [
154
142
  "pattern",
155
143
  ]);
156
- // Ignore arbitrary @format values in the internal metadata,
157
- // these are currently only supported on the typia.application() API.
158
144
  var value = FORMATS.get(str);
159
145
  if (value === undefined)
160
146
  return null;
@@ -201,7 +187,7 @@ var MetadataTagFactory;
201
187
  };
202
188
  },
203
189
  };
204
- })(MetadataTagFactory || (exports.MetadataTagFactory = MetadataTagFactory = {}));
190
+ })(MetadataTagFactory = exports.MetadataTagFactory || (exports.MetadataTagFactory = {}));
205
191
  var parse_number = function (identifier, str) {
206
192
  var value = Number(str);
207
193
  if (isNaN(value) === true)
@@ -223,14 +209,12 @@ var FORMATS = new Map([
223
209
  var WRONG_TYPE = function (tag, type, identifier) { return "".concat(LABEL, ": ").concat(tag, " requires ").concat(type, " type, but no \"").concat(identifier(), "\"."); };
224
210
  var validate = function (identifier, metadata, output, kind, type, neighbors) {
225
211
  var e_2, _a;
226
- // TYPE CHECKING
227
212
  if (type === "array") {
228
213
  if (has_array(metadata) === false)
229
214
  throw new Error(WRONG_TYPE(kind, "array", identifier));
230
215
  }
231
216
  else if (has_atomic(metadata)(type) === false)
232
217
  throw new Error(WRONG_TYPE(kind, type, identifier));
233
- // DUPLICATED TAG
234
218
  if (output.some(function (tag) { return tag.kind === kind; }))
235
219
  throw new Error("".concat(LABEL, ": duplicated ").concat(kind, " tags on \"").concat(identifier(), "\"."));
236
220
  var _loop_1 = function (name_1) {
@@ -238,7 +222,6 @@ var validate = function (identifier, metadata, output, kind, type, neighbors) {
238
222
  throw new Error("".concat(LABEL, ": ").concat(kind, " and ").concat(name_1, " tags on \"").concat(identifier(), "\"."));
239
223
  };
240
224
  try {
241
- // NEIGHBOR TAG
242
225
  for (var neighbors_1 = __values(neighbors), neighbors_1_1 = neighbors_1.next(); !neighbors_1_1.done; neighbors_1_1 = neighbors_1.next()) {
243
226
  var name_1 = neighbors_1_1.value;
244
227
  _loop_1(name_1);
@@ -257,14 +240,16 @@ var has_atomic = function (metadata) {
257
240
  return metadata.atomics.find(type === "number"
258
241
  ? function (atom) { return atom === type || atom === "bigint"; }
259
242
  : function (atom) { return atom === type; }) !== undefined ||
260
- metadata.arrays.some(function (child) { return has_atomic(child)(type); }) ||
243
+ metadata.arrays.some(function (child) { return has_atomic(child.value)(type); }) ||
261
244
  metadata.tuples.some(function (tuple) {
262
- return tuple.some(function (child) { return has_atomic(child)(type); });
245
+ return tuple.elements.some(function (child) { return has_atomic(child)(type); });
263
246
  });
264
247
  };
265
248
  };
266
249
  var has_array = function (metadata) {
267
250
  return metadata.arrays.length !== 0 ||
268
- metadata.tuples.some(function (tuple) { return tuple.some(function (child) { return has_array(child); }); });
251
+ metadata.tuples.some(function (tuple) {
252
+ return tuple.elements.some(function (child) { return has_array(child); });
253
+ });
269
254
  };
270
255
  //# sourceMappingURL=MetadataTagFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MetadataTagFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataTagFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MetadataTagFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataTagFactory.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import type ts from "typescript/lib/tsclibrary";
1
+ import ts from "typescript";
2
2
  export declare namespace StatementFactory {
3
- const constant: (tsc: typeof ts) => (name: string, initializer?: ts.Expression) => ts.VariableStatement;
3
+ const constant: (name: string, initializer?: ts.Expression) => ts.VariableStatement;
4
+ const transpile: (script: string) => ts.ExpressionStatement;
4
5
  }
@@ -1,12 +1,19 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.StatementFactory = void 0;
7
+ var typescript_1 = __importDefault(require("typescript"));
4
8
  var StatementFactory;
5
9
  (function (StatementFactory) {
6
- StatementFactory.constant = function (tsc) { return function (name, initializer) {
7
- return tsc.factory.createVariableStatement(undefined, tsc.factory.createVariableDeclarationList([
8
- tsc.factory.createVariableDeclaration(name, undefined, undefined, initializer),
9
- ], tsc.NodeFlags.Const));
10
- }; };
11
- })(StatementFactory || (exports.StatementFactory = StatementFactory = {}));
10
+ StatementFactory.constant = function (name, initializer) {
11
+ return typescript_1.default.factory.createVariableStatement(undefined, typescript_1.default.factory.createVariableDeclarationList([
12
+ typescript_1.default.factory.createVariableDeclaration(name, undefined, undefined, initializer),
13
+ ], typescript_1.default.NodeFlags.Const));
14
+ };
15
+ StatementFactory.transpile = function (script) {
16
+ return typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createIdentifier(typescript_1.default.transpile(script)));
17
+ };
18
+ })(StatementFactory = exports.StatementFactory || (exports.StatementFactory = {}));
12
19
  //# sourceMappingURL=StatementFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatementFactory.js","sourceRoot":"","sources":["../../src/factories/StatementFactory.ts"],"names":[],"mappings":";;;AAEA,IAAiB,gBAAgB,CAiBhC;AAjBD,WAAiB,gBAAgB;IAChB,yBAAQ,GACjB,UAAC,GAAc,IAAK,OAAA,UAAC,IAAY,EAAE,WAA2B;QAC1D,OAAA,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAC/B,SAAS,EACT,GAAG,CAAC,OAAO,CAAC,6BAA6B,CACrC;YACI,GAAG,CAAC,OAAO,CAAC,yBAAyB,CACjC,IAAI,EACJ,SAAS,EACT,SAAS,EACT,WAAW,CACd;SACJ,EACD,GAAG,CAAC,SAAS,CAAC,KAAK,CACtB,CACJ;IAbD,CAaC,EAde,CAcf,CAAC;AACd,CAAC,EAjBgB,gBAAgB,gCAAhB,gBAAgB,QAiBhC"}
1
+ {"version":3,"file":"StatementFactory.js","sourceRoot":"","sources":["../../src/factories/StatementFactory.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,IAAiB,gBAAgB,CAqBhC;AArBD,WAAiB,gBAAgB;IAChB,yBAAQ,GAAG,UAAC,IAAY,EAAE,WAA2B;QAC9D,OAAA,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC;YACI,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,IAAI,EACJ,SAAS,EACT,SAAS,EACT,WAAW,CACd;SACJ,EACD,oBAAE,CAAC,SAAS,CAAC,KAAK,CACrB,CACJ;IAbD,CAaC,CAAC;IAEO,0BAAS,GAAG,UAAC,MAAc;QACpC,OAAA,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,oBAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CACpD;IAFD,CAEC,CAAC;AACV,CAAC,EArBgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAqBhC"}
@@ -1,4 +1,4 @@
1
- import type ts from "typescript/lib/tsclibrary";
1
+ import ts from "typescript";
2
2
  export declare namespace TemplateFactory {
3
- const generate: (tsc: typeof ts) => (expressions: ts.Expression[]) => ts.Expression;
3
+ const generate: (expressions: ts.Expression[]) => ts.Expression;
4
4
  }
@@ -1,48 +1,46 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.TemplateFactory = void 0;
7
+ var typescript_1 = __importDefault(require("typescript"));
4
8
  var TemplateFactory;
5
9
  (function (TemplateFactory) {
6
- TemplateFactory.generate = function (tsc) {
7
- return function (expressions) {
8
- if (expressions.every(function (exp) { return tsc.isStringLiteral(exp); }))
9
- return tsc.factory.createStringLiteral(expressions
10
- .map(function (str) { return str.text; })
11
- .join(""));
12
- var it = {
13
- value: "",
14
- index: 0,
15
- };
16
- gather(tsc)(expressions)(it);
17
- var head = tsc.factory.createTemplateHead(it.value);
18
- var spans = [];
19
- while (true) {
20
- var elem = expressions[it.index++];
21
- gather(tsc)(expressions)(it);
22
- var broken = it.index === expressions.length;
23
- spans.push(tsc.factory.createTemplateSpan(elem, broken
24
- ? tsc.factory.createTemplateTail(it.value)
25
- : tsc.factory.createTemplateMiddle(it.value)));
26
- if (broken === true)
27
- break;
28
- }
29
- return tsc.factory.createTemplateExpression(head, spans);
10
+ TemplateFactory.generate = function (expressions) {
11
+ if (expressions.every(function (exp) { return typescript_1.default.isStringLiteral(exp); }))
12
+ return typescript_1.default.factory.createStringLiteral(expressions
13
+ .map(function (str) { return str.text; })
14
+ .join(""));
15
+ var it = {
16
+ value: "",
17
+ index: 0,
30
18
  };
19
+ gather(expressions)(it);
20
+ var head = typescript_1.default.factory.createTemplateHead(it.value);
21
+ var spans = [];
22
+ while (true) {
23
+ var elem = expressions[it.index++];
24
+ gather(expressions)(it);
25
+ var broken = it.index === expressions.length;
26
+ spans.push(typescript_1.default.factory.createTemplateSpan(elem, broken
27
+ ? typescript_1.default.factory.createTemplateTail(it.value)
28
+ : typescript_1.default.factory.createTemplateMiddle(it.value)));
29
+ if (broken === true)
30
+ break;
31
+ }
32
+ return typescript_1.default.factory.createTemplateExpression(head, spans);
31
33
  };
32
- var gather = function (tsc) {
33
- return function (expressions) {
34
- return function (it) {
35
- var found = expressions.findIndex(function (elem, index) {
36
- return index >= it.index && !tsc.isStringLiteral(elem);
37
- });
38
- var last = found !== -1 ? found : expressions.length;
39
- it.value = expressions
40
- .slice(it.index, last)
41
- .map(function (elem) { return elem.text; })
42
- .reduce(function (x, y) { return x + y; }, "");
43
- it.index = last;
44
- };
34
+ var gather = function (expressions) {
35
+ return function (it) {
36
+ var found = expressions.findIndex(function (elem, index) { return index >= it.index && !typescript_1.default.isStringLiteral(elem); });
37
+ var last = found !== -1 ? found : expressions.length;
38
+ it.value = expressions
39
+ .slice(it.index, last)
40
+ .map(function (elem) { return elem.text; })
41
+ .reduce(function (x, y) { return x + y; }, "");
42
+ it.index = last;
45
43
  };
46
44
  };
47
- })(TemplateFactory || (exports.TemplateFactory = TemplateFactory = {}));
45
+ })(TemplateFactory = exports.TemplateFactory || (exports.TemplateFactory = {}));
48
46
  //# sourceMappingURL=TemplateFactory.js.map