typia 7.0.0-dev.20240929 → 7.0.0-dev.20241001

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 (172) hide show
  1. package/lib/index.mjs +25 -25
  2. package/lib/index.mjs.map +1 -1
  3. package/lib/programmers/AssertProgrammer.js +34 -27
  4. package/lib/programmers/AssertProgrammer.js.map +1 -1
  5. package/lib/programmers/CheckerProgrammer.d.ts +5 -1
  6. package/lib/programmers/CheckerProgrammer.js +432 -348
  7. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  8. package/lib/programmers/FeatureProgrammer.d.ts +91 -28
  9. package/lib/programmers/FeatureProgrammer.js +165 -138
  10. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  11. package/lib/programmers/IsProgrammer.d.ts +5 -1
  12. package/lib/programmers/IsProgrammer.js +87 -66
  13. package/lib/programmers/IsProgrammer.js.map +1 -1
  14. package/lib/programmers/RandomProgrammer.js +83 -68
  15. package/lib/programmers/RandomProgrammer.js.map +1 -1
  16. package/lib/programmers/TypiaProgrammer.d.ts +2 -2
  17. package/lib/programmers/TypiaProgrammer.js +79 -75
  18. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  19. package/lib/programmers/ValidateProgrammer.js +45 -19
  20. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  21. package/lib/programmers/helpers/CloneJoiner.js +4 -1
  22. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  23. package/lib/programmers/helpers/NotationJoiner.d.ts +2 -1
  24. package/lib/programmers/helpers/NotationJoiner.js +34 -33
  25. package/lib/programmers/helpers/NotationJoiner.js.map +1 -1
  26. package/lib/programmers/helpers/PruneJoiner.js +4 -1
  27. package/lib/programmers/helpers/PruneJoiner.js.map +1 -1
  28. package/lib/programmers/helpers/RandomJoiner.d.ts +1 -1
  29. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  30. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  31. package/lib/programmers/helpers/StringifyJoinder.js +4 -1
  32. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  33. package/lib/programmers/helpers/StringifyPredicator.d.ts +1 -1
  34. package/lib/programmers/helpers/StringifyPredicator.js +4 -3
  35. package/lib/programmers/helpers/StringifyPredicator.js.map +1 -1
  36. package/lib/programmers/helpers/UnionExplorer.d.ts +52 -12
  37. package/lib/programmers/helpers/UnionExplorer.js +184 -120
  38. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  39. package/lib/programmers/helpers/UnionPredicator.d.ts +1 -1
  40. package/lib/programmers/helpers/UnionPredicator.js +7 -7
  41. package/lib/programmers/http/HttpFormDataProgrammer.js +77 -70
  42. package/lib/programmers/http/HttpFormDataProgrammer.js.map +1 -1
  43. package/lib/programmers/http/HttpHeadersProgrammer.js +69 -68
  44. package/lib/programmers/http/HttpHeadersProgrammer.js.map +1 -1
  45. package/lib/programmers/http/HttpQueryProgrammer.js +69 -62
  46. package/lib/programmers/http/HttpQueryProgrammer.js.map +1 -1
  47. package/lib/programmers/internal/application_escaped.js +4 -4
  48. package/lib/programmers/internal/application_escaped.js.map +1 -1
  49. package/lib/programmers/internal/application_templates.js +8 -2
  50. package/lib/programmers/internal/application_templates.js.map +1 -1
  51. package/lib/programmers/internal/application_union_discriminator.d.ts +1 -1
  52. package/lib/programmers/internal/application_union_discriminator.js +6 -6
  53. package/lib/programmers/internal/application_union_discriminator.js.map +1 -1
  54. package/lib/programmers/internal/application_v30_object.js +6 -3
  55. package/lib/programmers/internal/application_v30_object.js.map +1 -1
  56. package/lib/programmers/internal/application_v31_object.js +4 -1
  57. package/lib/programmers/internal/application_v31_object.js.map +1 -1
  58. package/lib/programmers/internal/check_array_length.js +21 -26
  59. package/lib/programmers/internal/check_array_length.js.map +1 -1
  60. package/lib/programmers/internal/check_bigint.js +18 -26
  61. package/lib/programmers/internal/check_bigint.js.map +1 -1
  62. package/lib/programmers/internal/check_dynamic_key.d.ts +1 -5
  63. package/lib/programmers/internal/check_dynamic_key.js +109 -91
  64. package/lib/programmers/internal/check_dynamic_key.js.map +1 -1
  65. package/lib/programmers/internal/check_dynamic_properties.js +88 -90
  66. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  67. package/lib/programmers/internal/check_native.js +8 -5
  68. package/lib/programmers/internal/check_native.js.map +1 -1
  69. package/lib/programmers/internal/check_number.js +59 -65
  70. package/lib/programmers/internal/check_number.js.map +1 -1
  71. package/lib/programmers/internal/check_object.js +31 -22
  72. package/lib/programmers/internal/check_object.js.map +1 -1
  73. package/lib/programmers/internal/check_string.js +18 -26
  74. package/lib/programmers/internal/check_string.js.map +1 -1
  75. package/lib/programmers/internal/check_template.js +20 -21
  76. package/lib/programmers/internal/check_template.js.map +1 -1
  77. package/lib/programmers/internal/check_union_array_like.js +68 -53
  78. package/lib/programmers/internal/check_union_array_like.js.map +1 -1
  79. package/lib/programmers/internal/decode_union_object.js +59 -49
  80. package/lib/programmers/internal/decode_union_object.js.map +1 -1
  81. package/lib/programmers/internal/feature_object_entries.js +31 -33
  82. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  83. package/lib/programmers/internal/llm_schema_escaped.js +29 -11
  84. package/lib/programmers/internal/llm_schema_escaped.js.map +1 -1
  85. package/lib/programmers/internal/llm_schema_object.js +4 -1
  86. package/lib/programmers/internal/llm_schema_object.js.map +1 -1
  87. package/lib/programmers/internal/metadata_to_pattern.js +44 -41
  88. package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
  89. package/lib/programmers/internal/postfix_of_tuple.d.ts +1 -1
  90. package/lib/programmers/internal/postfix_of_tuple.js +3 -0
  91. package/lib/programmers/internal/postfix_of_tuple.js.map +1 -1
  92. package/lib/programmers/internal/prune_object_properties.js +6 -3
  93. package/lib/programmers/internal/prune_object_properties.js.map +1 -1
  94. package/lib/programmers/internal/random_custom.js +8 -14
  95. package/lib/programmers/internal/random_custom.js.map +1 -1
  96. package/lib/programmers/internal/stringify_dynamic_properties.js +4 -1
  97. package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
  98. package/lib/programmers/internal/stringify_regular_properties.js +4 -4
  99. package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
  100. package/lib/programmers/internal/template_to_pattern.js +10 -5
  101. package/lib/programmers/internal/template_to_pattern.js.map +1 -1
  102. package/lib/programmers/internal/wrap_metadata_rest_tuple.d.ts +1 -2
  103. package/lib/programmers/internal/wrap_metadata_rest_tuple.js +3 -0
  104. package/lib/programmers/internal/wrap_metadata_rest_tuple.js.map +1 -1
  105. package/lib/programmers/json/JsonStringifyProgrammer.js +154 -91
  106. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  107. package/lib/programmers/misc/MiscCloneProgrammer.js +221 -154
  108. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  109. package/lib/programmers/misc/MiscPruneProgrammer.js +139 -89
  110. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  111. package/lib/programmers/notations/NotationGeneralProgrammer.d.ts +4 -1
  112. package/lib/programmers/notations/NotationGeneralProgrammer.js +257 -148
  113. package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
  114. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +32 -24
  115. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  116. package/lib/utils/NamingConvention/NamingConvention.js +41 -47
  117. package/lib/utils/NamingConvention/NamingConvention.js.map +1 -1
  118. package/package.json +1 -1
  119. package/src/programmers/AssertProgrammer.ts +44 -37
  120. package/src/programmers/CheckerProgrammer.ts +394 -358
  121. package/src/programmers/FeatureProgrammer.ts +327 -267
  122. package/src/programmers/IsProgrammer.ts +93 -76
  123. package/src/programmers/RandomProgrammer.ts +18 -9
  124. package/src/programmers/TypiaProgrammer.ts +48 -34
  125. package/src/programmers/ValidateProgrammer.ts +56 -29
  126. package/src/programmers/helpers/CloneJoiner.ts +4 -1
  127. package/src/programmers/helpers/NotationJoiner.ts +85 -83
  128. package/src/programmers/helpers/ProtobufUtil.ts +2 -2
  129. package/src/programmers/helpers/PruneJoiner.ts +4 -1
  130. package/src/programmers/helpers/RandomJoiner.ts +5 -2
  131. package/src/programmers/helpers/RandomRanger.ts +8 -1
  132. package/src/programmers/helpers/StringifyJoinder.ts +4 -1
  133. package/src/programmers/helpers/StringifyPredicator.ts +4 -3
  134. package/src/programmers/helpers/UnionExplorer.ts +277 -179
  135. package/src/programmers/helpers/UnionPredicator.ts +5 -5
  136. package/src/programmers/http/HttpFormDataProgrammer.ts +135 -114
  137. package/src/programmers/http/HttpHeadersProgrammer.ts +145 -120
  138. package/src/programmers/http/HttpQueryProgrammer.ts +137 -116
  139. package/src/programmers/internal/application_escaped.ts +6 -6
  140. package/src/programmers/internal/application_templates.ts +8 -6
  141. package/src/programmers/internal/application_union_discriminator.ts +6 -6
  142. package/src/programmers/internal/application_v30_object.ts +6 -3
  143. package/src/programmers/internal/application_v31_object.ts +4 -1
  144. package/src/programmers/internal/application_v31_tuple.ts +1 -1
  145. package/src/programmers/internal/check_array_length.ts +31 -30
  146. package/src/programmers/internal/check_bigint.ts +31 -31
  147. package/src/programmers/internal/check_dynamic_key.ts +155 -126
  148. package/src/programmers/internal/check_dynamic_properties.ts +152 -154
  149. package/src/programmers/internal/check_native.ts +11 -5
  150. package/src/programmers/internal/check_number.ts +88 -84
  151. package/src/programmers/internal/check_object.ts +45 -31
  152. package/src/programmers/internal/check_string.ts +31 -30
  153. package/src/programmers/internal/check_template.ts +34 -32
  154. package/src/programmers/internal/check_union_array_like.ts +245 -228
  155. package/src/programmers/internal/decode_union_object.ts +92 -75
  156. package/src/programmers/internal/feature_object_entries.ts +36 -36
  157. package/src/programmers/internal/llm_schema_escaped.ts +36 -13
  158. package/src/programmers/internal/llm_schema_object.ts +4 -1
  159. package/src/programmers/internal/metadata_to_pattern.ts +31 -23
  160. package/src/programmers/internal/postfix_of_tuple.ts +3 -0
  161. package/src/programmers/internal/prune_object_properties.ts +6 -3
  162. package/src/programmers/internal/random_custom.ts +24 -23
  163. package/src/programmers/internal/stringify_dynamic_properties.ts +4 -1
  164. package/src/programmers/internal/stringify_regular_properties.ts +7 -7
  165. package/src/programmers/internal/template_to_pattern.ts +12 -4
  166. package/src/programmers/internal/wrap_metadata_rest_tuple.ts +3 -0
  167. package/src/programmers/json/JsonStringifyProgrammer.ts +151 -104
  168. package/src/programmers/misc/MiscCloneProgrammer.ts +255 -204
  169. package/src/programmers/misc/MiscPruneProgrammer.ts +149 -116
  170. package/src/programmers/notations/NotationGeneralProgrammer.ts +307 -211
  171. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +25 -21
  172. package/src/utils/NamingConvention/NamingConvention.ts +40 -42
