typia 5.5.1 → 5.5.2-dev.20240307
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/executable/TypiaSetupWizard.js +1 -1
- package/lib/programmers/functional/FunctionalIsFunctionProgrammer.d.ts +1 -0
- package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js +19 -6
- package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js.map +1 -1
- package/lib/programmers/functional/FunctionalIsParametersProgrammer.js +2 -6
- package/lib/programmers/functional/FunctionalIsParametersProgrammer.js.map +1 -1
- package/lib/programmers/functional/FunctionalIsReturnProgrammer.js +2 -6
- package/lib/programmers/functional/FunctionalIsReturnProgrammer.js.map +1 -1
- package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.d.ts +1 -0
- package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js +16 -3
- package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js.map +1 -1
- package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js +1 -3
- package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js.map +1 -1
- package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js +5 -4
- package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js.map +1 -1
- package/lib/programmers/internal/application_tuple.js +3 -1
- package/lib/programmers/internal/application_tuple.js.map +1 -1
- package/package.json +6 -6
- package/src/programmers/functional/FunctionalIsFunctionProgrammer.ts +21 -6
- package/src/programmers/functional/FunctionalIsParametersProgrammer.ts +2 -6
- package/src/programmers/functional/FunctionalIsReturnProgrammer.ts +2 -6
- package/src/programmers/functional/FunctionalValidateFunctionProgrammer.ts +32 -10
- package/src/programmers/functional/FunctionalValidateParametersProgrammer.ts +4 -10
- package/src/programmers/functional/FunctionalValidateReturnProgrammer.ts +8 -11
- package/src/programmers/internal/application_tuple.ts +9 -6
|
@@ -60,9 +60,9 @@ var TypiaSetupWizard;
|
|
|
60
60
|
(function (TypiaSetupWizard) {
|
|
61
61
|
var _this = this;
|
|
62
62
|
function setup() {
|
|
63
|
-
var _a;
|
|
64
63
|
return __awaiter(this, void 0, void 0, function () {
|
|
65
64
|
var pack, args;
|
|
65
|
+
var _a;
|
|
66
66
|
return __generator(this, function (_b) {
|
|
67
67
|
switch (_b.label) {
|
|
68
68
|
case 0:
|
|
@@ -3,4 +3,5 @@ import ts from "typescript";
|
|
|
3
3
|
import { IProject } from "../../transformers/IProject";
|
|
4
4
|
export declare namespace FunctionalIsFunctionProgrammer {
|
|
5
5
|
const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration) => ts.ArrowFunction;
|
|
6
|
+
const getReturnTypeNode: (declaration: ts.FunctionDeclaration, async: boolean) => ts.TypeNode | undefined;
|
|
6
7
|
}
|
|
@@ -41,15 +41,28 @@ var FunctionalIsFunctionProgrammer;
|
|
|
41
41
|
var _a = FunctionalIsReturnProgrammer_1.FunctionalIsReturnProgrammer.writeStatements(project)(modulo)(equals)(expression, declaration), async = _a.async, statements = _a.statements;
|
|
42
42
|
return typescript_1.default.factory.createArrowFunction(async
|
|
43
43
|
? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
|
|
44
|
-
: undefined, undefined, declaration.parameters, declaration.
|
|
45
|
-
? typescript_1.default.factory.createUnionTypeNode([
|
|
46
|
-
declaration.type,
|
|
47
|
-
typescript_1.default.factory.createTypeReferenceNode("null"),
|
|
48
|
-
])
|
|
49
|
-
: undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(FunctionalIsParametersProgrammer_1.FunctionalIsParametersProgrammer.writeStatements(project)(modulo)(equals)(declaration)), false), __read(statements), false), true));
|
|
44
|
+
: undefined, undefined, declaration.parameters, FunctionalIsFunctionProgrammer.getReturnTypeNode(declaration, async), undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(FunctionalIsParametersProgrammer_1.FunctionalIsParametersProgrammer.writeStatements(project)(modulo)(equals)(declaration)), false), __read(statements), false), true));
|
|
50
45
|
};
|
|
51
46
|
};
|
|
52
47
|
};
|
|
53
48
|
};
|
|
49
|
+
FunctionalIsFunctionProgrammer.getReturnTypeNode = function (declaration, async) {
|
|
50
|
+
var _a;
|
|
51
|
+
return declaration.type
|
|
52
|
+
? async
|
|
53
|
+
? !!((_a = declaration.type.typeArguments) === null || _a === void 0 ? void 0 : _a[0])
|
|
54
|
+
? typescript_1.default.factory.createTypeReferenceNode("Promise", [
|
|
55
|
+
typescript_1.default.factory.createUnionTypeNode([
|
|
56
|
+
declaration.type.typeArguments[0],
|
|
57
|
+
typescript_1.default.factory.createTypeReferenceNode("null"),
|
|
58
|
+
]),
|
|
59
|
+
])
|
|
60
|
+
: undefined
|
|
61
|
+
: typescript_1.default.factory.createUnionTypeNode([
|
|
62
|
+
declaration.type,
|
|
63
|
+
typescript_1.default.factory.createTypeReferenceNode("null"),
|
|
64
|
+
])
|
|
65
|
+
: undefined;
|
|
66
|
+
};
|
|
54
67
|
})(FunctionalIsFunctionProgrammer || (exports.FunctionalIsFunctionProgrammer = FunctionalIsFunctionProgrammer = {}));
|
|
55
68
|
//# sourceMappingURL=FunctionalIsFunctionProgrammer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionalIsFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsFunctionProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAI5B,uFAAsF;AACtF,+EAA8E;AAE9E,IAAiB,8BAA8B,
|
|
1
|
+
{"version":3,"file":"FunctionalIsFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsFunctionProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAI5B,uFAAsF;AACtF,+EAA8E;AAE9E,IAAiB,8BAA8B,CAqD9C;AArDD,WAAiB,8BAA8B;IAChC,oCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC;oBAE7B,IAAA,KACJ,2DAA4B,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CACnE,UAAU,EACV,WAAW,CACZ,EAJK,KAAK,WAAA,EAAE,UAAU,gBAItB,CAAC;oBACJ,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CACnC,KAAK;wBACH,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;wBACzD,CAAC,CAAC,SAAS,EACb,SAAS,EACT,WAAW,CAAC,UAAU,EACtB,+BAAA,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,EACrC,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,wCAEf,mEAAgC,CAAC,eAAe,CAAC,OAAO,CAAC,CAC1D,MAAM,CACP,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,kBACnB,UAAU,WAEf,IAAI,CACL,CACF,CAAC;gBACJ,CAAC;YA3BD,CA2BC;QA5BD,CA4BC;IA7BD,CA6BC,CAAC;IAES,gDAAiB,GAAG,UAC/B,WAAmC,EACnC,KAAc;;QAEd,OAAA,WAAW,CAAC,IAAI;YACd,CAAC,CAAC,KAAK;gBACL,CAAC,CAAC,CAAC,CAAC,CAAA,MAAC,WAAW,CAAC,IAA8B,CAAC,aAAa,0CAAG,CAAC,CAAC,CAAA;oBAChE,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE;wBAC5C,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;4BAC5B,WAAW,CAAC,IAA8B,CAAC,aAAc,CAAC,CAAC,CAAE;4BAC9D,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC;yBAC3C,CAAC;qBACH,CAAC;oBACJ,CAAC,CAAC,SAAS;gBACb,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;oBAC7B,WAAW,CAAC,IAAI;oBAChB,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC;iBAC3C,CAAC;YACN,CAAC,CAAC,SAAS,CAAA;KAAA,CAAC;AAClB,CAAC,EArDgB,8BAA8B,8CAA9B,8BAA8B,QAqD9C"}
|
|
@@ -33,6 +33,7 @@ var typescript_1 = __importDefault(require("typescript"));
|
|
|
33
33
|
var TypeFactory_1 = require("../../factories/TypeFactory");
|
|
34
34
|
var IsProgrammer_1 = require("../IsProgrammer");
|
|
35
35
|
var FunctionalGeneralProgrammer_1 = require("./internal/FunctionalGeneralProgrammer");
|
|
36
|
+
var FunctionalIsFunctionProgrammer_1 = require("./FunctionalIsFunctionProgrammer");
|
|
36
37
|
var FunctionalIsParametersProgrammer;
|
|
37
38
|
(function (FunctionalIsParametersProgrammer) {
|
|
38
39
|
FunctionalIsParametersProgrammer.write = function (project) {
|
|
@@ -42,12 +43,7 @@ var FunctionalIsParametersProgrammer;
|
|
|
42
43
|
var async = FunctionalGeneralProgrammer_1.FunctionalGeneralProgrammer.getReturnType(project.checker)(declaration).async;
|
|
43
44
|
return typescript_1.default.factory.createArrowFunction(async
|
|
44
45
|
? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
|
|
45
|
-
: undefined, undefined, declaration.parameters, declaration.
|
|
46
|
-
? typescript_1.default.factory.createUnionTypeNode([
|
|
47
|
-
declaration.type,
|
|
48
|
-
typescript_1.default.factory.createTypeReferenceNode("null"),
|
|
49
|
-
])
|
|
50
|
-
: undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(FunctionalIsParametersProgrammer.writeStatements(project)(modulo)(equals)(declaration)), false), [
|
|
46
|
+
: undefined, undefined, declaration.parameters, FunctionalIsFunctionProgrammer_1.FunctionalIsFunctionProgrammer.getReturnTypeNode(declaration, async), undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(FunctionalIsParametersProgrammer.writeStatements(project)(modulo)(equals)(declaration)), false), [
|
|
51
47
|
typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(expression, undefined, declaration.parameters.map(function (p) {
|
|
52
48
|
return typescript_1.default.factory.createIdentifier(p.name.getText());
|
|
53
49
|
}))),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionalIsParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsParametersProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,2DAA0D;AAI1D,gDAA+C;AAC/C,sFAAqF;
|
|
1
|
+
{"version":3,"file":"FunctionalIsParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsParametersProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,2DAA0D;AAI1D,gDAA+C;AAC/C,sFAAqF;AACrF,mFAAkF;AAElF,IAAiB,gCAAgC,CA8DhD;AA9DD,WAAiB,gCAAgC;IAClC,sCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC;oBAE3B,IAAA,KAAK,GAAK,yDAA2B,CAAC,aAAa,CACzD,OAAO,CAAC,OAAO,CAChB,CAAC,WAAW,CAAC,MAFD,CAEE;oBACf,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CACnC,KAAK;wBACH,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;wBACzD,CAAC,CAAC,SAAS,EACb,SAAS,EACT,WAAW,CAAC,UAAU,EACtB,+DAA8B,CAAC,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,EACpE,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,wCAEf,iCAAA,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC;wBACxD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,UAAU,EACV,SAAS,EACT,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC;4BAC3B,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;wBAA7C,CAA6C,CAC9C,CACF,CACF;+BAEH,IAAI,CACL,CACF,CAAC;gBACJ,CAAC;YA/BD,CA+BC;QAhCD,CAgCC;IAjCD,CAiCC,CAAC;IAES,gDAAe,GAC1B,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UAAC,WAAmC;oBAClC,OAAA,WAAW,CAAC,UAAU;yBACnB,GAAG,CAAC,UAAC,CAAC;;wBAAK,OAAA;4BACV,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAC1B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,2BAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CACzC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CACjC,MAAA,CAAC,CAAC,IAAI,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CACrC,CACF,EACD,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAChD,CACF,EACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAC1D;yBACF,CAAA;qBAAA,CAAC;yBACD,IAAI,EAAE;gBAlBT,CAkBS;YAnBX,CAmBW;QApBX,CAoBW;IArBX,CAqBW,CAAC;AAChB,CAAC,EA9DgB,gCAAgC,gDAAhC,gCAAgC,QA8DhD"}
|
|
@@ -9,6 +9,7 @@ var StatementFactory_1 = require("../../factories/StatementFactory");
|
|
|
9
9
|
var StringUtil_1 = require("../../utils/StringUtil");
|
|
10
10
|
var IsProgrammer_1 = require("../IsProgrammer");
|
|
11
11
|
var FunctionalGeneralProgrammer_1 = require("./internal/FunctionalGeneralProgrammer");
|
|
12
|
+
var FunctionalIsFunctionProgrammer_1 = require("./FunctionalIsFunctionProgrammer");
|
|
12
13
|
var FunctionalIsReturnProgrammer;
|
|
13
14
|
(function (FunctionalIsReturnProgrammer) {
|
|
14
15
|
FunctionalIsReturnProgrammer.write = function (project) {
|
|
@@ -18,12 +19,7 @@ var FunctionalIsReturnProgrammer;
|
|
|
18
19
|
var _a = FunctionalIsReturnProgrammer.writeStatements(project)(modulo)(equals)(expression, declaration), async = _a.async, statements = _a.statements;
|
|
19
20
|
return typescript_1.default.factory.createArrowFunction(async
|
|
20
21
|
? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
|
|
21
|
-
: undefined, undefined, declaration.parameters, declaration.
|
|
22
|
-
? typescript_1.default.factory.createUnionTypeNode([
|
|
23
|
-
declaration.type,
|
|
24
|
-
typescript_1.default.factory.createTypeReferenceNode("null"),
|
|
25
|
-
])
|
|
26
|
-
: undefined, undefined, typescript_1.default.factory.createBlock(statements, true));
|
|
22
|
+
: undefined, undefined, declaration.parameters, FunctionalIsFunctionProgrammer_1.FunctionalIsFunctionProgrammer.getReturnTypeNode(declaration, async), undefined, typescript_1.default.factory.createBlock(statements, true));
|
|
27
23
|
};
|
|
28
24
|
};
|
|
29
25
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionalIsReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsReturnProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,qEAAoE;AAIpE,qDAAoD;AAEpD,gDAA+C;AAC/C,sFAAqF;
|
|
1
|
+
{"version":3,"file":"FunctionalIsReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsReturnProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -42,9 +42,7 @@ var FunctionalValidateFunctionProgrammer;
|
|
|
42
42
|
var _a = FunctionalValidateReturnProgrammer_1.FunctionalValidateReturnProgrammer.writeStatements(project)(modulo)(equals)(expression, declaration), async = _a.async, statements = _a.statements;
|
|
43
43
|
return typescript_1.default.factory.createArrowFunction(async
|
|
44
44
|
? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
|
|
45
|
-
: undefined, undefined, declaration.parameters, declaration.
|
|
46
|
-
? typescript_1.default.factory.createImportTypeNode(typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createStringLiteral("typia")), undefined, typescript_1.default.factory.createIdentifier("IValidation"), [declaration.type])
|
|
47
|
-
: undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(FunctionalValidateParametersProgrammer_1.FunctionalValidateParametersProgrammer.writeStatements(project)(modulo)(equals)(declaration)), false), __read(statements), false), true));
|
|
45
|
+
: undefined, undefined, declaration.parameters, FunctionalValidateFunctionProgrammer.getReturnTypeNode(declaration, async), undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(FunctionalValidateParametersProgrammer_1.FunctionalValidateParametersProgrammer.writeStatements(project)(modulo)(equals)(declaration)), false), __read(statements), false), true));
|
|
48
46
|
};
|
|
49
47
|
};
|
|
50
48
|
};
|
|
@@ -57,5 +55,20 @@ var FunctionalValidateFunctionProgrammer;
|
|
|
57
55
|
], true)),
|
|
58
56
|
]);
|
|
59
57
|
};
|
|
58
|
+
FunctionalValidateFunctionProgrammer.getReturnTypeNode = function (declaration, async) {
|
|
59
|
+
var _a;
|
|
60
|
+
return declaration.type
|
|
61
|
+
? async
|
|
62
|
+
? !!((_a = declaration.type.typeArguments) === null || _a === void 0 ? void 0 : _a[0])
|
|
63
|
+
? typescript_1.default.factory.createTypeReferenceNode("Promise", [
|
|
64
|
+
typescript_1.default.factory.createImportTypeNode(typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createStringLiteral("typia")), undefined, typescript_1.default.factory.createIdentifier("IValidation"), [
|
|
65
|
+
declaration.type
|
|
66
|
+
.typeArguments[0],
|
|
67
|
+
]),
|
|
68
|
+
])
|
|
69
|
+
: undefined
|
|
70
|
+
: typescript_1.default.factory.createImportTypeNode(typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createStringLiteral("typia")), undefined, typescript_1.default.factory.createIdentifier("IValidation"), [declaration.type])
|
|
71
|
+
: undefined;
|
|
72
|
+
};
|
|
60
73
|
})(FunctionalValidateFunctionProgrammer || (exports.FunctionalValidateFunctionProgrammer = FunctionalValidateFunctionProgrammer = {}));
|
|
61
74
|
//# sourceMappingURL=FunctionalValidateFunctionProgrammer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionalValidateFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalValidateFunctionProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAItE,mGAAkG;AAClG,2FAA0F;AAE1F,IAAiB,oCAAoC,
|
|
1
|
+
{"version":3,"file":"FunctionalValidateFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalValidateFunctionProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,9 +49,7 @@ var FunctionalValidateParametersProgrammer;
|
|
|
49
49
|
}));
|
|
50
50
|
return typescript_1.default.factory.createArrowFunction(async
|
|
51
51
|
? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
|
|
52
|
-
: undefined, undefined, declaration.parameters, declaration.
|
|
53
|
-
? typescript_1.default.factory.createImportTypeNode(typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createStringLiteral("typia")), undefined, typescript_1.default.factory.createIdentifier("IValidation"), [declaration.type])
|
|
54
|
-
: undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(FunctionalValidateParametersProgrammer.writeStatements(project)(modulo)(equals)(declaration)), false), [
|
|
52
|
+
: undefined, undefined, declaration.parameters, FunctionalValidateFunctionProgrammer_1.FunctionalValidateFunctionProgrammer.getReturnTypeNode(declaration, async), undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(FunctionalValidateParametersProgrammer.writeStatements(project)(modulo)(equals)(declaration)), false), [
|
|
55
53
|
typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createObjectLiteralExpression([
|
|
56
54
|
typescript_1.default.factory.createPropertyAssignment("success", typescript_1.default.factory.createTrue()),
|
|
57
55
|
typescript_1.default.factory.createPropertyAssignment("data", async ? typescript_1.default.factory.createAwaitExpression(caller) : caller),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionalValidateParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalValidateParametersProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,qEAAoE;AACpE,2DAA0D;AAI1D,qDAAoD;AAEpD,4DAA2D;AAC3D,+FAA8F;AAC9F,sFAAqF;AAErF,IAAiB,sCAAsC,
|
|
1
|
+
{"version":3,"file":"FunctionalValidateParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalValidateParametersProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,9 +19,7 @@ var FunctionalValidateReturnProgrammer;
|
|
|
19
19
|
var _a = FunctionalValidateReturnProgrammer.writeStatements(project)(modulo)(equals)(expression, declaration), async = _a.async, statements = _a.statements;
|
|
20
20
|
return typescript_1.default.factory.createArrowFunction(async
|
|
21
21
|
? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
|
|
22
|
-
: undefined, undefined, declaration.parameters, declaration.
|
|
23
|
-
? typescript_1.default.factory.createImportTypeNode(typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createStringLiteral("typia")), undefined, typescript_1.default.factory.createIdentifier("IValidation"), [declaration.type])
|
|
24
|
-
: undefined, undefined, typescript_1.default.factory.createBlock(statements, true));
|
|
22
|
+
: undefined, undefined, declaration.parameters, FunctionalValidateFunctionProgrammer_1.FunctionalValidateFunctionProgrammer.getReturnTypeNode(declaration, async), undefined, typescript_1.default.factory.createBlock(statements, true));
|
|
25
23
|
};
|
|
26
24
|
};
|
|
27
25
|
};
|
|
@@ -43,7 +41,10 @@ var FunctionalValidateReturnProgrammer;
|
|
|
43
41
|
})))),
|
|
44
42
|
typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("result")),
|
|
45
43
|
];
|
|
46
|
-
return {
|
|
44
|
+
return {
|
|
45
|
+
async: async,
|
|
46
|
+
statements: statements,
|
|
47
|
+
};
|
|
47
48
|
};
|
|
48
49
|
};
|
|
49
50
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionalValidateReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalValidateReturnProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,qEAAoE;AAIpE,qDAAoD;AAEpD,4DAA2D;AAC3D,+FAA8F;AAC9F,sFAAqF;AAErF,IAAiB,kCAAkC,
|
|
1
|
+
{"version":3,"file":"FunctionalValidateReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalValidateReturnProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,7 +39,9 @@ var application_tuple = function (options) {
|
|
|
39
39
|
return schema;
|
|
40
40
|
else if (!((_c = tuple.type.elements.at(-1)) === null || _c === void 0 ? void 0 : _c.rest))
|
|
41
41
|
return schema;
|
|
42
|
-
var wrapper = __assign(__assign({}, schema), { items:
|
|
42
|
+
var wrapper = __assign(__assign({}, schema), { items: tuple.type.elements.length === 0
|
|
43
|
+
? { type: undefined }
|
|
44
|
+
: (0, application_schema_1.application_schema)(options)(false)(components)(tuple.type.elements.reduce(function (x, y) { var _a, _b; return Metadata_1.Metadata.merge((_a = x.rest) !== null && _a !== void 0 ? _a : x, (_b = y.rest) !== null && _b !== void 0 ? _b : y); }, Metadata_1.Metadata.initialize()))(tuple.type.recursive ? {} : attribute), "x-typia-tuple": schema, minItems: schema.minItems, maxItems: schema.maxItems });
|
|
43
45
|
return wrapper;
|
|
44
46
|
};
|
|
45
47
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application_tuple.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,4DAA2D;AAI3D,2DAA0D;AAE1D;;GAEG;AACI,IAAM,iBAAiB,GAC5B,UAAC,OAA2C;IAC5C,OAAA,UAAC,UAA2B;QAC5B,OAAA,UAAC,KAAoB;YACrB,OAAA,UACE,SAAiC;;gBAEjC,IAAM,MAAM,uBACV,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;;wBACrC,OAAA,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,CAAC,CAAC;4BAChE,cAAc,EACZ,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;4BAC5D,kBAAkB,EAAE,IAAI,CAAC,QAAQ;4BACjC,kBAAkB,EAAE,IAAI,CAAC,QAAQ;yBAClC,CAAC,CAAA;qBAAA,CACH,IACE,SAAS,KACZ,QAAQ,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAC1C,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAChC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,QAAQ,EAAX,CAAW,CAAC,CAAC,MAAM,EACzD,QAAQ,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAC1C,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAC/B,CAAC;gBACF,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK;oBAC3B,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,MAAM,CAAC;yBAC/C,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAAE,OAAO,MAAM,CAAC;gBAE5D,IAAM,OAAO,yBACR,MAAM,KACT,KAAK,EAAE,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"application_tuple.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,4DAA2D;AAI3D,2DAA0D;AAE1D;;GAEG;AACI,IAAM,iBAAiB,GAC5B,UAAC,OAA2C;IAC5C,OAAA,UAAC,UAA2B;QAC5B,OAAA,UAAC,KAAoB;YACrB,OAAA,UACE,SAAiC;;gBAEjC,IAAM,MAAM,uBACV,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;;wBACrC,OAAA,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,CAAC,CAAC;4BAChE,cAAc,EACZ,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;4BAC5D,kBAAkB,EAAE,IAAI,CAAC,QAAQ;4BACjC,kBAAkB,EAAE,IAAI,CAAC,QAAQ;yBAClC,CAAC,CAAA;qBAAA,CACH,IACE,SAAS,KACZ,QAAQ,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAC1C,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAChC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,QAAQ,EAAX,CAAW,CAAC,CAAC,MAAM,EACzD,QAAQ,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAC1C,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAC/B,CAAC;gBACF,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK;oBAC3B,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,MAAM,CAAC;yBAC/C,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAAE,OAAO,MAAM,CAAC;gBAE5D,IAAM,OAAO,yBACR,MAAM,KACT,KAAK,EACH,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;wBAC9B,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE;wBACrB,CAAC,CAAC,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAC5C,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CACxB,UAAC,CAAC,EAAE,CAAC,gBAAK,OAAA,mBAAQ,CAAC,KAAK,CAAC,MAAA,CAAC,CAAC,IAAI,mCAAI,CAAC,EAAE,MAAA,CAAC,CAAC,IAAI,mCAAI,CAAC,CAAC,CAAA,EAAA,EAClD,mBAAQ,CAAC,UAAU,EAAE,CACtB,CACF,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EAC9C,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAC1B,CAAC;gBACF,OAAO,OAAO,CAAC;YACjB,CAAC;QAzCD,CAyCC;IA1CD,CA0CC;AA3CD,CA2CC,CAAC;AA7CS,QAAA,iBAAiB,qBA6C1B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "typia",
|
|
3
|
-
"version": "5.5.
|
|
3
|
+
"version": "5.5.2-dev.20240307",
|
|
4
4
|
"description": "Superfast runtime validators with only one line",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -77,15 +77,15 @@
|
|
|
77
77
|
"@trivago/prettier-plugin-sort-imports": "^3.3.0",
|
|
78
78
|
"@types/inquirer": "^8.2.5",
|
|
79
79
|
"@types/node": "^18.15.12",
|
|
80
|
-
"@types/ts-expose-internals": "npm:ts-expose-internals@5.
|
|
81
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
82
|
-
"@typescript-eslint/parser": "^
|
|
80
|
+
"@types/ts-expose-internals": "npm:ts-expose-internals@5.4.2",
|
|
81
|
+
"@typescript-eslint/eslint-plugin": "^7.1.1",
|
|
82
|
+
"@typescript-eslint/parser": "^7.1.1",
|
|
83
83
|
"chalk": "^4.0.0",
|
|
84
84
|
"prettier": "^2.6.2",
|
|
85
85
|
"rimraf": "^5.0.5",
|
|
86
86
|
"suppress-warnings": "^1.0.2",
|
|
87
|
-
"ts-node": "^10.9.
|
|
88
|
-
"typescript": "^5.
|
|
87
|
+
"ts-node": "^10.9.2",
|
|
88
|
+
"typescript": "^5.4.2"
|
|
89
89
|
},
|
|
90
90
|
"stackblitzs": {
|
|
91
91
|
"startCommand": "npm install && npm run test"
|
|
@@ -25,12 +25,7 @@ export namespace FunctionalIsFunctionProgrammer {
|
|
|
25
25
|
: undefined,
|
|
26
26
|
undefined,
|
|
27
27
|
declaration.parameters,
|
|
28
|
-
declaration
|
|
29
|
-
? ts.factory.createUnionTypeNode([
|
|
30
|
-
declaration.type,
|
|
31
|
-
ts.factory.createTypeReferenceNode("null"),
|
|
32
|
-
])
|
|
33
|
-
: undefined,
|
|
28
|
+
getReturnTypeNode(declaration, async),
|
|
34
29
|
undefined,
|
|
35
30
|
ts.factory.createBlock(
|
|
36
31
|
[
|
|
@@ -43,4 +38,24 @@ export namespace FunctionalIsFunctionProgrammer {
|
|
|
43
38
|
),
|
|
44
39
|
);
|
|
45
40
|
};
|
|
41
|
+
|
|
42
|
+
export const getReturnTypeNode = (
|
|
43
|
+
declaration: ts.FunctionDeclaration,
|
|
44
|
+
async: boolean,
|
|
45
|
+
): ts.TypeNode | undefined =>
|
|
46
|
+
declaration.type
|
|
47
|
+
? async
|
|
48
|
+
? !!(declaration.type! as ts.TypeReferenceNode).typeArguments?.[0]
|
|
49
|
+
? ts.factory.createTypeReferenceNode("Promise", [
|
|
50
|
+
ts.factory.createUnionTypeNode([
|
|
51
|
+
(declaration.type! as ts.TypeReferenceNode).typeArguments![0]!,
|
|
52
|
+
ts.factory.createTypeReferenceNode("null"),
|
|
53
|
+
]),
|
|
54
|
+
])
|
|
55
|
+
: undefined
|
|
56
|
+
: ts.factory.createUnionTypeNode([
|
|
57
|
+
declaration.type,
|
|
58
|
+
ts.factory.createTypeReferenceNode("null"),
|
|
59
|
+
])
|
|
60
|
+
: undefined;
|
|
46
61
|
}
|
|
@@ -6,6 +6,7 @@ import { IProject } from "../../transformers/IProject";
|
|
|
6
6
|
|
|
7
7
|
import { IsProgrammer } from "../IsProgrammer";
|
|
8
8
|
import { FunctionalGeneralProgrammer } from "./internal/FunctionalGeneralProgrammer";
|
|
9
|
+
import { FunctionalIsFunctionProgrammer } from "./FunctionalIsFunctionProgrammer";
|
|
9
10
|
|
|
10
11
|
export namespace FunctionalIsParametersProgrammer {
|
|
11
12
|
export const write =
|
|
@@ -25,12 +26,7 @@ export namespace FunctionalIsParametersProgrammer {
|
|
|
25
26
|
: undefined,
|
|
26
27
|
undefined,
|
|
27
28
|
declaration.parameters,
|
|
28
|
-
declaration
|
|
29
|
-
? ts.factory.createUnionTypeNode([
|
|
30
|
-
declaration.type,
|
|
31
|
-
ts.factory.createTypeReferenceNode("null"),
|
|
32
|
-
])
|
|
33
|
-
: undefined,
|
|
29
|
+
FunctionalIsFunctionProgrammer.getReturnTypeNode(declaration, async),
|
|
34
30
|
undefined,
|
|
35
31
|
ts.factory.createBlock(
|
|
36
32
|
[
|
|
@@ -8,6 +8,7 @@ import { StringUtil } from "../../utils/StringUtil";
|
|
|
8
8
|
|
|
9
9
|
import { IsProgrammer } from "../IsProgrammer";
|
|
10
10
|
import { FunctionalGeneralProgrammer } from "./internal/FunctionalGeneralProgrammer";
|
|
11
|
+
import { FunctionalIsFunctionProgrammer } from "./FunctionalIsFunctionProgrammer";
|
|
11
12
|
|
|
12
13
|
export namespace FunctionalIsReturnProgrammer {
|
|
13
14
|
export const write =
|
|
@@ -28,12 +29,7 @@ export namespace FunctionalIsReturnProgrammer {
|
|
|
28
29
|
: undefined,
|
|
29
30
|
undefined,
|
|
30
31
|
declaration.parameters,
|
|
31
|
-
declaration
|
|
32
|
-
? ts.factory.createUnionTypeNode([
|
|
33
|
-
declaration.type,
|
|
34
|
-
ts.factory.createTypeReferenceNode("null"),
|
|
35
|
-
])
|
|
36
|
-
: undefined,
|
|
32
|
+
FunctionalIsFunctionProgrammer.getReturnTypeNode(declaration, async),
|
|
37
33
|
undefined,
|
|
38
34
|
ts.factory.createBlock(statements, true),
|
|
39
35
|
);
|
|
@@ -26,16 +26,7 @@ export namespace FunctionalValidateFunctionProgrammer {
|
|
|
26
26
|
: undefined,
|
|
27
27
|
undefined,
|
|
28
28
|
declaration.parameters,
|
|
29
|
-
declaration
|
|
30
|
-
? ts.factory.createImportTypeNode(
|
|
31
|
-
ts.factory.createLiteralTypeNode(
|
|
32
|
-
ts.factory.createStringLiteral("typia"),
|
|
33
|
-
),
|
|
34
|
-
undefined,
|
|
35
|
-
ts.factory.createIdentifier("IValidation"),
|
|
36
|
-
[declaration.type],
|
|
37
|
-
)
|
|
38
|
-
: undefined,
|
|
29
|
+
getReturnTypeNode(declaration, async),
|
|
39
30
|
undefined,
|
|
40
31
|
ts.factory.createBlock(
|
|
41
32
|
[
|
|
@@ -88,4 +79,35 @@ export namespace FunctionalValidateFunctionProgrammer {
|
|
|
88
79
|
),
|
|
89
80
|
],
|
|
90
81
|
);
|
|
82
|
+
|
|
83
|
+
export const getReturnTypeNode = (
|
|
84
|
+
declaration: ts.FunctionDeclaration,
|
|
85
|
+
async: boolean,
|
|
86
|
+
): ts.TypeNode | undefined =>
|
|
87
|
+
declaration.type
|
|
88
|
+
? async
|
|
89
|
+
? !!(declaration.type! as ts.TypeReferenceNode).typeArguments?.[0]
|
|
90
|
+
? ts.factory.createTypeReferenceNode("Promise", [
|
|
91
|
+
ts.factory.createImportTypeNode(
|
|
92
|
+
ts.factory.createLiteralTypeNode(
|
|
93
|
+
ts.factory.createStringLiteral("typia"),
|
|
94
|
+
),
|
|
95
|
+
undefined,
|
|
96
|
+
ts.factory.createIdentifier("IValidation"),
|
|
97
|
+
[
|
|
98
|
+
(declaration.type! as ts.TypeReferenceNode)
|
|
99
|
+
.typeArguments![0]!,
|
|
100
|
+
],
|
|
101
|
+
),
|
|
102
|
+
])
|
|
103
|
+
: undefined
|
|
104
|
+
: ts.factory.createImportTypeNode(
|
|
105
|
+
ts.factory.createLiteralTypeNode(
|
|
106
|
+
ts.factory.createStringLiteral("typia"),
|
|
107
|
+
),
|
|
108
|
+
undefined,
|
|
109
|
+
ts.factory.createIdentifier("IValidation"),
|
|
110
|
+
[declaration.type],
|
|
111
|
+
)
|
|
112
|
+
: undefined;
|
|
91
113
|
}
|
|
@@ -37,16 +37,10 @@ export namespace FunctionalValidateParametersProgrammer {
|
|
|
37
37
|
: undefined,
|
|
38
38
|
undefined,
|
|
39
39
|
declaration.parameters,
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
),
|
|
45
|
-
undefined,
|
|
46
|
-
ts.factory.createIdentifier("IValidation"),
|
|
47
|
-
[declaration.type],
|
|
48
|
-
)
|
|
49
|
-
: undefined,
|
|
40
|
+
FunctionalValidateFunctionProgrammer.getReturnTypeNode(
|
|
41
|
+
declaration,
|
|
42
|
+
async,
|
|
43
|
+
),
|
|
50
44
|
undefined,
|
|
51
45
|
ts.factory.createBlock(
|
|
52
46
|
[
|
|
@@ -29,16 +29,10 @@ export namespace FunctionalValidateReturnProgrammer {
|
|
|
29
29
|
: undefined,
|
|
30
30
|
undefined,
|
|
31
31
|
declaration.parameters,
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
),
|
|
37
|
-
undefined,
|
|
38
|
-
ts.factory.createIdentifier("IValidation"),
|
|
39
|
-
[declaration.type],
|
|
40
|
-
)
|
|
41
|
-
: undefined,
|
|
32
|
+
FunctionalValidateFunctionProgrammer.getReturnTypeNode(
|
|
33
|
+
declaration,
|
|
34
|
+
async,
|
|
35
|
+
),
|
|
42
36
|
undefined,
|
|
43
37
|
ts.factory.createBlock(statements, true),
|
|
44
38
|
);
|
|
@@ -105,6 +99,9 @@ export namespace FunctionalValidateReturnProgrammer {
|
|
|
105
99
|
),
|
|
106
100
|
ts.factory.createReturnStatement(ts.factory.createIdentifier("result")),
|
|
107
101
|
];
|
|
108
|
-
return {
|
|
102
|
+
return {
|
|
103
|
+
async,
|
|
104
|
+
statements,
|
|
105
|
+
};
|
|
109
106
|
};
|
|
110
107
|
}
|
|
@@ -40,12 +40,15 @@ export const application_tuple =
|
|
|
40
40
|
|
|
41
41
|
const wrapper: IJsonSchema.IArray = {
|
|
42
42
|
...schema,
|
|
43
|
-
items:
|
|
44
|
-
tuple.type.elements.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
43
|
+
items:
|
|
44
|
+
tuple.type.elements.length === 0
|
|
45
|
+
? { type: undefined }
|
|
46
|
+
: application_schema(options)(false)(components)(
|
|
47
|
+
tuple.type.elements.reduce(
|
|
48
|
+
(x, y) => Metadata.merge(x.rest ?? x, y.rest ?? y),
|
|
49
|
+
Metadata.initialize(),
|
|
50
|
+
),
|
|
51
|
+
)(tuple.type.recursive ? {} : attribute),
|
|
49
52
|
"x-typia-tuple": schema,
|
|
50
53
|
minItems: schema.minItems,
|
|
51
54
|
maxItems: schema.maxItems,
|