typia 6.7.0 → 6.7.1

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 (85) hide show
  1. package/lib/programmers/AssertProgrammer.d.ts +0 -1
  2. package/lib/programmers/AssertProgrammer.js.map +1 -1
  3. package/lib/programmers/CheckerProgrammer.d.ts +1 -1
  4. package/lib/programmers/FeatureProgrammer.d.ts +1 -1
  5. package/lib/programmers/IsProgrammer.d.ts +1 -1
  6. package/lib/programmers/RandomProgrammer.d.ts +10 -1
  7. package/lib/programmers/RandomProgrammer.js +62 -37
  8. package/lib/programmers/RandomProgrammer.js.map +1 -1
  9. package/lib/programmers/ValidateProgrammer.d.ts +1 -1
  10. package/lib/programmers/json/JsonIsParseProgrammer.d.ts +1 -1
  11. package/lib/programmers/json/JsonIsStringifyProgrammer.d.ts +1 -1
  12. package/lib/programmers/json/JsonStringifyProgrammer.d.ts +1 -1
  13. package/lib/programmers/json/JsonStringifyProgrammer.js +1 -3
  14. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  15. package/lib/programmers/json/JsonValidateParseProgrammer.d.ts +1 -1
  16. package/lib/programmers/json/JsonValidateStringifyProgrammer.d.ts +1 -1
  17. package/lib/programmers/misc/MiscCloneProgrammer.d.ts +1 -1
  18. package/lib/programmers/misc/MiscCloneProgrammer.js +33 -14
  19. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  20. package/lib/programmers/misc/MiscIsCloneProgrammer.d.ts +1 -1
  21. package/lib/programmers/misc/MiscIsPruneProgrammer.d.ts +1 -1
  22. package/lib/programmers/misc/MiscPruneProgrammer.d.ts +1 -1
  23. package/lib/programmers/misc/MiscValidateCloneProgrammer.d.ts +1 -1
  24. package/lib/programmers/misc/MiscValidatePruneProgrammer.d.ts +1 -1
  25. package/lib/programmers/notations/NotationGeneralProgrammer.d.ts +1 -1
  26. package/lib/programmers/notations/NotationGeneralProgrammer.js +30 -11
  27. package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
  28. package/lib/programmers/notations/NotationValidateGeneralProgrammer.d.ts +1 -1
  29. package/package.json +1 -1
  30. package/src/programmers/AssertProgrammer.ts +397 -398
  31. package/src/programmers/CheckerProgrammer.ts +1138 -1138
  32. package/src/programmers/FeatureProgrammer.ts +549 -549
  33. package/src/programmers/IsProgrammer.ts +1 -1
  34. package/src/programmers/RandomProgrammer.ts +112 -77
  35. package/src/programmers/ValidateProgrammer.ts +382 -382
  36. package/src/programmers/functional/FunctionalAssertFunctionProgrammer.ts +141 -141
  37. package/src/programmers/functional/FunctionalAssertParametersProgrammer.ts +108 -108
  38. package/src/programmers/functional/FunctionalAssertReturnProgrammer.ts +98 -98
  39. package/src/programmers/functional/FunctionalIsFunctionProgrammer.ts +72 -72
  40. package/src/programmers/functional/FunctionalIsParametersProgrammer.ts +101 -101
  41. package/src/programmers/functional/FunctionalIsReturnProgrammer.ts +106 -106
  42. package/src/programmers/functional/FunctionalValidateFunctionProgrammer.ts +123 -123
  43. package/src/programmers/functional/FunctionalValidateParametersProgrammer.ts +267 -267
  44. package/src/programmers/functional/FunctionalValidateReturnProgrammer.ts +126 -126
  45. package/src/programmers/helpers/FunctionImporter.ts +97 -97
  46. package/src/programmers/http/HttpAssertFormDataProgrammer.ts +91 -91
  47. package/src/programmers/http/HttpAssertHeadersProgrammer.ts +91 -91
  48. package/src/programmers/http/HttpAssertQueryProgrammer.ts +93 -93
  49. package/src/programmers/http/HttpFormDataProgrammer.ts +278 -278
  50. package/src/programmers/http/HttpHeadersProgrammer.ts +347 -347
  51. package/src/programmers/http/HttpIsFormDataProgrammer.ts +102 -102
  52. package/src/programmers/http/HttpIsHeadersProgrammer.ts +102 -102
  53. package/src/programmers/http/HttpIsQueryProgrammer.ts +104 -104
  54. package/src/programmers/http/HttpQueryProgrammer.ts +298 -298
  55. package/src/programmers/http/HttpValidateFormDataProgrammer.ts +85 -85
  56. package/src/programmers/http/HttpValidateHeadersProgrammer.ts +85 -85
  57. package/src/programmers/http/HttpValidateQueryProgrammer.ts +87 -87
  58. package/src/programmers/json/JsonAssertParseProgrammer.ts +96 -96
  59. package/src/programmers/json/JsonAssertStringifyProgrammer.ts +104 -104
  60. package/src/programmers/json/JsonIsParseProgrammer.ts +110 -110
  61. package/src/programmers/json/JsonIsStringifyProgrammer.ts +102 -102
  62. package/src/programmers/json/JsonStringifyProgrammer.ts +909 -910
  63. package/src/programmers/json/JsonValidateParseProgrammer.ts +87 -87
  64. package/src/programmers/json/JsonValidateStringifyProgrammer.ts +111 -111
  65. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +87 -87
  66. package/src/programmers/misc/MiscAssertPruneProgrammer.ts +87 -87
  67. package/src/programmers/misc/MiscCloneProgrammer.ts +781 -759
  68. package/src/programmers/misc/MiscIsCloneProgrammer.ts +93 -93
  69. package/src/programmers/misc/MiscIsPruneProgrammer.ts +94 -94
  70. package/src/programmers/misc/MiscPruneProgrammer.ts +560 -560
  71. package/src/programmers/misc/MiscValidateCloneProgrammer.ts +104 -104
  72. package/src/programmers/misc/MiscValidatePruneProgrammer.ts +98 -98
  73. package/src/programmers/notations/NotationAssertGeneralProgrammer.ts +91 -91
  74. package/src/programmers/notations/NotationGeneralProgrammer.ts +709 -685
  75. package/src/programmers/notations/NotationIsGeneralProgrammer.ts +97 -97
  76. package/src/programmers/notations/NotationValidateGeneralProgrammer.ts +107 -107
  77. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +91 -91
  78. package/src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts +95 -95
  79. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +646 -646
  80. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +852 -852
  81. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +104 -104
  82. package/src/programmers/protobuf/ProtobufIsEncodeProgrammer.ts +93 -93
  83. package/src/programmers/protobuf/ProtobufValidateDecodeProgrammer.ts +85 -85
  84. package/src/programmers/protobuf/ProtobufValidateEncodeProgrammer.ts +109 -109
  85. package/src/transformers/internal/GenericTransformer.ts +104 -104
