@darraghor/eslint-plugin-nestjs-typed 3.22.5 → 4.0.0
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 +24 -22
- package/dist/fixtures/example.controller.js +3 -4
- package/dist/fixtures/example.module.js +3 -4
- package/dist/fixtures/file.js +2 -1
- package/dist/fixtures/providerArray.module.js +3 -4
- package/dist/rules/allPropertiesAreWhitelisted/allPropertiesAreWhitelisted.js +3 -5
- package/dist/rules/allPropertiesHaveExplicitDefined/allPropertiesHaveExplicitDefined.js +6 -8
- package/dist/rules/apiEnumPropertyBestPractices/apiEnumPropertyBestPractices.js +1 -2
- package/dist/rules/apiMethodsShouldBeGuarded/apiMethodsShouldBeGuarded.js +3 -3
- 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 +8 -7
- package/dist/rules/controllerDecoratedHasApiTags/controllerDecoratedHasApiTags.js +1 -2
- package/dist/rules/injectablesShouldBeProvided/injectableShouldBeProvided.js +18 -11
- package/dist/rules/paramDecoratorNameMatchesRouteParam/paramDecoratorNameMatchesRouteParam.js +25 -26
- package/dist/rules/providerInjectedShouldMatchFactory/ProviderInjectedShouldMatchFactory.js +7 -7
- package/dist/rules/shouldSpecifyForbidUnknownValues/shouldSpecifyForbidUnknownValuesRule.js +16 -15
- package/dist/rules/sortModuleMetadataArrays/sortModuleMetadataArrays.js +20 -12
- package/dist/rules/validateNestedOfArrayShouldSetEach/validateNestedOfArrayShouldSetEach.js +5 -7
- package/dist/rules/validateNonPrimitiveNeedsTypeDecorator/validateNonPrimitiveNeedsDecorators.js +15 -10
- package/dist/utils/files/fileEnumerationWrapper.js +1 -1
- package/dist/utils/files/isFilteredPath.js +2 -2
- package/dist/utils/nestModules/nestModuleAstParser.js +6 -12
- package/dist/utils/nestModules/nestProvidedInjectableMapper.js +6 -2
- package/dist/utils/nestModules/nestProviderAstParser.js +3 -5
- package/dist/utils/typedTokenHelpers.js +20 -23
- package/package.json +20 -21
- package/dist/configs/index.d.ts +0 -44
- package/dist/configs/noSwagger.d.ts +0 -15
- package/dist/configs/recommended.d.ts +0 -28
- package/dist/fixtures/Controller.stub.d.ts +0 -1
- package/dist/fixtures/Injectable.stub.d.ts +0 -1
- package/dist/fixtures/Module.stub.d.ts +0 -1
- package/dist/fixtures/NonFactoryDecorator.stub.d.ts +0 -1
- package/dist/fixtures/example.controller.d.ts +0 -2
- package/dist/fixtures/example.customprovider.d.ts +0 -5
- package/dist/fixtures/example.module.d.ts +0 -2
- package/dist/fixtures/example.providedClass.provider.d.ts +0 -3
- package/dist/fixtures/example.provider.d.ts +0 -3
- package/dist/fixtures/file.d.ts +0 -0
- package/dist/fixtures/providerArray.module.d.ts +0 -2
- package/dist/index.d.ts +0 -103
- package/dist/rules/allPropertiesAreWhitelisted/allPropertiesAreWhitelisted.d.ts +0 -5
- package/dist/rules/allPropertiesHaveExplicitDefined/allPropertiesHaveExplicitDefined.d.ts +0 -5
- package/dist/rules/apiEnumPropertyBestPractices/apiEnumPropertyBestPractices.d.ts +0 -8
- package/dist/rules/apiEnumPropertyBestPractices/enumTestResultModel.d.ts +0 -7
- package/dist/rules/apiMethodsShouldBeGuarded/apiMethodsShouldBeGuarded.d.ts +0 -6
- package/dist/rules/apiMethodsShouldSpecifyApiOperation/apiMethodsShouldSpecifyApiOperation.d.ts +0 -6
- package/dist/rules/apiMethodsShouldSpecifyApiResponse/apiMethodsShouldSpecifyApiResponse.d.ts +0 -6
- package/dist/rules/apiPropertyMatchesPropertyOptionality/apiPropertyMatchesPropertyOptionality.d.ts +0 -7
- package/dist/rules/apiPropertyReturningArrayShouldSetArray/apiPropertyReturningArrayShouldSetArray.d.ts +0 -7
- package/dist/rules/apiPropertyReturningArrayShouldSetArray/arraySetResultModel.d.ts +0 -5
- package/dist/rules/controllerDecoratedHasApiTags/controllerDecoratedHasApiTags.d.ts +0 -6
- package/dist/rules/index.d.ts +0 -58
- package/dist/rules/injectablesShouldBeProvided/injectableShouldBeProvided.d.ts +0 -12
- package/dist/rules/paramDecoratorNameMatchesRouteParam/paramDecoratorNameMatchesRouteParam.d.ts +0 -23
- package/dist/rules/paramDecoratorNameMatchesRouteParam/rule.testData.d.ts +0 -10
- package/dist/rules/providerInjectedShouldMatchFactory/ProviderInjectedShouldMatchFactory.d.ts +0 -6
- package/dist/rules/shouldSpecifyForbidUnknownValues/shouldSpecifyForbidUnknownValuesRule.d.ts +0 -10
- package/dist/rules/sortModuleMetadataArrays/sortModuleMetadataArrays.d.ts +0 -10
- package/dist/rules/validateNestedOfArrayShouldSetEach/arraySetResultModel.d.ts +0 -5
- package/dist/rules/validateNestedOfArrayShouldSetEach/validateNestedOfArrayShouldSetEach.d.ts +0 -7
- package/dist/rules/validateNonPrimitiveNeedsTypeDecorator/validateNonPrimitiveNeedsDecorators.d.ts +0 -12
- package/dist/testing/fixtureSetup.d.ts +0 -1
- package/dist/testing/preRun.d.ts +0 -1
- package/dist/utils/ast.d.ts +0 -2
- package/dist/utils/createRule.d.ts +0 -2
- package/dist/utils/files/fileEnumerationWrapper.d.ts +0 -6
- package/dist/utils/files/isFilteredPath.d.ts +0 -4
- package/dist/utils/nestModules/models/NestProvidedInjectablesMap.d.ts +0 -5
- package/dist/utils/nestModules/nestModuleAstParser.d.ts +0 -7
- package/dist/utils/nestModules/nestProvidedInjectableMapper.d.ts +0 -12
- package/dist/utils/nestModules/nestProvidedInjectableMapper.testData.d.ts +0 -7
- package/dist/utils/nestModules/nestProviderAstParser.d.ts +0 -7
- package/dist/utils/typedTokenHelpers.d.ts +0 -59
- package/dist/utils/wellKnownSelectors.d.ts +0 -1
|
@@ -5,7 +5,6 @@ const utils_1 = require("@typescript-eslint/utils");
|
|
|
5
5
|
const NestProvidedInjectablesMap_1 = require("./models/NestProvidedInjectablesMap");
|
|
6
6
|
exports.nestModuleAstParser = {
|
|
7
7
|
findNestModuleClass(ast) {
|
|
8
|
-
var _a;
|
|
9
8
|
for (const n of ast.body) {
|
|
10
9
|
// find class declaration even if it's inside an export
|
|
11
10
|
if (n.type === utils_1.AST_NODE_TYPES.ClassDeclaration &&
|
|
@@ -15,20 +14,16 @@ exports.nestModuleAstParser = {
|
|
|
15
14
|
}
|
|
16
15
|
if ((n.type === utils_1.AST_NODE_TYPES.ExportNamedDeclaration ||
|
|
17
16
|
n.type === utils_1.AST_NODE_TYPES.ExportDefaultDeclaration) &&
|
|
18
|
-
|
|
17
|
+
n.declaration?.type === utils_1.AST_NODE_TYPES.ClassDeclaration) {
|
|
19
18
|
return n.declaration;
|
|
20
19
|
}
|
|
21
20
|
}
|
|
22
21
|
return null;
|
|
23
22
|
},
|
|
24
23
|
mapNestModuleDecorator(n, path) {
|
|
25
|
-
var _a;
|
|
26
24
|
// The nest module decorator is called "Module"
|
|
27
|
-
const moduleDecorator =
|
|
28
|
-
|
|
29
|
-
return ((_a = d.expression
|
|
30
|
-
.callee) === null || _a === void 0 ? void 0 : _a.name) === "Module";
|
|
31
|
-
});
|
|
25
|
+
const moduleDecorator = n.decorators?.find((d) => d.expression
|
|
26
|
+
.callee?.name === "Module");
|
|
32
27
|
if (moduleDecorator) {
|
|
33
28
|
const mappedControllerElements = this.mapModuleDecoratorOptionProperty(moduleDecorator, "controllers");
|
|
34
29
|
const mappedProviderElements = this.mapModuleDecoratorOptionProperty(moduleDecorator, "providers");
|
|
@@ -43,7 +38,6 @@ exports.nestModuleAstParser = {
|
|
|
43
38
|
return null;
|
|
44
39
|
},
|
|
45
40
|
mapModuleDecoratorOptionProperty(moduleDecorator, propertyName) {
|
|
46
|
-
var _a;
|
|
47
41
|
const optionProperty = moduleDecorator.expression
|
|
48
42
|
.arguments[0].properties.find((p) => p.key.name ===
|
|
49
43
|
propertyName);
|
|
@@ -51,11 +45,11 @@ exports.nestModuleAstParser = {
|
|
|
51
45
|
// a property can be an array expression e.g. myProp = []
|
|
52
46
|
// or a variable e.g. myProp = someArray
|
|
53
47
|
// - this only supports array expressions for now!
|
|
54
|
-
const propertyAsArrayExpressionElements =
|
|
55
|
-
.value
|
|
48
|
+
const propertyAsArrayExpressionElements = optionProperty
|
|
49
|
+
.value?.elements || [];
|
|
56
50
|
return new Set(propertyAsArrayExpressionElements.map((element) => element.name));
|
|
57
51
|
}
|
|
58
52
|
return new Set();
|
|
59
53
|
},
|
|
60
54
|
};
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdE1vZHVsZUFzdFBhcnNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9uZXN0TW9kdWxlcy9uZXN0TW9kdWxlQXN0UGFyc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9EQUFrRTtBQUNsRSxvRkFBK0U7QUFFbEUsUUFBQSxtQkFBbUIsR0FBRztJQUMvQixtQkFBbUIsQ0FDZixHQUFxQjtRQUVyQixLQUFLLE1BQU0sQ0FBQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUU7WUFDdEIsdURBQXVEO1lBQ3ZELElBQ0ksQ0FBQyxDQUFDLElBQUksS0FBSyxzQkFBYyxDQUFDLGdCQUFnQjtnQkFDMUMsQ0FBQyxDQUFDLFVBQVU7Z0JBQ1osQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUN6QjtnQkFDRSxPQUFPLENBQUMsQ0FBQzthQUNaO1lBRUQsSUFDSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssc0JBQWMsQ0FBQyxzQkFBc0I7Z0JBQzdDLENBQUMsQ0FBQyxJQUFJLEtBQUssc0JBQWMsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDdkQsQ0FBQyxDQUFDLFdBQVcsRUFBRSxJQUFJLEtBQUssc0JBQWMsQ0FBQyxnQkFBZ0IsRUFDekQ7Z0JBQ0UsT0FBTyxDQUFDLENBQUMsV0FBVyxDQUFDO2FBQ3hCO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsc0JBQXNCLENBQ2xCLENBQTRCLEVBQzVCLElBQVk7UUFFWiwrQ0FBK0M7UUFDL0MsTUFBTSxlQUFlLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQ3RDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FFRyxDQUFDLENBQUMsVUFBc0M7YUFDcEMsTUFDUixFQUFFLElBQUksS0FBSyxRQUFRLENBQzNCLENBQUM7UUFDRixJQUFJLGVBQWUsRUFBRTtZQUNqQixNQUFNLHdCQUF3QixHQUMxQixJQUFJLENBQUMsZ0NBQWdDLENBQ2pDLGVBQWUsRUFDZixhQUFhLENBQ2hCLENBQUM7WUFDTixNQUFNLHNCQUFzQixHQUN4QixJQUFJLENBQUMsZ0NBQWdDLENBQ2pDLGVBQWUsRUFDZixXQUFXLENBQ2QsQ0FBQztZQUVOLE1BQU0sYUFBYSxHQUFHO2dCQUNsQixJQUFJO2dCQUNKLElBQUksdURBQTBCO2dCQUMxQiw4REFBOEQ7Z0JBQzlELHdCQUF3QixFQUN4QixzQkFBc0IsQ0FDekI7YUFDSixDQUFDO1lBQ0YsT0FBTyxhQUFhLENBQUM7U0FDeEI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBQ0QsZ0NBQWdDLENBQzVCLGVBQW1DLEVBQ25DLFlBQW9CO1FBRXBCLE1BQU0sY0FBYyxHQUNmLGVBQWUsQ0FBQyxVQUFpRDthQUM3RCxTQUFTLENBQUMsQ0FBQyxDQUNuQixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ2IsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNBLENBQXVCLENBQUMsR0FBMkIsQ0FBQyxJQUFJO1lBQzFELFlBQVksQ0FDbkIsQ0FBQztRQUVGLElBQUksY0FBYyxFQUFFO1lBQ2hCLHlEQUF5RDtZQUN6RCx3Q0FBd0M7WUFDeEMsa0RBQWtEO1lBRWxELE1BQU0saUNBQWlDLEdBRTlCLGNBQStDO2lCQUMzQyxLQUNSLEVBQUUsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUV0QixPQUFPLElBQUksR0FBRyxDQUNWLGlDQUFpQyxDQUFDLEdBQUcsQ0FDakMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFFLE9BQStCLENBQUMsSUFBSSxDQUNyRCxDQUNKLENBQUM7U0FDTDtRQUVELE9BQU8sSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNyQixDQUFDO0NBQ0osQ0FBQyJ9
|
|
@@ -26,6 +26,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
30
|
+
// @ts-ignore
|
|
29
31
|
const unambiguous = __importStar(require("eslint-module-utils/unambiguous"));
|
|
30
32
|
const fs_1 = __importDefault(require("fs"));
|
|
31
33
|
const typedTokenHelpers_1 = require("../typedTokenHelpers");
|
|
@@ -83,7 +85,9 @@ const NestProvidedInjectableMapper = {
|
|
|
83
85
|
try {
|
|
84
86
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
85
87
|
if (
|
|
86
|
-
// eslint-disable-next-line no-constant-condition
|
|
88
|
+
// eslint-disable-next-line no-constant-condition, @typescript-eslint/ban-ts-comment
|
|
89
|
+
// @ts-ignore
|
|
90
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call
|
|
87
91
|
!unambiguous.isModule(ast)) {
|
|
88
92
|
return null;
|
|
89
93
|
}
|
|
@@ -117,4 +121,4 @@ const NestProvidedInjectableMapper = {
|
|
|
117
121
|
},
|
|
118
122
|
};
|
|
119
123
|
exports.default = NestProvidedInjectableMapper;
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdFByb3ZpZGVkSW5qZWN0YWJsZU1hcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9uZXN0TW9kdWxlcy9uZXN0UHJvdmlkZWRJbmplY3RhYmxlTWFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw2REFBNkQ7QUFDN0QsYUFBYTtBQUNiLDZFQUErRDtBQUUvRCw0Q0FBb0I7QUFDcEIsNERBQXVEO0FBR3ZELCtEQUEwRDtBQUMxRCxtRUFBOEQ7QUFFOUQsTUFBTSwwQ0FBMEMsR0FBRyxJQUFJLEdBQUcsQ0FBQztJQUN2RCxhQUFhO0lBQ2IsaUJBQWlCO0lBQ2pCLGVBQWU7SUFDZixnQkFBZ0IsRUFBRSxnQkFBZ0I7Q0FDckMsQ0FBQyxDQUFDO0FBQ0gsTUFBTSw0QkFBNEIsR0FBRztJQUNqQyw2QkFBNkIsQ0FDekIsVUFBeUMsRUFDekMsdUJBQStCO1FBRS9CLElBQUksVUFBVSxJQUFJLE9BQU8sVUFBVSxLQUFLLFFBQVEsRUFBRTtZQUM5QyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDdkI7UUFFRCxJQUFJLFVBQVUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1lBQ3pDLE9BQU8sVUFBVSxDQUFDO1NBQ3JCO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FDVCxnR0FBZ0csRUFDaEcsRUFBQyx1QkFBdUIsRUFBQyxDQUM1QixDQUFDO1FBQ0YsT0FBTyxDQUFDLHVCQUF1QixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUNELGFBQWEsQ0FDVCxLQUFpQjtJQUNqQiw4REFBOEQ7SUFDOUQsT0FBbUQ7UUFFbkQsTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQXNDLENBQUM7UUFDakUsS0FBSzthQUNBLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1AsTUFBTSxZQUFZLEdBQ2QsNEJBQTRCLENBQUMsZ0JB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
|
|
@@ -26,16 +26,14 @@ exports.nestProviderAstParser = {
|
|
|
26
26
|
return null;
|
|
27
27
|
},
|
|
28
28
|
findNestProviderVariableDeclaration(ast) {
|
|
29
|
-
var _a;
|
|
30
29
|
for (const n of ast.body) {
|
|
31
30
|
if ((n.type === utils_1.AST_NODE_TYPES.ExportNamedDeclaration ||
|
|
32
31
|
n.type === utils_1.AST_NODE_TYPES.ExportDefaultDeclaration) &&
|
|
33
|
-
|
|
32
|
+
n.declaration?.type === utils_1.AST_NODE_TYPES.VariableDeclaration) {
|
|
34
33
|
const providerDeclaration = n.declaration.declarations.find((d) => {
|
|
35
|
-
var _a;
|
|
36
34
|
const isObjectExpression = (d.type === utils_1.AST_NODE_TYPES.VariableDeclarator &&
|
|
37
35
|
// has property "provide" and that property is an identifier
|
|
38
|
-
|
|
36
|
+
d.init?.type ===
|
|
39
37
|
utils_1.AST_NODE_TYPES.ObjectExpression) ||
|
|
40
38
|
false;
|
|
41
39
|
const hasProvideProperty = isObjectExpression &&
|
|
@@ -57,4 +55,4 @@ exports.nestProviderAstParser = {
|
|
|
57
55
|
return undefined;
|
|
58
56
|
},
|
|
59
57
|
};
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdFByb3ZpZGVyQXN0UGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL25lc3RNb2R1bGVzL25lc3RQcm92aWRlckFzdFBhcnNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvREFBa0U7QUFDbEUsb0ZBQStFO0FBRWxFLFFBQUEscUJBQXFCLEdBQUc7SUFDakMscUJBQXFCLENBQ2pCLENBQW9CLEVBQ3BCLElBQVk7UUFFWiw4REFBOEQ7UUFDOUQsTUFBTSxZQUFZLEdBQUksQ0FBQyxDQUFDLEtBQTZCLENBQUMsSUFBSSxDQUFDO1FBQzNELElBQUksWUFBWSxFQUFFO1lBQ2QsT0FBTztnQkFDSCxJQUFJO2dCQUNKLElBQUksdURBQTBCLENBQzFCLElBQUksR0FBRyxFQUFFLEVBQ1QsSUFBSSxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUMxQjthQUNKLENBQUM7U0FDTDtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxtQkFBbUIsQ0FDZixtQkFBNEQsRUFDNUQsWUFBb0I7UUFFcEIsSUFBSSxtQkFBbUIsRUFBRTtZQUNyQixNQUFNLHFCQUFxQixHQUN2QixtQkFBbUIsQ0FBQyxJQUN2QixDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ2IsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNGLDhEQUE4RDtZQUM1RCxDQUF1QixDQUFDLEdBQTJCO2lCQUNoRCxJQUFJLEtBQUssWUFBWSxDQUNaLENBQUM7WUFDdkIsT0FBTyxxQkFBcUIsQ0FBQztTQUNoQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxtQ0FBbUMsQ0FDL0IsR0FBcUI7UUFFckIsS0FBSyxNQUFNLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFO1lBQ3RCLElBQ0ksQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLHNCQUFjLENBQUMsc0JBQXNCO2dCQUM3QyxDQUFDLENBQUMsSUFBSSxLQUFLLHNCQUFjLENBQUMsd0JBQXdCLENBQUM7Z0JBQ3ZELENBQUMsQ0FBQyxXQUFXLEVBQUUsSUFBSSxLQUFLLHNCQUFjLENBQUMsbUJBQW1CLEVBQzVEO2dCQUNFLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUN2RCxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUNGLE1BQU0sa0JBQWtCLEdBQ3BCLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxzQkFBYyxDQUFDLGtCQUFrQjt3QkFDekMsNERBQTREO3dCQUM1RCxDQUFDLENBQUMsSUFBSSxFQUFFLElBQUk7NEJBQ1Isc0JBQWMsQ0FBQyxnQkFBZ0IsQ0FBQzt3QkFDeEMsS0FBSyxDQUFDO29CQUVWLE1BQU0sa0JBQWtCLEdBQ3BCLGtCQUFrQjt3QkFFZCxDQUFDLENBQUMsSUFDTCxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTs0QkFDM0IsT0FBTyxDQUNILENBQUMsUUFBUSxDQUFDLElBQUk7Z0NBQ1Ysc0JBQWMsQ0FBQyxRQUFRO2dDQUN2QixRQUFRLENBQUMsR0FBRyxDQUFDLElBQUk7b0NBQ2Isc0JBQWMsQ0FBQyxVQUFVO2dDQUM3QixRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxTQUFTO2dDQUMvQixRQUFRLENBQUMsS0FBSyxDQUFDLElBQUk7b0NBQ2Ysc0JBQWMsQ0FBQyxVQUFVLENBQUM7Z0NBQ2xDLEtBQUssQ0FDUixDQUFDO3dCQUNOLENBQUMsQ0FBQyxDQUFDO29CQUNQLE9BQU8sa0JBQWtCLENBQUM7Z0JBQzlCLENBQUMsQ0FDSixDQUFDO2dCQUVGLE9BQU8sbUJBQW1CLENBQUM7YUFDOUI7U0FDSjtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7Q0FDSixDQUFDIn0=
|
|
@@ -30,8 +30,7 @@ exports.typedTokenHelpers = void 0;
|
|
|
30
30
|
const utils_1 = require("@typescript-eslint/utils");
|
|
31
31
|
const parser_1 = require("@typescript-eslint/parser");
|
|
32
32
|
const typescript_1 = __importDefault(require("typescript"));
|
|
33
|
-
const tsutils = __importStar(require("
|
|
34
|
-
const tsutils_1 = require("tsutils");
|
|
33
|
+
const tsutils = __importStar(require("ts-api-utils"));
|
|
35
34
|
exports.typedTokenHelpers = {
|
|
36
35
|
decoratorsThatCouldMeanTheDevIsValidatingAnArray: [
|
|
37
36
|
"IsArray",
|
|
@@ -43,15 +42,15 @@ exports.typedTokenHelpers = {
|
|
|
43
42
|
"ArrayUnique",
|
|
44
43
|
],
|
|
45
44
|
isTypeArrayTypeOrUnionOfArrayTypes(node, parserService, checker) {
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
if (node?.typeAnnotation
|
|
46
|
+
?.typeAnnotation?.type === utils_1.TSESTree.AST_NODE_TYPES.TSArrayType) {
|
|
48
47
|
return true;
|
|
49
48
|
}
|
|
50
49
|
const nodeType = this.getNodeType(node, parserService, checker);
|
|
51
50
|
if (checker.isArrayType(nodeType)) {
|
|
52
51
|
return true;
|
|
53
52
|
}
|
|
54
|
-
for (const t of
|
|
53
|
+
for (const t of tsutils.unionTypeParts(nodeType)) {
|
|
55
54
|
if (!checker.isArrayType(t)) {
|
|
56
55
|
return false;
|
|
57
56
|
}
|
|
@@ -69,32 +68,32 @@ exports.typedTokenHelpers = {
|
|
|
69
68
|
getPropertyValueEqualsExpected(firstArgument, propertyName, expectedValue) {
|
|
70
69
|
let didMatchExpectedValues = false;
|
|
71
70
|
if (firstArgument !== undefined) {
|
|
72
|
-
const foundPropertyOfName = firstArgument.properties.find((p) => p.
|
|
73
|
-
.name === propertyName);
|
|
71
|
+
const foundPropertyOfName = firstArgument.properties.find((p) => p.type === utils_1.TSESTree.AST_NODE_TYPES.Property &&
|
|
72
|
+
p.key.name === propertyName);
|
|
74
73
|
didMatchExpectedValues =
|
|
75
74
|
foundPropertyOfName !== undefined &&
|
|
76
|
-
foundPropertyOfName
|
|
77
|
-
|
|
75
|
+
foundPropertyOfName.type === utils_1.TSESTree.AST_NODE_TYPES.Property &&
|
|
76
|
+
foundPropertyOfName.value?.value ===
|
|
77
|
+
expectedValue;
|
|
78
78
|
}
|
|
79
79
|
return didMatchExpectedValues;
|
|
80
80
|
},
|
|
81
81
|
getConstrainedTypeAtLocation(checker, node) {
|
|
82
82
|
const nodeType = checker.getTypeAtLocation(node);
|
|
83
83
|
const constrained = checker.getBaseConstraintOfType(nodeType);
|
|
84
|
-
return constrained
|
|
84
|
+
return constrained ?? nodeType;
|
|
85
85
|
},
|
|
86
86
|
nodeHasDecoratorsNamed(n, decoratorNames) {
|
|
87
87
|
const decorators = this.getDecoratorsNamed(n, decoratorNames);
|
|
88
88
|
return decorators.length > 0;
|
|
89
89
|
},
|
|
90
90
|
getDecoratorsNamed(n, decoratorNames) {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
const
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
return decoratorNames.includes((_c = factoryMethodDecoratorIdentifier !== null && factoryMethodDecoratorIdentifier !== void 0 ? factoryMethodDecoratorIdentifier : decoratorIdentifier) !== null && _c !== void 0 ? _c : "");
|
|
91
|
+
const decorators = n.decorators?.filter((d) => {
|
|
92
|
+
const factoryMethodDecoratorIdentifier = d.expression
|
|
93
|
+
.callee?.name;
|
|
94
|
+
const decoratorIdentifier = d.expression
|
|
95
|
+
?.name;
|
|
96
|
+
return decoratorNames.includes(factoryMethodDecoratorIdentifier ?? decoratorIdentifier ?? "");
|
|
98
97
|
});
|
|
99
98
|
return decorators || [];
|
|
100
99
|
},
|
|
@@ -126,8 +125,7 @@ exports.typedTokenHelpers = {
|
|
|
126
125
|
valueDeclaration.kind === typescript_1.default.SyntaxKind.EnumDeclaration);
|
|
127
126
|
},
|
|
128
127
|
isOptionalPropertyValue(node) {
|
|
129
|
-
|
|
130
|
-
const isUndefinedType = ((_c = (_b = (_a = node.typeAnnotation) === null || _a === void 0 ? void 0 : _a.typeAnnotation) === null || _b === void 0 ? void 0 : _b.types) === null || _c === void 0 ? void 0 : _c.find((t) => t.type === utils_1.AST_NODE_TYPES.TSUndefinedKeyword)) !== undefined;
|
|
128
|
+
const isUndefinedType = node.typeAnnotation?.typeAnnotation?.types?.find((t) => t.type === utils_1.AST_NODE_TYPES.TSUndefinedKeyword) !== undefined;
|
|
131
129
|
const isOptionalPropertyValue = node.optional || isUndefinedType || false;
|
|
132
130
|
return isOptionalPropertyValue;
|
|
133
131
|
},
|
|
@@ -184,17 +182,16 @@ exports.typedTokenHelpers = {
|
|
|
184
182
|
* @param node PropertyDefinition node
|
|
185
183
|
*/
|
|
186
184
|
getValidationDecorators(node, additionalCustomValidatorDecorators = []) {
|
|
187
|
-
var _a;
|
|
188
185
|
const program = exports.typedTokenHelpers.getRootProgram(node);
|
|
189
186
|
const { decorators } = node;
|
|
190
|
-
return (
|
|
187
|
+
return (decorators?.filter((decorator) => {
|
|
191
188
|
const isClassValidatorDecorator = exports.typedTokenHelpers.decoratorIsClassValidatorDecorator(program, decorator);
|
|
192
189
|
const decoratorName = exports.typedTokenHelpers.getDecoratorName(decorator);
|
|
193
190
|
const isCustomClassValidatorDecorator = decoratorName === null
|
|
194
191
|
? false
|
|
195
192
|
: additionalCustomValidatorDecorators.includes(decoratorName);
|
|
196
193
|
return (isCustomClassValidatorDecorator || isClassValidatorDecorator);
|
|
197
|
-
})
|
|
194
|
+
}) ?? []);
|
|
198
195
|
},
|
|
199
196
|
/**
|
|
200
197
|
* Checks if the decorator is the IsEnum decorator
|
|
@@ -227,4 +224,4 @@ exports.typedTokenHelpers = {
|
|
|
227
224
|
return decorator.expression.callee.name;
|
|
228
225
|
},
|
|
229
226
|
};
|
|
230
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
227
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWRUb2tlbkhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvdHlwZWRUb2tlbkhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBNEU7QUFDNUUsc0RBQWdFO0FBQ2hFLDREQUE0QjtBQUM1QixzREFBd0M7QUFFM0IsUUFBQSxpQkFBaUIsR0FBRztJQUM3QixnREFBZ0QsRUFBRTtRQUM5QyxTQUFTO1FBQ1QsY0FBYztRQUNkLGNBQWM7UUFDZCxlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLGVBQWU7UUFDZixhQUFhO0tBQ2hCO0lBQ0Qsa0NBQWtDLENBQzlCLElBQW1CLEVBQ25CLGFBQTZCLEVBQzdCLE9BQXVCO1FBRXZCLElBQ0ssSUFBb0MsRUFBRSxjQUFjO1lBQ2pELEVBQUUsY0FBYyxFQUFFLElBQUksS0FBSyxnQkFBUSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQ3BFO1lBQ0UsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNoRSxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDL0IsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUNELEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUM5QyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDekIsT0FBTyxLQUFLLENBQUM7YUFDaEI7U0FDSjtRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxXQUFXLENBQ1AsSUFBbUIsRUFDbkIsYUFBNkIsRUFDN0IsT0FBdUI7UUFFdkIsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLHFCQUFx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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@darraghor/eslint-plugin-nestjs-typed",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "Eslint rules for nestjs projects",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"clean": "rm -Rf ./dist/",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"url": "https://github.com/darraghoriordan/eslint-plugin-nestjs-typed"
|
|
29
29
|
},
|
|
30
30
|
"engines": {
|
|
31
|
-
"node": ">=
|
|
31
|
+
"node": "^16.0.0 || ^18.0.0 || >=20.0.0"
|
|
32
32
|
},
|
|
33
33
|
"files": [
|
|
34
34
|
"dist",
|
|
@@ -43,38 +43,37 @@
|
|
|
43
43
|
"main": "dist/index.js",
|
|
44
44
|
"types": "index.d.ts",
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@typescript-eslint/scope-manager": "
|
|
47
|
-
"@typescript-eslint/utils": "
|
|
46
|
+
"@typescript-eslint/scope-manager": "6.0.0",
|
|
47
|
+
"@typescript-eslint/utils": "6.0.0",
|
|
48
48
|
"eslint-module-utils": "2.8.0",
|
|
49
49
|
"reflect-metadata": "0.1.13"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
|
-
"@
|
|
53
|
-
"@commitlint/
|
|
52
|
+
"@typescript-eslint/rule-tester": "6.0.0",
|
|
53
|
+
"@commitlint/cli": "17.6.6",
|
|
54
|
+
"@commitlint/config-conventional": "17.6.6",
|
|
54
55
|
"@semantic-release/changelog": "6.0.3",
|
|
55
56
|
"@semantic-release/exec": "6.0.3",
|
|
56
|
-
"@types/eslint": "8.
|
|
57
|
-
"@types/jest": "29.5.
|
|
58
|
-
"@types/node": "
|
|
59
|
-
"@typescript-eslint/eslint-plugin": "
|
|
60
|
-
"@typescript-eslint/parser": "
|
|
57
|
+
"@types/eslint": "8.44.0",
|
|
58
|
+
"@types/jest": "29.5.3",
|
|
59
|
+
"@types/node": "20.4.2",
|
|
60
|
+
"@typescript-eslint/eslint-plugin": "6.0.0",
|
|
61
|
+
"@typescript-eslint/parser": "6.0.0",
|
|
61
62
|
"class-validator": "^0.14",
|
|
62
|
-
"eslint": "8.
|
|
63
|
+
"eslint": "8.45.0",
|
|
63
64
|
"eslint-config-prettier": "8.8.0",
|
|
64
|
-
"eslint-plugin-import": "2.27.5",
|
|
65
|
-
"eslint-plugin-jsdoc": "46.2.0",
|
|
66
65
|
"eslint-plugin-prefer-arrow": "1.2.3",
|
|
67
|
-
"eslint-plugin-unicorn": "
|
|
66
|
+
"eslint-plugin-unicorn": "48.0.0",
|
|
68
67
|
"husky": "8.0.3",
|
|
69
|
-
"jest": "29.
|
|
68
|
+
"jest": "29.6.1",
|
|
70
69
|
"jest-create-mock-instance": "2.0.0",
|
|
71
70
|
"jest-junit": "16.0.0",
|
|
72
|
-
"lint-staged": "13.2.
|
|
73
|
-
"prettier": "2.8.
|
|
74
|
-
"semantic-release": "21.0.
|
|
75
|
-
"ts-jest": "29.1.
|
|
71
|
+
"lint-staged": "13.2.3",
|
|
72
|
+
"prettier": "2.8.7",
|
|
73
|
+
"semantic-release": "21.0.7",
|
|
74
|
+
"ts-jest": "29.1.1",
|
|
76
75
|
"ts-node": "10.9.1",
|
|
77
|
-
"typescript": "
|
|
76
|
+
"typescript": "5.1.6"
|
|
78
77
|
},
|
|
79
78
|
"peerDependencies": {
|
|
80
79
|
"@typescript-eslint/parser": "^5.0.0",
|
package/dist/configs/index.d.ts
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
declare const allConfigs: {
|
|
2
|
-
recommended: {
|
|
3
|
-
parser: string;
|
|
4
|
-
parserOptions: {
|
|
5
|
-
sourceType: string;
|
|
6
|
-
};
|
|
7
|
-
rules: {
|
|
8
|
-
"@darraghor/nestjs-typed/provided-injected-should-match-factory-parameters": string;
|
|
9
|
-
"@darraghor/nestjs-typed/injectable-should-be-provided": (string | {
|
|
10
|
-
src: string[];
|
|
11
|
-
filterFromPaths: string[];
|
|
12
|
-
})[];
|
|
13
|
-
"@darraghor/nestjs-typed/api-property-matches-property-optionality": string;
|
|
14
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-response": string;
|
|
15
|
-
"@darraghor/nestjs-typed/controllers-should-supply-api-tags": string;
|
|
16
|
-
"@darraghor/nestjs-typed/api-enum-property-best-practices": string;
|
|
17
|
-
"@darraghor/nestjs-typed/api-property-returning-array-should-set-array": string;
|
|
18
|
-
"@darraghor/nestjs-typed/should-specify-forbid-unknown-values": string;
|
|
19
|
-
"@darraghor/nestjs-typed/param-decorator-name-matches-route-param": string;
|
|
20
|
-
"@darraghor/nestjs-typed/validated-non-primitive-property-needs-type-decorator": string;
|
|
21
|
-
"@darraghor/nestjs-typed/validate-nested-of-array-should-set-each": string;
|
|
22
|
-
"@darraghor/nestjs-typed/all-properties-are-whitelisted": string;
|
|
23
|
-
"@darraghor/nestjs-typed/all-properties-have-explicit-defined": string;
|
|
24
|
-
"@darraghor/nestjs-typed/api-methods-should-be-guarded": string;
|
|
25
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-operation": string;
|
|
26
|
-
"@darraghor/nestjs-typed/sort-module-metadata-arrays": string;
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
"no-swagger": {
|
|
30
|
-
parser: string;
|
|
31
|
-
parserOptions: {
|
|
32
|
-
sourceType: string;
|
|
33
|
-
};
|
|
34
|
-
rules: {
|
|
35
|
-
"@darraghor/nestjs-typed/api-property-matches-property-optionality": string;
|
|
36
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-response": string;
|
|
37
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-operation": string;
|
|
38
|
-
"@darraghor/nestjs-typed/controllers-should-supply-api-tags": string;
|
|
39
|
-
"@darraghor/nestjs-typed/api-enum-property-best-practices": string;
|
|
40
|
-
"@darraghor/nestjs-typed/api-property-returning-array-should-set-array": string;
|
|
41
|
-
};
|
|
42
|
-
};
|
|
43
|
-
};
|
|
44
|
-
export default allConfigs;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
declare const _default: {
|
|
2
|
-
parser: string;
|
|
3
|
-
parserOptions: {
|
|
4
|
-
sourceType: string;
|
|
5
|
-
};
|
|
6
|
-
rules: {
|
|
7
|
-
"@darraghor/nestjs-typed/api-property-matches-property-optionality": string;
|
|
8
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-response": string;
|
|
9
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-operation": string;
|
|
10
|
-
"@darraghor/nestjs-typed/controllers-should-supply-api-tags": string;
|
|
11
|
-
"@darraghor/nestjs-typed/api-enum-property-best-practices": string;
|
|
12
|
-
"@darraghor/nestjs-typed/api-property-returning-array-should-set-array": string;
|
|
13
|
-
};
|
|
14
|
-
};
|
|
15
|
-
export = _default;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
declare const _default: {
|
|
2
|
-
parser: string;
|
|
3
|
-
parserOptions: {
|
|
4
|
-
sourceType: string;
|
|
5
|
-
};
|
|
6
|
-
rules: {
|
|
7
|
-
"@darraghor/nestjs-typed/provided-injected-should-match-factory-parameters": string;
|
|
8
|
-
"@darraghor/nestjs-typed/injectable-should-be-provided": (string | {
|
|
9
|
-
src: string[];
|
|
10
|
-
filterFromPaths: string[];
|
|
11
|
-
})[];
|
|
12
|
-
"@darraghor/nestjs-typed/api-property-matches-property-optionality": string;
|
|
13
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-response": string;
|
|
14
|
-
"@darraghor/nestjs-typed/controllers-should-supply-api-tags": string;
|
|
15
|
-
"@darraghor/nestjs-typed/api-enum-property-best-practices": string;
|
|
16
|
-
"@darraghor/nestjs-typed/api-property-returning-array-should-set-array": string;
|
|
17
|
-
"@darraghor/nestjs-typed/should-specify-forbid-unknown-values": string;
|
|
18
|
-
"@darraghor/nestjs-typed/param-decorator-name-matches-route-param": string;
|
|
19
|
-
"@darraghor/nestjs-typed/validated-non-primitive-property-needs-type-decorator": string;
|
|
20
|
-
"@darraghor/nestjs-typed/validate-nested-of-array-should-set-each": string;
|
|
21
|
-
"@darraghor/nestjs-typed/all-properties-are-whitelisted": string;
|
|
22
|
-
"@darraghor/nestjs-typed/all-properties-have-explicit-defined": string;
|
|
23
|
-
"@darraghor/nestjs-typed/api-methods-should-be-guarded": string;
|
|
24
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-operation": string;
|
|
25
|
-
"@darraghor/nestjs-typed/sort-module-metadata-arrays": string;
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
export = _default;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function Controller(): any;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function Injectable(): any;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function Module(metadata: any): any;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function NonFactoryDecorator(constructor: Function): void;
|
package/dist/fixtures/file.d.ts
DELETED
|
File without changes
|
package/dist/index.d.ts
DELETED
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
declare const configuration: {
|
|
2
|
-
rules: {
|
|
3
|
-
"all-properties-have-explicit-defined": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"missing-is-defined-decorator" | "missing-is-optional-decorator" | "conflicting-defined-decorators", never[], {
|
|
4
|
-
ClassDeclaration(node: import("@typescript-eslint/types/dist/generated/ast-spec").ClassDeclaration): void;
|
|
5
|
-
}>;
|
|
6
|
-
"api-property-matches-property-optionality": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"shouldUseOptionalDecorator" | "shouldUseRequiredDecorator", never[], {
|
|
7
|
-
PropertyDefinition(node: import("@typescript-eslint/types/dist/generated/ast-spec").PropertyDefinition): void;
|
|
8
|
-
}>;
|
|
9
|
-
"injectable-should-be-provided": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"injectableInModule" | "controllersInModule", [{
|
|
10
|
-
src: string[];
|
|
11
|
-
filterFromPaths: string[];
|
|
12
|
-
}], {
|
|
13
|
-
ClassDeclaration(node: import("@typescript-eslint/types/dist/generated/ast-spec").ClassDeclaration): void;
|
|
14
|
-
"Program:exit"(): void;
|
|
15
|
-
}>;
|
|
16
|
-
"provided-injected-should-match-factory-parameters": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"mainMessage", never[], {
|
|
17
|
-
VariableDeclarator(node: import("@typescript-eslint/types/dist/generated/ast-spec").VariableDeclarator): void;
|
|
18
|
-
}>;
|
|
19
|
-
"controllers-should-supply-api-tags": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"shouldUseApiTagDecorator", never[], {
|
|
20
|
-
ClassDeclaration(node: import("@typescript-eslint/types/dist/generated/ast-spec").ClassDeclaration): void;
|
|
21
|
-
}>;
|
|
22
|
-
"api-method-should-specify-api-response": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"shouldSpecifyApiResponse", never[], {
|
|
23
|
-
MethodDefinition(node: import("@typescript-eslint/types/dist/generated/ast-spec").MethodDefinition): void;
|
|
24
|
-
}>;
|
|
25
|
-
"api-method-should-specify-api-operation": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"shouldSpecifyApiOperation", never[], {
|
|
26
|
-
MethodDefinition(node: import("@typescript-eslint/types/dist/generated/ast-spec").MethodDefinition): void;
|
|
27
|
-
}>;
|
|
28
|
-
"api-enum-property-best-practices": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"needsEnumNameAdded" | "needsTypeRemoved" | "enumNameShouldMatchType", never[], {
|
|
29
|
-
PropertyDefinition(node: import("@typescript-eslint/types/dist/generated/ast-spec").Node): void;
|
|
30
|
-
}>;
|
|
31
|
-
"api-property-returning-array-should-set-array": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"shouldSetArrayPropertyTrue" | "shouldSetArrayPropertyFalse", never[], {
|
|
32
|
-
PropertyDefinition: (node: import("@typescript-eslint/types/dist/generated/ast-spec").Node) => void;
|
|
33
|
-
}>;
|
|
34
|
-
"should-specify-forbid-unknown-values": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"shouldSpecifyForbidUnknownValues", never[], {
|
|
35
|
-
NewExpression(node: import("@typescript-eslint/types/dist/generated/ast-spec").Node): void;
|
|
36
|
-
VariableDeclarator(node: import("@typescript-eslint/types/dist/generated/ast-spec").Node): void;
|
|
37
|
-
}>;
|
|
38
|
-
"param-decorator-name-matches-route-param": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"paramIdentifierDoesntNeedColon" | "paramIdentifierShouldMatch", never[], {
|
|
39
|
-
Decorator(node: import("@typescript-eslint/types/dist/generated/ast-spec").Decorator): void;
|
|
40
|
-
}>;
|
|
41
|
-
"validated-non-primitive-property-needs-type-decorator": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"autofixWithTypeDecorator" | "shouldUseTypeDecorator", import("./rules/validateNonPrimitiveNeedsTypeDecorator/validateNonPrimitiveNeedsDecorators").ValidateNonPrimitivePropertyTypeDecoratorOptions, {
|
|
42
|
-
PropertyDefinition(node: import("@typescript-eslint/types/dist/generated/ast-spec").PropertyDefinition): void;
|
|
43
|
-
}>;
|
|
44
|
-
"validate-nested-of-array-should-set-each": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"shouldSetEachPropertyTrue" | "shouldSetEachPropertyFalse", never[], {
|
|
45
|
-
PropertyDefinition: (node: import("@typescript-eslint/types/dist/generated/ast-spec").Node) => void;
|
|
46
|
-
}>;
|
|
47
|
-
"all-properties-are-whitelisted": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"missing-property-decorator", never[], {
|
|
48
|
-
ClassDeclaration(node: import("@typescript-eslint/types/dist/generated/ast-spec").ClassDeclaration): void;
|
|
49
|
-
}>;
|
|
50
|
-
"api-methods-should-be-guarded": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"apiMethodsShouldBeGuarded", never[], {
|
|
51
|
-
MethodDefinition(node: import("@typescript-eslint/types/dist/generated/ast-spec").MethodDefinition): void;
|
|
52
|
-
}>;
|
|
53
|
-
"sort-module-metadata-arrays": import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"moduleMetadataArraysAreSorted", {
|
|
54
|
-
locale: string;
|
|
55
|
-
}[], {
|
|
56
|
-
[x: string]: ({ elements, }: import("@typescript-eslint/types/dist/generated/ast-spec").ArrayExpression) => void;
|
|
57
|
-
}>;
|
|
58
|
-
};
|
|
59
|
-
configs: {
|
|
60
|
-
recommended: {
|
|
61
|
-
parser: string;
|
|
62
|
-
parserOptions: {
|
|
63
|
-
sourceType: string;
|
|
64
|
-
};
|
|
65
|
-
rules: {
|
|
66
|
-
"@darraghor/nestjs-typed/provided-injected-should-match-factory-parameters": string;
|
|
67
|
-
"@darraghor/nestjs-typed/injectable-should-be-provided": (string | {
|
|
68
|
-
src: string[];
|
|
69
|
-
filterFromPaths: string[];
|
|
70
|
-
})[];
|
|
71
|
-
"@darraghor/nestjs-typed/api-property-matches-property-optionality": string;
|
|
72
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-response": string;
|
|
73
|
-
"@darraghor/nestjs-typed/controllers-should-supply-api-tags": string;
|
|
74
|
-
"@darraghor/nestjs-typed/api-enum-property-best-practices": string;
|
|
75
|
-
"@darraghor/nestjs-typed/api-property-returning-array-should-set-array": string;
|
|
76
|
-
"@darraghor/nestjs-typed/should-specify-forbid-unknown-values": string;
|
|
77
|
-
"@darraghor/nestjs-typed/param-decorator-name-matches-route-param": string;
|
|
78
|
-
"@darraghor/nestjs-typed/validated-non-primitive-property-needs-type-decorator": string;
|
|
79
|
-
"@darraghor/nestjs-typed/validate-nested-of-array-should-set-each": string;
|
|
80
|
-
"@darraghor/nestjs-typed/all-properties-are-whitelisted": string;
|
|
81
|
-
"@darraghor/nestjs-typed/all-properties-have-explicit-defined": string;
|
|
82
|
-
"@darraghor/nestjs-typed/api-methods-should-be-guarded": string;
|
|
83
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-operation": string;
|
|
84
|
-
"@darraghor/nestjs-typed/sort-module-metadata-arrays": string;
|
|
85
|
-
};
|
|
86
|
-
};
|
|
87
|
-
"no-swagger": {
|
|
88
|
-
parser: string;
|
|
89
|
-
parserOptions: {
|
|
90
|
-
sourceType: string;
|
|
91
|
-
};
|
|
92
|
-
rules: {
|
|
93
|
-
"@darraghor/nestjs-typed/api-property-matches-property-optionality": string;
|
|
94
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-response": string;
|
|
95
|
-
"@darraghor/nestjs-typed/api-method-should-specify-api-operation": string;
|
|
96
|
-
"@darraghor/nestjs-typed/controllers-should-supply-api-tags": string;
|
|
97
|
-
"@darraghor/nestjs-typed/api-enum-property-best-practices": string;
|
|
98
|
-
"@darraghor/nestjs-typed/api-property-returning-array-should-set-array": string;
|
|
99
|
-
};
|
|
100
|
-
};
|
|
101
|
-
};
|
|
102
|
-
};
|
|
103
|
-
export = configuration;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { TSESTree } from "@typescript-eslint/utils";
|
|
2
|
-
declare const rule: import("@typescript-eslint/utils/dist/ts-eslint/Rule").RuleModule<"missing-is-defined-decorator" | "missing-is-optional-decorator" | "conflicting-defined-decorators", never[], {
|
|
3
|
-
ClassDeclaration(node: TSESTree.ClassDeclaration): void;
|
|
4
|
-
}>;
|
|
5
|
-
export default rule;
|