typia 3.6.10 → 3.7.0-dev.20230331

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 (260) hide show
  1. package/lib/factories/MetadataTagFactory.js +140 -132
  2. package/lib/factories/MetadataTagFactory.js.map +1 -1
  3. package/lib/functional/$dictionary.d.ts +1 -0
  4. package/lib/functional/$dictionary.js +14 -0
  5. package/lib/functional/$dictionary.js.map +1 -0
  6. package/lib/functional/$is_custom.d.ts +2 -0
  7. package/lib/functional/$is_custom.js +12 -0
  8. package/lib/functional/$is_custom.js.map +1 -0
  9. package/lib/functional/Namespace.js +2 -0
  10. package/lib/functional/Namespace.js.map +1 -1
  11. package/lib/module.d.ts +25 -0
  12. package/lib/module.js +12 -1
  13. package/lib/module.js.map +1 -1
  14. package/lib/programmers/CheckerProgrammer.d.ts +2 -2
  15. package/lib/programmers/CheckerProgrammer.js +22 -22
  16. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  17. package/lib/programmers/CloneProgrammer.js +2 -2
  18. package/lib/programmers/CloneProgrammer.js.map +1 -1
  19. package/lib/programmers/FeatureProgrammer.d.ts +3 -2
  20. package/lib/programmers/FeatureProgrammer.js +5 -5
  21. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  22. package/lib/programmers/IsProgrammer.d.ts +1 -1
  23. package/lib/programmers/IsProgrammer.js +2 -2
  24. package/lib/programmers/IsProgrammer.js.map +1 -1
  25. package/lib/programmers/PruneProgrammer.js +2 -2
  26. package/lib/programmers/PruneProgrammer.js.map +1 -1
  27. package/lib/programmers/StringifyProgrammer.js +6 -6
  28. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  29. package/lib/programmers/helpers/UnionExplorer.d.ts +7 -7
  30. package/lib/programmers/helpers/UnionExplorer.js +6 -6
  31. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  32. package/lib/programmers/internal/check_array.js +36 -7
  33. package/lib/programmers/internal/check_array.js.map +1 -1
  34. package/lib/programmers/internal/check_bigint.d.ts +3 -1
  35. package/lib/programmers/internal/check_bigint.js +90 -61
  36. package/lib/programmers/internal/check_bigint.js.map +1 -1
  37. package/lib/programmers/internal/check_custom.d.ts +4 -0
  38. package/lib/programmers/internal/check_custom.js +30 -0
  39. package/lib/programmers/internal/check_custom.js.map +1 -0
  40. package/lib/programmers/internal/check_number.js +104 -75
  41. package/lib/programmers/internal/check_number.js.map +1 -1
  42. package/lib/programmers/internal/check_string.js +4 -3
  43. package/lib/programmers/internal/check_string.js.map +1 -1
  44. package/lib/programmers/internal/check_union_array_like.d.ts +2 -2
  45. package/lib/programmers/internal/check_union_array_like.js +4 -4
  46. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  47. package/lib/programmers/internal/check_union_tuple.js +2 -2
  48. package/lib/programmers/internal/check_union_tuple.js.map +1 -1
  49. package/lib/programmers/internal/feature_object_entries.js +1 -1
  50. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  51. package/lib/typings/Customizable.d.ts +7 -0
  52. package/lib/typings/Customizable.js +3 -0
  53. package/lib/typings/Customizable.js.map +1 -0
  54. package/package.json +1 -1
  55. package/src/IRandomGenerator.ts +17 -17
  56. package/src/IValidation.ts +21 -21
  57. package/src/Primitive.ts +104 -104
  58. package/src/TypeGuardError.ts +36 -36
  59. package/src/executable/TypiaGenerateWizard.ts +87 -87
  60. package/src/executable/TypiaSetupWizard.ts +152 -152
  61. package/src/executable/setup/ArgumentParser.ts +91 -91
  62. package/src/executable/setup/CommandExecutor.ts +8 -8
  63. package/src/executable/setup/FileRetriever.ts +33 -33
  64. package/src/executable/setup/PackageManager.ts +92 -92
  65. package/src/executable/setup/PluginConfigurator.ts +99 -99
  66. package/src/executable/typia.ts +38 -38
  67. package/src/factories/CommentFactory.ts +10 -10
  68. package/src/factories/ExpressionFactory.ts +77 -77
  69. package/src/factories/IdentifierFactory.ts +73 -73
  70. package/src/factories/LiteralFactory.ts +44 -44
  71. package/src/factories/MetadataCollection.ts +122 -122
  72. package/src/factories/MetadataFactory.ts +51 -51
  73. package/src/factories/MetadataTagFactory.ts +302 -276
  74. package/src/factories/StatementFactory.ts +60 -60
  75. package/src/factories/TemplateFactory.ts +56 -56
  76. package/src/factories/TypeFactory.ts +129 -129
  77. package/src/factories/TypiaFileFactory.ts +120 -120
  78. package/src/factories/ValueFactory.ts +12 -12
  79. package/src/factories/internal/metadata/MetadataHelper.ts +12 -12
  80. package/src/factories/internal/metadata/emplace_metadata_object.ts +142 -142
  81. package/src/factories/internal/metadata/explore_metadata.ts +92 -92
  82. package/src/factories/internal/metadata/iterate_metadata.ts +80 -80
  83. package/src/factories/internal/metadata/iterate_metadata_array.ts +29 -29
  84. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
  85. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
  86. package/src/factories/internal/metadata/iterate_metadata_constant.ts +58 -58
  87. package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
  88. package/src/factories/internal/metadata/iterate_metadata_native.ts +222 -222
  89. package/src/factories/internal/metadata/iterate_metadata_object.ts +48 -48
  90. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +27 -27
  91. package/src/factories/internal/metadata/iterate_metadata_set.ts +33 -33
  92. package/src/factories/internal/metadata/iterate_metadata_template.ts +38 -38
  93. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +45 -45
  94. package/src/factories/internal/metadata/iterate_metadata_union.ts +59 -59
  95. package/src/functional/$any.ts +3 -3
  96. package/src/functional/$dictionary.ts +17 -0
  97. package/src/functional/$every.ts +11 -11
  98. package/src/functional/$guard.ts +35 -35
  99. package/src/functional/$is_between.ts +7 -7
  100. package/src/functional/$is_custom.ts +14 -0
  101. package/src/functional/$is_date.ts +4 -4
  102. package/src/functional/$is_datetime.ts +3 -3
  103. package/src/functional/$is_email.ts +5 -5
  104. package/src/functional/$is_ipv4.ts +5 -5
  105. package/src/functional/$is_ipv6.ts +5 -5
  106. package/src/functional/$is_url.ts +5 -5
  107. package/src/functional/$is_uuid.ts +5 -5
  108. package/src/functional/$join.ts +50 -50
  109. package/src/functional/$number.ts +12 -12
  110. package/src/functional/$report.ts +15 -15
  111. package/src/functional/$rest.ts +3 -3
  112. package/src/functional/$string.ts +37 -37
  113. package/src/functional/$tail.ts +6 -6
  114. package/src/functional/Namespace.ts +127 -125
  115. package/src/index.ts +4 -4
  116. package/src/metadata/IJsDocTagInfo.ts +10 -10
  117. package/src/metadata/IMetadata.ts +25 -25
  118. package/src/metadata/IMetadataApplication.ts +7 -7
  119. package/src/metadata/IMetadataConstant.ts +16 -16
  120. package/src/metadata/IMetadataEntry.ts +6 -6
  121. package/src/metadata/IMetadataObject.ts +29 -29
  122. package/src/metadata/IMetadataProperty.ts +11 -11
  123. package/src/metadata/IMetadataTag.ts +105 -105
  124. package/src/metadata/Metadata.ts +534 -534
  125. package/src/metadata/MetadataConstant.ts +3 -3
  126. package/src/metadata/MetadataObject.ts +131 -131
  127. package/src/metadata/MetadataProperty.ts +64 -64
  128. package/src/module.ts +1986 -1946
  129. package/src/programmers/ApplicationProgrammer.ts +55 -55
  130. package/src/programmers/AssertCloneProgrammer.ts +70 -70
  131. package/src/programmers/AssertParseProgrammer.ts +65 -65
  132. package/src/programmers/AssertProgrammer.ts +232 -232
  133. package/src/programmers/AssertPruneProgrammer.ts +67 -67
  134. package/src/programmers/AssertStringifyProgrammer.ts +71 -71
  135. package/src/programmers/CheckerProgrammer.ts +923 -893
  136. package/src/programmers/CloneProgrammer.ts +388 -386
  137. package/src/programmers/FeatureProgrammer.ts +512 -505
  138. package/src/programmers/IsCloneProgrammer.ts +80 -80
  139. package/src/programmers/IsParseProgrammer.ts +74 -74
  140. package/src/programmers/IsProgrammer.ts +201 -200
  141. package/src/programmers/IsPruneProgrammer.ts +75 -75
  142. package/src/programmers/IsStringifyProgrammer.ts +81 -81
  143. package/src/programmers/PruneProgrammer.ts +343 -341
  144. package/src/programmers/RandomProgrammer.ts +388 -388
  145. package/src/programmers/StringifyProgrammer.ts +801 -795
  146. package/src/programmers/ValidateCloneProgrammer.ts +90 -90
  147. package/src/programmers/ValidateParseProgrammer.ts +69 -69
  148. package/src/programmers/ValidateProgrammer.ts +266 -266
  149. package/src/programmers/ValidatePruneProgrammer.ts +83 -83
  150. package/src/programmers/ValidateStringifyProgrammer.ts +89 -89
  151. package/src/programmers/helpers/AtomicPredicator.ts +31 -31
  152. package/src/programmers/helpers/CloneJoiner.ts +134 -134
  153. package/src/programmers/helpers/FunctionImporeter.ts +55 -55
  154. package/src/programmers/helpers/IExpressionEntry.ts +12 -12
  155. package/src/programmers/helpers/OptionPredicator.ts +19 -19
  156. package/src/programmers/helpers/PruneJoiner.ts +52 -52
  157. package/src/programmers/helpers/RandomJoiner.ts +149 -149
  158. package/src/programmers/helpers/RandomRanger.ts +216 -216
  159. package/src/programmers/helpers/StringifyJoinder.ts +114 -114
  160. package/src/programmers/helpers/StringifyPredicator.ts +18 -18
  161. package/src/programmers/helpers/UnionExplorer.ts +281 -274
  162. package/src/programmers/helpers/UnionPredicator.ts +81 -81
  163. package/src/programmers/internal/application_array.ts +37 -37
  164. package/src/programmers/internal/application_boolean.ts +17 -17
  165. package/src/programmers/internal/application_constant.ts +29 -29
  166. package/src/programmers/internal/application_default.ts +17 -17
  167. package/src/programmers/internal/application_default_string.ts +32 -32
  168. package/src/programmers/internal/application_native.ts +29 -29
  169. package/src/programmers/internal/application_number.ts +73 -73
  170. package/src/programmers/internal/application_object.ts +153 -153
  171. package/src/programmers/internal/application_schema.ts +184 -184
  172. package/src/programmers/internal/application_string.ts +45 -45
  173. package/src/programmers/internal/application_templates.ts +27 -27
  174. package/src/programmers/internal/application_tuple.ts +29 -29
  175. package/src/programmers/internal/check_array.ts +31 -22
  176. package/src/programmers/internal/check_array_length.ts +44 -44
  177. package/src/programmers/internal/check_bigint.ts +84 -64
  178. package/src/programmers/internal/check_custom.ts +32 -0
  179. package/src/programmers/internal/check_dynamic_properties.ts +197 -197
  180. package/src/programmers/internal/check_everything.ts +28 -28
  181. package/src/programmers/internal/check_native.ts +21 -21
  182. package/src/programmers/internal/check_number.ts +155 -145
  183. package/src/programmers/internal/check_object.ts +48 -48
  184. package/src/programmers/internal/check_string.ts +30 -24
  185. package/src/programmers/internal/check_string_tags.ts +63 -63
  186. package/src/programmers/internal/check_template.ts +50 -50
  187. package/src/programmers/internal/check_union_array_like.ts +265 -260
  188. package/src/programmers/internal/check_union_tuple.ts +35 -33
  189. package/src/programmers/internal/decode_union_object.ts +73 -73
  190. package/src/programmers/internal/feature_object_entries.ts +60 -59
  191. package/src/programmers/internal/metadata_to_pattern.ts +31 -31
  192. package/src/programmers/internal/prune_object_properties.ts +60 -60
  193. package/src/programmers/internal/stringify_dynamic_properties.ts +165 -165
  194. package/src/programmers/internal/stringify_native.ts +8 -8
  195. package/src/programmers/internal/stringify_regular_properties.ts +81 -81
  196. package/src/programmers/internal/template_to_pattern.ts +15 -15
  197. package/src/schemas/IJsonApplication.ts +9 -9
  198. package/src/schemas/IJsonComponents.ts +26 -26
  199. package/src/schemas/IJsonSchema.ts +121 -121
  200. package/src/transform.ts +21 -21
  201. package/src/transformers/CallExpressionTransformer.ts +172 -172
  202. package/src/transformers/ExpressionWithArgumentTransformer.ts +66 -66
  203. package/src/transformers/FileTransformer.ts +49 -49
  204. package/src/transformers/IProject.ts +11 -11
  205. package/src/transformers/ITransformOptions.ts +62 -62
  206. package/src/transformers/ImportTransformer.ts +60 -60
  207. package/src/transformers/NodeTransformer.ts +19 -19
  208. package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +120 -120
  209. package/src/transformers/features/miscellaneous/AssertCloneTransformer.ts +9 -9
  210. package/src/transformers/features/miscellaneous/AssertPruneTransformer.ts +9 -9
  211. package/src/transformers/features/miscellaneous/CloneTransformer.ts +9 -9
  212. package/src/transformers/features/miscellaneous/CreateAssertCloneTransformer.ts +9 -9
  213. package/src/transformers/features/miscellaneous/CreateAssertPruneTransformer.ts +9 -9
  214. package/src/transformers/features/miscellaneous/CreateCloneTransformer.ts +9 -9
  215. package/src/transformers/features/miscellaneous/CreateIsCloneTransformer.ts +9 -9
  216. package/src/transformers/features/miscellaneous/CreateIsPruneTransformer.ts +9 -9
  217. package/src/transformers/features/miscellaneous/CreatePruneTransformer.ts +9 -9
  218. package/src/transformers/features/miscellaneous/CreateRandomGenerator.ts +42 -42
  219. package/src/transformers/features/miscellaneous/CreateValidateCloneTransformer.ts +9 -9
  220. package/src/transformers/features/miscellaneous/CreateValidatePruneTransformer.ts +9 -9
  221. package/src/transformers/features/miscellaneous/IsCloneTransformer.ts +9 -9
  222. package/src/transformers/features/miscellaneous/IsPruneTransformer.ts +9 -9
  223. package/src/transformers/features/miscellaneous/MetadataTransformer.ts +55 -55
  224. package/src/transformers/features/miscellaneous/PruneTransformer.ts +9 -9
  225. package/src/transformers/features/miscellaneous/RandomTransformer.ts +48 -48
  226. package/src/transformers/features/miscellaneous/ValidateCloneTransformer.ts +9 -9
  227. package/src/transformers/features/miscellaneous/ValidatePruneTransformer.ts +9 -9
  228. package/src/transformers/features/parsers/AssertParseTransformer.ts +9 -9
  229. package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +9 -9
  230. package/src/transformers/features/parsers/CreateIsParseTransformer.ts +9 -9
  231. package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +9 -9
  232. package/src/transformers/features/parsers/IsParseTransformer.ts +9 -9
  233. package/src/transformers/features/parsers/ValidateParseTransformer.ts +9 -9
  234. package/src/transformers/features/stringifiers/AssertStringifyTransformer.ts +10 -10
  235. package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +9 -9
  236. package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +9 -9
  237. package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +9 -9
  238. package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +11 -11
  239. package/src/transformers/features/stringifiers/IsStringifyTransformer.ts +9 -9
  240. package/src/transformers/features/stringifiers/StringifyTransformer.ts +9 -9
  241. package/src/transformers/features/stringifiers/ValidateStringifyTransformer.ts +10 -10
  242. package/src/transformers/features/validators/AssertTransformer.ts +11 -11
  243. package/src/transformers/features/validators/CreateAssertTransformer.ts +12 -12
  244. package/src/transformers/features/validators/CreateIsTransformer.ts +10 -10
  245. package/src/transformers/features/validators/CreateValidateTransformer.ts +12 -12
  246. package/src/transformers/features/validators/IsTransformer.ts +10 -10
  247. package/src/transformers/features/validators/ValidateTransformer.ts +11 -11
  248. package/src/transformers/internal/GenericTransformer.ts +99 -99
  249. package/src/typings/Atomic.ts +17 -17
  250. package/src/typings/ClassProperties.ts +5 -5
  251. package/src/typings/Customizable.ts +7 -0
  252. package/src/typings/OmitNever.ts +3 -3
  253. package/src/typings/SpecialFields.ts +3 -3
  254. package/src/typings/Writable.ts +11 -11
  255. package/src/utils/ArrayUtil.ts +49 -49
  256. package/src/utils/Escaper.ts +50 -50
  257. package/src/utils/MapUtil.ts +14 -14
  258. package/src/utils/PatternUtil.ts +30 -30
  259. package/src/utils/RandomGenerator.ts +96 -96
  260. package/src/utils/Singleton.ts +17 -17
