@darraghor/eslint-plugin-nestjs-typed 5.2.1 → 6.0.0-rc.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.
- package/README.md +5 -7
- package/dist/configs/base.js +7 -0
- package/dist/configs/noSwagger.js +2 -3
- package/dist/configs/recommended.js +2 -3
- package/dist/rules/allPropertiesAreWhitelisted/allPropertiesAreWhitelisted.js +2 -4
- package/dist/rules/allPropertiesHaveExplicitDefined/allPropertiesHaveExplicitDefined.js +1 -2
- package/dist/rules/apiEnumPropertyBestPractices/apiEnumPropertyBestPractices.js +2 -3
- package/dist/rules/apiMethodsShouldBeGuarded/apiMethodsShouldBeGuarded.js +1 -2
- package/dist/rules/apiMethodsShouldSpecifyApiOperation/apiMethodsShouldSpecifyApiOperation.js +1 -2
- package/dist/rules/apiMethodsShouldSpecifyApiResponse/apiMethodsShouldSpecifyApiResponse.js +1 -2
- package/dist/rules/apiPropertyMatchesPropertyOptionality/apiPropertyMatchesPropertyOptionality.js +1 -2
- package/dist/rules/apiPropertyReturningArrayShouldSetArray/apiPropertyReturningArrayShouldSetArray.js +2 -3
- package/dist/rules/controllerDecoratedHasApiTags/controllerDecoratedHasApiTags.js +1 -2
- package/dist/rules/injectablesShouldBeProvided/injectableShouldBeProvided.js +9 -12
- package/dist/rules/noDuplicateDecorators/noDuplicateDecorators.js +3 -7
- package/dist/rules/paramDecoratorNameMatchesRouteParam/paramDecoratorNameMatchesRouteParam.js +12 -15
- package/dist/rules/paramDecoratorNameMatchesRouteParam/rule.testData.js +1 -2
- package/dist/rules/providerInjectedShouldMatchFactory/ProviderInjectedShouldMatchFactory.js +5 -8
- package/dist/rules/shouldSpecifyForbidUnknownValues/shouldSpecifyForbidUnknownValuesRule.js +8 -11
- package/dist/rules/sortModuleMetadataArrays/sortModuleMetadataArrays.js +2 -2
- package/dist/rules/validateNestedOfArrayShouldSetEach/validateNestedOfArrayShouldSetEach.js +2 -3
- package/dist/rules/validateNonPrimitiveNeedsTypeDecorator/validateNonPrimitiveNeedsDecorators.js +10 -12
- package/dist/testing/fixtureSetup.js +1 -2
- package/dist/utils/createRule.js +1 -3
- package/dist/utils/files/customFileEnumeratorWrapper.js +36 -0
- package/dist/utils/files/isFilteredPath.js +2 -2
- package/dist/utils/nestModules/nestModuleAstParser.js +5 -7
- package/dist/utils/nestModules/nestProvidedInjectableMapper.js +2 -7
- package/dist/utils/nestModules/nestProviderAstParser.js +3 -6
- package/dist/utils/typedTokenHelpers.js +9 -8
- package/package.json +26 -16
- package/dist/fixtures/Controller.stub.js +0 -9
- package/dist/fixtures/Injectable.stub.js +0 -9
- package/dist/fixtures/Module.stub.js +0 -9
- package/dist/fixtures/NonFactoryDecorator.stub.js +0 -10
- package/dist/fixtures/anotherExample.module.js +0 -25
- package/dist/fixtures/example.controller.js +0 -17
- package/dist/fixtures/example.customprovider.js +0 -14
- package/dist/fixtures/example.module.js +0 -32
- package/dist/fixtures/example.providedClass.provider.js +0 -16
- package/dist/fixtures/example.provider.js +0 -16
- package/dist/fixtures/file.js +0 -4
- package/dist/fixtures/providerArray.module.js +0 -25
- package/dist/fixtures/tooManyTimesExample.provider.js +0 -16
- package/dist/utils/files/fileEnumerationWrapper.js +0 -29
|
@@ -2,25 +2,23 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.hasMismatchedInjected = void 0;
|
|
4
4
|
const createRule_1 = require("../../utils/createRule");
|
|
5
|
-
// eslint-disable-next-line unicorn/import-style
|
|
6
5
|
//import util from "util";
|
|
7
6
|
const nestProviderAstParser_1 = require("../../utils/nestModules/nestProviderAstParser");
|
|
8
7
|
const hasMismatchedInjected = (node) => {
|
|
9
8
|
// should be a nest provider - note this doesn't check the Provider used is an import actually from nest. Assumes nest Provider. Will change if this is annoying:)
|
|
10
9
|
// edit 03/06/2023 - it was annoying and someone complained on github so I added a check for a "useFactory" property on the Provider declaration
|
|
11
|
-
const isNestProvider = node.id.typeAnnotation
|
|
10
|
+
const isNestProvider = (node.id.typeAnnotation
|
|
12
11
|
?.typeAnnotation
|
|
13
12
|
// prettier-ignore
|
|
14
|
-
|
|
15
|
-
?.typeName?.name === "Provider" &&
|
|
13
|
+
).typeName.name === "Provider" &&
|
|
16
14
|
// and there is a useFactory property in the declaration
|
|
17
15
|
nestProviderAstParser_1.nestProviderAstParser.findProvideProperty(node, "useFactory");
|
|
18
16
|
if (!isNestProvider) {
|
|
19
17
|
return false;
|
|
20
18
|
}
|
|
21
19
|
// count number of factory params
|
|
22
|
-
const factoryParameterCount = nestProviderAstParser_1.nestProviderAstParser.findProvideProperty(node, "useFactory")
|
|
23
|
-
?.value
|
|
20
|
+
const factoryParameterCount = (nestProviderAstParser_1.nestProviderAstParser.findProvideProperty(node, "useFactory")
|
|
21
|
+
?.value).params.length;
|
|
24
22
|
// Count number of injected params
|
|
25
23
|
const injectedParameter = nestProviderAstParser_1.nestProviderAstParser.findProvideProperty(node, "inject")?.value;
|
|
26
24
|
const injectedParameterCount = injectedParameter
|
|
@@ -45,7 +43,6 @@ const rule = (0, createRule_1.createRule)({
|
|
|
45
43
|
defaultOptions: [],
|
|
46
44
|
create(context) {
|
|
47
45
|
return {
|
|
48
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
49
46
|
VariableDeclarator(node) {
|
|
50
47
|
if ((0, exports.hasMismatchedInjected)(node)) {
|
|
51
48
|
context.report({
|
|
@@ -58,4 +55,4 @@ const rule = (0, createRule_1.createRule)({
|
|
|
58
55
|
},
|
|
59
56
|
});
|
|
60
57
|
exports.default = rule;
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvdmlkZXJJbmplY3RlZFNob3VsZE1hdGNoRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydWxlcy9wcm92aWRlckluamVjdGVkU2hvdWxkTWF0Y2hGYWN0b3J5L1Byb3ZpZGVySW5qZWN0ZWRTaG91bGRNYXRjaEZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsdURBQWtEO0FBRWxELDBCQUEwQjtBQUMxQix5RkFBb0Y7QUFFN0UsTUFBTSxxQkFBcUIsR0FBRyxDQUNqQyxJQUFpQyxFQUMxQixFQUFFO0lBQ1Qsa0tBQWtLO0lBQ2xLLGdKQUFnSjtJQUNoSixNQUFNLGNBQWMsR0FFWixDQUNBLElBQUksQ0FBQyxFQUFFLENBQUMsY0FBYztRQUNsQixFQUFFLGNBQTBDO0lBQ3RELGtCQUFrQjtJQUVmLENBQUEsQ0FBQyxRQUNELENBQUMsSUFBSSxLQUFLLFVBQVU7UUFDckIsd0RBQXdEO1FBQ3hELDZDQUFxQixDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxZQUFZLENBQUMsQ0FBQztJQUVsRSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDbEIsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELGlDQUFpQztJQUNqQyxNQUFNLHFCQUFxQixHQUFHLENBQzFCLDZDQUFxQixDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxZQUFZLENBQUM7UUFDekQsRUFBRSxLQUNULENBQUEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBRWhCLGtDQUFrQztJQUNsQyxNQUFNLGlCQUFpQixHQUFHLDZDQUFxQixDQUFDLG1CQUFtQixDQUMvRCxJQUFJLEVBQ0osUUFBUSxDQUNYLEVBQUUsS0FBNEMsQ0FBQztJQUVoRCxNQUFNLHNCQUFzQixHQUFHLGlCQUFpQjtRQUM1QyxDQUFDLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLE1BQU07UUFDbkMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVSLHVCQUF1QjtJQUN2QixPQUFPLHNCQUFzQixLQUFLLHFCQUFxQixDQUFDO0FBQzVELENBQUMsQ0FBQztBQXZDVyxRQUFBLHFCQUFxQix5QkF1Q2hDO0FBRUYsTUFBTSxJQUFJLEdBQUcsSUFBQSx1QkFBVSxFQUFvQjtJQUN2QyxJQUFJLEVBQUUsbURBQW1EO0lBQ3pELElBQUksRUFBRTtRQUNGLElBQUksRUFBRTtZQUNGLFdBQVcsRUFDUCxtR0FBbUc7U0FDMUc7UUFDRCxRQUFRLEVBQUU7WUFDTixXQUFXLEVBQUUsMEZBQTBGO1NBQzFHO1FBQ0QsTUFBTSxFQUFFLEVBQUU7UUFDVixJQUFJLEVBQUUsU0FBUztLQUNsQjtJQUNELGNBQWMsRUFBRSxFQUFFO0lBRWxCLE1BQU0sQ0FBQyxPQUFPO1FBQ1YsT0FBTztZQUNILGtCQUFrQixDQUFDLElBQWlDO2dCQUNoRCxJQUFJLElBQUEsNkJBQXFCLEVBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDOUIsT0FBTyxDQUFDLE1BQU0sQ0FBQzt3QkFDWCxJQUFJLEVBQUUsSUFBSTt3QkFDVixTQUFTLEVBQUUsYUFBYTtxQkFDM0IsQ0FBQyxDQUFDO2dCQUNQLENBQUM7WUFDTCxDQUFDO1NBQ0osQ0FBQztJQUNOLENBQUM7Q0FDSixDQUFDLENBQUM7QUFFSCxrQkFBZSxJQUFJLENBQUMifQ==
|
|
@@ -6,7 +6,7 @@ const createRule_1 = require("../../utils/createRule");
|
|
|
6
6
|
const utils_2 = require("@typescript-eslint/utils");
|
|
7
7
|
const isValidationPipeNewExpression = (node) => {
|
|
8
8
|
const newExpression = node;
|
|
9
|
-
const callee = newExpression
|
|
9
|
+
const callee = newExpression.callee;
|
|
10
10
|
if (callee && callee.name === "ValidationPipe") {
|
|
11
11
|
return true;
|
|
12
12
|
}
|
|
@@ -18,16 +18,15 @@ const checkObjectExpression = (os) => {
|
|
|
18
18
|
return false;
|
|
19
19
|
}
|
|
20
20
|
// eslint-disable-next-line @typescript-eslint/non-nullable-type-assertion-style
|
|
21
|
-
const forbidUnknownValuesProperty = os
|
|
22
|
-
|
|
21
|
+
const forbidUnknownValuesProperty = os.properties
|
|
22
|
+
.filter(utils_2.ASTUtils.isNodeOfType(utils_1.TSESTree.AST_NODE_TYPES.Property))
|
|
23
23
|
.find((p) => p.key.name === "forbidUnknownValues");
|
|
24
24
|
// property is not present. this is wrong.
|
|
25
25
|
if (os && !forbidUnknownValuesProperty) {
|
|
26
26
|
return true;
|
|
27
27
|
}
|
|
28
28
|
// property is explicitly false. this is wrong.
|
|
29
|
-
const isPropertyValueExplicitlyFalse =
|
|
30
|
-
"false";
|
|
29
|
+
const isPropertyValueExplicitlyFalse = forbidUnknownValuesProperty.value.raw === "false";
|
|
31
30
|
if (isPropertyValueExplicitlyFalse) {
|
|
32
31
|
return true;
|
|
33
32
|
}
|
|
@@ -44,7 +43,7 @@ const shouldTriggerNewExpressionHasProperty = (node) => {
|
|
|
44
43
|
// the default new ValidationPipe() seems to prevent the attack so we ignore calls with no parameters
|
|
45
44
|
// we also ignore parameters that are not explicit object expressions
|
|
46
45
|
// or if the properties are spread
|
|
47
|
-
if (newExpression.arguments
|
|
46
|
+
if (newExpression.arguments.length === 0 ||
|
|
48
47
|
newExpression.arguments[0].type !==
|
|
49
48
|
utils_1.TSESTree.AST_NODE_TYPES.ObjectExpression ||
|
|
50
49
|
newExpression.arguments[0].properties.some(utils_2.ASTUtils.isNodeOfType(utils_1.TSESTree.AST_NODE_TYPES.SpreadElement))) {
|
|
@@ -57,8 +56,8 @@ exports.shouldTriggerNewExpressionHasProperty = shouldTriggerNewExpressionHasPro
|
|
|
57
56
|
const shouldTriggerForVariableDeclaratorExpression = (node) => {
|
|
58
57
|
// if the developer hasn't annotated the object we can't continue to check these rules correctly (we don't know if anonymous objects need to have any props)
|
|
59
58
|
const variableDeclarator = node;
|
|
60
|
-
const asExpression = variableDeclarator
|
|
61
|
-
const typeAnnotation = asExpression
|
|
59
|
+
const asExpression = variableDeclarator.init;
|
|
60
|
+
const typeAnnotation = asExpression.typeAnnotation;
|
|
62
61
|
const typeName = typeAnnotation?.typeName;
|
|
63
62
|
if (typeName === undefined || typeName.name !== "ValidationPipeOptions") {
|
|
64
63
|
return false;
|
|
@@ -83,7 +82,6 @@ const rule = (0, createRule_1.createRule)({
|
|
|
83
82
|
defaultOptions: [],
|
|
84
83
|
create(context) {
|
|
85
84
|
return {
|
|
86
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
87
85
|
NewExpression(node) {
|
|
88
86
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
89
87
|
const result = (0, exports.shouldTriggerNewExpressionHasProperty)(node);
|
|
@@ -94,7 +92,6 @@ const rule = (0, createRule_1.createRule)({
|
|
|
94
92
|
});
|
|
95
93
|
}
|
|
96
94
|
},
|
|
97
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
98
95
|
VariableDeclarator(node) {
|
|
99
96
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
100
97
|
const result = (0, exports.shouldTriggerForVariableDeclaratorExpression)(node);
|
|
@@ -109,4 +106,4 @@ const rule = (0, createRule_1.createRule)({
|
|
|
109
106
|
},
|
|
110
107
|
});
|
|
111
108
|
exports.default = rule;
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvdWxkU3BlY2lmeUZvcmJpZFVua25vd25WYWx1ZXNSdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3J1bGVzL3Nob3VsZFNwZWNpZnlGb3JiaWRVbmtub3duVmFsdWVzL3Nob3VsZFNwZWNpZnlGb3JiaWRVbmtub3duVmFsdWVzUnVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvREFBa0Q7QUFDbEQsdURBQWtEO0FBQ2xELG9EQUFrRDtBQUUzQyxNQUFNLDZCQUE2QixHQUFHLENBQUMsSUFBbUIsRUFBVyxFQUFFO0lBQzFFLE1BQU0sYUFBYSxHQUFHLElBQThCLENBQUM7SUFDckQsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLE1BQTZCLENBQUM7SUFDM0QsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDLENBQUM7QUFQVyxRQUFBLDZCQUE2QixpQ0FPeEM7QUFDSyxNQUFNLHFCQUFxQixHQUFHLENBQ2pDLEVBQTZCLEVBQ3RCLEVBQUU7SUFDVCxJQUFJLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDTixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBQ0QsZ0ZBQWdGO0lBQ2hGLE1BQU0sMkJBQTJCLEdBQUcsRUFBRSxDQUFDLFVBQVU7U0FDNUMsTUFBTSxDQUFDLGdCQUFRLENBQUMsWUFBWSxDQUFDLGdCQUFRLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQy9ELElBQUksQ0FDRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUUsQ0FBQyxDQUFDLEdBQTJCLENBQUMsSUFBSSxLQUFLLHFCQUFxQixDQUNsRCxDQUFDO0lBQzNCLDBDQUEwQztJQUMxQyxJQUFJLEVBQUUsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDckMsT0FB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
|
|
@@ -70,7 +70,7 @@ exports.default = (0, createRule_1.createRule)({
|
|
|
70
70
|
options: defaultLocaleOptions,
|
|
71
71
|
}, contextWithoutDefaults);
|
|
72
72
|
const { locale } = context.options[0];
|
|
73
|
-
const sourceCode = context.
|
|
73
|
+
const sourceCode = context.sourceCode;
|
|
74
74
|
return {
|
|
75
75
|
[`${wellKnownSelectors_1.MODULE_CLASS_DECORATOR} Property > ArrayExpression`]({ elements, }) {
|
|
76
76
|
const unorderedNodes = elements
|
|
@@ -98,4 +98,4 @@ exports.default = (0, createRule_1.createRule)({
|
|
|
98
98
|
};
|
|
99
99
|
},
|
|
100
100
|
});
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydE1vZHVsZU1ldGFkYXRhQXJyYXlzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3J1bGVzL3NvcnRNb2R1bGVNZXRhZGF0YUFycmF5cy9zb3J0TW9kdWxlTWV0YWRhdGFBcnJheXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsb0RBQWtEO0FBQ2xELHVEQUFrRDtBQUNsRCx1RUFBc0U7QUFDdEUsb0RBQWtEO0FBRWxELDJJQUEySTtBQUUzSSxNQUFNLGNBQWMsR0FBRyxPQUFPLENBQUM7QUFZeEIsTUFBTSw2QkFBNkIsR0FBRyxDQUN6QyxJQUF5RCxFQUM3QixFQUFFO0lBQzlCLCtEQUErRDtJQUMvRCxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUk7UUFDVixnQkFBUSxDQUFDLGFBQWEsQ0FBQztZQUNuQixnQkFBUSxDQUFDLGNBQWMsQ0FBQyxVQUFVO1lBQ2xDLGdCQUFRLENBQUMsY0FBYyxDQUFDLGNBQWM7WUFDdEMsOERBQThEO1NBQ2pFLENBQUMsQ0FBUSxDQUFDLENBQUMseUJBQXlCO0FBQzdDLENBQUMsQ0FBQztBQVZXLFFBQUEsNkJBQTZCLGlDQVV4QztBQUNLLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxJQUFtQixFQUFFLEVBQUU7SUFDdkQsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBRXJCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxnQkFBUSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNuRCxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUM1QixDQUFDO0lBQ0QsSUFDSSxJQUFJLENBQUMsSUFBSSxLQUFLLGdCQUFRLENBQUMsY0FBYyxDQUFDLGNBQWM7UUFDcEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssZ0JBQVEsQ0FBQyxjQUFjLENBQUMsZ0JBQWdCO1FBQzdELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxnQkFBUSxD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
|
|
@@ -15,7 +15,7 @@ const shouldSetArrayProperty = (node) => {
|
|
|
15
15
|
if (decorators.length === 0) {
|
|
16
16
|
return new arraySetResultModel_1.default(false, false);
|
|
17
17
|
}
|
|
18
|
-
const firstArgumentToDecorator = decorators[0].expression
|
|
18
|
+
const firstArgumentToDecorator = decorators[0].expression.arguments[0];
|
|
19
19
|
const hasEachSetInOptions = typedTokenHelpers_1.typedTokenHelpers.getPropertyValueEqualsExpected(firstArgumentToDecorator, "each", true);
|
|
20
20
|
// handle string[] or Array<string>
|
|
21
21
|
const isArrayType = (node.typeAnnotation?.typeAnnotation)
|
|
@@ -42,7 +42,6 @@ const rule = (0, createRule_1.createRule)({
|
|
|
42
42
|
defaultOptions: [],
|
|
43
43
|
create(context) {
|
|
44
44
|
return {
|
|
45
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
46
45
|
PropertyDefinition: (node) => {
|
|
47
46
|
const shouldSetArrayResults = (0, exports.shouldSetArrayProperty)(node);
|
|
48
47
|
if (shouldSetArrayResults.isArrayShouldBeSetFalse) {
|
|
@@ -62,4 +61,4 @@ const rule = (0, createRule_1.createRule)({
|
|
|
62
61
|
},
|
|
63
62
|
});
|
|
64
63
|
exports.default = rule;
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVOZXN0ZWRPZkFycmF5U2hvdWxkU2V0RWFjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ydWxlcy92YWxpZGF0ZU5lc3RlZE9mQXJyYXlTaG91bGRTZXRFYWNoL3ZhbGlkYXRlTmVzdGVkT2ZBcnJheVNob3VsZFNldEVhY2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0RBQWtFO0FBQ2xFLHVEQUFrRDtBQUNsRCxxRUFBZ0U7QUFDaEUsZ0ZBQXdEO0FBRWpELE1BQU0sc0JBQXNCLEdBQUcsQ0FDbEMsSUFBaUMsRUFDZCxFQUFFO0lBQ3JCLE1BQU0sVUFBVSxHQUFHLHFDQUFpQixDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRTtRQUMxRCxnQkFBZ0I7S0FDbkIsQ0FBQyxDQUFDO0lBRUgsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQzFCLE9BQU8sSUFBSSw2QkFBbUIsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELE1BQU0sd0JBQXdCLEdBQzFCLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUNqQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQThCLENBQUM7SUFFNUMsTUFBTSxtQkFBbUIsR0FDckIscUNBQWlCLENBQUMsOEJBQThCLENBQzVDLHdCQUF3QixFQUN4QixNQUFNLEVBQ04sSUFBSSxDQUNQLENBQUM7SUFDTixtQ0FBbUM7SUFDbkMsTUFBTSxXQUFXLEdBRVQsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLGNBQTJDLENBQUE7U0FDNUQsUUFDUixFQUFFLElBQUksS0FBSyxPQUFPLENBQUM7SUFDeEIsTUFBTSxxQkFBcUIsR0FDdkIsSUFBSSxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsSUFBSSxLQUFLLHNCQUFjLENBQUMsV0FBVyxDQUFDO0lBQzVFLE1BQU0saUJBQWlCLEdBQUcsV0FBVyxJQUFJLHFCQUFxQixDQUFDO0lBRS9ELE9BQU8sSUFBSSw2QkFBbUIsQ0FDMUIsaUJBQWlCLElBQUksQ0FBQyxtQkFBbUIsRUFDekMsQ0FBQyxpQkFBaUIsSUFBSSxtQkFBbUIsQ0FDNUMsQ0FBQztBQUNOLENBQUMsQ0FBQztBQW5DVyxRQUFBLHNCQUFzQiwwQkFtQ2pDO0FBRUYsTUFBTSxJQUFJLEdBQUcsSUFBQSx1QkFBVSxFQUdyQjtJQUNFLElBQUksRUFBRSwwQ0FBMEM7SUFDaEQsSUFBSSxFQUFFO1FBQ0YsSUFBSSxFQUFFO1lBQ0YsV0FBVyxFQUNQLHFGQUFxRjtTQUM1RjtRQUNELFFBQVEsRUFBRTtZQUNOLHlCQUF5QixFQUFFLCtEQUErRDtZQUMxRiwwQkFBMEIsRUFBRSxrTEFBa0w7U0FDak47UUFDRCxNQUFNLEVBQUUsRUFBRTtRQUNWLGNBQWMsRUFBRSxLQUFLO1FBQ3JCLElBQUksRUFBRSxZQUFZO0tBQ3JCO0lBQ0QsY0FBYyxFQUFFLEVBQUU7SUFFbEIsTUFBTSxDQUFDLE9BQU87UUFDVixPQUFPO1lBQ0gsa0JBQWtCLEVBQUUsQ0FBQyxJQUFtQixFQUFFLEVBQUU7Z0JBQ3hDLE1BQU0scUJBQXFCLEdBQUcsSUFBQSw4QkFBc0IsRUFDaEQsSUFBbUMsQ0FDdEMsQ0FBQztnQkFFRixJQUFJLHFCQUFxQixDQUFDLHVCQUF1QixFQUFFLENBQUM7b0JBQ2hELE9BQU8sQ0FBQyxNQUFNLENBQUM7d0JBQ1gsSUFBSSxFQUFFLElBQUk7d0JBQ1YsU0FBUyxFQUFFLDRCQUE0QjtxQkFDMUMsQ0FBQyxDQUFDO2dCQUNQLENBQUM7Z0JBQ0QsSUFBSSxxQkFBcUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO29CQUMvQyxPQUFPLENBQUMsTUFBTSxDQUFDO3dCQUNYLElBQUksRUFBRSxJQUFJO3dCQUNWLFNBQVMsRUFBRSwyQkFBMkI7cUJBQ3pDLENBQUMsQ0FBQztnQkFDUCxDQUFDO1lBQ0wsQ0FBQztTQUNKLENBQUM7SUFDTixDQUFDO0NBQ0osQ0FBQyxDQUFDO0FBRUgsa0JBQWUsSUFBSSxDQUFDIn0=
|
package/dist/rules/validateNonPrimitiveNeedsTypeDecorator/validateNonPrimitiveNeedsDecorators.js
CHANGED
|
@@ -71,20 +71,18 @@ const rule = (0, createRule_1.createRule)({
|
|
|
71
71
|
const parserServices = utils_1.ESLintUtils.getParserServices(context);
|
|
72
72
|
const typeChecker = parserServices.program.getTypeChecker();
|
|
73
73
|
return {
|
|
74
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
75
74
|
PropertyDefinition(node) {
|
|
76
75
|
// if it's an array get the element type
|
|
77
76
|
let mainType;
|
|
78
77
|
const isAnArray = typedTokenHelpers_1.typedTokenHelpers.isTypeArrayTypeOrUnionOfArrayTypes(node, parserServices, typeChecker);
|
|
79
78
|
// this is getting very messy
|
|
80
79
|
if (isAnArray) {
|
|
81
|
-
const mainTypeInShortArray = node.typeAnnotation
|
|
82
|
-
?.typeAnnotation
|
|
83
|
-
// eslint-disable-next-line unicorn/no-negated-condition
|
|
80
|
+
const mainTypeInShortArray = (node.typeAnnotation
|
|
81
|
+
?.typeAnnotation).elementType?.type;
|
|
84
82
|
if (!mainTypeInShortArray) {
|
|
85
83
|
// try to get the type of Array<type> syntax
|
|
86
|
-
const foundParams = node.typeAnnotation
|
|
87
|
-
?.typeAnnotation
|
|
84
|
+
const foundParams = (node.typeAnnotation
|
|
85
|
+
?.typeAnnotation).typeArguments?.params;
|
|
88
86
|
if (foundParams && foundParams.length === 1) {
|
|
89
87
|
mainType = foundParams[0].type;
|
|
90
88
|
}
|
|
@@ -94,7 +92,7 @@ const rule = (0, createRule_1.createRule)({
|
|
|
94
92
|
}
|
|
95
93
|
}
|
|
96
94
|
else {
|
|
97
|
-
mainType = node.typeAnnotation?.typeAnnotation
|
|
95
|
+
mainType = node.typeAnnotation?.typeAnnotation.type;
|
|
98
96
|
}
|
|
99
97
|
if (!mainType) {
|
|
100
98
|
return;
|
|
@@ -106,8 +104,8 @@ const rule = (0, createRule_1.createRule)({
|
|
|
106
104
|
}
|
|
107
105
|
// property is a union with primitive type - no need to validate
|
|
108
106
|
const isNodeAUnionWithAPrimitive = mainType === utils_1.AST_NODE_TYPES.TSUnionType &&
|
|
109
|
-
|
|
110
|
-
?.typeAnnotation
|
|
107
|
+
node.typeAnnotation
|
|
108
|
+
?.typeAnnotation?.types?.some((x) => primitiveTypes.has(x.type));
|
|
111
109
|
if (isNodeAUnionWithAPrimitive) {
|
|
112
110
|
return;
|
|
113
111
|
}
|
|
@@ -155,8 +153,8 @@ const rule = (0, createRule_1.createRule)({
|
|
|
155
153
|
utils_1.AST_NODE_TYPES.Identifier) {
|
|
156
154
|
typeIdentifier = typeAnnotationNode.typeName.name;
|
|
157
155
|
if (typeAnnotationNode.typeName.name === "Array") {
|
|
158
|
-
const foundParams = node.typeAnnotation
|
|
159
|
-
?.typeAnnotation
|
|
156
|
+
const foundParams = (node.typeAnnotation
|
|
157
|
+
?.typeAnnotation).typeArguments?.params;
|
|
160
158
|
if (foundParams && foundParams.length === 1) {
|
|
161
159
|
const typeName = foundParams[0].typeName;
|
|
162
160
|
if (typeName.type ===
|
|
@@ -204,4 +202,4 @@ const rule = (0, createRule_1.createRule)({
|
|
|
204
202
|
},
|
|
205
203
|
});
|
|
206
204
|
exports.default = rule;
|
|
207
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
205
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGVOb25QcmltaXRpdmVOZWVkc0RlY29yYXRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVsZXMvdmFsaWRhdGVOb25QcmltaXRpdmVOZWVkc1R5cGVEZWNvcmF0b3IvdmFsaWRhdGVOb25QcmltaXRpdmVOZWVkc0RlY29yYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsa0RBQWtEO0FBQ2xELG9EQUErRTtBQUMvRSx1REFBa0Q7QUFDbEQscUVBQWdFO0FBR2hFLE1BQU0sY0FBYyxHQUFHLElBQUksR0FBRyxDQUFDO0lBQzNCLHNCQUFjLENBQUMsZUFBZTtJQUM5QixzQkFBYyxDQUFDLGdCQUFnQjtJQUMvQixzQkFBYyxDQUFDLGVBQWU7SUFDOUIsc0JBQWMsQ0FBQyxhQUFhO0lBQzVCLHNCQUFjLENBQUMsYUFBYTtJQUM1QixzQkFBYyxDQUFDLGdCQUFnQjtJQUMvQixzQkFBYyxDQUFDLFlBQVk7SUFDM0Isc0JBQWMsQ0FBQyxlQUFlO0NBQ2pDLENBQUMsQ0FBQztBQU9JLE1BQU0sYUFBYSxHQUFHLEdBQVksRUFBRTtJQUN2QyxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDLENBQUM7QUFGVyxRQUFBLGFBQWEsaUJBRXhCO0FBRUYsTUFBTSxJQUFJLEdBQUcsSUFBQSx1QkFBVSxFQUdyQjtJQUNFLElBQUksRUFBRSx1REFBdUQ7SUFDN0QsSUFBSSxFQUFFO1FBQ0YsSUFBSSxFQUFFO1lBQ0YsV0FBVyxFQUNQLGdGQUFnRjtTQUN2RjtRQUNELFFBQVEsRUFBRTtZQUNOLHdCQUF3QixFQUNwQix3RUFBd0U7WUFDNUUsc0JBQXNCLEVBQ2xCLDhKQUE4SjtTQUNySztRQUNELE1BQU0sRUFBRTtZQUNKO2dCQUNJLElBQUksRUFBRSxRQUErQjtnQkFDckMsVUFBVSxFQUFFO29CQUNSLHdCQUF3QixFQUFFO3dCQUN0QixXQUFXLEVBQ1Asc0VBQXNFO3dCQUMxRSxJQUFJLEVBQUUsT0FBOEI7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
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.getFixturesRootDirectory = getFixturesRootDirectory;
|
|
7
7
|
const path_1 = __importDefault(require("path"));
|
|
8
8
|
function getFixturesRootDirectory() {
|
|
9
|
-
// eslint-disable-next-line unicorn/prefer-module
|
|
10
9
|
return path_1.default.join(__dirname, "..", "fixtures");
|
|
11
10
|
}
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4dHVyZVNldHVwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3RpbmcvZml4dHVyZVNldHVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsNERBRUM7QUFKRCxnREFBd0I7QUFFeEIsU0FBZ0Isd0JBQXdCO0lBQ3BDLE9BQU8sY0FBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ2xELENBQUMifQ==
|
package/dist/utils/createRule.js
CHANGED
|
@@ -3,8 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createRule = void 0;
|
|
4
4
|
const utils_1 = require("@typescript-eslint/utils");
|
|
5
5
|
// Note - cannot migrate this to an import statement because it will make TSC copy the package.json to the dist folder
|
|
6
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires, unicorn/prefer-module
|
|
7
6
|
//const {version} = require("../../package.json");
|
|
8
|
-
// eslint-disable-next-line new-cap
|
|
9
7
|
exports.createRule = utils_1.ESLintUtils.RuleCreator((name) => `https://github.com/darraghoriordan/eslint-plugin-nestjs-typed/blob/main/src/docs/rules/${name}.md`);
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlUnVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9jcmVhdGVSdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9EQUFxRDtBQUVyRCxzSEFBc0g7QUFFdEgsa0RBQWtEO0FBRXJDLFFBQUEsVUFBVSxHQUFHLG1CQUFXLENBQUMsV0FBVyxDQUM3QyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ0wsMEZBQTBGLElBQUksS0FBSyxDQUMxRyxDQUFDIn0=
|
|
@@ -0,0 +1,36 @@
|
|
|
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.FileEnumerator = void 0;
|
|
7
|
+
const glob_1 = require("glob");
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
9
|
+
const isFilteredPath_1 = __importDefault(require("./isFilteredPath"));
|
|
10
|
+
// eslint-disable-next-line @typescript-eslint/no-extraneous-class
|
|
11
|
+
class FileEnumerator {
|
|
12
|
+
static enumerateFiles(sourceGlobs, extensions, filterFromPaths) {
|
|
13
|
+
// Create glob pattern that includes extensions
|
|
14
|
+
const patterns = sourceGlobs.flatMap((pattern) => {
|
|
15
|
+
if (path_1.default.extname(pattern)) {
|
|
16
|
+
return pattern;
|
|
17
|
+
}
|
|
18
|
+
return extensions.map((extension) => `${pattern}/**/*${extension}`);
|
|
19
|
+
});
|
|
20
|
+
// Find all files matching the patterns
|
|
21
|
+
const files = glob_1.glob.sync(patterns, {
|
|
22
|
+
ignore: ["**/node_modules/**"],
|
|
23
|
+
nodir: true,
|
|
24
|
+
});
|
|
25
|
+
// Map to the expected format and filter
|
|
26
|
+
return files
|
|
27
|
+
.map((filePath) => ({
|
|
28
|
+
ignored: false, // You can implement custom ignore logic if needed
|
|
29
|
+
filename: filePath,
|
|
30
|
+
}))
|
|
31
|
+
.filter((file) => !isFilteredPath_1.default.test(file.filename, filterFromPaths));
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.FileEnumerator = FileEnumerator;
|
|
35
|
+
exports.default = FileEnumerator;
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tRmlsZUVudW1lcmF0b3JXcmFwcGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2ZpbGVzL2N1c3RvbUZpbGVFbnVtZXJhdG9yV3JhcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwrQkFBMEI7QUFDMUIsZ0RBQXdCO0FBQ3hCLHNFQUE4QztBQU85QyxrRUFBa0U7QUFDbEUsTUFBYSxjQUFjO0lBQ3ZCLE1BQU0sQ0FBQyxjQUFjLENBQ2pCLFdBQXFCLEVBQ3JCLFVBQW9CLEVBQ3BCLGVBQXlCO1FBRXpCLCtDQUErQztRQUMvQyxNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDN0MsSUFBSSxjQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ3hCLE9BQU8sT0FBTyxDQUFDO1lBQ25CLENBQUM7WUFDRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQ2pCLENBQUMsU0FBaUIsRUFBRSxFQUFFLENBQUMsR0FBRyxPQUFPLFFBQVEsU0FBUyxFQUFFLENBQ3ZELENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUVILHVDQUF1QztRQUN2QyxNQUFNLEtBQUssR0FBRyxXQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUM5QixNQUFNLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztZQUM5QixLQUFLLEVBQUUsSUFBSTtTQUNkLENBQUMsQ0FBQztRQUVILHdDQUF3QztRQUN4QyxPQUFPLEtBQUs7YUFDUCxHQUFHLENBQ0EsQ0FBQyxRQUFRLEVBQVksRUFBRSxDQUFDLENBQUM7WUFDckIsT0FBTyxFQUFFLEtBQUssRUFBRSxrREFBa0Q7WUFDbEUsUUFBUSxFQUFFLFFBQVE7U0FDckIsQ0FBQyxDQUNMO2FBQ0EsTUFBTSxDQUNILENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLHdCQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQ2pFLENBQUM7SUFDVixDQUFDO0NBQ0o7QUFsQ0Qsd0NBa0NDO0FBRUQsa0JBQWUsY0FBYyxDQUFDIn0=
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
// eslint-disable-next-line
|
|
3
|
+
// eslint-disable-next-line @typescript-eslint/no-extraneous-class
|
|
4
4
|
class IsFilteredPath {
|
|
5
5
|
}
|
|
6
6
|
IsFilteredPath.test = (path, filteredStrings) => {
|
|
@@ -13,4 +13,4 @@ IsFilteredPath.test = (path, filteredStrings) => {
|
|
|
13
13
|
return hasFoundFilter ?? false;
|
|
14
14
|
};
|
|
15
15
|
exports.default = IsFilteredPath;
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXNGaWx0ZXJlZFBhdGguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdXRpbHMvZmlsZXMvaXNGaWx0ZXJlZFBhdGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxrRUFBa0U7QUFDbEUsTUFBTSxjQUFjOztBQUNULG1CQUFJLEdBQUcsQ0FDVixJQUF3QixFQUN4QixlQUFxQyxFQUM5QixFQUFFO0lBQ1QsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ1IsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUNELE1BQU0sY0FBYyxHQUFHLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQyxPQUFlLEVBQUUsRUFBRTtRQUM3RCxPQUFPLElBQUksTUFBTSxDQUFDLElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakQsQ0FBQyxDQUFDLENBQUM7SUFDSCxPQUFPLGNBQWMsSUFBSSxLQUFLLENBQUM7QUFDbkMsQ0FBQyxDQUFDO0FBR04sa0JBQWUsY0FBYyxDQUFDIn0=
|
|
@@ -22,16 +22,14 @@ exports.nestModuleAstParser = {
|
|
|
22
22
|
},
|
|
23
23
|
mapNestModuleDecorator(n, path) {
|
|
24
24
|
// The nest module decorator is called "Module"
|
|
25
|
-
const moduleDecorator = n.decorators
|
|
26
|
-
.callee
|
|
25
|
+
const moduleDecorator = n.decorators.find((d) => d.expression
|
|
26
|
+
.callee.name === "Module");
|
|
27
27
|
if (moduleDecorator) {
|
|
28
28
|
const mappedControllerElements = this.mapModuleDecoratorOptionProperty(moduleDecorator, "controllers");
|
|
29
29
|
const mappedProviderElements = this.mapModuleDecoratorOptionProperty(moduleDecorator, "providers");
|
|
30
30
|
const nestModuleMap = [
|
|
31
31
|
path,
|
|
32
|
-
new NestProvidedInjectablesMap_1.NestProvidedInjectablesMap(
|
|
33
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
34
|
-
mappedControllerElements, mappedProviderElements),
|
|
32
|
+
new NestProvidedInjectablesMap_1.NestProvidedInjectablesMap(mappedControllerElements, mappedProviderElements),
|
|
35
33
|
];
|
|
36
34
|
return nestModuleMap;
|
|
37
35
|
}
|
|
@@ -46,10 +44,10 @@ exports.nestModuleAstParser = {
|
|
|
46
44
|
// or a variable e.g. myProp = someArray
|
|
47
45
|
// - this only supports array expressions for now!
|
|
48
46
|
const propertyAsArrayExpressionElements = optionProperty
|
|
49
|
-
.value
|
|
47
|
+
.value.elements || [];
|
|
50
48
|
return new Set(propertyAsArrayExpressionElements.map((element) => element.name));
|
|
51
49
|
}
|
|
52
50
|
return new Set();
|
|
53
51
|
},
|
|
54
52
|
};
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdE1vZHVsZUFzdFBhcnNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9uZXN0TW9kdWxlcy9uZXN0TW9kdWxlQXN0UGFyc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9EQUFrRTtBQUNsRSxvRkFBK0U7QUFFbEUsUUFBQSxtQkFBbUIsR0FBRztJQUMvQixtQkFBbUIsQ0FDZixHQUFxQjtRQUVyQixLQUFLLE1BQU0sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN2Qix1REFBdUQ7WUFDdkQsSUFDSSxDQUFDLENBQUMsSUFBSSxLQUFLLHNCQUFjLENBQUMsZ0JBQWdCO2dCQUMxQyxDQUFDLENBQUMsVUFBVTtnQkFDWixDQUFDLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQ3pCLENBQUM7Z0JBQ0MsT0FBTyxDQUFDLENBQUM7WUFDYixDQUFDO1lBRUQsSUFDSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssc0JBQWMsQ0FBQyxzQkFBc0I7Z0JBQzdDLENBQUMsQ0FBQyxJQUFJLEtBQUssc0JBQWMsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDdkQsQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLEtBQUssc0JBQWMsQ0FBQyxnQkFBZ0IsRUFDekQsQ0FBQztnQkFDQyxPQUFPLENBQUMsQ0FBQyxXQUFXLENBQUM7WUFDekIsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsc0JBQXNCLENBQ2xCLENBQTRCLEVBQzVCLElBQVk7UUFFWiwrQ0FBK0M7UUFDL0MsTUFBTSxlQUFlLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3JDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FFRyxDQUFDLENBQUMsVUFBc0M7YUFDcEMsTUFDUixDQUFDLElBQUksS0FBSyxRQUFRLENBQzFCLENBQUM7UUFDRixJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ2xCLE1BQU0sd0JBQXdCLEdBQzFCLElBQUksQ0FBQyxnQ0FBZ0MsQ0FDakMsZUFBZSxFQUNmLGFBQWEsQ0FDaEIsQ0FBQztZQUNOLE1BQU0sc0JBQXNCLEdBQ3hCLElBQUksQ0FBQyxnQ0FBZ0MsQ0FDakMsZUFBZSxFQUNmLFdBQVcsQ0FDZCxDQUFDO1lBRU4sTUFBTSxhQUFhLEdBQXlDO2dCQUN4RCxJQUFJO2dCQUNKLElBQUksdURBQTBCLENBQzFCLHdCQUF3QixFQUN4QixzQkFBc0IsQ0FDekI7YUFDSixDQUFDO1lBQ0YsT0FBTyxhQUFhLENBQUM7UUFDekIsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxnQ0FBZ0MsQ0FDNUIsZUFBbUMsRUFDbkMsWUFBb0I7UUFFcEIsTUFBTSxjQUFjLEdBQ2YsZUFBZSxDQUFDLFVBQWlEO2FBQzdELFNBQVMsQ0FBQyxDQUFDLENBQ25CLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDYixDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0EsQ0FBdUIsQ0FBQyxHQUEyQixDQUFDLElBQUk7WUFDMUQsWUFBWSxDQUNuQixDQUFDO1FBRUYsSUFBSSxjQUFjLEVBQUUsQ0FBQztZQUNqQix5REFBeUQ7WUFDekQsd0NBQXdDO1lBQ3hDLGtEQUFrRDtZQUVsRCxNQUFNLGlDQUFpQyxHQUU5QixjQUErQztpQkFDM0MsS0FDUixDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7WUFFckIsT0FBTyxJQUFJLEdBQUcsQ0FDVixpQ0FBaUMsQ0FBQyxHQUFHLENBQ2pDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBRSxPQUErQixDQUFDLElBQUksQ0FDckQsQ0FDSixDQUFDO1FBQ04sQ0FBQztRQUVELE9BQU8sSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0NBQ0osQ0FBQyJ9
|
|
@@ -93,12 +93,7 @@ const NestProvidedInjectableMapper = {
|
|
|
93
93
|
},
|
|
94
94
|
mapAllProvidedInjectables(ast, path) {
|
|
95
95
|
try {
|
|
96
|
-
|
|
97
|
-
if (
|
|
98
|
-
// eslint-disable-next-line no-constant-condition, @typescript-eslint/ban-ts-comment
|
|
99
|
-
// @ts-ignore
|
|
100
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call
|
|
101
|
-
!unambiguous.isModule(ast)) {
|
|
96
|
+
if (!unambiguous.isModule(ast)) {
|
|
102
97
|
return null;
|
|
103
98
|
}
|
|
104
99
|
// This does too much and should probably be split up
|
|
@@ -131,4 +126,4 @@ const NestProvidedInjectableMapper = {
|
|
|
131
126
|
},
|
|
132
127
|
};
|
|
133
128
|
exports.default = NestProvidedInjectableMapper;
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdFByb3ZpZGVkSW5qZWN0YWJsZU1hcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9uZXN0TW9kdWxlcy9uZXN0UHJvdmlkZWRJbmplY3RhYmxlTWFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsNkRBQTZEO0FBQzdELGFBQWE7QUFDYiw2RUFBK0Q7QUFDL0QsNENBQW9CO0FBQ3BCLDREQUF1RDtBQUV2RCwrREFBMEQ7QUFDMUQsbUVBQThEO0FBRTlELE1BQU0sMENBQTBDLEdBQUcsSUFBSSxHQUFHLENBQUM7SUFDdkQsYUFBYSxFQUFFLFlBQVk7SUFDM0IsaUJBQWlCLEVBQUUsbUJBQW1CO0lBQ3RDLGVBQWUsRUFBRSxvQkFBb0I7SUFDckMsZ0JBQWdCLEVBQUUsZ0JBQWdCO0NBQ3JDLENBQUMsQ0FBQztBQUNILE1BQU0sNEJBQTRCLEdBQUc7SUFDakMsNkJBQTZCLENBQ3pCLFVBQXlDLEVBQ3pDLHVCQUErQjtRQUUvQixJQUFJLFVBQVUsSUFBSSxPQUFPLFVBQVUsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUMvQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEIsQ0FBQztRQUVELElBQUksVUFBVSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUMxQyxPQUFPLFVBQVUsQ0FBQztRQUN0QixDQUFDO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FDVCxnR0FBZ0csRUFDaEcsRUFBQyx1QkFBdUIsRUFBQyxDQUM1QixDQUFDO1FBQ0YsT0FBTyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUNELGFBQWEsQ0FDVCxLQUdHO0lBQ0gsOERBQThEO0lBQzlELE9BQW1EO1FBRW5ELE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxFQUFzQyxDQUFDO1FBQ2pFLEtBQUs7YUFDQSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNQLE1BQU0sWUFBWSxHQUNkLDRCQUE0QixDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUU5RCxNQUFNLGFBQWEsR0FBRyxxQ0FBaUIsQ0FBQyxnQkFBZ0IsQ0FDcEQsWUFBWSxFQUNaLENBQUMsQ0FBQyxRQUFRLEVBQ1YsT0FBTyxDQUNWLENBQUM7WUFFRixPQUFPLDRCQUE0QixDQUFDLHlCQUF5QixDQUN6RCxhQUFhLEVBQ2IsQ0FBQyxDQUFDLFFBQVEsQ0FDYixDQUFDO1FBQ04sQ0FBQyxDQUFDO1lBQ0YsNkRBQTZEO2FBQzVELE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxRQUFRLENBQUM7YUFDN0MsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWhELE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFDRCxRQUFRLENBQVMsS0FBb0I7UUFDakMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDeEQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQVk7UUFDekIsT0FBTyxZQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxFQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxtQ0FBbUMsQ0FDL0IsSUFBK0I7UUFFL0IsS0FBSyxNQUFNLGVBQWUsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ2xELElBQ0ksMENBQTBDLENBQUMsR0FBRyxDQUN6QyxlQUFlLENBQUMsVUFBa0MsQ0FBQyxJQUFJLENBQzNELEVBQ0gsQ0FBQztnQkFDQyxPQUFPLElBQUksQ0FBQztZQUNoQixDQUFDO1FBQ0wsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFDRCx5QkFBeUIsQ0FDckIsR0FBcUIsRUFDckIsSUFBWTtRQUVaLElBQUksQ0FBQztZQUNELElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLE9BQU8sSUFBSSxDQUFDO1lBQ2hCLENBQUM7WUFDRCxxREFBcUQ7WUFDckQsNkZBQTZGO1lBQzdGLDJFQUEyRTtZQUUzRSw0QkFBNEI7WUFDNUIsSUFBSSxhQUFhLEdBQ2IsSUFBSSxDQUFDO1lBRVQsb0JBQW9CO1lBQ3BCLE1BQU0sb0JBQW9CLEdBQ3RCLHlDQUFtQixDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRWpELElBQUksb0JBQW9CLEVBQUUsQ0FBQztnQkFDdkIsYUFBYSxHQUFHLHlDQUFtQixDQUFDLHNCQUFzQixDQUN0RCxvQkFBb0IsRUFDcEIsSUFBSSxDQUNQLENBQUM7Z0JBQ0YsT0FBTyxhQUFhLENBQUM7WUFDekIsQ0FBQztZQUVELDRFQUE0RTtZQUM1RSwwRkFBMEY7WUFDMUYsdURBQXVEO1lBRXZELE1BQU0sd0JBQXdCLEdBQzFCLDZDQUFxQixDQUFDLG1DQUFtQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBRW5FLE1BQU0sZUFBZSxHQUFHLDZDQUFxQixDQUFDLG1CQUFtQixDQUM3RCx3QkFBd0IsRUFDeEIsU0FBUyxDQUNaLENBQUM7WUFDRixJQUFJLGVBQWUsRUFBRSxDQUFDO2dCQUNsQixhQUFhLEdBQUcsNkNBQXFCLENBQUMscUJBQXFCLENBQ3ZELGVBQWUsRUFDZixJQUFJLENBQ1AsQ0FBQztZQUNOLENBQUM7WUFDRCxPQUFPLGFBQWEsQ0FBQztRQUN6QixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNiLE9BQU8sQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMzQyx3QkFBd0I7WUFDeEIsOEJBQThCO1lBQzlCLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7SUFDTCxDQUFDO0NBQ0osQ0FBQztBQUVGLGtCQUFlLDRCQUE0QixDQUFDIn0=
|
|
@@ -5,8 +5,7 @@ const utils_1 = require("@typescript-eslint/utils");
|
|
|
5
5
|
const NestProvidedInjectablesMap_1 = require("./models/NestProvidedInjectablesMap");
|
|
6
6
|
exports.nestProviderAstParser = {
|
|
7
7
|
mapNestProviderObject(n, path) {
|
|
8
|
-
|
|
9
|
-
const propertyName = n.value.name;
|
|
8
|
+
const propertyName = n.value?.name;
|
|
10
9
|
if (propertyName) {
|
|
11
10
|
return [
|
|
12
11
|
path,
|
|
@@ -17,9 +16,7 @@ exports.nestProviderAstParser = {
|
|
|
17
16
|
},
|
|
18
17
|
findProvideProperty(providerDeclaration, propertyName) {
|
|
19
18
|
if (providerDeclaration) {
|
|
20
|
-
const foundProviderProperty = providerDeclaration.init.properties.find((p) =>
|
|
21
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
22
|
-
p.key
|
|
19
|
+
const foundProviderProperty = providerDeclaration.init.properties.find((p) => p.key
|
|
23
20
|
.name === propertyName);
|
|
24
21
|
return foundProviderProperty;
|
|
25
22
|
}
|
|
@@ -55,4 +52,4 @@ exports.nestProviderAstParser = {
|
|
|
55
52
|
return undefined;
|
|
56
53
|
},
|
|
57
54
|
};
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdFByb3ZpZGVyQXN0UGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL25lc3RNb2R1bGVzL25lc3RQcm92aWRlckFzdFBhcnNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvREFBa0U7QUFDbEUsb0ZBQStFO0FBRWxFLFFBQUEscUJBQXFCLEdBQUc7SUFDakMscUJBQXFCLENBQ2pCLENBQW9CLEVBQ3BCLElBQVk7UUFFWixNQUFNLFlBQVksR0FBSSxDQUFDLENBQUMsS0FBNkIsRUFBRSxJQUFJLENBQUM7UUFDNUQsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNmLE9BQU87Z0JBQ0gsSUFBSTtnQkFDSixJQUFJLHVEQUEwQixDQUMxQixJQUFJLEdBQUcsRUFBRSxFQUNULElBQUksR0FBRyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FDMUI7YUFDSixDQUFDO1FBQ04sQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxtQkFBbUIsQ0FDZixtQkFBNEQsRUFDNUQsWUFBb0I7UUFFcEIsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1lBQ3RCLE1BQU0scUJBQXFCLEdBQ3ZCLG1CQUFtQixDQUFDLElBQ3ZCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDYixDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0EsQ0FBdUIsQ0FBQyxHQUEyQjtpQkFDaEQsSUFBSSxLQUFLLFlBQVksQ0FDWixDQUFDO1lBQ3ZCLE9BQU8scUJBQXFCLENBQUM7UUFDakMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxtQ0FBbUMsQ0FDL0IsR0FBcUI7UUFFckIsS0FBSyxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdkIsSUFDSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssc0JBQWMsQ0FBQyxzQkFBc0I7Z0JBQzdDLENBQUMsQ0FBQyxJQUFJLEtBQUssc0JBQWMsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDdkQsQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLEtBQUssc0JBQWMsQ0FBQyxtQkFBbUIsRUFDNUQsQ0FBQztnQkFDQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLElBQUksQ0FDdkQsQ0FBQyxDQUFDLEVBQUUsRUFBRTtvQkFDRixNQUFNLGtCQUFrQixHQUNwQixDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssc0JBQWMsQ0FBQyxrQkFBa0I7d0JBQ3pDLDREQUE0RDt3QkFDNUQsQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJOzRCQUNSLHNCQUFjLENBQUMsZ0JBQWdCLENBQUM7d0JBQ3hDLEtBQUssQ0FBQztvQkFFVixNQUFNLGtCQUFrQixHQUNwQixrQkFBa0I7d0JBRWQsQ0FBQyxDQUFDLElBQ0wsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7NEJBQzNCLE9BQU8sQ0FDSCxDQUFDLFFBQVEsQ0FBQyxJQUFJO2dDQUNWLHNCQUFjLENBQUMsUUFBUTtnQ0FDdkIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJO29DQUNiLHNCQUFjLENBQUMsVUFBVTtnQ0FDN0IsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssU0FBUztnQ0FDL0IsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJO29DQUNmLHNCQUFjLENBQUMsVUFBVSxDQUFDO2dDQUNsQyxLQUFLLENBQ1IsQ0FBQzt3QkFDTixDQUFDLENBQUMsQ0FBQztvQkFDUCxPQUFPLGtCQUFrQixDQUFDO2dCQUM5QixDQUFDLENBQ0osQ0FBQztnQkFFRixPQUFPLG1CQUFtQixDQUFDO1lBQy9CLENBQUM7UUFDTCxDQUFDO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztDQUNKLENBQUMifQ==
|
|
@@ -40,7 +40,8 @@ exports.typedTokenHelpers = void 0;
|
|
|
40
40
|
const utils_1 = require("@typescript-eslint/utils");
|
|
41
41
|
const parser_1 = require("@typescript-eslint/parser");
|
|
42
42
|
const typescript_1 = __importDefault(require("typescript"));
|
|
43
|
-
const
|
|
43
|
+
const tsutilsImp = __importStar(require("ts-api-utils"));
|
|
44
|
+
const tsutils = tsutilsImp;
|
|
44
45
|
exports.typedTokenHelpers = {
|
|
45
46
|
decoratorsThatCouldMeanTheDevIsValidatingAnArray: [
|
|
46
47
|
"IsArray",
|
|
@@ -52,8 +53,8 @@ exports.typedTokenHelpers = {
|
|
|
52
53
|
"ArrayUnique",
|
|
53
54
|
],
|
|
54
55
|
isTypeArrayTypeOrUnionOfArrayTypes(node, parserService, checker) {
|
|
55
|
-
if (node?.typeAnnotation
|
|
56
|
-
|
|
56
|
+
if (node.typeAnnotation?.typeAnnotation
|
|
57
|
+
.type === utils_1.TSESTree.AST_NODE_TYPES.TSArrayType) {
|
|
57
58
|
return true;
|
|
58
59
|
}
|
|
59
60
|
const nodeType = this.getNodeType(node, parserService, checker);
|
|
@@ -83,7 +84,7 @@ exports.typedTokenHelpers = {
|
|
|
83
84
|
didMatchExpectedValues =
|
|
84
85
|
foundPropertyOfName !== undefined &&
|
|
85
86
|
foundPropertyOfName.type === utils_1.TSESTree.AST_NODE_TYPES.Property &&
|
|
86
|
-
foundPropertyOfName.value
|
|
87
|
+
foundPropertyOfName.value.value ===
|
|
87
88
|
expectedValue;
|
|
88
89
|
}
|
|
89
90
|
return didMatchExpectedValues;
|
|
@@ -98,11 +99,11 @@ exports.typedTokenHelpers = {
|
|
|
98
99
|
return decorators.length > 0;
|
|
99
100
|
},
|
|
100
101
|
getDecoratorsNamed(n, decoratorNames) {
|
|
101
|
-
const decorators = n.decorators
|
|
102
|
+
const decorators = n.decorators.filter((d) => {
|
|
102
103
|
const factoryMethodDecoratorIdentifier = d.expression
|
|
103
104
|
.callee?.name;
|
|
104
105
|
const decoratorIdentifier = d.expression
|
|
105
|
-
|
|
106
|
+
.name;
|
|
106
107
|
return decoratorNames.includes(factoryMethodDecoratorIdentifier ?? decoratorIdentifier ?? "");
|
|
107
108
|
});
|
|
108
109
|
return decorators || [];
|
|
@@ -194,7 +195,7 @@ exports.typedTokenHelpers = {
|
|
|
194
195
|
getValidationDecorators(node, additionalCustomValidatorDecorators = []) {
|
|
195
196
|
const program = exports.typedTokenHelpers.getRootProgram(node);
|
|
196
197
|
const { decorators } = node;
|
|
197
|
-
return (decorators
|
|
198
|
+
return (decorators.filter((decorator) => {
|
|
198
199
|
const isClassValidatorDecorator = exports.typedTokenHelpers.decoratorIsClassValidatorDecorator(program, decorator);
|
|
199
200
|
const decoratorName = exports.typedTokenHelpers.getDecoratorName(decorator);
|
|
200
201
|
const isCustomClassValidatorDecorator = decoratorName === null
|
|
@@ -234,4 +235,4 @@ exports.typedTokenHelpers = {
|
|
|
234
235
|
return decorator.expression.callee.name;
|
|
235
236
|
},
|
|
236
237
|
};
|
|
237
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
238
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWRUb2tlbkhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvdHlwZWRUb2tlbkhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsb0RBQTRFO0FBQzVFLHNEQUFnRTtBQUNoRSw0REFBNEI7QUFDNUIseURBQTJDO0FBRTNDLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQztBQUVkLFFBQUEsaUJBQWlCLEdBQUc7SUFDN0IsZ0RBQWdELEVBQUU7UUFDOUMsU0FBUztRQUNULGNBQWM7UUFDZCxjQUFjO1FBQ2QsZUFBZTtRQUNmLGtCQUFrQjtRQUNsQixlQUFlO1FBQ2YsYUFBYTtLQUNoQjtJQUNELGtDQUFrQyxDQUM5QixJQUFtQixFQUNuQixhQUE2QixFQUM3QixPQUF1QjtRQUV2QixJQUNLLElBQW9DLENBQUMsY0FBYyxFQUFFLGNBQWM7YUFDL0QsSUFBSSxLQUFLLGdCQUFRLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFDbkQsQ0FBQztZQUNDLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDaEUsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDaEMsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUNELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQzFCLE9BQU8sS0FBSyxDQUFDO1lBQ2pCLENBQUM7UUFDTCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNE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
|