@nestia/core 11.2.1 → 12.0.0-dev.20260520.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 (171) hide show
  1. package/MIGRATION.md +169 -0
  2. package/lib/adaptors/WebSocketAdaptor.js +7 -3
  3. package/lib/adaptors/WebSocketAdaptor.js.map +1 -1
  4. package/lib/decorators/DynamicModule.js.map +1 -1
  5. package/lib/decorators/EncryptedBody.js.map +1 -1
  6. package/lib/decorators/EncryptedController.js.map +1 -1
  7. package/lib/decorators/EncryptedModule.js.map +1 -1
  8. package/lib/decorators/EncryptedRoute.js.map +1 -1
  9. package/lib/decorators/HumanRoute.js.map +1 -1
  10. package/lib/decorators/NoTransformConfigurationError.js +5 -2
  11. package/lib/decorators/NoTransformConfigurationError.js.map +1 -1
  12. package/lib/decorators/PlainBody.js.map +1 -1
  13. package/lib/decorators/SwaggerCustomizer.js.map +1 -1
  14. package/lib/decorators/SwaggerExample.js.map +1 -1
  15. package/lib/decorators/TypedBody.js.map +1 -1
  16. package/lib/decorators/TypedException.js.map +1 -1
  17. package/lib/decorators/TypedFormData.js.map +1 -1
  18. package/lib/decorators/TypedHeaders.js.map +1 -1
  19. package/lib/decorators/TypedParam.js +5 -2
  20. package/lib/decorators/TypedParam.js.map +1 -1
  21. package/lib/decorators/TypedQuery.js.map +1 -1
  22. package/lib/decorators/TypedRoute.js.map +1 -1
  23. package/lib/decorators/WebSocketRoute.js.map +1 -1
  24. package/lib/decorators/doNotThrowTransformError.js.map +1 -1
  25. package/lib/decorators/internal/get_path_and_querify.js +5 -2
  26. package/lib/decorators/internal/get_path_and_querify.js.map +1 -1
  27. package/lib/decorators/internal/get_path_and_stringify.js +5 -2
  28. package/lib/decorators/internal/get_path_and_stringify.js.map +1 -1
  29. package/lib/decorators/internal/get_text_body.js.map +1 -1
  30. package/lib/decorators/internal/headers_to_object.js.map +1 -1
  31. package/lib/decorators/internal/is_request_body_undefined.js.map +1 -1
  32. package/lib/decorators/internal/load_controller.js +48 -16
  33. package/lib/decorators/internal/load_controller.js.map +1 -1
  34. package/lib/decorators/internal/route_error.js +3 -3
  35. package/lib/decorators/internal/route_error.js.map +1 -1
  36. package/lib/decorators/internal/validate_request_body.js +5 -2
  37. package/lib/decorators/internal/validate_request_body.js.map +1 -1
  38. package/lib/decorators/internal/validate_request_form_data.js +5 -2
  39. package/lib/decorators/internal/validate_request_form_data.js.map +1 -1
  40. package/lib/decorators/internal/validate_request_headers.js +5 -2
  41. package/lib/decorators/internal/validate_request_headers.js.map +1 -1
  42. package/lib/decorators/internal/validate_request_query.js +30 -4
  43. package/lib/decorators/internal/validate_request_query.js.map +1 -1
  44. package/lib/index.js.map +1 -1
  45. package/lib/transform.d.ts +2 -5
  46. package/lib/transform.js +48 -28
  47. package/lib/transform.js.map +1 -1
  48. package/lib/utils/ArrayUtil.js.map +1 -1
  49. package/lib/utils/ExceptionManager.js.map +1 -1
  50. package/lib/utils/Singleton.js.map +1 -1
  51. package/lib/utils/SourceFinder.js.map +1 -1
  52. package/lib/utils/VersioningStrategy.js.map +1 -1
  53. package/native/cmd/ttsc-nestia/build.go +434 -0
  54. package/native/cmd/ttsc-nestia/cleanup.go +408 -0
  55. package/native/cmd/ttsc-nestia/core_querify.go +227 -0
  56. package/native/cmd/ttsc-nestia/core_transform.go +1713 -0
  57. package/native/cmd/ttsc-nestia/core_websocket.go +115 -0
  58. package/native/cmd/ttsc-nestia/main.go +72 -0
  59. package/native/cmd/ttsc-nestia/path_rewrite.go +285 -0
  60. package/native/cmd/ttsc-nestia/printer.go +244 -0
  61. package/native/cmd/ttsc-nestia/rewrite.go +662 -0
  62. package/native/cmd/ttsc-nestia/sdk_metadata_json.go +327 -0
  63. package/native/cmd/ttsc-nestia/sdk_transform.go +1541 -0
  64. package/native/cmd/ttsc-nestia/transform.go +387 -0
  65. package/native/cmd/ttsc-nestia/typia_fast.go +326 -0
  66. package/native/cmd/ttsc-nestia/typia_replacement.go +24 -0
  67. package/native/go.mod +32 -0
  68. package/native/go.sum +54 -0
  69. package/native/plugin/plan.go +102 -0
  70. package/native/transform.cjs +21 -0
  71. package/package.json +27 -22
  72. package/src/decorators/NoTransformConfigurationError.ts +5 -2
  73. package/src/decorators/internal/load_controller.ts +50 -19
  74. package/src/decorators/internal/validate_request_query.ts +21 -2
  75. package/src/transform.ts +82 -35
  76. package/lib/decorators/internal/NoTransformConfigureError.d.ts +0 -1
  77. package/lib/decorators/internal/NoTransformConfigureError.js +0 -7
  78. package/lib/decorators/internal/NoTransformConfigureError.js.map +0 -1
  79. package/lib/options/INestiaTransformOptions.d.ts +0 -13
  80. package/lib/options/INestiaTransformOptions.js +0 -3
  81. package/lib/options/INestiaTransformOptions.js.map +0 -1
  82. package/lib/options/INestiaTransformProject.d.ts +0 -5
  83. package/lib/options/INestiaTransformProject.js +0 -3
  84. package/lib/options/INestiaTransformProject.js.map +0 -1
  85. package/lib/programmers/PlainBodyProgrammer.d.ts +0 -9
  86. package/lib/programmers/PlainBodyProgrammer.js +0 -58
  87. package/lib/programmers/PlainBodyProgrammer.js.map +0 -1
  88. package/lib/programmers/TypedBodyProgrammer.d.ts +0 -9
  89. package/lib/programmers/TypedBodyProgrammer.js +0 -94
  90. package/lib/programmers/TypedBodyProgrammer.js.map +0 -1
  91. package/lib/programmers/TypedFormDataBodyProgrammer.d.ts +0 -9
  92. package/lib/programmers/TypedFormDataBodyProgrammer.js +0 -65
  93. package/lib/programmers/TypedFormDataBodyProgrammer.js.map +0 -1
  94. package/lib/programmers/TypedHeadersProgrammer.d.ts +0 -9
  95. package/lib/programmers/TypedHeadersProgrammer.js +0 -38
  96. package/lib/programmers/TypedHeadersProgrammer.js.map +0 -1
  97. package/lib/programmers/TypedParamProgrammer.d.ts +0 -10
  98. package/lib/programmers/TypedParamProgrammer.js +0 -32
  99. package/lib/programmers/TypedParamProgrammer.js.map +0 -1
  100. package/lib/programmers/TypedQueryBodyProgrammer.d.ts +0 -9
  101. package/lib/programmers/TypedQueryBodyProgrammer.js +0 -74
  102. package/lib/programmers/TypedQueryBodyProgrammer.js.map +0 -1
  103. package/lib/programmers/TypedQueryProgrammer.d.ts +0 -9
  104. package/lib/programmers/TypedQueryProgrammer.js +0 -75
  105. package/lib/programmers/TypedQueryProgrammer.js.map +0 -1
  106. package/lib/programmers/TypedQueryRouteProgrammer.d.ts +0 -9
  107. package/lib/programmers/TypedQueryRouteProgrammer.js +0 -75
  108. package/lib/programmers/TypedQueryRouteProgrammer.js.map +0 -1
  109. package/lib/programmers/TypedRouteProgrammer.d.ts +0 -9
  110. package/lib/programmers/TypedRouteProgrammer.js +0 -79
  111. package/lib/programmers/TypedRouteProgrammer.js.map +0 -1
  112. package/lib/programmers/http/HttpAssertQuerifyProgrammer.d.ts +0 -9
  113. package/lib/programmers/http/HttpAssertQuerifyProgrammer.js +0 -39
  114. package/lib/programmers/http/HttpAssertQuerifyProgrammer.js.map +0 -1
  115. package/lib/programmers/http/HttpIsQuerifyProgrammer.d.ts +0 -9
  116. package/lib/programmers/http/HttpIsQuerifyProgrammer.js +0 -36
  117. package/lib/programmers/http/HttpIsQuerifyProgrammer.js.map +0 -1
  118. package/lib/programmers/http/HttpQuerifyProgrammer.d.ts +0 -9
  119. package/lib/programmers/http/HttpQuerifyProgrammer.js +0 -50
  120. package/lib/programmers/http/HttpQuerifyProgrammer.js.map +0 -1
  121. package/lib/programmers/http/HttpValidateQuerifyProgrammer.d.ts +0 -9
  122. package/lib/programmers/http/HttpValidateQuerifyProgrammer.js +0 -40
  123. package/lib/programmers/http/HttpValidateQuerifyProgrammer.js.map +0 -1
  124. package/lib/programmers/internal/CoreMetadataUtil.d.ts +0 -5
  125. package/lib/programmers/internal/CoreMetadataUtil.js +0 -19
  126. package/lib/programmers/internal/CoreMetadataUtil.js.map +0 -1
  127. package/lib/transformers/FileTransformer.d.ts +0 -5
  128. package/lib/transformers/FileTransformer.js +0 -80
  129. package/lib/transformers/FileTransformer.js.map +0 -1
  130. package/lib/transformers/MethodTransformer.d.ts +0 -8
  131. package/lib/transformers/MethodTransformer.js +0 -58
  132. package/lib/transformers/MethodTransformer.js.map +0 -1
  133. package/lib/transformers/NodeTransformer.d.ts +0 -8
  134. package/lib/transformers/NodeTransformer.js +0 -24
  135. package/lib/transformers/NodeTransformer.js.map +0 -1
  136. package/lib/transformers/ParameterDecoratorTransformer.d.ts +0 -9
  137. package/lib/transformers/ParameterDecoratorTransformer.js +0 -104
  138. package/lib/transformers/ParameterDecoratorTransformer.js.map +0 -1
  139. package/lib/transformers/ParameterTransformer.d.ts +0 -8
  140. package/lib/transformers/ParameterTransformer.js +0 -37
  141. package/lib/transformers/ParameterTransformer.js.map +0 -1
  142. package/lib/transformers/TypedRouteTransformer.d.ts +0 -9
  143. package/lib/transformers/TypedRouteTransformer.js +0 -68
  144. package/lib/transformers/TypedRouteTransformer.js.map +0 -1
  145. package/lib/transformers/WebSocketRouteTransformer.d.ts +0 -9
  146. package/lib/transformers/WebSocketRouteTransformer.js +0 -72
  147. package/lib/transformers/WebSocketRouteTransformer.js.map +0 -1
  148. package/src/decorators/internal/NoTransformConfigureError.ts +0 -2
  149. package/src/options/INestiaTransformOptions.ts +0 -34
  150. package/src/options/INestiaTransformProject.ts +0 -10
  151. package/src/programmers/PlainBodyProgrammer.ts +0 -72
  152. package/src/programmers/TypedBodyProgrammer.ts +0 -148
  153. package/src/programmers/TypedFormDataBodyProgrammer.ts +0 -118
  154. package/src/programmers/TypedHeadersProgrammer.ts +0 -65
  155. package/src/programmers/TypedParamProgrammer.ts +0 -33
  156. package/src/programmers/TypedQueryBodyProgrammer.ts +0 -113
  157. package/src/programmers/TypedQueryProgrammer.ts +0 -115
  158. package/src/programmers/TypedQueryRouteProgrammer.ts +0 -107
  159. package/src/programmers/TypedRouteProgrammer.ts +0 -103
  160. package/src/programmers/http/HttpAssertQuerifyProgrammer.ts +0 -74
  161. package/src/programmers/http/HttpIsQuerifyProgrammer.ts +0 -77
  162. package/src/programmers/http/HttpQuerifyProgrammer.ts +0 -110
  163. package/src/programmers/http/HttpValidateQuerifyProgrammer.ts +0 -78
  164. package/src/programmers/internal/CoreMetadataUtil.ts +0 -21
  165. package/src/transformers/FileTransformer.ts +0 -109
  166. package/src/transformers/MethodTransformer.ts +0 -103
  167. package/src/transformers/NodeTransformer.ts +0 -23
  168. package/src/transformers/ParameterDecoratorTransformer.ts +0 -143
  169. package/src/transformers/ParameterTransformer.ts +0 -57
  170. package/src/transformers/TypedRouteTransformer.ts +0 -85
  171. package/src/transformers/WebSocketRouteTransformer.ts +0 -120