@@ -1 +1 @@
1
- {"version":3,"file":"StringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/StringifyProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/StringifyProgrammer.ts"],"names":[],"mappings":"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"}
@@ -6,27 +6,27 @@ import { FeatureProgrammer } from "../FeatureProgrammer";
6
6
  import { check_union_array_like } from "../internal/check_union_array_like";
7
7
  export declare namespace UnionExplorer {
8
8
  interface Decoder<T> {
9
- (input: ts.Expression, target: T, explore: FeatureProgrammer.IExplore, tags: IMetadataTag[]): ts.Expression;
9
+ (input: ts.Expression, target: T, explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]): ts.Expression;
10
10
  }
11
11
  type ObjectCombiner = Decoder<MetadataObject[]>;
12
- const object: (config: FeatureProgrammer.IConfig, level?: number) => (input: ts.Expression, targets: MetadataObject[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[]) => ts.Expression;
13
- const tuple: (props: check_union_array_like.IProps<Metadata[]>) => (input: ts.Expression, targets: Metadata[][], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[]) => ts.Expression;
12
+ const object: (config: FeatureProgrammer.IConfig, level?: number) => (input: ts.Expression, targets: MetadataObject[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.Expression;
13
+ const tuple: (props: check_union_array_like.IProps<Metadata[]>) => (input: ts.Expression, targets: Metadata[][], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.Expression;
14
14
  namespace tuple {
15
15
  type IProps = check_union_array_like.IProps<Metadata | Metadata[]>;
16
16
  }
17
- const array: (props: array.IProps) => (input: ts.Expression, targets: Metadata[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[]) => ts.Expression;
17
+ const array: (props: array.IProps) => (input: ts.Expression, targets: Metadata[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.Expression;
18
18
  namespace array {
19
19
  type IProps = check_union_array_like.IProps<Metadata>;
20
20
  }
21
- const array_or_tuple: (props: array_or_tuple.IProps) => (input: ts.Expression, targets: (Metadata | Metadata[])[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[]) => ts.Expression;
21
+ const array_or_tuple: (props: array_or_tuple.IProps) => (input: ts.Expression, targets: (Metadata | Metadata[])[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.Expression;
22
22
  namespace array_or_tuple {
23
23
  type IProps = check_union_array_like.IProps<Metadata | Metadata[]>;
24
24
  }
25
- const set: (props: set.IProps) => (input: ts.Expression, targets: Metadata[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[]) => ts.Expression;
25
+ const set: (props: set.IProps) => (input: ts.Expression, targets: Metadata[], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.Expression;
26
26
  namespace set {
27
27
  type IProps = check_union_array_like.IProps<Metadata>;
28
28
  }
29
- const map: (props: map.IProps) => (input: ts.Expression, targets: [Metadata, Metadata][], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[]) => ts.Expression;
29
+ const map: (props: map.IProps) => (input: ts.Expression, targets: [Metadata, Metadata][], explore: FeatureProgrammer.IExplore, tags: IMetadataTag[], jsDocTags: ts.JSDocTagInfo[]) => ts.Expression;
30
30
  namespace map {
31
31
  type IProps = check_union_array_like.IProps<[
32
32
  Metadata,
@@ -49,15 +49,15 @@ var UnionExplorer;
49
49
  (function (UnionExplorer) {
50
50
  UnionExplorer.object = function (config, level) {
51
51
  if (level === void 0) { level = 0; }
52
- return function (input, targets, explore, tags) {
52
+ return function (input, targets, explore, tags, jsDocTags) {
53
53
  if (targets.length === 1)
54
- return config.objector.decoder(input, targets[0], explore, tags);
54
+ return config.objector.decoder(input, targets[0], explore, tags, jsDocTags);
55
55
  var expected = "(".concat(targets
56
56
  .map(function (t) { return t.name; })
57
57
  .join(" | "), ")");
58
58
  var specList = UnionPredicator_1.UnionPredicator.object(targets);
59
59
  if (specList.length === 0) {
60
- var condition = config.objector.unionizer(input, targets, __assign(__assign({}, explore), { tracable: false }), tags);
60
+ var condition = config.objector.unionizer(input, targets, __assign(__assign({}, explore), { tracable: false }), tags, jsDocTags);
61
61
  return config.objector.full
62
62
  ? config.objector.full(condition)(input, expected, explore)
63
63
  : condition;
@@ -69,13 +69,13 @@ var UnionExplorer;
69
69
  var key = spec.property.key.getSoleLiteral();
70
70
  var accessor = IdentifierFactory_1.IdentifierFactory.join(input, key);
71
71
  var pred = spec.neighbour
72
- ? config.objector.checker(accessor, spec.property.value, __assign(__assign({}, explore), { tracable: false, postfix: IdentifierFactory_1.IdentifierFactory.postfix(key) }), tags)
72
+ ? config.objector.checker(accessor, spec.property.value, __assign(__assign({}, explore), { tracable: false, postfix: IdentifierFactory_1.IdentifierFactory.postfix(key) }), tags, jsDocTags)
73
73
  : (config.objector.required || (function (exp) { return exp; }))(ExpressionFactory_1.ExpressionFactory.isRequired(accessor));
74
- return typescript_1.default.factory.createIfStatement((config.objector.is || (function (exp) { return exp; }))(pred), typescript_1.default.factory.createReturnStatement(config.objector.decoder(input, spec.object, explore, tags)));
74
+ return typescript_1.default.factory.createIfStatement((config.objector.is || (function (exp) { return exp; }))(pred), typescript_1.default.factory.createReturnStatement(config.objector.decoder(input, spec.object, explore, tags, jsDocTags)));
75
75
  });
76
76
  return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(conditions), false), [
77
77
  remained.length
78
- ? typescript_1.default.factory.createReturnStatement(UnionExplorer.object(config, level + 1)(input, remained, explore, tags))
78
+ ? typescript_1.default.factory.createReturnStatement(UnionExplorer.object(config, level + 1)(input, remained, explore, tags, jsDocTags))
79
79
  : config.objector.failure(input, expected, explore),
80
80
  ], false), true)), undefined, undefined);
81
81
  };
@@ -1 +1 @@
1
- {"version":3,"file":"UnionExplorer.js","sourceRoot":"","sources":["../../../src/programmers/helpers/UnionExplorer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UnionExplorer.js","sourceRoot":"","sources":["../../../src/programmers/helpers/UnionExplorer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,29 @@
1
1
  "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
2
27
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
28
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
29
  };
@@ -7,12 +32,16 @@ exports.check_array = void 0;
7
32
  var typescript_1 = __importDefault(require("typescript"));
8
33
  var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
9
34
  var check_array_length_1 = require("./check_array_length");
10
- function check_array(input, tagList) {
11
- var conditions = [ExpressionFactory_1.ExpressionFactory.isArray(input)];
12
- var length = (0, check_array_length_1.check_array_length)(input, tagList);
13
- if (length !== null)
14
- conditions.push(length);
15
- return conditions.reduce(function (x, y) { return typescript_1.default.factory.createLogicalAnd(x, y); });
16
- }
35
+ var check_custom_1 = require("./check_custom");
36
+ var check_array = function (importer) {
37
+ return function (input, metaTags, jsDocTags) {
38
+ var conditions = [ExpressionFactory_1.ExpressionFactory.isArray(input)];
39
+ var length = (0, check_array_length_1.check_array_length)(input, metaTags);
40
+ if (length !== null)
41
+ conditions.push(length);
42
+ conditions.push.apply(conditions, __spreadArray([], __read((0, check_custom_1.check_custom)("array")(importer)(input, jsDocTags)), false));
43
+ return conditions.reduce(function (x, y) { return typescript_1.default.factory.createLogicalAnd(x, y); });
44
+ };
45
+ };
17
46
  exports.check_array = check_array;
18
47
  //# sourceMappingURL=check_array.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check_array.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_array.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAItE,2DAA0D;AAK1D,SAAgB,WAAW,CACvB,KAAoB,EACpB,OAAuB;IAEvB,IAAM,UAAU,GAAoB,CAAC,qCAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAEvE,IAAM,MAAM,GAAyB,IAAA,uCAAkB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxE,IAAI,MAAM,KAAK,IAAI;QAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE7C,OAAO,UAAU,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAjC,CAAiC,CAAC,CAAC;AAC1E,CAAC;AAVD,kCAUC"}
1
+ {"version":3,"file":"check_array.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_array.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAMtE,2DAA0D;AAC1D,+CAA8C;AAKvC,IAAM,WAAW,GACpB,UAAC,QAA0B;IAC3B,OAAA,UACI,KAAoB,EACpB,QAAwB,EACxB,SAA0B;QAE1B,IAAM,UAAU,GAAoB,CAAC,qCAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QAEvE,IAAM,MAAM,GAAyB,IAAA,uCAAkB,EACnD,KAAK,EACL,QAAQ,CACX,CAAC;QACF,IAAI,MAAM,KAAK,IAAI;YAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7C,UAAU,CAAC,IAAI,OAAf,UAAU,2BAAS,IAAA,2BAAY,EAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,WAAE;QACtE,OAAO,UAAU,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,EAAjC,CAAiC,CAAC,CAAC;IAC1E,CAAC;AAdD,CAcC,CAAC;AAhBO,QAAA,WAAW,eAgBlB"}
@@ -1,3 +1,5 @@
1
1
  import ts from "typescript";
2
+ import { IJsDocTagInfo } from "../../metadata/IJsDocTagInfo";
2
3
  import { IMetadataTag } from "../../metadata/IMetadataTag";
3
- export declare function check_bigint(input: ts.Expression, tagList: IMetadataTag[]): ts.Expression;
4
+ import { FunctionImporter } from "../helpers/FunctionImporeter";
5
+ export declare const check_bigint: (importer: FunctionImporter) => (input: ts.Expression, metaTags: IMetadataTag[], jsDocTags: IJsDocTagInfo[]) => ts.Expression;
@@ -10,76 +10,105 @@ var __values = (this && this.__values) || function(o) {
10
10
  };
11
11
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
12
  };
13
+ var __read = (this && this.__read) || function (o, n) {
14
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
15
+ if (!m) return o;
16
+ var i = m.call(o), r, ar = [], e;
17
+ try {
18
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
+ }
20
+ catch (error) { e = { error: error }; }
21
+ finally {
22
+ try {
23
+ if (r && !r.done && (m = i["return"])) m.call(i);
24
+ }
25
+ finally { if (e) throw e.error; }
26
+ }
27
+ return ar;
28
+ };
29
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
30
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
31
+ if (ar || !(i in from)) {
32
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
33
+ ar[i] = from[i];
34
+ }
35
+ }
36
+ return to.concat(ar || Array.prototype.slice.call(from));
37
+ };
13
38
  var __importDefault = (this && this.__importDefault) || function (mod) {
14
39
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
40
  };
16
41
  Object.defineProperty(exports, "__esModule", { value: true });
17
42
  exports.check_bigint = void 0;
18
43
  var typescript_1 = __importDefault(require("typescript"));
19
- function check_bigint(input, tagList) {
20
- var e_1, _a;
21
- var caster = function (value) {
22
- return typescript_1.default.factory.createIdentifier("".concat(Math.floor(value), "n"));
23
- };
24
- var conditions = [
25
- typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("bigint"), typescript_1.default.factory.createTypeOfExpression(input)),
26
- ];
27
- var _loop_1 = function (tag) {
28
- if (tag.kind === "multipleOf")
29
- conditions.push(typescript_1.default.factory.createStrictEquality(caster(0), typescript_1.default.factory.createModulo(input, caster(tag.value))));
30
- else if (tag.kind === "step") {
31
- var modulo = function () {
32
- return typescript_1.default.factory.createModulo(input, caster(tag.value));
33
- };
34
- var minimum = (function () {
35
- var e_2, _a;
36
- try {
37
- for (var tagList_2 = (e_2 = void 0, __values(tagList)), tagList_2_1 = tagList_2.next(); !tagList_2_1.done; tagList_2_1 = tagList_2.next()) {
38
- var tag_1 = tagList_2_1.value;
39
- if (tag_1.kind === "minimum")
40
- return tag_1.value;
41
- else if (tag_1.kind === "exclusiveMinimum")
42
- return tag_1.value;
43
- }
44
- }
45
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
46
- finally {
44
+ var check_custom_1 = require("./check_custom");
45
+ var check_bigint = function (importer) {
46
+ return function (input, metaTags, jsDocTags) {
47
+ var e_1, _a;
48
+ var caster = function (value) {
49
+ return typescript_1.default.factory.createIdentifier("".concat(Math.floor(value), "n"));
50
+ };
51
+ var conditions = [
52
+ typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("bigint"), typescript_1.default.factory.createTypeOfExpression(input)),
53
+ ];
54
+ var _loop_1 = function (tag) {
55
+ if (tag.kind === "multipleOf")
56
+ conditions.push(typescript_1.default.factory.createStrictEquality(caster(0), typescript_1.default.factory.createModulo(input, caster(tag.value))));
57
+ else if (tag.kind === "step") {
58
+ var modulo = function () {
59
+ return typescript_1.default.factory.createModulo(input, caster(tag.value));
60
+ };
61
+ var minimum = (function () {
62
+ var e_2, _a;
47
63
  try {
48
- if (tagList_2_1 && !tagList_2_1.done && (_a = tagList_2.return)) _a.call(tagList_2);
64
+ for (var metaTags_2 = (e_2 = void 0, __values(metaTags)), metaTags_2_1 = metaTags_2.next(); !metaTags_2_1.done; metaTags_2_1 = metaTags_2.next()) {
65
+ var tag_1 = metaTags_2_1.value;
66
+ if (tag_1.kind === "minimum")
67
+ return tag_1.value;
68
+ else if (tag_1.kind === "exclusiveMinimum")
69
+ return tag_1.value;
70
+ }
49
71
  }
50
- finally { if (e_2) throw e_2.error; }
51
- }
52
- return undefined;
53
- })();
54
- conditions.push(typescript_1.default.factory.createStrictEquality(caster(0), minimum !== undefined
55
- ? typescript_1.default.factory.createSubtract(modulo(), caster(minimum))
56
- : modulo()));
57
- }
58
- else if (tag.kind === "minimum")
59
- conditions.push(typescript_1.default.factory.createLessThanEquals(caster(tag.value), input));
60
- else if (tag.kind === "maximum")
61
- conditions.push(typescript_1.default.factory.createGreaterThanEquals(caster(tag.value), input));
62
- else if (tag.kind === "exclusiveMinimum")
63
- conditions.push(typescript_1.default.factory.createLessThan(caster(tag.value), input));
64
- else if (tag.kind === "exclusiveMaximum")
65
- conditions.push(typescript_1.default.factory.createGreaterThan(caster(tag.value), input));
66
- };
67
- try {
68
- for (var tagList_1 = __values(tagList), tagList_1_1 = tagList_1.next(); !tagList_1_1.done; tagList_1_1 = tagList_1.next()) {
69
- var tag = tagList_1_1.value;
70
- _loop_1(tag);
71
- }
72
- }
73
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
74
- finally {
72
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
73
+ finally {
74
+ try {
75
+ if (metaTags_2_1 && !metaTags_2_1.done && (_a = metaTags_2.return)) _a.call(metaTags_2);
76
+ }
77
+ finally { if (e_2) throw e_2.error; }
78
+ }
79
+ return undefined;
80
+ })();
81
+ conditions.push(typescript_1.default.factory.createStrictEquality(caster(0), minimum !== undefined
82
+ ? typescript_1.default.factory.createSubtract(modulo(), caster(minimum))
83
+ : modulo()));
84
+ }
85
+ else if (tag.kind === "minimum")
86
+ conditions.push(typescript_1.default.factory.createLessThanEquals(caster(tag.value), input));
87
+ else if (tag.kind === "maximum")
88
+ conditions.push(typescript_1.default.factory.createGreaterThanEquals(caster(tag.value), input));
89
+ else if (tag.kind === "exclusiveMinimum")
90
+ conditions.push(typescript_1.default.factory.createLessThan(caster(tag.value), input));
91
+ else if (tag.kind === "exclusiveMaximum")
92
+ conditions.push(typescript_1.default.factory.createGreaterThan(caster(tag.value), input));
93
+ };
75
94
  try {
76
- if (tagList_1_1 && !tagList_1_1.done && (_a = tagList_1.return)) _a.call(tagList_1);
95
+ for (var metaTags_1 = __values(metaTags), metaTags_1_1 = metaTags_1.next(); !metaTags_1_1.done; metaTags_1_1 = metaTags_1.next()) {
96
+ var tag = metaTags_1_1.value;
97
+ _loop_1(tag);
98
+ }
77
99
  }
78
- finally { if (e_1) throw e_1.error; }
79
- }
80
- return conditions.length === 1
81
- ? conditions[0]
82
- : conditions.reduce(function (x, y) { return typescript_1.default.factory.createLogicalAnd(x, y); });
83
- }
100
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
101
+ finally {
102
+ try {
103
+ if (metaTags_1_1 && !metaTags_1_1.done && (_a = metaTags_1.return)) _a.call(metaTags_1);
104
+ }
105
+ finally { if (e_1) throw e_1.error; }
106
+ }
107
+ conditions.push.apply(conditions, __spreadArray([], __read((0, check_custom_1.check_custom)("bigint")(importer)(input, jsDocTags)), false));
108
+ return conditions.length === 1
109
+ ? conditions[0]
110
+ : conditions.reduce(function (x, y) { return typescript_1.default.factory.createLogicalAnd(x, y); });
111
+ };
112
+ };
84
113
  exports.check_bigint = check_bigint;
85
114
  //# sourceMappingURL=check_bigint.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check_bigint.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_bigint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check_bigint.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_bigint.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import ts from "typescript";
2
+ import { IJsDocTagInfo } from "../../metadata/IJsDocTagInfo";
3
+ import { FunctionImporter } from "../helpers/FunctionImporeter";
4
+ export declare const check_custom: (type: string) => (importer: FunctionImporter) => (input: ts.Expression, jsDocTags: IJsDocTagInfo[]) => ts.CallExpression[];
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.check_custom = void 0;
7
+ var typescript_1 = __importDefault(require("typescript"));
8
+ var MetadataTagFactory_1 = require("../../factories/MetadataTagFactory");
9
+ var check_custom = function (type) {
10
+ return function (importer) {
11
+ return function (input, jsDocTags) {
12
+ return jsDocTags
13
+ .filter(function (tag) {
14
+ return tag.name !== "random" &&
15
+ MetadataTagFactory_1.MetadataTagFactory._PARSER[tag.name] === undefined;
16
+ })
17
+ .map(function (tag) {
18
+ var _a, _b, _c;
19
+ return typescript_1.default.factory.createCallExpression(importer.use("is_custom"), undefined, [
20
+ typescript_1.default.factory.createStringLiteral(tag.name),
21
+ typescript_1.default.factory.createStringLiteral(type),
22
+ typescript_1.default.factory.createStringLiteral((_c = (_b = (_a = tag.text) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.text) !== null && _c !== void 0 ? _c : ""),
23
+ input,
24
+ ]);
25
+ });
26
+ };
27
+ };
28
+ };
29
+ exports.check_custom = check_custom;
30
+ //# sourceMappingURL=check_custom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"check_custom.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_custom.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,yEAAwE;AAMjE,IAAM,YAAY,GACrB,UAAC,IAAY;IACb,OAAA,UAAC,QAA0B;QAC3B,OAAA,UAAC,KAAoB,EAAE,SAA0B;YAC7C,OAAA,SAAS;iBACJ,MAAM,CACH,UAAC,GAAG;gBACA,OAAA,GAAG,CAAC,IAAI,KAAK,QAAQ;oBACrB,uCAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS;YADlD,CACkD,CACzD;iBACA,GAAG,CAAC,UAAC,GAAG;;gBACL,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,EACzB,SAAS,EACT;oBACI,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC;oBACxC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC;oBACpC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,MAAA,MAAA,MAAA,GAAG,CAAC,IAAI,0CAAG,CAAC,CAAC,0CAAE,IAAI,mCAAI,EAAE,CAC5B;oBACD,KAAK;iBACR,CACJ,CAAA;aAAA,CACJ;QAnBL,CAmBK;IApBT,CAoBS;AArBT,CAqBS,CAAC;AAvBD,QAAA,YAAY,gBAuBX"}