typia 5.0.0-dev.20230823-2 → 5.0.0-dev.20230827

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 (424) hide show
  1. package/README.md +1 -2
  2. package/lib/IRandomGenerator.d.ts +4 -3
  3. package/lib/factories/ExpressionFactory.d.ts +3 -1
  4. package/lib/factories/ExpressionFactory.js +25 -1
  5. package/lib/factories/ExpressionFactory.js.map +1 -1
  6. package/lib/factories/IdentifierFactory.d.ts +2 -1
  7. package/lib/factories/IdentifierFactory.js +11 -0
  8. package/lib/factories/IdentifierFactory.js.map +1 -1
  9. package/lib/factories/LiteralFactory.js +6 -2
  10. package/lib/factories/LiteralFactory.js.map +1 -1
  11. package/lib/factories/MetadataCollection.d.ts +7 -7
  12. package/lib/factories/MetadataCollection.js +4 -5
  13. package/lib/factories/MetadataCollection.js.map +1 -1
  14. package/lib/factories/MetadataCommentTagFactory.js +532 -0
  15. package/lib/factories/MetadataCommentTagFactory.js.map +1 -0
  16. package/lib/factories/MetadataTypeTagFactory.d.ts +6 -0
  17. package/lib/factories/MetadataTypeTagFactory.js +207 -0
  18. package/lib/factories/MetadataTypeTagFactory.js.map +1 -0
  19. package/lib/factories/NumericRangeFactory.d.ts +6 -0
  20. package/lib/factories/NumericRangeFactory.js +34 -0
  21. package/lib/factories/NumericRangeFactory.js.map +1 -0
  22. package/lib/factories/ProtobufFactory.js +48 -16
  23. package/lib/factories/ProtobufFactory.js.map +1 -1
  24. package/lib/factories/internal/metadata/emend_metadata_atomics.js +12 -6
  25. package/lib/factories/internal/metadata/emend_metadata_atomics.js.map +1 -1
  26. package/lib/factories/internal/metadata/emplace_metadata_alias.js +1 -13
  27. package/lib/factories/internal/metadata/emplace_metadata_alias.js.map +1 -1
  28. package/lib/factories/internal/metadata/emplace_metadata_array_type.d.ts +5 -0
  29. package/lib/factories/internal/metadata/{emplace_metadata_array.js → emplace_metadata_array_type.js} +4 -4
  30. package/lib/factories/internal/metadata/emplace_metadata_array_type.js.map +1 -0
  31. package/lib/factories/internal/metadata/emplace_metadata_object.js +0 -1
  32. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  33. package/lib/factories/internal/metadata/emplace_metadata_tuple.d.ts +2 -2
  34. package/lib/factories/internal/metadata/iterate_metadata_array.js +7 -3
  35. package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
  36. package/lib/factories/internal/metadata/iterate_metadata_atomic.js +2 -1
  37. package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
  38. package/lib/factories/internal/metadata/iterate_metadata_collection.js +20 -12
  39. package/lib/factories/internal/metadata/iterate_metadata_collection.js.map +1 -1
  40. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.d.ts +2 -0
  41. package/lib/factories/internal/metadata/{iterate_metadata_tag.js → iterate_metadata_comment_tags.js} +7 -8
  42. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js.map +1 -0
  43. package/lib/factories/internal/metadata/iterate_metadata_intersection.js +140 -16
  44. package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
  45. package/lib/factories/internal/metadata/iterate_metadata_object.js +0 -7
  46. package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
  47. package/lib/factories/internal/metadata/iterate_metadata_sort.js +2 -2
  48. package/lib/factories/internal/metadata/iterate_metadata_sort.js.map +1 -1
  49. package/lib/factories/internal/metadata/iterate_metadata_tuple.js +6 -2
  50. package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
  51. package/lib/functional/$any.js +2 -1
  52. package/lib/functional/$any.js.map +1 -1
  53. package/lib/functional/$clone.d.ts +2 -0
  54. package/lib/functional/$clone.js +8 -0
  55. package/lib/functional/$clone.js.map +1 -0
  56. package/lib/functional/Namespace.js +0 -16
  57. package/lib/functional/Namespace.js.map +1 -1
  58. package/lib/module.d.ts +2 -39
  59. package/lib/module.js +3 -17
  60. package/lib/module.js.map +1 -1
  61. package/lib/programmers/AssertProgrammer.js +28 -10
  62. package/lib/programmers/AssertProgrammer.js.map +1 -1
  63. package/lib/programmers/CheckerProgrammer.js +90 -68
  64. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  65. package/lib/programmers/FeatureProgrammer.d.ts +2 -4
  66. package/lib/programmers/FeatureProgrammer.js +6 -6
  67. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  68. package/lib/programmers/IsProgrammer.d.ts +1 -1
  69. package/lib/programmers/IsProgrammer.js +32 -21
  70. package/lib/programmers/IsProgrammer.js.map +1 -1
  71. package/lib/programmers/RandomProgrammer.js +187 -156
  72. package/lib/programmers/RandomProgrammer.js.map +1 -1
  73. package/lib/programmers/ValidateProgrammer.js +28 -10
  74. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  75. package/lib/programmers/helpers/AtomicPredicator.js +2 -2
  76. package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
  77. package/lib/programmers/helpers/CloneJoiner.js +10 -2
  78. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  79. package/lib/programmers/helpers/ICheckEntry.d.ts +4 -3
  80. package/lib/programmers/helpers/ProtobufUtil.d.ts +6 -2
  81. package/lib/programmers/helpers/ProtobufUtil.js +175 -17
  82. package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
  83. package/lib/programmers/helpers/RandomJoiner.d.ts +3 -5
  84. package/lib/programmers/helpers/RandomJoiner.js +7 -10
  85. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  86. package/lib/programmers/helpers/RandomRanger.d.ts +5 -6
  87. package/lib/programmers/helpers/RandomRanger.js +13 -33
  88. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  89. package/lib/programmers/helpers/UnionExplorer.d.ts +7 -8
  90. package/lib/programmers/helpers/UnionExplorer.js +46 -35
  91. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  92. package/lib/programmers/internal/application_alias.js +0 -1
  93. package/lib/programmers/internal/application_alias.js.map +1 -1
  94. package/lib/programmers/internal/application_array.js +60 -20
  95. package/lib/programmers/internal/application_array.js.map +1 -1
  96. package/lib/programmers/internal/application_default_string.js +2 -2
  97. package/lib/programmers/internal/application_default_string.js.map +1 -1
  98. package/lib/programmers/internal/application_number.js +95 -69
  99. package/lib/programmers/internal/application_number.js.map +1 -1
  100. package/lib/programmers/internal/application_object.js +0 -3
  101. package/lib/programmers/internal/application_object.js.map +1 -1
  102. package/lib/programmers/internal/application_resolved.js +2 -2
  103. package/lib/programmers/internal/application_resolved.js.map +1 -1
  104. package/lib/programmers/internal/application_schema.js +39 -22
  105. package/lib/programmers/internal/application_schema.js.map +1 -1
  106. package/lib/programmers/internal/application_string.js +56 -22
  107. package/lib/programmers/internal/application_string.js.map +1 -1
  108. package/lib/programmers/internal/application_tuple.js +10 -9
  109. package/lib/programmers/internal/application_tuple.js.map +1 -1
  110. package/lib/programmers/internal/check_array_length.js +25 -25
  111. package/lib/programmers/internal/check_array_length.js.map +1 -1
  112. package/lib/programmers/internal/check_bigint.js +20 -109
  113. package/lib/programmers/internal/check_bigint.js.map +1 -1
  114. package/lib/programmers/internal/check_dynamic_properties.js +1 -1
  115. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  116. package/lib/programmers/internal/check_number.js +57 -147
  117. package/lib/programmers/internal/check_number.js.map +1 -1
  118. package/lib/programmers/internal/check_string.js +21 -33
  119. package/lib/programmers/internal/check_string.js.map +1 -1
  120. package/lib/programmers/internal/check_template.js +31 -49
  121. package/lib/programmers/internal/check_template.js.map +1 -1
  122. package/lib/programmers/internal/check_union_array_like.js +7 -6
  123. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  124. package/lib/programmers/internal/feature_object_entries.js +1 -1
  125. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  126. package/lib/programmers/internal/metadata_to_pattern.js +4 -4
  127. package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
  128. package/lib/programmers/internal/random_custom.js +2 -2
  129. package/lib/programmers/internal/random_custom.js.map +1 -1
  130. package/lib/programmers/internal/stringify_dynamic_properties.js +2 -1
  131. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  132. package/lib/programmers/internal/wrap_metadata_rest_tuple.js +9 -5
  133. package/lib/programmers/internal/wrap_metadata_rest_tuple.js.map +1 -1
  134. package/lib/programmers/json/JsonStringifyProgrammer.js +43 -32
  135. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  136. package/lib/programmers/misc/MiscCloneProgrammer.js +21 -17
  137. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  138. package/lib/programmers/{IsPruneProgrammer.d.ts → misc/MiscIsPruneProgrammer.d.ts} +2 -2
  139. package/lib/programmers/{IsPruneProgrammer.js → misc/MiscIsPruneProgrammer.js} +11 -11
  140. package/lib/programmers/misc/MiscIsPruneProgrammer.js.map +1 -0
  141. package/lib/programmers/misc/MiscLiteralsProgrammer.js +2 -2
  142. package/lib/programmers/misc/MiscLiteralsProgrammer.js.map +1 -1
  143. package/lib/programmers/misc/MiscPruneProgrammer.js +21 -17
  144. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  145. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +29 -49
  146. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  147. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +138 -65
  148. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  149. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +59 -85
  150. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  151. package/lib/schemas/json/IJsonSchema.d.ts +10 -38
  152. package/lib/schemas/metadata/IMetadata.d.ts +11 -4
  153. package/lib/schemas/metadata/IMetadataAlias.d.ts +0 -2
  154. package/lib/schemas/metadata/IMetadataArray.d.ts +4 -6
  155. package/lib/schemas/metadata/IMetadataArrayType.d.ts +8 -0
  156. package/lib/{CustomValidatorMap.js → schemas/metadata/IMetadataArrayType.js} +1 -1
  157. package/lib/schemas/metadata/IMetadataArrayType.js.map +1 -0
  158. package/lib/schemas/metadata/IMetadataAtomic.d.ts +5 -0
  159. package/lib/schemas/metadata/IMetadataAtomic.js +3 -0
  160. package/lib/schemas/metadata/IMetadataAtomic.js.map +1 -0
  161. package/lib/schemas/metadata/IMetadataCollection.d.ts +4 -4
  162. package/lib/schemas/metadata/IMetadataProperty.d.ts +0 -2
  163. package/lib/schemas/metadata/IMetadataTuple.d.ts +4 -6
  164. package/lib/schemas/metadata/IMetadataTupleType.d.ts +8 -0
  165. package/lib/schemas/metadata/IMetadataTupleType.js +3 -0
  166. package/lib/schemas/metadata/IMetadataTupleType.js.map +1 -0
  167. package/lib/schemas/metadata/IMetadataTypeTag.d.ts +8 -0
  168. package/lib/schemas/metadata/IMetadataTypeTag.js +3 -0
  169. package/lib/schemas/metadata/IMetadataTypeTag.js.map +1 -0
  170. package/lib/schemas/metadata/Metadata.d.ts +2 -2
  171. package/lib/schemas/metadata/Metadata.js +219 -159
  172. package/lib/schemas/metadata/Metadata.js.map +1 -1
  173. package/lib/schemas/metadata/MetadataAlias.d.ts +0 -2
  174. package/lib/schemas/metadata/MetadataAlias.js +0 -3
  175. package/lib/schemas/metadata/MetadataAlias.js.map +1 -1
  176. package/lib/schemas/metadata/MetadataArray.d.ts +8 -6
  177. package/lib/schemas/metadata/MetadataArray.js +48 -19
  178. package/lib/schemas/metadata/MetadataArray.js.map +1 -1
  179. package/lib/schemas/metadata/MetadataArrayType.d.ts +14 -0
  180. package/lib/schemas/metadata/MetadataArrayType.js +36 -0
  181. package/lib/schemas/metadata/MetadataArrayType.js.map +1 -0
  182. package/lib/schemas/metadata/MetadataAtomic.d.ts +9 -0
  183. package/lib/schemas/metadata/MetadataAtomic.js +59 -0
  184. package/lib/schemas/metadata/MetadataAtomic.js.map +1 -0
  185. package/lib/schemas/metadata/MetadataProperty.d.ts +0 -2
  186. package/lib/schemas/metadata/MetadataProperty.js +0 -3
  187. package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
  188. package/lib/schemas/metadata/MetadataTuple.d.ts +8 -8
  189. package/lib/schemas/metadata/MetadataTuple.js +4 -19
  190. package/lib/schemas/metadata/MetadataTuple.js.map +1 -1
  191. package/lib/schemas/metadata/MetadataTupleType.d.ts +13 -0
  192. package/lib/schemas/metadata/MetadataTupleType.js +40 -0
  193. package/lib/schemas/metadata/MetadataTupleType.js.map +1 -0
  194. package/lib/tags/ExclusiveMaximum.d.ts +10 -0
  195. package/lib/tags/ExclusiveMaximum.js +3 -0
  196. package/lib/tags/ExclusiveMaximum.js.map +1 -0
  197. package/lib/tags/ExclusiveMinimum.d.ts +10 -0
  198. package/lib/tags/ExclusiveMinimum.js +3 -0
  199. package/lib/tags/ExclusiveMinimum.js.map +1 -0
  200. package/lib/tags/Format.d.ts +8 -0
  201. package/lib/{schemas/metadata/ICommentTag.js → tags/Format.js} +1 -1
  202. package/lib/tags/Format.js.map +1 -0
  203. package/lib/tags/MaxItems.d.ts +8 -0
  204. package/lib/{schemas/metadata/IMetadataTag.js → tags/MaxItems.js} +1 -1
  205. package/lib/tags/MaxItems.js.map +1 -0
  206. package/lib/tags/MaxLength.d.ts +8 -0
  207. package/lib/tags/MaxLength.js +3 -0
  208. package/lib/tags/MaxLength.js.map +1 -0
  209. package/lib/tags/Maximum.d.ts +10 -0
  210. package/lib/tags/Maximum.js +3 -0
  211. package/lib/tags/Maximum.js.map +1 -0
  212. package/lib/tags/MinItems.d.ts +8 -0
  213. package/lib/tags/MinItems.js +3 -0
  214. package/lib/tags/MinItems.js.map +1 -0
  215. package/lib/tags/MinLength.d.ts +8 -0
  216. package/lib/tags/MinLength.js +3 -0
  217. package/lib/tags/MinLength.js.map +1 -0
  218. package/lib/tags/Minimum.d.ts +10 -0
  219. package/lib/tags/Minimum.js +3 -0
  220. package/lib/tags/Minimum.js.map +1 -0
  221. package/lib/tags/MultipleOf.d.ts +10 -0
  222. package/lib/tags/MultipleOf.js +3 -0
  223. package/lib/tags/MultipleOf.js.map +1 -0
  224. package/lib/tags/Pattern.d.ts +7 -0
  225. package/lib/tags/Pattern.js +3 -0
  226. package/lib/tags/Pattern.js.map +1 -0
  227. package/lib/tags/TagBase.d.ts +14 -0
  228. package/lib/tags/TagBase.js +3 -0
  229. package/lib/tags/TagBase.js.map +1 -0
  230. package/lib/tags/Type.d.ts +14 -0
  231. package/lib/tags/Type.js +3 -0
  232. package/lib/tags/Type.js.map +1 -0
  233. package/lib/tags/index.d.ts +13 -0
  234. package/lib/tags/index.js +30 -0
  235. package/lib/tags/index.js.map +1 -0
  236. package/lib/transformers/FileTransformer.d.ts +1 -1
  237. package/lib/transformers/FileTransformer.js +15 -2
  238. package/lib/transformers/FileTransformer.js.map +1 -1
  239. package/lib/transformers/IProject.d.ts +1 -0
  240. package/lib/transformers/features/json/JsonApplicationTransformer.js +4 -2
  241. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  242. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js +2 -2
  243. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js.map +1 -1
  244. package/lib/transformers/features/misc/MiscIsPruneTransformer.js +2 -2
  245. package/lib/transformers/features/misc/MiscIsPruneTransformer.js.map +1 -1
  246. package/lib/typings/ProtobufAtomic.d.ts +5 -0
  247. package/lib/typings/ProtobufAtomic.js +3 -0
  248. package/lib/typings/ProtobufAtomic.js.map +1 -0
  249. package/package.json +2 -2
  250. package/src/IRandomGenerator.ts +4 -3
  251. package/src/factories/ExpressionFactory.ts +46 -2
  252. package/src/factories/IdentifierFactory.ts +15 -0
  253. package/src/factories/LiteralFactory.ts +10 -3
  254. package/src/factories/MetadataCollection.ts +18 -13
  255. package/src/factories/MetadataCommentTagFactory.ts +583 -0
  256. package/src/factories/MetadataTypeTagFactory.ts +263 -0
  257. package/src/factories/NumericRangeFactory.ts +33 -0
  258. package/src/factories/ProtobufFactory.ts +34 -18
  259. package/src/factories/internal/metadata/emend_metadata_atomics.ts +12 -5
  260. package/src/factories/internal/metadata/emplace_metadata_alias.ts +0 -6
  261. package/src/factories/internal/metadata/{emplace_metadata_array.ts → emplace_metadata_array_type.ts} +3 -3
  262. package/src/factories/internal/metadata/emplace_metadata_object.ts +0 -1
  263. package/src/factories/internal/metadata/emplace_metadata_tuple.ts +2 -2
  264. package/src/factories/internal/metadata/iterate_metadata_array.ts +13 -5
  265. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +7 -4
  266. package/src/factories/internal/metadata/iterate_metadata_collection.ts +23 -16
  267. package/src/factories/internal/metadata/{iterate_metadata_tag.ts → iterate_metadata_comment_tags.ts} +4 -8
  268. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +113 -16
  269. package/src/factories/internal/metadata/iterate_metadata_object.ts +10 -10
  270. package/src/factories/internal/metadata/iterate_metadata_sort.ts +2 -2
  271. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +12 -4
  272. package/src/functional/$any.ts +3 -1
  273. package/src/functional/$clone.ts +4 -0
  274. package/src/functional/Namespace.ts +0 -16
  275. package/src/module.ts +2 -55
  276. package/src/programmers/AssertProgrammer.ts +57 -21
  277. package/src/programmers/CheckerProgrammer.ts +81 -123
  278. package/src/programmers/FeatureProgrammer.ts +9 -31
  279. package/src/programmers/IsProgrammer.ts +53 -42
  280. package/src/programmers/RandomProgrammer.ts +242 -239
  281. package/src/programmers/ValidateProgrammer.ts +60 -21
  282. package/src/programmers/helpers/AtomicPredicator.ts +2 -2
  283. package/src/programmers/helpers/CloneJoiner.ts +57 -20
  284. package/src/programmers/helpers/ICheckEntry.ts +4 -3
  285. package/src/programmers/helpers/ProtobufUtil.ts +113 -17
  286. package/src/programmers/helpers/RandomJoiner.ts +11 -33
  287. package/src/programmers/helpers/RandomRanger.ts +16 -51
  288. package/src/programmers/helpers/UnionExplorer.ts +46 -51
  289. package/src/programmers/internal/application_alias.ts +0 -1
  290. package/src/programmers/internal/application_array.ts +33 -10
  291. package/src/programmers/internal/application_default_string.ts +6 -2
  292. package/src/programmers/internal/application_number.ts +76 -70
  293. package/src/programmers/internal/application_object.ts +0 -3
  294. package/src/programmers/internal/application_resolved.ts +2 -2
  295. package/src/programmers/internal/application_schema.ts +38 -20
  296. package/src/programmers/internal/application_string.ts +33 -27
  297. package/src/programmers/internal/application_tuple.ts +12 -11
  298. package/src/programmers/internal/check_array_length.ts +34 -28
  299. package/src/programmers/internal/check_bigint.ts +26 -91
  300. package/src/programmers/internal/check_dynamic_properties.ts +1 -2
  301. package/src/programmers/internal/check_number.ts +83 -236
  302. package/src/programmers/internal/check_string.ts +37 -17
  303. package/src/programmers/internal/check_template.ts +17 -12
  304. package/src/programmers/internal/check_union_array_like.ts +4 -18
  305. package/src/programmers/internal/feature_object_entries.ts +12 -18
  306. package/src/programmers/internal/metadata_to_pattern.ts +4 -4
  307. package/src/programmers/internal/random_custom.ts +3 -3
  308. package/src/programmers/internal/stringify_dynamic_properties.ts +1 -1
  309. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +9 -5
  310. package/src/programmers/json/JsonStringifyProgrammer.ts +46 -41
  311. package/src/programmers/misc/MiscCloneProgrammer.ts +23 -27
  312. package/src/programmers/{IsPruneProgrammer.ts → misc/MiscIsPruneProgrammer.ts} +7 -7
  313. package/src/programmers/misc/MiscLiteralsProgrammer.ts +2 -2
  314. package/src/programmers/misc/MiscPruneProgrammer.ts +24 -24
  315. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +40 -74
  316. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +154 -99
  317. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +6 -36
  318. package/src/schemas/json/IJsonSchema.ts +11 -38
  319. package/src/schemas/metadata/IMetadata.ts +11 -5
  320. package/src/schemas/metadata/IMetadataAlias.ts +0 -2
  321. package/src/schemas/metadata/IMetadataArray.ts +4 -7
  322. package/src/schemas/metadata/IMetadataArrayType.ts +10 -0
  323. package/src/schemas/metadata/IMetadataAtomic.ts +6 -0
  324. package/src/schemas/metadata/IMetadataCollection.ts +4 -4
  325. package/src/schemas/metadata/IMetadataDictionary.ts +4 -4
  326. package/src/schemas/metadata/IMetadataProperty.ts +0 -2
  327. package/src/schemas/metadata/IMetadataTuple.ts +4 -7
  328. package/src/schemas/metadata/IMetadataTupleType.ts +10 -0
  329. package/src/schemas/metadata/IMetadataTypeTag.ts +8 -0
  330. package/src/schemas/metadata/Metadata.ts +121 -70
  331. package/src/schemas/metadata/MetadataAlias.ts +0 -5
  332. package/src/schemas/metadata/MetadataArray.ts +28 -34
  333. package/src/schemas/metadata/MetadataArrayType.ts +57 -0
  334. package/src/schemas/metadata/MetadataAtomic.ts +42 -0
  335. package/src/schemas/metadata/MetadataProperty.ts +0 -5
  336. package/src/schemas/metadata/MetadataTuple.ts +9 -35
  337. package/src/schemas/metadata/MetadataTupleType.ts +67 -0
  338. package/src/tags/ExclusiveMaximum.ts +13 -0
  339. package/src/tags/ExclusiveMinimum.ts +13 -0
  340. package/src/tags/Format.ts +30 -0
  341. package/src/tags/MaxItems.ts +9 -0
  342. package/src/tags/MaxLength.ts +9 -0
  343. package/src/tags/Maximum.ts +13 -0
  344. package/src/tags/MinItems.ts +9 -0
  345. package/src/tags/MinLength.ts +9 -0
  346. package/src/tags/Minimum.ts +13 -0
  347. package/src/tags/MultipleOf.ts +15 -0
  348. package/src/tags/Pattern.ts +8 -0
  349. package/src/tags/TagBase.ts +22 -0
  350. package/src/tags/Type.ts +27 -0
  351. package/src/tags/index.ts +13 -0
  352. package/src/transformers/FileTransformer.ts +6 -6
  353. package/src/transformers/IProject.ts +1 -0
  354. package/src/transformers/features/json/JsonApplicationTransformer.ts +3 -2
  355. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +2 -2
  356. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +2 -2
  357. package/src/typings/Atomic.ts +1 -0
  358. package/src/typings/ProtobufAtomic.ts +19 -0
  359. package/lib/CustomValidatorMap.d.ts +0 -110
  360. package/lib/CustomValidatorMap.js.map +0 -1
  361. package/lib/factories/MetadataTagFactory.d.ts +0 -6
  362. package/lib/factories/MetadataTagFactory.js +0 -310
  363. package/lib/factories/MetadataTagFactory.js.map +0 -1
  364. package/lib/factories/internal/metadata/emplace_metadata_array.d.ts +0 -5
  365. package/lib/factories/internal/metadata/emplace_metadata_array.js.map +0 -1
  366. package/lib/factories/internal/metadata/iterate_metadata_tag.d.ts +0 -2
  367. package/lib/factories/internal/metadata/iterate_metadata_tag.js.map +0 -1
  368. package/lib/functional/$is_custom.d.ts +0 -2
  369. package/lib/functional/$is_custom.js +0 -13
  370. package/lib/functional/$is_custom.js.map +0 -1
  371. package/lib/functional/$is_date.d.ts +0 -1
  372. package/lib/functional/$is_date.js +0 -7
  373. package/lib/functional/$is_date.js.map +0 -1
  374. package/lib/functional/$is_datetime.d.ts +0 -1
  375. package/lib/functional/$is_datetime.js +0 -8
  376. package/lib/functional/$is_datetime.js.map +0 -1
  377. package/lib/functional/$is_email.d.ts +0 -1
  378. package/lib/functional/$is_email.js +0 -7
  379. package/lib/functional/$is_email.js.map +0 -1
  380. package/lib/functional/$is_ipv4.d.ts +0 -1
  381. package/lib/functional/$is_ipv4.js +0 -7
  382. package/lib/functional/$is_ipv4.js.map +0 -1
  383. package/lib/functional/$is_ipv6.d.ts +0 -1
  384. package/lib/functional/$is_ipv6.js +0 -7
  385. package/lib/functional/$is_ipv6.js.map +0 -1
  386. package/lib/functional/$is_url.d.ts +0 -1
  387. package/lib/functional/$is_url.js +0 -7
  388. package/lib/functional/$is_url.js.map +0 -1
  389. package/lib/functional/$is_uuid.d.ts +0 -1
  390. package/lib/functional/$is_uuid.js +0 -7
  391. package/lib/functional/$is_uuid.js.map +0 -1
  392. package/lib/programmers/IsPruneProgrammer.js.map +0 -1
  393. package/lib/programmers/internal/check_array.js +0 -44
  394. package/lib/programmers/internal/check_array.js.map +0 -1
  395. package/lib/programmers/internal/check_custom.d.ts +0 -1
  396. package/lib/programmers/internal/check_custom.js +0 -30
  397. package/lib/programmers/internal/check_custom.js.map +0 -1
  398. package/lib/programmers/internal/check_string_tags.d.ts +0 -1
  399. package/lib/programmers/internal/check_string_tags.js +0 -89
  400. package/lib/programmers/internal/check_string_tags.js.map +0 -1
  401. package/lib/programmers/internal/get_comment_tags.d.ts +0 -1
  402. package/lib/programmers/internal/get_comment_tags.js +0 -25
  403. package/lib/programmers/internal/get_comment_tags.js.map +0 -1
  404. package/lib/schemas/metadata/ICommentTag.d.ts +0 -4
  405. package/lib/schemas/metadata/ICommentTag.js.map +0 -1
  406. package/lib/schemas/metadata/IMetadataTag.d.ts +0 -63
  407. package/lib/schemas/metadata/IMetadataTag.js.map +0 -1
  408. package/src/CustomValidatorMap.ts +0 -126
  409. package/src/factories/MetadataTagFactory.ts +0 -364
  410. package/src/functional/$is_custom.ts +0 -14
  411. package/src/functional/$is_date.ts +0 -3
  412. package/src/functional/$is_datetime.ts +0 -2
  413. package/src/functional/$is_email.ts +0 -4
  414. package/src/functional/$is_ipv4.ts +0 -4
  415. package/src/functional/$is_ipv6.ts +0 -4
  416. package/src/functional/$is_url.ts +0 -4
  417. package/src/functional/$is_uuid.ts +0 -4
  418. package/src/programmers/internal/check_array.ts +0 -30
  419. package/src/programmers/internal/check_custom.ts +0 -31
  420. package/src/programmers/internal/check_string_tags.ts +0 -67
  421. package/src/programmers/internal/get_comment_tags.ts +0 -23
  422. package/src/schemas/metadata/ICommentTag.ts +0 -4
  423. package/src/schemas/metadata/IMetadataTag.ts +0 -112
  424. /package/lib/{programmers/internal/check_array.d.ts → factories/MetadataCommentTagFactory.d.ts} +0 -0
