typia 5.0.0-dev.20230824 → 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 (292) hide show
  1. package/README.md +1 -2
  2. package/lib/IRandomGenerator.d.ts +4 -3
  3. package/lib/factories/ExpressionFactory.d.ts +1 -1
  4. package/lib/factories/ExpressionFactory.js +1 -1
  5. package/lib/factories/ExpressionFactory.js.map +1 -1
  6. package/lib/factories/LiteralFactory.js +6 -2
  7. package/lib/factories/LiteralFactory.js.map +1 -1
  8. package/lib/factories/MetadataCollection.js +0 -1
  9. package/lib/factories/MetadataCollection.js.map +1 -1
  10. package/lib/factories/MetadataCommentTagFactory.js +532 -0
  11. package/lib/factories/MetadataCommentTagFactory.js.map +1 -0
  12. package/lib/factories/MetadataTypeTagFactory.d.ts +6 -0
  13. package/lib/factories/MetadataTypeTagFactory.js +207 -0
  14. package/lib/factories/MetadataTypeTagFactory.js.map +1 -0
  15. package/lib/factories/NumericRangeFactory.d.ts +6 -0
  16. package/lib/factories/NumericRangeFactory.js +34 -0
  17. package/lib/factories/NumericRangeFactory.js.map +1 -0
  18. package/lib/factories/ProtobufFactory.js +41 -10
  19. package/lib/factories/ProtobufFactory.js.map +1 -1
  20. package/lib/factories/internal/metadata/emend_metadata_atomics.js +7 -1
  21. package/lib/factories/internal/metadata/emend_metadata_atomics.js.map +1 -1
  22. package/lib/factories/internal/metadata/emplace_metadata_alias.js +1 -13
  23. package/lib/factories/internal/metadata/emplace_metadata_alias.js.map +1 -1
  24. package/lib/factories/internal/metadata/emplace_metadata_object.js +0 -1
  25. package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
  26. package/lib/factories/internal/metadata/iterate_metadata_atomic.js +2 -1
  27. package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
  28. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js +3 -4
  29. package/lib/factories/internal/metadata/iterate_metadata_comment_tags.js.map +1 -1
  30. package/lib/factories/internal/metadata/iterate_metadata_intersection.js +8 -6
  31. package/lib/factories/internal/metadata/iterate_metadata_intersection.js.map +1 -1
  32. package/lib/functional/Namespace.js +0 -16
  33. package/lib/functional/Namespace.js.map +1 -1
  34. package/lib/programmers/AssertProgrammer.js +28 -8
  35. package/lib/programmers/AssertProgrammer.js.map +1 -1
  36. package/lib/programmers/CheckerProgrammer.js +65 -52
  37. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  38. package/lib/programmers/FeatureProgrammer.d.ts +3 -5
  39. package/lib/programmers/FeatureProgrammer.js +6 -6
  40. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  41. package/lib/programmers/IsProgrammer.d.ts +1 -1
  42. package/lib/programmers/IsProgrammer.js +32 -19
  43. package/lib/programmers/IsProgrammer.js.map +1 -1
  44. package/lib/programmers/RandomProgrammer.js +155 -135
  45. package/lib/programmers/RandomProgrammer.js.map +1 -1
  46. package/lib/programmers/ValidateProgrammer.js +28 -8
  47. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  48. package/lib/programmers/helpers/CloneJoiner.js +10 -2
  49. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  50. package/lib/programmers/helpers/ICheckEntry.d.ts +3 -2
  51. package/lib/programmers/helpers/ProtobufUtil.d.ts +6 -2
  52. package/lib/programmers/helpers/ProtobufUtil.js +175 -17
  53. package/lib/programmers/helpers/ProtobufUtil.js.map +1 -1
  54. package/lib/programmers/helpers/RandomJoiner.d.ts +3 -5
  55. package/lib/programmers/helpers/RandomJoiner.js +7 -10
  56. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  57. package/lib/programmers/helpers/RandomRanger.d.ts +5 -6
  58. package/lib/programmers/helpers/RandomRanger.js +13 -33
  59. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  60. package/lib/programmers/helpers/UnionExplorer.d.ts +7 -8
  61. package/lib/programmers/helpers/UnionExplorer.js +6 -6
  62. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  63. package/lib/programmers/internal/application_alias.js +0 -1
  64. package/lib/programmers/internal/application_alias.js.map +1 -1
  65. package/lib/programmers/internal/application_array.js +60 -20
  66. package/lib/programmers/internal/application_array.js.map +1 -1
  67. package/lib/programmers/internal/application_number.js +95 -69
  68. package/lib/programmers/internal/application_number.js.map +1 -1
  69. package/lib/programmers/internal/application_object.js +0 -3
  70. package/lib/programmers/internal/application_object.js.map +1 -1
  71. package/lib/programmers/internal/application_schema.js +37 -20
  72. package/lib/programmers/internal/application_schema.js.map +1 -1
  73. package/lib/programmers/internal/application_string.js +56 -22
  74. package/lib/programmers/internal/application_string.js.map +1 -1
  75. package/lib/programmers/internal/check_array_length.js +25 -25
  76. package/lib/programmers/internal/check_array_length.js.map +1 -1
  77. package/lib/programmers/internal/check_bigint.js +13 -116
  78. package/lib/programmers/internal/check_bigint.js.map +1 -1
  79. package/lib/programmers/internal/check_dynamic_properties.js +1 -1
  80. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  81. package/lib/programmers/internal/check_number.js +62 -163
  82. package/lib/programmers/internal/check_number.js.map +1 -1
  83. package/lib/programmers/internal/check_string.js +16 -52
  84. package/lib/programmers/internal/check_string.js.map +1 -1
  85. package/lib/programmers/internal/check_template.js +16 -1
  86. package/lib/programmers/internal/check_template.js.map +1 -1
  87. package/lib/programmers/internal/check_union_array_like.js +4 -4
  88. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  89. package/lib/programmers/internal/feature_object_entries.js +1 -1
  90. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  91. package/lib/programmers/internal/random_custom.js +2 -2
  92. package/lib/programmers/internal/random_custom.js.map +1 -1
  93. package/lib/programmers/json/JsonStringifyProgrammer.js +21 -16
  94. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  95. package/lib/programmers/misc/MiscCloneProgrammer.js +13 -9
  96. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  97. package/lib/programmers/{IsPruneProgrammer.d.ts → misc/MiscIsPruneProgrammer.d.ts} +2 -2
  98. package/lib/programmers/{IsPruneProgrammer.js → misc/MiscIsPruneProgrammer.js} +11 -11
  99. package/lib/programmers/misc/MiscIsPruneProgrammer.js.map +1 -0
  100. package/lib/programmers/misc/MiscPruneProgrammer.js +10 -6
  101. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  102. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +24 -44
  103. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  104. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +138 -65
  105. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  106. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +59 -85
  107. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js.map +1 -1
  108. package/lib/schemas/json/IJsonSchema.d.ts +10 -38
  109. package/lib/schemas/metadata/IMetadataAlias.d.ts +0 -2
  110. package/lib/schemas/metadata/IMetadataProperty.d.ts +0 -2
  111. package/lib/schemas/metadata/IMetadataTypeTag.d.ts +2 -0
  112. package/lib/schemas/metadata/Metadata.d.ts +2 -2
  113. package/lib/schemas/metadata/Metadata.js +25 -25
  114. package/lib/schemas/metadata/Metadata.js.map +1 -1
  115. package/lib/schemas/metadata/MetadataAlias.d.ts +0 -2
  116. package/lib/schemas/metadata/MetadataAlias.js +0 -3
  117. package/lib/schemas/metadata/MetadataAlias.js.map +1 -1
  118. package/lib/schemas/metadata/MetadataArray.d.ts +2 -0
  119. package/lib/schemas/metadata/MetadataArray.js +45 -2
  120. package/lib/schemas/metadata/MetadataArray.js.map +1 -1
  121. package/lib/schemas/metadata/MetadataAtomic.d.ts +9 -0
  122. package/lib/schemas/metadata/MetadataAtomic.js +59 -0
  123. package/lib/schemas/metadata/MetadataAtomic.js.map +1 -0
  124. package/lib/schemas/metadata/MetadataProperty.d.ts +0 -2
  125. package/lib/schemas/metadata/MetadataProperty.js +0 -3
  126. package/lib/schemas/metadata/MetadataProperty.js.map +1 -1
  127. package/lib/schemas/metadata/MetadataTuple.d.ts +4 -2
  128. package/lib/schemas/metadata/MetadataTuple.js +1 -2
  129. package/lib/schemas/metadata/MetadataTuple.js.map +1 -1
  130. package/lib/tags/ExclusiveMaximum.d.ts +10 -8
  131. package/lib/tags/ExclusiveMinimum.d.ts +10 -8
  132. package/lib/tags/Format.d.ts +8 -8
  133. package/lib/tags/MaxItems.d.ts +8 -8
  134. package/lib/tags/MaxLength.d.ts +8 -8
  135. package/lib/tags/Maximum.d.ts +10 -8
  136. package/lib/tags/MinItems.d.ts +8 -8
  137. package/lib/tags/MinLength.d.ts +8 -8
  138. package/lib/tags/Minimum.d.ts +10 -8
  139. package/lib/tags/MultipleOf.d.ts +10 -8
  140. package/lib/tags/Pattern.d.ts +7 -8
  141. package/lib/tags/TagBase.d.ts +10 -6
  142. package/lib/tags/Type.d.ts +14 -13
  143. package/lib/tags/index.d.ts +1 -0
  144. package/lib/tags/index.js +1 -0
  145. package/lib/tags/index.js.map +1 -1
  146. package/lib/transformers/FileTransformer.js +3 -1
  147. package/lib/transformers/FileTransformer.js.map +1 -1
  148. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js +2 -2
  149. package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js.map +1 -1
  150. package/lib/transformers/features/misc/MiscIsPruneTransformer.js +2 -2
  151. package/lib/transformers/features/misc/MiscIsPruneTransformer.js.map +1 -1
  152. package/lib/typings/ProtobufAtomic.d.ts +5 -0
  153. package/lib/{schemas/metadata/ICommentTag.js → typings/ProtobufAtomic.js} +1 -1
  154. package/lib/typings/ProtobufAtomic.js.map +1 -0
  155. package/package.json +2 -2
  156. package/src/IRandomGenerator.ts +4 -3
  157. package/src/factories/ExpressionFactory.ts +2 -2
  158. package/src/factories/LiteralFactory.ts +10 -3
  159. package/src/factories/MetadataCollection.ts +0 -1
  160. package/src/factories/MetadataCommentTagFactory.ts +583 -0
  161. package/src/factories/MetadataTypeTagFactory.ts +263 -0
  162. package/src/factories/NumericRangeFactory.ts +33 -0
  163. package/src/factories/ProtobufFactory.ts +27 -13
  164. package/src/factories/internal/metadata/emend_metadata_atomics.ts +6 -1
  165. package/src/factories/internal/metadata/emplace_metadata_alias.ts +0 -6
  166. package/src/factories/internal/metadata/emplace_metadata_object.ts +0 -1
  167. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +2 -1
  168. package/src/factories/internal/metadata/iterate_metadata_comment_tags.ts +3 -7
  169. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +13 -10
  170. package/src/functional/Namespace.ts +0 -16
  171. package/src/programmers/AssertProgrammer.ts +57 -21
  172. package/src/programmers/CheckerProgrammer.ts +43 -118
  173. package/src/programmers/FeatureProgrammer.ts +11 -33
  174. package/src/programmers/IsProgrammer.ts +52 -41
  175. package/src/programmers/RandomProgrammer.ts +206 -226
  176. package/src/programmers/ValidateProgrammer.ts +60 -21
  177. package/src/programmers/helpers/CloneJoiner.ts +57 -20
  178. package/src/programmers/helpers/ICheckEntry.ts +3 -2
  179. package/src/programmers/helpers/ProtobufUtil.ts +113 -17
  180. package/src/programmers/helpers/RandomJoiner.ts +11 -37
  181. package/src/programmers/helpers/RandomRanger.ts +16 -51
  182. package/src/programmers/helpers/UnionExplorer.ts +1 -20
  183. package/src/programmers/internal/application_alias.ts +0 -1
  184. package/src/programmers/internal/application_array.ts +32 -10
  185. package/src/programmers/internal/application_number.ts +76 -70
  186. package/src/programmers/internal/application_object.ts +0 -3
  187. package/src/programmers/internal/application_schema.ts +36 -18
  188. package/src/programmers/internal/application_string.ts +33 -27
  189. package/src/programmers/internal/check_array_length.ts +34 -28
  190. package/src/programmers/internal/check_bigint.ts +25 -118
  191. package/src/programmers/internal/check_dynamic_properties.ts +1 -2
  192. package/src/programmers/internal/check_number.ts +81 -261
  193. package/src/programmers/internal/check_string.ts +28 -39
  194. package/src/programmers/internal/check_template.ts +17 -1
  195. package/src/programmers/internal/check_union_array_like.ts +1 -16
  196. package/src/programmers/internal/feature_object_entries.ts +12 -18
  197. package/src/programmers/internal/random_custom.ts +3 -3
  198. package/src/programmers/json/JsonStringifyProgrammer.ts +25 -36
  199. package/src/programmers/misc/MiscCloneProgrammer.ts +10 -24
  200. package/src/programmers/{IsPruneProgrammer.ts → misc/MiscIsPruneProgrammer.ts} +7 -7
  201. package/src/programmers/misc/MiscPruneProgrammer.ts +8 -18
  202. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +34 -68
  203. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +153 -98
  204. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +6 -36
  205. package/src/schemas/json/IJsonSchema.ts +11 -38
  206. package/src/schemas/metadata/IMetadataAlias.ts +0 -2
  207. package/src/schemas/metadata/IMetadataProperty.ts +0 -2
  208. package/src/schemas/metadata/IMetadataTypeTag.ts +2 -0
  209. package/src/schemas/metadata/Metadata.ts +28 -42
  210. package/src/schemas/metadata/MetadataAlias.ts +0 -5
  211. package/src/schemas/metadata/MetadataArray.ts +21 -3
  212. package/src/schemas/metadata/MetadataAtomic.ts +42 -0
  213. package/src/schemas/metadata/MetadataProperty.ts +0 -5
  214. package/src/schemas/metadata/MetadataTuple.ts +5 -4
  215. package/src/tags/ExclusiveMaximum.ts +13 -8
  216. package/src/tags/ExclusiveMinimum.ts +13 -8
  217. package/src/tags/Format.ts +21 -20
  218. package/src/tags/MaxItems.ts +9 -8
  219. package/src/tags/MaxLength.ts +9 -8
  220. package/src/tags/Maximum.ts +13 -8
  221. package/src/tags/MinItems.ts +9 -8
  222. package/src/tags/MinLength.ts +9 -8
  223. package/src/tags/Minimum.ts +13 -8
  224. package/src/tags/MultipleOf.ts +15 -10
  225. package/src/tags/Pattern.ts +8 -8
  226. package/src/tags/TagBase.ts +18 -13
  227. package/src/tags/Type.ts +26 -29
  228. package/src/tags/index.ts +1 -0
  229. package/src/transformers/FileTransformer.ts +4 -4
  230. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +2 -2
  231. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +2 -2
  232. package/src/typings/ProtobufAtomic.ts +19 -0
  233. package/lib/factories/MetadataTagFactory.d.ts +0 -6
  234. package/lib/factories/MetadataTagFactory.js +0 -312
  235. package/lib/factories/MetadataTagFactory.js.map +0 -1
  236. package/lib/factories/internal/metadata/iterate_metadata_type_tags.d.ts +0 -3
  237. package/lib/factories/internal/metadata/iterate_metadata_type_tags.js +0 -157
  238. package/lib/factories/internal/metadata/iterate_metadata_type_tags.js.map +0 -1
  239. package/lib/functional/$is_custom.d.ts +0 -2
  240. package/lib/functional/$is_custom.js +0 -13
  241. package/lib/functional/$is_custom.js.map +0 -1
  242. package/lib/functional/$is_date.d.ts +0 -1
  243. package/lib/functional/$is_date.js +0 -7
  244. package/lib/functional/$is_date.js.map +0 -1
  245. package/lib/functional/$is_datetime.d.ts +0 -1
  246. package/lib/functional/$is_datetime.js +0 -8
  247. package/lib/functional/$is_datetime.js.map +0 -1
  248. package/lib/functional/$is_email.d.ts +0 -1
  249. package/lib/functional/$is_email.js +0 -7
  250. package/lib/functional/$is_email.js.map +0 -1
  251. package/lib/functional/$is_ipv4.d.ts +0 -1
  252. package/lib/functional/$is_ipv4.js +0 -7
  253. package/lib/functional/$is_ipv4.js.map +0 -1
  254. package/lib/functional/$is_ipv6.d.ts +0 -1
  255. package/lib/functional/$is_ipv6.js +0 -7
  256. package/lib/functional/$is_ipv6.js.map +0 -1
  257. package/lib/functional/$is_url.d.ts +0 -1
  258. package/lib/functional/$is_url.js +0 -7
  259. package/lib/functional/$is_url.js.map +0 -1
  260. package/lib/functional/$is_uuid.d.ts +0 -1
  261. package/lib/functional/$is_uuid.js +0 -7
  262. package/lib/functional/$is_uuid.js.map +0 -1
  263. package/lib/programmers/IsPruneProgrammer.js.map +0 -1
  264. package/lib/programmers/internal/check_array_tags.js +0 -39
  265. package/lib/programmers/internal/check_array_tags.js.map +0 -1
  266. package/lib/programmers/internal/check_string_tags.d.ts +0 -1
  267. package/lib/programmers/internal/check_string_tags.js +0 -89
  268. package/lib/programmers/internal/check_string_tags.js.map +0 -1
  269. package/lib/programmers/internal/get_comment_tags.d.ts +0 -1
  270. package/lib/programmers/internal/get_comment_tags.js +0 -25
  271. package/lib/programmers/internal/get_comment_tags.js.map +0 -1
  272. package/lib/schemas/metadata/ICommentTag.d.ts +0 -4
  273. package/lib/schemas/metadata/ICommentTag.js.map +0 -1
  274. package/lib/schemas/metadata/IMetadataCommentTag.d.ts +0 -63
  275. package/lib/schemas/metadata/IMetadataCommentTag.js +0 -3
  276. package/lib/schemas/metadata/IMetadataCommentTag.js.map +0 -1
  277. package/src/factories/MetadataTagFactory.ts +0 -365
  278. package/src/factories/internal/metadata/iterate_metadata_type_tags.ts +0 -183
  279. package/src/functional/$is_custom.ts +0 -14
  280. package/src/functional/$is_date.ts +0 -3
  281. package/src/functional/$is_datetime.ts +0 -2
  282. package/src/functional/$is_email.ts +0 -4
  283. package/src/functional/$is_ipv4.ts +0 -4
  284. package/src/functional/$is_ipv6.ts +0 -4
  285. package/src/functional/$is_url.ts +0 -4
  286. package/src/functional/$is_uuid.ts +0 -4
  287. package/src/programmers/internal/check_array_tags.ts +0 -45
  288. package/src/programmers/internal/check_string_tags.ts +0 -67
  289. package/src/programmers/internal/get_comment_tags.ts +0 -23
  290. package/src/schemas/metadata/ICommentTag.ts +0 -4
  291. package/src/schemas/metadata/IMetadataCommentTag.ts +0 -112
  292. /package/lib/{programmers/internal/check_array_tags.d.ts → factories/MetadataCommentTagFactory.d.ts} +0 -0