@@ -50,101 +50,99 @@ var check_everything_1 = require("./check_everything");
50
50
  * @internal
51
51
  */
52
52
  var check_dynamic_properties = function (props) {
53
- return function (project) {
54
- return function (importer) {
55
- return function (input, regular, dynamic) {
56
- var length = IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [input]))("length");
57
- var left = props.equals === true && dynamic.length === 0
58
- ? props.undefined === true || regular.every(function (r) { return r.meta.isRequired(); })
59
- ? typescript_1.default.factory.createStrictEquality(ExpressionFactory_1.ExpressionFactory.number(regular.filter(function (r) { return r.meta.isRequired(); }).length), length)
60
- : typescript_1.default.factory.createCallExpression(importer.use("is_between"), [], [
61
- length,
62
- ExpressionFactory_1.ExpressionFactory.number(regular.filter(function (r) { return r.meta.isRequired(); }).length),
63
- ExpressionFactory_1.ExpressionFactory.number(regular.length),
64
- ])
65
- : null;
66
- if (props.undefined === false &&
67
- left !== null &&
68
- regular.every(function (r) { return r.meta.isRequired(); }))
69
- return left;
70
- var criteria = props.entries
71
- ? typescript_1.default.factory.createCallExpression(props.entries, undefined, [
72
- typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [input]),
73
- check_dynamic_property(props)(project)(importer)(input, regular, dynamic),
74
- ])
75
- : typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [input]))(props.assert ? "every" : "map"), undefined, [
76
- check_dynamic_property(props)(project)(importer)(input, regular, dynamic),
77
- ]);
78
- var right = (props.halt || (function (elem) { return elem; }))(props.assert ? criteria : (0, check_everything_1.check_everything)(criteria));
79
- return left
80
- ? (props.undefined
81
- ? typescript_1.default.factory.createLogicalOr
82
- : typescript_1.default.factory.createLogicalAnd)(left, right)
83
- : right;
84
- };
85
- };
86
- };
53
+ var length = IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [props.input]))("length");
54
+ var left = props.config.equals === true && props.dynamic.length === 0
55
+ ? props.config.undefined === true ||
56
+ props.regular.every(function (r) { return r.meta.isRequired(); })
57
+ ? typescript_1.default.factory.createStrictEquality(ExpressionFactory_1.ExpressionFactory.number(props.regular.filter(function (r) { return r.meta.isRequired(); }).length), length)
58
+ : typescript_1.default.factory.createCallExpression(props.importer.use("is_between"), [], [
59
+ length,
60
+ ExpressionFactory_1.ExpressionFactory.number(props.regular.filter(function (r) { return r.meta.isRequired(); }).length),
61
+ ExpressionFactory_1.ExpressionFactory.number(props.regular.length),
62
+ ])
63
+ : null;
64
+ if (left !== null &&
65
+ props.config.undefined === false &&
66
+ props.regular.every(function (r) { return r.meta.isRequired(); }))
67
+ return left;
68
+ var criteria = props.config.entries
69
+ ? typescript_1.default.factory.createCallExpression(props.config.entries, undefined, [
70
+ typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [props.input]),
71
+ check_dynamic_property(props),
72
+ ])
73
+ : typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [props.input]))(props.config.assert ? "every" : "map"), undefined, [check_dynamic_property(props)]);
74
+ var right = (props.config.halt || (function (elem) { return elem; }))(props.config.assert ? criteria : (0, check_everything_1.check_everything)(criteria));
75
+ return left
76
+ ? (props.config.undefined
77
+ ? typescript_1.default.factory.createLogicalOr
78
+ : typescript_1.default.factory.createLogicalAnd)(left, right)
79
+ : right;
87
80
  };
