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.
Files changed (25) hide show
  1. package/lib/executable/TypiaSetupWizard.js +1 -1
  2. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.d.ts +1 -0
  3. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js +19 -6
  4. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js.map +1 -1
  5. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js +2 -6
  6. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js.map +1 -1
  7. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js +2 -6
  8. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js.map +1 -1
  9. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.d.ts +1 -0
  10. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js +16 -3
  11. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js.map +1 -1
  12. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js +1 -3
  13. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js.map +1 -1
  14. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js +5 -4
  15. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js.map +1 -1
  16. package/lib/programmers/internal/application_tuple.js +3 -1
  17. package/lib/programmers/internal/application_tuple.js.map +1 -1
  18. package/package.json +6 -6
  19. package/src/programmers/functional/FunctionalIsFunctionProgrammer.ts +21 -6
  20. package/src/programmers/functional/FunctionalIsParametersProgrammer.ts +2 -6
  21. package/src/programmers/functional/FunctionalIsReturnProgrammer.ts +2 -6
  22. package/src/programmers/functional/FunctionalValidateFunctionProgrammer.ts +32 -10
  23. package/src/programmers/functional/FunctionalValidateParametersProgrammer.ts +4 -10
  24. package/src/programmers/functional/FunctionalValidateReturnProgrammer.ts +8 -11
  25. 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.type
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,CAsC9C;AAtCD,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,WAAW,CAAC,IAAI;wBACd,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;4BAC7B,WAAW,CAAC,IAAI;4BAChB,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC;yBAC3C,CAAC;wBACJ,CAAC,CAAC,SAAS,EACb,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;YAhCD,CAgCC;QAjCD,CAiCC;IAlCD,CAkCC,CAAC;AACN,CAAC,EAtCgB,8BAA8B,8CAA9B,8BAA8B,QAsC9C"}
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.type
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;AAErF,IAAiB,gCAAgC,CAmEhD;AAnED,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,WAAW,CAAC,IAAI;wBACd,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;4BAC7B,WAAW,CAAC,IAAI;4BAChB,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC;yBAC3C,CAAC;wBACJ,CAAC,CAAC,SAAS,EACb,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;YApCD,CAoCC;QArCD,CAqCC;IAtCD,CAsCC,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,EAnEgB,gCAAgC,gDAAhC,gCAAgC,QAmEhD"}
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.type
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":"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"}
1
+ {"version":3,"file":"FunctionalIsReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsReturnProgrammer.ts"],"names":[],"mappings":"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"}
@@ -7,4 +7,5 @@ export declare namespace FunctionalValidateFunctionProgrammer {
7
7
  expression: ts.Expression;
8
8
  replacer: ts.Expression;
9
9
  }) => ts.CallExpression;
10
+ const getReturnTypeNode: (declaration: ts.FunctionDeclaration, async: boolean) => ts.TypeNode | undefined;
10
11
  }
@@ -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.type
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,CAiFpD;AAjFD,WAAiB,oCAAoC;IACtC,0CAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC;oBAE7B,IAAA,KACJ,uEAAkC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CACjE,MAAM,CACP,CAAC,UAAU,EAAE,WAAW,CAAC,EAHpB,KAAK,WAAA,EAAE,UAAU,gBAGG,CAAC;oBAC7B,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,WAAW,CAAC,IAAI;wBACd,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CACxC,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,CAAC,WAAW,CAAC,IAAI,CAAC,CACnB;wBACH,CAAC,CAAC,SAAS,EACb,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,wCAEf,+EAAsC,CAAC,eAAe,CAAC,OAAO,CAAC,CAChE,MAAM,CACP,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,kBACnB,UAAU,WAEf,IAAI,CACL,CACF,CAAC;gBACJ,CAAC;YAnCD,CAmCC;QApCD,CAoCC;IArCD,CAqCC,CAAC;IAES,+CAAU,GAAG,UAAC,KAG1B;QACC,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,8BAA8B,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,EAClE,SAAS,EACT;YACE,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACtC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC;gBACE,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC/B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CACrC;gBACD,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,MAAM,EACN,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,8BAA8B,CACvC,oBAAE,CAAC,OAAO,CAAC,8BAA8B,CACvC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,MAAM,CACP,EACD,SAAS,CACV,EACD,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAC3D,CACF;aACF,EACD,IAAI,CACL,CACF;SACF,CACF;IAlCD,CAkCC,CAAC;AACN,CAAC,EAjFgB,oCAAoC,oDAApC,oCAAoC,QAiFpD"}
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.type
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":"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"}
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.type
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 { async: async, statements: statements };
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":"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"}
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: (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 });
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,CACnD,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,EACxC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAC1B,CAAC;gBACF,OAAO,OAAO,CAAC;YACjB,CAAC;QAtCD,CAsCC;IAvCD,CAuCC;AAxCD,CAwCC,CAAC;AA1CS,QAAA,iBAAiB,qBA0C1B"}
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.1",
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.3.2",
81
- "@typescript-eslint/eslint-plugin": "^5.59.11",
82
- "@typescript-eslint/parser": "^5.59.11",
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.1",
88
- "typescript": "^5.3.3"
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.type
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.type
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.type
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.type
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
- declaration.type
41
- ? ts.factory.createImportTypeNode(
42
- ts.factory.createLiteralTypeNode(
43
- ts.factory.createStringLiteral("typia"),
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
- declaration.type
33
- ? ts.factory.createImportTypeNode(
34
- ts.factory.createLiteralTypeNode(
35
- ts.factory.createStringLiteral("typia"),
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 { async, statements };
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: application_schema(options)(false)(components)(
44
- tuple.type.elements.reduce(
45
- (x, y) => Metadata.merge(x.rest ?? x, y.rest ?? y),
46
- Metadata.initialize(),
47
- ),
48
- )(tuple.type.recursive ? {} : attribute),
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,