@typescript-eslint/eslint-plugin 8.8.2-alpha.0 → 8.8.2-alpha.2
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/dist/rules/adjacent-overload-signatures.js +7 -7
- package/dist/rules/adjacent-overload-signatures.js.map +1 -1
- package/dist/rules/array-type.js +6 -6
- package/dist/rules/array-type.js.map +1 -1
- package/dist/rules/await-thenable.js +3 -3
- package/dist/rules/await-thenable.js.map +1 -1
- package/dist/rules/ban-ts-comment.js +19 -19
- package/dist/rules/ban-ts-comment.js.map +1 -1
- package/dist/rules/ban-tslint-comment.js +2 -2
- package/dist/rules/ban-tslint-comment.js.map +1 -1
- package/dist/rules/class-literal-property-style.js +2 -2
- package/dist/rules/class-literal-property-style.js.map +1 -1
- package/dist/rules/class-methods-use-this.js +20 -20
- package/dist/rules/class-methods-use-this.js.map +1 -1
- package/dist/rules/consistent-generic-constructors.js +3 -3
- package/dist/rules/consistent-generic-constructors.js.map +1 -1
- package/dist/rules/consistent-indexed-object-style.js +6 -6
- package/dist/rules/consistent-indexed-object-style.js.map +1 -1
- package/dist/rules/consistent-return.js +6 -6
- package/dist/rules/consistent-return.js.map +1 -1
- package/dist/rules/consistent-type-assertions.js +13 -13
- package/dist/rules/consistent-type-assertions.js.map +1 -1
- package/dist/rules/consistent-type-definitions.js +1 -1
- package/dist/rules/consistent-type-definitions.js.map +1 -1
- package/dist/rules/consistent-type-exports.js +8 -8
- package/dist/rules/consistent-type-exports.js.map +1 -1
- package/dist/rules/consistent-type-imports.js +17 -17
- package/dist/rules/consistent-type-imports.js.map +1 -1
- package/dist/rules/default-param-last.js +1 -1
- package/dist/rules/default-param-last.js.map +1 -1
- package/dist/rules/dot-notation.js +16 -16
- package/dist/rules/dot-notation.js.map +1 -1
- package/dist/rules/explicit-function-return-type.js +28 -28
- package/dist/rules/explicit-function-return-type.js.map +1 -1
- package/dist/rules/explicit-member-accessibility.js +22 -22
- package/dist/rules/explicit-member-accessibility.js.map +1 -1
- package/dist/rules/explicit-module-boundary-types.js +17 -17
- package/dist/rules/explicit-module-boundary-types.js.map +1 -1
- package/dist/rules/init-declarations.js +1 -1
- package/dist/rules/init-declarations.js.map +1 -1
- package/dist/rules/max-params.js +9 -9
- package/dist/rules/max-params.js.map +1 -1
- package/dist/rules/member-ordering.js +24 -23
- package/dist/rules/member-ordering.js.map +1 -1
- package/dist/rules/method-signature-style.js.map +1 -1
- package/dist/rules/naming-convention-utils/format.js +3 -3
- package/dist/rules/naming-convention-utils/format.js.map +1 -1
- package/dist/rules/naming-convention-utils/index.js +3 -3
- package/dist/rules/naming-convention-utils/index.js.map +1 -1
- package/dist/rules/naming-convention-utils/parse-options.js +14 -14
- package/dist/rules/naming-convention-utils/parse-options.js.map +1 -1
- package/dist/rules/naming-convention-utils/schema.js +54 -54
- package/dist/rules/naming-convention-utils/schema.js.map +1 -1
- package/dist/rules/naming-convention-utils/shared.js +1 -1
- package/dist/rules/naming-convention-utils/shared.js.map +1 -1
- package/dist/rules/naming-convention-utils/validator.js +26 -26
- package/dist/rules/naming-convention-utils/validator.js.map +1 -1
- package/dist/rules/naming-convention.js +133 -133
- package/dist/rules/naming-convention.js.map +1 -1
- package/dist/rules/no-array-constructor.js +1 -1
- package/dist/rules/no-array-constructor.js.map +1 -1
- package/dist/rules/no-array-delete.js +1 -1
- package/dist/rules/no-array-delete.js.map +1 -1
- package/dist/rules/no-base-to-string.js +6 -6
- package/dist/rules/no-base-to-string.js.map +1 -1
- package/dist/rules/no-confusing-non-null-assertion.js +2 -2
- package/dist/rules/no-confusing-non-null-assertion.js.map +1 -1
- package/dist/rules/no-confusing-void-expression.js +10 -10
- package/dist/rules/no-confusing-void-expression.js.map +1 -1
- package/dist/rules/no-deprecated.js +3 -3
- package/dist/rules/no-deprecated.js.map +1 -1
- package/dist/rules/no-dupe-class-members.js +1 -1
- package/dist/rules/no-dupe-class-members.js.map +1 -1
- package/dist/rules/no-duplicate-enum-values.js.map +1 -1
- package/dist/rules/no-duplicate-type-constituents.js +7 -7
- package/dist/rules/no-duplicate-type-constituents.js.map +1 -1
- package/dist/rules/no-dynamic-delete.js +4 -4
- package/dist/rules/no-dynamic-delete.js.map +1 -1
- package/dist/rules/no-empty-function.js +2 -2
- package/dist/rules/no-empty-function.js.map +1 -1
- package/dist/rules/no-empty-interface.js +3 -3
- package/dist/rules/no-empty-interface.js.map +1 -1
- package/dist/rules/no-empty-object-type.js +11 -11
- package/dist/rules/no-empty-object-type.js.map +1 -1
- package/dist/rules/no-explicit-any.js +9 -9
- package/dist/rules/no-explicit-any.js.map +1 -1
- package/dist/rules/no-extra-non-null-assertion.js +3 -3
- package/dist/rules/no-extra-non-null-assertion.js.map +1 -1
- package/dist/rules/no-extraneous-class.js +9 -9
- package/dist/rules/no-extraneous-class.js.map +1 -1
- package/dist/rules/no-floating-promises.js +14 -14
- package/dist/rules/no-floating-promises.js.map +1 -1
- package/dist/rules/no-for-in-array.js +1 -1
- package/dist/rules/no-for-in-array.js.map +1 -1
- package/dist/rules/no-implied-eval.js +4 -4
- package/dist/rules/no-implied-eval.js.map +1 -1
- package/dist/rules/no-import-type-side-effects.js.map +1 -1
- package/dist/rules/no-inferrable-types.js +7 -7
- package/dist/rules/no-inferrable-types.js.map +1 -1
- package/dist/rules/no-invalid-this.js +7 -7
- package/dist/rules/no-invalid-this.js.map +1 -1
- package/dist/rules/no-invalid-void-type.js +12 -12
- package/dist/rules/no-invalid-void-type.js.map +1 -1
- package/dist/rules/no-loop-func.js +2 -2
- package/dist/rules/no-loop-func.js.map +1 -1
- package/dist/rules/no-loss-of-precision.js +1 -1
- package/dist/rules/no-loss-of-precision.js.map +1 -1
- package/dist/rules/no-magic-numbers.js +11 -11
- package/dist/rules/no-magic-numbers.js.map +1 -1
- package/dist/rules/no-meaningless-void-operator.js +2 -2
- package/dist/rules/no-meaningless-void-operator.js.map +1 -1
- package/dist/rules/no-misused-new.js +11 -11
- package/dist/rules/no-misused-new.js.map +1 -1
- package/dist/rules/no-misused-promises.js +29 -29
- package/dist/rules/no-misused-promises.js.map +1 -1
- package/dist/rules/no-mixed-enums.js +2 -2
- package/dist/rules/no-mixed-enums.js.map +1 -1
- package/dist/rules/no-namespace.js +3 -3
- package/dist/rules/no-namespace.js.map +1 -1
- package/dist/rules/no-non-null-asserted-nullish-coalescing.js +1 -1
- package/dist/rules/no-non-null-asserted-nullish-coalescing.js.map +1 -1
- package/dist/rules/no-non-null-assertion.js.map +1 -1
- package/dist/rules/no-redeclare.js +23 -23
- package/dist/rules/no-redeclare.js.map +1 -1
- package/dist/rules/no-redundant-type-constituents.js +20 -20
- package/dist/rules/no-redundant-type-constituents.js.map +1 -1
- package/dist/rules/no-require-imports.js +5 -5
- package/dist/rules/no-require-imports.js.map +1 -1
- package/dist/rules/no-restricted-imports.js +20 -20
- package/dist/rules/no-restricted-imports.js.map +1 -1
- package/dist/rules/no-restricted-types.js +9 -9
- package/dist/rules/no-restricted-types.js.map +1 -1
- package/dist/rules/no-shadow.js +27 -27
- package/dist/rules/no-shadow.js.map +1 -1
- package/dist/rules/no-this-alias.js +6 -6
- package/dist/rules/no-this-alias.js.map +1 -1
- package/dist/rules/no-type-alias.js +16 -16
- package/dist/rules/no-type-alias.js.map +1 -1
- package/dist/rules/no-unnecessary-boolean-literal-compare.js +29 -29
- package/dist/rules/no-unnecessary-boolean-literal-compare.js.map +1 -1
- package/dist/rules/no-unnecessary-condition.js +27 -27
- package/dist/rules/no-unnecessary-condition.js.map +1 -1
- package/dist/rules/no-unnecessary-parameter-property-assignment.js +18 -18
- package/dist/rules/no-unnecessary-parameter-property-assignment.js.map +1 -1
- package/dist/rules/no-unnecessary-qualifier.js +13 -13
- package/dist/rules/no-unnecessary-qualifier.js.map +1 -1
- package/dist/rules/no-unnecessary-template-expression.js +3 -3
- package/dist/rules/no-unnecessary-template-expression.js.map +1 -1
- package/dist/rules/no-unnecessary-type-arguments.js +1 -1
- package/dist/rules/no-unnecessary-type-arguments.js.map +1 -1
- package/dist/rules/no-unnecessary-type-assertion.js +44 -44
- package/dist/rules/no-unnecessary-type-assertion.js.map +1 -1
- package/dist/rules/no-unnecessary-type-constraint.js +6 -6
- package/dist/rules/no-unnecessary-type-constraint.js.map +1 -1
- package/dist/rules/no-unnecessary-type-parameters.js +7 -7
- package/dist/rules/no-unnecessary-type-parameters.js.map +1 -1
- package/dist/rules/no-unsafe-argument.js +16 -16
- package/dist/rules/no-unsafe-argument.js.map +1 -1
- package/dist/rules/no-unsafe-assignment.js +12 -12
- package/dist/rules/no-unsafe-assignment.js.map +1 -1
- package/dist/rules/no-unsafe-call.js.map +1 -1
- package/dist/rules/no-unsafe-declaration-merging.js.map +1 -1
- package/dist/rules/no-unsafe-enum-comparison.js +3 -3
- package/dist/rules/no-unsafe-enum-comparison.js.map +1 -1
- package/dist/rules/no-unsafe-function-type.js.map +1 -1
- package/dist/rules/no-unsafe-member-access.js +3 -3
- package/dist/rules/no-unsafe-member-access.js.map +1 -1
- package/dist/rules/no-unsafe-return.js +4 -4
- package/dist/rules/no-unsafe-return.js.map +1 -1
- package/dist/rules/no-unsafe-unary-minus.js +1 -1
- package/dist/rules/no-unsafe-unary-minus.js.map +1 -1
- package/dist/rules/no-unused-expressions.js +2 -2
- package/dist/rules/no-unused-expressions.js.map +1 -1
- package/dist/rules/no-unused-vars.js +35 -35
- package/dist/rules/no-unused-vars.js.map +1 -1
- package/dist/rules/no-use-before-define.js +20 -20
- package/dist/rules/no-use-before-define.js.map +1 -1
- package/dist/rules/no-useless-constructor.js +2 -2
- package/dist/rules/no-useless-constructor.js.map +1 -1
- package/dist/rules/no-useless-empty-export.js +3 -3
- package/dist/rules/no-useless-empty-export.js.map +1 -1
- package/dist/rules/no-var-requires.js +4 -4
- package/dist/rules/no-var-requires.js.map +1 -1
- package/dist/rules/no-wrapper-object-types.js +3 -3
- package/dist/rules/no-wrapper-object-types.js.map +1 -1
- package/dist/rules/non-nullable-type-assertion-style.js +3 -3
- package/dist/rules/non-nullable-type-assertion-style.js.map +1 -1
- package/dist/rules/only-throw-error.js +8 -8
- package/dist/rules/only-throw-error.js.map +1 -1
- package/dist/rules/parameter-properties.js +9 -9
- package/dist/rules/parameter-properties.js.map +1 -1
- package/dist/rules/prefer-as-const.js +5 -5
- package/dist/rules/prefer-as-const.js.map +1 -1
- package/dist/rules/prefer-destructuring.js +13 -13
- package/dist/rules/prefer-destructuring.js.map +1 -1
- package/dist/rules/prefer-find.js +3 -3
- package/dist/rules/prefer-find.js.map +1 -1
- package/dist/rules/prefer-for-of.js.map +1 -1
- package/dist/rules/prefer-function-type.js +2 -2
- package/dist/rules/prefer-function-type.js.map +1 -1
- package/dist/rules/prefer-includes.js +6 -6
- package/dist/rules/prefer-includes.js.map +1 -1
- package/dist/rules/prefer-literal-enum-member.js +4 -4
- package/dist/rules/prefer-literal-enum-member.js.map +1 -1
- package/dist/rules/prefer-nullish-coalescing.js +9 -9
- package/dist/rules/prefer-nullish-coalescing.js.map +1 -1
- package/dist/rules/prefer-optional-chain-utils/analyzeChain.js +4 -4
- package/dist/rules/prefer-optional-chain-utils/analyzeChain.js.map +1 -1
- package/dist/rules/prefer-optional-chain-utils/checkNullishAndReport.js.map +1 -1
- package/dist/rules/prefer-optional-chain-utils/compareNodes.js.map +1 -1
- package/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js +9 -9
- package/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js.map +1 -1
- package/dist/rules/prefer-optional-chain.js +42 -42
- package/dist/rules/prefer-optional-chain.js.map +1 -1
- package/dist/rules/prefer-promise-reject-errors.js +6 -6
- package/dist/rules/prefer-promise-reject-errors.js.map +1 -1
- package/dist/rules/prefer-readonly-parameter-types.js +6 -6
- package/dist/rules/prefer-readonly-parameter-types.js.map +1 -1
- package/dist/rules/prefer-readonly.js +60 -60
- package/dist/rules/prefer-readonly.js.map +1 -1
- package/dist/rules/prefer-reduce-type-parameter.js +2 -2
- package/dist/rules/prefer-reduce-type-parameter.js.map +1 -1
- package/dist/rules/prefer-regexp-exec.js +5 -5
- package/dist/rules/prefer-regexp-exec.js.map +1 -1
- package/dist/rules/prefer-return-this-type.js +2 -2
- package/dist/rules/prefer-return-this-type.js.map +1 -1
- package/dist/rules/prefer-string-starts-ends-with.js +6 -6
- package/dist/rules/prefer-string-starts-ends-with.js.map +1 -1
- package/dist/rules/prefer-ts-expect-error.js +1 -1
- package/dist/rules/prefer-ts-expect-error.js.map +1 -1
- package/dist/rules/promise-function-async.js +12 -12
- package/dist/rules/promise-function-async.js.map +1 -1
- package/dist/rules/require-array-sort-compare.js +6 -6
- package/dist/rules/require-array-sort-compare.js.map +1 -1
- package/dist/rules/require-await.js +12 -12
- package/dist/rules/require-await.js.map +1 -1
- package/dist/rules/restrict-plus-operands.js +17 -17
- package/dist/rules/restrict-plus-operands.js.map +1 -1
- package/dist/rules/restrict-template-expressions.js +4 -4
- package/dist/rules/restrict-template-expressions.js.map +1 -1
- package/dist/rules/return-await.js +31 -31
- package/dist/rules/return-await.js.map +1 -1
- package/dist/rules/sort-type-constituents.js +16 -16
- package/dist/rules/sort-type-constituents.js.map +1 -1
- package/dist/rules/strict-boolean-expressions.js +101 -101
- package/dist/rules/strict-boolean-expressions.js.map +1 -1
- package/dist/rules/switch-exhaustiveness-check.js +14 -14
- package/dist/rules/switch-exhaustiveness-check.js.map +1 -1
- package/dist/rules/triple-slash-reference.js +12 -12
- package/dist/rules/triple-slash-reference.js.map +1 -1
- package/dist/rules/typedef.js +9 -9
- package/dist/rules/typedef.js.map +1 -1
- package/dist/rules/unbound-method.js +6 -6
- package/dist/rules/unbound-method.js.map +1 -1
- package/dist/rules/unified-signatures.js +22 -22
- package/dist/rules/unified-signatures.js.map +1 -1
- package/dist/rules/use-unknown-in-catch-callback-variable.js +10 -10
- package/dist/rules/use-unknown-in-catch-callback-variable.js.map +1 -1
- package/dist/util/assertionFunctionUtils.js +4 -4
- package/dist/util/assertionFunctionUtils.js.map +1 -1
- package/dist/util/astUtils.js +2 -2
- package/dist/util/astUtils.js.map +1 -1
- package/dist/util/collectUnusedVariables.js +83 -83
- package/dist/util/collectUnusedVariables.js.map +1 -1
- package/dist/util/explicitReturnTypeUtils.js +1 -1
- package/dist/util/explicitReturnTypeUtils.js.map +1 -1
- package/dist/util/getFixOrSuggest.js +1 -1
- package/dist/util/getFixOrSuggest.js.map +1 -1
- package/dist/util/getForStatementHeadLoc.js +1 -1
- package/dist/util/getForStatementHeadLoc.js.map +1 -1
- package/dist/util/getFunctionHeadLoc.js +1 -1
- package/dist/util/getFunctionHeadLoc.js.map +1 -1
- package/dist/util/getMemberHeadLoc.js +2 -2
- package/dist/util/getMemberHeadLoc.js.map +1 -1
- package/dist/util/getOperatorPrecedence.js +60 -60
- package/dist/util/getOperatorPrecedence.js.map +1 -1
- package/dist/util/getStaticStringValue.js.map +1 -1
- package/dist/util/getThisExpression.js.map +1 -1
- package/dist/util/getWrappingFixer.js +2 -2
- package/dist/util/getWrappingFixer.js.map +1 -1
- package/dist/util/index.js +6 -6
- package/dist/util/index.js.map +1 -1
- package/dist/util/isArrayMethodCallWithPredicate.js.map +1 -1
- package/dist/util/isAssignee.js.map +1 -1
- package/dist/util/isNodeEqual.js.map +1 -1
- package/dist/util/isNullLiteral.js.map +1 -1
- package/dist/util/isStartOfExpressionStatement.js.map +1 -1
- package/dist/util/isTypeImport.js.map +1 -1
- package/dist/util/isUndefinedIdentifier.js.map +1 -1
- package/dist/util/misc.js +8 -11
- package/dist/util/misc.js.map +1 -1
- package/dist/util/needsPrecedingSemiColon.js.map +1 -1
- package/dist/util/rangeToLoc.js +1 -1
- package/dist/util/rangeToLoc.js.map +1 -1
- package/dist/util/referenceContainsTypeQuery.js.map +1 -1
- package/package.json +7 -7
@@ -15,6 +15,7 @@ exports.default = (0, util_1.createRule)({
|
|
15
15
|
},
|
16
16
|
schema: [
|
17
17
|
{
|
18
|
+
type: 'object',
|
18
19
|
$defs: {
|
19
20
|
modifier: {
|
20
21
|
type: 'string',
|
@@ -29,22 +30,21 @@ exports.default = (0, util_1.createRule)({
|
|
29
30
|
],
|
30
31
|
},
|
31
32
|
},
|
32
|
-
|
33
|
+
additionalProperties: false,
|
33
34
|
properties: {
|
34
35
|
allow: {
|
35
|
-
description: 'Whether to allow certain kinds of properties to be ignored.',
|
36
36
|
type: 'array',
|
37
|
+
description: 'Whether to allow certain kinds of properties to be ignored.',
|
37
38
|
items: {
|
38
39
|
$ref: '#/items/0/$defs/modifier',
|
39
40
|
},
|
40
41
|
},
|
41
42
|
prefer: {
|
42
|
-
description: 'Whether to prefer class properties or parameter properties.',
|
43
43
|
type: 'string',
|
44
|
+
description: 'Whether to prefer class properties or parameter properties.',
|
44
45
|
enum: ['class-property', 'parameter-property'],
|
45
46
|
},
|
46
47
|
},
|
47
|
-
additionalProperties: false,
|
48
48
|
},
|
49
49
|
],
|
50
50
|
},
|
@@ -114,9 +114,6 @@ exports.default = (0, util_1.createRule)({
|
|
114
114
|
context.sourceCode.getText(constructorParameter.typeAnnotation));
|
115
115
|
}
|
116
116
|
return {
|
117
|
-
'ClassDeclaration, ClassExpression'() {
|
118
|
-
propertyNodesByNameStack.push(new Map());
|
119
|
-
},
|
120
117
|
':matches(ClassDeclaration, ClassExpression):exit'() {
|
121
118
|
const propertyNodesByName = (0, util_1.nullThrows)(propertyNodesByNameStack.pop(), 'Stack should exist on class exit');
|
122
119
|
for (const [name, nodes] of propertyNodesByName) {
|
@@ -125,11 +122,11 @@ exports.default = (0, util_1.createRule)({
|
|
125
122
|
nodes.constructorParameter &&
|
126
123
|
typeAnnotationsMatch(nodes.classProperty, nodes.constructorParameter)) {
|
127
124
|
context.report({
|
125
|
+
node: nodes.classProperty,
|
126
|
+
messageId: 'preferParameterProperty',
|
128
127
|
data: {
|
129
128
|
parameter: name,
|
130
129
|
},
|
131
|
-
messageId: 'preferParameterProperty',
|
132
|
-
node: nodes.classProperty,
|
133
130
|
});
|
134
131
|
}
|
135
132
|
}
|
@@ -144,6 +141,9 @@ exports.default = (0, util_1.createRule)({
|
|
144
141
|
}
|
145
142
|
}
|
146
143
|
},
|
144
|
+
'ClassDeclaration, ClassExpression'() {
|
145
|
+
propertyNodesByNameStack.push(new Map());
|
146
|
+
},
|
147
147
|
'MethodDefinition[kind="constructor"]'(node) {
|
148
148
|
for (const parameter of node.value.params) {
|
149
149
|
if (parameter.type === utils_1.AST_NODE_TYPES.Identifier) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parameter-properties.js","sourceRoot":"","sources":["../../src/rules/parameter-properties.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"parameter-properties.js","sourceRoot":"","sources":["../../src/rules/parameter-properties.ts"],"names":[],"mappings":"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"}
|
@@ -51,17 +51,17 @@ exports.default = (0, util_1.createRule)({
|
|
51
51
|
}
|
52
52
|
}
|
53
53
|
return {
|
54
|
+
PropertyDefinition(node) {
|
55
|
+
if (node.value && node.typeAnnotation) {
|
56
|
+
compareTypes(node.value, node.typeAnnotation.typeAnnotation, false);
|
57
|
+
}
|
58
|
+
},
|
54
59
|
TSAsExpression(node) {
|
55
60
|
compareTypes(node.expression, node.typeAnnotation, true);
|
56
61
|
},
|
57
62
|
TSTypeAssertion(node) {
|
58
63
|
compareTypes(node.expression, node.typeAnnotation, true);
|
59
64
|
},
|
60
|
-
PropertyDefinition(node) {
|
61
|
-
if (node.value && node.typeAnnotation) {
|
62
|
-
compareTypes(node.value, node.typeAnnotation.typeAnnotation, false);
|
63
|
-
}
|
64
|
-
},
|
65
65
|
VariableDeclarator(node) {
|
66
66
|
if (node.init && node.id.typeAnnotation) {
|
67
67
|
compareTypes(node.init, node.id.typeAnnotation.typeAnnotation, false);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prefer-as-const.js","sourceRoot":"","sources":["../../src/rules/prefer-as-const.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"prefer-as-const.js","sourceRoot":"","sources":["../../src/rules/prefer-as-const.ts"],"names":[],"mappings":";;AAEA,oDAA0D;AAE1D,kCAAqC;AAErC,kBAAe,IAAA,iBAAU,EAAC;IACxB,IAAI,EAAE,iBAAiB;IACvB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,iDAAiD;YAC9D,WAAW,EAAE,aAAa;SAC3B;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE;YACR,oBAAoB,EAClB,yDAAyD;YAC3D,sBAAsB,EACpB,oEAAoE;YACtE,eAAe,EAAE,uDAAuD;SACzE;QACD,MAAM,EAAE,EAAE;KACX;IACD,cAAc,EAAE,EAAE;IAClB,MAAM,CAAC,OAAO;QACZ,SAAS,YAAY,CACnB,SAA8B,EAC9B,QAA2B,EAC3B,MAAe;YAEf,IACE,SAAS,CAAC,IAAI,KAAK,sBAAc,CAAC,OAAO;gBACzC,QAAQ,CAAC,IAAI,KAAK,sBAAc,CAAC,aAAa;gBAC9C,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,sBAAc,CAAC,OAAO;gBAChD,SAAS,CAAC,GAAG,KAAK,QAAQ,CAAC,OAAO,CAAC,GAAG,EACtC,CAAC;gBACD,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,sBAAsB;wBACjC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC;qBACnD,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,wBAAwB;wBACnC,OAAO,EAAE;4BACP;gCACE,SAAS,EAAE,iBAAiB;gCAC5B,GAAG,EAAE,CAAC,KAAK,EAAsB,EAAE,CAAC;oCAClC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;oCAC7B,KAAK,CAAC,eAAe,CAAC,SAAS,EAAE,WAAW,CAAC;iCAC9C;6BACF;yBACF;qBACF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,kBAAkB,CAAC,IAAI;gBACrB,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACtC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;YACD,cAAc,CAAC,IAAI;gBACjB,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YAC3D,CAAC;YACD,eAAe,CAAC,IAAI;gBAClB,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;YAC3D,CAAC;YACD,kBAAkB,CAAC,IAAI;gBACrB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC;oBACxC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
@@ -30,6 +30,7 @@ const getESLintCoreRule_1 = require("../util/getESLintCoreRule");
|
|
30
30
|
const baseRule = (0, getESLintCoreRule_1.getESLintCoreRule)('prefer-destructuring');
|
31
31
|
const destructuringTypeConfig = {
|
32
32
|
type: 'object',
|
33
|
+
additionalProperties: false,
|
33
34
|
properties: {
|
34
35
|
array: {
|
35
36
|
type: 'boolean',
|
@@ -38,18 +39,17 @@ const destructuringTypeConfig = {
|
|
38
39
|
type: 'boolean',
|
39
40
|
},
|
40
41
|
},
|
41
|
-
additionalProperties: false,
|
42
42
|
};
|
43
43
|
const schema = [
|
44
44
|
{
|
45
45
|
oneOf: [
|
46
46
|
{
|
47
47
|
type: 'object',
|
48
|
+
additionalProperties: false,
|
48
49
|
properties: {
|
49
|
-
VariableDeclarator: destructuringTypeConfig,
|
50
50
|
AssignmentExpression: destructuringTypeConfig,
|
51
|
+
VariableDeclarator: destructuringTypeConfig,
|
51
52
|
},
|
52
|
-
additionalProperties: false,
|
53
53
|
},
|
54
54
|
destructuringTypeConfig,
|
55
55
|
],
|
@@ -57,10 +57,10 @@ const schema = [
|
|
57
57
|
{
|
58
58
|
type: 'object',
|
59
59
|
properties: {
|
60
|
-
|
60
|
+
enforceForDeclarationWithTypeAnnotation: {
|
61
61
|
type: 'boolean',
|
62
62
|
},
|
63
|
-
|
63
|
+
enforceForRenamedProperties: {
|
64
64
|
type: 'boolean',
|
65
65
|
},
|
66
66
|
},
|
@@ -75,18 +75,18 @@ exports.default = (0, util_1.createRule)({
|
|
75
75
|
extendsBaseRule: true,
|
76
76
|
requiresTypeChecking: true,
|
77
77
|
},
|
78
|
-
schema,
|
79
78
|
fixable: baseRule.meta.fixable,
|
80
79
|
hasSuggestions: baseRule.meta.hasSuggestions,
|
81
80
|
messages: baseRule.meta.messages,
|
81
|
+
schema,
|
82
82
|
},
|
83
83
|
defaultOptions: [
|
84
84
|
{
|
85
|
-
|
85
|
+
AssignmentExpression: {
|
86
86
|
array: true,
|
87
87
|
object: true,
|
88
88
|
},
|
89
|
-
|
89
|
+
VariableDeclarator: {
|
90
90
|
array: true,
|
91
91
|
object: true,
|
92
92
|
},
|
@@ -94,21 +94,21 @@ exports.default = (0, util_1.createRule)({
|
|
94
94
|
{},
|
95
95
|
],
|
96
96
|
create(context, [enabledTypes, options]) {
|
97
|
-
const {
|
98
|
-
const {
|
97
|
+
const { enforceForDeclarationWithTypeAnnotation = false, enforceForRenamedProperties = false, } = options;
|
98
|
+
const { esTreeNodeToTSNodeMap, program } = (0, util_1.getParserServices)(context);
|
99
99
|
const typeChecker = program.getTypeChecker();
|
100
100
|
const baseRules = baseRule.create(context);
|
101
101
|
let baseRulesWithoutFixCache = null;
|
102
102
|
return {
|
103
|
-
VariableDeclarator(node) {
|
104
|
-
performCheck(node.id, node.init, node);
|
105
|
-
},
|
106
103
|
AssignmentExpression(node) {
|
107
104
|
if (node.operator !== '=') {
|
108
105
|
return;
|
109
106
|
}
|
110
107
|
performCheck(node.left, node.right, node);
|
111
108
|
},
|
109
|
+
VariableDeclarator(node) {
|
110
|
+
performCheck(node.id, node.init, node);
|
111
|
+
},
|
112
112
|
};
|
113
113
|
function performCheck(leftNode, rightNode, reportNode) {
|
114
114
|
const rules = leftNode.type === utils_1.AST_NODE_TYPES.Identifier &&
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prefer-destructuring.js","sourceRoot":"","sources":["../../src/rules/prefer-destructuring.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;
|
1
|
+
{"version":3,"file":"prefer-destructuring.js","sourceRoot":"","sources":["../../src/rules/prefer-destructuring.ts"],"names":[],"mappings":"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"}
|
@@ -29,18 +29,18 @@ const util_1 = require("../util");
|
|
29
29
|
exports.default = (0, util_1.createRule)({
|
30
30
|
name: 'prefer-find',
|
31
31
|
meta: {
|
32
|
+
type: 'suggestion',
|
32
33
|
docs: {
|
33
34
|
description: 'Enforce the use of Array.prototype.find() over Array.prototype.filter() followed by [0] when looking for a single result',
|
34
35
|
recommended: 'stylistic',
|
35
36
|
requiresTypeChecking: true,
|
36
37
|
},
|
38
|
+
hasSuggestions: true,
|
37
39
|
messages: {
|
38
40
|
preferFind: 'Prefer .find(...) instead of .filter(...)[0].',
|
39
41
|
preferFindSuggestion: 'Use .find(...) instead of .filter(...)[0].',
|
40
42
|
},
|
41
43
|
schema: [],
|
42
|
-
type: 'suggestion',
|
43
|
-
hasSuggestions: true,
|
44
44
|
},
|
45
45
|
defaultOptions: [],
|
46
46
|
create(context) {
|
@@ -86,8 +86,8 @@ exports.default = (0, util_1.createRule)({
|
|
86
86
|
if (isArrayish(filteredObjectType)) {
|
87
87
|
return [
|
88
88
|
{
|
89
|
-
isBracketSyntaxForFilter,
|
90
89
|
filterNode,
|
90
|
+
isBracketSyntaxForFilter,
|
91
91
|
},
|
92
92
|
];
|
93
93
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prefer-find.js","sourceRoot":"","sources":["../../src/rules/prefer-find.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;
|
1
|
+
{"version":3,"file":"prefer-find.js","sourceRoot":"","sources":["../../src/rules/prefer-find.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prefer-for-of.js","sourceRoot":"","sources":["../../src/rules/prefer-for-of.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"prefer-for-of.js","sourceRoot":"","sources":["../../src/rules/prefer-for-of.ts"],"names":[],"mappings":"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"}
|
@@ -4,12 +4,13 @@ exports.phrases = void 0;
|
|
4
4
|
const utils_1 = require("@typescript-eslint/utils");
|
5
5
|
const util_1 = require("../util");
|
6
6
|
exports.phrases = {
|
7
|
-
[utils_1.AST_NODE_TYPES.TSTypeLiteral]: 'Type literal',
|
8
7
|
[utils_1.AST_NODE_TYPES.TSInterfaceDeclaration]: 'Interface',
|
8
|
+
[utils_1.AST_NODE_TYPES.TSTypeLiteral]: 'Type literal',
|
9
9
|
};
|
10
10
|
exports.default = (0, util_1.createRule)({
|
11
11
|
name: 'prefer-function-type',
|
12
12
|
meta: {
|
13
|
+
type: 'suggestion',
|
13
14
|
docs: {
|
14
15
|
description: 'Enforce using function types instead of interfaces with call signatures',
|
15
16
|
recommended: 'stylistic',
|
@@ -20,7 +21,6 @@ exports.default = (0, util_1.createRule)({
|
|
20
21
|
unexpectedThisOnFunctionOnlyInterface: "`this` refers to the function type '{{ interfaceName }}', did you intend to use a generic `this` parameter like `<Self>(this: Self, ...) => Self` instead?",
|
21
22
|
},
|
22
23
|
schema: [],
|
23
|
-
type: 'suggestion',
|
24
24
|
},
|
25
25
|
defaultOptions: [],
|
26
26
|
create(context) {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prefer-function-type.js","sourceRoot":"","sources":["../../src/rules/prefer-function-type.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"prefer-function-type.js","sourceRoot":"","sources":["../../src/rules/prefer-function-type.ts"],"names":[],"mappings":"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"}
|
@@ -29,7 +29,6 @@ const ts = __importStar(require("typescript"));
|
|
29
29
|
const util_1 = require("../util");
|
30
30
|
exports.default = (0, util_1.createRule)({
|
31
31
|
name: 'prefer-includes',
|
32
|
-
defaultOptions: [],
|
33
32
|
meta: {
|
34
33
|
type: 'suggestion',
|
35
34
|
docs: {
|
@@ -44,6 +43,7 @@ exports.default = (0, util_1.createRule)({
|
|
44
43
|
},
|
45
44
|
schema: [],
|
46
45
|
},
|
46
|
+
defaultOptions: [],
|
47
47
|
create(context) {
|
48
48
|
const globalScope = context.sourceCode.getScope(context.sourceCode.ast);
|
49
49
|
const services = (0, util_1.getParserServices)(context);
|
@@ -104,7 +104,7 @@ exports.default = (0, util_1.createRule)({
|
|
104
104
|
if (evaluated == null || !(evaluated.value instanceof RegExp)) {
|
105
105
|
return null;
|
106
106
|
}
|
107
|
-
const {
|
107
|
+
const { flags, pattern } = (0, regexpp_1.parseRegExpLiteral)(evaluated.value);
|
108
108
|
if (pattern.alternatives.length !== 1 ||
|
109
109
|
flags.ignoreCase ||
|
110
110
|
flags.global) {
|
@@ -121,13 +121,13 @@ exports.default = (0, util_1.createRule)({
|
|
121
121
|
function escapeString(str) {
|
122
122
|
const EscapeMap = {
|
123
123
|
'\0': '\\0',
|
124
|
-
|
125
|
-
'\\': '\\\\',
|
124
|
+
'\t': '\\t',
|
126
125
|
'\n': '\\n',
|
127
|
-
'\r': '\\r',
|
128
126
|
'\v': '\\v',
|
129
|
-
'\t': '\\t',
|
130
127
|
'\f': '\\f',
|
128
|
+
'\r': '\\r',
|
129
|
+
"'": "\\'",
|
130
|
+
'\\': '\\\\',
|
131
131
|
// "\b" cause unexpected replacements
|
132
132
|
// '\b': '\\b',
|
133
133
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prefer-includes.js","sourceRoot":"","sources":["../../src/rules/prefer-includes.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;
|
1
|
+
{"version":3,"file":"prefer-includes.js","sourceRoot":"","sources":["../../src/rules/prefer-includes.ts"],"names":[],"mappings":"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"}
|
@@ -17,13 +17,13 @@ exports.default = (0, util_1.createRule)({
|
|
17
17
|
schema: [
|
18
18
|
{
|
19
19
|
type: 'object',
|
20
|
+
additionalProperties: false,
|
20
21
|
properties: {
|
21
22
|
allowBitwiseExpressions: {
|
22
|
-
description: 'Whether to allow using bitwise expressions in enum initializers.',
|
23
23
|
type: 'boolean',
|
24
|
+
description: 'Whether to allow using bitwise expressions in enum initializers.',
|
24
25
|
},
|
25
26
|
},
|
26
|
-
additionalProperties: false,
|
27
27
|
},
|
28
28
|
],
|
29
29
|
},
|
@@ -81,7 +81,7 @@ exports.default = (0, util_1.createRule)({
|
|
81
81
|
return node.expressions.length === 0;
|
82
82
|
case utils_1.AST_NODE_TYPES.UnaryExpression:
|
83
83
|
// +123, -123, etc.
|
84
|
-
if (['
|
84
|
+
if (['-', '+'].includes(node.operator)) {
|
85
85
|
return isAllowedInitializerExpressionRecursive(node.argument, partOfBitwiseComputation);
|
86
86
|
}
|
87
87
|
if (allowBitwiseExpressions) {
|
@@ -91,7 +91,7 @@ exports.default = (0, util_1.createRule)({
|
|
91
91
|
return false;
|
92
92
|
case utils_1.AST_NODE_TYPES.BinaryExpression:
|
93
93
|
if (allowBitwiseExpressions) {
|
94
|
-
return (['
|
94
|
+
return (['&', '^', '<<', '>>', '>>>', '|'].includes(node.operator) &&
|
95
95
|
isAllowedInitializerExpressionRecursive(node.left, true) &&
|
96
96
|
isAllowedInitializerExpressionRecursive(node.right, true));
|
97
97
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"prefer-literal-enum-member.js","sourceRoot":"","sources":["../../src/rules/prefer-literal-enum-member.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"prefer-literal-enum-member.js","sourceRoot":"","sources":["../../src/rules/prefer-literal-enum-member.ts"],"names":[],"mappings":";;AAEA,oDAA0D;AAE1D,kCAA2D;AAE3D,kBAAe,IAAA,iBAAU,EAAC;IACxB,IAAI,EAAE,4BAA4B;IAClC,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,+CAA+C;YAC5D,WAAW,EAAE,QAAQ;YACrB,oBAAoB,EAAE,KAAK;SAC5B;QACD,QAAQ,EAAE;YACR,UAAU,EAAE,sEAAsE;SACnF;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,uBAAuB,EAAE;wBACvB,IAAI,EAAE,SAAS;wBACf,WAAW,EACT,kEAAkE;qBACrE;iBACF;aACF;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,uBAAuB,EAAE,KAAK;SAC/B;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,uBAAuB,EAAE,CAAC;QAC3C,SAAS,oBAAoB,CAAC,IAAmB,EAAE,IAAY;YAC7D,OAAO,IAAI,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;QACvE,CAAC;QAED,SAAS,aAAa,CACpB,IAAgC,EAChC,IAAY;YAEZ,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAC3B,MAAM,CAAC,EAAE,CACP,oBAAoB,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC;gBACrC,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK,sBAAc,CAAC,OAAO;oBACxC,IAAA,2BAAoB,EAAC,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,CAC9C,CAAC;QACJ,CAAC;QAED,SAAS,gBAAgB,CACvB,IAAgC,EAChC,IAAmB;YAEnB,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE,CAAC;gBAC5C,OAAO,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,CAAC;YAED,IACE,IAAI,CAAC,IAAI,KAAK,sBAAc,CAAC,gBAAgB;gBAC7C,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAC/C,CAAC;gBACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE,CAAC;oBACrD,OAAO,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACjD,CAAC;gBAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,MAAM,YAAY,GAAG,IAAA,2BAAoB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACzD,IAAI,YAAY,EAAE,CAAC;wBACjB,OAAO,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO;YACL,YAAY,CAAC,IAAI;gBACf,wFAAwF;gBACxF,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;oBAC7B,OAAO;gBACT,CAAC;gBACD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;gBAEvC,SAAS,uCAAuC,CAC9C,IAAsD,EACtD,wBAAiC;oBAEjC,8EAA8E;oBAC9E,2DAA2D;oBAC3D,IAAI,wBAAwB,IAAI,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;wBACpE,OAAO,IAAI,CAAC;oBACd,CAAC;oBAED,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;wBAClB,kBAAkB;wBAClB,KAAK,sBAAc,CAAC,OAAO;4BACzB,OAAO,IAAI,CAAC;wBAEd,sCAAsC;wBACtC,KAAK,sBAAc,CAAC,eAAe;4BACjC,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC;wBAEvC,KAAK,sBAAc,CAAC,eAAe;4BACjC,mBAAmB;4BACnB,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gCACvC,OAAO,uCAAuC,CAC5C,IAAI,CAAC,QAAQ,EACb,wBAAwB,CACzB,CAAC;4BACJ,CAAC;4BAED,IAAI,uBAAuB,EAAE,CAAC;gCAC5B,OAAO,CACL,IAAI,CAAC,QAAQ,KAAK,GAAG;oCACrB,uCAAuC,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAC7D,CAAC;4BACJ,CAAC;4BACD,OAAO,KAAK,CAAC;wBAEf,KAAK,sBAAc,CAAC,gBAAgB;4BAClC,IAAI,uBAAuB,EAAE,CAAC;gCAC5B,OAAO,CACL,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;oCAC1D,uCAAuC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC;oCACxD,uCAAuC,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAC1D,CAAC;4BACJ,CAAC;4BACD,OAAO,KAAK,CAAC;wBAEf;4BACE,OAAO,KAAK,CAAC;oBACjB,CAAC;gBACH,CAAC;gBAED,IAAI,uCAAuC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;oBACrE,OAAO;gBACT,CAAC;gBAED,OAAO,CAAC,MAAM,CAAC;oBACb,IAAI,EAAE,IAAI,CAAC,EAAE;oBACb,SAAS,EAAE,YAAY;iBACxB,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
@@ -38,26 +38,27 @@ exports.default = (0, util_1.createRule)({
|
|
38
38
|
},
|
39
39
|
hasSuggestions: true,
|
40
40
|
messages: {
|
41
|
+
noStrictNullCheck: 'This rule requires the `strictNullChecks` compiler option to be turned on to function correctly.',
|
41
42
|
preferNullishOverOr: 'Prefer using nullish coalescing operator (`??`) instead of a logical or (`||`), as it is a safer operator.',
|
42
43
|
preferNullishOverTernary: 'Prefer using nullish coalescing operator (`??`) instead of a ternary expression, as it is simpler to read.',
|
43
44
|
suggestNullish: 'Fix to nullish coalescing operator (`??`).',
|
44
|
-
noStrictNullCheck: 'This rule requires the `strictNullChecks` compiler option to be turned on to function correctly.',
|
45
45
|
},
|
46
46
|
schema: [
|
47
47
|
{
|
48
48
|
type: 'object',
|
49
|
+
additionalProperties: false,
|
49
50
|
properties: {
|
50
51
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: {
|
51
|
-
description: 'Unless this is set to `true`, the rule will error on every file whose `tsconfig.json` does _not_ have the `strictNullChecks` compiler option (or `strict`) set to `true`.',
|
52
52
|
type: 'boolean',
|
53
|
+
description: 'Unless this is set to `true`, the rule will error on every file whose `tsconfig.json` does _not_ have the `strictNullChecks` compiler option (or `strict`) set to `true`.',
|
53
54
|
},
|
54
55
|
ignoreConditionalTests: {
|
55
|
-
description: 'Whether to ignore cases that are located within a conditional test.',
|
56
56
|
type: 'boolean',
|
57
|
+
description: 'Whether to ignore cases that are located within a conditional test.',
|
57
58
|
},
|
58
59
|
ignoreMixedLogicalExpressions: {
|
59
|
-
description: 'Whether to ignore any logical or expressions that are part of a mixed logical expression (with `&&`).',
|
60
60
|
type: 'boolean',
|
61
|
+
description: 'Whether to ignore any logical or expressions that are part of a mixed logical expression (with `&&`).',
|
61
62
|
},
|
62
63
|
ignorePrimitives: {
|
63
64
|
description: 'Whether to ignore all (`true`) or some (an object with properties) primitive types.',
|
@@ -78,11 +79,10 @@ exports.default = (0, util_1.createRule)({
|
|
78
79
|
],
|
79
80
|
},
|
80
81
|
ignoreTernaryTests: {
|
81
|
-
description: 'Whether to ignore any ternary expressions that could be simplified by using the nullish coalescing operator.',
|
82
82
|
type: 'boolean',
|
83
|
+
description: 'Whether to ignore any ternary expressions that could be simplified by using the nullish coalescing operator.',
|
83
84
|
},
|
84
85
|
},
|
85
|
-
additionalProperties: false,
|
86
86
|
},
|
87
87
|
],
|
88
88
|
},
|
@@ -90,7 +90,6 @@ exports.default = (0, util_1.createRule)({
|
|
90
90
|
{
|
91
91
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: false,
|
92
92
|
ignoreConditionalTests: true,
|
93
|
-
ignoreTernaryTests: false,
|
94
93
|
ignoreMixedLogicalExpressions: false,
|
95
94
|
ignorePrimitives: {
|
96
95
|
bigint: false,
|
@@ -98,6 +97,7 @@ exports.default = (0, util_1.createRule)({
|
|
98
97
|
number: false,
|
99
98
|
string: false,
|
100
99
|
},
|
100
|
+
ignoreTernaryTests: false,
|
101
101
|
},
|
102
102
|
],
|
103
103
|
create(context, [{ allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing, ignoreConditionalTests, ignoreMixedLogicalExpressions, ignorePrimitives, ignoreTernaryTests, },]) {
|
@@ -109,8 +109,8 @@ exports.default = (0, util_1.createRule)({
|
|
109
109
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing !== true) {
|
110
110
|
context.report({
|
111
111
|
loc: {
|
112
|
-
start: {
|
113
|
-
end: {
|
112
|
+
start: { column: 0, line: 0 },
|
113
|
+
end: { column: 0, line: 0 },
|
114
114
|
},
|
115
115
|
messageId: 'noStrictNullCheck',
|
116
116
|
});
|