@@ -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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"}
@@ -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":"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"}
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
+ expected: string;
3
4
  expression: ts.Expression | null;
4
- tags: ICheckEntry.ITag[];
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 a = _d.value;
48
- set.add(a.type);
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,KAAgB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;gBAAvB,IAAM,CAAC,WAAA;gBAAkB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;aAAA;;;;;;;;;;YAC9C,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 { IMetadataCommentTag } from "../../schemas/metadata/IMetadataCommentTag";
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: IMetadataCommentTag[], comments: ICommentTag[]) => ts.Expression;
8
- const array: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (explore: IExplore) => (length: ts.Expression | undefined) => (item: Metadata, tags: IMetadataCommentTag[], comments: ICommentTag[]) => ts.Expression;
9
- const tuple: (decoder: Decoder) => (items: Metadata[], tags: IMetadataCommentTag[], 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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,qEAAoE;AACpE,2DAA0D;AAQ1D,+CAA8C;AAE9C,iEAAgE;AAEhE,IAAiB,YAAY,CA4J5B;AA5JD,WAAiB,YAAY;IAOZ,kBAAK,GACd,UAAC,QAA2C;QAC5C,OAAA,UAAC,OAAgB;YACjB,OAAA,UAAC,OAAiB;gBAClB,OAAA,UAAC,MAAiC;oBAClC,OAAA,UACI,IAAc,EACd,IAA2B,EAC3B,QAAuB;wBAEvB,IAAM,SAAS,GAAkB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC5D,QAAQ,CAAC,OAAO,CAAC,EACjB,SAAS;4BAEL,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT,EAAE,EACF,SAAS,EACT,SAAS,EACT,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,CAChC;kCACE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,UAElC,CAAC;wBACF,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK;4BAAE,OAAO,SAAS,CAAC;wBAClD,OAAO,oBAAE,CAAC,OAAO,CAAC,2BAA2B,CACzC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAClC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC,EACD,SAAS,EACT,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAC9C,CAAC;oBACN,CAAC;gBA/BD,CA+BC;YAhCD,CAgCC;QAjCD,CAiCC;IAlCD,CAkCC,CAAC;IAEO,kBAAK,GACd,UAAC,OAAgB;QACjB,OAAA,UACI,KAAiB,EACjB,IAA2B,EAC3B,QAAuB;YAEvB,OAAA,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CACnC,KAAK,CAAC,GAAG,CAAC,UAAC,CAAC,YAAK,OAAA,OAAO,CAAC,MAAA,CAAC,CAAC,IAAI,mCAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAA,EAAA,CAAC,EACtD,IAAI,CACP;QAHD,CAGC;IARL,CAQK,CAAC;IAEG,mBAAM,GACf,UAAC,QAA2C;QAC5C,OAAA,UAAC,OAAgB;YACjB,OAAA,UAAC,GAAmB;gBAChB,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;oBAC3B,OAAO,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBAG7C,IAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAArB,CAAqB,CAAC,CAAC;gBACpE,IAAM,OAAO,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CACjC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,EAAtB,CAAsB,CAChC,CAAC;gBAGF,IAAM,OAAO,GACT,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC;oBACV,IAAM,GAAG,GAAW,CAAC,CAAC,GAAG,CAAC,cAAc,EAAG,CAAC;oBAC5C,OAAO,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACtC,iBAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;wBACjB,CAAC,CAAC,GAAG;wBACL,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,EACzC,OAAO,CACH,CAAC,CAAC,KAAK,EACP,CAAC,CAAC,IAAI,EACN,IAAA,mCAAgB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CACvC,CACJ,CAAC;gBACN,CAAC,CAAC,EACF,IAAI,CACP,CAAC;gBACN,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAAE,OAAO,OAAO,CAAC;gBAEzC,IAAM,UAAU,GAAmB,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC;oBAC7C,OAAA,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,eAAe,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CACxC;gBAFD,CAEC,CACJ,CAAC;gBACF,OAAO,oBAAE,CAAC,OAAO,CAAC,WAAW;oBAErB,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CACzB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B,CACJ;0BACE,CAAC,GAAG,CAAC,SAAS;oBACb,CAAC,CAAC;wBACI,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAClC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC,EACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAC3C;qBACJ;oBACH,CAAC,CAAC,UAAU,CAAC;oBACjB,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;2BAEL,IAAI,CACP,CAAC;YACN,CAAC;QA7DD,CA6DC;IA9DD,CA8DC,CAAC;IAEN,IAAM,eAAe,GACjB,UAAC,QAA2C;QAC5C,OAAA,UAAC,OAAgB;YACjB,OAAA,UAAC,CAAmB;gBAChB,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE;oBAC1D,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT,EAAE,EACF,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CACzB,EACD,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EACjD,OAAO,CACH,CAAC,CAAC,KAAK,EACP,CAAC,CAAC,IAAI,EACN,IAAA,mCAAgB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CACvC,CACJ,CACJ;oBACD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,QAAQ,CAAC,SAAS,CAAC,EACnB,SAAS,EACT;wBACI,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;wBAClC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;qBACrC,CACJ;iBACJ,CAAC;YA5BF,CA4BE;QA7BN,CA6BM;IA9BN,CA8BM,CAAC;AACf,CAAC,EA5JgB,YAAY,4BAAZ,YAAY,QA4J5B"}
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 { IMetadataCommentTag } from "../../schemas/metadata/IMetadataCommentTag";
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: IMetadataCommentTag[]) => 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: IMetadataCommentTag["kind"];
13
- maximum: IMetadataCommentTag["kind"];
14
- fixed: IMetadataCommentTag["kind"];
12
+ minimum: string;
13
+ maximum: string;
15
14
  }