88
81
  exports.check_dynamic_properties = check_dynamic_properties;
82
+ /**
83
+ * @internal
84
+ */
89
85
  var check_dynamic_property = function (props) {
90
- return function (project) {
91
- return function (importer) {
92
- return function (input, regular, dynamic) {
93
- var e_1, _a;
94
- //----
95
- // IF CONDITIONS
96
- //----
97
- // PREPARE ASSETS
98
- var key = typescript_1.default.factory.createIdentifier("key");
99
- var value = typescript_1.default.factory.createIdentifier("value");
100
- var statements = [];
101
- var add = function (exp, output) {
102
- return statements.push(typescript_1.default.factory.createIfStatement(exp, typescript_1.default.factory.createReturnStatement(output)));
103
- };
104
- var broken = { value: false };
105
- // GATHER CONDITIONS
106
- if (regular.length)
107
- add(is_regular_property(regular), props.positive);
108
- statements.push(StatementFactory_1.StatementFactory.constant("value", typescript_1.default.factory.createElementAccessExpression(input, key)));
109
- if (props.undefined === true)
110
- add(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createIdentifier("undefined"), value), props.positive);
111
- try {
112
- for (var dynamic_1 = __values(dynamic), dynamic_1_1 = dynamic_1.next(); !dynamic_1_1.done; dynamic_1_1 = dynamic_1.next()) {
113
- var entry = dynamic_1_1.value;
114
- var condition = (0, check_dynamic_key_1.check_dynamic_key)(project)(importer)(key, entry.key);
115
- if (condition.kind === typescript_1.default.SyntaxKind.TrueKeyword) {
116
- statements.push(typescript_1.default.factory.createReturnStatement(entry.expression));
117
- broken.value = true;
118
- break;
119
- }
120
- else
121
- add(condition, entry.expression);
122
- }
123
- }
124
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
125
- finally {
126
- try {
127
- if (dynamic_1_1 && !dynamic_1_1.done && (_a = dynamic_1.return)) _a.call(dynamic_1);
128
- }
129
- finally { if (e_1) throw e_1.error; }
130
- }
131
- //----
132
- // FUNCTION BODY
133
- //----
134
- // CLOSURE BLOCK
135
- var block = typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(statements), false), __read((broken.value
136
- ? []
137
- : [
138
- typescript_1.default.factory.createReturnStatement(props.equals === true
139
- ? props.superfluous(value)
140
- : props.positive),
141
- ])), false), true);
142
- // RETURNS
143
- return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("key")], undefined, undefined, block);
144
- };
145
- };
86
+ var e_1, _a;
87
+ //----
88
+ // IF CONDITIONS
89
+ //----
90
+ // PREPARE ASSETS
91
+ var key = typescript_1.default.factory.createIdentifier("key");
92
+ var value = typescript_1.default.factory.createIdentifier("value");
93
+ var statements = [];
94
+ var add = function (expression, output) {
95
+ return statements.push(typescript_1.default.factory.createIfStatement(expression, typescript_1.default.factory.createReturnStatement(output)));
146
96
  };
97
+ var broken = { value: false };
98
+ // GATHER CONDITIONS
99
+ if (props.regular.length)
100
+ add(is_regular_property(props.regular), props.config.positive);
101
+ statements.push(StatementFactory_1.StatementFactory.constant("value", typescript_1.default.factory.createElementAccessExpression(props.input, key)));
102
+ if (props.config.undefined === true)
103
+ add(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createIdentifier("undefined"), value), props.config.positive);
104
+ try {
105
+ for (var _b = __values(props.dynamic), _c = _b.next(); !_c.done; _c = _b.next()) {
106
+ var entry = _c.value;
107
+ var condition = (0, check_dynamic_key_1.check_dynamic_key)({
108
+ context: props.context,
109
+ importer: props.importer,
110
+ metadata: entry.key,
111
+ input: key,
112
+ });
113
+ if (condition.kind === typescript_1.default.SyntaxKind.TrueKeyword) {
114
+ statements.push(typescript_1.default.factory.createReturnStatement(entry.expression));
115
+ broken.value = true;
116
+ break;
117
+ }
118
+ else
119
+ add(condition, entry.expression);
120
+ }
121
+ }
122
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
123
+ finally {
124
+ try {
125
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
126
+ }
127
+ finally { if (e_1) throw e_1.error; }
128
+ }
129
+ //----
130
+ // FUNCTION BODY
131
+ //----
132
+ // CLOSURE BLOCK
133
+ var block = typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(statements), false), __read((broken.value
134
+ ? []
135
+ : [
136
+ typescript_1.default.factory.createReturnStatement(props.config.equals === true
137
+ ? props.config.superfluous(value)
138
+ : props.config.positive),
139
+ ])), false), true);
140
+ // RETURNS
141
+ return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("key")], undefined, undefined, block);
147
142
  };