@@ -53,16 +53,34 @@ var ValidateProgrammer;
53
53
  trace: true,
54
54
  numeric: OptionPredicator_1.OptionPredicator.numeric(project.options),
55
55
  equals: equals,
56
- atomist: function (explore) { return function (tuple) { return function (input) {
57
- return __spreadArray([
58
- tuple.expression
59
- ], __read(tuple.tags.map(function (tag) {
60
- return typescript_1.default.factory.createLogicalOr(tag.expression, create_report_call(explore.from === "top"
61
- ? typescript_1.default.factory.createTrue()
62
- : typescript_1.default.factory.createIdentifier("_exceptionable"))(typescript_1.default.factory.createIdentifier(explore.postfix
63
- ? "_path + ".concat(explore.postfix)
64
- : "_path"), tag.expected, input));
65
- })), false).reduce(function (x, y) { return typescript_1.default.factory.createLogicalAnd(x, y); });
56
+ atomist: function (explore) { return function (entry) { return function (input) {
57
+ return __spreadArray(__spreadArray([], __read((entry.expression ? [entry.expression] : [])), false), __read((entry.conditions.length === 0
58
+ ? []
59
+ : entry.conditions.length === 1
60
+ ? entry.conditions[0].map(function (cond) {
61
+ return typescript_1.default.factory.createLogicalOr(cond.expression, create_report_call(explore.from === "top"
62
+ ? typescript_1.default.factory.createTrue()
63
+ : typescript_1.default.factory.createIdentifier("_exceptionable"))(typescript_1.default.factory.createIdentifier(explore.postfix
64
+ ? "_path + ".concat(explore.postfix)
65
+ : "_path"), cond.expected, input));
66
+ })
67
+ : [
68
+ typescript_1.default.factory.createLogicalOr(entry.conditions
69
+ .map(function (set) {
70
+ return set
71
+ .map(function (s) { return s.expression; })
72
+ .reduce(function (a, b) {
73
+ return typescript_1.default.factory.createLogicalAnd(a, b);
74
+ });
75
+ })
76
+ .reduce(function (a, b) {
77
+ return typescript_1.default.factory.createLogicalOr(a, b);
78
+ }), create_report_call(explore.from === "top"
79
+ ? typescript_1.default.factory.createTrue()
80
+ : typescript_1.default.factory.createIdentifier("_exceptionable"))(typescript_1.default.factory.createIdentifier(explore.postfix
81
+ ? "_path + ".concat(explore.postfix)
82
+ : "_path"), entry.expected, input)),
83
+ ])), false).reduce(function (x, y) { return typescript_1.default.factory.createLogicalAnd(x, y); });
66
84
  }; }; },
67
85
  combiner: combine(equals)(importer),
68
86
  joiner: joiner(equals)(importer),
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ValidateProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateProgrammer.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ var AtomicPredicator;
6
6
  (function (AtomicPredicator) {
7
7
  AtomicPredicator.constant = function (meta) {
8
8
  return function (name) {
9
- return !ArrayUtil_1.ArrayUtil.has(meta.atomics, function (atomic) { return atomic === name; }) &&
9
+ return !ArrayUtil_1.ArrayUtil.has(meta.atomics, function (a) { return a.type === name; }) &&
10
10
  !ArrayUtil_1.ArrayUtil.has(meta.natives, function (native) { return native.toLowerCase() === name; });
11
11
  };
12
12
  };
@@ -17,7 +17,7 @@ var AtomicPredicator;
17
17
  };
18
18
  AtomicPredicator.native = function (name) { return LIKE.has(name.toLowerCase()); };
19
19
  AtomicPredicator.template = function (meta) {
20
- return !ArrayUtil_1.ArrayUtil.has(meta.atomics, function (type) { return type === "string"; });
20
+ return !ArrayUtil_1.ArrayUtil.has(meta.atomics, function (a) { return a.type === "string"; });
21
21
  };
22
22
  })(AtomicPredicator || (exports.AtomicPredicator = AtomicPredicator = {}));
23
23
  var LIKE = new Set(["boolean", "number", "string"]);
@@ -1 +1 @@
1
- {"version":3,"file":"AtomicPredicator.js","sourceRoot":"","sources":["../../../src/programmers/helpers/AtomicPredicator.ts"],"names":[],"mappings":";;;AAIA,mDAAkD;AAElD,IAAiB,gBAAgB,CAsBhC;AAtBD,WAAiB,gBAAgB;IAChB,yBAAQ,GACjB,UAAC,IAAc;QACf,OAAA,UAAC,IAAoB;YACjB,OAAA,CAAC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,MAAM,IAAK,OAAA,MAAM,KAAK,IAAI,EAAf,CAAe,CAAC;gBACzD,CAAC,qBAAS,CAAC,GAAG,CACV,IAAI,CAAC,OAAO,EACZ,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,EAA7B,CAA6B,CAC5C;QAJD,CAIC;IALL,CAKK,CAAC;IAEG,uBAAM,GACf,UAAC,IAAc;QACf,OAAA,UAAC,IAAoB;YACjB,OAAA,CAAC,qBAAS,CAAC,GAAG,CACV,IAAI,CAAC,OAAO,EACZ,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,EAA7B,CAA6B,CAC5C;QAHD,CAGC;IAJL,CAIK,CAAC;IAEG,uBAAM,GAAG,UAAC,IAAY,IAAK,OAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAA5B,CAA4B,CAAC;IAExD,yBAAQ,GAAG,UAAC,IAAc;QACnC,OAAA,CAAC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,QAAQ,EAAjB,CAAiB,CAAC;IAAzD,CAAyD,CAAC;AAClE,CAAC,EAtBgB,gBAAgB,gCAAhB,gBAAgB,QAsBhC;AAED,IAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"AtomicPredicator.js","sourceRoot":"","sources":["../../../src/programmers/helpers/AtomicPredicator.ts"],"names":[],"mappings":";;;AAIA,mDAAkD;AAElD,IAAiB,gBAAgB,CAsBhC;AAtBD,WAAiB,gBAAgB;IAChB,yBAAQ,GACjB,UAAC,IAAc;QACf,OAAA,UAAC,IAAoB;YACjB,OAAA,CAAC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,IAAI,EAAf,CAAe,CAAC;gBACpD,CAAC,qBAAS,CAAC,GAAG,CACV,IAAI,CAAC,OAAO,EACZ,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,EAA7B,CAA6B,CAC5C;QAJD,CAIC;IALL,CAKK,CAAC;IAEG,uBAAM,GACf,UAAC,IAAc;QACf,OAAA,UAAC,IAAoB;YACjB,OAAA,CAAC,qBAAS,CAAC,GAAG,CACV,IAAI,CAAC,OAAO,EACZ,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,EAA7B,CAA6B,CAC5C;QAHD,CAGC;IAJL,CAIK,CAAC;IAEG,uBAAM,GAAG,UAAC,IAAY,IAAK,OAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAA5B,CAA4B,CAAC;IAExD,yBAAQ,GAAG,UAAC,IAAc;QACnC,OAAA,CAAC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAnB,CAAmB,CAAC;IAAxD,CAAwD,CAAC;AACjE,CAAC,EAtBgB,gBAAgB,gCAAhB,gBAAgB,QAsBhC;AAED,IAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC"}
@@ -30,6 +30,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
30
30
  Object.defineProperty(exports, "__esModule", { value: true });
31
31
  exports.CloneJoiner = void 0;
32
32
  var typescript_1 = __importDefault(require("typescript"));
33
+ var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
33
34
  var StatementFactory_1 = require("../../factories/StatementFactory");
34
35
  var TypeFactory_1 = require("../../factories/TypeFactory");
35
36
  var Escaper_1 = require("../../utils/Escaper");
@@ -51,12 +52,19 @@ var CloneJoiner;
51
52
  return literal;
52
53
  var key = typescript_1.default.factory.createIdentifier("key");
53
54
  var output = typescript_1.default.factory.createIdentifier("output");
54
- var statements = dynamic.map(function (entry) {
55
+ var statements = [];
56
+ if (regular.length !== 0)
57
+ statements.push(typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createArrayLiteralExpression(regular.map(function (r) {
58
+ return typescript_1.default.factory.createStringLiteral(r.key.getSoleLiteral());
59
+ })))("some"), undefined, [
60
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("regular")], undefined, undefined, typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createIdentifier("regular"), typescript_1.default.factory.createIdentifier("key"))),
61
+ ]), typescript_1.default.factory.createContinueStatement()));
62
+ statements.push.apply(statements, __spreadArray([], __read(dynamic.map(function (entry) {
55
63
  return typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("RegExp(/".concat((0, metadata_to_pattern_1.metadata_to_pattern)(true)(entry.key), "/).test")), undefined, [key]), typescript_1.default.factory.createBlock([
56
64
  typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(output, key), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), entry.expression)),
57
65
  typescript_1.default.factory.createContinueStatement(),
58
66
  ]));