16
15
  }
17
- const number: (config: number.IConfig) => (defs: IDefaults) => (tags: IMetadataCommentTag[]) => 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;
@@ -13,13 +13,10 @@ var RandomRanger;
13
13
  return function (tags) {
14
14
  var _a, _b;
15
15
  var props = {
16
- fixed: getter(tags)(acc.fixed),
17
16
  minimum: getter(tags)(acc.minimum),
18
17
  maximum: getter(tags)(acc.maximum),
19
18
  };
20
- if (props.fixed !== undefined)
21
- return typescript_1.default.factory.createNumericLiteral(props.fixed);
22
- else if (props.minimum === undefined && props.maximum === undefined)
19
+ if (props.minimum === undefined && props.maximum === undefined)
23
20
  return undefined;
24
21
  (_a = props.minimum) !== null && _a !== void 0 ? _a : (props.minimum = defs.minimum);
25
22
  (_b = props.maximum) !== null && _b !== void 0 ? _b : (props.maximum = defs.maximum);
@@ -46,18 +43,12 @@ var RandomRanger;
46
43
  value: (_b = getter(tags)("maximum")) !== null && _b !== void 0 ? _b : getter(tags)("exclusiveMaximum"),
47
44
  exclusive: getter(tags)("exclusiveMaximum") !== undefined,
48
45
  },
