typia 5.1.6 → 5.2.0
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/CamelCase.d.ts +32 -0
- package/lib/CamelCase.js +3 -0
- package/lib/CamelCase.js.map +1 -0
- package/lib/PascalCase.d.ts +32 -0
- package/lib/PascalCase.js +3 -0
- package/lib/PascalCase.js.map +1 -0
- package/lib/Primitive.d.ts +1 -1
- package/lib/Resolved.d.ts +5 -5
- package/lib/SnakeCase.d.ts +34 -0
- package/lib/SnakeCase.js +3 -0
- package/lib/SnakeCase.js.map +1 -0
- package/lib/functional/$convention.d.ts +1 -0
- package/lib/functional/$convention.js +63 -0
- package/lib/functional/$convention.js.map +1 -0
- package/lib/functional/Namespace.js +9 -0
- package/lib/functional/Namespace.js.map +1 -1
- package/lib/module.d.ts +5 -1
- package/lib/module.js +6 -2
- package/lib/module.js.map +1 -1
- package/lib/notations.d.ts +538 -0
- package/lib/notations.js +146 -0
- package/lib/notations.js.map +1 -0
- package/lib/programmers/helpers/NotationJoiner.d.ts +7 -0
- package/lib/programmers/helpers/NotationJoiner.js +85 -0
- package/lib/programmers/helpers/NotationJoiner.js.map +1 -0
- package/lib/programmers/misc/MiscCloneProgrammer.js +12 -1
- package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
- package/lib/programmers/misc/MiscPruneProgrammer.js +2 -1
- package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
- package/lib/programmers/notations/NotationAssertGeneralProgrammer.d.ts +5 -0
- package/lib/programmers/notations/NotationAssertGeneralProgrammer.js +44 -0
- package/lib/programmers/notations/NotationAssertGeneralProgrammer.js.map +1 -0
- package/lib/programmers/notations/NotationGeneralProgrammer.d.ts +6 -0
- package/lib/programmers/notations/NotationGeneralProgrammer.js +490 -0
- package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -0
- package/lib/programmers/notations/NotationIsGeneralProgrammer.d.ts +5 -0
- package/lib/programmers/notations/NotationIsGeneralProgrammer.js +47 -0
- package/lib/programmers/notations/NotationIsGeneralProgrammer.js.map +1 -0
- package/lib/programmers/notations/NotationValidateGeneralProgrammer.d.ts +5 -0
- package/lib/programmers/notations/NotationValidateGeneralProgrammer.js +44 -0
- package/lib/programmers/notations/NotationValidateGeneralProgrammer.js.map +1 -0
- package/lib/transformers/CallExpressionTransformer.js +99 -16
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonAssertParseTransformer.js +1 -1
- package/lib/transformers/features/json/JsonAssertParseTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonAssertStringifyTransformer.js +1 -1
- package/lib/transformers/features/json/JsonAssertStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonCreateAssertParseTransformer.js +1 -1
- package/lib/transformers/features/json/JsonCreateAssertParseTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.js +1 -1
- package/lib/transformers/features/json/JsonCreateAssertStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonCreateIsParseTransformer.js +1 -1
- package/lib/transformers/features/json/JsonCreateIsParseTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.js +1 -1
- package/lib/transformers/features/json/JsonCreateIsStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonCreateStringifyTransformer.js +1 -1
- package/lib/transformers/features/json/JsonCreateStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonCreateValidateParseTransformer.js +1 -1
- package/lib/transformers/features/json/JsonCreateValidateParseTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.js +1 -1
- package/lib/transformers/features/json/JsonCreateValidateStringifyProgrammer.js.map +1 -1
- package/lib/transformers/features/json/JsonIsParseTransformer.js +1 -1
- package/lib/transformers/features/json/JsonIsParseTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonIsStringifyTransformer.js +1 -1
- package/lib/transformers/features/json/JsonIsStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonStringifyTransformer.js +1 -1
- package/lib/transformers/features/json/JsonStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonValidateParseTransformer.js +1 -1
- package/lib/transformers/features/json/JsonValidateParseTransformer.js.map +1 -1
- package/lib/transformers/features/json/JsonValidateStringifyTransformer.js +1 -1
- package/lib/transformers/features/json/JsonValidateStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscAssertCloneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscAssertCloneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscAssertPruneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscAssertPruneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCloneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCloneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCreateAssertCloneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCreateAssertPruneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCreateCloneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCreateCloneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCreateIsCloneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCreateIsPruneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCreatePruneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCreatePruneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCreateValidateCloneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscCreateValidatePruneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscIsCloneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscIsCloneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscIsPruneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscIsPruneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscPruneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscPruneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscValidateCloneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscValidateCloneTransformer.js.map +1 -1
- package/lib/transformers/features/misc/MiscValidatePruneTransformer.js +1 -1
- package/lib/transformers/features/misc/MiscValidatePruneTransformer.js.map +1 -1
- package/lib/transformers/features/notations/NotationAssertGeneralTransformer.d.ts +4 -0
- package/lib/transformers/features/notations/NotationAssertGeneralTransformer.js +15 -0
- package/lib/transformers/features/notations/NotationAssertGeneralTransformer.js.map +1 -0
- package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.d.ts +4 -0
- package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.js +15 -0
- package/lib/transformers/features/notations/NotationCreateAssertGeneralTransformer.js.map +1 -0
- package/lib/transformers/features/notations/NotationCreateGeneralTransformer.d.ts +4 -0
- package/lib/transformers/features/notations/NotationCreateGeneralTransformer.js +15 -0
- package/lib/transformers/features/notations/NotationCreateGeneralTransformer.js.map +1 -0
- package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.d.ts +4 -0
- package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.js +15 -0
- package/lib/transformers/features/notations/NotationCreateIsGeneralTransformer.js.map +1 -0
- package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.d.ts +4 -0
- package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.js +15 -0
- package/lib/transformers/features/notations/NotationCreateValidateGeneralTransformer.js.map +1 -0
- package/lib/transformers/features/notations/NotationGeneralTransformer.d.ts +4 -0
- package/lib/transformers/features/notations/NotationGeneralTransformer.js +14 -0
- package/lib/transformers/features/notations/NotationGeneralTransformer.js.map +1 -0
- package/lib/transformers/features/notations/NotationIsGeneralTransformer.d.ts +4 -0
- package/lib/transformers/features/notations/NotationIsGeneralTransformer.js +15 -0
- package/lib/transformers/features/notations/NotationIsGeneralTransformer.js.map +1 -0
- package/lib/transformers/features/notations/NotationValidateGeneralTransformer.d.ts +4 -0
- package/lib/transformers/features/notations/NotationValidateGeneralTransformer.js +15 -0
- package/lib/transformers/features/notations/NotationValidateGeneralTransformer.js.map +1 -0
- package/lib/transformers/features/protobuf/{CreateProtobufAssertDecodeTransformer.d.ts → ProtobufCreateAssertDecodeTransformer.d.ts} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufAssertDecodeTransformer.js → ProtobufCreateAssertDecodeTransformer.js} +6 -6
- package/lib/transformers/features/protobuf/{CreateProtobufAssertEncodeTransformer.js.map → ProtobufCreateAssertDecodeTransformer.js.map} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufAssertEncodeTransformer.d.ts → ProtobufCreateAssertEncodeTransformer.d.ts} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufAssertEncodeTransformer.js → ProtobufCreateAssertEncodeTransformer.js} +6 -6
- package/lib/transformers/features/protobuf/{CreateProtobufAssertDecodeTransformer.js.map → ProtobufCreateAssertEncodeTransformer.js.map} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufDecodeTransformer.d.ts → ProtobufCreateDecodeTransformer.d.ts} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufDecodeTransformer.js → ProtobufCreateDecodeTransformer.js} +6 -6
- package/lib/transformers/features/protobuf/{CreateProtobufDecodeTransformer.js.map → ProtobufCreateDecodeTransformer.js.map} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufEncodeTransformer.d.ts → ProtobufCreateEncodeTransformer.d.ts} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufEncodeTransformer.js → ProtobufCreateEncodeTransformer.js} +6 -6
- package/lib/transformers/features/protobuf/{CreateProtobufEncodeTransformer.js.map → ProtobufCreateEncodeTransformer.js.map} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufIsDecodeTransformer.d.ts → ProtobufCreateIsDecodeTransformer.d.ts} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufIsDecodeTransformer.js → ProtobufCreateIsDecodeTransformer.js} +6 -6
- package/lib/transformers/features/protobuf/{CreateProtobufIsDecodeTransformer.js.map → ProtobufCreateIsDecodeTransformer.js.map} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufIsEncodeTransformer.d.ts → ProtobufCreateIsEncodeTransformer.d.ts} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufIsEncodeTransformer.js → ProtobufCreateIsEncodeTransformer.js} +6 -6
- package/lib/transformers/features/protobuf/{CreateProtobufIsEncodeTransformer.js.map → ProtobufCreateIsEncodeTransformer.js.map} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufValidateDecodeTransformer.d.ts → ProtobufCreateValidateDecodeTransformer.d.ts} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufValidateDecodeTransformer.js → ProtobufCreateValidateDecodeTransformer.js} +6 -6
- package/lib/transformers/features/protobuf/{CreateProtobufValidateDecodeTransformer.js.map → ProtobufCreateValidateDecodeTransformer.js.map} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufValidateEncodeTransformer.d.ts → ProtobufCreateValidateEncodeTransformer.d.ts} +1 -1
- package/lib/transformers/features/protobuf/{CreateProtobufValidateEncodeTransformer.js → ProtobufCreateValidateEncodeTransformer.js} +6 -6
- package/lib/transformers/features/protobuf/{CreateProtobufValidateEncodeTransformer.js.map → ProtobufCreateValidateEncodeTransformer.js.map} +1 -1
- package/lib/utils/NamingConvention.d.ts +5 -0
- package/lib/utils/NamingConvention.js +115 -0
- package/lib/utils/NamingConvention.js.map +1 -0
- package/lib/utils/StringUtil.d.ts +3 -0
- package/lib/utils/StringUtil.js +10 -0
- package/lib/utils/StringUtil.js.map +1 -0
- package/package.json +2 -1
- package/src/CamelCase.ts +116 -0
- package/src/PascalCase.ts +116 -0
- package/src/Primitive.ts +135 -135
- package/src/Resolved.ts +116 -116
- package/src/SnakeCase.ts +156 -0
- package/src/functional/$convention.ts +40 -0
- package/src/functional/Namespace.ts +164 -142
- package/src/module.ts +662 -657
- package/src/notations.ts +855 -0
- package/src/programmers/helpers/NotationJoiner.ts +146 -0
- package/src/programmers/misc/MiscCloneProgrammer.ts +790 -774
- package/src/programmers/misc/MiscPruneProgrammer.ts +552 -550
- package/src/programmers/notations/NotationAssertGeneralProgrammer.ts +72 -0
- package/src/programmers/notations/NotationGeneralProgrammer.ts +720 -0
- package/src/programmers/notations/NotationIsGeneralProgrammer.ts +79 -0
- package/src/programmers/notations/NotationValidateGeneralProgrammer.ts +88 -0
- package/src/transformers/CallExpressionTransformer.ts +380 -289
- package/src/transformers/features/json/JsonAssertParseTransformer.ts +10 -10
- package/src/transformers/features/json/JsonAssertStringifyTransformer.ts +10 -10
- package/src/transformers/features/json/JsonCreateAssertParseTransformer.ts +12 -10
- package/src/transformers/features/json/JsonCreateAssertStringifyTransformer.ts +12 -12
- package/src/transformers/features/json/JsonCreateIsParseTransformer.ts +9 -9
- package/src/transformers/features/json/JsonCreateIsStringifyTransformer.ts +12 -10
- package/src/transformers/features/json/JsonCreateStringifyTransformer.ts +9 -9
- package/src/transformers/features/json/JsonCreateValidateParseTransformer.ts +12 -10
- package/src/transformers/features/json/JsonCreateValidateStringifyProgrammer.ts +12 -12
- package/src/transformers/features/json/JsonIsParseTransformer.ts +9 -9
- package/src/transformers/features/json/JsonIsStringifyTransformer.ts +10 -10
- package/src/transformers/features/json/JsonStringifyTransformer.ts +9 -9
- package/src/transformers/features/json/JsonValidateParseTransformer.ts +10 -10
- package/src/transformers/features/json/JsonValidateStringifyTransformer.ts +10 -10
- package/src/transformers/features/misc/MiscAssertCloneTransformer.ts +10 -10
- package/src/transformers/features/misc/MiscAssertPruneTransformer.ts +10 -10
- package/src/transformers/features/misc/MiscCloneTransformer.ts +9 -9
- package/src/transformers/features/misc/MiscCreateAssertCloneTransformer.ts +12 -10
- package/src/transformers/features/misc/MiscCreateAssertPruneTransformer.ts +12 -10
- package/src/transformers/features/misc/MiscCreateCloneTransformer.ts +9 -9
- package/src/transformers/features/misc/MiscCreateIsCloneTransformer.ts +9 -9
- package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +9 -9
- package/src/transformers/features/misc/MiscCreatePruneTransformer.ts +9 -9
- package/src/transformers/features/misc/MiscCreateValidateCloneTransformer.ts +12 -10
- package/src/transformers/features/misc/MiscCreateValidatePruneTransformer.ts +12 -10
- package/src/transformers/features/misc/MiscIsCloneTransformer.ts +9 -9
- package/src/transformers/features/misc/MiscIsPruneTransformer.ts +9 -9
- package/src/transformers/features/misc/MiscPruneTransformer.ts +9 -9
- package/src/transformers/features/misc/MiscValidateCloneTransformer.ts +10 -10
- package/src/transformers/features/misc/MiscValidatePruneTransformer.ts +10 -10
- package/src/transformers/features/notations/NotationAssertGeneralTransformer.ts +15 -0
- package/src/transformers/features/notations/NotationCreateAssertGeneralTransformer.ts +15 -0
- package/src/transformers/features/notations/NotationCreateGeneralTransformer.ts +15 -0
- package/src/transformers/features/notations/NotationCreateIsGeneralTransformer.ts +15 -0
- package/src/transformers/features/notations/NotationCreateValidateGeneralTransformer.ts +17 -0
- package/src/transformers/features/notations/NotationGeneralTransformer.ts +11 -0
- package/src/transformers/features/notations/NotationIsGeneralTransformer.ts +15 -0
- package/src/transformers/features/notations/NotationValidateGeneralTransformer.ts +17 -0
- package/src/transformers/features/protobuf/{CreateProtobufAssertDecodeTransformer.ts → ProtobufCreateAssertDecodeTransformer.ts} +12 -12
- package/src/transformers/features/protobuf/{CreateProtobufAssertEncodeTransformer.ts → ProtobufCreateAssertEncodeTransformer.ts} +12 -12
- package/src/transformers/features/protobuf/{CreateProtobufDecodeTransformer.ts → ProtobufCreateDecodeTransformer.ts} +9 -9
- package/src/transformers/features/protobuf/{CreateProtobufEncodeTransformer.ts → ProtobufCreateEncodeTransformer.ts} +9 -9
- package/src/transformers/features/protobuf/{CreateProtobufIsDecodeTransformer.ts → ProtobufCreateIsDecodeTransformer.ts} +12 -12
- package/src/transformers/features/protobuf/{CreateProtobufIsEncodeTransformer.ts → ProtobufCreateIsEncodeTransformer.ts} +12 -12
- package/src/transformers/features/protobuf/{CreateProtobufValidateDecodeTransformer.ts → ProtobufCreateValidateDecodeTransformer.ts} +12 -12
- package/src/transformers/features/protobuf/{CreateProtobufValidateEncodeTransformer.ts → ProtobufCreateValidateEncodeTransformer.ts} +12 -12
- package/src/utils/NamingConvention.ts +91 -0
- package/src/utils/StringUtil.ts +4 -0
|
@@ -0,0 +1,490 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
14
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
15
|
+
if (!m) return o;
|
|
16
|
+
var i = m.call(o), r, ar = [], e;
|
|
17
|
+
try {
|
|
18
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
19
|
+
}
|
|
20
|
+
catch (error) { e = { error: error }; }
|
|
21
|
+
finally {
|
|
22
|
+
try {
|
|
23
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
24
|
+
}
|
|
25
|
+
finally { if (e) throw e.error; }
|
|
26
|
+
}
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
30
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
31
|
+
if (ar || !(i in from)) {
|
|
32
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
33
|
+
ar[i] = from[i];
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
37
|
+
};
|
|
38
|
+
var __values = (this && this.__values) || function(o) {
|
|
39
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
40
|
+
if (m) return m.call(o);
|
|
41
|
+
if (o && typeof o.length === "number") return {
|
|
42
|
+
next: function () {
|
|
43
|
+
if (o && i >= o.length) o = void 0;
|
|
44
|
+
return { value: o && o[i++], done: !o };
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
48
|
+
};
|
|
49
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
50
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
|
+
};
|
|
52
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
+
exports.NotationGeneralProgrammer = void 0;
|
|
54
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
55
|
+
var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
|
|
56
|
+
var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
|
|
57
|
+
var MetadataCollection_1 = require("../../factories/MetadataCollection");
|
|
58
|
+
var MetadataFactory_1 = require("../../factories/MetadataFactory");
|
|
59
|
+
var StatementFactory_1 = require("../../factories/StatementFactory");
|
|
60
|
+
var TypeFactory_1 = require("../../factories/TypeFactory");
|
|
61
|
+
var Metadata_1 = require("../../schemas/metadata/Metadata");
|
|
62
|
+
var MetadataArray_1 = require("../../schemas/metadata/MetadataArray");
|
|
63
|
+
var TransformerError_1 = require("../../transformers/TransformerError");
|
|
64
|
+
var StringUtil_1 = require("../../utils/StringUtil");
|
|
65
|
+
var FeatureProgrammer_1 = require("../FeatureProgrammer");
|
|
66
|
+
var IsProgrammer_1 = require("../IsProgrammer");
|
|
67
|
+
var FunctionImporeter_1 = require("../helpers/FunctionImporeter");
|
|
68
|
+
var NotationJoiner_1 = require("../helpers/NotationJoiner");
|
|
69
|
+
var UnionExplorer_1 = require("../helpers/UnionExplorer");
|
|
70
|
+
var decode_union_object_1 = require("../internal/decode_union_object");
|
|
71
|
+
var wrap_metadata_rest_tuple_1 = require("../internal/wrap_metadata_rest_tuple");
|
|
72
|
+
var NotationGeneralProgrammer;
|
|
73
|
+
(function (NotationGeneralProgrammer) {
|
|
74
|
+
NotationGeneralProgrammer.returnType = function (rename) { return function (type) {
|
|
75
|
+
return "typia.".concat(StringUtil_1.StringUtil.capitalize(rename.name), "Case<").concat(type, ">");
|
|
76
|
+
}; };
|
|
77
|
+
NotationGeneralProgrammer.write = function (rename) {
|
|
78
|
+
return function (project) {
|
|
79
|
+
return function (modulo) {
|
|
80
|
+
var importer = new FunctionImporeter_1.FunctionImporter(modulo.getText());
|
|
81
|
+
return FeatureProgrammer_1.FeatureProgrammer.write(project)(__assign(__assign({}, configure(rename)(project)(importer)), { addition: function (collection) { return __spreadArray(__spreadArray([], __read(IsProgrammer_1.IsProgrammer.write_function_statements(project)(importer)(collection)), false), __read(importer.declare(modulo)), false); } }))(importer);
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
var write_array_functions = function (config) {
|
|
86
|
+
return function (importer) {
|
|
87
|
+
return function (collection) {
|
|
88
|
+
return collection
|
|
89
|
+
.arrays()
|
|
90
|
+
.filter(function (a) { return a.recursive; })
|
|
91
|
+
.map(function (type, i) {
|
|
92
|
+
return StatementFactory_1.StatementFactory.constant("".concat(config.prefix, "a").concat(i), typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations(config)(TypeFactory_1.TypeFactory.keyword("any"))(typescript_1.default.factory.createIdentifier("input")), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_array_inline(config)(importer)(typescript_1.default.factory.createIdentifier("input"), MetadataArray_1.MetadataArray.create({
|
|
93
|
+
type: type,
|
|
94
|
+
tags: [],
|
|
95
|
+
}), {
|
|
96
|
+
tracable: config.trace,
|
|
97
|
+
source: "function",
|
|
98
|
+
from: "array",
|
|
99
|
+
postfix: "",
|
|
100
|
+
})));
|
|
101
|
+
});
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
var write_tuple_functions = function (project) {
|
|
106
|
+
return function (config) {
|
|
107
|
+
return function (importer) {
|
|
108
|
+
return function (collection) {
|
|
109
|
+
return collection
|
|
110
|
+
.tuples()
|
|
111
|
+
.filter(function (t) { return t.recursive; })
|
|
112
|
+
.map(function (tuple, i) {
|
|
113
|
+
return StatementFactory_1.StatementFactory.constant("".concat(config.prefix, "t").concat(i), typescript_1.default.factory.createArrowFunction(undefined, undefined, FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations(config)(TypeFactory_1.TypeFactory.keyword("any"))(typescript_1.default.factory.createIdentifier("input")), TypeFactory_1.TypeFactory.keyword("any"), undefined, decode_tuple_inline(project)(config)(importer)(typescript_1.default.factory.createIdentifier("input"), tuple, {
|
|
114
|
+
tracable: config.trace,
|
|
115
|
+
source: "function",
|
|
116
|
+
from: "array",
|
|
117
|
+
postfix: "",
|
|
118
|
+
})));
|
|
119
|
+
});
|
|
120
|
+
};
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
var decode = function (project) {
|
|
125
|
+
return function (config) {
|
|
126
|
+
return function (importer) {
|
|
127
|
+
return function (input, meta, explore) {
|
|
128
|
+
var e_1, _a, e_2, _b, e_3, _c;
|
|
129
|
+
if (meta.any ||
|
|
130
|
+
meta.arrays.some(function (a) { return a.type.value.any; }) ||
|
|
131
|
+
meta.tuples.some(function (t) {
|
|
132
|
+
return !!t.type.elements.length &&
|
|
133
|
+
t.type.elements.every(function (e) { return e.any; });
|
|
134
|
+
}))
|
|
135
|
+
return typescript_1.default.factory.createCallExpression(importer.use("any"), undefined, [input]);
|
|
136
|
+
var unions = [];
|
|
137
|
+
if (meta.functional)
|
|
138
|
+
unions.push({
|
|
139
|
+
type: "functional",
|
|
140
|
+
is: function () {
|
|
141
|
+
return typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("function"), typescript_1.default.factory.createTypeOfExpression(input));
|
|
142
|
+
},
|
|
143
|
+
value: function () { return typescript_1.default.factory.createIdentifier("undefined"); },
|
|
144
|
+
});
|
|
145
|
+
var _loop_1 = function (tuple) {
|
|
146
|
+
unions.push({
|
|
147
|
+
type: "tuple",
|
|
148
|
+
is: function () {
|
|
149
|
+
return IsProgrammer_1.IsProgrammer.decode(project)(importer)(input, (function () {
|
|
150
|
+
var partial = Metadata_1.Metadata.initialize();
|
|
151
|
+
partial.tuples.push(tuple);
|
|
152
|
+
return partial;
|
|
153
|
+
})(), explore);
|
|
154
|
+
},
|
|
155
|
+
value: function () {
|
|
156
|
+
return decode_tuple(project)(config)(importer)(input, tuple, explore);
|
|
157
|
+
},
|
|
158
|
+
});
|
|
159
|
+
};
|
|
160
|
+
try {
|
|
161
|
+
for (var _d = __values(meta.tuples), _e = _d.next(); !_e.done; _e = _d.next()) {
|
|
162
|
+
var tuple = _e.value;
|
|
163
|
+
_loop_1(tuple);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
167
|
+
finally {
|
|
168
|
+
try {
|
|
169
|
+
if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
|
|
170
|
+
}
|
|
171
|
+
finally { if (e_1) throw e_1.error; }
|
|
172
|
+
}
|
|
173
|
+
if (meta.arrays.length)
|
|
174
|
+
unions.push({
|
|
175
|
+
type: "array",
|
|
176
|
+
is: function () { return ExpressionFactory_1.ExpressionFactory.isArray(input); },
|
|
177
|
+
value: function () {
|
|
178
|
+
return explore_arrays(project)(config)(importer)(input, meta.arrays, __assign(__assign({}, explore), { from: "array" }));
|
|
179
|
+
},
|
|
180
|
+
});
|
|
181
|
+
if (meta.sets.length)
|
|
182
|
+
unions.push({
|
|
183
|
+
type: "set",
|
|
184
|
+
is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Set")(input); },
|
|
185
|
+
value: function () {
|
|
186
|
+
return explore_sets(project)(config)(importer)(input, meta.sets, __assign(__assign({}, explore), { from: "array" }));
|
|
187
|
+
},
|
|
188
|
+
});
|
|
189
|
+
if (meta.maps.length)
|
|
190
|
+
unions.push({
|
|
191
|
+
type: "map",
|
|
192
|
+
is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf("Map")(input); },
|
|
193
|
+
value: function () {
|
|
194
|
+
return explore_maps(project)(config)(importer)(input, meta.maps, __assign(__assign({}, explore), { from: "array" }));
|
|
195
|
+
},
|
|
196
|
+
});
|
|
197
|
+
var _loop_2 = function (native) {
|
|
198
|
+
if (native === "WeakSet" || native === "WeakMap")
|
|
199
|
+
return "continue";
|
|
200
|
+
unions.push({
|
|
201
|
+
type: "native",
|
|
202
|
+
is: function () { return ExpressionFactory_1.ExpressionFactory.isInstanceOf(native)(input); },
|
|
203
|
+
value: function () {
|
|
204
|
+
return native === "Boolean" ||
|
|
205
|
+
native === "Number" ||
|
|
206
|
+
native === "String"
|
|
207
|
+
? typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(input)("valueOf"), undefined, undefined)
|
|
208
|
+
: decode_native(native)(input);
|
|
209
|
+
},
|
|
210
|
+
});
|
|
211
|
+
};
|
|
212
|
+
try {
|
|
213
|
+
for (var _f = __values(meta.natives), _g = _f.next(); !_g.done; _g = _f.next()) {
|
|
214
|
+
var native = _g.value;
|
|
215
|
+
_loop_2(native);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
219
|
+
finally {
|
|
220
|
+
try {
|
|
221
|
+
if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
|
|
222
|
+
}
|
|
223
|
+
finally { if (e_2) throw e_2.error; }
|
|
224
|
+
}
|
|
225
|
+
if (meta.objects.length)
|
|
226
|
+
unions.push({
|
|
227
|
+
type: "object",
|
|
228
|
+
is: function () {
|
|
229
|
+
return ExpressionFactory_1.ExpressionFactory.isObject({
|
|
230
|
+
checkNull: true,
|
|
231
|
+
checkArray: false,
|
|
232
|
+
})(input);
|
|
233
|
+
},
|
|
234
|
+
value: function () {
|
|
235
|
+
return explore_objects(config)(importer)(input, meta, __assign(__assign({}, explore), { from: "object" }));
|
|
236
|
+
},
|
|
237
|
+
});
|
|
238
|
+
var last = input;
|
|
239
|
+
try {
|
|
240
|
+
for (var _h = __values(unions.reverse()), _j = _h.next(); !_j.done; _j = _h.next()) {
|
|
241
|
+
var u = _j.value;
|
|
242
|
+
last = typescript_1.default.factory.createConditionalExpression(u.is(), undefined, u.value(), undefined, last);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
246
|
+
finally {
|
|
247
|
+
try {
|
|
248
|
+
if (_j && !_j.done && (_c = _h.return)) _c.call(_h);
|
|
249
|
+
}
|
|
250
|
+
finally { if (e_3) throw e_3.error; }
|
|
251
|
+
}
|
|
252
|
+
return typescript_1.default.factory.createAsExpression(last, TypeFactory_1.TypeFactory.keyword("any"));
|
|
253
|
+
};
|
|
254
|
+
};
|
|
255
|
+
};
|
|
256
|
+
};
|
|
257
|
+
var decode_object = function (importer) {
|
|
258
|
+
return FeatureProgrammer_1.FeatureProgrammer.decode_object({
|
|
259
|
+
trace: false,
|
|
260
|
+
path: false,
|
|
261
|
+
prefix: PREFIX,
|
|
262
|
+
})(importer);
|
|
263
|
+
};
|
|
264
|
+
var decode_array = function (config) {
|
|
265
|
+
return function (importer) {
|
|
266
|
+
return function (input, array, explore) {
|
|
267
|
+
return array.type.recursive
|
|
268
|
+
? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.useLocal("".concat(config.prefix, "a").concat(array.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(config)(__assign(__assign({}, explore), { source: "function", from: "array" }))(input))
|
|
269
|
+
: decode_array_inline(config)(importer)(input, array, explore);
|
|
270
|
+
};
|
|
271
|
+
};
|
|
272
|
+
};
|
|
273
|
+
var decode_array_inline = function (config) {
|
|
274
|
+
return function (importer) {
|
|
275
|
+
return function (input, array, explore) {
|
|
276
|
+
return FeatureProgrammer_1.FeatureProgrammer.decode_array(config)(importer)(NotationJoiner_1.NotationJoiner.array)(input, array, explore);
|
|
277
|
+
};
|
|
278
|
+
};
|
|
279
|
+
};
|
|
280
|
+
var decode_tuple = function (project) {
|
|
281
|
+
return function (config) {
|
|
282
|
+
return function (importer) {
|
|
283
|
+
return function (input, tuple, explore) {
|
|
284
|
+
return tuple.type.recursive
|
|
285
|
+
? typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.useLocal("".concat(config.prefix, "t").concat(tuple.type.index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(config)(__assign(__assign({}, explore), { source: "function" }))(input))
|
|
286
|
+
: decode_tuple_inline(project)(config)(importer)(input, tuple.type, explore);
|
|
287
|
+
};
|
|
288
|
+
};
|
|
289
|
+
};
|
|
290
|
+
};
|
|
291
|
+
var decode_tuple_inline = function (project) {
|
|
292
|
+
return function (config) {
|
|
293
|
+
return function (importer) {
|
|
294
|
+
return function (input, tuple, explore) {
|
|
295
|
+
var children = tuple.elements
|
|
296
|
+
.filter(function (m) { return m.rest === null; })
|
|
297
|
+
.map(function (elem, index) {
|
|
298
|
+
return decode(project)(config)(importer)(typescript_1.default.factory.createElementAccessExpression(input, index), elem, __assign(__assign({}, explore), { from: "array", postfix: explore.postfix.length
|
|
299
|
+
? "".concat(explore.postfix.slice(0, -1), "[").concat(index, "]\"")
|
|
300
|
+
: "\"[".concat(index, "]\"") }));
|
|
301
|
+
});
|
|
302
|
+
var rest = (function () {
|
|
303
|
+
if (tuple.elements.length === 0)
|
|
304
|
+
return null;
|
|
305
|
+
var last = tuple.elements.at(-1);
|
|
306
|
+
var rest = last.rest;
|
|
307
|
+
if (rest === null)
|
|
308
|
+
return null;
|
|
309
|
+
return decode(project)(config)(importer)(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(input)("slice"), undefined, [
|
|
310
|
+
typescript_1.default.factory.createNumericLiteral(tuple.elements.length - 1),
|
|
311
|
+
]), (0, wrap_metadata_rest_tuple_1.wrap_metadata_rest_tuple)(tuple.elements.at(-1).rest), __assign(__assign({}, explore), { start: tuple.elements.length - 1 }));
|
|
312
|
+
})();
|
|
313
|
+
return NotationJoiner_1.NotationJoiner.tuple(children, rest);
|
|
314
|
+
};
|
|
315
|
+
};
|
|
316
|
+
};
|
|
317
|
+
};
|
|
318
|
+
var decode_native = function (type) { return function (input) {
|
|
319
|
+
return type === "Date"
|
|
320
|
+
? typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier(type), undefined, [input])
|
|
321
|
+
: input;
|
|
322
|
+
}; };
|
|
323
|
+
var explore_sets = function (project) {
|
|
324
|
+
return function (config) {
|
|
325
|
+
return function (importer) {
|
|
326
|
+
return function (input, sets, explore) {
|
|
327
|
+
return typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.set({
|
|
328
|
+
checker: IsProgrammer_1.IsProgrammer.decode(project)(importer),
|
|
329
|
+
decoder: function (input, array, explore) {
|
|
330
|
+
return typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], [
|
|
331
|
+
decode_array(config)(importer)(input, array, explore),
|
|
332
|
+
]);
|
|
333
|
+
},
|
|
334
|
+
empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Set"), [TypeFactory_1.TypeFactory.keyword("any")], []),
|
|
335
|
+
success: typescript_1.default.factory.createTrue(),
|
|
336
|
+
failure: function (input, expected) {
|
|
337
|
+
return create_throw_error(importer)(expected)(input);
|
|
338
|
+
},
|
|
339
|
+
})([])(input, sets, explore), undefined, undefined);
|
|
340
|
+
};
|
|
341
|
+
};
|
|
342
|
+
};
|
|
343
|
+
};
|
|
344
|
+
var explore_maps = function (project) {
|
|
345
|
+
return function (config) {
|
|
346
|
+
return function (importer) {
|
|
347
|
+
return function (input, maps, explore) {
|
|
348
|
+
return typescript_1.default.factory.createCallExpression(UnionExplorer_1.UnionExplorer.map({
|
|
349
|
+
checker: function (top, entry, explore) {
|
|
350
|
+
var func = IsProgrammer_1.IsProgrammer.decode(project)(importer);
|
|
351
|
+
return typescript_1.default.factory.createLogicalAnd(func(typescript_1.default.factory.createElementAccessExpression(top, 0), entry[0], __assign(__assign({}, explore), { postfix: "".concat(explore.postfix, "[0]") })), func(typescript_1.default.factory.createElementAccessExpression(top, 1), entry[1], __assign(__assign({}, explore), { postfix: "".concat(explore.postfix, "[1]") })));
|
|
352
|
+
},
|
|
353
|
+
decoder: function (input, array, explore) {
|
|
354
|
+
return typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [
|
|
355
|
+
TypeFactory_1.TypeFactory.keyword("any"),
|
|
356
|
+
TypeFactory_1.TypeFactory.keyword("any"),
|
|
357
|
+
], [
|
|
358
|
+
decode_array(config)(importer)(input, array, explore),
|
|
359
|
+
]);
|
|
360
|
+
},
|
|
361
|
+
empty: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("Map"), [
|
|
362
|
+
TypeFactory_1.TypeFactory.keyword("any"),
|
|
363
|
+
TypeFactory_1.TypeFactory.keyword("any"),
|
|
364
|
+
], []),
|
|
365
|
+
success: typescript_1.default.factory.createTrue(),
|
|
366
|
+
failure: function (input, expected) {
|
|
367
|
+
return create_throw_error(importer)(expected)(input);
|
|
368
|
+
},
|
|
369
|
+
})([])(input, maps, explore), undefined, undefined);
|
|
370
|
+
};
|
|
371
|
+
};
|
|
372
|
+
};
|
|
373
|
+
};
|
|
374
|
+
var explore_objects = function (config) {
|
|
375
|
+
return function (importer) {
|
|
376
|
+
return function (input, meta, explore) {
|
|
377
|
+
if (meta.objects.length === 1)
|
|
378
|
+
return decode_object(importer)(input, meta.objects[0], explore);
|
|
379
|
+
return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.useLocal("".concat(PREFIX, "u").concat(meta.union_index))), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(config)(explore)(input));
|
|
380
|
+
};
|
|
381
|
+
};
|
|
382
|
+
};
|
|
383
|
+
var explore_arrays = function (project) {
|
|
384
|
+
return function (config) {
|
|
385
|
+
return function (importer) {
|
|
386
|
+
return function (input, elements, explore) {
|
|
387
|
+
return explore_array_like_union_types(config)(importer)(UnionExplorer_1.UnionExplorer.array({
|
|
388
|
+
checker: IsProgrammer_1.IsProgrammer.decode(project)(importer),
|
|
389
|
+
decoder: decode_array(config)(importer),
|
|
390
|
+
empty: typescript_1.default.factory.createIdentifier("[]"),
|
|
391
|
+
success: typescript_1.default.factory.createTrue(),
|
|
392
|
+
failure: function (input, expected) {
|
|
393
|
+
return create_throw_error(importer)(expected)(input);
|
|
394
|
+
},
|
|
395
|
+
}))(input, elements, explore);
|
|
396
|
+
};
|
|
397
|
+
};
|
|
398
|
+
};
|
|
399
|
+
};
|
|
400
|
+
var explore_array_like_union_types = function (config) {
|
|
401
|
+
return function (importer) {
|
|
402
|
+
return function (factory) {
|
|
403
|
+
return function (input, elements, explore) {
|
|
404
|
+
var arrow = function (parameters) {
|
|
405
|
+
return function (explore) {
|
|
406
|
+
return function (input) {
|
|
407
|
+
return factory(parameters)(input, elements, explore);
|
|
408
|
+
};
|
|
409
|
+
};
|
|
410
|
+
};
|
|
411
|
+
if (elements.every(function (e) { return e.type.recursive === false; }))
|
|
412
|
+
typescript_1.default.factory.createCallExpression(arrow([])(explore)(input), undefined, []);
|
|
413
|
+
explore = __assign(__assign({}, explore), { source: "function", from: "array" });
|
|
414
|
+
return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(importer.emplaceUnion(config.prefix, elements.map(function (e) { return e.type.name; }).join(" | "), function () {
|
|
415
|
+
return arrow(FeatureProgrammer_1.FeatureProgrammer.parameterDeclarations(config)(TypeFactory_1.TypeFactory.keyword("any"))(typescript_1.default.factory.createIdentifier("input")))(__assign(__assign({}, explore), { postfix: "" }))(typescript_1.default.factory.createIdentifier("input"));
|
|
416
|
+
})), undefined, FeatureProgrammer_1.FeatureProgrammer.argumentsArray(config)(explore)(input));
|
|
417
|
+
};
|
|
418
|
+
};
|
|
419
|
+
};
|
|
420
|
+
};
|
|
421
|
+
var PREFIX = "$c";
|
|
422
|
+
var configure = function (rename) {
|
|
423
|
+
return function (project) {
|
|
424
|
+
return function (importer) {
|
|
425
|
+
var config = {
|
|
426
|
+
types: {
|
|
427
|
+
input: function (type, name) {
|
|
428
|
+
return typescript_1.default.factory.createTypeReferenceNode(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(project.checker)(type));
|
|
429
|
+
},
|
|
430
|
+
output: function (type, name) {
|
|
431
|
+
return typescript_1.default.factory.createTypeReferenceNode(NotationGeneralProgrammer.returnType(rename)(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(project.checker)(type)));
|
|
432
|
+
},
|
|
433
|
+
},
|
|
434
|
+
prefix: PREFIX,
|
|
435
|
+
trace: false,
|
|
436
|
+
path: false,
|
|
437
|
+
initializer: initializer,
|
|
438
|
+
decoder: function () { return decode(project)(config)(importer); },
|
|
439
|
+
objector: {
|
|
440
|
+
checker: function () { return IsProgrammer_1.IsProgrammer.decode(project)(importer); },
|
|
441
|
+
decoder: function () { return decode_object(importer); },
|
|
442
|
+
joiner: NotationJoiner_1.NotationJoiner.object(rename),
|
|
443
|
+
unionizer: (0, decode_union_object_1.decode_union_object)(IsProgrammer_1.IsProgrammer.decode_object(importer))(decode_object(importer))(function (exp) { return exp; })(function (input, expected) {
|
|
444
|
+
return create_throw_error(importer)(expected)(input);
|
|
445
|
+
}),
|
|
446
|
+
failure: function (input, expected) {
|
|
447
|
+
return create_throw_error(importer)(expected)(input);
|
|
448
|
+
},
|
|
449
|
+
},
|
|
450
|
+
generator: {
|
|
451
|
+
arrays: function () { return write_array_functions(config)(importer); },
|
|
452
|
+
tuples: function () {
|
|
453
|
+
return write_tuple_functions(project)(config)(importer);
|
|
454
|
+
},
|
|
455
|
+
},
|
|
456
|
+
};
|
|
457
|
+
return config;
|
|
458
|
+
};
|
|
459
|
+
};
|
|
460
|
+
};
|
|
461
|
+
var initializer = function (_a) {
|
|
462
|
+
var checker = _a.checker;
|
|
463
|
+
return function (importer) {
|
|
464
|
+
return function (type) {
|
|
465
|
+
var collection = new MetadataCollection_1.MetadataCollection();
|
|
466
|
+
var result = MetadataFactory_1.MetadataFactory.analyze(checker)({
|
|
467
|
+
escape: false,
|
|
468
|
+
constant: true,
|
|
469
|
+
absorb: true,
|
|
470
|
+
})(collection)(type);
|
|
471
|
+
if (result.success === false)
|
|
472
|
+
throw TransformerError_1.TransformerError.from("typia.misc.".concat(importer.method))(result.errors);
|
|
473
|
+
return [collection, result.data];
|
|
474
|
+
};
|
|
475
|
+
};
|
|
476
|
+
};
|
|
477
|
+
var create_throw_error = function (importer) {
|
|
478
|
+
return function (expected) {
|
|
479
|
+
return function (value) {
|
|
480
|
+
return typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(importer.use("throws"), [], [
|
|
481
|
+
typescript_1.default.factory.createObjectLiteralExpression([
|
|
482
|
+
typescript_1.default.factory.createPropertyAssignment("expected", typescript_1.default.factory.createStringLiteral(expected)),
|
|
483
|
+
typescript_1.default.factory.createPropertyAssignment("value", value),
|
|
484
|
+
], true),
|
|
485
|
+
]));
|
|
486
|
+
};
|
|
487
|
+
};
|
|
488
|
+
};
|
|
489
|
+
})(NotationGeneralProgrammer || (exports.NotationGeneralProgrammer = NotationGeneralProgrammer = {}));
|
|
490
|
+
//# sourceMappingURL=NotationGeneralProgrammer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NotationGeneralProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/notations/NotationGeneralProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { IProject } from "../../transformers/IProject";
|
|
3
|
+
export declare namespace NotationIsGeneralProgrammer {
|
|
4
|
+
const write: (rename: (str: string) => string) => (project: IProject) => (modulo: ts.LeftHandSideExpression) => (type: ts.Type, name?: string) => ts.ArrowFunction;
|
|
5
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.NotationIsGeneralProgrammer = void 0;
|
|
18
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
19
|
+
var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
|
|
20
|
+
var StatementFactory_1 = require("../../factories/StatementFactory");
|
|
21
|
+
var TypeFactory_1 = require("../../factories/TypeFactory");
|
|
22
|
+
var IsProgrammer_1 = require("../IsProgrammer");
|
|
23
|
+
var NotationGeneralProgrammer_1 = require("./NotationGeneralProgrammer");
|
|
24
|
+
var NotationIsGeneralProgrammer;
|
|
25
|
+
(function (NotationIsGeneralProgrammer) {
|
|
26
|
+
NotationIsGeneralProgrammer.write = function (rename) {
|
|
27
|
+
return function (project) {
|
|
28
|
+
return function (modulo) {
|
|
29
|
+
return function (type, name) {
|
|
30
|
+
return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
|
|
31
|
+
IdentifierFactory_1.IdentifierFactory.parameter("input", TypeFactory_1.TypeFactory.keyword("any")),
|
|
32
|
+
], typescript_1.default.factory.createUnionTypeNode([
|
|
33
|
+
typescript_1.default.factory.createTypeReferenceNode(NotationGeneralProgrammer_1.NotationGeneralProgrammer.returnType(rename)(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(project.checker)(type))),
|
|
34
|
+
typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createNull()),
|
|
35
|
+
]), undefined, typescript_1.default.factory.createBlock([
|
|
36
|
+
StatementFactory_1.StatementFactory.constant("is", IsProgrammer_1.IsProgrammer.write(project)(modulo)(false)(type, name)),
|
|
37
|
+
StatementFactory_1.StatementFactory.constant("general", NotationGeneralProgrammer_1.NotationGeneralProgrammer.write(rename)(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }))(modulo)(type, name)),
|
|
38
|
+
typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createPrefixUnaryExpression(typescript_1.default.SyntaxKind.ExclamationToken, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("is"), undefined, [typescript_1.default.factory.createIdentifier("input")])), typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createNull())),
|
|
39
|
+
StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("general"), undefined, [typescript_1.default.factory.createIdentifier("input")])),
|
|
40
|
+
typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
|
|
41
|
+
]));
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
})(NotationIsGeneralProgrammer || (exports.NotationIsGeneralProgrammer = NotationIsGeneralProgrammer = {}));
|
|
47
|
+
//# sourceMappingURL=NotationIsGeneralProgrammer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NotationIsGeneralProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/notations/NotationIsGeneralProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,qEAAoE;AACpE,2DAA0D;AAI1D,gDAA+C;AAC/C,yEAAwE;AAExE,IAAiB,2BAA2B,CAmE3C;AAnED,WAAiB,2BAA2B;IAC3B,iCAAK,GACd,UAAC,MAA+B;QAChC,OAAA,UAAC,OAAiB;YAClB,OAAA,UAAC,MAAiC;gBAClC,OAAA,UAAC,IAAa,EAAE,IAAa;oBACzB,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT;wBACI,qCAAiB,CAAC,SAAS,CACvB,OAAO,EACP,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC7B;qBACJ,EACD,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;wBAC3B,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,qDAAyB,CAAC,UAAU,CAAC,MAAM,CAAC,CACxC,IAAI,aAAJ,IAAI,cAAJ,IAAI,GACA,yBAAW,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CACrD,CACJ;wBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;qBAC5D,CAAC,EACF,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;wBACnB,mCAAgB,CAAC,QAAQ,CACrB,IAAI,EACJ,2BAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CACzD;wBACD,mCAAgB,CAAC,QAAQ,CACrB,SAAS,EACT,qDAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,uBAChC,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,OAEpB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CACzB;wBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,2BAA2B,CAClC,oBAAE,CAAC,UAAU,CAAC,gBAAgB,EAC9B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACjC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,EACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAC1B,CACJ;wBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,EACtC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;wBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;qBACJ,CAAC,CACL;gBA5DD,CA4DC;YA7DL,CA6DK;QA9DL,CA8DK;IA/DL,CA+DK,CAAC;AACd,CAAC,EAnEgB,2BAA2B,2CAA3B,2BAA2B,QAmE3C"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { IProject } from "../../transformers/IProject";
|
|
3
|
+
export declare namespace NotationValidateGeneralProgrammer {
|
|
4
|
+
const write: (rename: (str: string) => string) => (project: IProject) => (modulo: ts.LeftHandSideExpression) => (type: ts.Type, name?: string) => ts.ArrowFunction;
|
|
5
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.NotationValidateGeneralProgrammer = void 0;
|
|
18
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
19
|
+
var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
|
|
20
|
+
var StatementFactory_1 = require("../../factories/StatementFactory");
|
|
21
|
+
var TypeFactory_1 = require("../../factories/TypeFactory");
|
|
22
|
+
var ValidateProgrammer_1 = require("../ValidateProgrammer");
|
|
23
|
+
var NotationGeneralProgrammer_1 = require("./NotationGeneralProgrammer");
|
|
24
|
+
var NotationValidateGeneralProgrammer;
|
|
25
|
+
(function (NotationValidateGeneralProgrammer) {
|
|
26
|
+
NotationValidateGeneralProgrammer.write = function (rename) {
|
|
27
|
+
return function (project) {
|
|
28
|
+
return function (modulo) {
|
|
29
|
+
return function (type, name) {
|
|
30
|
+
return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
|
|
31
|
+
IdentifierFactory_1.IdentifierFactory.parameter("input", TypeFactory_1.TypeFactory.keyword("any")),
|
|
32
|
+
], typescript_1.default.factory.createTypeReferenceNode("typia.IValidation<".concat(NotationGeneralProgrammer_1.NotationGeneralProgrammer.returnType(rename)(name !== null && name !== void 0 ? name : TypeFactory_1.TypeFactory.getFullName(project.checker)(type)), ">")), undefined, typescript_1.default.factory.createBlock([
|
|
33
|
+
StatementFactory_1.StatementFactory.constant("validate", ValidateProgrammer_1.ValidateProgrammer.write(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: true }) }))(modulo)(false)(type, name)),
|
|
34
|
+
StatementFactory_1.StatementFactory.constant("general", NotationGeneralProgrammer_1.NotationGeneralProgrammer.write(rename)(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }))(modulo)(type, name)),
|
|
35
|
+
StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createAsExpression(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("validate"), undefined, [typescript_1.default.factory.createIdentifier("input")]), TypeFactory_1.TypeFactory.keyword("any"))),
|
|
36
|
+
typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createIdentifier("output.success"), typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier("output.data"), typescript_1.default.SyntaxKind.EqualsToken, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("general"), undefined, [typescript_1.default.factory.createIdentifier("input")])))),
|
|
37
|
+
typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
|
|
38
|
+
]));
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
})(NotationValidateGeneralProgrammer || (exports.NotationValidateGeneralProgrammer = NotationValidateGeneralProgrammer = {}));
|
|
44
|
+
//# sourceMappingURL=NotationValidateGeneralProgrammer.js.map
|