typia 3.4.23 → 3.4.24
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.
- package/lib/programmers/AssertProgrammer.js +70 -79
- package/lib/programmers/AssertProgrammer.js.map +1 -1
- package/lib/programmers/IsProgrammer.d.ts +0 -1
- package/lib/programmers/IsProgrammer.js +0 -4
- package/lib/programmers/IsProgrammer.js.map +1 -1
- package/lib/programmers/ValidateProgrammer.js +59 -68
- package/lib/programmers/ValidateProgrammer.js.map +1 -1
- package/lib/programmers/helpers/OptionPredicator.d.ts +0 -1
- package/lib/programmers/helpers/OptionPredicator.js +0 -4
- package/lib/programmers/helpers/OptionPredicator.js.map +1 -1
- package/lib/programmers/internal/check_dynamic_properties.js +5 -6
- package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
- package/lib/programmers/internal/check_object.d.ts +0 -1
- package/lib/programmers/internal/check_object.js.map +1 -1
- package/lib/transformers/ITransformOptions.d.ts +0 -10
- package/package.json +2 -2
- package/src/programmers/AssertProgrammer.ts +29 -36
- package/src/programmers/IsProgrammer.ts +0 -5
- package/src/programmers/ValidateProgrammer.ts +29 -36
- package/src/programmers/helpers/OptionPredicator.ts +0 -4
- package/src/programmers/internal/check_dynamic_properties.ts +18 -18
- package/src/programmers/internal/check_object.ts +0 -1
- package/src/transformers/ITransformOptions.ts +0 -11
|
@@ -49,8 +49,8 @@ var AssertProgrammer;
|
|
|
49
49
|
trace: true,
|
|
50
50
|
numeric: OptionPredicator_1.OptionPredicator.numeric(project.options),
|
|
51
51
|
equals: equals,
|
|
52
|
-
combiner: combiner(
|
|
53
|
-
joiner: joiner(
|
|
52
|
+
combiner: combiner(equals)(importer),
|
|
53
|
+
joiner: joiner(equals)(importer),
|
|
54
54
|
success: typescript_1.default.factory.createTrue(),
|
|
55
55
|
}, importer)(type);
|
|
56
56
|
return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("input")], undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(importer.declare(modulo)), false), [
|
|
@@ -63,88 +63,79 @@ var AssertProgrammer;
|
|
|
63
63
|
], false), true));
|
|
64
64
|
};
|
|
65
65
|
};
|
|
66
|
-
var combiner = function (
|
|
67
|
-
return function (
|
|
68
|
-
return function (
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
return
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
66
|
+
var combiner = function (equals) {
|
|
67
|
+
return function (importer) {
|
|
68
|
+
return function (explore) {
|
|
69
|
+
if (explore.tracable === false)
|
|
70
|
+
return IsProgrammer_1.IsProgrammer.CONFIG({
|
|
71
|
+
object: assert_object(equals)(importer),
|
|
72
|
+
numeric: true,
|
|
73
|
+
}).combiner(explore);
|
|
74
|
+
var path = explore.postfix
|
|
75
|
+
? "path + ".concat(explore.postfix)
|
|
76
|
+
: "path";
|
|
77
|
+
return function (logic) { return function (input, binaries, expected) {
|
|
78
|
+
return logic === "and"
|
|
79
|
+
? binaries
|
|
80
|
+
.map(function (binary) {
|
|
81
|
+
return binary.combined
|
|
82
|
+
? binary.expression
|
|
83
|
+
: typescript_1.default.factory.createLogicalOr(binary.expression, create_guard_call(importer)(explore.source === "top"
|
|
84
|
+
? typescript_1.default.factory.createTrue()
|
|
85
|
+
: typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input));
|
|
86
|
+
})
|
|
87
|
+
.reduce(typescript_1.default.factory.createLogicalAnd)
|
|
88
|
+
: (function () {
|
|
89
|
+
var addicted = binaries.slice();
|
|
90
|
+
if (addicted[addicted.length - 1].combined === false) {
|
|
91
|
+
addicted.push({
|
|
92
|
+
combined: true,
|
|
93
|
+
expression: create_guard_call(importer)(explore.source === "top"
|
|
85
94
|
? typescript_1.default.factory.createTrue()
|
|
86
|
-
: typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input)
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
expression: create_guard_call(importer)(explore.source === "top"
|
|
95
|
-
? typescript_1.default.factory.createTrue()
|
|
96
|
-
: typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input),
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
return addicted
|
|
100
|
-
.map(function (b) { return b.expression; })
|
|
101
|
-
.reduce(typescript_1.default.factory.createLogicalOr);
|
|
102
|
-
})();
|
|
103
|
-
}; };
|
|
104
|
-
};
|
|
95
|
+
: typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(path), expected, input),
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return addicted
|
|
99
|
+
.map(function (b) { return b.expression; })
|
|
100
|
+
.reduce(typescript_1.default.factory.createLogicalOr);
|
|
101
|
+
})();
|
|
102
|
+
}; };
|
|
105
103
|
};
|
|
106
104
|
};
|
|
107
105
|
};
|
|
108
|
-
var assert_object = function (
|
|
109
|
-
return
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
106
|
+
var assert_object = function (equals) { return function (importer) {
|
|
107
|
+
return (0, check_object_1.check_object)({
|
|
108
|
+
equals: equals,
|
|
109
|
+
assert: true,
|
|
110
|
+
reduce: typescript_1.default.factory.createLogicalAnd,
|
|
111
|
+
positive: typescript_1.default.factory.createTrue(),
|
|
112
|
+
superfluous: function (value) {
|
|
113
|
+
return create_guard_call(importer)()(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);
|
|
114
|
+
},
|
|
115
|
+
halt: function (expr) {
|
|
116
|
+
return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createFalse(), typescript_1.default.factory.createIdentifier("exceptionable")), expr);
|
|
117
|
+
},
|
|
118
|
+
});
|
|
119
|
+
}; };
|
|
120
|
+
var joiner = function (equals) {
|
|
121
|
+
return function (importer) { return ({
|
|
122
|
+
object: assert_object(equals)(importer),
|
|
123
|
+
array: function (input, arrow) {
|
|
124
|
+
return typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(input, "every"), undefined, [arrow]);
|
|
125
|
+
},
|
|
126
|
+
failure: function (value, expected, explore) {
|
|
127
|
+
return create_guard_call(importer)((explore === null || explore === void 0 ? void 0 : explore.from) === "top"
|
|
128
|
+
? typescript_1.default.factory.createTrue()
|
|
129
|
+
: 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);
|
|
130
|
+
},
|
|
131
|
+
full: equals
|
|
132
|
+
? undefined
|
|
133
|
+
: function (condition) { return function (input, expected, explore) {
|
|
134
|
+
return typescript_1.default.factory.createLogicalOr(condition, create_guard_call(importer)(explore.from === "top"
|
|
136
135
|
? typescript_1.default.factory.createTrue()
|
|
137
|
-
: typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier(
|
|
138
|
-
},
|
|
139
|
-
|
|
140
|
-
? undefined
|
|
141
|
-
: function (condition) { return function (input, expected, explore) {
|
|
142
|
-
return typescript_1.default.factory.createLogicalOr(condition, create_guard_call(importer)(explore.from === "top"
|
|
143
|
-
? typescript_1.default.factory.createTrue()
|
|
144
|
-
: typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier("path"), expected, input));
|
|
145
|
-
}; },
|
|
146
|
-
}); };
|
|
147
|
-
};
|
|
136
|
+
: typescript_1.default.factory.createIdentifier("exceptionable"))(typescript_1.default.factory.createIdentifier("path"), expected, input));
|
|
137
|
+
}; },
|
|
138
|
+
}); };
|
|
148
139
|
};
|
|
149
140
|
var create_guard_call = function (importer) {
|
|
150
141
|
return function (exceptionable) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssertProgrammer.js","sourceRoot":"","sources":["../../src/programmers/AssertProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;
|
|
1
|
+
{"version":3,"file":"AssertProgrammer.js","sourceRoot":"","sources":["../../src/programmers/AssertProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,9 +43,6 @@ var IsProgrammer;
|
|
|
43
43
|
object: (options === null || options === void 0 ? void 0 : options.object) ||
|
|
44
44
|
(0, check_object_1.check_object)({
|
|
45
45
|
equals: !!(options === null || options === void 0 ? void 0 : options.object),
|
|
46
|
-
undefined: OptionPredicator_1.OptionPredicator.undefined({
|
|
47
|
-
undefined: options === null || options === void 0 ? void 0 : options.undefined,
|
|
48
|
-
}),
|
|
49
46
|
assert: true,
|
|
50
47
|
reduce: typescript_1.default.factory.createLogicalAnd,
|
|
51
48
|
positive: typescript_1.default.factory.createTrue(),
|
|
@@ -64,7 +61,6 @@ var IsProgrammer;
|
|
|
64
61
|
var config = IsProgrammer.CONFIG({
|
|
65
62
|
object: (0, check_object_1.check_object)({
|
|
66
63
|
equals: equals,
|
|
67
|
-
undefined: OptionPredicator_1.OptionPredicator.undefined(project.options),
|
|
68
64
|
assert: true,
|
|
69
65
|
reduce: typescript_1.default.factory.createLogicalAnd,
|
|
70
66
|
positive: typescript_1.default.factory.createTrue(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IsProgrammer.js","sourceRoot":"","sources":["../../src/programmers/IsProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,oEAAmE;AACnE,0DAAyD;AAMzD,yDAAwD;AACxD,iEAA+D;AAE/D,+DAA8D;AAC9D,wDAAuD;AACvD,4EAA2E;AAE3E,IAAiB,YAAY,
|
|
1
|
+
{"version":3,"file":"IsProgrammer.js","sourceRoot":"","sources":["../../src/programmers/IsProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -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(
|
|
55
|
-
joiner: joiner(
|
|
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,66 @@ var ValidateProgrammer;
|
|
|
70
70
|
};
|
|
71
71
|
};
|
|
72
72
|
})(ValidateProgrammer = exports.ValidateProgrammer || (exports.ValidateProgrammer = {}));
|
|
73
|
-
var combine = function (
|
|
74
|
-
return function (
|
|
75
|
-
return function (
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
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
|
+
}).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 (
|
|
107
|
-
return
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
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
|
+
assert: false,
|
|
108
|
+
reduce: typescript_1.default.factory.createLogicalAnd,
|
|
109
|
+
positive: typescript_1.default.factory.createTrue(),
|
|
110
|
+
superfluous: function (value) {
|
|
111
|
+
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);
|
|
112
|
+
},
|
|
113
|
+
halt: function (expr) {
|
|
114
|
+
return typescript_1.default.factory.createLogicalOr(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createFalse(), typescript_1.default.factory.createIdentifier("exceptionable")), expr);
|
|
115
|
+
},
|
|
116
|
+
});
|
|
117
|
+
}; };
|
|
118
|
+
var joiner = function (equals) {
|
|
119
|
+
return function (importer) { return ({
|
|
120
|
+
object: validate_object(equals)(importer),
|
|
121
|
+
array: function (input, arrow) {
|
|
122
|
+
return (0, check_everything_1.check_everything)(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(input, "map"), undefined, [arrow]));
|
|
123
|
+
},
|
|
124
|
+
failure: function (value, expected, explore) {
|
|
125
|
+
return create_report_call((explore === null || explore === void 0 ? void 0 : explore.from) === "top"
|
|
126
|
+
? typescript_1.default.factory.createTrue()
|
|
127
|
+
: 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);
|
|
128
|
+
},
|
|
129
|
+
tuple: function (binaries) {
|
|
130
|
+
return (0, check_everything_1.check_everything)(typescript_1.default.factory.createArrayLiteralExpression(binaries, true));
|
|
131
|
+
},
|
|
132
|
+
}); };
|
|
142
133
|
};
|
|
143
134
|
function create_output() {
|
|
144
135
|
return typescript_1.default.factory.createObjectLiteralExpression([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ValidateProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;
|
|
1
|
+
{"version":3,"file":"ValidateProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,4 @@ export declare namespace OptionPredicator {
|
|
|
3
3
|
function numeric(options: ITransformOptions): boolean;
|
|
4
4
|
function functional(options: ITransformOptions): boolean;
|
|
5
5
|
function finite(options: ITransformOptions): boolean;
|
|
6
|
-
function undefined(options: ITransformOptions): boolean;
|
|
7
6
|
}
|
|
@@ -15,9 +15,5 @@ var OptionPredicator;
|
|
|
15
15
|
return options.finite === true;
|
|
16
16
|
}
|
|
17
17
|
OptionPredicator.finite = finite;
|
|
18
|
-
function undefined(options) {
|
|
19
|
-
return options.undefined !== false;
|
|
20
|
-
}
|
|
21
|
-
OptionPredicator.undefined = undefined;
|
|
22
18
|
})(OptionPredicator = exports.OptionPredicator || (exports.OptionPredicator = {}));
|
|
23
19
|
//# sourceMappingURL=OptionPredicator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OptionPredicator.js","sourceRoot":"","sources":["../../../src/programmers/helpers/OptionPredicator.ts"],"names":[],"mappings":";;;AAEA,IAAiB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"OptionPredicator.js","sourceRoot":"","sources":["../../../src/programmers/helpers/OptionPredicator.ts"],"names":[],"mappings":";;;AAEA,IAAiB,gBAAgB,CAYhC;AAZD,WAAiB,gBAAgB;IAC7B,SAAgB,OAAO,CAAC,OAA0B;QAC9C,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC;IACvD,CAAC;IAFe,wBAAO,UAEtB,CAAA;IAED,SAAgB,UAAU,CAAC,OAA0B;QACjD,OAAO,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC;IACvC,CAAC;IAFe,2BAAU,aAEzB,CAAA;IAED,SAAgB,MAAM,CAAC,OAA0B;QAC7C,OAAO,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC;IACnC,CAAC;IAFe,uBAAM,SAErB,CAAA;AACL,CAAC,EAZgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAYhC"}
|
|
@@ -47,18 +47,17 @@ var check_everything_1 = require("./check_everything");
|
|
|
47
47
|
var metadata_to_pattern_1 = require("./metadata_to_pattern");
|
|
48
48
|
var check_dynamic_properties = function (props) {
|
|
49
49
|
return function (regular, dynamic) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
dynamic.length === 0)
|
|
54
|
-
return typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createNumericLiteral(regular.length), IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [typescript_1.default.factory.createIdentifier("input")]), "length"));
|
|
50
|
+
var length = props.equals === true && dynamic.length === 0
|
|
51
|
+
? typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createNumericLiteral(regular.filter(function (r) { return r.meta.required; }).length), IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [typescript_1.default.factory.createIdentifier("input")]), "length"))
|
|
52
|
+
: null;
|
|
55
53
|
var criteria = props.entries
|
|
56
54
|
? typescript_1.default.factory.createCallExpression(props.entries, undefined, [
|
|
57
55
|
typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [typescript_1.default.factory.createIdentifier("input")]),
|
|
58
56
|
check_dynamic_property(props)(regular, dynamic),
|
|
59
57
|
])
|
|
60
58
|
: typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Object.keys"), undefined, [typescript_1.default.factory.createIdentifier("input")]), props.assert ? "every" : "map"), undefined, [check_dynamic_property(props)(regular, dynamic)]);
|
|
61
|
-
|
|
59
|
+
var right = (props.halt || (function (elem) { return elem; }))(props.assert ? criteria : (0, check_everything_1.check_everything)(criteria));
|
|
60
|
+
return length ? typescript_1.default.factory.createLogicalOr(length, right) : right;
|
|
62
61
|
};
|
|
63
62
|
};
|
|
64
63
|
exports.check_dynamic_properties = check_dynamic_properties;
|
|
@@ -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;AAGpE,uDAAsD;AAEtD,6DAA4D;AAKrD,IAAM,wBAAwB,GACjC,UAAC,KAA0B;IAC3B,OAAA,UACI,OAA2B,EAC3B,OAA2B;QAE3B,
|
|
1
|
+
{"version":3,"file":"check_dynamic_properties.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_dynamic_properties.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_object.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,uEAAsE;AACtE,uDAAsD;AAK/C,IAAM,YAAY,GACrB,UAAC,KAA0B,IAAK,OAAA,UAAC,OAA2B;IAExD,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAAzB,CAAyB,CAAC,CAAC;IACrE,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAA1B,CAA0B,CAAC,CAAC;IACtE,IAAM,KAAK,GAAoB,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,UAAU,EAAhB,CAAgB,CAAC,CAAC;IAGxE,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAC9C,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAGxE,KAAK,CAAC,IAAI,CAAC,IAAA,mDAAwB,EAAC,KAAK,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,EAb+B,CAa/B,CAAC;AAdO,QAAA,YAAY,gBAcnB;
|
|
1
|
+
{"version":3,"file":"check_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_object.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,uEAAsE;AACtE,uDAAsD;AAK/C,IAAM,YAAY,GACrB,UAAC,KAA0B,IAAK,OAAA,UAAC,OAA2B;IAExD,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAAzB,CAAyB,CAAC,CAAC;IACrE,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAA1B,CAA0B,CAAC,CAAC;IACtE,IAAM,KAAK,GAAoB,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,UAAU,EAAhB,CAAgB,CAAC,CAAC;IAGxE,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAC9C,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAGxE,KAAK,CAAC,IAAI,CAAC,IAAA,mDAAwB,EAAC,KAAK,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,EAb+B,CAa/B,CAAC;AAdO,QAAA,YAAY,gBAcnB;AAaN,IAAM,MAAM,GAAG,UAAC,KAA0B,IAAK,OAAA,UAAC,WAA4B;IACxE,OAAA,KAAK,CAAC,MAAM;QACR,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAClC,CAAC,CAAC,IAAA,mCAAgB,EACZ,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,WAAW,CAAC,CACvD;AAJP,CAIO,EALoC,CAKpC,CAAC"}
|
|
@@ -42,14 +42,4 @@ export interface ITransformOptions {
|
|
|
42
42
|
* @default false
|
|
43
43
|
*/
|
|
44
44
|
functional?: boolean;
|
|
45
|
-
/**
|
|
46
|
-
* Whether to check undefined value or not.
|
|
47
|
-
*
|
|
48
|
-
* JavaScript can assign `undefined` value to a specific property and it is an
|
|
49
|
-
* issue when validating without allowing superfluous properties. Should undefined
|
|
50
|
-
* value assigned superfluous property be allowed or not?
|
|
51
|
-
*
|
|
52
|
-
* @default true
|
|
53
|
-
*/
|
|
54
|
-
undefined?: boolean;
|
|
55
45
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "typia",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.24",
|
|
4
4
|
"description": "Runtime type checkers and 5x faster JSON.stringify() function",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
"suppress-warnings": "^1.0.2",
|
|
104
104
|
"ts-node": "^10.9.1",
|
|
105
105
|
"ttypescript": "^1.5.15",
|
|
106
|
-
"typescript": "^4.9.
|
|
106
|
+
"typescript": "^4.9.4",
|
|
107
107
|
"uuid": "^8.3.2",
|
|
108
108
|
"zod": "^3.19.1"
|
|
109
109
|
},
|
|
@@ -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(
|
|
245
|
-
joiner: joiner(
|
|
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(
|
|
285
|
+
object: assert_object(equals)(importer),
|
|
288
286
|
numeric: true,
|
|
289
287
|
}).combiner(explore);
|
|
290
288
|
|
|
@@ -352,44 +350,39 @@ export namespace AssertProgrammer {
|
|
|
352
350
|
// );
|
|
353
351
|
};
|
|
354
352
|
|
|
355
|
-
const assert_object =
|
|
356
|
-
(
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
ts.factory.createIdentifier("
|
|
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
|
+
reduce: ts.factory.createLogicalAnd,
|
|
358
|
+
positive: ts.factory.createTrue(),
|
|
359
|
+
superfluous: (value) =>
|
|
360
|
+
create_guard_call(importer)()(
|
|
361
|
+
ts.factory.createAdd(
|
|
362
|
+
ts.factory.createIdentifier("path"),
|
|
363
|
+
ts.factory.createCallExpression(
|
|
364
|
+
importer.use("join"),
|
|
365
|
+
undefined,
|
|
366
|
+
[ts.factory.createIdentifier("key")],
|
|
374
367
|
),
|
|
375
|
-
"undefined",
|
|
376
|
-
value,
|
|
377
368
|
),
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
369
|
+
"undefined",
|
|
370
|
+
value,
|
|
371
|
+
),
|
|
372
|
+
halt: (expr) =>
|
|
373
|
+
ts.factory.createLogicalOr(
|
|
374
|
+
ts.factory.createStrictEquality(
|
|
375
|
+
ts.factory.createFalse(),
|
|
376
|
+
ts.factory.createIdentifier("exceptionable"),
|
|
385
377
|
),
|
|
386
|
-
|
|
378
|
+
expr,
|
|
379
|
+
),
|
|
380
|
+
});
|
|
387
381
|
|
|
388
382
|
const joiner =
|
|
389
|
-
(options: ITransformOptions) =>
|
|
390
383
|
(equals: boolean) =>
|
|
391
384
|
(importer: FunctionImporter): CheckerProgrammer.IConfig.IJoiner => ({
|
|
392
|
-
object: assert_object(
|
|
385
|
+
object: assert_object(equals)(importer),
|
|
393
386
|
array: (input, arrow) =>
|
|
394
387
|
ts.factory.createCallExpression(
|
|
395
388
|
IdentifierFactory.join(input, "every"),
|
|
@@ -51,9 +51,6 @@ export namespace IsProgrammer {
|
|
|
51
51
|
options?.object ||
|
|
52
52
|
check_object({
|
|
53
53
|
equals: !!options?.object,
|
|
54
|
-
undefined: OptionPredicator.undefined({
|
|
55
|
-
undefined: options?.undefined,
|
|
56
|
-
}),
|
|
57
54
|
assert: true,
|
|
58
55
|
reduce: ts.factory.createLogicalAnd,
|
|
59
56
|
positive: ts.factory.createTrue(),
|
|
@@ -73,7 +70,6 @@ export namespace IsProgrammer {
|
|
|
73
70
|
export namespace CONFIG {
|
|
74
71
|
export interface IOptions {
|
|
75
72
|
numeric: boolean;
|
|
76
|
-
undefined: boolean;
|
|
77
73
|
object: (entries: IExpressionEntry[]) => ts.Expression;
|
|
78
74
|
}
|
|
79
75
|
}
|
|
@@ -92,7 +88,6 @@ export namespace IsProgrammer {
|
|
|
92
88
|
const config = CONFIG({
|
|
93
89
|
object: check_object({
|
|
94
90
|
equals,
|
|
95
|
-
undefined: OptionPredicator.undefined(project.options),
|
|
96
91
|
assert: true,
|
|
97
92
|
reduce: ts.factory.createLogicalAnd,
|
|
98
93
|
positive: ts.factory.createTrue(),
|
|
@@ -4,7 +4,6 @@ import { IdentifierFactory } from "../factories/IdentifierFactory";
|
|
|
4
4
|
import { StatementFactory } from "../factories/StatementFactory";
|
|
5
5
|
|
|
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";
|
|
@@ -31,8 +30,8 @@ export namespace ValidateProgrammer {
|
|
|
31
30
|
trace: true,
|
|
32
31
|
numeric: OptionPredicator.numeric(project.options),
|
|
33
32
|
equals,
|
|
34
|
-
combiner: combine(
|
|
35
|
-
joiner: joiner(
|
|
33
|
+
combiner: combine(equals)(importer),
|
|
34
|
+
joiner: joiner(equals)(importer),
|
|
36
35
|
success: ts.factory.createTrue(),
|
|
37
36
|
},
|
|
38
37
|
importer,
|
|
@@ -86,13 +85,12 @@ export namespace ValidateProgrammer {
|
|
|
86
85
|
}
|
|
87
86
|
|
|
88
87
|
const combine =
|
|
89
|
-
(options: ITransformOptions) =>
|
|
90
88
|
(equals: boolean) =>
|
|
91
89
|
(importer: FunctionImporter): CheckerProgrammer.IConfig.Combiner =>
|
|
92
90
|
(explore: CheckerProgrammer.IExplore) => {
|
|
93
91
|
if (explore.tracable === false)
|
|
94
92
|
return IsProgrammer.CONFIG({
|
|
95
|
-
object: validate_object(
|
|
93
|
+
object: validate_object(equals)(importer),
|
|
96
94
|
numeric: true,
|
|
97
95
|
}).combiner(explore);
|
|
98
96
|
|
|
@@ -133,44 +131,39 @@ const combine =
|
|
|
133
131
|
);
|
|
134
132
|
};
|
|
135
133
|
|
|
136
|
-
const validate_object =
|
|
137
|
-
(
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
ts.factory.createIdentifier("
|
|
150
|
-
ts.factory.createCallExpression(
|
|
151
|
-
importer.use("join"),
|
|
152
|
-
undefined,
|
|
153
|
-
[ts.factory.createIdentifier("key")],
|
|
154
|
-
),
|
|
134
|
+
const validate_object = (equals: boolean) => (importer: FunctionImporter) =>
|
|
135
|
+
check_object({
|
|
136
|
+
equals,
|
|
137
|
+
assert: false,
|
|
138
|
+
reduce: ts.factory.createLogicalAnd,
|
|
139
|
+
positive: ts.factory.createTrue(),
|
|
140
|
+
superfluous: (value) =>
|
|
141
|
+
create_report_call()(
|
|
142
|
+
ts.factory.createAdd(
|
|
143
|
+
ts.factory.createIdentifier("path"),
|
|
144
|
+
ts.factory.createCallExpression(
|
|
145
|
+
importer.use("join"),
|
|
146
|
+
undefined,
|
|
147
|
+
[ts.factory.createIdentifier("key")],
|
|
155
148
|
),
|
|
156
|
-
"undefined",
|
|
157
|
-
value,
|
|
158
149
|
),
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
150
|
+
"undefined",
|
|
151
|
+
value,
|
|
152
|
+
),
|
|
153
|
+
halt: (expr) =>
|
|
154
|
+
ts.factory.createLogicalOr(
|
|
155
|
+
ts.factory.createStrictEquality(
|
|
156
|
+
ts.factory.createFalse(),
|
|
157
|
+
ts.factory.createIdentifier("exceptionable"),
|
|
166
158
|
),
|
|
167
|
-
|
|
159
|
+
expr,
|
|
160
|
+
),
|
|
161
|
+
});
|
|
168
162
|
|
|
169
163
|
const joiner =
|
|
170
|
-
(options: ITransformOptions) =>
|
|
171
164
|
(equals: boolean) =>
|
|
172
165
|
(importer: FunctionImporter): CheckerProgrammer.IConfig.IJoiner => ({
|
|
173
|
-
object: validate_object(
|
|
166
|
+
object: validate_object(equals)(importer),
|
|
174
167
|
array: (input, arrow) =>
|
|
175
168
|
check_everything(
|
|
176
169
|
ts.factory.createCallExpression(
|
|
@@ -17,23 +17,22 @@ export const check_dynamic_properties =
|
|
|
17
17
|
regular: IExpressionEntry[],
|
|
18
18
|
dynamic: IExpressionEntry[],
|
|
19
19
|
): ts.Expression => {
|
|
20
|
-
|
|
21
|
-
props.equals === true &&
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
);
|
|
20
|
+
const length =
|
|
21
|
+
props.equals === true && dynamic.length === 0
|
|
22
|
+
? ts.factory.createStrictEquality(
|
|
23
|
+
ts.factory.createNumericLiteral(
|
|
24
|
+
regular.filter((r) => r.meta.required).length,
|
|
25
|
+
),
|
|
26
|
+
IdentifierFactory.join(
|
|
27
|
+
ts.factory.createCallExpression(
|
|
28
|
+
ts.factory.createIdentifier("Object.keys"),
|
|
29
|
+
undefined,
|
|
30
|
+
[ts.factory.createIdentifier("input")],
|
|
31
|
+
),
|
|
32
|
+
"length",
|
|
33
|
+
),
|
|
34
|
+
)
|
|
35
|
+
: null;
|
|
37
36
|
|
|
38
37
|
const criteria = props.entries
|
|
39
38
|
? ts.factory.createCallExpression(props.entries, undefined, [
|
|
@@ -56,9 +55,10 @@ export const check_dynamic_properties =
|
|
|
56
55
|
undefined,
|
|
57
56
|
[check_dynamic_property(props)(regular, dynamic)],
|
|
58
57
|
);
|
|
59
|
-
|
|
58
|
+
const right: ts.Expression = (props.halt || ((elem) => elem))(
|
|
60
59
|
props.assert ? criteria : check_everything(criteria),
|
|
61
60
|
);
|
|
61
|
+
return length ? ts.factory.createLogicalOr(length, right) : right;
|
|
62
62
|
};
|
|
63
63
|
|
|
64
64
|
const check_dynamic_property =
|
|
@@ -26,7 +26,6 @@ export namespace check_object {
|
|
|
26
26
|
export interface IProps {
|
|
27
27
|
equals: boolean;
|
|
28
28
|
assert: boolean;
|
|
29
|
-
undefined: boolean;
|
|
30
29
|
halt?: (exp: ts.Expression) => ts.Expression;
|
|
31
30
|
reduce: (a: ts.Expression, b: ts.Expression) => ts.Expression;
|
|
32
31
|
positive: ts.Expression;
|
|
@@ -44,15 +44,4 @@ export interface ITransformOptions {
|
|
|
44
44
|
* @default false
|
|
45
45
|
*/
|
|
46
46
|
functional?: boolean;
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Whether to check undefined value or not.
|
|
50
|
-
*
|
|
51
|
-
* JavaScript can assign `undefined` value to a specific property and it is an
|
|
52
|
-
* issue when validating without allowing superfluous properties. Should undefined
|
|
53
|
-
* value assigned superfluous property be allowed or not?
|
|
54
|
-
*
|
|
55
|
-
* @default true
|
|
56
|
-
*/
|
|
57
|
-
undefined?: boolean;
|
|
58
47
|
}
|