49
- step: getter(tags)("step"),
46
+ stepper: undefined,
50
47
  multiply: getter(tags)("multipleOf"),
51
48
  };
52
- if (Object.values(range).every(function (v) { return v !== undefined; }))
53
- return config.setter([]);
54
- if (range.step !== undefined) {
55
- var _e = stepper(defs.gap)(range)(range.step), intercept = _e.intercept, minimum_1 = _e.minimum, maximum_1 = _e.maximum;
56
- return typescript_1.default.factory.createAdd(config.transform(intercept), typescript_1.default.factory.createMultiply(config.transform(range.step), config.setter([minimum_1, maximum_1])));
57
- }
58
- else if (range.multiply !== undefined) {
59
- var _f = multiplier(defs.gap)(range)(range.multiply), minimum_2 = _f.minimum, maximum_2 = _f.maximum;
60
- return typescript_1.default.factory.createMultiply(config.transform(range.multiply), config.setter([minimum_2, maximum_2]));
49
+ if (range.multiply !== undefined) {
50
+ var _e = multiplier(defs.gap)(range)(range.multiply), minimum_1 = _e.minimum, maximum_1 = _e.maximum;
51
+ return typescript_1.default.factory.createMultiply(config.transform(range.multiply), config.setter([minimum_1, maximum_1]));
61
52
  }
62
53
  var integer = function (value) { return value === Math.floor(value); };
63
54
  if (config.type === "int") {
@@ -98,26 +89,15 @@ var RandomRanger;
98
89
  };
99
90
  })(RandomRanger || (exports.RandomRanger = RandomRanger = {}));
