typia 3.4.26 → 3.4.28

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 (30) hide show
  1. package/lib/factories/internal/metadata/iterate_metadata_native.js +0 -3
  2. package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
  3. package/lib/programmers/AssertProgrammer.js +71 -79
  4. package/lib/programmers/AssertProgrammer.js.map +1 -1
  5. package/lib/programmers/CheckerProgrammer.js +21 -16
  6. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  7. package/lib/programmers/StringifyProgrammer.js +24 -17
  8. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  9. package/lib/programmers/ValidateProgrammer.js +60 -68
  10. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  11. package/lib/programmers/helpers/AtomicPredicator.d.ts +2 -0
  12. package/lib/programmers/helpers/AtomicPredicator.js +9 -1
  13. package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
  14. package/lib/programmers/internal/application_schema.js +18 -7
  15. package/lib/programmers/internal/application_schema.js.map +1 -1
  16. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  17. package/lib/programmers/internal/check_native.js +9 -1
  18. package/lib/programmers/internal/check_native.js.map +1 -1
  19. package/lib/transformers/ITransformOptions.d.ts +4 -0
  20. package/package.json +3 -2
  21. package/src/factories/internal/metadata/iterate_metadata_native.ts +0 -5
  22. package/src/programmers/AssertProgrammer.ts +30 -36
  23. package/src/programmers/CheckerProgrammer.ts +16 -11
  24. package/src/programmers/StringifyProgrammer.ts +40 -27
  25. package/src/programmers/ValidateProgrammer.ts +30 -36
  26. package/src/programmers/helpers/AtomicPredicator.ts +17 -1
  27. package/src/programmers/internal/application_schema.ts +30 -20
  28. package/src/programmers/internal/check_dynamic_properties.ts +1 -0
  29. package/src/programmers/internal/check_native.ts +14 -2
  30. package/src/transformers/ITransformOptions.ts +4 -0
@@ -51,8 +51,8 @@ var ValidateProgrammer;
51
51
  trace: true,
52
52
  numeric: OptionPredicator_1.OptionPredicator.numeric(project.options),
53
53
  equals: equals,
54
- combiner: combine(project.options)(equals)(importer),
55
- joiner: joiner(project.options)(equals)(importer),
54
+ combiner: combine(equals)(importer),
55
+ joiner: joiner(equals)(importer),
56
56
  success: typescript_1.default.factory.createTrue(),
57
57
  }, importer)(type);
58
58
  return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("input")], undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([
@@ -70,75 +70,67 @@ var ValidateProgrammer;
70
70
  };
71
71
  };
72
72
  })(ValidateProgrammer = exports.ValidateProgrammer || (exports.ValidateProgrammer = {}));
