typia 5.5.0-dev.20240306 → 5.5.1-dev.20240306

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 (24) hide show
  1. package/README.md +1 -0
  2. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js +1 -3
  3. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js.map +1 -1
  4. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js +3 -3
  5. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js.map +1 -1
  6. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.d.ts +1 -1
  7. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js +8 -6
  8. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js.map +1 -1
  9. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js +3 -3
  10. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js.map +1 -1
  11. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js +2 -1
  12. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js.map +1 -1
  13. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js +3 -3
  14. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js.map +1 -1
  15. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js +2 -1
  16. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js.map +1 -1
  17. package/package.json +1 -1
  18. package/src/programmers/functional/FunctionalAssertFunctionProgrammer.ts +1 -8
  19. package/src/programmers/functional/FunctionalAssertParametersProgrammer.ts +5 -4
  20. package/src/programmers/functional/FunctionalAssertReturnProgrammer.ts +10 -14
  21. package/src/programmers/functional/FunctionalIsParametersProgrammer.ts +5 -4
  22. package/src/programmers/functional/FunctionalIsReturnProgrammer.ts +5 -3
  23. package/src/programmers/functional/FunctionalValidateParametersProgrammer.ts +5 -4
  24. package/src/programmers/functional/FunctionalValidateReturnProgrammer.ts +5 -3