59
- });
67
+ })), false));
60
68
  return typescript_1.default.factory.createBlock([
61
69
  StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createAsExpression(literal, TypeFactory_1.TypeFactory.keyword("any"))),
62
70
  typescript_1.default.factory.createForOfStatement(undefined, StatementFactory_1.StatementFactory.entry("key")("value"), typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.entries"), undefined, [input]), typescript_1.default.factory.createBlock(statements)),
@@ -1 +1 @@
1
- {"version":3,"file":"CloneJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/CloneJoiner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,qEAAoE;AACpE,2DAA0D;AAE1D,+CAA8C;AAE9C,uEAAsE;AAGtE,IAAiB,WAAW,CAgG3B;AAhGD,WAAiB,WAAW;IACX,kBAAM,GAAG,UAClB,KAAoB,EACpB,OAA0C;QAE1C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEnE,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAArB,CAAqB,CAAC,CAAC;QAC7D,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAAtB,CAAsB,CAAC,CAAC;QAC9D,IAAM,OAAO,GAAG,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpD,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK;YACd,IAAM,GAAG,GAAW,KAAK,CAAC,GAAG,CAAC,cAAc,EAAG,CAAC;YAChD,OAAO,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACtC,iBAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;gBACjB,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,EACzC,KAAK,CAAC,UAAU,CACnB,CAAC;QACN,CAAC,CAAC,EACF,IAAI,CACP,CAAC;QACF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC;QAEzC,IAAM,GAAG,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAM,MAAM,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAErD,IAAM,UAAU,GAAmB,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK;YACjD,OAAA,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACvB,kBAAW,IAAA,yCAAmB,EAAC,IAAI,CAAC,CAChC,KAAK,CAAC,GAAG,CACZ,YAAS,CACb,EACD,SAAS,EACT,CAAC,GAAG,CAAC,CACR,EACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC,MAAM,EACN,GAAG,CACN,EACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EACjD,KAAK,CAAC,UAAU,CACnB,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,EAAE;aACvC,CAAC,CACL;QAvBD,CAuBC,CACJ,CAAC;QAEF,OAAO,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;YAC1B,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ;YACD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,SAAS,EACT,mCAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EACtC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,SAAS,EACT,CAAC,KAAK,CAAC,CACV,EACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CACrC;YACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC;SAC3C,CAAC,CAAC;IACP,CAAC,CAAC;IAEW,iBAAK,GAAG,UACjB,QAAyB,EACzB,IAA0B;QAE1B,OAAO,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAChC,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CACnC,IAAI,KAAK,IAAI;YACT,CAAC,CAAC,QAAQ;YACV,CAAC,wCAAK,QAAQ,YAAE,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAC,EACzD,IAAI,CACP,EACD,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CAAC;IACN,CAAC,CAAC;IAEW,iBAAK,GAAG,UAAC,KAAoB,EAAE,KAAoB;QAC5D,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,8BAA8B,CAAC,KAAK,EAAE,KAAK,CAAC,EACvD,SAAS,EACT,CAAC,KAAK,CAAC,CACV;IAJD,CAIC,CAAC;AACV,CAAC,EAhGgB,WAAW,2BAAX,WAAW,QAgG3B"}
1
+ {"version":3,"file":"CloneJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/CloneJoiner.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import ts from "typescript";
2
2
  export interface ICheckEntry {
3
- expression: ts.Expression;
4
- tags: ICheckEntry.ITag[];
3
+ expected: string;
4
+ expression: ts.Expression | null;
5
+ conditions: ICheckEntry.ICondition[][];
5
6
  }
6
7
  export declare namespace ICheckEntry {
7
- interface ITag {
8
+ interface ICondition {
8
9
  expected: string;
9
10
  expression: ts.Expression;
10
11
  }
@@ -1,7 +1,11 @@
1
1
  import { Metadata } from "../../schemas/metadata/Metadata";
2
2
  import { MetadataObject } from "../../schemas/metadata/MetadataObject";
3
- import { Atomic } from "../../typings/Atomic";
3
+ import { ProtobufAtomic } from "../../typings/ProtobufAtomic";
4
4
  export declare namespace ProtobufUtil {
5
- const getAtomics: (meta: Metadata) => Atomic.Literal[];
6
5
  const isStaticObject: (obj: MetadataObject) => boolean;
6
+ const size: (meta: Metadata) => number;
7
+ const isUnion: (meta: Metadata) => boolean;
8
+ const getAtomics: (meta: Metadata) => ProtobufAtomic[];
9
+ const getNumbers: (meta: Metadata) => ProtobufAtomic.Numeric[];
10
+ const getBigints: (meta: Metadata) => ProtobufAtomic.BigNumeric[];
7
11
  }
@@ -39,13 +39,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.ProtobufUtil = void 0;
40
40
  var ProtobufUtil;
41
41
  (function (ProtobufUtil) {
42
+ ProtobufUtil.isStaticObject = function (obj) {
43
+ return obj.properties.length >= 1 &&
44
+ obj.properties.every(function (p) { return p.key.isSoleLiteral(); });
45
+ };
46
+ ProtobufUtil.size = function (meta) {
47
+ return ProtobufUtil.getAtomics(meta).length +
48
+ meta.arrays.length +
49
+ meta.tuples.length +
50
+ meta.natives.length +
51
+ meta.objects.length +
52
+ meta.maps.length;
53
+ };
54
+ ProtobufUtil.isUnion = function (meta) { return meta.arrays.length > 1; };
42
55
  ProtobufUtil.getAtomics = function (meta) {
43
56
  var e_1, _a, e_2, _b;
44
57
  var set = new Set();
58
+ if (meta.templates.length)
59
+ set.add("string");
45
60
  try {
46
- for (var _c = __values(meta.atomics), _d = _c.next(); !_d.done; _d = _c.next()) {
47
- var atomic = _d.value;
48
- set.add(atomic);
61
+ for (var _c = __values(meta.constants), _d = _c.next(); !_d.done; _d = _c.next()) {
62
+ var c = _d.value;
63
+ if (c.type === "boolean")
64
+ set.add("bool");
65
+ else if (c.type === "bigint")
66
+ set.add("uint64");
67
+ else if (c.type === "number")
68
+ set.add(deduce_numeric_type(c.values));
69
+ else if (c.type === "string")
70
+ set.add("string");
49
71
  }
50
72
  }
51
73
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
@@ -56,9 +78,16 @@ var ProtobufUtil;
56
78
  finally { if (e_1) throw e_1.error; }
57
79
  }
58
80
  try {
59
- for (var _e = __values(meta.constants), _f = _e.next(); !_f.done; _f = _e.next()) {
60
- var constant = _f.value;
61
- set.add(constant.type);
81
+ for (var _e = __values(meta.atomics), _f = _e.next(); !_f.done; _f = _e.next()) {
82
+ var atomic = _f.value;
83
+ if (atomic.type === "boolean")
84
+ set.add("bool");
85
+ else if (atomic.type === "bigint")
86
+ decode_bigint(atomic.tags).forEach(function (t) { return set.add(t); });
87
+ else if (atomic.type === "number")
88
+ decode_number(atomic.tags).forEach(function (t) { return set.add(t); });
89
+ else if (atomic.type === "string")
90
+ set.add("string");
62
91
  }
63
92
  }
64
93
  catch (e_2_1) { e_2 = { error: e_2_1 }; }
@@ -68,19 +97,148 @@ var ProtobufUtil;
68
97
  }
69
98
  finally { if (e_2) throw e_2.error; }
70
99
  }
71
- if (meta.templates.length)
72
- set.add("string");
73
- return __spreadArray([], __read(set), false).sort(function (x, y) { return ATOMIC_ORDER.get(x) - ATOMIC_ORDER.get(y); });
100
+ return __spreadArray([], __read(set), false).sort(compare);
74
101
  };
75
- ProtobufUtil.isStaticObject = function (obj) {
76
- return obj.properties.length >= 1 &&
77
- obj.properties.every(function (p) { return p.key.isSoleLiteral(); });
102
+ ProtobufUtil.getNumbers = function (meta) {
103
+ var e_3, _a, e_4, _b;
104
+ var set = new Set();
105
+ try {
106
+ for (var _c = __values(meta.constants), _d = _c.next(); !_d.done; _d = _c.next()) {
107
+ var c = _d.value;
108
+ if (c.type === "number")
109
+ set.add(deduce_numeric_type(c.values));
110
+ }
111
+ }
112
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
113
+ finally {
114
+ try {
115
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
116
+ }
117
+ finally { if (e_3) throw e_3.error; }
118
+ }
119
+ try {
120
+ for (var _e = __values(meta.atomics), _f = _e.next(); !_f.done; _f = _e.next()) {
121
+ var atomic = _f.value;
122
+ if (atomic.type === "number")
123
+ decode_number(atomic.tags).forEach(function (t) { return set.add(t); });
124
+ }
125
+ }
126
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
127
+ finally {
128
+ try {
129
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
130
+ }
131
+ finally { if (e_4) throw e_4.error; }
132
+ }
133
+ return __spreadArray([], __read(set), false).sort(compare);
134
+ };
135
+ ProtobufUtil.getBigints = function (meta) {
136
+ var e_5, _a, e_6, _b;
137
+ var set = new Set();
138
+ try {
139
+ for (var _c = __values(meta.constants), _d = _c.next(); !_d.done; _d = _c.next()) {
140
+ var c = _d.value;
141
+ if (c.type === "bigint")
142
+ set.add("uint64");
143
+ }
144
+ }
145
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
146
+ finally {
147
+ try {
148
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
149
+ }
150
+ finally { if (e_5) throw e_5.error; }
151
+ }
152
+ try {
153
+ for (var _e = __values(meta.atomics), _f = _e.next(); !_f.done; _f = _e.next()) {
154
+ var atomic = _f.value;
155
+ if (atomic.type === "bigint")
156
+ decode_bigint(atomic.tags).forEach(function (t) { return set.add(t); });
157
+ }
158
+ }
159
+ catch (e_6_1) { e_6 = { error: e_6_1 }; }
160
+ finally {
161
+ try {
162
+ if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
163
+ }
164
+ finally { if (e_6) throw e_6.error; }
165
+ }
166
+ return __spreadArray([], __read(set), false).sort(compare);
167
+ };
168
+ var compare = function (x, y) {
169
+ return ATOMIC_ORDER.get(x) - ATOMIC_ORDER.get(y);
78
170
  };
79
171
  })(ProtobufUtil || (exports.ProtobufUtil = ProtobufUtil = {}));
80
172
  var ATOMIC_ORDER = new Map([
81
- ["boolean", 0],
82
- ["bigint", 1],
83
- ["number", 2],
84
- ["string", 3],
85
- ]);
173
+ "bool",
174
+ "int32",
175
+ "uint32",
176
+ "int64",
177
+ "uint64",
178
+ "float",
179
+ "double",
180
+ "string",
181
+ ].map(function (str, i) { return [str, i]; }));
182
+ var deduce_numeric_type = function (values) {
183
+ return values.every(function (v) { return Math.floor(v) === v; })
184
+ ? values.every(function (v) { return -2147483648 <= v && v <= 2147483647; })
185
+ ? "int32"
186
+ : "int64"
187
+ : "double";
188
+ };
189
+ var decode_bigint = function (typeTags) {
190
+ var e_7, _a;
191
+ var _b;
192
+ if (typeTags.length === 0)
193
+ return ["int64"];
194
+ var types = new Set();
195
+ try {
196
+ for (var typeTags_1 = __values(typeTags), typeTags_1_1 = typeTags_1.next(); !typeTags_1_1.done; typeTags_1_1 = typeTags_1.next()) {
197
+ var row = typeTags_1_1.value;
198
+ var value = (_b = row.find(function (tag) {
199
+ return tag.kind === "type" &&
200
+ (tag.value === "int64" || tag.value === "uint64");
201
+ })) === null || _b === void 0 ? void 0 : _b.value;
202
+ types.add(value !== null && value !== void 0 ? value : "int64");
203
+ }
204
+ }
205
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
206
+ finally {
207
+ try {
208
+ if (typeTags_1_1 && !typeTags_1_1.done && (_a = typeTags_1.return)) _a.call(typeTags_1);
209
+ }
210
+ finally { if (e_7) throw e_7.error; }
211
+ }
212
+ return __spreadArray([], __read(types), false);
213
+ };
214
+ var decode_number = function (typeTags) {
215
+ var e_8, _a;
216
+ var _b;
217
+ if (typeTags.length === 0)
218
+ return ["double"];
219
+ var types = new Set();
220
+ try {
221
+ for (var typeTags_2 = __values(typeTags), typeTags_2_1 = typeTags_2.next(); !typeTags_2_1.done; typeTags_2_1 = typeTags_2.next()) {
222
+ var row = typeTags_2_1.value;
223
+ var value = (_b = row.find(function (tag) {
224
+ return tag.kind === "type" &&
225
+ (tag.value === "int32" ||
226
+ tag.value === "uint32" ||
227
+ tag.value === "int64" ||
228
+ tag.value === "uint64" ||
229
+ tag.value === "float" ||
230
+ tag.value === "double");
231
+ })) === null || _b === void 0 ? void 0 : _b.value;
232
+ types.add(value !== null && value !== void 0 ? value : "double");
233
+ }
234
+ }
235
+ catch (e_8_1) { e_8 = { error: e_8_1 }; }
236
+ finally {
237
+ try {
238
+ if (typeTags_2_1 && !typeTags_2_1.done && (_a = typeTags_2.return)) _a.call(typeTags_2);
239
+ }
240
+ finally { if (e_8) throw e_8.error; }
241
+ }
242
+ return __spreadArray([], __read(types), false);
243
+ };
86
244
  //# sourceMappingURL=ProtobufUtil.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProtobufUtil.js","sourceRoot":"","sources":["../../../src/programmers/helpers/ProtobufUtil.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAiB,YAAY,CAgB5B;AAhBD,WAAiB,YAAY;IACZ,uBAAU,GAAG,UAAC,IAAc;;QACrC,IAAM,GAAG,GAAwB,IAAI,GAAG,EAAE,CAAC;;YAE3C,KAAqB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;gBAA5B,IAAM,MAAM,WAAA;gBAAkB,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;aAAA;;;;;;;;;;YACnD,KAAuB,IAAA,KAAA,SAAA,IAAI,CAAC,SAAS,CAAA,gBAAA;gBAAhC,IAAM,QAAQ,WAAA;gBAAoB,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAAA;;;;;;;;;QAC9D,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM;YAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE7C,OAAO,yBAAI,GAAG,UAAE,IAAI,CAChB,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,YAAY,CAAC,GAAG,CAAC,CAAC,CAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAE,EAA3C,CAA2C,CACxD,CAAC;IACN,CAAC,CAAC;IAEW,2BAAc,GAAG,UAAC,GAAmB;QAC9C,OAAA,GAAG,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC;YAC1B,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAArB,CAAqB,CAAC;IADlD,CACkD,CAAC;AAC3D,CAAC,EAhBgB,YAAY,4BAAZ,YAAY,QAgB5B;AAED,IAAM,YAAY,GAAG,IAAI,GAAG,CAAyB;IACjD,CAAC,SAAS,EAAE,CAAC,CAAC;IACd,CAAC,QAAQ,EAAE,CAAC,CAAC;IACb,CAAC,QAAQ,EAAE,CAAC,CAAC;IACb,CAAC,QAAQ,EAAE,CAAC,CAAC;CAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"ProtobufUtil.js","sourceRoot":"","sources":["../../../src/programmers/helpers/ProtobufUtil.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,10 @@
1
1
  import ts from "typescript";
2
- import { ICommentTag } from "../../schemas/metadata/ICommentTag";
3
- import { IMetadataTag } from "../../schemas/metadata/IMetadataTag";
4
2
  import { Metadata } from "../../schemas/metadata/Metadata";
5
3
  import { MetadataObject } from "../../schemas/metadata/MetadataObject";
6
4
  export declare namespace RandomJoiner {
7
- type Decoder = (meta: Metadata, tags: IMetadataTag[], comments: ICommentTag[]) => ts.Expression;
8
- const array: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (explore: IExplore) => (length: ts.Expression | undefined) => (item: Metadata, tags: IMetadataTag[], comments: ICommentTag[]) => ts.Expression;
9
- const tuple: (decoder: Decoder) => (items: Metadata[], tags: IMetadataTag[], comments: ICommentTag[]) => ts.ArrayLiteralExpression;
5
+ type Decoder = (meta: Metadata) => ts.Expression;
6
+ const array: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (explore: IExplore) => (length: ts.Expression | undefined) => (item: Metadata) => ts.Expression;
7
+ const tuple: (decoder: Decoder) => (elements: Metadata[]) => ts.ArrayLiteralExpression;
10
8
  const object: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (obj: MetadataObject) => ts.ConciseBody;
11
9
  }
12
10
  interface IExplore {
@@ -33,16 +33,15 @@ var typescript_1 = __importDefault(require("typescript"));
33
33
  var StatementFactory_1 = require("../../factories/StatementFactory");
34
34
  var TypeFactory_1 = require("../../factories/TypeFactory");
35
35
  var Escaper_1 = require("../../utils/Escaper");
36
- var get_comment_tags_1 = require("../internal/get_comment_tags");
37
36
  var RandomJoiner;
38
37
  (function (RandomJoiner) {
39
38
  RandomJoiner.array = function (coalesce) {
40
39
  return function (decoder) {
41
40
  return function (explore) {
42
41
  return function (length) {
43
- return function (item, tags, comments) {
42
+ return function (item) {
44
43
  var generator = typescript_1.default.factory.createCallExpression(coalesce("array"), undefined, __spreadArray([
45
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decoder(item, tags, comments))
44
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decoder(item))
46
45
  ], __read((length ? [length] : [])), false));
47
46
  if (explore.recursive === false)
48
47
  return generator;
@@ -52,11 +51,9 @@ var RandomJoiner;
52
51
  };
53
52
  };
54
53
  };
55
- RandomJoiner.tuple = function (decoder) {
56
- return function (items, tags, comments) {
57
- return typescript_1.default.factory.createArrayLiteralExpression(items.map(function (i) { var _a; return decoder((_a = i.rest) !== null && _a !== void 0 ? _a : i, tags, comments); }), true);
58
- };
59
- };
54
+ RandomJoiner.tuple = function (decoder) { return function (elements) {
55
+ return typescript_1.default.factory.createArrayLiteralExpression(elements.map(function (elem) { var _a; return decoder((_a = elem.rest) !== null && _a !== void 0 ? _a : elem); }), true);
56
+ }; };
60
57
  RandomJoiner.object = function (coalesce) {
61
58
  return function (decoder) {
62
59
  return function (obj) {
@@ -68,7 +65,7 @@ var RandomJoiner;
68
65
  var str = p.key.getSoleLiteral();
69
66
  return typescript_1.default.factory.createPropertyAssignment(Escaper_1.Escaper.variable(str)
70
67
  ? str
71
- : typescript_1.default.factory.createStringLiteral(str), decoder(p.value, p.tags, (0, get_comment_tags_1.get_comment_tags)(false)(p.jsDocTags)));
68
+ : typescript_1.default.factory.createStringLiteral(str), decoder(p.value));
72
69
  }), true);
73
70
  if (dynamic.length === 0)
74
71
  return literal;
@@ -91,7 +88,7 @@ var RandomJoiner;
91
88
  return function (decoder) {
92
89
  return function (p) {
93
90
  return typescript_1.default.factory.createCallExpression(coalesce("array"), undefined, [
94
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(typescript_1.default.factory.createIdentifier("output"), decoder(p.key, [], [])), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), decoder(p.value, p.tags, (0, get_comment_tags_1.get_comment_tags)(false)(p.jsDocTags)))),
91
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(typescript_1.default.factory.createIdentifier("output"), decoder(p.key)), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), decoder(p.value))),
95
92
  typescript_1.default.factory.createCallExpression(coalesce("integer"), undefined, [
96
93
  typescript_1.default.factory.createNumericLiteral(0),
97
94
  typescript_1.default.factory.createNumericLiteral(3),
@@ -1 +1 @@
1
- {"version":3,"file":"RandomJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomJoiner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomJoiner.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,19 @@
1
1
  import ts from "typescript";
2
- import { IMetadataTag } from "../../schemas/metadata/IMetadataTag";
2
+ import { IMetadataTypeTag } from "../../schemas/metadata/IMetadataTypeTag";
3
3
  export declare namespace RandomRanger {
4
4
  interface IDefaults {
5
5
  minimum: number;
6
6
  maximum: number;
7
7
  gap: number;
8
8
  }
9
- const length: (coalesce: (method: string) => ts.Expression) => (defs: IDefaults) => (acc: length.IAccessors) => (tags: IMetadataTag[]) => ts.Expression | undefined;
9
+ const length: (coalesce: (method: string) => ts.Expression) => (defs: IDefaults) => (acc: length.IAccessors) => (tags: IMetadataTypeTag[]) => ts.Expression | undefined;
10
10
  namespace length {
11
11
  interface IAccessors {
12
- minimum: IMetadataTag["kind"];
13
- maximum: IMetadataTag["kind"];
14
- fixed: IMetadataTag["kind"];
12
+ minimum: string;
13
+ maximum: string;
15
14
  }
16
15
  }
17
- const number: (config: number.IConfig) => (defs: IDefaults) => (tags: IMetadataTag[]) => ts.Expression;
16
+ const number: (config: number.IConfig) => (defs: IDefaults) => (tags: IMetadataTypeTag[]) => ts.Expression;
18
17
  namespace number {
19
18
  interface IConfig {
20
19
  setter: (args: number[]) => ts.Expression;