143
+ /**
144
+ * @internal
145
+ */
148
146
  var is_regular_property = function (regular) {
149
147
  return typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createArrayLiteralExpression(regular.map(function (entry) {
150
148
  return typescript_1.default.factory.createStringLiteral(entry.key.getSoleLiteral());
@@ -1 +1 @@
1
- {"version":3,"file":"check_dynamic_properties.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_dynamic_properties.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,uEAAsE;AACtE,qEAAoE;AAMpE,yDAAwD;AACxD,uDAAsD;AAGtD;;GAEG;AACI,IAAM,wBAAwB,GACnC,UAAC,KAA0B;IAC3B,OAAA,UAAC,OAAsB;QACvB,OAAA,UAAC,QAA0B;YAC3B,OAAA,UACE,KAAoB,EACpB,OAA0C,EAC1C,OAA0C;gBAE1C,IAAM,MAAM,GAAG,qCAAiB,CAAC,MAAM,CACrC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,CACR,CACF,CAAC,QAAQ,CAAC,CAAC;gBACZ,IAAM,IAAI,GACR,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBAC3C,CAAC,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAnB,CAAmB,CAAC;wBACrE,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,OAAO,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAnB,CAAmB,CAAC,CAAC,MAAM,CAClD,EACD,MAAM,CACP;wBACH,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAC1B,EAAE,EACF;4BACE,MAAM;4BACN,qCAAiB,CAAC,MAAM,CACtB,OAAO,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAnB,CAAmB,CAAC,CAAC,MAAM,CAClD;4BACD,qCAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;yBACzC,CACF;oBACL,CAAC,CAAC,IAAI,CAAC;gBACX,IACE,KAAK,CAAC,SAAS,KAAK,KAAK;oBACzB,IAAI,KAAK,IAAI;oBACb,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAnB,CAAmB,CAAC;oBAEzC,OAAO,IAAI,CAAC;gBAEd,IAAM,QAAQ,GAAG,KAAK,CAAC,OAAO;oBAC5B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE;wBACxD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,CACR;wBACD,sBAAsB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAC9C,KAAK,EACL,OAAO,EACP,OAAO,CACR;qBACF,CAAC;oBACJ,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,CACR,CACF,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EACjC,SAAS,EACT;wBACE,sBAAsB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAC9C,KAAK,EACL,OAAO,EACP,OAAO,CACR;qBACF,CACF,CAAC;gBACN,IAAM,KAAK,GAAkB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,EAAJ,CAAI,CAAC,CAAC,CAC3D,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAA,mCAAgB,EAAC,QAAQ,CAAC,CACrD,CAAC;gBACF,OAAO,IAAI;oBACT,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS;wBACd,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe;wBAC5B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC;oBAC/C,CAAC,CAAC,KAAK,CAAC;YACZ,CAAC;QA9ED,CA8EC;IA/ED,CA+EC;AAhFD,CAgFC,CAAC;AAlFS,QAAA,wBAAwB,4BAkFjC;AAEJ,IAAM,sBAAsB,GAC1B,UAAC,KAA0B;IAC3B,OAAA,UAAC,OAAsB;QACvB,OAAA,UAAC,QAA0B;YAC3B,OAAA,UACE,KAAoB,EACpB,OAA0C,EAC1C,OAA0C;;gBAE1C,MAAM;gBACN,gBAAgB;gBAChB,MAAM;gBACN,iBAAiB;gBACjB,IAAM,GAAG,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBAC/C,IAAM,KAAK,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBAEnD,IAAM,UAAU,GAAmB,EAAE,CAAC;gBACtC,IAAM,GAAG,GAAG,UAAC,GAAkB,EAAE,MAAqB;oBACpD,OAAA,UAAU,CAAC,IAAI,CACb,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAC1B,GAAG,EACH,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,CACzC,CACF;gBALD,CAKC,CAAC;gBACJ,IAAM,MAAM,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;gBAEhC,oBAAoB;gBACpB,IAAI,OAAO,CAAC,MAAM;oBAAE,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACtE,UAAU,CAAC,IAAI,CACb,mCAAgB,CAAC,QAAQ,CACvB,OAAO,EACP,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,GAAG,CAAC,CACrD,CACF,CAAC;gBACF,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI;oBAC1B,GAAG,CACD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,KAAK,CACN,EACD,KAAK,CAAC,QAAQ,CACf,CAAC;;oBAEJ,KAAoB,IAAA,YAAA,SAAA,OAAO,CAAA,gCAAA,qDAAE,CAAC;wBAAzB,IAAM,KAAK,oBAAA;wBACd,IAAM,SAAS,GAAkB,IAAA,qCAAiB,EAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CACnE,GAAG,EACH,KAAK,CAAC,GAAG,CACV,CAAC;wBACF,IAAI,SAAS,CAAC,IAAI,KAAK,oBAAE,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;4BACjD,UAAU,CAAC,IAAI,CAAC,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;4BACpE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;4BACpB,MAAM;wBACR,CAAC;;4BAAM,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;oBAC1C,CAAC;;;;;;;;;gBAED,MAAM;gBACN,gBAAgB;gBAChB,MAAM;gBACN,gBAAgB;gBAChB,IAAM,KAAK,GAAa,oBAAE,CAAC,OAAO,CAAC,WAAW,wCAEvC,UAAU,kBACV,CAAC,MAAM,CAAC,KAAK;oBACd,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC;wBACE,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,KAAK,CAAC,MAAM,KAAK,IAAI;4BACnB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;4BAC1B,CAAC,CAAC,KAAK,CAAC,QAAQ,CACnB;qBACF,CAAC,WAER,IAAI,CACL,CAAC;gBAEF,UAAU;gBACV,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CACnC,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EACpC,SAAS,EACT,SAAS,EACT,KAAK,CACN,CAAC;YACJ,CAAC;QAhFD,CAgFC;IAjFD,CAiFC;AAlFD,CAkFC,CAAC;AAEJ,IAAM,mBAAmB,GAAG,UAAC,OAA2B;IACtD,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CACrC,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK;QAChB,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAG,CAAC;IAA3D,CAA2D,CAC5D,CACF,CACF,CAAC,MAAM,CAAC,EACT,SAAS,EACT;QACE,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EACrC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAClC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CACpC,CACF;KACF,CACF;AAtBD,CAsBC,CAAC"}
1
+ {"version":3,"file":"check_dynamic_properties.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_dynamic_properties.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,uEAAsE;AACtE,qEAAoE;AAMpE,yDAAwD;AACxD,uDAAsD;AAGtD;;GAEG;AACI,IAAM,wBAAwB,GAAG,UAAC,KAOxC;IACC,IAAM,MAAM,GAAG,qCAAiB,CAAC,MAAM,CACrC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,KAAK,CAAC,CACd,CACF,CAAC,QAAQ,CAAC,CAAC;IACZ,IAAM,IAAI,GACR,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QACxD,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI;YAC/B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAnB,CAAmB,CAAC;YAC/C,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAnB,CAAmB,CAAC,CAAC,MAAM,CACxD,EACD,MAAM,CACP;YACH,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAChC,EAAE,EACF;gBACE,MAAM;gBACN,qCAAiB,CAAC,MAAM,CACtB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAnB,CAAmB,CAAC,CAAC,MAAM,CACxD;gBACD,qCAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;aAC/C,CACF;QACL,CAAC,CAAC,IAAI,CAAC;IACX,IACE,IAAI,KAAK,IAAI;QACb,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,KAAK;QAChC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAnB,CAAmB,CAAC;QAE/C,OAAO,IAAI,CAAC;IAEd,IAAM,QAAQ,GAAsB,KAAK,CAAC,MAAM,CAAC,OAAO;QACtD,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE;YAC/D,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,KAAK,CAAC,CACd;YACD,sBAAsB,CAAC,KAAK,CAAC;SAC9B,CAAC;QACJ,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,KAAK,CAAC,CACd,CACF,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,EACxC,SAAS,EACT,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAChC,CAAC;IACN,IAAM,KAAK,GAAkB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,EAAJ,CAAI,CAAC,CAAC,CAClE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAA,mCAAgB,EAAC,QAAQ,CAAC,CAC5D,CAAC;IACF,OAAO,IAAI;QACT,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS;YACrB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe;YAC5B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC;QAC/C,CAAC,CAAC,KAAK,CAAC;AACZ,CAAC,CAAC;AAxEW,QAAA,wBAAwB,4BAwEnC;AAEF;;GAEG;AACH,IAAM,sBAAsB,GAAG,UAAC,KAO/B;;IACC,MAAM;IACN,gBAAgB;IAChB,MAAM;IACN,iBAAiB;IACjB,IAAM,GAAG,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAM,KAAK,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAEnD,IAAM,UAAU,GAAmB,EAAE,CAAC;IACtC,IAAM,GAAG,GAAG,UAAC,UAAyB,EAAE,MAAqB;QAC3D,OAAA,UAAU,CAAC,IAAI,CACb,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAC1B,UAAU,EACV,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,CACzC,CACF;IALD,CAKC,CAAC;IACJ,IAAM,MAAM,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAEhC,oBAAoB;IACpB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM;QACtB,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjE,UAAU,CAAC,IAAI,CACb,mCAAgB,CAAC,QAAQ,CACvB,OAAO,EACP,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAC3D,CACF,CAAC;IACF,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI;QACjC,GAAG,CACD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,KAAK,CACN,EACD,KAAK,CAAC,MAAM,CAAC,QAAQ,CACtB,CAAC;;QAEJ,KAAoB,IAAA,KAAA,SAAA,KAAK,CAAC,OAAO,CAAA,gBAAA,4BAAE,CAAC;YAA/B,IAAM,KAAK,WAAA;YACd,IAAM,SAAS,GAAkB,IAAA,qCAAiB,EAAC;gBACjD,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,GAAG;gBACnB,KAAK,EAAE,GAAG;aACX,CAAC,CAAC;YACH,IAAI,SAAS,CAAC,IAAI,KAAK,oBAAE,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;gBACjD,UAAU,CAAC,IAAI,CAAC,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;gBACpE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;gBACpB,MAAM;YACR,CAAC;;gBAAM,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1C,CAAC;;;;;;;;;IAED,MAAM;IACN,gBAAgB;IAChB,MAAM;IACN,gBAAgB;IAChB,IAAM,KAAK,GAAa,oBAAE,CAAC,OAAO,CAAC,WAAW,wCAEvC,UAAU,kBACV,CAAC,MAAM,CAAC,KAAK;QACd,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC;YACE,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,IAAI;gBAC1B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC;gBACjC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAC1B;SACF,CAAC,WAER,IAAI,CACL,CAAC;IAEF,UAAU;IACV,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CACnC,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EACpC,SAAS,EACT,SAAS,EACT,KAAK,CACN,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,IAAM,mBAAmB,GAAG,UAAC,OAA2B;IACtD,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,qCAAiB,CAAC,MAAM,CACtB,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CACrC,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK;QAChB,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAG,CAAC;IAA3D,CAA2D,CAC5D,CACF,CACF,CAAC,MAAM,CAAC,EACT,SAAS,EACT;QACE,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EACrC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAClC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CACpC,CACF;KACF,CACF;AAtBD,CAsBC,CAAC"}
@@ -9,12 +9,15 @@ var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
9
9
  /**
10
10
  * @internal
11
11
  */
12
- var check_native = function (type) { return function (input) {
13
- var instanceOf = ExpressionFactory_1.ExpressionFactory.isInstanceOf(type)(input);
14
- return ATOMIC_LIKE.has(type)
15
- ? typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral(type.toLowerCase()), typescript_1.default.factory.createTypeOfExpression(input)), instanceOf)
12
+ var check_native = function (props) {
13
+ var instanceOf = ExpressionFactory_1.ExpressionFactory.isInstanceOf(props.type)(props.input);
14
+ return ATOMIC_LIKE.has(props.type)
15
+ ? typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral(props.type.toLowerCase()), typescript_1.default.factory.createTypeOfExpression(props.input)), instanceOf)
16
16
  : instanceOf;
17
- }; };
17
+ };
18
18
  exports.check_native = check_native;
