@nestia/core 3.0.5-dev.20240418 → 3.1.0-dev.20240426
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.
- package/lib/adaptors/WebSocketAdaptor.d.ts +21 -0
- package/lib/adaptors/WebSocketAdaptor.js +277 -0
- package/lib/adaptors/WebSocketAdaptor.js.map +1 -0
- package/lib/decorators/DynamicModule.js +12 -59
- package/lib/decorators/DynamicModule.js.map +1 -1
- package/lib/decorators/EncryptedBody.js +36 -73
- package/lib/decorators/EncryptedBody.js.map +1 -1
- package/lib/decorators/EncryptedController.js +2 -2
- package/lib/decorators/EncryptedController.js.map +1 -1
- package/lib/decorators/EncryptedModule.js +24 -107
- package/lib/decorators/EncryptedModule.js.map +1 -1
- package/lib/decorators/EncryptedRoute.js +43 -119
- package/lib/decorators/EncryptedRoute.js.map +1 -1
- package/lib/decorators/PlainBody.js +24 -61
- package/lib/decorators/PlainBody.js.map +1 -1
- package/lib/decorators/SwaggerCustomizer.js +2 -2
- package/lib/decorators/SwaggerCustomizer.js.map +1 -1
- package/lib/decorators/TypedBody.js +12 -14
- package/lib/decorators/TypedBody.js.map +1 -1
- package/lib/decorators/TypedException.js +5 -5
- package/lib/decorators/TypedException.js.map +1 -1
- package/lib/decorators/TypedFormData.js +88 -291
- package/lib/decorators/TypedFormData.js.map +1 -1
- package/lib/decorators/TypedHeaders.js +6 -6
- package/lib/decorators/TypedHeaders.js.map +1 -1
- package/lib/decorators/TypedParam.d.ts +5 -6
- package/lib/decorators/TypedParam.js +14 -15
- package/lib/decorators/TypedParam.js.map +1 -1
- package/lib/decorators/TypedQuery.d.ts +2 -2
- package/lib/decorators/TypedQuery.js +52 -129
- package/lib/decorators/TypedQuery.js.map +1 -1
- package/lib/decorators/TypedRoute.js +31 -107
- package/lib/decorators/TypedRoute.js.map +1 -1
- package/lib/decorators/WebSocketRoute.d.ts +120 -0
- package/lib/decorators/WebSocketRoute.js +202 -0
- package/lib/decorators/WebSocketRoute.js.map +1 -0
- package/lib/decorators/internal/IWebSocketRouteReflect.d.ts +25 -0
- package/lib/decorators/internal/IWebSocketRouteReflect.js +3 -0
- package/lib/decorators/internal/IWebSocketRouteReflect.js.map +1 -0
- package/lib/decorators/internal/NoTransformConfigureError.js +1 -1
- package/lib/decorators/internal/NoTransformConfigureError.js.map +1 -1
- package/lib/decorators/internal/get_path_and_querify.js +67 -131
- package/lib/decorators/internal/get_path_and_querify.js.map +1 -1
- package/lib/decorators/internal/get_path_and_stringify.js +57 -71
- package/lib/decorators/internal/get_path_and_stringify.js.map +1 -1
- package/lib/decorators/internal/get_text_body.js +7 -46
- package/lib/decorators/internal/get_text_body.js.map +1 -1
- package/lib/decorators/internal/headers_to_object.js +3 -42
- package/lib/decorators/internal/headers_to_object.js.map +1 -1
- package/lib/decorators/internal/load_controller.js +29 -106
- package/lib/decorators/internal/load_controller.js.map +1 -1
- package/lib/decorators/internal/route_error.js +15 -65
- package/lib/decorators/internal/route_error.js.map +1 -1
- package/lib/decorators/internal/validate_request_body.js +44 -54
- package/lib/decorators/internal/validate_request_body.js.map +1 -1
- package/lib/decorators/internal/validate_request_form_data.js +36 -44
- package/lib/decorators/internal/validate_request_form_data.js.map +1 -1
- package/lib/decorators/internal/validate_request_headers.js +36 -44
- package/lib/decorators/internal/validate_request_headers.js.map +1 -1
- package/lib/decorators/internal/validate_request_query.js +36 -44
- package/lib/decorators/internal/validate_request_query.js.map +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/module.d.ts +10 -9
- package/lib/module.js +10 -9
- package/lib/module.js.map +1 -1
- package/lib/programmers/PlainBodyProgrammer.js +29 -44
- package/lib/programmers/PlainBodyProgrammer.js.map +1 -1
- package/lib/programmers/TypedBodyProgrammer.js +57 -82
- package/lib/programmers/TypedBodyProgrammer.js.map +1 -1
- package/lib/programmers/TypedExceptionProgrammer.js +51 -54
- package/lib/programmers/TypedExceptionProgrammer.js.map +1 -1
- package/lib/programmers/TypedFormDataBodyProgrammer.js +50 -73
- package/lib/programmers/TypedFormDataBodyProgrammer.js.map +1 -1
- package/lib/programmers/TypedHeadersProgrammer.js +24 -43
- package/lib/programmers/TypedHeadersProgrammer.js.map +1 -1
- package/lib/programmers/TypedParamProgrammer.js +11 -28
- package/lib/programmers/TypedParamProgrammer.js.map +1 -1
- package/lib/programmers/TypedQueryBodyProgrammer.js +24 -43
- package/lib/programmers/TypedQueryBodyProgrammer.js.map +1 -1
- package/lib/programmers/TypedQueryProgrammer.js +24 -43
- package/lib/programmers/TypedQueryProgrammer.js.map +1 -1
- package/lib/programmers/TypedQueryRouteProgrammer.js +22 -39
- package/lib/programmers/TypedQueryRouteProgrammer.js.map +1 -1
- package/lib/programmers/TypedRouteProgrammer.js +22 -39
- package/lib/programmers/TypedRouteProgrammer.js.map +1 -1
- package/lib/programmers/http/HttpAssertQuerifyProgrammer.js +12 -29
- package/lib/programmers/http/HttpAssertQuerifyProgrammer.js.map +1 -1
- package/lib/programmers/http/HttpIsQuerifyProgrammer.js +10 -27
- package/lib/programmers/http/HttpIsQuerifyProgrammer.js.map +1 -1
- package/lib/programmers/http/HttpQuerifyProgrammer.js +33 -69
- package/lib/programmers/http/HttpQuerifyProgrammer.js.map +1 -1
- package/lib/programmers/http/HttpValidateQuerifyProgrammer.js +11 -28
- package/lib/programmers/http/HttpValidateQuerifyProgrammer.js.map +1 -1
- package/lib/programmers/internal/CoreMetadataUtil.js +12 -37
- package/lib/programmers/internal/CoreMetadataUtil.js.map +1 -1
- package/lib/transform.js +8 -8
- package/lib/transform.js.map +1 -1
- package/lib/transformers/FileTransformer.js +35 -66
- package/lib/transformers/FileTransformer.js.map +1 -1
- package/lib/transformers/MethodTransformer.js +36 -50
- package/lib/transformers/MethodTransformer.js.map +1 -1
- package/lib/transformers/NodeTransformer.js +8 -12
- package/lib/transformers/NodeTransformer.js.map +1 -1
- package/lib/transformers/ParameterDecoratorTransformer.js +75 -90
- package/lib/transformers/ParameterDecoratorTransformer.js.map +1 -1
- package/lib/transformers/ParameterTransformer.js +18 -24
- package/lib/transformers/ParameterTransformer.js.map +1 -1
- package/lib/transformers/TypedExceptionTransformer.js +25 -27
- package/lib/transformers/TypedExceptionTransformer.js.map +1 -1
- package/lib/transformers/TypedRouteTransformer.js +52 -88
- package/lib/transformers/TypedRouteTransformer.js.map +1 -1
- package/lib/utils/ArrayUtil.d.ts +3 -0
- package/lib/utils/ArrayUtil.js +11 -0
- package/lib/utils/ArrayUtil.js.map +1 -0
- package/lib/utils/ExceptionManager.js +9 -31
- package/lib/utils/ExceptionManager.js.map +1 -1
- package/lib/utils/Singleton.js +6 -7
- package/lib/utils/Singleton.js.map +1 -1
- package/lib/utils/SourceFinder.js +38 -215
- package/lib/utils/SourceFinder.js.map +1 -1
- package/lib/utils/VersioningStrategy.d.ts +9 -0
- package/lib/utils/VersioningStrategy.js +17 -0
- package/lib/utils/VersioningStrategy.js.map +1 -0
- package/package.json +10 -6
- package/src/adaptors/WebSocketAdaptor.ts +414 -0
- package/src/decorators/TypedParam.ts +5 -6
- package/src/decorators/TypedQuery.ts +251 -251
- package/src/decorators/WebSocketRoute.ts +249 -0
- package/src/decorators/internal/IWebSocketRouteReflect.ts +23 -0
- package/src/decorators/internal/validate_request_body.ts +72 -72
- package/src/decorators/internal/validate_request_form_data.ts +75 -75
- package/src/decorators/internal/validate_request_headers.ts +83 -83
- package/src/decorators/internal/validate_request_query.ts +71 -71
- package/src/module.ts +20 -16
- package/src/transformers/ParameterDecoratorTransformer.ts +129 -120
- package/src/typings/get-function-location.d.ts +7 -0
- package/src/utils/ArrayUtil.ts +7 -0
- package/src/utils/VersioningStrategy.ts +27 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MethodTransformer.js","sourceRoot":"","sources":["../../src/transformers/MethodTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"MethodTransformer.js","sourceRoot":"","sources":["../../src/transformers/MethodTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,19 +4,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.NodeTransformer = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
const MethodTransformer_1 = require("./MethodTransformer");
|
|
9
|
+
const ParameterTransformer_1 = require("./ParameterTransformer");
|
|
10
10
|
var NodeTransformer;
|
|
11
11
|
(function (NodeTransformer) {
|
|
12
|
-
NodeTransformer.transform =
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
? ParameterTransformer_1.ParameterTransformer.transform(project)(node)
|
|
18
|
-
: node;
|
|
19
|
-
};
|
|
20
|
-
};
|
|
12
|
+
NodeTransformer.transform = (project) => (node) => typescript_1.default.isMethodDeclaration(node)
|
|
13
|
+
? MethodTransformer_1.MethodTransformer.transform(project)(node)
|
|
14
|
+
: typescript_1.default.isParameter(node)
|
|
15
|
+
? ParameterTransformer_1.ParameterTransformer.transform(project)(node)
|
|
16
|
+
: node;
|
|
21
17
|
})(NodeTransformer || (exports.NodeTransformer = NodeTransformer = {}));
|
|
22
18
|
//# sourceMappingURL=NodeTransformer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeTransformer.js","sourceRoot":"","sources":["../../src/transformers/NodeTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"NodeTransformer.js","sourceRoot":"","sources":["../../src/transformers/NodeTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAG5B,2DAAwD;AACxD,iEAA8D;AAE9D,IAAiB,eAAe,CAS/B;AATD,WAAiB,eAAe;IACjB,yBAAS,GACpB,CAAC,OAAgC,EAAE,EAAE,CACrC,CAAC,IAAa,EAAW,EAAE,CACzB,oBAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;QAC1B,CAAC,CAAC,qCAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;QAC5C,CAAC,CAAC,oBAAE,CAAC,WAAW,CAAC,IAAI,CAAC;YACpB,CAAC,CAAC,2CAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;YAC/C,CAAC,CAAC,IAAI,CAAC;AACjB,CAAC,EATgB,eAAe,+BAAf,eAAe,QAS/B"}
|
|
@@ -4,102 +4,87 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ParameterDecoratorTransformer = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
9
|
+
const PlainBodyProgrammer_1 = require("../programmers/PlainBodyProgrammer");
|
|
10
|
+
const TypedBodyProgrammer_1 = require("../programmers/TypedBodyProgrammer");
|
|
11
|
+
const TypedFormDataBodyProgrammer_1 = require("../programmers/TypedFormDataBodyProgrammer");
|
|
12
|
+
const TypedHeadersProgrammer_1 = require("../programmers/TypedHeadersProgrammer");
|
|
13
|
+
const TypedParamProgrammer_1 = require("../programmers/TypedParamProgrammer");
|
|
14
|
+
const TypedQueryBodyProgrammer_1 = require("../programmers/TypedQueryBodyProgrammer");
|
|
15
|
+
const TypedQueryProgrammer_1 = require("../programmers/TypedQueryProgrammer");
|
|
16
16
|
var ParameterDecoratorTransformer;
|
|
17
17
|
(function (ParameterDecoratorTransformer) {
|
|
18
|
-
ParameterDecoratorTransformer.transform =
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
// DO TRANSFORM
|
|
48
|
-
return typescript_1.default.factory.createDecorator(typescript_1.default.factory.updateCallExpression(decorator.expression, decorator.expression.expression, decorator.expression.typeArguments, programmer(project)(decorator.expression.expression)(decorator.expression.arguments)(type)));
|
|
49
|
-
};
|
|
50
|
-
};
|
|
18
|
+
ParameterDecoratorTransformer.transform = (project) => (type) => (decorator) => {
|
|
19
|
+
var _a;
|
|
20
|
+
//----
|
|
21
|
+
// VALIDATIONS
|
|
22
|
+
//----
|
|
23
|
+
// CHECK DECORATOR
|
|
24
|
+
if (!typescript_1.default.isCallExpression(decorator.expression))
|
|
25
|
+
return decorator;
|
|
26
|
+
// SIGNATURE DECLARATION
|
|
27
|
+
const declaration = (_a = project.checker.getResolvedSignature(decorator.expression)) === null || _a === void 0 ? void 0 : _a.declaration;
|
|
28
|
+
if (declaration === undefined)
|
|
29
|
+
return decorator;
|
|
30
|
+
// FILE PATH
|
|
31
|
+
const file = path_1.default.resolve(declaration.getSourceFile().fileName);
|
|
32
|
+
if (file.indexOf(LIB_PATH) === -1 && file.indexOf(SRC_PATH) === -1)
|
|
33
|
+
return decorator;
|
|
34
|
+
//----
|
|
35
|
+
// TRANSFORMATION
|
|
36
|
+
//----
|
|
37
|
+
// FIND PROGRAMMER
|
|
38
|
+
const programmer = FUNCTORS[getName(project.checker.getTypeAtLocation(declaration).symbol)];
|
|
39
|
+
if (programmer === undefined)
|
|
40
|
+
return decorator;
|
|
41
|
+
// GET TYPE INFO
|
|
42
|
+
const typeNode = project.checker.typeToTypeNode(type, undefined, undefined);
|
|
43
|
+
if (typeNode === undefined)
|
|
44
|
+
return decorator;
|
|
45
|
+
// DO TRANSFORM
|
|
46
|
+
return typescript_1.default.factory.createDecorator(typescript_1.default.factory.updateCallExpression(decorator.expression, decorator.expression.expression, decorator.expression.typeArguments, programmer(project)(decorator.expression.expression)(decorator.expression.arguments)(type)));
|
|
51
47
|
};
|
|
52
48
|
})(ParameterDecoratorTransformer || (exports.ParameterDecoratorTransformer = ParameterDecoratorTransformer = {}));
|
|
53
|
-
|
|
54
|
-
EncryptedBody:
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
"
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
: [TypedFormDataBodyProgrammer_1.TypedFormDataBodyProgrammer.generate(project)(modulo)(type)];
|
|
84
|
-
}; }; }; },
|
|
85
|
-
PlainBody: function (project) { return function (modulo) { return function (parameters) { return function (type) {
|
|
86
|
-
return parameters.length
|
|
87
|
-
? parameters
|
|
88
|
-
: [PlainBodyProgrammer_1.PlainBodyProgrammer.generate(project)(modulo)(type)];
|
|
89
|
-
}; }; }; },
|
|
49
|
+
const FUNCTORS = {
|
|
50
|
+
EncryptedBody: (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
51
|
+
? parameters
|
|
52
|
+
: [TypedBodyProgrammer_1.TypedBodyProgrammer.generate(project)(modulo)(type)],
|
|
53
|
+
TypedBody: (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
54
|
+
? parameters
|
|
55
|
+
: [TypedBodyProgrammer_1.TypedBodyProgrammer.generate(project)(modulo)(type)],
|
|
56
|
+
TypedHeaders: (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
57
|
+
? parameters
|
|
58
|
+
: [TypedHeadersProgrammer_1.TypedHeadersProgrammer.generate(project)(modulo)(type)],
|
|
59
|
+
TypedParam: (project) => TypedParamProgrammer_1.TypedParamProgrammer.generate(project),
|
|
60
|
+
TypedQuery: (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
61
|
+
? parameters
|
|
62
|
+
: [TypedQueryProgrammer_1.TypedQueryProgrammer.generate(project)(modulo)(type)],
|
|
63
|
+
"TypedQuery.Body": (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
64
|
+
? parameters
|
|
65
|
+
: [TypedQueryBodyProgrammer_1.TypedQueryBodyProgrammer.generate(project)(modulo)(type)],
|
|
66
|
+
"TypedFormData.Body": (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
67
|
+
? parameters
|
|
68
|
+
: [TypedFormDataBodyProgrammer_1.TypedFormDataBodyProgrammer.generate(project)(modulo)(type)],
|
|
69
|
+
PlainBody: (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
70
|
+
? parameters
|
|
71
|
+
: [PlainBodyProgrammer_1.PlainBodyProgrammer.generate(project)(modulo)(type)],
|
|
72
|
+
"WebSocketRoute.Header": (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
73
|
+
? parameters
|
|
74
|
+
: [TypedBodyProgrammer_1.TypedBodyProgrammer.generate(project)(modulo)(type)],
|
|
75
|
+
"WebSocketRoute.Param": (project) => TypedParamProgrammer_1.TypedParamProgrammer.generate(project),
|
|
76
|
+
"WebSocketRoute.Query": (project) => (modulo) => (parameters) => (type) => parameters.length
|
|
77
|
+
? parameters
|
|
78
|
+
: [TypedQueryProgrammer_1.TypedQueryProgrammer.generate(project)(modulo)(type)],
|
|
90
79
|
};
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
80
|
+
const LIB_PATH = path_1.default.join("@nestia", "core", "lib", "decorators");
|
|
81
|
+
const SRC_PATH = path_1.default.resolve(path_1.default.join(__dirname, "..", "decorators"));
|
|
82
|
+
const getName = (symbol) => {
|
|
94
83
|
var _a, _b;
|
|
95
|
-
|
|
84
|
+
const parent = (_b = (_a = symbol.getDeclarations()) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.parent;
|
|
96
85
|
return parent ? exploreName(parent)(symbol.escapedName.toString()) : "__type";
|
|
97
86
|
};
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
? exploreName(decl.parent.parent)("".concat(decl.parent.name.getFullText().trim(), ".").concat(name))
|
|
102
|
-
: name;
|
|
103
|
-
};
|
|
104
|
-
};
|
|
87
|
+
const exploreName = (decl) => (name) => typescript_1.default.isModuleBlock(decl)
|
|
88
|
+
? exploreName(decl.parent.parent)(`${decl.parent.name.getFullText().trim()}.${name}`)
|
|
89
|
+
: name;
|
|
105
90
|
//# sourceMappingURL=ParameterDecoratorTransformer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParameterDecoratorTransformer.js","sourceRoot":"","sources":["../../src/transformers/ParameterDecoratorTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"ParameterDecoratorTransformer.js","sourceRoot":"","sources":["../../src/transformers/ParameterDecoratorTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,32 +4,26 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ParameterTransformer = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
const ParameterDecoratorTransformer_1 = require("./ParameterDecoratorTransformer");
|
|
9
9
|
var ParameterTransformer;
|
|
10
10
|
(function (ParameterTransformer) {
|
|
11
|
-
ParameterTransformer.transform =
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}), param.dotDotDotToken, param.name, param.questionToken, param.type, param.initializer);
|
|
28
|
-
// eslint-disable-next-line
|
|
29
|
-
return typescript_1.default.factory.updateParameterDeclaration(param, decorators.map(function (deco) {
|
|
30
|
-
return ParameterDecoratorTransformer_1.ParameterDecoratorTransformer.transform(project)(type)(deco);
|
|
31
|
-
}), param.modifiers, param.dotDotDotToken, param.name, param.questionToken, param.type, param.initializer);
|
|
32
|
-
};
|
|
11
|
+
ParameterTransformer.transform = (project) => (param) => {
|
|
12
|
+
// CHECK DECORATOR
|
|
13
|
+
const decorators = typescript_1.default.getDecorators
|
|
14
|
+
? typescript_1.default.getDecorators(param)
|
|
15
|
+
: param.decorators;
|
|
16
|
+
if (!(decorators === null || decorators === void 0 ? void 0 : decorators.length))
|
|
17
|
+
return param;
|
|
18
|
+
// GET TYPE INFO
|
|
19
|
+
const type = project.checker.getTypeAtLocation(param);
|
|
20
|
+
// WHEN LATEST TS VERSION
|
|
21
|
+
if (typescript_1.default.getDecorators !== undefined)
|
|
22
|
+
return typescript_1.default.factory.updateParameterDeclaration(param, (param.modifiers || []).map((mod) => typescript_1.default.isDecorator(mod)
|
|
23
|
+
? ParameterDecoratorTransformer_1.ParameterDecoratorTransformer.transform(project)(type)(mod)
|
|
24
|
+
: mod), param.dotDotDotToken, param.name, param.questionToken, param.type, param.initializer);
|
|
25
|
+
// eslint-disable-next-line
|
|
26
|
+
return typescript_1.default.factory.updateParameterDeclaration(param, decorators.map((deco) => ParameterDecoratorTransformer_1.ParameterDecoratorTransformer.transform(project)(type)(deco)), param.modifiers, param.dotDotDotToken, param.name, param.questionToken, param.type, param.initializer);
|
|
33
27
|
};
|
|
34
28
|
})(ParameterTransformer || (exports.ParameterTransformer = ParameterTransformer = {}));
|
|
35
29
|
//# sourceMappingURL=ParameterTransformer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParameterTransformer.js","sourceRoot":"","sources":["../../src/transformers/ParameterTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"ParameterTransformer.js","sourceRoot":"","sources":["../../src/transformers/ParameterTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,4DAA4B;AAG5B,mFAAgF;AAEhF,IAAiB,oBAAoB,CA0CpC;AA1CD,WAAiB,oBAAoB;IACtB,8BAAS,GACpB,CAAC,OAAgC,EAAE,EAAE,CACrC,CAAC,KAA8B,EAA2B,EAAE;QAC1D,kBAAkB;QAClB,MAAM,UAAU,GAAwC,oBAAE,CAAC,aAAa;YACtE,CAAC,CAAC,oBAAE,CAAC,aAAa,CAAC,KAAK,CAAC;YACzB,CAAC,CAAE,KAAa,CAAC,UAAU,CAAC;QAC9B,IAAI,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,CAAA;YAAE,OAAO,KAAK,CAAC;QAEtC,gBAAgB;QAChB,MAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAE/D,yBAAyB;QACzB,IAAI,oBAAE,CAAC,aAAa,KAAK,SAAS;YAChC,OAAO,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CAC1C,KAAK,EACL,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAClC,oBAAE,CAAC,WAAW,CAAC,GAAG,CAAC;gBACjB,CAAC,CAAC,6DAA6B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;gBAC7D,CAAC,CAAC,GAAG,CACR,EACD,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,WAAW,CAClB,CAAC;QACJ,2BAA2B;QAC3B,OAAQ,oBAAE,CAAC,OAAO,CAAC,0BAAkC,CACnD,KAAK,EACL,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACtB,6DAA6B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAC7D,EACA,KAAa,CAAC,SAAS,EACxB,KAAK,CAAC,cAAc,EACpB,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,aAAa,EACnB,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,WAAW,CAClB,CAAC;IACJ,CAAC,CAAC;AACN,CAAC,EA1CgB,oBAAoB,oCAApB,oBAAoB,QA0CpC"}
|
|
@@ -4,35 +4,33 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.TypedExceptionTransformer = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
9
|
+
const TypedExceptionProgrammer_1 = require("../programmers/TypedExceptionProgrammer");
|
|
10
10
|
var TypedExceptionTransformer;
|
|
11
11
|
(function (TypedExceptionTransformer) {
|
|
12
|
-
TypedExceptionTransformer.transform =
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return typescript_1.default.factory.createDecorator(TypedExceptionProgrammer_1.TypedExceptionProgrammer.generate(project)(decorator.expression));
|
|
33
|
-
};
|
|
12
|
+
TypedExceptionTransformer.transform = (project) => (decorator) => {
|
|
13
|
+
if (!typescript_1.default.isCallExpression(decorator.expression))
|
|
14
|
+
return decorator;
|
|
15
|
+
// CHECK SIGNATURE
|
|
16
|
+
const signature = project.checker.getResolvedSignature(decorator.expression);
|
|
17
|
+
if (!signature || !signature.declaration)
|
|
18
|
+
return decorator;
|
|
19
|
+
// CHECK TO BE TRANSFORMED
|
|
20
|
+
const done = (() => {
|
|
21
|
+
// CHECK FILENAME
|
|
22
|
+
const location = path_1.default.resolve(signature.declaration.getSourceFile().fileName);
|
|
23
|
+
if (location.indexOf(LIB_PATH) === -1 && location !== SRC_PATH)
|
|
24
|
+
return false;
|
|
25
|
+
// CHECK DUPLICATED
|
|
26
|
+
return decorator.expression.arguments.length !== 3;
|
|
27
|
+
})();
|
|
28
|
+
if (done === false)
|
|
29
|
+
return decorator;
|
|
30
|
+
// DO TRANSFORM
|
|
31
|
+
return typescript_1.default.factory.createDecorator(TypedExceptionProgrammer_1.TypedExceptionProgrammer.generate(project)(decorator.expression));
|
|
34
32
|
};
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
const LIB_PATH = path_1.default.join("@nestia", "core", "lib", "decorators", `TypedException.d.ts`);
|
|
34
|
+
const SRC_PATH = path_1.default.resolve(path_1.default.join(__dirname, "..", "decorators", `TypedException.ts`));
|
|
37
35
|
})(TypedExceptionTransformer || (exports.TypedExceptionTransformer = TypedExceptionTransformer = {}));
|
|
38
36
|
//# sourceMappingURL=TypedExceptionTransformer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypedExceptionTransformer.js","sourceRoot":"","sources":["../../src/transformers/TypedExceptionTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"TypedExceptionTransformer.js","sourceRoot":"","sources":["../../src/transformers/TypedExceptionTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,4DAA4B;AAG5B,sFAAmF;AAEnF,IAAiB,yBAAyB,CAyCzC;AAzCD,WAAiB,yBAAyB;IAC3B,mCAAS,GACpB,CAAC,OAAgC,EAAE,EAAE,CACrC,CAAC,SAAuB,EAAgB,EAAE;QACxC,IAAI,CAAC,oBAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC;YAAE,OAAO,SAAS,CAAC;QAEjE,kBAAkB;QAClB,MAAM,SAAS,GACb,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QAE3D,0BAA0B;QAC1B,MAAM,IAAI,GAAY,CAAC,GAAG,EAAE;YAC1B,iBAAiB;YACjB,MAAM,QAAQ,GAAW,cAAI,CAAC,OAAO,CACnC,SAAS,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,QAAQ,CAC/C,CAAC;YACF,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,QAAQ,KAAK,QAAQ;gBAC5D,OAAO,KAAK,CAAC;YAEf,mBAAmB;YACnB,OAAO,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;QACrD,CAAC,CAAC,EAAE,CAAC;QACL,IAAI,IAAI,KAAK,KAAK;YAAE,OAAO,SAAS,CAAC;QAErC,eAAe;QACf,OAAO,oBAAE,CAAC,OAAO,CAAC,eAAe,CAC/B,mDAAwB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CACjE,CAAC;IACJ,CAAC,CAAC;IAEJ,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CACxB,SAAS,EACT,MAAM,EACN,KAAK,EACL,YAAY,EACZ,qBAAqB,CACtB,CAAC;IACF,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAC3B,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAC9D,CAAC;AACJ,CAAC,EAzCgB,yBAAyB,yCAAzB,yBAAyB,QAyCzC"}
|
|
@@ -1,99 +1,63 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
-
if (!m) return o;
|
|
5
|
-
var i = m.call(o), r, ar = [], e;
|
|
6
|
-
try {
|
|
7
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
-
}
|
|
9
|
-
catch (error) { e = { error: error }; }
|
|
10
|
-
finally {
|
|
11
|
-
try {
|
|
12
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
-
}
|
|
14
|
-
finally { if (e) throw e.error; }
|
|
15
|
-
}
|
|
16
|
-
return ar;
|
|
17
|
-
};
|
|
18
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
19
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
20
|
-
if (ar || !(i in from)) {
|
|
21
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
22
|
-
ar[i] = from[i];
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
26
|
-
};
|
|
27
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
28
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
29
4
|
};
|
|
30
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
31
6
|
exports.TypedRouteTransformer = void 0;
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
9
|
+
const TypedQueryRouteProgrammer_1 = require("../programmers/TypedQueryRouteProgrammer");
|
|
10
|
+
const TypedRouteProgrammer_1 = require("../programmers/TypedRouteProgrammer");
|
|
36
11
|
var TypedRouteTransformer;
|
|
37
12
|
(function (TypedRouteTransformer) {
|
|
38
|
-
TypedRouteTransformer.transform =
|
|
39
|
-
|
|
40
|
-
return
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
], false)));
|
|
80
|
-
};
|
|
81
|
-
};
|
|
82
|
-
};
|
|
83
|
-
var isObject = function (checker) {
|
|
84
|
-
return function (type) {
|
|
85
|
-
return (type.getFlags() & typescript_1.default.TypeFlags.Object) !== 0 &&
|
|
86
|
-
!checker.isTupleType(type) &&
|
|
87
|
-
!checker.isArrayType(type) &&
|
|
88
|
-
!checker.isArrayLikeType(type);
|
|
89
|
-
};
|
|
13
|
+
TypedRouteTransformer.transform = (project) => (type) => (decorator) => {
|
|
14
|
+
if (!typescript_1.default.isCallExpression(decorator.expression))
|
|
15
|
+
return decorator;
|
|
16
|
+
// CHECK SIGNATURE
|
|
17
|
+
const signature = project.checker.getResolvedSignature(decorator.expression);
|
|
18
|
+
if (!signature || !signature.declaration)
|
|
19
|
+
return decorator;
|
|
20
|
+
// CHECK TO BE TRANSFORMED
|
|
21
|
+
const modulo = (() => {
|
|
22
|
+
var _a;
|
|
23
|
+
// CHECK FILENAME
|
|
24
|
+
const location = path_1.default.resolve(signature.declaration.getSourceFile().fileName);
|
|
25
|
+
if (LIB_PATHS.every((str) => location.indexOf(str) === -1) &&
|
|
26
|
+
SRC_PATHS.every((str) => location !== str))
|
|
27
|
+
return null;
|
|
28
|
+
// CHECK DUPLICATE BOOSTER
|
|
29
|
+
if (decorator.expression.arguments.length >= 2)
|
|
30
|
+
return false;
|
|
31
|
+
else if (decorator.expression.arguments.length === 1) {
|
|
32
|
+
const last = decorator.expression.arguments[decorator.expression.arguments.length - 1];
|
|
33
|
+
const type = project.checker.getTypeAtLocation(last);
|
|
34
|
+
if (isObject(project.checker)(type))
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
return ((_a = location.split(path_1.default.sep).at(-1)) === null || _a === void 0 ? void 0 : _a.split(".")[0]) === "TypedQuery"
|
|
38
|
+
? "TypedQuery"
|
|
39
|
+
: "TypedRoute";
|
|
40
|
+
})();
|
|
41
|
+
if (modulo === null)
|
|
42
|
+
return decorator;
|
|
43
|
+
// CHECK TYPE NODE
|
|
44
|
+
const typeNode = project.checker.typeToTypeNode(type, undefined, undefined);
|
|
45
|
+
if (typeNode === undefined)
|
|
46
|
+
return decorator;
|
|
47
|
+
// DO TRANSFORM
|
|
48
|
+
return typescript_1.default.factory.createDecorator(typescript_1.default.factory.updateCallExpression(decorator.expression, decorator.expression.expression, decorator.expression.typeArguments, [
|
|
49
|
+
...decorator.expression.arguments,
|
|
50
|
+
(modulo === "TypedQuery"
|
|
51
|
+
? TypedQueryRouteProgrammer_1.TypedQueryRouteProgrammer
|
|
52
|
+
: TypedRouteProgrammer_1.TypedRouteProgrammer).generate(project)(decorator.expression.expression)(type),
|
|
53
|
+
]));
|
|
90
54
|
};
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
});
|
|
55
|
+
const isObject = (checker) => (type) => (type.getFlags() & typescript_1.default.TypeFlags.Object) !== 0 &&
|
|
56
|
+
!checker.isTupleType(type) &&
|
|
57
|
+
!checker.isArrayType(type) &&
|
|
58
|
+
!checker.isArrayLikeType(type);
|
|
59
|
+
const CLASSES = ["EncryptedRoute", "TypedRoute", "TypedQuery"];
|
|
60
|
+
const LIB_PATHS = CLASSES.map((cla) => path_1.default.join("@nestia", "core", "lib", "decorators", `${cla}.d.ts`));
|
|
61
|
+
const SRC_PATHS = CLASSES.map((cla) => path_1.default.resolve(path_1.default.join(__dirname, "..", "decorators", `${cla}.ts`)));
|
|
98
62
|
})(TypedRouteTransformer || (exports.TypedRouteTransformer = TypedRouteTransformer = {}));
|
|
99
63
|
//# sourceMappingURL=TypedRouteTransformer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TypedRouteTransformer.js","sourceRoot":"","sources":["../../src/transformers/TypedRouteTransformer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TypedRouteTransformer.js","sourceRoot":"","sources":["../../src/transformers/TypedRouteTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,4DAA4B;AAG5B,wFAAqF;AACrF,8EAA2E;AAE3E,IAAiB,qBAAqB,CAgFrC;AAhFD,WAAiB,qBAAqB;IACvB,+BAAS,GACpB,CAAC,OAAgC,EAAE,EAAE,CACrC,CAAC,IAAa,EAAE,EAAE,CAClB,CAAC,SAAuB,EAAgB,EAAE;QACxC,IAAI,CAAC,oBAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC;YAAE,OAAO,SAAS,CAAC;QAEjE,kBAAkB;QAClB,MAAM,SAAS,GACb,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW;YAAE,OAAO,SAAS,CAAC;QAE3D,0BAA0B;QAC1B,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;;YACnB,iBAAiB;YACjB,MAAM,QAAQ,GAAW,cAAI,CAAC,OAAO,CACnC,SAAS,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC,QAAQ,CAC/C,CAAC;YACF,IACE,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtD,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,KAAK,GAAG,CAAC;gBAE1C,OAAO,IAAI,CAAC;YAEd,0BAA0B;YAC1B,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAC;iBACxD,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrD,MAAM,IAAI,GACR,SAAS,CAAC,UAAU,CAAC,SAAS,CAC5B,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAC1C,CAAC;gBACJ,MAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAC9D,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;oBAAE,OAAO,KAAK,CAAC;YACpD,CAAC;YACD,OAAO,CAAA,MAAA,QAAQ,CAAC,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,MAAK,YAAY;gBACpE,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,YAAY,CAAC;QACnB,CAAC,CAAC,EAAE,CAAC;QACL,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,SAAS,CAAC;QAEtC,kBAAkB;QAClB,MAAM,QAAQ,GAA4B,OAAO,CAAC,OAAO,CAAC,cAAc,CACtE,IAAI,EACJ,SAAS,EACT,SAAS,CACV,CAAC;QACF,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,SAAS,CAAC;QAE7C,eAAe;QACf,OAAO,oBAAE,CAAC,OAAO,CAAC,eAAe,CAC/B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC7B,SAAS,CAAC,UAAU,EACpB,SAAS,CAAC,UAAU,CAAC,UAAU,EAC/B,SAAS,CAAC,UAAU,CAAC,aAAa,EAClC;YACE,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS;YACjC,CAAC,MAAM,KAAK,YAAY;gBACtB,CAAC,CAAC,qDAAyB;gBAC3B,CAAC,CAAC,2CAAoB,CACvB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;SAC3D,CACF,CACF,CAAC;IACJ,CAAC,CAAC;IAEJ,MAAM,QAAQ,GACZ,CAAC,OAAuB,EAAE,EAAE,CAC5B,CAAC,IAAa,EAAW,EAAE,CACzB,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,oBAAE,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;QAC7C,CAAE,OAAe,CAAC,WAAW,CAAC,IAAI,CAAC;QACnC,CAAE,OAAe,CAAC,WAAW,CAAC,IAAI,CAAC;QACnC,CAAE,OAAe,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,CAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACpC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,GAAG,OAAO,CAAC,CACjE,CAAC;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACpC,cAAI,CAAC,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC,CACpE,CAAC;AACJ,CAAC,EAhFgB,qBAAqB,qCAArB,qBAAqB,QAgFrC"}
|