typia 5.4.14 → 5.5.0-dev.20240301

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 (73) hide show
  1. package/lib/factories/IdentifierFactory.d.ts +1 -1
  2. package/lib/functional/$guard.js +49 -28
  3. package/lib/functional/$guard.js.map +1 -1
  4. package/lib/functional/Namespace/index.d.ts +1 -1
  5. package/lib/http.d.ts +10 -493
  6. package/lib/http.js.map +1 -1
  7. package/lib/json.d.ts +9 -8
  8. package/lib/json.js.map +1 -1
  9. package/lib/misc.d.ts +9 -8
  10. package/lib/misc.js.map +1 -1
  11. package/lib/module.d.ts +17 -16
  12. package/lib/module.js.map +1 -1
  13. package/lib/notations.d.ts +13 -12
  14. package/lib/notations.js.map +1 -1
  15. package/lib/programmers/AssertProgrammer.d.ts +5 -1
  16. package/lib/programmers/AssertProgrammer.js +31 -22
  17. package/lib/programmers/AssertProgrammer.js.map +1 -1
  18. package/lib/programmers/http/HttpAssertFormDataProgrammer.d.ts +1 -1
  19. package/lib/programmers/http/HttpAssertFormDataProgrammer.js +6 -2
  20. package/lib/programmers/http/HttpAssertFormDataProgrammer.js.map +1 -1
  21. package/lib/programmers/http/HttpAssertHeadersProgrammer.d.ts +1 -1
  22. package/lib/programmers/http/HttpAssertHeadersProgrammer.js +6 -2
  23. package/lib/programmers/http/HttpAssertHeadersProgrammer.js.map +1 -1
  24. package/lib/programmers/http/HttpAssertQueryProgrammer.d.ts +1 -1
  25. package/lib/programmers/http/HttpAssertQueryProgrammer.js +6 -2
  26. package/lib/programmers/http/HttpAssertQueryProgrammer.js.map +1 -1
  27. package/lib/programmers/json/JsonAssertParseProgrammer.d.ts +1 -1
  28. package/lib/programmers/json/JsonAssertParseProgrammer.js +9 -3
  29. package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
  30. package/lib/programmers/json/JsonAssertStringifyProgrammer.d.ts +1 -1
  31. package/lib/programmers/json/JsonAssertStringifyProgrammer.js +9 -3
  32. package/lib/programmers/json/JsonAssertStringifyProgrammer.js.map +1 -1
  33. package/lib/programmers/misc/MiscAssertCloneProgrammer.d.ts +1 -1
  34. package/lib/programmers/misc/MiscAssertCloneProgrammer.js +9 -3
  35. package/lib/programmers/misc/MiscAssertCloneProgrammer.js.map +1 -1
  36. package/lib/programmers/misc/MiscAssertPruneProgrammer.d.ts +1 -1
  37. package/lib/programmers/misc/MiscAssertPruneProgrammer.js +9 -3
  38. package/lib/programmers/misc/MiscAssertPruneProgrammer.js.map +1 -1
  39. package/lib/programmers/notations/NotationAssertGeneralProgrammer.d.ts +1 -1
  40. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js +9 -3
  41. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js.map +1 -1
  42. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.d.ts +1 -1
  43. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js +6 -2
  44. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js.map +1 -1
  45. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.d.ts +1 -1
  46. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js +9 -3
  47. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js.map +1 -1
  48. package/lib/protobuf.d.ts +9 -8
  49. package/lib/protobuf.js.map +1 -1
  50. package/lib/transformers/internal/GenericTransformer.d.ts +1 -1
  51. package/lib/transformers/internal/GenericTransformer.js +3 -3
  52. package/lib/transformers/internal/GenericTransformer.js.map +1 -1
  53. package/package.json +1 -1
  54. package/src/factories/IdentifierFactory.ts +1 -1
  55. package/src/functional/$guard.ts +33 -19
  56. package/src/http.ts +25 -508
  57. package/src/json.ts +29 -8
  58. package/src/misc.ts +29 -8
  59. package/src/module.ts +57 -16
  60. package/src/notations.ts +43 -12
  61. package/src/programmers/AssertProgrammer.ts +69 -28
  62. package/src/programmers/http/HttpAssertFormDataProgrammer.ts +6 -2
  63. package/src/programmers/http/HttpAssertHeadersProgrammer.ts +6 -2
  64. package/src/programmers/http/HttpAssertQueryProgrammer.ts +6 -2
  65. package/src/programmers/json/JsonAssertParseProgrammer.ts +9 -3
  66. package/src/programmers/json/JsonAssertStringifyProgrammer.ts +9 -3
  67. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +9 -3
  68. package/src/programmers/misc/MiscAssertPruneProgrammer.ts +9 -3
  69. package/src/programmers/notations/NotationAssertGeneralProgrammer.ts +9 -3
  70. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +6 -2
  71. package/src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts +9 -3
  72. package/src/protobuf.ts +29 -8
  73. package/src/transformers/internal/GenericTransformer.ts +12 -4