19
+ /**
20
+ * @internal
21
+ */
19
22
  var ATOMIC_LIKE = new Set(["Boolean", "Number", "String"]);
20
23
  //# sourceMappingURL=check_native.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check_native.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_native.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAEtE;;GAEG;AACI,IAAM,YAAY,GAAG,UAAC,IAAY,IAAK,OAAA,UAAC,KAAoB;IACjE,IAAM,UAAU,GAAG,qCAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;IAC/D,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;QAC1B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAClD,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CACzC,EACD,UAAU,CACX;QACH,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC,EAX6C,CAW7C,CAAC;AAXW,QAAA,YAAY,gBAWvB;AAEF,IAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"check_native.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_native.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAEtE;;GAEG;AACI,IAAM,YAAY,GAAG,UAAC,KAG5B;IACC,IAAM,UAAU,GAAG,qCAAiB,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC3E,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QAChC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EACxD,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,CAC/C,EACD,UAAU,CACX;QACH,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC,CAAC;AAdW,QAAA,YAAY,gBAcvB;AAEF;;GAEG;AACH,IAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC"}
@@ -35,76 +35,70 @@ var OptionPredicator_1 = require("../helpers/OptionPredicator");
35
35
  /**
36
36
  * @internal
37
37
  */
38
- var check_number = function (project, numeric) {
39
- return function (atomic) {
40
- return function (input) {
41
- var base = typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("number"), typescript_1.default.factory.createTypeOfExpression(input));
42
- var addition = numeric === true
43
- ? OptionPredicator_1.OptionPredicator.finite(project.options)
44
- ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Number.isFinite"), undefined, [input])
45
- : OptionPredicator_1.OptionPredicator.numeric(project.options)
46
- ? typescript_1.default.factory.createLogicalNot(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Number.isNaN"), undefined, [input]))
47
- : null
48
- : null;
49
- var conditions = check_numeric_type_tags(project)(atomic)(addition)(input);
50
- return {
51
- expected: atomic.getName(),
52
- expression: addition !== null && conditions.length === 0
53
- ? typescript_1.default.factory.createLogicalAnd(base, addition)
54
- : base,
55
- conditions: conditions,
56
- };
57
- };
38
+ var check_number = function (props) {
39
+ var base = typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("number"), typescript_1.default.factory.createTypeOfExpression(props.input));
40
+ var addition = props.numeric === true
41
+ ? OptionPredicator_1.OptionPredicator.finite(props.context.options)
42
+ ? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Number.isFinite"), undefined, [props.input])
43
+ : OptionPredicator_1.OptionPredicator.numeric(props.context.options)
44
+ ? typescript_1.default.factory.createLogicalNot(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Number.isNaN"), undefined, [props.input]))
45
+ : null
46
+ : null;
47
+ var conditions = check_numeric_type_tags({
48
+ context: props.context,
49
+ atomic: props.atomic,
50
+ input: props.input,
51
+ addition: addition,
52
+ });
53
+ return {
54
+ expected: props.atomic.getName(),
55
+ expression: addition !== null && conditions.length === 0
56
+ ? typescript_1.default.factory.createLogicalAnd(base, addition)
57
+ : base,
58
+ conditions: conditions,
58
59
  };
59
60
  };
60
61
  exports.check_number = check_number;
61
62
  /**
62
63
  * @internal
63
64
  */
64
- var check_numeric_type_tags = function (project) {
65
- return function (atomic) {
66
- return function (addition) {
67
- return function (input) {
68
- return atomic.tags
69
- .map(function (row) { return row.filter(function (tag) { return !!tag.validate; }); })
70
- .filter(function (row) { return !!row.length; })
71
- .map(function (row) { return __spreadArray(__spreadArray([], __read((addition === null
72
- ? []
73
- : row.some(function (tag) {
74
- return tag.kind === "type" &&
75
- (tag.value === "int32" ||
76
- tag.value === "uint32" ||
77
- tag.value === "int64" ||
78
- tag.value === "uint64" ||
79
- tag.value === "float");
80
- }) ||
81
- row.some(function (tag) {
82
- return tag.kind === "multipleOf" && typeof tag.value === "number";
83
- }) ||
84
- (row.some(function (tag) {
85
- return (tag.kind === "minimum" || tag.kind === "exclusiveMinimum") &&
86
- typeof tag.value === "number";
87
- }) &&
88
- row.some(function (tag) {
89
- return (tag.kind === "maximum" ||
90
- tag.kind === "exclusiveMaximum") &&
91
- typeof tag.value === "number";
92
- }))
93
- ? []
94
- : [
95
- {
96
- expected: "number",
97
- expression: addition,
98
- },
99
- ])), false), __read(row.map(function (tag) {
100
- var _a;
101
- return ({
102
- expected: "number & ".concat(tag.name),
103
- expression: ((_a = tag.predicate) !== null && _a !== void 0 ? _a : ExpressionFactory_1.ExpressionFactory.transpile(project.transformer)(tag.validate))(input),
104
- });
105
- })), false); });
106
- };
107
- };
108
- };
65
+ var check_numeric_type_tags = function (props) {
66
+ return props.atomic.tags
67
+ .map(function (row) { return row.filter(function (tag) { return !!tag.validate; }); })
68
+ .filter(function (row) { return !!row.length; })
69
+ .map(function (row) { return __spreadArray(__spreadArray([], __read((props.addition === null
70
+ ? []
71
+ : row.some(function (tag) {
72
+ return tag.kind === "type" &&
73
+ (tag.value === "int32" ||
74
+ tag.value === "uint32" ||
75
+ tag.value === "int64" ||
76
+ tag.value === "uint64" ||
77
+ tag.value === "float");
78
+ }) ||
79
+ row.some(function (tag) {
80
+ return tag.kind === "multipleOf" && typeof tag.value === "number";
81
+ }) ||
82
+ (row.some(function (tag) {
83
+ return (tag.kind === "minimum" || tag.kind === "exclusiveMinimum") &&
84
+ typeof tag.value === "number";
85
+ }) &&
86
+ row.some(function (tag) {
87
+ return (tag.kind === "maximum" || tag.kind === "exclusiveMaximum") &&
88
+ typeof tag.value === "number";
89
+ }))
90
+ ? []
91
+ : [
92
+ {
93
+ expected: "number",
94
+ expression: props.addition,
95
+ },
96
+ ])), false), __read(row.map(function (tag) {
97
+ var _a;
98
+ return ({
99
+ expected: "number & ".concat(tag.name),
100
+ expression: ((_a = tag.predicate) !== null && _a !== void 0 ? _a : ExpressionFactory_1.ExpressionFactory.transpile(props.context.transformer)(tag.validate))(props.input),
101
+ });
102
+ })), false); });
109
103
  };
110
104
  //# sourceMappingURL=check_number.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check_number.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_number.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check_number.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_number.ts"],"names":[],"mappings":"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"}
@@ -10,31 +10,40 @@ var check_everything_1 = require("./check_everything");
10
10
  /**
11
11
  * @internal
12
12
  */
13
- var check_object = function (config) {
14
- return function (project) {
15
- return function (importer) {
16
- return function (props) {
17
- // PREPARE ASSETS
18
- var regular = props.entries.filter(function (entry) { return entry.key.isSoleLiteral(); });
19
- var dynamic = props.entries.filter(function (entry) { return !entry.key.isSoleLiteral(); });
20
- var flags = regular.map(function (entry) { return entry.expression; });
21
- // REGULAR WITHOUT DYNAMIC PROPERTIES
22
- if (config.equals === false && dynamic.length === 0)
23
- return regular.length === 0 ? config.positive : reduce(config)(flags);
24
- // CHECK DYNAMIC PROPERTIES
25
- flags.push((0, check_dynamic_properties_1.check_dynamic_properties)(config)(project)(importer)(props.input, regular, dynamic));
26
- return reduce(config)(flags);
27
- };
28
- };
29
- };
13
+ var check_object = function (props) {
14
+ // PREPARE ASSETS
15
+ var regular = props.entries.filter(function (entry) { return entry.key.isSoleLiteral(); });
16
+ var dynamic = props.entries.filter(function (entry) { return !entry.key.isSoleLiteral(); });
17
+ var flags = regular.map(function (entry) { return entry.expression; });
18
+ // REGULAR WITHOUT DYNAMIC PROPERTIES
19
+ if (props.config.equals === false && dynamic.length === 0)
20
+ return regular.length === 0
21
+ ? props.config.positive
22
+ : reduce({
23
+ config: props.config,
24
+ expressions: flags,
25
+ });
26
+ // CHECK DYNAMIC PROPERTIES
27
+ flags.push((0, check_dynamic_properties_1.check_dynamic_properties)({
28
+ config: props.config,
29
+ context: props.context,
30
+ importer: props.importer,
31
+ input: props.input,
32
+ regular: regular,
33
+ dynamic: dynamic,
34
+ }));
35
+ return reduce({
36
+ config: props.config,
37
+ expressions: flags,
38
+ });
30
39
  };
31
40
  exports.check_object = check_object;
32
41
  /**
33
42
  * @internal
34
43
  */
35
- var reduce = function (props) { return function (expressions) {
36
- return props.assert
37
- ? expressions.reduce(props.reduce)
38
- : (0, check_everything_1.check_everything)(typescript_1.default.factory.createArrayLiteralExpression(expressions));
39
- }; };
44
+ var reduce = function (props) {
45
+ return props.config.assert
46
+ ? props.expressions.reduce(props.config.reduce)
47
+ : (0, check_everything_1.check_everything)(typescript_1.default.factory.createArrayLiteralExpression(props.expressions));
48
+ };
40
49
  //# sourceMappingURL=check_object.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_object.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAM5B,uEAAsE;AACtE,uDAAsD;AAEtD;;GAEG;AACI,IAAM,YAAY,GACvB,UAAC,MAA2B;IAC5B,OAAA,UAAC,OAAsB;QACvB,OAAA,UAAC,QAA0B;YAC3B,OAAA,UAAC,KAGA;gBACC,iBAAiB;gBACjB,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAAzB,CAAyB,CAAC,CAAC;gBAC3E,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAA1B,CAA0B,CAAC,CAAC;gBAC5E,IAAM,KAAK,GAAoB,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,UAAU,EAAhB,CAAgB,CAAC,CAAC;gBAExE,qCAAqC;gBACrC,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;oBACjD,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;gBAExE,2BAA2B;gBAC3B,KAAK,CAAC,IAAI,CACR,IAAA,mDAAwB,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CACjD,KAAK,CAAC,KAAK,EACX,OAAO,EACP,OAAO,CACR,CACF,CAAC;gBACF,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;QAtBD,CAsBC;IAvBD,CAuBC;AAxBD,CAwBC,CAAC;AA1BS,QAAA,YAAY,gBA0BrB;AAkBJ;;GAEG;AACH,IAAM,MAAM,GACV,UAAC,KAA0B,IAAK,OAAA,UAAC,WAA4B;IAC3D,OAAA,KAAK,CAAC,MAAM;QACV,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAClC,CAAC,CAAC,IAAA,mCAAgB,EAAC,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,WAAW,CAAC,CAAC;AAF1E,CAE0E,EAH5C,CAG4C,CAAC"}
1
+ {"version":3,"file":"check_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_object.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAM5B,uEAAsE;AACtE,uDAAsD;AAEtD;;GAEG;AACI,IAAM,YAAY,GAAG,UAAC,KAM5B;IACC,iBAAiB;IACjB,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAAzB,CAAyB,CAAC,CAAC;IAC3E,IAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAA1B,CAA0B,CAAC,CAAC;IAC5E,IAAM,KAAK,GAAoB,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,UAAU,EAAhB,CAAgB,CAAC,CAAC;IAExE,qCAAqC;IACrC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QACvD,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC;YACzB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ;YACvB,CAAC,CAAC,MAAM,CAAC;gBACL,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;IAET,2BAA2B;IAC3B,KAAK,CAAC,IAAI,CACR,IAAA,mDAAwB,EAAC;QACvB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,OAAO,SAAA;QACP,OAAO,SAAA;KACR,CAAC,CACH,CAAC;IACF,OAAO,MAAM,CAAC;QACZ,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,WAAW,EAAE,KAAK;KACnB,CAAC,CAAC;AACL,CAAC,CAAC;AApCW,QAAA,YAAY,gBAoCvB;AAkBF;;GAEG;AACH,IAAM,MAAM,GAAG,UAAC,KAGf;IACC,OAAA,KAAK,CAAC,MAAM,CAAC,MAAM;QACjB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAC/C,CAAC,CAAC,IAAA,mCAAgB,EACd,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,KAAK,CAAC,WAAW,CAAC,CAC3D;AAJL,CAIK,CAAC"}
@@ -9,38 +9,30 @@ var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
9
9
  /**
10
10
  * @internal
11
11
  */
12
- var check_string = function (project) {
13
- return function (atomic) {
14
- return function (input) {
15
- var conditions = check_string_type_tags(project)(atomic)(input);
16
- return {
17
- expected: atomic.getName(),
18
- expression: typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("string"), typescript_1.default.factory.createTypeOfExpression(input)),
19
- conditions: conditions,
20
- };
21
- };
12
+ var check_string = function (props) {
13
+ var conditions = check_string_type_tags(props);
14
+ return {
15
+ expected: props.atomic.getName(),
16
+ expression: typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("string"), typescript_1.default.factory.createTypeOfExpression(props.input)),
17
+ conditions: conditions,
22
18
  };
23
19
  };
24
20
  exports.check_string = check_string;
25
21
  /**
26
22
  * @internal
27
23
  */
28
- var check_string_type_tags = function (project) {
29
- return function (atomic) {
30
- return function (input) {
31
- return atomic.tags
32
- .map(function (row) { return row.filter(function (tag) { return !!tag.validate; }); })
33
- .filter(function (row) { return !!row.length; })
34
- .map(function (row) {
35
- return row.map(function (tag) {
36
- var _a;
37
- return ({
38
- expected: "string & ".concat(tag.name),
39
- expression: ((_a = tag.predicate) !== null && _a !== void 0 ? _a : ExpressionFactory_1.ExpressionFactory.transpile(project.transformer)(tag.validate))(input),
40
- });
41
- });
24
+ var check_string_type_tags = function (props) {
25
+ return props.atomic.tags
26
+ .map(function (row) { return row.filter(function (tag) { return !!tag.validate; }); })
27
+ .filter(function (row) { return !!row.length; })
28
+ .map(function (row) {
29
+ return row.map(function (tag) {
30
+ var _a;
31
+ return ({
32
+ expected: "string & ".concat(tag.name),
33
+ expression: ((_a = tag.predicate) !== null && _a !== void 0 ? _a : ExpressionFactory_1.ExpressionFactory.transpile(props.context.transformer)(tag.validate))(props.input),
42
34
  });
43
- };
44
- };
35
+ });
36
+ });
45
37
  };
46
38
  //# sourceMappingURL=check_string.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check_string.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_string.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAQtE;;GAEG;AACI,IAAM,YAAY,GACvB,UAAC,OAAsB;IACvB,OAAA,UAAC,MAAsB;QACvB,OAAA,UAAC,KAAoB;YACnB,IAAM,UAAU,GACd,sBAAsB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;YACjD,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE;gBAC1B,UAAU,EAAE,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CACzC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EACxC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CACzC;gBACD,UAAU,YAAA;aACX,CAAC;QACJ,CAAC;IAXD,CAWC;AAZD,CAYC,CAAC;AAdS,QAAA,YAAY,gBAcrB;AAEJ;;GAEG;AACH,IAAM,sBAAsB,GAC1B,UAAC,OAAsB;IACvB,OAAA,UAAC,MAAsB;QACvB,OAAA,UAAC,KAAoB;YACnB,OAAA,MAAM,CAAC,IAAI;iBACR,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAd,CAAc,CAAC,EAAnC,CAAmC,CAAC;iBACjD,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,MAAM,EAAZ,CAAY,CAAC;iBAC7B,GAAG,CAAC,UAAC,GAAG;gBACP,OAAA,GAAG,CAAC,GAAG,CAAC,UAAC,GAAG;;oBAAK,OAAA,CAAC;wBAChB,QAAQ,EAAE,mBAAY,GAAG,CAAC,IAAI,CAAE;wBAChC,UAAU,EAAE,CACV,MAAA,GAAG,CAAC,SAAS,mCACb,qCAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,QAAS,CAAC,CAChE,CAAC,KAAK,CAAC;qBACT,CAAC,CAAA;iBAAA,CAAC;YANH,CAMG,CACJ;QAXH,CAWG;IAZL,CAYK;AAbL,CAaK,CAAC"}
1
+ {"version":3,"file":"check_string.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_string.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAQtE;;GAEG;AACI,IAAM,YAAY,GAAG,UAAC,KAI5B;IACC,IAAM,UAAU,GAA+B,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC7E,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;QAChC,UAAU,EAAE,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CACzC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EACxC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,CAC/C;QACD,UAAU,YAAA;KACX,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,YAAY,gBAcvB;AAEF;;GAEG;AACH,IAAM,sBAAsB,GAAG,UAAC,KAI/B;IACC,OAAA,KAAK,CAAC,MAAM,CAAC,IAAI;SACd,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAd,CAAc,CAAC,EAAnC,CAAmC,CAAC;SACjD,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,MAAM,EAAZ,CAAY,CAAC;SAC7B,GAAG,CAAC,UAAC,GAAG;QACP,OAAA,GAAG,CAAC,GAAG,CAAC,UAAC,GAAG;;YAAK,OAAA,CAAC;gBAChB,QAAQ,EAAE,mBAAY,GAAG,CAAC,IAAI,CAAE;gBAChC,UAAU,EAAE,CACV,MAAA,GAAG,CAAC,SAAS,mCACb,qCAAiB,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,QAAS,CAAC,CACtE,CAAC,KAAK,CAAC,KAAK,CAAC;aACf,CAAC,CAAA;SAAA,CAAC;IANH,CAMG,CACJ;AAXH,CAWG,CAAC"}
@@ -9,27 +9,26 @@ var template_to_pattern_1 = require("./template_to_pattern");
9
9
  /**
10
10
  * @internal
11
11
  */
12
- var check_template = function (templates) {
13
- return function (input) {
14
- // TYPEOF STRING & TAGS
15
- var conditions = [
16
- typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("string"), typescript_1.default.factory.createTypeOfExpression(input)),
17
- ];
18
- // TEMPLATES
19
- var internal = templates.map(function (tpl) {
20
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("RegExp(/".concat((0, template_to_pattern_1.template_to_pattern)(true)(tpl.row), "/).test")), undefined, [input]);
21
- });
22
- conditions.push(internal.length === 1
23
- ? internal[0]
24
- : internal.reduce(function (x, y) { return typescript_1.default.factory.createLogicalOr(x, y); }));
25
- // COMBINATION
26
- return {
27
- expression: conditions.reduce(function (x, y) {
28
- return typescript_1.default.factory.createLogicalAnd(x, y);
29
- }),
30
- conditions: [],
31
- expected: templates.map(function (tpl) { return tpl.getName(); }).join(" | "),
32
- };
12
+ var check_template = function (props) {
13
+ // TYPEOF STRING & TAGS
14
+ var conditions = [
15
+ typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("string"), typescript_1.default.factory.createTypeOfExpression(props.input)),
16
+ ];
17
+ // TEMPLATES
18
+ var internal = props.templates.map(function (tpl) {
19
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("RegExp(/".concat((0, template_to_pattern_1.template_to_pattern)({
20
+ top: true,
21
+ template: tpl.row,
22
+ }), "/).test")), undefined, [props.input]);
23
+ });
24
+ conditions.push(internal.length === 1
25
+ ? internal[0]
26
+ : internal.reduce(function (x, y) { return typescript_1.default.factory.createLogicalOr(x, y); }));
27
+ // COMBINATION
28
+ return {
29
+ expression: conditions.reduce(function (x, y) { return typescript_1.default.factory.createLogicalAnd(x, y); }),
30
+ conditions: [],
31
+ expected: props.templates.map(function (tpl) { return tpl.getName(); }).join(" | "),
33
32
  };
34
33
  };
35
34
  exports.check_template = check_template;