@@ -1,91 +1,91 @@
1
- import ts from "typescript";
2
-
3
- import { IdentifierFactory } from "../../factories/IdentifierFactory";
4
- import { StatementFactory } from "../../factories/StatementFactory";
5
- import { TypeFactory } from "../../factories/TypeFactory";
6
-
7
- import { IProject } from "../../transformers/IProject";
8
-
9
- import { AssertProgrammer } from "../AssertProgrammer";
10
- import { FeatureProgrammer } from "../FeatureProgrammer";
11
- import { FunctionImporter } from "../helpers/FunctionImporter";
12
- import { HttpHeadersProgrammer } from "./HttpHeadersProgrammer";
13
-
14
- export namespace HttpAssertHeadersProgrammer {
15
- export const decompose = (props: {
16
- project: IProject;
17
- importer: FunctionImporter;
18
- type: ts.Type;
19
- name: string | undefined;
20
- init: ts.Expression | undefined;
21
- }): FeatureProgrammer.IDecomposed => {
22
- const assert: FeatureProgrammer.IDecomposed = AssertProgrammer.decompose({
23
- ...props,
24
- project: {
25
- ...props.project,
26
- options: {
27
- ...props.project.options,
28
- functional: false,
29
- numeric: false,
30
- },
31
- },
32
- equals: false,
33
- guard: false,
34
- });
35
- const decode: FeatureProgrammer.IDecomposed =
36
- HttpHeadersProgrammer.decompose(props);
37
- return {
38
- functions: {
39
- ...assert.functions,
40
- ...decode.functions,
41
- },
42
- statements: [
43
- ...assert.statements,
44
- ...decode.statements,
45
- StatementFactory.constant("__assert", assert.arrow),
46
- StatementFactory.constant("__decode", decode.arrow),
47
- ],
48
- arrow: ts.factory.createArrowFunction(
49
- undefined,
50
- undefined,
51
- [
52
- IdentifierFactory.parameter("input", TypeFactory.keyword("any")),
53
- AssertProgrammer.Guardian.parameter(props.init),
54
- ],
55
- decode.arrow.type,
56
- undefined,
57
- ts.factory.createCallExpression(
58
- ts.factory.createIdentifier("__assert"),
59
- undefined,
60
- [
61
- ts.factory.createCallExpression(
62
- ts.factory.createIdentifier("__decode"),
63
- undefined,
64
- [ts.factory.createIdentifier("input")],
65
- ),
66
- AssertProgrammer.Guardian.identifier(),
67
- ],
68
- ),
69
- ),
70
- };
71
- };
72
-
73
- export const write =
74
- (project: IProject) =>
75
- (modulo: ts.LeftHandSideExpression) =>
76
- (type: ts.Type, name?: string, init?: ts.Expression): ts.CallExpression => {
77
- const importer: FunctionImporter = new FunctionImporter(modulo.getText());
78
- const result: FeatureProgrammer.IDecomposed = decompose({
79
- project,
80
- importer,
81
- type,
82
- name,
83
- init,
84
- });
85
- return FeatureProgrammer.writeDecomposed({
86
- modulo,
87
- importer,
88
- result,
89
- });
90
- };
91
- }
1
+ import ts from "typescript";
2
+
3
+ import { IdentifierFactory } from "../../factories/IdentifierFactory";
4
+ import { StatementFactory } from "../../factories/StatementFactory";
5
+ import { TypeFactory } from "../../factories/TypeFactory";
6
+
7
+ import { IProject } from "../../transformers/IProject";
8
+
9
+ import { AssertProgrammer } from "../AssertProgrammer";
10
+ import { FeatureProgrammer } from "../FeatureProgrammer";
11
+ import { FunctionImporter } from "../helpers/FunctionImporter";
12
+ import { HttpHeadersProgrammer } from "./HttpHeadersProgrammer";
13
+
14
+ export namespace HttpAssertHeadersProgrammer {
15
+ export const decompose = (props: {
16
+ project: IProject;
17
+ importer: FunctionImporter;
18
+ type: ts.Type;
19
+ name: string | undefined;
20
+ init: ts.Expression | undefined;
21
+ }): FeatureProgrammer.IDecomposed => {
22
+ const assert: FeatureProgrammer.IDecomposed = AssertProgrammer.decompose({
23
+ ...props,
24
+ project: {
25
+ ...props.project,
26
+ options: {
27
+ ...props.project.options,
28
+ functional: false,
29
+ numeric: false,
30
+ },
31
+ },
32
+ equals: false,
33
+ guard: false,
34
+ });
35
+ const decode: FeatureProgrammer.IDecomposed =
36
+ HttpHeadersProgrammer.decompose(props);
37
+ return {
38
+ functions: {
39
+ ...assert.functions,
40
+ ...decode.functions,
41
+ },
42
+ statements: [
43
+ ...assert.statements,
44
+ ...decode.statements,
45
+ StatementFactory.constant("__assert", assert.arrow),
46
+ StatementFactory.constant("__decode", decode.arrow),
47
+ ],
48
+ arrow: ts.factory.createArrowFunction(
49
+ undefined,
50
+ undefined,
51
+ [
52
+ IdentifierFactory.parameter("input", TypeFactory.keyword("any")),
53
+ AssertProgrammer.Guardian.parameter(props.init),
54
+ ],
55
+ decode.arrow.type,
56
+ undefined,
57
+ ts.factory.createCallExpression(
58
+ ts.factory.createIdentifier("__assert"),
59
+ undefined,
60
+ [
61
+ ts.factory.createCallExpression(
62
+ ts.factory.createIdentifier("__decode"),
63
+ undefined,
64
+ [ts.factory.createIdentifier("input")],
65
+ ),
66
+ AssertProgrammer.Guardian.identifier(),
67
+ ],
68
+ ),
69
+ ),
70
+ };
71
+ };
72
+
73
+ export const write =
74
+ (project: IProject) =>
75
+ (modulo: ts.LeftHandSideExpression) =>
76
+ (type: ts.Type, name?: string, init?: ts.Expression): ts.CallExpression => {
77
+ const importer: FunctionImporter = new FunctionImporter(modulo.getText());
78
+ const result: FeatureProgrammer.IDecomposed = decompose({
79
+ project,
80
+ importer,
81
+ type,
82
+ name,
83
+ init,
84
+ });
85
+ return FeatureProgrammer.writeDecomposed({
86
+ modulo,
87
+ importer,
88
+ result,
89
+ });
90
+ };
91
+ }
@@ -1,93 +1,93 @@
1
- import ts from "typescript";
2
-
3
- import { IdentifierFactory } from "../../factories/IdentifierFactory";
4
- import { StatementFactory } from "../../factories/StatementFactory";
5
- import { TypeFactory } from "../../factories/TypeFactory";
6
-
7
- import { IProject } from "../../transformers/IProject";
8
-
9
- import { AssertProgrammer } from "../AssertProgrammer";
10
- import { FeatureProgrammer } from "../FeatureProgrammer";
11
- import { FunctionImporter } from "../helpers/FunctionImporter";
12
- import { HttpQueryProgrammer } from "./HttpQueryProgrammer";
13
-
14
- export namespace HttpAssertQueryProgrammer {
15
- export const decompose = (props: {
16
- project: IProject;
17
- importer: FunctionImporter;
18
- type: ts.Type;
19
- name: string | undefined;
20
- init: ts.Expression | undefined;
21
- allowOptional: boolean;
22
- }): FeatureProgrammer.IDecomposed => {
23
- const assert: FeatureProgrammer.IDecomposed = AssertProgrammer.decompose({
24
- ...props,
25
- project: {
26
- ...props.project,
27
- options: {
28
- ...props.project.options,
29
- functional: false,
30
- numeric: false,
31
- },
32
- },
33
- equals: false,
34
- guard: false,
35
- });
36
- const decode: FeatureProgrammer.IDecomposed =
37
- HttpQueryProgrammer.decompose(props);
38
- return {
39
- functions: {
40
- ...assert.functions,
41
- ...decode.functions,
42
- },
43
- statements: [
44
- ...assert.statements,
45
- ...decode.statements,
46
- StatementFactory.constant("__assert", assert.arrow),
47
- StatementFactory.constant("__decode", decode.arrow),
48
- ],
49
- arrow: ts.factory.createArrowFunction(
50
- undefined,
51
- undefined,
52
- [
53
- IdentifierFactory.parameter("input", TypeFactory.keyword("any")),
54
- AssertProgrammer.Guardian.parameter(props.init),
55
- ],
56
- decode.arrow.type,
57
- undefined,
58
- ts.factory.createCallExpression(
59
- ts.factory.createIdentifier("__assert"),
60
- undefined,
61
- [
62
- ts.factory.createCallExpression(
63
- ts.factory.createIdentifier("__decode"),
64
- undefined,
65
- [ts.factory.createIdentifier("input")],
66
- ),
67
- AssertProgrammer.Guardian.identifier(),
68
- ],
69
- ),
70
- ),
71
- };
72
- };
73
-
74
- export const write =
75
- (project: IProject) =>
76
- (modulo: ts.LeftHandSideExpression, allowOptional: boolean = false) =>
77
- (type: ts.Type, name?: string, init?: ts.Expression): ts.CallExpression => {
78
- const importer: FunctionImporter = new FunctionImporter(modulo.getText());
79
- const result: FeatureProgrammer.IDecomposed = decompose({
80
- project,
81
- importer,
82
- type,
83
- name,
84
- init,
85
- allowOptional,
86
- });
87
- return FeatureProgrammer.writeDecomposed({
88
- modulo,
89
- importer,
90
- result,
91
- });
92
- };
93
- }
1
+ import ts from "typescript";
2
+
3
+ import { IdentifierFactory } from "../../factories/IdentifierFactory";
4
+ import { StatementFactory } from "../../factories/StatementFactory";
5
+ import { TypeFactory } from "../../factories/TypeFactory";
6
+
7
+ import { IProject } from "../../transformers/IProject";
8
+
9
+ import { AssertProgrammer } from "../AssertProgrammer";
10
+ import { FeatureProgrammer } from "../FeatureProgrammer";
11
+ import { FunctionImporter } from "../helpers/FunctionImporter";
12
+ import { HttpQueryProgrammer } from "./HttpQueryProgrammer";
13
+
14
+ export namespace HttpAssertQueryProgrammer {
15
+ export const decompose = (props: {
16
+ project: IProject;
17
+ importer: FunctionImporter;
18
+ type: ts.Type;
19
+ name: string | undefined;
20
+ init: ts.Expression | undefined;
21
+ allowOptional: boolean;
22
+ }): FeatureProgrammer.IDecomposed => {
23
+ const assert: FeatureProgrammer.IDecomposed = AssertProgrammer.decompose({
24
+ ...props,
25
+ project: {
26
+ ...props.project,
27
+ options: {
28
+ ...props.project.options,
29
+ functional: false,
30
+ numeric: false,
31
+ },
32
+ },
33
+ equals: false,
34
+ guard: false,
35
+ });
36
+ const decode: FeatureProgrammer.IDecomposed =
37
+ HttpQueryProgrammer.decompose(props);
38
+ return {
39
+ functions: {
40
+ ...assert.functions,
41
+ ...decode.functions,
42
+ },
43
+ statements: [
44
+ ...assert.statements,
45
+ ...decode.statements,
46
+ StatementFactory.constant("__assert", assert.arrow),
47
+ StatementFactory.constant("__decode", decode.arrow),
48
+ ],
49
+ arrow: ts.factory.createArrowFunction(
50
+ undefined,
51
+ undefined,
52
+ [
53
+ IdentifierFactory.parameter("input", TypeFactory.keyword("any")),
54
+ AssertProgrammer.Guardian.parameter(props.init),
55
+ ],
56
+ decode.arrow.type,
57
+ undefined,
58
+ ts.factory.createCallExpression(
59
+ ts.factory.createIdentifier("__assert"),
60
+ undefined,
61
+ [
62
+ ts.factory.createCallExpression(
63
+ ts.factory.createIdentifier("__decode"),
64
+ undefined,
65
+ [ts.factory.createIdentifier("input")],
66
+ ),
67
+ AssertProgrammer.Guardian.identifier(),
68
+ ],
69
+ ),
70
+ ),
71
+ };
72
+ };
73
+
74
+ export const write =
75
+ (project: IProject) =>
76
+ (modulo: ts.LeftHandSideExpression, allowOptional: boolean = false) =>
77
+ (type: ts.Type, name?: string, init?: ts.Expression): ts.CallExpression => {
78
+ const importer: FunctionImporter = new FunctionImporter(modulo.getText());
79
+ const result: FeatureProgrammer.IDecomposed = decompose({
80
+ project,
81
+ importer,
82
+ type,
83
+ name,
84
+ init,
85
+ allowOptional,
86
+ });
87
+ return FeatureProgrammer.writeDecomposed({
88
+ modulo,
89
+ importer,
90
+ result,
91
+ });
92
+ };
93
+ }