package/README.md CHANGED
@@ -78,6 +78,7 @@ Check out the document in the [website](https://typia.io/docs/):
78
78
  - [`assert()` function](https://typia.io/docs/validators/assert/)
79
79
  - [`is()` function](https://typia.io/docs/validators/is/)
80
80
  - [`validate()` function](https://typia.io/docs/validators/validate/)
81
+ - [Functional Module](https://typia.io/docs/validators/functional)
81
82
  - [Special Tags](https://typia.io/docs/validators/tags/)
82
83
  - Enhanced JSON
83
84
  - [`stringify()` functions](https://typia.io/docs/json/stringify/)
@@ -43,9 +43,7 @@ var FunctionalAssertFunctionProgrammer;
43
43
  return function (equals) {
44
44
  return function (expression, declaration, init) {
45
45
  var wrapper = FunctionalAssertFunctionProgrammer.errorFactoryWrapper(modulo)(declaration.parameters)(init);
46
- var _a = FunctionalAssertReturnProgrammer_1.FunctionAssertReturnProgrammer.returnStatement(project)(modulo)(equals)(expression, declaration.type, declaration.parameters.map(function (p) {
47
- return typescript_1.default.factory.createIdentifier(p.name.getText());
48
- }), wrapper.name), async = _a.async, returns = _a.returns;
46
+ var _a = FunctionalAssertReturnProgrammer_1.FunctionAssertReturnProgrammer.returnStatement(project)(modulo)(equals)(expression, declaration, wrapper.name), async = _a.async, returns = _a.returns;
49
47
  return typescript_1.default.factory.createArrowFunction(async
50
48
  ? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
51
49
  : undefined, undefined, declaration.parameters, declaration.type, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalAssertFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertFunctionProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FunctionalAssertFunctionProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertFunctionProgrammer.ts"],"names":[],"mappings":"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"}
@@ -41,9 +41,9 @@ var FunctionalAssertParametersProgrammer;
41
41
  return function (expression, declaration, init) {
42
42
  var wrapper = FunctionalAssertFunctionProgrammer_1.FunctionalAssertFunctionProgrammer.errorFactoryWrapper(modulo)(declaration.parameters)(init);
43
43
  var async = (function () {
44
- if (declaration.type === undefined)
45
- return false;
46
- var type = project.checker.getTypeFromTypeNode(declaration.type);
44
+ var _a;
45
+ var signature = project.checker.getSignatureFromDeclaration(declaration);
46
+ var type = (_a = signature === null || signature === void 0 ? void 0 : signature.getReturnType()) !== null && _a !== void 0 ? _a : project.checker.getTypeFromTypeNode(TypeFactory_1.TypeFactory.keyword("any"));
47
47
  return type.isTypeParameter() && type.symbol.name === "Promise";
48
48
  })();
49
49
  return typescript_1.default.factory.createArrowFunction(async
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalAssertParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertParametersProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FunctionalAssertParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertParametersProgrammer.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import ts from "typescript";
3
3
  import { IProject } from "../../transformers/IProject";
4
4
  export declare namespace FunctionAssertReturnProgrammer {
5
5
  const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, init?: ts.Expression) => ts.ArrowFunction;
6
- const returnStatement: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, typeNode: ts.TypeNode | undefined, argumentExpressions: ts.Expression[], wrapper: string) => {
6
+ const returnStatement: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (equals: boolean) => (expression: ts.Expression, declaration: ts.FunctionDeclaration, wrapper: string) => {
7
7
  async: boolean;
8
8
  returns: ts.ReturnStatement;
9
9
  };
@@ -31,9 +31,7 @@ var FunctionAssertReturnProgrammer;
31
31
  return function (equals) {
32
32
  return function (expression, declaration, init) {
33
33
  var wrapper = FunctionalAssertFunctionProgrammer_1.FunctionalAssertFunctionProgrammer.errorFactoryWrapper(modulo)(declaration.parameters)(init);
34
- var _a = FunctionAssertReturnProgrammer.returnStatement(project)(modulo)(equals)(expression, declaration.type, declaration.parameters.map(function (p) {
35
- return typescript_1.default.factory.createIdentifier(p.name.getText());
36
- }), wrapper.name), async = _a.async, statement = _a.returns;
34
+ var _a = FunctionAssertReturnProgrammer.returnStatement(project)(modulo)(equals)(expression, declaration, wrapper.name), async = _a.async, statement = _a.returns;
37
35
  return typescript_1.default.factory.createArrowFunction(async
38
36
  ? [typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)]
39
37
  : undefined, undefined, declaration.parameters, declaration.type, undefined, typescript_1.default.factory.createBlock([wrapper.variable, statement], true));
@@ -44,14 +42,18 @@ var FunctionAssertReturnProgrammer;
44
42
  FunctionAssertReturnProgrammer.returnStatement = function (project) {
45
43
  return function (modulo) {
46
44
  return function (equals) {
47
- return function (expression, typeNode, argumentExpressions, wrapper) {
45
+ return function (expression, declaration, wrapper) {
48
46
  var _a = __read((function () {
49
- var type = project.checker.getTypeFromTypeNode(typeNode !== null && typeNode !== void 0 ? typeNode : TypeFactory_1.TypeFactory.keyword("any"));
47
+ var _a;
48
+ var signature = project.checker.getSignatureFromDeclaration(declaration);
49
+ var type = (_a = signature === null || signature === void 0 ? void 0 : signature.getReturnType()) !== null && _a !== void 0 ? _a : project.checker.getTypeFromTypeNode(TypeFactory_1.TypeFactory.keyword("any"));
50
50
  return type.isTypeParameter() && type.symbol.name === "Promise"
51
51
  ? [type.aliasTypeArguments[0], true]
52
52
  : [type, false];
53
53
  })(), 2), type = _a[0], async = _a[1];
54
- var caller = typescript_1.default.factory.createCallExpression(expression, undefined, argumentExpressions);
54
+ var caller = typescript_1.default.factory.createCallExpression(expression, undefined, declaration.parameters.map(function (p) {
55
+ return typescript_1.default.factory.createIdentifier(p.name.getText());
56
+ }));
55
57
  return {
56
58
  async: async,
57
59
  returns: typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(AssertProgrammer_1.AssertProgrammer.write(project)(modulo)(equals)(type, undefined, FunctionalAssertFunctionProgrammer_1.FunctionalAssertFunctionProgrammer.hookPath({
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalAssertReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertReturnProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FunctionalAssertReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalAssertReturnProgrammer.ts"],"names":[],"mappings":"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"}
@@ -40,9 +40,9 @@ var FunctionalIsParametersProgrammer;
40
40
  return function (expression, declaration) {
41
41
  var _a;
42
42
  var async = (function () {
43
- if (declaration.type === undefined)
44
- return false;
45
- var type = project.checker.getTypeFromTypeNode(declaration.type);
43
+ var _a;
44
+ var signature = project.checker.getSignatureFromDeclaration(declaration);
45
+ var type = (_a = signature === null || signature === void 0 ? void 0 : signature.getReturnType()) !== null && _a !== void 0 ? _a : project.checker.getTypeFromTypeNode(TypeFactory_1.TypeFactory.keyword("any"));
46
46
  return type.isTypeParameter() && type.symbol.name === "Promise";
47
47
  })();
48
48
  return typescript_1.default.factory.createArrowFunction(async
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalIsParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsParametersProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FunctionalIsParametersProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsParametersProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,2DAA0D;AAI1D,gDAA+C;AAE/C,IAAiB,gCAAgC,CAsEhD;AAtED,WAAiB,gCAAgC;IAClC,sCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC;;oBAEnC,IAAM,KAAK,GAAY,CAAC;;wBACtB,IAAM,SAAS,GACb,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC;wBAC3D,IAAM,IAAI,GACR,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,aAAa,EAAE,mCAC1B,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;wBAClE,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC;oBAClE,CAAC,CAAC,EAAE,CAAC;oBACL,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,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;wBAC7B,MAAA,WAAW,CAAC,IAAI,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC;wBAC9C,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC;qBAC3C,CAAC,EACF,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;YAvCD,CAuCC;QAxCD,CAwCC;IAzCD,CAyCC,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,EAtEgB,gCAAgC,gDAAhC,gCAAgC,QAsEhD"}
@@ -49,7 +49,8 @@ var FunctionalIsReturnProgrammer;
49
49
  return function (expression, declaration) {
50
50
  var _a = __read((function () {
51
51
  var _a;
52
- var type = project.checker.getTypeFromTypeNode((_a = declaration.type) !== null && _a !== void 0 ? _a : TypeFactory_1.TypeFactory.keyword("any"));
52
+ var signature = project.checker.getSignatureFromDeclaration(declaration);
53
+ var type = (_a = signature === null || signature === void 0 ? void 0 : signature.getReturnType()) !== null && _a !== void 0 ? _a : project.checker.getTypeFromTypeNode(TypeFactory_1.TypeFactory.keyword("any"));
53
54
  return type.isTypeParameter() && type.symbol.name === "Promise"
54
55
  ? [type.aliasTypeArguments[0], true]
55
56
  : [type, false];
@@ -1 +1 @@
1
- {"version":3,"file":"FunctionalIsReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsReturnProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,qEAAoE;AACpE,2DAA0D;AAI1D,qDAAoD;AAEpD,gDAA+C;AAE/C,IAAiB,4BAA4B,CA+E5C;AA/ED,WAAiB,4BAA4B;IAC9B,kCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC;;oBAE7B,IAAA,KAAwB,6BAAA,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CACpE,UAAU,EACV,WAAW,CACZ,EAHO,KAAK,WAAA,EAAE,UAAU,gBAGxB,CAAC;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,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC;wBAC7B,MAAA,WAAW,CAAC,IAAI,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC;wBAC9C,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC;qBAC3C,CAAC,EACF,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CACzC,CAAC;gBACJ,CAAC;YArBD,CAqBC;QAtBD,CAsBC;IAvBD,CAuBC,CAAC;IAES,4CAAe,GAC1B,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,MAAe;gBAChB,OAAA,UACE,UAAyB,EACzB,WAAmC;oBAK7B,IAAA,KAAA,OAAoC,CAAC;;wBACzC,IAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,mBAAmB,CACvD,MAAA,WAAW,CAAC,IAAI,mCAAI,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC/C,CAAC;wBACF,OAAO,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;4BAC7D,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAmB,CAAC,CAAC,CAAE,EAAE,IAAI,CAAC;4BACtC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBACpB,CAAC,CAAC,EAAE,IAAA,EAPG,IAAI,QAAA,EAAE,KAAK,QAOd,CAAC;oBACL,IAAM,MAAM,GAAsB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC/D,UAAU,EACV,SAAS,EACT,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC;wBAC3B,OAAA,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAA7C,CAA6C,CAC9C,CACF,CAAC;oBAEF,IAAM,IAAI,GAAW,uBAAU,CAAC,eAAe,CAC7C,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAhB,CAAgB,CAAC,CACpD,CAAC,QAAQ,CAAC,CAAC;oBACZ,IAAM,UAAU,GAAmB;wBACjC,mCAAgB,CAAC,QAAQ,CACvB,IAAI,EACJ,KAAK,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAC1D;wBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,2BAA2B,CACpC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,2BAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EACjD,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CACpC,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACjC,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CACxB,CACF;qBACF,CAAC;oBACF,OAAO,EAAE,KAAK,OAAA,EAAE,UAAU,YAAA,EAAE,CAAC;gBAC/B,CAAC;YA9CD,CA8CC;QA/CD,CA+CC;IAhDD,CAgDC,CAAC;AACN,CAAC,EA/EgB,4BAA4B,4CAA5B,4BAA4B,QA+E5C"}
1
+ {"version":3,"file":"FunctionalIsReturnProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/functional/FunctionalIsReturnProgrammer.ts"],"names":[],"mappings":"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"}
@@ -43,9 +43,9 @@ var FunctionalValidateParametersProgrammer;
43
43
  return function (equals) {
44
44
  return function (expression, declaration) {
45
45
  var async = (function () {
46
- if (declaration.type === undefined)
47
- return false;
48
- var type = project.checker.getTypeFromTypeNode(declaration.type);
46
+ var _a;
47
+ var signature = project.checker.getSignatureFromDeclaration(declaration);
48
+ var type = (_a = signature === null || signature === void 0 ? void 0 : signature.getReturnType()) !== null && _a !== void 0 ? _a : project.checker.getTypeFromTypeNode(TypeFactory_1.TypeFactory.keyword("any"));
49
49
  return type.isTypeParameter() && type.symbol.name === "Promise";
50
50
  })();
51
51
  var caller = typescript_1.default.factory.createCallExpression(expression, undefined, declaration.parameters.map(function (p) {
@@ -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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"}
@@ -48,7 +48,8 @@ var FunctionalValidateReturnProgrammer;
48
48
  return function (expression, declaration) {
49
49
  var _a = __read((function () {
50
50
  var _a;
51
- var type = project.checker.getTypeFromTypeNode((_a = declaration.type) !== null && _a !== void 0 ? _a : TypeFactory_1.TypeFactory.keyword("any"));
51
+ var signature = project.checker.getSignatureFromDeclaration(declaration);
52
+ var type = (_a = signature === null || signature === void 0 ? void 0 : signature.getReturnType()) !== null && _a !== void 0 ? _a : project.checker.getTypeFromTypeNode(TypeFactory_1.TypeFactory.keyword("any"));
52
53
  return type.isTypeParameter() && type.symbol.name === "Promise"
53
54
  ? [type.aliasTypeArguments[0], true]
54
55
  : [type, false];
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "5.5.0-dev.20240306",
3
+ "version": "5.5.1-dev.20240306",
4
4
  "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -24,14 +24,7 @@ export namespace FunctionalAssertFunctionProgrammer {
24
24
  const wrapper = errorFactoryWrapper(modulo)(declaration.parameters)(init);
25
25
  const { async, returns } = FunctionAssertReturnProgrammer.returnStatement(
26
26
  project,
27
- )(modulo)(equals)(
28
- expression,
29
- declaration.type,
30
- declaration.parameters.map((p) =>
31
- ts.factory.createIdentifier(p.name.getText()),
32
- ),
33
- wrapper.name,
34
- );
27
+ )(modulo)(equals)(expression, declaration, wrapper.name);
35
28
  return ts.factory.createArrowFunction(
36
29
  async
37
30
  ? [ts.factory.createModifier(ts.SyntaxKind.AsyncKeyword)]
@@ -21,10 +21,11 @@ export namespace FunctionalAssertParametersProgrammer {
21
21
  modulo,
22
22
  )(declaration.parameters)(init);
23
23
  const async: boolean = (() => {
24
- if (declaration.type === undefined) return false;
25
- const type: ts.Type = project.checker.getTypeFromTypeNode(
26
- declaration.type,
27
- );
24
+ const signature: ts.Signature | undefined =
25
+ project.checker.getSignatureFromDeclaration(declaration);
26
+ const type: ts.Type =
27
+ signature?.getReturnType() ??
28
+ project.checker.getTypeFromTypeNode(TypeFactory.keyword("any"));
28
29
  return type.isTypeParameter() && type.symbol.name === "Promise";
29
30
  })();
30
31
  return ts.factory.createArrowFunction(
@@ -22,14 +22,7 @@ export namespace FunctionAssertReturnProgrammer {
22
22
  )(declaration.parameters)(init);
23
23
  const { async, returns: statement } = returnStatement(project)(modulo)(
24
24
  equals,
25
- )(
26
- expression,
27
- declaration.type,
28
- declaration.parameters.map((p) =>
29
- ts.factory.createIdentifier(p.name.getText()),
30
- ),
31
- wrapper.name,
32
- );
25
+ )(expression, declaration, wrapper.name);
33
26
  return ts.factory.createArrowFunction(
34
27
  async
35
28
  ? [ts.factory.createModifier(ts.SyntaxKind.AsyncKeyword)]
@@ -48,17 +41,18 @@ export namespace FunctionAssertReturnProgrammer {
48
41
  (equals: boolean) =>
49
42
  (
50
43
  expression: ts.Expression,
51
- typeNode: ts.TypeNode | undefined,
52
- argumentExpressions: ts.Expression[],
44
+ declaration: ts.FunctionDeclaration,
53
45
  wrapper: string,
54
46
  ): {
55
47
  async: boolean;
56
48
  returns: ts.ReturnStatement;
57
49
  } => {
58
50
  const [type, async]: [ts.Type, boolean] = (() => {
59
- const type: ts.Type = project.checker.getTypeFromTypeNode(
60
- typeNode ?? TypeFactory.keyword("any"),
61
- );
51
+ const signature: ts.Signature | undefined =
52
+ project.checker.getSignatureFromDeclaration(declaration);
53
+ const type: ts.Type =
54
+ signature?.getReturnType() ??
55
+ project.checker.getTypeFromTypeNode(TypeFactory.keyword("any"));
62
56
  return type.isTypeParameter() && type.symbol.name === "Promise"
63
57
  ? [type.aliasTypeArguments![0]!, true]
64
58
  : [type, false];
@@ -66,7 +60,9 @@ export namespace FunctionAssertReturnProgrammer {
66
60
  const caller: ts.CallExpression = ts.factory.createCallExpression(
67
61
  expression,
68
62
  undefined,
69
- argumentExpressions,
63
+ declaration.parameters.map((p) =>
64
+ ts.factory.createIdentifier(p.name.getText()),
65
+ ),
70
66
  );
71
67
  return {
72
68
  async,
@@ -16,10 +16,11 @@ export namespace FunctionalIsParametersProgrammer {
16
16
  declaration: ts.FunctionDeclaration,
17
17
  ): ts.ArrowFunction => {
18
18
  const async: boolean = (() => {
19
- if (declaration.type === undefined) return false;
20
- const type: ts.Type = project.checker.getTypeFromTypeNode(
21
- declaration.type,
22
- );
19
+ const signature: ts.Signature | undefined =
20
+ project.checker.getSignatureFromDeclaration(declaration);
21
+ const type: ts.Type =
22
+ signature?.getReturnType() ??
23
+ project.checker.getTypeFromTypeNode(TypeFactory.keyword("any"));
23
24
  return type.isTypeParameter() && type.symbol.name === "Promise";
24
25
  })();
25
26
  return ts.factory.createArrowFunction(
@@ -49,9 +49,11 @@ export namespace FunctionalIsReturnProgrammer {
49
49
  statements: ts.Statement[];
50
50
  } => {
51
51
  const [type, async]: [ts.Type, boolean] = (() => {
52
- const type: ts.Type = project.checker.getTypeFromTypeNode(
53
- declaration.type ?? TypeFactory.keyword("any"),
54
- );
52
+ const signature: ts.Signature | undefined =
53
+ project.checker.getSignatureFromDeclaration(declaration);
54
+ const type: ts.Type =
55
+ signature?.getReturnType() ??
56
+ project.checker.getTypeFromTypeNode(TypeFactory.keyword("any"));
55
57
  return type.isTypeParameter() && type.symbol.name === "Promise"
56
58
  ? [type.aliasTypeArguments![0]!, true]
57
59
  : [type, false];
@@ -21,10 +21,11 @@ export namespace FunctionalValidateParametersProgrammer {
21
21
  declaration: ts.FunctionDeclaration,
22
22
  ): ts.ArrowFunction => {
23
23
  const async: boolean = (() => {
24
- if (declaration.type === undefined) return false;
25
- const type: ts.Type = project.checker.getTypeFromTypeNode(
26
- declaration.type,
27
- );
24
+ const signature: ts.Signature | undefined =
25
+ project.checker.getSignatureFromDeclaration(declaration);
26
+ const type: ts.Type =
27
+ signature?.getReturnType() ??
28
+ project.checker.getTypeFromTypeNode(TypeFactory.keyword("any"));
28
29
  return type.isTypeParameter() && type.symbol.name === "Promise";
29
30
  })();
30
31
  const caller: ts.CallExpression = ts.factory.createCallExpression(
@@ -56,9 +56,11 @@ export namespace FunctionalValidateReturnProgrammer {
56
56
  statements: ts.Statement[];
57
57
  } => {
58
58
  const [type, async]: [ts.Type, boolean] = (() => {
59
- const type: ts.Type = project.checker.getTypeFromTypeNode(
60
- declaration.type ?? TypeFactory.keyword("any"),
61
- );
59
+ const signature: ts.Signature | undefined =
60
+ project.checker.getSignatureFromDeclaration(declaration);
61
+ const type: ts.Type =
62
+ signature?.getReturnType() ??
63
+ project.checker.getTypeFromTypeNode(TypeFactory.keyword("any"));
62
64
  return type.isTypeParameter() && type.symbol.name === "Promise"
63
65
  ? [type.aliasTypeArguments![0]!, true]
64
66
  : [type, false];