@@ -1 +1 @@
1
- {"version":3,"file":"ProtobufAssertDecodeProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,qEAAoE;AACpE,2DAA0D;AAI1D,wDAAuD;AACvD,uEAAsE;AAEtE,IAAiB,8BAA8B,CA+D9C;AA/DD,WAAiB,8BAA8B;IAChC,oCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,IAAa,EAAE,IAAa;gBAC3B,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT;oBACE,qCAAiB,CAAC,SAAS,CACzB,OAAO,EACP,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,YAAY,CAAC,CACjD;iBACF,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,yBACE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,yBAAW,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MACrD,CACJ,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;oBACrB,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,mDAAwB,CAAC,KAAK,uBACzB,OAAO,KACV,OAAO,wBACF,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,OAEhB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CACvB;oBACD,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,mCAAgB,CAAC,KAAK,uBACjB,OAAO,KACV,OAAO,wBACF,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,OAEhB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAC9B;oBACD,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC,CACF;oBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAC3B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CACxC,EACD,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC3B,CACF;iBACF,CAAC,CACH;YAzDD,CAyDC;QA1DH,CA0DG;IA3DH,CA2DG,CAAC;AACR,CAAC,EA/DgB,8BAA8B,8CAA9B,8BAA8B,QA+D9C"}
1
+ {"version":3,"file":"ProtobufAssertDecodeProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,qEAAoE;AACpE,2DAA0D;AAI1D,wDAAuD;AACvD,uEAAsE;AAEtE,IAAiB,8BAA8B,CAmE9C;AAnED,WAAiB,8BAA8B;IAChC,oCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,IAAa,EAAE,IAAa,EAAE,IAAoB;gBACjD,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT;oBACE,qCAAiB,CAAC,SAAS,CACzB,OAAO,EACP,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,YAAY,CAAC,CACjD;oBACD,mCAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC;iBAC1C,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,yBACE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,yBAAW,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MACrD,CACJ,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;oBACrB,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,mDAAwB,CAAC,KAAK,uBACzB,OAAO,KACV,OAAO,wBACF,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,OAEhB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CACvB;oBACD,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,mCAAgB,CAAC,KAAK,uBACjB,OAAO,KACV,OAAO,wBACF,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,OAEhB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAC9B;oBACD,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC,CACF;oBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAC3B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT;wBACE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC;wBACrC,mCAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE;qBACvC,CACF,EACD,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAC3B,CACF;iBACF,CAAC,CACH;YA7DD,CA6DC;QA9DH,CA8DG;IA/DH,CA+DG,CAAC;AACR,CAAC,EAnEgB,8BAA8B,8CAA9B,8BAA8B,QAmE9C"}
@@ -2,5 +2,5 @@
2
2
  import ts from "typescript";
3
3
  import { IProject } from "../../transformers/IProject";
4
4
  export declare namespace ProtobufAssertEncodeProgrammer {
5
- const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (type: ts.Type, name?: string) => ts.ArrowFunction;
5
+ const write: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (type: ts.Type, name?: string, init?: ts.Expression) => ts.ArrowFunction;
6
6
  }