73
- var combine = function (options) {
74
- return function (equals) {
75
- return function (importer) {
76
- return function (explore) {
77
- if (explore.tracable === false)
78
- return IsProgrammer_1.IsProgrammer.CONFIG({
79
- object: validate_object(options)(equals)(importer),
80
- numeric: true,
81
- })(importer).combiner(explore);
82
- var path = explore.postfix
83
- ? "path + ".concat(explore.postfix)
84
- : "path";
85
- return function (logic) { return function (input, binaries, expected) {
86
- return logic === "and"
87
- ? binaries
88
- .map(function (binary) {
89
- return binary.combined
90
- ? binary.expression
91
- : typescript_1.default.factory.createLogicalOr(binary.expression, create_report_call(explore.source === "top"
92
- ? typescript_1.default.factory.createTrue()
93
- : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
94
- })
95
- .reduce(typescript_1.default.factory.createLogicalAnd)
96
- : typescript_1.default.factory.createLogicalOr(binaries
97
- .map(function (binary) { return binary.expression; })
98
- .reduce(typescript_1.default.factory.createLogicalOr), create_report_call(explore.source === "top"
99
- ? typescript_1.default.factory.createTrue()
100
- : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
101
- }; };
102
- };
73
+ var combine = function (equals) {
74
+ return function (importer) {
75
+ return function (explore) {
76
+ if (explore.tracable === false)
77
+ return IsProgrammer_1.IsProgrammer.CONFIG({
78
+ object: validate_object(equals)(importer),
79
+ numeric: true,
80
+ })(importer).combiner(explore);
81
+ var path = explore.postfix
82
+ ? "path + ".concat(explore.postfix)
83
+ : "path";
84
+ return function (logic) { return function (input, binaries, expected) {
85
+ return logic === "and"
86
+ ? binaries
87
+ .map(function (binary) {
88
+ return binary.combined
89
+ ? binary.expression
90
+ : typescript_1.default.factory.createLogicalOr(binary.expression, create_report_call(explore.source === "top"
91
+ ? typescript_1.default.factory.createTrue()
92
+ : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
93
+ })
94
+ .reduce(typescript_1.default.factory.createLogicalAnd)
95
+ : typescript_1.default.factory.createLogicalOr(binaries
96
+ .map(function (binary) { return binary.expression; })
97
+ .reduce(typescript_1.default.factory.createLogicalOr), create_report_call(explore.source === "top"
98
+ ? typescript_1.default.factory.createTrue()
99
+ : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
100
+ }; };
103
101
  };
104
102
  };
105
103
  };
106
- var validate_object = function (options) {
107
- return function (equals) {
108
- return function (importer) {
109
- return (0, check_object_1.check_object)({
110
- equals: equals,
111
- undefined: OptionPredicator_1.OptionPredicator.undefined(options),
112
- assert: false,
113
- reduce: typescript_1.default.factory.createLogicalAnd,
114
- positive: typescript_1.default.factory.createTrue(),
115
- superfluous: function (value) {
116
- return create_report_call()(typescript_1.default.factory.createAdd(typescript_1.default.factory.createIdentifier("path"), typescript_1.default.factory.createCallExpression(importer.use("join"), undefined, [typescript_1.default.factory.createIdentifier("key")])), "undefined", value);
117
- },
118
- halt: function (expr) {
119
- return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createFalse(), typescript_1.default.factory.createIdentifier("exceptionable")), expr);
120
- },
121
- })(importer);
122
- };
123
- };
124
- };
125
- var joiner = function (options) {
126
- return function (equals) {
127
- return function (importer) { return ({
128
- object: validate_object(options)(equals)(importer),
129
- array: function (input, arrow) {
130
- return (0, check_everything_1.check_everything)(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(input, "map"), undefined, [arrow]));
131
- },
132
- failure: function (value, expected, explore) {
133
- return create_report_call((explore === null || explore === void 0 ? void 0 : explore.from) === "top"
134
- ? typescript_1.default.factory.createTrue()
135
- : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier((explore === null || explore === void 0 ? void 0 : explore.postfix) ? "path + ".concat(explore.postfix) : "path"), expected, value);
136
- },
137
- tuple: function (binaries) {
138
- return (0, check_everything_1.check_everything)(typescript_1.default.factory.createArrayLiteralExpression(binaries, true));
139
- },
140
- }); };
141
- };
104
+ var validate_object = function (equals) { return function (importer) {
105
+ return (0, check_object_1.check_object)({
106
+ equals: equals,
107
+ undefined: true,
108
+ assert: false,
109
+ reduce: typescript_1.default.factory.createLogicalAnd,
110
+ positive: typescript_1.default.factory.createTrue(),
111
+ superfluous: function (value) {
112
+ return create_report_call()(typescript_1.default.factory.createAdd(typescript_1.default.factory.createIdentifier("path"), typescript_1.default.factory.createCallExpression(importer.use("join"), undefined, [typescript_1.default.factory.createIdentifier("key")])), "undefined", value);
113
+ },
114
+ halt: function (expr) {
115
+ return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createFalse(), typescript_1.default.factory.createIdentifier("exceptionable")), expr);
116
+ },
117
+ })(importer);
118
+ }; };
119
+ var joiner = function (equals) {
120
+ return function (importer) { return ({
121
+ object: validate_object(equals)(importer),
122
+ array: function (input, arrow) {
123
+ return (0, check_everything_1.check_everything)(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(input, "map"), undefined, [arrow]));
124
+ },
125
+ failure: function (value, expected, explore) {
126
+ return create_report_call((explore === null || explore === void 0 ? void 0 : explore.from) === "top"
127
+ ? typescript_1.default.factory.createTrue()
128
+ : typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier((explore === null || explore === void 0 ? void 0 : explore.postfix) ? "path + ".concat(explore.postfix) : "path"), expected, value);
129
+ },
130
+ tuple: function (binaries) {
131
+ return (0, check_everything_1.check_everything)(typescript_1.default.factory.createArrayLiteralExpression(binaries, true));
132
+ },
133
+ }); };
142
134
  };
143
135
  function create_output() {
144
136
  return typescript_1.default.factory.createObjectLiteralExpression([
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ValidateProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateProgrammer.ts"],"names":[],"mappings":"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"}
@@ -2,5 +2,7 @@ import { Metadata } from "../../metadata/Metadata";
2
2
  import { Atomic } from "../../typings/Atomic";
3
3
  export declare namespace AtomicPredicator {
4
4
  const constant: (meta: Metadata) => (name: Atomic.Literal) => boolean;
5
+ const atomic: (meta: Metadata) => (name: Atomic.Literal) => boolean;
6
+ const native: (name: string) => boolean;
5
7
  const template: (meta: Metadata) => boolean;
6
8
  }
@@ -6,11 +6,19 @@ var AtomicPredicator;
6
6
  (function (AtomicPredicator) {
7
7
  AtomicPredicator.constant = function (meta) {
8
8
  return function (name) {
9
- return !ArrayUtil_1.ArrayUtil.has(meta.atomics, function (atomic) { return atomic === name; });
9
+ return !ArrayUtil_1.ArrayUtil.has(meta.atomics, function (atomic) { return atomic === name; }) &&
10
+ !ArrayUtil_1.ArrayUtil.has(meta.natives, function (native) { return native.toLowerCase() === name; });
10
11
  };
11
12
  };
13
+ AtomicPredicator.atomic = function (meta) {
14
+ return function (name) {
15
+ return !ArrayUtil_1.ArrayUtil.has(meta.natives, function (native) { return native.toLowerCase() === name; });
16
+ };
17
+ };
18
+ AtomicPredicator.native = function (name) { return LIKE.has(name.toLowerCase()); };
12
19
  AtomicPredicator.template = function (meta) {
13
20
  return !ArrayUtil_1.ArrayUtil.has(meta.atomics, function (type) { return type === "string"; });
14
21
  };
15
22
  })(AtomicPredicator = exports.AtomicPredicator || (exports.AtomicPredicator = {}));
23
+ var LIKE = new Set(["boolean", "number", "string"]);
16
24
  //# sourceMappingURL=AtomicPredicator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AtomicPredicator.js","sourceRoot":"","sources":["../../../src/programmers/helpers/AtomicPredicator.ts"],"names":[],"mappings":";;;AAIA,mDAAkD;AAElD,IAAiB,gBAAgB,CAQhC;AARD,WAAiB,gBAAgB;IAChB,yBAAQ,GACjB,UAAC,IAAc;QACf,OAAA,UAAC,IAAoB;YACjB,OAAA,CAAC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,MAAM,IAAK,OAAA,MAAM,KAAK,IAAI,EAAf,CAAe,CAAC;QAAzD,CAAyD;IAD7D,CAC6D,CAAC;IAErD,yBAAQ,GAAG,UAAC,IAAc;QACnC,OAAA,CAAC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,QAAQ,EAAjB,CAAiB,CAAC;IAAzD,CAAyD,CAAC;AAClE,CAAC,EARgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAQhC"}
1
+ {"version":3,"file":"AtomicPredicator.js","sourceRoot":"","sources":["../../../src/programmers/helpers/AtomicPredicator.ts"],"names":[],"mappings":";;;AAIA,mDAAkD;AAElD,IAAiB,gBAAgB,CAsBhC;AAtBD,WAAiB,gBAAgB;IAChB,yBAAQ,GACjB,UAAC,IAAc;QACf,OAAA,UAAC,IAAoB;YACjB,OAAA,CAAC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,MAAM,IAAK,OAAA,MAAM,KAAK,IAAI,EAAf,CAAe,CAAC;gBACzD,CAAC,qBAAS,CAAC,GAAG,CACV,IAAI,CAAC,OAAO,EACZ,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,EAA7B,CAA6B,CAC5C;QAJD,CAIC;IALL,CAKK,CAAC;IAEG,uBAAM,GACf,UAAC,IAAc;QACf,OAAA,UAAC,IAAoB;YACjB,OAAA,CAAC,qBAAS,CAAC,GAAG,CACV,IAAI,CAAC,OAAO,EACZ,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,EAA7B,CAA6B,CAC5C;QAHD,CAGC;IAJL,CAIK,CAAC;IAEG,uBAAM,GAAG,UAAC,IAAY,IAAK,OAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAA5B,CAA4B,CAAC;IAExD,yBAAQ,GAAG,UAAC,IAAc;QACnC,OAAA,CAAC,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,QAAQ,EAAjB,CAAiB,CAAC;IAAzD,CAAyD,CAAC;AAClE,CAAC,EAtBgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAsBhC;AAED,IAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC"}
@@ -60,7 +60,8 @@ var application_schema = function (options) {
60
60
  else if ((constant.type === "string" && meta.templates.length) ||
61
61
  AtomicPredicator_1.AtomicPredicator.constant(meta)(constant.type) === false)
62
62
  continue;
63
- union.push((0, application_constant_1.application_constant)(constant, meta.nullable, attribute));
63
+ else
64
+ union.push((0, application_constant_1.application_constant)(constant, meta.nullable, attribute));
64
65
  }
65
66
  }
66
67
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
@@ -75,11 +76,14 @@ var application_schema = function (options) {
75
76
  var type = _l.value;
76
77
  if (type === "bigint")
77
78
  throw new Error(NO_BIGINT);
78
- union.push(type === "string"
79
- ? (0, application_string_1.application_string)(meta, attribute)
80
- : type === "boolean"
81
- ? (0, application_boolean_1.application_boolean)(meta.nullable, attribute)
82
- : (0, application_number_1.application_number)(meta.nullable, attribute));
79
+ else if (AtomicPredicator_1.AtomicPredicator.atomic(meta)(type) === false)
80
+ continue;
81
+ else
82
+ union.push(type === "string"
83
+ ? (0, application_string_1.application_string)(meta, attribute)
84
+ : type === "boolean"
85
+ ? (0, application_boolean_1.application_boolean)(meta.nullable, attribute)
86
+ : (0, application_number_1.application_number)(meta.nullable, attribute));
83
87
  }
84
88
  }
85
89
  catch (e_2_1) { e_2 = { error: e_2_1 }; }
@@ -129,7 +133,14 @@ var application_schema = function (options) {
129
133
  try {
130
134
  for (var _r = __values(meta.natives), _s = _r.next(); !_s.done; _s = _r.next()) {
131
135
  var native = _s.value;
132
- union.push((0, application_native_1.application_native)(options)(components)(native)(meta.nullable, attribute));
136
+ if (AtomicPredicator_1.AtomicPredicator.native(native))
137
+ union.push(native === "String"
138
+ ? (0, application_string_1.application_string)(meta, attribute)
139
+ : native === "Boolean"
140
+ ? (0, application_boolean_1.application_boolean)(meta.nullable, attribute)
141
+ : (0, application_number_1.application_number)(meta.nullable, attribute));
142
+ else
143
+ union.push((0, application_native_1.application_native)(options)(components)(native)(meta.nullable, attribute));
133
144
  }
134
145
  }
135
146
  catch (e_5_1) { e_5 = { error: e_5_1 }; }
@@ -1 +1 @@
1
- {"version":3,"file":"application_schema.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application_schema.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_schema.ts"],"names":[],"mappings":"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"}
@@ -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,qEAAoE;AAIpE,uDAAsD;AAEtD,6DAA4D;AAKrD,IAAM,wBAAwB,GACjC,UAAC,KAA0B;IAC3B,OAAA,UAAC,QAA0B;QAC3B,OAAA,UACI,KAAoB,EACpB,OAA2B,EAC3B,OAA2B;YAE3B,IAAM,MAAM,GAAG,qCAAiB,CAAC,IAAI,CACjC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,CACV,EACD,QAAQ,CACX,CAAC;YACF,IAAM,IAAI,GACN,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBACzC,CAAC,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI;oBACxB,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAf,CAAe,CAAC;oBACnC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,OAAO,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAf,CAAe,CAAC,CAAC,MAAM,CAChD,EACD,MAAM,CACT;oBACH,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,EAC1B,EAAE,EACF;wBACI,MAAM;wBACN,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,OAAO,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAf,CAAe,CAAC,CAAC,MAAM,CAChD;wBACD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,MAAM,CAAC;qBAClD,CACJ;gBACP,CAAC,CAAC,IAAI,CAAC;YACf,IACI,KAAK,CAAC,SAAS,KAAK,KAAK;gBACzB,IAAI,KAAK,IAAI;gBACb,OAAO,CAAC,KAAK,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAf,CAAe,CAAC;gBAErC,OAAO,IAAI,CAAC;YAEhB,IAAM,QAAQ,GAAG,KAAK,CAAC,OAAO;gBAC1B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE;oBACtD,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,CACV;oBACD,sBAAsB,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;iBACzD,CAAC;gBACJ,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,qCAAiB,CAAC,IAAI,CAClB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,SAAS,EACT,CAAC,KAAK,CAAC,CACV,EACD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CACjC,EACD,SAAS,EACT,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAC3D,CAAC;YACR,IAAM,KAAK,GAAkB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,EAAJ,CAAI,CAAC,CAAC,CACzD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAA,mCAAgB,EAAC,QAAQ,CAAC,CACvD,CAAC;YACF,OAAO,IAAI;gBACP,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS;oBACZ,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe;oBAC5B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC;gBACjD,CAAC,CAAC,KAAK,CAAC;QAChB,CAAC;IAvED,CAuEC;AAxED,CAwEC,CAAC;AA1EO,QAAA,wBAAwB,4BA0E/B;AAEN,IAAM,sBAAsB,GACxB,UAAC,KAA0B;IAC3B,OAAA,UACI,KAAoB,EACpB,OAA2B,EAC3B,OAA2B;;QAM3B,IAAM,GAAG,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAM,KAAK,GAAG,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAEnD,IAAM,UAAU,GAAmB,EAAE,CAAC;QACtC,IAAM,GAAG,GAAG,UAAC,GAAkB,EAAE,MAAqB;YAClD,OAAA,UAAU,CAAC,IAAI,CACX,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,GAAG,EACH,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAC3C,CACJ;QALD,CAKC,CAAC;QAGN,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM;YACvC,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACtD,UAAU,CAAC,IAAI,CACX,mCAAgB,CAAC,QAAQ,CACrB,OAAO,EACP,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,GAAG,CAAC,CACvD,CACJ,CAAC;QACF,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI;YACxB,GAAG,CACC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,KAAK,CACR,EACD,KAAK,CAAC,QAAQ,CACjB,CAAC;;YACN,KAAoB,IAAA,YAAA,SAAA,OAAO,CAAA,gCAAA;gBAAtB,IAAM,KAAK,oBAAA;gBACZ,GAAG,CACC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACvB,kBAAW,IAAA,yCAAmB,EAAC,IAAI,CAAC,CAChC,KAAK,CAAC,GAAG,CACZ,YAAS,CACb,EACD,SAAS,EACT,CAAC,GAAG,CAAC,CACR,EACD,KAAK,CAAC,UAAU,CACnB,CAAC;aAAA;;;;;;;;;QAMN,IAAM,KAAK,GAAa,oBAAE,CAAC,OAAO,CAAC,WAAW,wCAEnC,UAAU;YACb,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,KAAK,CAAC,MAAM,KAAK,IAAI;gBACjB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC;gBAC1B,CAAC,CAAC,KAAK,CAAC,QAAQ,CACvB;mBAEL,IAAI,CACP,CAAC;QAGF,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CACjC,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EACpC,SAAS,EACT,SAAS,EACT,KAAK,CACR,CAAC;IACN,CAAC;AA7ED,CA6EC,CAAC;AAEN,IAAM,mBAAmB,GAAG,UAAC,OAA2B;IACpD,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,qCAAiB,CAAC,IAAI,CAClB,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CACnC,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK;QACd,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAG,CAAC;IAA3D,CAA2D,CAC9D,CACJ,EACD,MAAM,CACT,EACD,SAAS,EACT;QACI,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EACrC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAClC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CACtC,CACJ;KACJ,CACJ;AAvBD,CAuBC,CAAC"}
1
+ {"version":3,"file":"check_dynamic_properties.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_dynamic_properties.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,17 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.check_native = void 0;
7
+ var typescript_1 = __importDefault(require("typescript"));
4
8
  var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
5
9
  var check_native = function (type) { return function (input) {
6
- return ExpressionFactory_1.ExpressionFactory.isInstanceOf(input, type);
10
+ var instanceOf = ExpressionFactory_1.ExpressionFactory.isInstanceOf(input, type);
11
+ return ATOMIC_LIKE.has(type)
12
+ ? typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral(type.toLowerCase()), typescript_1.default.factory.createTypeOfExpression(input)), instanceOf)
13
+ : instanceOf;
7
14
  }; };
8
15
  exports.check_native = check_native;
16
+ var ATOMIC_LIKE = new Set(["Boolean", "Number", "String"]);
9
17
  //# sourceMappingURL=check_native.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check_native.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_native.ts"],"names":[],"mappings":";;;AAEA,uEAAsE;AAK/D,IAAM,YAAY,GAAG,UAAC,IAAY,IAAK,OAAA,UAAC,KAAoB;IAC/D,OAAA,qCAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC;AAA3C,CAA2C,EADD,CACC,CAAC;AADnC,QAAA,YAAY,gBACuB"}
1
+ {"version":3,"file":"check_native.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_native.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAK/D,IAAM,YAAY,GAAG,UAAC,IAAY,IAAK,OAAA,UAAC,KAAoB;IAC/D,IAAM,UAAU,GAAG,qCAAiB,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/D,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;QACxB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,eAAe,CACtB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAClD,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAC3C,EACD,UAAU,CACb;QACH,CAAC,CAAC,UAAU,CAAC;AACrB,CAAC,EAX6C,CAW7C,CAAC;AAXW,QAAA,YAAY,gBAWvB;AAEF,IAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC"}
@@ -49,6 +49,10 @@ export interface ITransformOptions {
49
49
  * issue when validating without allowing superfluous properties. Should undefined
50
50
  * value assigned superfluous property be allowed or not?
51
51
  *
52
+ * Note that, this option only works on {@link equals} function. Other function
53
+ * like {@link assertEquals} or {@link validateEquals} would ignore this option
54
+ * value and always allow the `undefined` value.
55
+ *
52
56
  * @default true
53
57
  */
54
58
  undefined?: boolean;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "3.4.26",
4
- "description": "Runtime type checkers and 5x faster JSON.stringify() function",
3
+ "version": "3.4.28",
4
+ "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "bin": {
@@ -68,6 +68,7 @@
68
68
  "devDependencies": {
69
69
  "@fastify/type-provider-typebox": "^2.3.0",
70
70
  "@trivago/prettier-plugin-sort-imports": "^3.3.0",
71
+ "@typegoose/typegoose": "^10.1.1",
71
72
  "@types/autocannon": "^7.9.0",
72
73
  "@types/benchmark": "^2.1.2",
73
74
  "@types/cli": "^0.11.20",
@@ -18,10 +18,6 @@ export const iterate_metadata_native =
18
18
 
19
19
  const simple = SIMPLES.get(name);
20
20
  if (simple && validator(simple)) {
21
- if (FORBIDDEN.has(name))
22
- throw new Error(
23
- `Error on typia.metadata(): typia does not allow "${name}" class type. Use "${name.toLowerCase()}" type instead.`,
24
- );
25
21
  ArrayUtil.set(meta.natives, name, (str) => str);
26
22
  return true;
27
23
  }
@@ -210,7 +206,6 @@ const GENERICS: Array<IClassInfo & { name: string }> = [
210
206
  return: "boolean",
211
207
  })),
212
208
  }));
213
- const FORBIDDEN: Set<string> = new Set(["Bolean", "Number", "String"]);
214
209
 
215
210
  interface IClassInfo {
216
211
  name?: string;
@@ -4,7 +4,6 @@ import { IdentifierFactory } from "../factories/IdentifierFactory";
4
4
 
5
5
  // import { StatementFactory } from "../factories/StatementFactory";
6
6
  import { IProject } from "../transformers/IProject";
7
- import { ITransformOptions } from "../transformers/ITransformOptions";
8
7
 
9
8
  import { CheckerProgrammer } from "./CheckerProgrammer";
10
9
  import { IsProgrammer } from "./IsProgrammer";
@@ -241,8 +240,8 @@ export namespace AssertProgrammer {
241
240
  trace: true,
242
241
  numeric: OptionPredicator.numeric(project.options),
243
242
  equals,
244
- combiner: combiner(project.options)(equals)(importer),
245
- joiner: joiner(project.options)(equals)(importer),
243
+ combiner: combiner(equals)(importer),
244
+ joiner: joiner(equals)(importer),
246
245
  success: ts.factory.createTrue(),
247
246
  },
248
247
  importer,
@@ -278,13 +277,12 @@ export namespace AssertProgrammer {
278
277
  };
279
278
 
280
279
  const combiner =
281
- (options: ITransformOptions) =>
282
280
  (equals: boolean) =>
283
281
  (importer: FunctionImporter): CheckerProgrammer.IConfig.Combiner =>
284
282
  (explore: CheckerProgrammer.IExplore) => {
285
283
  if (explore.tracable === false)
286
284
  return IsProgrammer.CONFIG({
287
- object: assert_object(options)(equals)(importer),
285
+ object: assert_object(equals)(importer),
288
286
  numeric: true,
289
287
  })(importer).combiner(explore);
290
288
 
@@ -352,44 +350,40 @@ export namespace AssertProgrammer {
352
350
  // );
353
351
  };
354
352
 
355
- const assert_object =
356
- (options: ITransformOptions) =>
357
- (equals: boolean) =>
358
- (importer: FunctionImporter) =>
359
- check_object({
360
- equals,
361
- assert: true,
362
- undefined: OptionPredicator.undefined(options),
363
- reduce: ts.factory.createLogicalAnd,
364
- positive: ts.factory.createTrue(),
365
- superfluous: (value) =>
366
- create_guard_call(importer)()(
367
- ts.factory.createAdd(
368
- ts.factory.createIdentifier("path"),
369
- ts.factory.createCallExpression(
370
- importer.use("join"),
371
- undefined,
372
- [ts.factory.createIdentifier("key")],
373
- ),
353
+ const assert_object = (equals: boolean) => (importer: FunctionImporter) =>
354
+ check_object({
355
+ equals,
356
+ assert: true,
357
+ undefined: true,
358
+ reduce: ts.factory.createLogicalAnd,
359
+ positive: ts.factory.createTrue(),
360
+ superfluous: (value) =>
361
+ create_guard_call(importer)()(
362
+ ts.factory.createAdd(
363
+ ts.factory.createIdentifier("path"),
364
+ ts.factory.createCallExpression(
365
+ importer.use("join"),
366
+ undefined,
367
+ [ts.factory.createIdentifier("key")],
374
368
  ),
375
- "undefined",
376
- value,
377
369
  ),
378
- halt: (expr) =>
379
- ts.factory.createLogicalOr(
380
- ts.factory.createStrictEquality(
381
- ts.factory.createFalse(),
382
- ts.factory.createIdentifier("exceptionable"),
383
- ),
384
- expr,
370
+ "undefined",
371
+ value,
372
+ ),
373
+ halt: (expr) =>
374
+ ts.factory.createLogicalOr(
375
+ ts.factory.createStrictEquality(
376
+ ts.factory.createFalse(),
377
+ ts.factory.createIdentifier("exceptionable"),
385
378
  ),
386
- })(importer);
379
+ expr,
380
+ ),
381
+ })(importer);
387
382
 
388
383
  const joiner =
389
- (options: ITransformOptions) =>
390
384
  (equals: boolean) =>
391
385
  (importer: FunctionImporter): CheckerProgrammer.IConfig.IJoiner => ({
392
- object: assert_object(options)(equals)(importer),
386
+ object: assert_object(equals)(importer),
393
387
  array: (input, arrow) =>
394
388
  ts.factory.createCallExpression(
395
389
  IdentifierFactory.join(input, "every"),
@@ -13,6 +13,7 @@ import { MetadataObject } from "../metadata/MetadataObject";
13
13
  import { IProject } from "../transformers/IProject";
14
14
 
15
15
  import { FeatureProgrammer } from "./FeatureProgrammer";
16
+ import { AtomicPredicator } from "./helpers/AtomicPredicator";
16
17
  import { FunctionImporter } from "./helpers/FunctionImporeter";
17
18
  import { IExpressionEntry } from "./helpers/IExpressionEntry";
18
19
  import { OptionPredicator } from "./helpers/OptionPredicator";
@@ -249,6 +250,7 @@ export namespace CheckerProgrammer {
249
250
  //----
250
251
  // CHECK OPTIONAL
251
252
  //----
253
+ // @todo -> should be elaborated
252
254
  const checkOptional: boolean = meta.empty() || meta.isUnionBucket();
253
255
 
254
256
  // NULLABLE
@@ -291,12 +293,14 @@ export namespace CheckerProgrammer {
291
293
  //----
292
294
  // CONSTANT VALUES
293
295
  for (const constant of meta.constants)
294
- for (const val of constant.values)
295
- add(true, getConstantValue(val));
296
+ if (AtomicPredicator.constant(meta)(constant.type))
297
+ for (const val of constant.values)
298
+ add(true, getConstantValue(val));
296
299
 
297
300
  // ATOMIC VALUES
298
301
  for (const type of meta.atomics)
299
- if (type === "number")
302
+ if (AtomicPredicator.atomic(meta)(type) === false) continue;
303
+ else if (type === "number")
300
304
  binaries.push({
301
305
  expression: check_number(project, config.numeric)(
302
306
  input,
@@ -323,14 +327,15 @@ export namespace CheckerProgrammer {
323
327
 
324
328
  // TEMPLATE LITERAL VALUES
325
329
  if (meta.templates.length)
326
- binaries.push({
327
- expression: check_template(importer)(
328
- input,
329
- meta.templates,
330
- tags,
331
- ),
332
- combined: false,
333
- });
330
+ if (AtomicPredicator.template(meta))
331
+ binaries.push({
332
+ expression: check_template(importer)(
333
+ input,
334
+ meta.templates,
335
+ tags,
336
+ ),
337
+ combined: false,
338
+ });
334
339
 
335
340
  // NATIVE CLASSES
336
341
  for (const native of meta.natives)