@@ -1,75 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TypedQueryRouteProgrammer = void 0;
7
- const core_1 = require("@typia/core");
8
- const typescript_1 = __importDefault(require("typescript"));
9
- const HttpAssertQuerifyProgrammer_1 = require("./http/HttpAssertQuerifyProgrammer");
10
- const HttpIsQuerifyProgrammer_1 = require("./http/HttpIsQuerifyProgrammer");
11
- const HttpQuerifyProgrammer_1 = require("./http/HttpQuerifyProgrammer");
12
- const HttpValidateQuerifyProgrammer_1 = require("./http/HttpValidateQuerifyProgrammer");
13
- var TypedQueryRouteProgrammer;
14
- (function (TypedQueryRouteProgrammer) {
15
- TypedQueryRouteProgrammer.generate = (props) => {
16
- // VALIDATE TYPE
17
- if (props.context.options.llm) {
18
- const llm = props.context.options.llm;
19
- const result = core_1.MetadataFactory.analyze({
20
- checker: props.context.checker,
21
- transformer: props.context.transformer,
22
- options: {
23
- escape: false,
24
- constant: true,
25
- absorb: true,
26
- validate: (next) => {
27
- var _a;
28
- const errors = core_1.HttpQueryProgrammer.validate({
29
- metadata: next.metadata,
30
- explore: next.explore,
31
- allowOptional: true,
32
- });
33
- if (next.metadata.size() !== 0)
34
- errors.push(...core_1.LlmParametersProgrammer.validate({
35
- config: {
36
- strict: llm === true ? false : ((_a = llm.strict) !== null && _a !== void 0 ? _a : false),
37
- },
38
- metadata: next.metadata,
39
- explore: next.explore,
40
- }));
41
- return errors;
42
- },
43
- },
44
- components: new core_1.MetadataCollection(),
45
- type: props.type,
46
- });
47
- if (result.success === false)
48
- throw core_1.TransformerError.from({
49
- code: props.modulo.getText(),
50
- errors: result.errors,
51
- });
52
- }
53
- // GENERATE STRINGIFY PLAN
54
- const parameter = (key, programmer) => typescript_1.default.factory.createObjectLiteralExpression([
55
- typescript_1.default.factory.createPropertyAssignment(typescript_1.default.factory.createIdentifier("type"), typescript_1.default.factory.createStringLiteral(key)),
56
- typescript_1.default.factory.createPropertyAssignment(typescript_1.default.factory.createIdentifier(key), programmer({
57
- context: Object.assign(Object.assign({}, props.context), { options: {} }),
58
- modulo: props.modulo,
59
- type: props.type,
60
- })),
61
- ]);
62
- // RETURNS
63
- if (props.context.options.stringify === "is")
64
- return parameter("is", HttpIsQuerifyProgrammer_1.HttpIsQuerifyProgrammer.write);
65
- else if (props.context.options.stringify === "validate")
66
- return parameter("validate", HttpValidateQuerifyProgrammer_1.HttpValidateQuerifyProgrammer.write);
67
- else if (props.context.options.stringify === "stringify")
68
- return parameter("stringify", HttpQuerifyProgrammer_1.HttpQuerifyProgrammer.write);
69
- else if (props.context.options.stringify === null)
70
- return typescript_1.default.factory.createNull();
71
- // ASSERT IS DEFAULT
72
- return parameter("assert", HttpAssertQuerifyProgrammer_1.HttpAssertQuerifyProgrammer.write);
73
- };
74
- })(TypedQueryRouteProgrammer || (exports.TypedQueryRouteProgrammer = TypedQueryRouteProgrammer = {}));
75
- //# sourceMappingURL=TypedQueryRouteProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TypedQueryRouteProgrammer.js","sourceRoot":"","sources":["../../src/programmers/TypedQueryRouteProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import ts from "typescript";
2
- import { INestiaTransformContext } from "../options/INestiaTransformProject";
3
- export declare namespace TypedRouteProgrammer {
4
- const generate: (props: {
5
- context: INestiaTransformContext;
6
- modulo: ts.LeftHandSideExpression;
7
- type: ts.Type;
8
- }) => ts.Expression;
9
- }
@@ -1,79 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.TypedRouteProgrammer = void 0;
7
- const core_1 = require("@typia/core");
8
- const typescript_1 = __importDefault(require("typescript"));
9
- var TypedRouteProgrammer;
10
- (function (TypedRouteProgrammer) {
11
- TypedRouteProgrammer.generate = (props) => {
12
- // VALIDATE TYPE
13
- if (props.context.options.llm) {
14
- const llm = props.context.options.llm;
15
- core_1.JsonMetadataFactory.analyze({
16
- method: "@nestia.core.TypedRoute",
17
- checker: props.context.checker,
18
- transformer: props.context.transformer,
19
- type: props.type,
20
- validate: (next) => {
21
- var _a;
22
- if (next.metadata.size() === 0)
23
- return [];
24
- return core_1.LlmParametersProgrammer.validate({
25
- config: {
26
- strict: llm === true ? false : ((_a = llm.strict) !== null && _a !== void 0 ? _a : false),
27
- },
28
- metadata: next.metadata,
29
- explore: next.explore,
30
- });
31
- },
32
- });
33
- }
34
- // GENERATE STRINGIFY PLAN
35
- const parameter = (next) => typescript_1.default.factory.createObjectLiteralExpression([
36
- typescript_1.default.factory.createPropertyAssignment(typescript_1.default.factory.createIdentifier("type"), typescript_1.default.factory.createStringLiteral(next.type)),
37
- typescript_1.default.factory.createPropertyAssignment(typescript_1.default.factory.createIdentifier(next.key), next.programmer({
38
- context: Object.assign(Object.assign({}, props.context), { options: {} }),
39
- modulo: props.modulo,
40
- type: props.type,
41
- name: undefined,
42
- })),
43
- ]);
44
- // RETURNS
45
- if (props.context.options.stringify === "is")
46
- return parameter({
47
- type: "is",
48
- key: "is",
49
- programmer: core_1.JsonIsStringifyProgrammer.write,
50
- });
51
- else if (props.context.options.stringify === "validate")
52
- return parameter({
53
- type: "validate",
54
- key: "validate",
55
- programmer: core_1.JsonValidateStringifyProgrammer.write,
56
- });
57
- else if (props.context.options.stringify === "stringify")
58
- return parameter({
59
- type: "stringify",
60
- key: "stringify",
61
- programmer: core_1.JsonStringifyProgrammer.write,
62
- });
63
- else if (props.context.options.stringify === "validate.log")
64
- return parameter({
65
- type: "validate.log",
66
- key: "validate",
67
- programmer: core_1.JsonValidateStringifyProgrammer.write,
68
- });
69
- else if (props.context.options.stringify === null)
70
- return typescript_1.default.factory.createNull();
71
- // ASSERT IS DEFAULT
72
- return parameter({
73
- type: "assert",
74
- key: "assert",
75
- programmer: core_1.JsonAssertStringifyProgrammer.write,
76
- });
77
- };
78
- })(TypedRouteProgrammer || (exports.TypedRouteProgrammer = TypedRouteProgrammer = {}));
79
- //# sourceMappingURL=TypedRouteProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TypedRouteProgrammer.js","sourceRoot":"","sources":["../../src/programmers/TypedRouteProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { ITypiaContext } from "@typia/core";
2
- import ts from "typescript";
3
- export declare namespace HttpAssertQuerifyProgrammer {
4
- const write: (props: {
5
- context: ITypiaContext;
6
- modulo: ts.LeftHandSideExpression;
7
- type: ts.Type;
8
- }) => ts.ArrowFunction;
9
- }
@@ -1,39 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.HttpAssertQuerifyProgrammer = void 0;
7
- const core_1 = require("@typia/core");
8
- const typescript_1 = __importDefault(require("typescript"));
9
- const HttpQuerifyProgrammer_1 = require("./HttpQuerifyProgrammer");
10
- var HttpAssertQuerifyProgrammer;
11
- (function (HttpAssertQuerifyProgrammer) {
12
- HttpAssertQuerifyProgrammer.write = (props) => typescript_1.default.factory.createArrowFunction(undefined, undefined, [core_1.IdentifierFactory.parameter("input")], undefined, undefined, typescript_1.default.factory.createBlock([
13
- core_1.StatementFactory.constant({
14
- name: "assert",
15
- value: core_1.AssertProgrammer.write({
16
- context: Object.assign(Object.assign({}, props.context), { options: Object.assign(Object.assign({}, props.context.options), { functional: false, numeric: false }) }),
17
- modulo: props.modulo,
18
- config: {
19
- equals: false,
20
- guard: false,
21
- },
22
- type: props.type,
23
- name: undefined,
24
- }),
25
- }),
26
- core_1.StatementFactory.constant({
27
- name: "stringify",
28
- value: HttpQuerifyProgrammer_1.HttpQuerifyProgrammer.write({
29
- context: Object.assign(Object.assign({}, props.context), { options: Object.assign(Object.assign({}, props.context.options), { functional: false, numeric: false }) }),
30
- modulo: props.modulo,
31
- type: props.type,
32
- }),
33
- }),
34
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("stringify"), undefined, [
35
- typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("assert"), undefined, [typescript_1.default.factory.createIdentifier("input")]),
36
- ])),
37
- ]));
38
- })(HttpAssertQuerifyProgrammer || (exports.HttpAssertQuerifyProgrammer = HttpAssertQuerifyProgrammer = {}));
39
- //# sourceMappingURL=HttpAssertQuerifyProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HttpAssertQuerifyProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/http/HttpAssertQuerifyProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,sCAKqB;AACrB,4DAA4B;AAE5B,mEAAgE;AAEhE,IAAiB,2BAA2B,CA+D3C;AA/DD,WAAiB,2BAA2B;IAC7B,iCAAK,GAAG,CAAC,KAIrB,EAAoB,EAAE,CACrB,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,CAAC,wBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACtC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;QACrB,uBAAgB,CAAC,QAAQ,CAAC;YACxB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,uBAAgB,CAAC,KAAK,CAAC;gBAC5B,OAAO,kCACF,KAAK,CAAC,OAAO,KAChB,OAAO,kCACF,KAAK,CAAC,OAAO,CAAC,OAAO,KACxB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,MAEjB;gBACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,MAAM,EAAE;oBACN,MAAM,EAAE,KAAK;oBACb,KAAK,EAAE,KAAK;iBACb;gBACD,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,SAAS;aAChB,CAAC;SACH,CAAC;QACF,uBAAgB,CAAC,QAAQ,CAAC;YACxB,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,6CAAqB,CAAC,KAAK,CAAC;gBACjC,OAAO,kCACF,KAAK,CAAC,OAAO,KAChB,OAAO,kCACF,KAAK,CAAC,OAAO,CAAC,OAAO,KACxB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,MAEjB;gBACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;SACH,CAAC;QACF,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,SAAS,EACT;YACE,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;SACF,CACF,CACF;KACF,CAAC,CACH,CAAC;AACN,CAAC,EA/DgB,2BAA2B,2CAA3B,2BAA2B,QA+D3C"}
@@ -1,9 +0,0 @@
1
- import { ITypiaContext } from "@typia/core";
2
- import ts from "typescript";
3
- export declare namespace HttpIsQuerifyProgrammer {
4
- const write: (props: {
5
- context: ITypiaContext;
6
- modulo: ts.LeftHandSideExpression;
7
- type: ts.Type;
8
- }) => ts.ArrowFunction;
9
- }
@@ -1,36 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.HttpIsQuerifyProgrammer = void 0;
7
- const core_1 = require("@typia/core");
8
- const typescript_1 = __importDefault(require("typescript"));
9
- const HttpQuerifyProgrammer_1 = require("./HttpQuerifyProgrammer");
10
- var HttpIsQuerifyProgrammer;
11
- (function (HttpIsQuerifyProgrammer) {
12
- HttpIsQuerifyProgrammer.write = (props) => typescript_1.default.factory.createArrowFunction(undefined, undefined, [core_1.IdentifierFactory.parameter("input")], undefined, undefined, typescript_1.default.factory.createBlock([
13
- core_1.StatementFactory.constant({
14
- name: "is",
15
- value: core_1.IsProgrammer.write({
16
- config: {
17
- equals: false,
18
- },
19
- context: Object.assign(Object.assign({}, props.context), { options: Object.assign(Object.assign({}, props.context.options), { functional: false, numeric: false }) }),
20
- modulo: props.modulo,
21
- type: props.type,
22
- name: undefined,
23
- }),
24
- }),
25
- core_1.StatementFactory.constant({
26
- name: "stringify",
27
- value: HttpQuerifyProgrammer_1.HttpQuerifyProgrammer.write({
28
- context: Object.assign(Object.assign({}, props.context), { options: Object.assign(Object.assign({}, props.context.options), { functional: false, numeric: false }) }),
29
- modulo: props.modulo,
30
- type: props.type,
31
- }),
32
- }),
33
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("is"), undefined, [typescript_1.default.factory.createIdentifier("input")]), undefined, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("stringify"), undefined, [typescript_1.default.factory.createIdentifier("input")]), undefined, typescript_1.default.factory.createNull())),
34
- ]));
35
- })(HttpIsQuerifyProgrammer || (exports.HttpIsQuerifyProgrammer = HttpIsQuerifyProgrammer = {}));
36
- //# sourceMappingURL=HttpIsQuerifyProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HttpIsQuerifyProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/http/HttpIsQuerifyProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,sCAKqB;AACrB,4DAA4B;AAE5B,mEAAgE;AAEhE,IAAiB,uBAAuB,CAkEvC;AAlED,WAAiB,uBAAuB;IACzB,6BAAK,GAAG,CAAC,KAIrB,EAAoB,EAAE,CACrB,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,CAAC,wBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACtC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;QACrB,uBAAgB,CAAC,QAAQ,CAAC;YACxB,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,mBAAY,CAAC,KAAK,CAAC;gBACxB,MAAM,EAAE;oBACN,MAAM,EAAE,KAAK;iBACd;gBACD,OAAO,kCACF,KAAK,CAAC,OAAO,KAChB,OAAO,kCACF,KAAK,CAAC,OAAO,CAAC,OAAO,KACxB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,MAEjB;gBACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,SAAS;aAChB,CAAC;SACH,CAAC;QACF,uBAAgB,CAAC,QAAQ,CAAC;YACxB,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,6CAAqB,CAAC,KAAK,CAAC;gBACjC,OAAO,kCACF,KAAK,CAAC,OAAO,KAChB,OAAO,kCACF,KAAK,CAAC,OAAO,CAAC,OAAO,KACxB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,MAEjB;gBACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;SACH,CAAC;QACF,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,2BAA2B,CACpC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EACjC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC,EACD,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CACxB,CACF;KACF,CAAC,CACH,CAAC;AACN,CAAC,EAlEgB,uBAAuB,uCAAvB,uBAAuB,QAkEvC"}
@@ -1,9 +0,0 @@
1
- import { ITypiaContext } from "@typia/core";
2
- import ts from "typescript";
3
- export declare namespace HttpQuerifyProgrammer {
4
- const write: (props: {
5
- context: ITypiaContext;
6
- modulo: ts.LeftHandSideExpression;
7
- type: ts.Type;
8
- }) => ts.ArrowFunction;
9
- }
@@ -1,50 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.HttpQuerifyProgrammer = void 0;
7
- const core_1 = require("@typia/core");
8
- const typescript_1 = __importDefault(require("typescript"));
9
- var HttpQuerifyProgrammer;
10
- (function (HttpQuerifyProgrammer) {
11
- HttpQuerifyProgrammer.write = (props) => {
12
- // GET OBJECT TYPE
13
- const functor = new core_1.FunctionProgrammer(props.modulo.getText());
14
- const storage = new core_1.MetadataCollection();
15
- const result = core_1.MetadataFactory.analyze({
16
- checker: props.context.checker,
17
- transformer: props.context.transformer,
18
- options: {
19
- escape: false,
20
- constant: true,
21
- absorb: true,
22
- validate: core_1.HttpQueryProgrammer.validate,
23
- },
24
- type: props.type,
25
- components: storage,
26
- });
27
- if (result.success === false)
28
- throw core_1.TransformerError.from({
29
- code: functor.method,
30
- errors: result.errors,
31
- });
32
- const object = result.data.objects[0];
33
- return typescript_1.default.factory.createArrowFunction(undefined, undefined, [core_1.IdentifierFactory.parameter("input")], undefined, undefined, typescript_1.default.factory.createBlock([
34
- ...functor.declare(),
35
- core_1.StatementFactory.constant({
36
- name: "output",
37
- value: typescript_1.default.factory.createNewExpression(typescript_1.default.factory.createIdentifier("URLSearchParams"), undefined, []),
38
- }),
39
- ...object.type.properties.map((p) => typescript_1.default.factory.createExpressionStatement(decode(p.key.constants[0].values[0].value)(p.value))),
40
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
41
- ], true));
42
- };
43
- const decode = (key) => (value) => !!value.arrays.length
44
- ? typescript_1.default.factory.createCallExpression(core_1.IdentifierFactory.access(core_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier("input"), key), "forEach"), undefined, [
45
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [core_1.IdentifierFactory.parameter("elem")], undefined, undefined, append(key)(typescript_1.default.factory.createIdentifier("elem"))),
46
- ])
47
- : append(key)(core_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier("input"), key));
48
- const append = (key) => (elem) => typescript_1.default.factory.createCallExpression(core_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier("output"), "append"), undefined, [typescript_1.default.factory.createStringLiteral(key), elem]);
49
- })(HttpQuerifyProgrammer || (exports.HttpQuerifyProgrammer = HttpQuerifyProgrammer = {}));
50
- //# sourceMappingURL=HttpQuerifyProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HttpQuerifyProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/http/HttpQuerifyProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import { ITypiaContext } from "@typia/core";
2
- import ts from "typescript";
3
- export declare namespace HttpValidateQuerifyProgrammer {
4
- const write: (props: {
5
- context: ITypiaContext;
6
- modulo: ts.LeftHandSideExpression;
7
- type: ts.Type;
8
- }) => ts.ArrowFunction;
9
- }
@@ -1,40 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.HttpValidateQuerifyProgrammer = void 0;
7
- const core_1 = require("@typia/core");
8
- const typescript_1 = __importDefault(require("typescript"));
9
- const HttpQuerifyProgrammer_1 = require("./HttpQuerifyProgrammer");
10
- var HttpValidateQuerifyProgrammer;
11
- (function (HttpValidateQuerifyProgrammer) {
12
- HttpValidateQuerifyProgrammer.write = (props) => typescript_1.default.factory.createArrowFunction(undefined, undefined, [core_1.IdentifierFactory.parameter("input")], undefined, undefined, typescript_1.default.factory.createBlock([
13
- core_1.StatementFactory.constant({
14
- name: "validate",
15
- value: core_1.ValidateProgrammer.write({
16
- config: {
17
- equals: false,
18
- },
19
- context: Object.assign(Object.assign({}, props.context), { options: Object.assign(Object.assign({}, props.context.options), { functional: false, numeric: true }) }),
20
- modulo: props.modulo,
21
- type: props.type,
22
- name: undefined,
23
- }),
24
- }),
25
- core_1.StatementFactory.constant({
26
- name: "query",
27
- value: HttpQuerifyProgrammer_1.HttpQuerifyProgrammer.write({
28
- context: Object.assign(Object.assign({}, props.context), { options: Object.assign(Object.assign({}, props.context.options), { functional: false, numeric: false }) }),
29
- modulo: props.modulo,
30
- type: props.type,
31
- }),
32
- }),
33
- core_1.StatementFactory.constant({
34
- name: "output",
35
- value: typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("query"), undefined, [typescript_1.default.factory.createIdentifier("input")]),
36
- }),
37
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createAsExpression(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("validate"), undefined, [typescript_1.default.factory.createIdentifier("output")]), typescript_1.default.factory.createTypeReferenceNode("any"))),
38
- ]));
39
- })(HttpValidateQuerifyProgrammer || (exports.HttpValidateQuerifyProgrammer = HttpValidateQuerifyProgrammer = {}));
40
- //# sourceMappingURL=HttpValidateQuerifyProgrammer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"HttpValidateQuerifyProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/http/HttpValidateQuerifyProgrammer.ts"],"names":[],"mappings":";;;;;;AAAA,sCAKqB;AACrB,4DAA4B;AAE5B,mEAAgE;AAEhE,IAAiB,6BAA6B,CAmE7C;AAnED,WAAiB,6BAA6B;IAC/B,mCAAK,GAAG,CAAC,KAIrB,EAAoB,EAAE,CACrB,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC5B,SAAS,EACT,SAAS,EACT,CAAC,wBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACtC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;QACrB,uBAAgB,CAAC,QAAQ,CAAC;YACxB,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,yBAAkB,CAAC,KAAK,CAAC;gBAC9B,MAAM,EAAE;oBACN,MAAM,EAAE,KAAK;iBACd;gBACD,OAAO,kCACF,KAAK,CAAC,OAAO,KAChB,OAAO,kCACF,KAAK,CAAC,OAAO,CAAC,OAAO,KACxB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,MAEhB;gBACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,SAAS;aAChB,CAAC;SACH,CAAC;QACF,uBAAgB,CAAC,QAAQ,CAAC;YACxB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,6CAAqB,CAAC,KAAK,CAAC;gBACjC,OAAO,kCACF,KAAK,CAAC,OAAO,KAChB,OAAO,kCACF,KAAK,CAAC,OAAO,CAAC,OAAO,KACxB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,MAEjB;gBACD,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC;SACH,CAAC;QACF,uBAAgB,CAAC,QAAQ,CAAC;YACxB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CACpC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACvC;SACF,CAAC;QACF,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC9B,oBAAE,CAAC,OAAO,CAAC,kBAAkB,CAC3B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CACxC,EACD,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAC1C,CACF;KACF,CAAC,CACH,CAAC;AACN,CAAC,EAnEgB,6BAA6B,6CAA7B,6BAA6B,QAmE7C"}
@@ -1,5 +0,0 @@
1
- import { MetadataSchema } from "@typia/core";
2
- export declare namespace CoreMetadataUtil {
3
- const atomics: (meta: MetadataSchema) => Set<"boolean" | "bigint" | "number" | "string">;
4
- const isUnion: (meta: MetadataSchema) => boolean;
5
- }
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoreMetadataUtil = void 0;
4
- var CoreMetadataUtil;
5
- (function (CoreMetadataUtil) {
6
- CoreMetadataUtil.atomics = (meta) => new Set([
7
- ...meta.atomics.map((a) => a.type),
8
- ...meta.constants.map((c) => c.type),
9
- ...(meta.templates.length ? ["string"] : []),
10
- ]);
11
- CoreMetadataUtil.isUnion = (meta) => CoreMetadataUtil.atomics(meta).size +
12
- meta.arrays.length +
13
- meta.tuples.length +
14
- meta.natives.length +
15
- meta.maps.length +
16
- meta.objects.length >
17
- 1;
18
- })(CoreMetadataUtil || (exports.CoreMetadataUtil = CoreMetadataUtil = {}));
19
- //# sourceMappingURL=CoreMetadataUtil.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CoreMetadataUtil.js","sourceRoot":"","sources":["../../../src/programmers/internal/CoreMetadataUtil.ts"],"names":[],"mappings":";;;AAEA,IAAiB,gBAAgB,CAkBhC;AAlBD,WAAiB,gBAAgB;IAClB,wBAAO,GAAG,CACrB,IAAoB,EAC6B,EAAE,CACnD,IAAI,GAAG,CAAC;QACN,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAClC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACpC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAW,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC,CAAC;IAEQ,wBAAO,GAAG,CAAC,IAAoB,EAAW,EAAE,CACvD,iBAAA,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI;QAChB,IAAI,CAAC,MAAM,CAAC,MAAM;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM;QAClB,IAAI,CAAC,OAAO,CAAC,MAAM;QACnB,IAAI,CAAC,IAAI,CAAC,MAAM;QAChB,IAAI,CAAC,OAAO,CAAC,MAAM;QACrB,CAAC,CAAC;AACN,CAAC,EAlBgB,gBAAgB,gCAAhB,gBAAgB,QAkBhC"}
@@ -1,5 +0,0 @@
1
- import ts from "typescript";
2
- import { INestiaTransformContext } from "../options/INestiaTransformProject";
3
- export declare namespace FileTransformer {
4
- const transform: (context: Omit<INestiaTransformContext, "importer" | "transformer">) => (transformer: ts.TransformationContext) => (file: ts.SourceFile) => ts.SourceFile;
5
- }
@@ -1,80 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.FileTransformer = void 0;
7
- const core_1 = require("@typia/core");
8
- const typescript_1 = __importDefault(require("typescript"));
9
- const NodeTransformer_1 = require("./NodeTransformer");
10
- var FileTransformer;
11
- (function (FileTransformer) {
12
- FileTransformer.transform = (context) => (transformer) => (file) => {
13
- if (file.isDeclarationFile)
14
- return file;
15
- const importer = new core_1.ImportProgrammer({
16
- internalPrefix: "nestia_core_transform",
17
- });
18
- file = typescript_1.default.visitEachChild(file, (node) => iterate_node({
19
- context: Object.assign(Object.assign({}, context), { transformer,
20
- importer }),
21
- file,
22
- node,
23
- }), transformer);
24
- const index = find_import_injection_index(file);
25
- return typescript_1.default.factory.updateSourceFile(file, [
26
- ...file.statements.slice(0, index),
27
- ...importer.toStatements(),
28
- ...file.statements.slice(index),
29
- ], false, file.referencedFiles, file.typeReferenceDirectives, file.hasNoDefaultLib, file.libReferenceDirectives);
30
- };
31
- const iterate_node = (props) => {
32
- var _a;
33
- return typescript_1.default.visitEachChild((_a = try_transform_node(props)) !== null && _a !== void 0 ? _a : props.node, (child) => iterate_node({
34
- context: props.context,
35
- file: props.file,
36
- node: child,
37
- }), props.context.transformer);
38
- };
39
- const try_transform_node = (props) => {
40
- var _a;
41
- var _b;
42
- try {
43
- return NodeTransformer_1.NodeTransformer.transform(props);
44
- }
45
- catch (exp) {
46
- // ONLY ACCEPT TRANSFORMER-ERROR
47
- if (!isTransformerError(exp))
48
- throw exp;
49
- // AVOID SPECIAL BUG OF TYPESCRIPT COMPILER API
50
- (_a = (_b = props.node).parent) !== null && _a !== void 0 ? _a : (_b.parent = props.file);
51
- // REPORT DIAGNOSTIC
52
- const diagnostic = typescript_1.default.createDiagnosticForNode(props.node, {
53
- key: exp.code,
54
- category: typescript_1.default.DiagnosticCategory.Error,
55
- message: exp.message,
56
- code: `(${exp.code})`,
57
- });
58
- props.context.extras.addDiagnostic(diagnostic);
59
- return null;
60
- }
61
- };
62
- const find_import_injection_index = (file) => {
63
- let i = 0;
64
- for (; i < file.statements.length; ++i) {
65
- const stmt = file.statements[i];
66
- if (typescript_1.default.isExpressionStatement(stmt) &&
67
- typescript_1.default.isStringLiteralLike(stmt.expression) &&
68
- stmt.expression.text.startsWith("use "))
69
- continue;
70
- break;
71
- }
72
- return i;
73
- };
74
- })(FileTransformer || (exports.FileTransformer = FileTransformer = {}));
75
- const isTransformerError = (error) => typeof error === "object" &&
76
- error !== null &&
77
- error.constructor.name === "TransformerError" &&
78
- typeof error.code === "string" &&
79
- typeof error.message === "string";
80
- //# sourceMappingURL=FileTransformer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileTransformer.js","sourceRoot":"","sources":["../../src/transformers/FileTransformer.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import ts from "typescript";
2
- import { INestiaTransformContext } from "../options/INestiaTransformProject";
3
- export declare namespace MethodTransformer {
4
- const transform: (props: {
5
- context: INestiaTransformContext;
6
- method: ts.MethodDeclaration;
7
- }) => ts.MethodDeclaration;
8
- }
@@ -1,58 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.MethodTransformer = void 0;
7
- const typescript_1 = __importDefault(require("typescript"));
8
- const TypedRouteTransformer_1 = require("./TypedRouteTransformer");
9
- const WebSocketRouteTransformer_1 = require("./WebSocketRouteTransformer");
10
- var MethodTransformer;
11
- (function (MethodTransformer) {
12
- MethodTransformer.transform = (props) => {
13
- const decorators = typescript_1.default.getDecorators
14
- ? typescript_1.default.getDecorators(props.method)
15
- : props.method.decorators;
16
- if (!(decorators === null || decorators === void 0 ? void 0 : decorators.length))
17
- return props.method;
18
- const signature = props.context.checker.getSignatureFromDeclaration(props.method);
19
- const original = signature && props.context.checker.getReturnTypeOfSignature(signature);
20
- const type = original && get_escaped_type(props.context.checker)(original);
21
- if (type === undefined)
22
- return props.method;
23
- const operator = (decorator) => {
24
- decorator = TypedRouteTransformer_1.TypedRouteTransformer.transform({
25
- context: props.context,
26
- decorator,
27
- type,
28
- });
29
- decorator = WebSocketRouteTransformer_1.WebSocketRouteTransformer.validate({
30
- context: props.context,
31
- method: props.method,
32
- decorator,
33
- });
34
- return decorator;
35
- };
36
- if (typescript_1.default.getDecorators !== undefined)
37
- return typescript_1.default.factory.updateMethodDeclaration(props.method, (props.method.modifiers || []).map((mod) => typescript_1.default.isDecorator(mod) ? operator(mod) : mod), props.method.asteriskToken, props.method.name, props.method.questionToken, props.method.typeParameters, props.method.parameters, props.method.type, props.method.body);
38
- // eslint-disable-next-line
39
- return typescript_1.default.factory.updateMethodDeclaration(props.method, decorators.map(operator), props.method.modifiers, props.method.asteriskToken, props.method.name, props.method.questionToken, props.method.typeParameters, props.method.parameters, props.method.type, props.method.body);
40
- };
41
- })(MethodTransformer || (exports.MethodTransformer = MethodTransformer = {}));
42
- const get_escaped_type = (checker) => (type) => {
43
- const symbol = type.getSymbol() || type.aliasSymbol;
44
- return symbol && get_name(symbol) === "Promise"
45
- ? escape_promise(checker)(type)
46
- : type;
47
- };
48
- const escape_promise = (checker) => (type) => {
49
- const generic = checker.getTypeArguments(type);
50
- if (generic.length !== 1)
51
- throw new Error("Error on ImportAnalyzer.analyze(): invalid promise type.");
52
- return generic[0];
53
- };
54
- const get_name = (symbol) => explore_name(symbol.getDeclarations()[0].parent)(symbol.escapedName.toString());
55
- const explore_name = (decl) => (name) => typescript_1.default.isModuleBlock(decl)
56
- ? explore_name(decl.parent.parent)(`${decl.parent.name.getFullText().trim()}.${name}`)
57
- : name;
58
- //# sourceMappingURL=MethodTransformer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MethodTransformer.js","sourceRoot":"","sources":["../../src/transformers/MethodTransformer.ts"],"names":[],"mappings":"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"}