@@ -25,12 +25,18 @@ var ProtobufAssertEncodeProgrammer;
25
25
  (function (ProtobufAssertEncodeProgrammer) {
26
26
  ProtobufAssertEncodeProgrammer.write = function (project) {
27
27
  return function (modulo) {
28
- return function (type, name) {
29
- return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("input", TypeFactory_1.TypeFactory.keyword("any"))], typescript_1.default.factory.createTypeReferenceNode("Uint8Array"), undefined, typescript_1.default.factory.createBlock([
28
+ return function (type, name, init) {
29
+ return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
30
+ IdentifierFactory_1.IdentifierFactory.parameter("input", TypeFactory_1.TypeFactory.keyword("any")),
31
+ AssertProgrammer_1.AssertProgrammer.Guardian.parameter(init),
32
+ ], typescript_1.default.factory.createTypeReferenceNode("Uint8Array"), undefined, typescript_1.default.factory.createBlock([
30
33
  StatementFactory_1.StatementFactory.constant("assert", AssertProgrammer_1.AssertProgrammer.write(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: true }) }))(modulo)(false)(type, name)),
31
34
  StatementFactory_1.StatementFactory.constant("encode", ProtobufEncodeProgrammer_1.ProtobufEncodeProgrammer.write(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }))(modulo)(type, name)),
32
35
  typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("encode"), undefined, [
33
- typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("assert"), undefined, [typescript_1.default.factory.createIdentifier("input")]),
36
+ typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("assert"), undefined, [
37
+ typescript_1.default.factory.createIdentifier("input"),
38
+ AssertProgrammer_1.AssertProgrammer.Guardian.identifier(),
39
+ ]),
34
40
  ])),
35
41
  ]));
36
42
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ProtobufAssertEncodeProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,qEAAoE;AACpE,2DAA0D;AAI1D,wDAAuD;AACvD,uEAAsE;AAEtE,IAAiB,8BAA8B,CAiD9C;AAjDD,WAAiB,8BAA8B;IAChC,oCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,IAAa,EAAE,IAAa;gBAC3B,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,OAAO,EAAE,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAClE,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAChD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;oBACrB,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,mCAAgB,CAAC,KAAK,uBACjB,OAAO,KACV,OAAO,wBACF,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,OAEf,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAC9B;oBACD,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,mDAAwB,CAAC,KAAK,uBACzB,OAAO,KACV,OAAO,wBACF,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,OAEhB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CACvB;oBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT;wBACE,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC;qBACF,CACF,CACF;iBACF,CAAC,CACH;YA3CD,CA2CC;QA5CH,CA4CG;IA7CH,CA6CG,CAAC;AACR,CAAC,EAjDgB,8BAA8B,8CAA9B,8BAA8B,QAiD9C"}
1
+ {"version":3,"file":"ProtobufAssertEncodeProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AACtE,qEAAoE;AACpE,2DAA0D;AAI1D,wDAAuD;AACvD,uEAAsE;AAEtE,IAAiB,8BAA8B,CAuD9C;AAvDD,WAAiB,8BAA8B;IAChC,oCAAK,GAChB,UAAC,OAAiB;QAClB,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,IAAa,EAAE,IAAa,EAAE,IAAoB;gBACjD,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT;oBACE,qCAAiB,CAAC,SAAS,CAAC,OAAO,EAAE,yBAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAChE,mCAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC;iBAC1C,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,YAAY,CAAC,EAChD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;oBACrB,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,mCAAgB,CAAC,KAAK,uBACjB,OAAO,KACV,OAAO,wBACF,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,OAEf,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAC9B;oBACD,mCAAgB,CAAC,QAAQ,CACvB,QAAQ,EACR,mDAAwB,CAAC,KAAK,uBACzB,OAAO,KACV,OAAO,wBACF,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,OAEhB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CACvB;oBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT;wBACE,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EACrC,SAAS,EACT;4BACE,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;4BACpC,mCAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE;yBACvC,CACF;qBACF,CACF,CACF;iBACF,CAAC,CACH;YAjDD,CAiDC;QAlDH,CAkDG;IAnDH,CAmDG,CAAC;AACR,CAAC,EAvDgB,8BAA8B,8CAA9B,8BAA8B,QAuD9C"}
package/lib/protobuf.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { IValidation } from "./IValidation";
2
2
  import { Resolved } from "./Resolved";
3
+ import { TypeGuardError } from "./TypeGuardError";
3
4
  /**
4
5
  * > You must configure the generic argument `T`.
5
6
  *
@@ -131,7 +132,7 @@ export { decodePure as decode };
131
132
  *
132
133
  * @author Jeongho Nam - https://github.com/samchon
133
134
  */
134
- declare function assertDecode(input: Uint8Array): never;
135
+ declare function assertDecode(input: Uint8Array, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): never;
135
136
  /**
136
137
  * Protocol Buffer Decoder wity type assertion, but not safe.
137
138
  *
@@ -159,7 +160,7 @@ declare function assertDecode(input: Uint8Array): never;
159
160
  *
160
161
  * @author Jeongho Nam - https://github.com/samchon
161
162
  */