100
91
  var getter = function (tags) {
101
- return function (kind) { var _a; return (_a = tags.find(function (t) { return t.kind === kind; })) === null || _a === void 0 ? void 0 : _a.value; };
102
- };
103
- var stepper = function (gap) { return function (range) { return function (s) {
104
- var intercept = range.minimum.value;
105
- var minimum = range.minimum.exclusive ? 1 : 0;
106
- if (range.maximum.value === undefined)
107
- return {
108
- intercept: intercept,
109
- minimum: minimum,
110
- maximum: gap,
111
- };
112
- var y = Math.floor(range.maximum.value - intercept) / s;
113
- return {
114
- intercept: intercept,
115
- minimum: minimum,
116
- maximum: range.maximum.exclusive && intercept + y * s === range.maximum.value
117
- ? y - 1
118
- : y,
92
+ return function (kind) {
93
+ var _a;
94
+ var value = (_a = tags.find(function (t) {
95
+ return t.kind === kind &&
96
+ (typeof t.value === "number" || typeof t.value === "bigint");
97
+ })) === null || _a === void 0 ? void 0 : _a.value;
98
+ return value !== undefined ? Number(value) : undefined;
119
99
  };
120
- }; }; };
100
+ };
121
101
  var multiplier = function (gap) { return function (range) { return function (m) {
122
102
  var minimum = range.minimum.value === undefined
123
103
  ? 0
@@ -1 +1 @@
1
- {"version":3,"file":"RandomRanger.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomRanger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomRanger.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomRanger.ts"],"names":[],"mappings":"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"}