@typescript-eslint/eslint-plugin 8.8.2-alpha.0 → 8.8.2-alpha.10
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/configs/eslint-recommended-raw.js +2 -2
- package/dist/configs/eslint-recommended-raw.js.map +1 -1
- package/dist/index.js +23 -21
- package/dist/index.js.map +1 -1
- 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 +23 -23
- 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/index.js +2 -2
- package/dist/rules/index.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 +8 -8
- 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 +6 -6
- 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 +137 -118
- 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 +25 -25
- 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 +19 -19
- 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 +19 -19
- 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 +8 -12
- 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 +40 -36
- 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 +9 -9
- 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 +8 -5
- 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 +36 -37
- 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 +87 -87
- 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 +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 +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/docs/rules/no-unsafe-call.mdx +18 -1
- package/eslint-recommended-raw.d.ts +5 -0
- package/package.json +8 -7
- package/rules.d.ts +13 -4
@@ -10,18 +10,22 @@ exports.default = (0, util_1.createRule)({
|
|
10
10
|
description: 'Disallow aliasing `this`',
|
11
11
|
recommended: 'recommended',
|
12
12
|
},
|
13
|
+
messages: {
|
14
|
+
thisAssignment: "Unexpected aliasing of 'this' to local variable.",
|
15
|
+
thisDestructure: "Unexpected aliasing of members of 'this' to local variables.",
|
16
|
+
},
|
13
17
|
schema: [
|
14
18
|
{
|
15
19
|
type: 'object',
|
16
20
|
additionalProperties: false,
|
17
21
|
properties: {
|
18
22
|
allowDestructuring: {
|
19
|
-
description: 'Whether to ignore destructurings, such as `const { props, state } = this`.',
|
20
23
|
type: 'boolean',
|
24
|
+
description: 'Whether to ignore destructurings, such as `const { props, state } = this`.',
|
21
25
|
},
|
22
26
|
allowedNames: {
|
23
|
-
description: 'Names to ignore, such as ["self"] for `const self = this;`.',
|
24
27
|
type: 'array',
|
28
|
+
description: 'Names to ignore, such as ["self"] for `const self = this;`.',
|
25
29
|
items: {
|
26
30
|
type: 'string',
|
27
31
|
},
|
@@ -29,10 +33,6 @@ exports.default = (0, util_1.createRule)({
|
|
29
33
|
},
|
30
34
|
},
|
31
35
|
],
|
32
|
-
messages: {
|
33
|
-
thisAssignment: "Unexpected aliasing of 'this' to local variable.",
|
34
|
-
thisDestructure: "Unexpected aliasing of members of 'this' to local variables.",
|
35
|
-
},
|
36
36
|
},
|
37
37
|
defaultOptions: [
|
38
38
|
{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"no-this-alias.js","sourceRoot":"","sources":["../../src/rules/no-this-alias.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"no-this-alias.js","sourceRoot":"","sources":["../../src/rules/no-this-alias.ts"],"names":[],"mappings":";;AAEA,oDAA0D;AAE1D,kCAAqC;AAUrC,kBAAe,IAAA,iBAAU,EAAsB;IAC7C,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE;QACJ,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE;YACJ,WAAW,EAAE,0BAA0B;YACvC,WAAW,EAAE,aAAa;SAC3B;QACD,QAAQ,EAAE;YACR,cAAc,EAAE,kDAAkD;YAClE,eAAe,EACb,8DAA8D;SACjE;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,UAAU,EAAE;oBACV,kBAAkB,EAAE;wBAClB,IAAI,EAAE,SAAS;wBACf,WAAW,EACT,4EAA4E;qBAC/E;oBACD,YAAY,EAAE;wBACZ,IAAI,EAAE,OAAO;wBACb,WAAW,EACT,6DAA6D;wBAC/D,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF;aACF;SACF;KACF;IACD,cAAc,EAAE;QACd;YACE,kBAAkB,EAAE,IAAI;YACxB,YAAY,EAAE,EAAE;SACjB;KACF;IACD,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,kBAAkB,EAAE,YAAY,EAAE,CAAC;QACpD,OAAO;YACL,mGAAmG,CACjG,IAAiE;gBAEjE,MAAM,EAAE,GACN,IAAI,CAAC,IAAI,KAAK,sBAAc,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBACxE,IAAI,kBAAkB,IAAI,EAAE,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU,EAAE,CAAC;oBAChE,OAAO;gBACT,CAAC;gBAED,MAAM,cAAc,GAClB,EAAE,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU;oBACnC,CAAC,CAAC,qEAAqE;wBACrE,oEAAoE;wBACpE,YAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;oBACjC,CAAC,CAAC,KAAK,CAAC;gBACZ,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC;wBACb,IAAI,EAAE,EAAE;wBACR,SAAS,EACP,EAAE,CAAC,IAAI,KAAK,sBAAc,CAAC,UAAU;4BACnC,CAAC,CAAC,gBAAgB;4BAClB,CAAC,CAAC,iBAAiB;qBACxB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
|
@@ -5,18 +5,19 @@ const util_1 = require("../util");
|
|
5
5
|
exports.default = (0, util_1.createRule)({
|
6
6
|
name: 'no-type-alias',
|
7
7
|
meta: {
|
8
|
-
deprecated: true,
|
9
8
|
type: 'suggestion',
|
9
|
+
deprecated: true,
|
10
10
|
docs: {
|
11
11
|
description: 'Disallow type aliases',
|
12
12
|
// too opinionated to be recommended
|
13
13
|
},
|
14
14
|
messages: {
|
15
|
-
noTypeAlias: 'Type {{alias}} are not allowed.',
|
16
15
|
noCompositionAlias: '{{typeName}} in {{compositionType}} types are not allowed.',
|
16
|
+
noTypeAlias: 'Type {{alias}} are not allowed.',
|
17
17
|
},
|
18
18
|
schema: [
|
19
19
|
{
|
20
|
+
type: 'object',
|
20
21
|
$defs: {
|
21
22
|
expandedOptions: {
|
22
23
|
type: 'string',
|
@@ -33,42 +34,41 @@ exports.default = (0, util_1.createRule)({
|
|
33
34
|
enum: ['always', 'never'],
|
34
35
|
},
|
35
36
|
},
|
36
|
-
|
37
|
+
additionalProperties: false,
|
37
38
|
properties: {
|
38
39
|
allowAliases: {
|
39
|
-
description: 'Whether to allow direct one-to-one type aliases.',
|
40
40
|
$ref: '#/items/0/$defs/expandedOptions',
|
41
|
+
description: 'Whether to allow direct one-to-one type aliases.',
|
41
42
|
},
|
42
43
|
allowCallbacks: {
|
43
|
-
description: 'Whether to allow type aliases for callbacks.',
|
44
44
|
$ref: '#/items/0/$defs/simpleOptions',
|
45
|
+
description: 'Whether to allow type aliases for callbacks.',
|
45
46
|
},
|
46
47
|
allowConditionalTypes: {
|
47
|
-
description: 'Whether to allow type aliases for conditional types.',
|
48
48
|
$ref: '#/items/0/$defs/simpleOptions',
|
49
|
+
description: 'Whether to allow type aliases for conditional types.',
|
49
50
|
},
|
50
51
|
allowConstructors: {
|
52
|
+
$ref: '#/items/0/$defs/simpleOptions',
|
51
53
|
description: 'Whether to allow type aliases with constructors.',
|
54
|
+
},
|
55
|
+
allowGenerics: {
|
52
56
|
$ref: '#/items/0/$defs/simpleOptions',
|
57
|
+
description: 'Whether to allow type aliases with generic types.',
|
53
58
|
},
|
54
59
|
allowLiterals: {
|
55
|
-
description: 'Whether to allow type aliases with object literal types.',
|
56
60
|
$ref: '#/items/0/$defs/expandedOptions',
|
61
|
+
description: 'Whether to allow type aliases with object literal types.',
|
57
62
|
},
|
58
63
|
allowMappedTypes: {
|
59
|
-
description: 'Whether to allow type aliases with mapped types.',
|
60
64
|
$ref: '#/items/0/$defs/expandedOptions',
|
65
|
+
description: 'Whether to allow type aliases with mapped types.',
|
61
66
|
},
|
62
67
|
allowTupleTypes: {
|
63
|
-
description: 'Whether to allow type aliases with tuple types.',
|
64
68
|
$ref: '#/items/0/$defs/expandedOptions',
|
65
|
-
|
66
|
-
allowGenerics: {
|
67
|
-
description: 'Whether to allow type aliases with generic types.',
|
68
|
-
$ref: '#/items/0/$defs/simpleOptions',
|
69
|
+
description: 'Whether to allow type aliases with tuple types.',
|
69
70
|
},
|
70
71
|
},
|
71
|
-
additionalProperties: false,
|
72
72
|
},
|
73
73
|
],
|
74
74
|
},
|
@@ -78,13 +78,13 @@ exports.default = (0, util_1.createRule)({
|
|
78
78
|
allowCallbacks: 'never',
|
79
79
|
allowConditionalTypes: 'never',
|
80
80
|
allowConstructors: 'never',
|
81
|
+
allowGenerics: 'never',
|
81
82
|
allowLiterals: 'never',
|
82
83
|
allowMappedTypes: 'never',
|
83
84
|
allowTupleTypes: 'never',
|
84
|
-
allowGenerics: 'never',
|
85
85
|
},
|
86
86
|
],
|
87
|
-
create(context, [{ allowAliases, allowCallbacks, allowConditionalTypes, allowConstructors, allowLiterals, allowMappedTypes, allowTupleTypes,
|
87
|
+
create(context, [{ allowAliases, allowCallbacks, allowConditionalTypes, allowConstructors, allowGenerics, allowLiterals, allowMappedTypes, allowTupleTypes, },]) {
|
88
88
|
const unions = ['always', 'in-unions', 'in-unions-and-intersections'];
|
89
89
|
const intersections = [
|
90
90
|
'always',
|
@@ -99,11 +99,11 @@ exports.default = (0, util_1.createRule)({
|
|
99
99
|
const aliasTypes = new Set([
|
100
100
|
utils_1.AST_NODE_TYPES.TSArrayType,
|
101
101
|
utils_1.AST_NODE_TYPES.TSImportType,
|
102
|
-
utils_1.AST_NODE_TYPES.TSTypeReference,
|
103
|
-
utils_1.AST_NODE_TYPES.TSLiteralType,
|
104
|
-
utils_1.AST_NODE_TYPES.TSTypeQuery,
|
105
102
|
utils_1.AST_NODE_TYPES.TSIndexedAccessType,
|
103
|
+
utils_1.AST_NODE_TYPES.TSLiteralType,
|
106
104
|
utils_1.AST_NODE_TYPES.TSTemplateLiteralType,
|
105
|
+
utils_1.AST_NODE_TYPES.TSTypeQuery,
|
106
|
+
utils_1.AST_NODE_TYPES.TSTypeReference,
|
107
107
|
]);
|
108
108
|
/**
|
109
109
|
* Determines if the composition type is supported by the allowed flags.
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"no-type-alias.js","sourceRoot":"","sources":["../../src/rules/no-type-alias.ts"],"names":[],"mappings":";;
|
1
|
+
{"version":3,"file":"no-type-alias.js","sourceRoot":"","sources":["../../src/rules/no-type-alias.ts"],"names":[],"mappings":"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"}
|
@@ -30,6 +30,7 @@ const util_1 = require("../util");
|
|
30
30
|
exports.default = (0, util_1.createRule)({
|
31
31
|
name: 'no-unnecessary-boolean-literal-compare',
|
32
32
|
meta: {
|
33
|
+
type: 'suggestion',
|
33
34
|
docs: {
|
34
35
|
description: 'Disallow unnecessary equality comparisons against boolean literals',
|
35
36
|
recommended: 'strict',
|
@@ -37,34 +38,33 @@ exports.default = (0, util_1.createRule)({
|
|
37
38
|
},
|
38
39
|
fixable: 'code',
|
39
40
|
messages: {
|
40
|
-
|
41
|
-
negated: 'This expression unnecessarily compares a boolean value to a boolean instead of negating it.',
|
41
|
+
comparingNullableToFalse: 'This expression unnecessarily compares a nullable boolean value to false instead of using the ?? operator to provide a default.',
|
42
42
|
comparingNullableToTrueDirect: 'This expression unnecessarily compares a nullable boolean value to true instead of using it directly.',
|
43
43
|
comparingNullableToTrueNegated: 'This expression unnecessarily compares a nullable boolean value to true instead of negating it.',
|
44
|
-
|
44
|
+
direct: 'This expression unnecessarily compares a boolean value to a boolean instead of using it directly.',
|
45
|
+
negated: 'This expression unnecessarily compares a boolean value to a boolean instead of negating it.',
|
45
46
|
},
|
46
47
|
schema: [
|
47
48
|
{
|
48
49
|
type: 'object',
|
50
|
+
additionalProperties: false,
|
49
51
|
properties: {
|
50
|
-
allowComparingNullableBooleansToTrue: {
|
51
|
-
description: 'Whether to allow comparisons between nullable boolean variables and `true`.',
|
52
|
-
type: 'boolean',
|
53
|
-
},
|
54
52
|
allowComparingNullableBooleansToFalse: {
|
53
|
+
type: 'boolean',
|
55
54
|
description: 'Whether to allow comparisons between nullable boolean variables and `false`.',
|
55
|
+
},
|
56
|
+
allowComparingNullableBooleansToTrue: {
|
56
57
|
type: 'boolean',
|
58
|
+
description: 'Whether to allow comparisons between nullable boolean variables and `true`.',
|
57
59
|
},
|
58
60
|
},
|
59
|
-
additionalProperties: false,
|
60
61
|
},
|
61
62
|
],
|
62
|
-
type: 'suggestion',
|
63
63
|
},
|
64
64
|
defaultOptions: [
|
65
65
|
{
|
66
|
-
allowComparingNullableBooleansToTrue: true,
|
67
66
|
allowComparingNullableBooleansToFalse: true,
|
67
|
+
allowComparingNullableBooleansToTrue: true,
|
68
68
|
},
|
69
69
|
],
|
70
70
|
create(context, [options]) {
|
@@ -134,8 +134,8 @@ exports.default = (0, util_1.createRule)({
|
|
134
134
|
const { value: literalBooleanInComparison } = against;
|
135
135
|
const negated = !comparisonType.isPositive;
|
136
136
|
return {
|
137
|
-
literalBooleanInComparison,
|
138
137
|
expression,
|
138
|
+
literalBooleanInComparison,
|
139
139
|
negated,
|
140
140
|
};
|
141
141
|
}
|
@@ -163,6 +163,16 @@ exports.default = (0, util_1.createRule)({
|
|
163
163
|
}
|
164
164
|
}
|
165
165
|
context.report({
|
166
|
+
node,
|
167
|
+
messageId: comparison.expressionIsNullableBoolean
|
168
|
+
? comparison.literalBooleanInComparison
|
169
|
+
? comparison.negated
|
170
|
+
? 'comparingNullableToTrueNegated'
|
171
|
+
: 'comparingNullableToTrueDirect'
|
172
|
+
: 'comparingNullableToFalse'
|
173
|
+
: comparison.negated
|
174
|
+
? 'negated'
|
175
|
+
: 'direct',
|
166
176
|
*fix(fixer) {
|
167
177
|
// 1. isUnaryNegation - parent negation
|
168
178
|
// 2. literalBooleanInComparison - is compared to literal boolean
|
@@ -188,16 +198,6 @@ exports.default = (0, util_1.createRule)({
|
|
188
198
|
yield fixer.insertTextAfter(mutatedNode, ' ?? true)');
|
189
199
|
}
|
190
200
|
},
|
191
|
-
messageId: comparison.expressionIsNullableBoolean
|
192
|
-
? comparison.literalBooleanInComparison
|
193
|
-
? comparison.negated
|
194
|
-
? 'comparingNullableToTrueNegated'
|
195
|
-
: 'comparingNullableToTrueDirect'
|
196
|
-
: 'comparingNullableToFalse'
|
197
|
-
: comparison.negated
|
198
|
-
? 'negated'
|
199
|
-
: 'direct',
|
200
|
-
node,
|
201
201
|
});
|
202
202
|
},
|
203
203
|
};
|
@@ -205,24 +205,24 @@ exports.default = (0, util_1.createRule)({
|
|
205
205
|
});
|
206
206
|
function getEqualsKind(operator) {
|
207
207
|
switch (operator) {
|
208
|
-
case '
|
208
|
+
case '!=':
|
209
209
|
return {
|
210
|
-
isPositive:
|
210
|
+
isPositive: false,
|
211
211
|
isStrict: false,
|
212
212
|
};
|
213
|
-
case '
|
213
|
+
case '!==':
|
214
214
|
return {
|
215
|
-
isPositive:
|
215
|
+
isPositive: false,
|
216
216
|
isStrict: true,
|
217
217
|
};
|
218
|
-
case '
|
218
|
+
case '==':
|
219
219
|
return {
|
220
|
-
isPositive:
|
220
|
+
isPositive: true,
|
221
221
|
isStrict: false,
|
222
222
|
};
|
223
|
-
case '
|
223
|
+
case '===':
|
224
224
|
return {
|
225
|
-
isPositive:
|
225
|
+
isPositive: true,
|
226
226
|
isStrict: true,
|
227
227
|
};
|
228
228
|
default:
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"no-unnecessary-boolean-literal-compare.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-boolean-literal-compare.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;
|
1
|
+
{"version":3,"file":"no-unnecessary-boolean-literal-compare.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-boolean-literal-compare.ts"],"names":[],"mappings":"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"}
|
@@ -69,42 +69,42 @@ exports.default = (0, util_1.createRule)({
|
|
69
69
|
recommended: 'strict',
|
70
70
|
requiresTypeChecking: true,
|
71
71
|
},
|
72
|
+
fixable: 'code',
|
73
|
+
messages: {
|
74
|
+
alwaysFalsy: 'Unnecessary conditional, value is always falsy.',
|
75
|
+
alwaysFalsyFunc: 'This callback should return a conditional, but return is always falsy.',
|
76
|
+
alwaysNullish: 'Unnecessary conditional, left-hand side of `??` operator is always `null` or `undefined`.',
|
77
|
+
alwaysTruthy: 'Unnecessary conditional, value is always truthy.',
|
78
|
+
alwaysTruthyFunc: 'This callback should return a conditional, but return is always truthy.',
|
79
|
+
literalBooleanExpression: 'Unnecessary conditional, both sides of the expression are literal values.',
|
80
|
+
never: 'Unnecessary conditional, value is `never`.',
|
81
|
+
neverNullish: 'Unnecessary conditional, expected left-hand side of `??` operator to be possibly null or undefined.',
|
82
|
+
neverOptionalChain: 'Unnecessary optional chain on a non-nullish value.',
|
83
|
+
noOverlapBooleanExpression: 'Unnecessary conditional, the types have no overlap.',
|
84
|
+
noStrictNullCheck: 'This rule requires the `strictNullChecks` compiler option to be turned on to function correctly.',
|
85
|
+
replaceWithTrue: 'Replace always true expression with `true`.',
|
86
|
+
typeGuardAlreadyIsType: 'Unnecessary conditional, expression already has the type being checked by the {{typeGuardOrAssertionFunction}}.',
|
87
|
+
},
|
72
88
|
schema: [
|
73
89
|
{
|
74
90
|
type: 'object',
|
91
|
+
additionalProperties: false,
|
75
92
|
properties: {
|
76
93
|
allowConstantLoopConditions: {
|
77
|
-
description: 'Whether to ignore constant loop conditions, such as `while (true)`.',
|
78
94
|
type: 'boolean',
|
95
|
+
description: 'Whether to ignore constant loop conditions, such as `while (true)`.',
|
79
96
|
},
|
80
97
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: {
|
81
|
-
description: 'Whether to not error when running with a tsconfig that has strictNullChecks turned.',
|
82
98
|
type: 'boolean',
|
99
|
+
description: 'Whether to not error when running with a tsconfig that has strictNullChecks turned.',
|
83
100
|
},
|
84
101
|
checkTypePredicates: {
|
85
|
-
description: 'Whether to check the asserted argument of a type predicate function for unnecessary conditions',
|
86
102
|
type: 'boolean',
|
103
|
+
description: 'Whether to check the asserted argument of a type predicate function for unnecessary conditions',
|
87
104
|
},
|
88
105
|
},
|
89
|
-
additionalProperties: false,
|
90
106
|
},
|
91
107
|
],
|
92
|
-
fixable: 'code',
|
93
|
-
messages: {
|
94
|
-
alwaysTruthy: 'Unnecessary conditional, value is always truthy.',
|
95
|
-
alwaysFalsy: 'Unnecessary conditional, value is always falsy.',
|
96
|
-
alwaysTruthyFunc: 'This callback should return a conditional, but return is always truthy.',
|
97
|
-
alwaysFalsyFunc: 'This callback should return a conditional, but return is always falsy.',
|
98
|
-
neverNullish: 'Unnecessary conditional, expected left-hand side of `??` operator to be possibly null or undefined.',
|
99
|
-
alwaysNullish: 'Unnecessary conditional, left-hand side of `??` operator is always `null` or `undefined`.',
|
100
|
-
literalBooleanExpression: 'Unnecessary conditional, both sides of the expression are literal values.',
|
101
|
-
replaceWithTrue: 'Replace always true expression with `true`.',
|
102
|
-
noOverlapBooleanExpression: 'Unnecessary conditional, the types have no overlap.',
|
103
|
-
never: 'Unnecessary conditional, value is `never`.',
|
104
|
-
neverOptionalChain: 'Unnecessary optional chain on a non-nullish value.',
|
105
|
-
noStrictNullCheck: 'This rule requires the `strictNullChecks` compiler option to be turned on to function correctly.',
|
106
|
-
typeGuardAlreadyIsType: 'Unnecessary conditional, expression already has the type being checked by the {{typeGuardOrAssertionFunction}}.',
|
107
|
-
},
|
108
108
|
},
|
109
109
|
defaultOptions: [
|
110
110
|
{
|
@@ -122,8 +122,8 @@ exports.default = (0, util_1.createRule)({
|
|
122
122
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing !== true) {
|
123
123
|
context.report({
|
124
124
|
loc: {
|
125
|
-
start: {
|
126
|
-
end: {
|
125
|
+
start: { column: 0, line: 0 },
|
126
|
+
end: { column: 0, line: 0 },
|
127
127
|
},
|
128
128
|
messageId: 'noStrictNullCheck',
|
129
129
|
});
|
@@ -513,8 +513,8 @@ exports.default = (0, util_1.createRule)({
|
|
513
513
|
}
|
514
514
|
const questionDotOperator = (0, util_1.nullThrows)(context.sourceCode.getTokenAfter(beforeOperator, token => token.type === utils_1.AST_TOKEN_TYPES.Punctuator && token.value === '?.'), util_1.NullThrowsReasons.MissingToken('operator', node.type));
|
515
515
|
context.report({
|
516
|
-
node,
|
517
516
|
loc: questionDotOperator.loc,
|
517
|
+
node,
|
518
518
|
messageId: 'neverOptionalChain',
|
519
519
|
fix(fixer) {
|
520
520
|
return fixer.replaceText(questionDotOperator, fix);
|
@@ -530,7 +530,7 @@ exports.default = (0, util_1.createRule)({
|
|
530
530
|
function checkAssignmentExpression(node) {
|
531
531
|
// Similar to checkLogicalExpressionForUnnecessaryConditionals, since
|
532
532
|
// a ||= b is equivalent to a || (a = b)
|
533
|
-
if (['
|
533
|
+
if (['&&=', '||='].includes(node.operator)) {
|
534
534
|
checkNode(node.left);
|
535
535
|
}
|
536
536
|
else if (node.operator === '??=') {
|
@@ -546,20 +546,20 @@ exports.default = (0, util_1.createRule)({
|
|
546
546
|
}
|
547
547
|
},
|
548
548
|
CallExpression: checkCallExpression,
|
549
|
+
'CallExpression[optional = true]': checkOptionalCallExpression,
|
549
550
|
ConditionalExpression: (node) => checkNode(node.test),
|
550
551
|
DoWhileStatement: checkIfLoopIsNecessaryConditional,
|
551
552
|
ForStatement: checkIfLoopIsNecessaryConditional,
|
552
553
|
IfStatement: (node) => checkNode(node.test),
|
553
554
|
LogicalExpression: checkLogicalExpressionForUnnecessaryConditionals,
|
554
|
-
|
555
|
+
'MemberExpression[optional = true]': checkOptionalMemberExpression,
|
556
|
+
SwitchCase({ parent, test }) {
|
555
557
|
// only check `case ...:`, not `default:`
|
556
558
|
if (test) {
|
557
559
|
checkIfBoolExpressionIsNecessaryConditional(test, parent.discriminant, test, '===');
|
558
560
|
}
|
559
561
|
},
|
560
562
|
WhileStatement: checkIfLoopIsNecessaryConditional,
|
561
|
-
'MemberExpression[optional = true]': checkOptionalMemberExpression,
|
562
|
-
'CallExpression[optional = true]': checkOptionalCallExpression,
|
563
563
|
};
|
564
564
|
},
|
565
565
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"no-unnecessary-condition.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-condition.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"no-unnecessary-condition.js","sourceRoot":"","sources":["../../src/rules/no-unnecessary-condition.ts"],"names":[],"mappings":"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"}
|
@@ -3,10 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const scope_manager_1 = require("@typescript-eslint/scope-manager");
|
4
4
|
const utils_1 = require("@typescript-eslint/utils");
|
5
5
|
const util_1 = require("../util");
|
6
|
-
const UNNECESSARY_OPERATORS = new Set(['
|
6
|
+
const UNNECESSARY_OPERATORS = new Set(['??=', '&&=', '=', '||=']);
|
7
7
|
exports.default = (0, util_1.createRule)({
|
8
8
|
name: 'no-unnecessary-parameter-property-assignment',
|
9
9
|
meta: {
|
10
|
+
type: 'suggestion',
|
10
11
|
docs: {
|
11
12
|
description: 'Disallow unnecessary assignment of constructor property parameter',
|
12
13
|
},
|
@@ -14,7 +15,6 @@ exports.default = (0, util_1.createRule)({
|
|
14
15
|
unnecessaryAssign: 'This assignment is unnecessary since it is already assigned by a parameter property.',
|
15
16
|
},
|
16
17
|
schema: [],
|
17
|
-
type: 'suggestion',
|
18
18
|
},
|
19
19
|
defaultOptions: [],
|
20
20
|
create(context) {
|
@@ -84,13 +84,13 @@ exports.default = (0, util_1.createRule)({
|
|
84
84
|
return {
|
85
85
|
ClassBody() {
|
86
86
|
reportInfoStack.push({
|
87
|
-
unnecessaryAssignments: [],
|
88
|
-
assignedBeforeUnnecessary: new Set(),
|
89
87
|
assignedBeforeConstructor: new Set(),
|
88
|
+
assignedBeforeUnnecessary: new Set(),
|
89
|
+
unnecessaryAssignments: [],
|
90
90
|
});
|
91
91
|
},
|
92
92
|
'ClassBody:exit'() {
|
93
|
-
const {
|
93
|
+
const { assignedBeforeConstructor, unnecessaryAssignments } = (0, util_1.nullThrows)(reportInfoStack.pop(), 'The top stack should exist');
|
94
94
|
unnecessaryAssignments.forEach(({ name, node }) => {
|
95
95
|
if (assignedBeforeConstructor.has(name)) {
|
96
96
|
return;
|
@@ -101,20 +101,6 @@ exports.default = (0, util_1.createRule)({
|
|
101
101
|
});
|
102
102
|
});
|
103
103
|
},
|
104
|
-
'PropertyDefinition AssignmentExpression'(node) {
|
105
|
-
const name = getPropertyName(node.left);
|
106
|
-
if (!name) {
|
107
|
-
return;
|
108
|
-
}
|
109
|
-
const functionNode = findParentFunction(node);
|
110
|
-
if (functionNode &&
|
111
|
-
!(isArrowIIFE(functionNode) &&
|
112
|
-
findParentPropertyDefinition(node)?.value === functionNode.parent)) {
|
113
|
-
return;
|
114
|
-
}
|
115
|
-
const { assignedBeforeConstructor } = (0, util_1.nullThrows)(reportInfoStack.at(-1), 'The top stack should exist');
|
116
|
-
assignedBeforeConstructor.add(name);
|
117
|
-
},
|
118
104
|
"MethodDefinition[kind='constructor'] > FunctionExpression AssignmentExpression"(node) {
|
119
105
|
const leftName = getPropertyName(node.left);
|
120
106
|
if (!leftName) {
|
@@ -144,6 +130,20 @@ exports.default = (0, util_1.createRule)({
|
|
144
130
|
});
|
145
131
|
}
|
146
132
|
},
|
133
|
+
'PropertyDefinition AssignmentExpression'(node) {
|
134
|
+
const name = getPropertyName(node.left);
|
135
|
+
if (!name) {
|
136
|
+
return;
|
137
|
+
}
|
138
|
+
const functionNode = findParentFunction(node);
|
139
|
+
if (functionNode &&
|
140
|
+
!(isArrowIIFE(functionNode) &&
|
141
|
+
findParentPropertyDefinition(node)?.value === functionNode.parent)) {
|
142
|
+
return;
|
143
|
+
}
|
144
|
+
const { assignedBeforeConstructor } = (0, util_1.nullThrows)(reportInfoStack.at(-1), 'The top stack should exist');
|
145
|
+
assignedBeforeConstructor.add(name);
|
146
|
+
},
|
147
147
|
};
|
148
148
|
},
|
149
149
|
});
|