162
- declare function assertDecode<T>(input: Uint8Array): Resolved<T>;
163
+ declare function assertDecode<T>(input: Uint8Array, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): Resolved<T>;
163
164
  declare const assertDecodePure: typeof assertDecode;
164
165
  export { assertDecodePure as assertDecode };
165
166
  /**
@@ -345,7 +346,7 @@ export { encodePure as encode };
345
346
  *
346
347
  * @author Jeongho Nam - https://github.com/samchon
347
348
  */
348
- declare function assertEncode<T>(input: T): Uint8Array;
349
+ declare function assertEncode<T>(input: T, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): Uint8Array;
349
350
  /**
350
351
  * Protocol Buffer Encoder with type assertion.
351
352
  *
@@ -377,7 +378,7 @@ declare function assertEncode<T>(input: T): Uint8Array;
377
378
  *
378
379
  * @author Jeongho Nam - https://github.com/samchon
379
380
  */
380
- declare function assertEncode<T>(input: unknown): Uint8Array;
381
+ declare function assertEncode<T>(input: unknown, errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): Uint8Array;
381
382
  declare const assertEncodePure: typeof assertEncode;
382
383
  export { assertEncodePure as assertEncode };
383
384
  /**
@@ -565,7 +566,7 @@ export { createIsDecodePure as createIsDecode };
565
566
  *
566
567
  * @author Jeongho Nam - https://github.com/samchon
567
568
  */
568
- declare function createAssertDecode(): never;
569
+ declare function createAssertDecode(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): never;
569
570
  /**
570
571
  * Creates a reusable {@link assertDecode} function.
571
572
  *
@@ -574,7 +575,7 @@ declare function createAssertDecode(): never;
574
575
  *
575
576
  * @author Jeongho Nam - https://github.com/samchon
576
577
  */
577
- declare function createAssertDecode<T>(): (input: Uint8Array) => Resolved<T>;
578
+ declare function createAssertDecode<T>(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): (input: Uint8Array) => Resolved<T>;
578
579
  declare const createAssertDecodePure: typeof createAssertDecode;
579
580
  export { createAssertDecodePure as createAssertDecode };
580
581
  /**
@@ -649,7 +650,7 @@ export { createIsEncodePure as createIsEncode };
649
650
  *
650
651
  * @author Jeongho Nam - https://github.com/samchon
651
652
  */
652
- declare function createAssertEncode(): never;
653
+ declare function createAssertEncode(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): never;
653
654
  /**
654
655
  * Creates a reusable {@link assertEncode} function.
655
656
  *
@@ -658,7 +659,7 @@ declare function createAssertEncode(): never;
658
659
  *
659
660
  * @author Jeongho Nam - https://github.com/samchon
660
661
  */
661
- declare function createAssertEncode<T>(): (input: T) => Uint8Array;
662
+ declare function createAssertEncode<T>(errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error)): (input: T) => Uint8Array;
662
663
  declare const createAssertEncodePure: typeof createAssertEncode;
663
664
  export { createAssertEncodePure as createAssertEncode };
664
665
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"protobuf.js","sourceRoot":"","sources":["../src/protobuf.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protobuf.js","sourceRoot":"","sources":["../src/protobuf.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@ import ts from "typescript";
3
3
  import { IProject } from "../IProject";
4
4
  export declare namespace GenericTransformer {
5
5
  const scalar: (method: string) => (programmer: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (type: ts.Type, name: string) => ts.ArrowFunction) => (project: IProject) => (modulo: ts.LeftHandSideExpression) => (expression: ts.CallExpression) => ts.CallExpression;
6
- const factory: (method: string) => (programmer: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (type: ts.Type, name: string) => ts.ArrowFunction) => (project: IProject) => (modulo: ts.LeftHandSideExpression) => (expression: ts.CallExpression) => ts.ArrowFunction;
6
+ const factory: (method: string) => (programmer: (project: IProject) => (modulo: ts.LeftHandSideExpression) => (type: ts.Type, name: string, init?: ts.Expression) => ts.ArrowFunction) => (project: IProject) => (modulo: ts.LeftHandSideExpression) => (expression: ts.CallExpression) => ts.ArrowFunction;
7
7
  }
@@ -30,7 +30,7 @@ var GenericTransformer;
30
30
  return function (modulo) {
31
31
  return function (expression) {
32
32
  // CHECK PARAMETER
33
- if (expression.arguments.length !== 1)
33
+ if (expression.arguments.length === 0)
34
34
  throw new TransformerError_1.TransformerError({
35
35
  code: "typia.".concat(method),
36
36
  message: "no input value.",
@@ -55,7 +55,7 @@ var GenericTransformer;
55
55
  // DO TRANSFORM
56
56
  return typescript_1.default.factory.createCallExpression(programmer(project)(modulo)(type, generic
57
57
  ? node.getFullText().trim()
58
- : name(project.checker)(type)(node)), undefined, [expression.arguments[0]]);
58
+ : name(project.checker)(type)(node)), undefined, expression.arguments);
59
59
  };
60
60
  };
61
61
  };
@@ -82,7 +82,7 @@ var GenericTransformer;
82
82
  message: "non-specified generic argument.",
83
83
  });
84
84
  // DO TRANSFORM
85
- return programmer(project)(modulo)(type, node.getFullText().trim());
85
+ return programmer(project)(modulo)(type, node.getFullText().trim(), expression.arguments[0]);
86
86
  };
87
87
  };
88
88
  };
@@ -1 +1 @@
1
- {"version":3,"file":"GenericTransformer.js","sourceRoot":"","sources":["../../../src/transformers/internal/GenericTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GenericTransformer.js","sourceRoot":"","sources":["../../../src/transformers/internal/GenericTransformer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "5.4.14",
3
+ "version": "5.5.0-dev.20240301",
4
4
  "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
@@ -41,7 +41,7 @@ export namespace IdentifierFactory {
41
41
  name: string | ts.BindingName,
42
42
  type?: ts.TypeNode,
43
43
  init?: ts.Expression | ts.PunctuationToken<ts.SyntaxKind.QuestionToken>,
44
- ) => {
44
+ ): ts.ParameterDeclaration => {
45
45
  // instead of ts.version >= "4.8"
46
46
  if (ts.getDecorators !== undefined)
47
47
  return ts.factory.createParameterDeclaration(
@@ -1,31 +1,45 @@
1
1
  import { TypeGuardError } from "../TypeGuardError";
2
2
 
3
- /* -----------------------------------------------------------
4
- ASSERT V2 -> USE (NULL OR ERROR) CONDITION
5
- ----------------------------------------------------------- */
6
- // /**
7
- // * @internal
8
- // */
9
- // export const $guardV2 =
10
- // (method: string) => (props: Omit<TypeGuardError.IProps, "method">) =>
11
- // new TypeGuardError({
12
- // method,
13
- // path: props.path,
14
- // expected: props.expected,
15
- // value: props.value,
16
- // });
3
+ /**
4
+ * @internal
5
+ */
6
+ export function $guard(
7
+ method: string,
8
+ ): (
9
+ factory?: (props: TypeGuardError.IProps) => Error,
10
+ ) => (
11
+ exceptionable: boolean,
12
+ props: Omit<TypeGuardError.IProps, "method">,
13
+ ) => boolean;
14
+
15
+ /**
16
+ * @internal
17
+ */
18
+ export function $guard(
19
+ method: string,
20
+ ): (
21
+ exceptionable: boolean,
22
+ props: Omit<TypeGuardError.IProps, "method">,
23
+ ) => boolean;
17
24
 
18
- /* -----------------------------------------------------------
19
- ASSERT V3 -> (CONDITION OR THROW(exceptable): FALSE)
20
- ----------------------------------------------------------- */
21
25
  /**
22
26
  * @internal
23
27
  */
24
- export const $guard =
28
+ export function $guard(method: string) {
29
+ return (...args: any[]) =>
30
+ args.length === 2
31
+ ? throws(method)((props) => new TypeGuardError(props))(
32
+ ...(args as [boolean, Omit<TypeGuardError.IProps, "method">]),
33
+ )
34
+ : throws(method)(args[0] ?? ((props) => new TypeGuardError(props)));
35
+ }
36
+
37
+ const throws =
25
38
  (method: string) =>
39
+ (factory: (props: TypeGuardError.IProps) => Error) =>
26
40
  (exceptionable: boolean, props: Omit<TypeGuardError.IProps, "method">) => {
27
41
  if (exceptionable === true)
28
- throw new TypeGuardError({
42
+ throw factory!({
29
43
  method,
30
44
  path: props.path,
31
45
  expected: props.expected,