@typescript-eslint/eslint-plugin 8.24.2-alpha.0 → 8.24.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/configs/all.d.ts +156 -0
- package/dist/configs/all.d.ts.map +1 -0
- package/dist/configs/all.js +0 -1
- package/dist/configs/base.d.ts +9 -0
- package/dist/configs/base.d.ts.map +1 -0
- package/dist/configs/base.js +0 -1
- package/dist/configs/disable-type-checked.d.ts +69 -0
- package/dist/configs/disable-type-checked.d.ts.map +1 -0
- package/dist/configs/disable-type-checked.js +0 -1
- package/dist/configs/eslint-recommended-raw.d.ts +11 -0
- package/dist/configs/eslint-recommended-raw.d.ts.map +1 -0
- package/dist/configs/eslint-recommended-raw.js +0 -1
- package/dist/configs/eslint-recommended.d.ts +13 -0
- package/dist/configs/eslint-recommended.d.ts.map +1 -0
- package/dist/configs/eslint-recommended.js +0 -1
- package/dist/configs/recommended-type-checked-only.d.ts +34 -0
- package/dist/configs/recommended-type-checked-only.d.ts.map +1 -0
- package/dist/configs/recommended-type-checked-only.js +0 -1
- package/dist/configs/recommended-type-checked.d.ts +57 -0
- package/dist/configs/recommended-type-checked.d.ts.map +1 -0
- package/dist/configs/recommended-type-checked.js +0 -1
- package/dist/configs/recommended.d.ts +30 -0
- package/dist/configs/recommended.d.ts.map +1 -0
- package/dist/configs/recommended.js +0 -1
- package/dist/configs/strict-type-checked-only.d.ts +63 -0
- package/dist/configs/strict-type-checked-only.d.ts.map +1 -0
- package/dist/configs/strict-type-checked-only.js +0 -1
- package/dist/configs/strict-type-checked.d.ts +97 -0
- package/dist/configs/strict-type-checked.d.ts.map +1 -0
- package/dist/configs/strict-type-checked.js +0 -1
- package/dist/configs/strict.d.ts +41 -0
- package/dist/configs/strict.d.ts.map +1 -0
- package/dist/configs/strict.js +0 -1
- package/dist/configs/stylistic-type-checked-only.d.ts +16 -0
- package/dist/configs/stylistic-type-checked-only.d.ts.map +1 -0
- package/dist/configs/stylistic-type-checked-only.js +0 -1
- package/dist/configs/stylistic-type-checked.d.ts +30 -0
- package/dist/configs/stylistic-type-checked.d.ts.map +1 -0
- package/dist/configs/stylistic-type-checked.js +0 -1
- package/dist/configs/stylistic.d.ts +21 -0
- package/dist/configs/stylistic.d.ts.map +1 -0
- package/dist/configs/stylistic.js +0 -1
- package/dist/index.d.ts +842 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +0 -1
- package/dist/rules/adjacent-overload-signatures.d.ts +3 -0
- package/dist/rules/adjacent-overload-signatures.d.ts.map +1 -0
- package/dist/rules/adjacent-overload-signatures.js +0 -1
- package/dist/rules/array-type.d.ts +11 -0
- package/dist/rules/array-type.d.ts.map +1 -0
- package/dist/rules/array-type.js +0 -1
- package/dist/rules/await-thenable.d.ts +5 -0
- package/dist/rules/await-thenable.d.ts.map +1 -0
- package/dist/rules/await-thenable.js +0 -1
- package/dist/rules/ban-ts-comment.d.ts +16 -0
- package/dist/rules/ban-ts-comment.d.ts.map +1 -0
- package/dist/rules/ban-ts-comment.js +0 -1
- package/dist/rules/ban-tslint-comment.d.ts +3 -0
- package/dist/rules/ban-tslint-comment.d.ts.map +1 -0
- package/dist/rules/ban-tslint-comment.js +0 -1
- package/dist/rules/class-literal-property-style.d.ts +6 -0
- package/dist/rules/class-literal-property-style.d.ts.map +1 -0
- package/dist/rules/class-literal-property-style.js +0 -1
- package/dist/rules/class-methods-use-this.d.ts +12 -0
- package/dist/rules/class-methods-use-this.d.ts.map +1 -0
- package/dist/rules/class-methods-use-this.js +0 -1
- package/dist/rules/consistent-generic-constructors.d.ts +5 -0
- package/dist/rules/consistent-generic-constructors.d.ts.map +1 -0
- package/dist/rules/consistent-generic-constructors.js +0 -1
- package/dist/rules/consistent-indexed-object-style.d.ts +6 -0
- package/dist/rules/consistent-indexed-object-style.d.ts.map +1 -0
- package/dist/rules/consistent-indexed-object-style.js +0 -1
- package/dist/rules/consistent-return.d.ts +17 -0
- package/dist/rules/consistent-return.d.ts.map +1 -0
- package/dist/rules/consistent-return.js +0 -1
- package/dist/rules/consistent-type-assertions.d.ts +13 -0
- package/dist/rules/consistent-type-assertions.d.ts.map +1 -0
- package/dist/rules/consistent-type-assertions.js +0 -1
- package/dist/rules/consistent-type-definitions.d.ts +4 -0
- package/dist/rules/consistent-type-definitions.d.ts.map +1 -0
- package/dist/rules/consistent-type-definitions.js +0 -1
- package/dist/rules/consistent-type-exports.d.ts +10 -0
- package/dist/rules/consistent-type-exports.d.ts.map +1 -0
- package/dist/rules/consistent-type-exports.js +0 -1
- package/dist/rules/consistent-type-imports.d.ts +14 -0
- package/dist/rules/consistent-type-imports.d.ts.map +1 -0
- package/dist/rules/consistent-type-imports.js +0 -1
- package/dist/rules/default-param-last.d.ts +3 -0
- package/dist/rules/default-param-last.d.ts.map +1 -0
- package/dist/rules/default-param-last.js +0 -1
- package/dist/rules/dot-notation.d.ts +22 -0
- package/dist/rules/dot-notation.d.ts.map +1 -0
- package/dist/rules/dot-notation.js +0 -1
- package/dist/rules/enum-utils/shared.d.ts +37 -0
- package/dist/rules/enum-utils/shared.d.ts.map +1 -0
- package/dist/rules/enum-utils/shared.js +0 -1
- package/dist/rules/explicit-function-return-type.d.ts +16 -0
- package/dist/rules/explicit-function-return-type.d.ts.map +1 -0
- package/dist/rules/explicit-function-return-type.js +0 -1
- package/dist/rules/explicit-member-accessibility.d.ts +18 -0
- package/dist/rules/explicit-member-accessibility.d.ts.map +1 -0
- package/dist/rules/explicit-member-accessibility.js +0 -1
- package/dist/rules/explicit-module-boundary-types.d.ts +13 -0
- package/dist/rules/explicit-module-boundary-types.d.ts.map +1 -0
- package/dist/rules/explicit-module-boundary-types.js +0 -1
- package/dist/rules/index.d.ts +173 -0
- package/dist/rules/index.d.ts.map +1 -0
- package/dist/rules/index.js +0 -1
- package/dist/rules/init-declarations.d.ts +14 -0
- package/dist/rules/init-declarations.d.ts.map +1 -0
- package/dist/rules/init-declarations.js +0 -1
- package/dist/rules/max-params.d.ts +24 -0
- package/dist/rules/max-params.d.ts.map +1 -0
- package/dist/rules/max-params.js +0 -1
- package/dist/rules/member-ordering.d.ts +32 -0
- package/dist/rules/member-ordering.d.ts.map +1 -0
- package/dist/rules/member-ordering.js +0 -1
- package/dist/rules/method-signature-style.d.ts +5 -0
- package/dist/rules/method-signature-style.d.ts.map +1 -0
- package/dist/rules/method-signature-style.js +0 -1
- package/dist/rules/naming-convention-utils/enums.d.ts +80 -0
- package/dist/rules/naming-convention-utils/enums.d.ts.map +1 -0
- package/dist/rules/naming-convention-utils/enums.js +0 -1
- package/dist/rules/naming-convention-utils/format.d.ts +3 -0
- package/dist/rules/naming-convention-utils/format.d.ts.map +1 -0
- package/dist/rules/naming-convention-utils/format.js +0 -1
- package/dist/rules/naming-convention-utils/index.d.ts +7 -0
- package/dist/rules/naming-convention-utils/index.d.ts.map +1 -0
- package/dist/rules/naming-convention-utils/index.js +0 -1
- package/dist/rules/naming-convention-utils/parse-options.d.ts +3 -0
- package/dist/rules/naming-convention-utils/parse-options.d.ts.map +1 -0
- package/dist/rules/naming-convention-utils/parse-options.js +0 -1
- package/dist/rules/naming-convention-utils/schema.d.ts +3 -0
- package/dist/rules/naming-convention-utils/schema.d.ts.map +1 -0
- package/dist/rules/naming-convention-utils/schema.js +0 -1
- package/dist/rules/naming-convention-utils/shared.d.ts +6 -0
- package/dist/rules/naming-convention-utils/shared.d.ts.map +1 -0
- package/dist/rules/naming-convention-utils/shared.js +0 -1
- package/dist/rules/naming-convention-utils/types.d.ts +40 -0
- package/dist/rules/naming-convention-utils/types.d.ts.map +1 -0
- package/dist/rules/naming-convention-utils/types.js +0 -1
- package/dist/rules/naming-convention-utils/validator.d.ts +5 -0
- package/dist/rules/naming-convention-utils/validator.d.ts.map +1 -0
- package/dist/rules/naming-convention-utils/validator.js +0 -1
- package/dist/rules/naming-convention.d.ts +7 -0
- package/dist/rules/naming-convention.d.ts.map +1 -0
- package/dist/rules/naming-convention.js +0 -1
- package/dist/rules/no-array-constructor.d.ts +3 -0
- package/dist/rules/no-array-constructor.d.ts.map +1 -0
- package/dist/rules/no-array-constructor.js +0 -1
- package/dist/rules/no-array-delete.d.ts +5 -0
- package/dist/rules/no-array-delete.d.ts.map +1 -0
- package/dist/rules/no-array-delete.js +0 -1
- package/dist/rules/no-base-to-string.d.ts +9 -0
- package/dist/rules/no-base-to-string.d.ts.map +1 -0
- package/dist/rules/no-base-to-string.js +0 -1
- package/dist/rules/no-confusing-non-null-assertion.d.ts +5 -0
- package/dist/rules/no-confusing-non-null-assertion.d.ts.map +1 -0
- package/dist/rules/no-confusing-non-null-assertion.js +0 -1
- package/dist/rules/no-confusing-void-expression.d.ts +12 -0
- package/dist/rules/no-confusing-void-expression.d.ts.map +1 -0
- package/dist/rules/no-confusing-void-expression.js +0 -1
- package/dist/rules/no-deprecated.d.ts +10 -0
- package/dist/rules/no-deprecated.d.ts.map +1 -0
- package/dist/rules/no-deprecated.js +0 -1
- package/dist/rules/no-dupe-class-members.d.ts +13 -0
- package/dist/rules/no-dupe-class-members.d.ts.map +1 -0
- package/dist/rules/no-dupe-class-members.js +0 -1
- package/dist/rules/no-duplicate-enum-values.d.ts +3 -0
- package/dist/rules/no-duplicate-enum-values.d.ts.map +1 -0
- package/dist/rules/no-duplicate-enum-values.js +0 -1
- package/dist/rules/no-duplicate-type-constituents.d.ts +10 -0
- package/dist/rules/no-duplicate-type-constituents.d.ts.map +1 -0
- package/dist/rules/no-duplicate-type-constituents.js +0 -1
- package/dist/rules/no-dynamic-delete.d.ts +4 -0
- package/dist/rules/no-dynamic-delete.d.ts.map +1 -0
- package/dist/rules/no-dynamic-delete.js +0 -1
- package/dist/rules/no-empty-function.d.ts +15 -0
- package/dist/rules/no-empty-function.d.ts.map +1 -0
- package/dist/rules/no-empty-function.js +0 -1
- package/dist/rules/no-empty-interface.d.ts +10 -0
- package/dist/rules/no-empty-interface.d.ts.map +1 -0
- package/dist/rules/no-empty-interface.js +0 -1
- package/dist/rules/no-empty-object-type.d.ts +14 -0
- package/dist/rules/no-empty-object-type.d.ts.map +1 -0
- package/dist/rules/no-empty-object-type.js +0 -1
- package/dist/rules/no-explicit-any.d.ts +11 -0
- package/dist/rules/no-explicit-any.d.ts.map +1 -0
- package/dist/rules/no-explicit-any.js +0 -1
- package/dist/rules/no-extra-non-null-assertion.d.ts +3 -0
- package/dist/rules/no-extra-non-null-assertion.d.ts.map +1 -0
- package/dist/rules/no-extra-non-null-assertion.js +0 -1
- package/dist/rules/no-extraneous-class.d.ts +12 -0
- package/dist/rules/no-extraneous-class.d.ts.map +1 -0
- package/dist/rules/no-extraneous-class.js +0 -1
- package/dist/rules/no-floating-promises.d.ts +15 -0
- package/dist/rules/no-floating-promises.d.ts.map +1 -0
- package/dist/rules/no-floating-promises.js +0 -1
- package/dist/rules/no-for-in-array.d.ts +3 -0
- package/dist/rules/no-for-in-array.d.ts.map +1 -0
- package/dist/rules/no-for-in-array.js +0 -1
- package/dist/rules/no-implied-eval.d.ts +3 -0
- package/dist/rules/no-implied-eval.d.ts.map +1 -0
- package/dist/rules/no-implied-eval.js +0 -1
- package/dist/rules/no-import-type-side-effects.d.ts +6 -0
- package/dist/rules/no-import-type-side-effects.d.ts.map +1 -0
- package/dist/rules/no-import-type-side-effects.js +0 -1
- package/dist/rules/no-inferrable-types.d.ts +10 -0
- package/dist/rules/no-inferrable-types.d.ts.map +1 -0
- package/dist/rules/no-inferrable-types.js +0 -1
- package/dist/rules/no-invalid-this.d.ts +14 -0
- package/dist/rules/no-invalid-this.d.ts.map +1 -0
- package/dist/rules/no-invalid-this.js +0 -1
- package/dist/rules/no-invalid-void-type.d.ts +8 -0
- package/dist/rules/no-invalid-void-type.d.ts.map +1 -0
- package/dist/rules/no-invalid-void-type.js +0 -1
- package/dist/rules/no-loop-func.d.ts +12 -0
- package/dist/rules/no-loop-func.d.ts.map +1 -0
- package/dist/rules/no-loop-func.js +0 -1
- package/dist/rules/no-loss-of-precision.d.ts +8 -0
- package/dist/rules/no-loss-of-precision.d.ts.map +1 -0
- package/dist/rules/no-loss-of-precision.js +0 -1
- package/dist/rules/no-magic-numbers.d.ts +28 -0
- package/dist/rules/no-magic-numbers.d.ts.map +1 -0
- package/dist/rules/no-magic-numbers.js +0 -1
- package/dist/rules/no-meaningless-void-operator.d.ts +9 -0
- package/dist/rules/no-meaningless-void-operator.d.ts.map +1 -0
- package/dist/rules/no-meaningless-void-operator.js +0 -1
- package/dist/rules/no-misused-new.d.ts +3 -0
- package/dist/rules/no-misused-new.d.ts.map +1 -0
- package/dist/rules/no-misused-new.js +0 -1
- package/dist/rules/no-misused-promises.d.ts +20 -0
- package/dist/rules/no-misused-promises.d.ts.map +1 -0
- package/dist/rules/no-misused-promises.js +0 -1
- package/dist/rules/no-misused-spread.d.ts +10 -0
- package/dist/rules/no-misused-spread.d.ts.map +1 -0
- package/dist/rules/no-misused-spread.js +0 -1
- package/dist/rules/no-mixed-enums.d.ts +3 -0
- package/dist/rules/no-mixed-enums.d.ts.map +1 -0
- package/dist/rules/no-mixed-enums.js +0 -1
- package/dist/rules/no-namespace.d.ts +10 -0
- package/dist/rules/no-namespace.d.ts.map +1 -0
- package/dist/rules/no-namespace.js +0 -1
- package/dist/rules/no-non-null-asserted-nullish-coalescing.d.ts +4 -0
- package/dist/rules/no-non-null-asserted-nullish-coalescing.d.ts.map +1 -0
- package/dist/rules/no-non-null-asserted-nullish-coalescing.js +0 -1
- package/dist/rules/no-non-null-asserted-optional-chain.d.ts +4 -0
- package/dist/rules/no-non-null-asserted-optional-chain.d.ts.map +1 -0
- package/dist/rules/no-non-null-asserted-optional-chain.js +0 -1
- package/dist/rules/no-non-null-assertion.d.ts +5 -0
- package/dist/rules/no-non-null-assertion.d.ts.map +1 -0
- package/dist/rules/no-non-null-assertion.js +0 -1
- package/dist/rules/no-redeclare.d.ts +11 -0
- package/dist/rules/no-redeclare.d.ts.map +1 -0
- package/dist/rules/no-redeclare.js +0 -1
- package/dist/rules/no-redundant-type-constituents.d.ts +3 -0
- package/dist/rules/no-redundant-type-constituents.d.ts.map +1 -0
- package/dist/rules/no-redundant-type-constituents.js +0 -1
- package/dist/rules/no-require-imports.d.ts +10 -0
- package/dist/rules/no-require-imports.d.ts.map +1 -0
- package/dist/rules/no-require-imports.js +0 -1
- package/dist/rules/no-restricted-imports.d.ts +8 -0
- package/dist/rules/no-restricted-imports.d.ts.map +1 -0
- package/dist/rules/no-restricted-imports.js +0 -1
- package/dist/rules/no-restricted-types.d.ts +15 -0
- package/dist/rules/no-restricted-types.d.ts.map +1 -0
- package/dist/rules/no-restricted-types.js +0 -1
- package/dist/rules/no-shadow.d.ts +15 -0
- package/dist/rules/no-shadow.d.ts.map +1 -0
- package/dist/rules/no-shadow.js +0 -1
- package/dist/rules/no-this-alias.d.ts +10 -0
- package/dist/rules/no-this-alias.d.ts.map +1 -0
- package/dist/rules/no-this-alias.js +0 -1
- package/dist/rules/no-type-alias.d.ts +17 -0
- package/dist/rules/no-type-alias.d.ts.map +1 -0
- package/dist/rules/no-type-alias.js +0 -1
- package/dist/rules/no-unnecessary-boolean-literal-compare.d.ts +11 -0
- package/dist/rules/no-unnecessary-boolean-literal-compare.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-boolean-literal-compare.js +0 -1
- package/dist/rules/no-unnecessary-condition.d.ts +13 -0
- package/dist/rules/no-unnecessary-condition.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-condition.js +0 -1
- package/dist/rules/no-unnecessary-parameter-property-assignment.d.ts +3 -0
- package/dist/rules/no-unnecessary-parameter-property-assignment.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-parameter-property-assignment.js +0 -1
- package/dist/rules/no-unnecessary-qualifier.d.ts +3 -0
- package/dist/rules/no-unnecessary-qualifier.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-qualifier.js +0 -1
- package/dist/rules/no-unnecessary-template-expression.d.ts +5 -0
- package/dist/rules/no-unnecessary-template-expression.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-template-expression.js +0 -1
- package/dist/rules/no-unnecessary-type-arguments.d.ts +4 -0
- package/dist/rules/no-unnecessary-type-arguments.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-type-arguments.js +0 -1
- package/dist/rules/no-unnecessary-type-assertion.d.ts +9 -0
- package/dist/rules/no-unnecessary-type-assertion.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-type-assertion.js +0 -1
- package/dist/rules/no-unnecessary-type-constraint.d.ts +4 -0
- package/dist/rules/no-unnecessary-type-constraint.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-type-constraint.js +0 -1
- package/dist/rules/no-unnecessary-type-parameters.d.ts +4 -0
- package/dist/rules/no-unnecessary-type-parameters.d.ts.map +1 -0
- package/dist/rules/no-unnecessary-type-parameters.js +0 -1
- package/dist/rules/no-unsafe-argument.d.ts +4 -0
- package/dist/rules/no-unsafe-argument.d.ts.map +1 -0
- package/dist/rules/no-unsafe-argument.js +12 -7
- package/dist/rules/no-unsafe-assignment.d.ts +3 -0
- package/dist/rules/no-unsafe-assignment.d.ts.map +1 -0
- package/dist/rules/no-unsafe-assignment.js +18 -8
- package/dist/rules/no-unsafe-call.d.ts +4 -0
- package/dist/rules/no-unsafe-call.d.ts.map +1 -0
- package/dist/rules/no-unsafe-call.js +0 -1
- package/dist/rules/no-unsafe-declaration-merging.d.ts +3 -0
- package/dist/rules/no-unsafe-declaration-merging.d.ts.map +1 -0
- package/dist/rules/no-unsafe-declaration-merging.js +0 -1
- package/dist/rules/no-unsafe-enum-comparison.d.ts +4 -0
- package/dist/rules/no-unsafe-enum-comparison.d.ts.map +1 -0
- package/dist/rules/no-unsafe-enum-comparison.js +0 -1
- package/dist/rules/no-unsafe-function-type.d.ts +3 -0
- package/dist/rules/no-unsafe-function-type.d.ts.map +1 -0
- package/dist/rules/no-unsafe-function-type.js +0 -1
- package/dist/rules/no-unsafe-member-access.d.ts +3 -0
- package/dist/rules/no-unsafe-member-access.d.ts.map +1 -0
- package/dist/rules/no-unsafe-member-access.js +8 -4
- package/dist/rules/no-unsafe-return.d.ts +3 -0
- package/dist/rules/no-unsafe-return.d.ts.map +1 -0
- package/dist/rules/no-unsafe-return.js +0 -1
- package/dist/rules/no-unsafe-type-assertion.d.ts +3 -0
- package/dist/rules/no-unsafe-type-assertion.d.ts.map +1 -0
- package/dist/rules/no-unsafe-type-assertion.js +0 -1
- package/dist/rules/no-unsafe-unary-minus.d.ts +5 -0
- package/dist/rules/no-unsafe-unary-minus.d.ts.map +1 -0
- package/dist/rules/no-unsafe-unary-minus.js +0 -1
- package/dist/rules/no-unused-expressions.d.ts +18 -0
- package/dist/rules/no-unused-expressions.d.ts.map +1 -0
- package/dist/rules/no-unused-expressions.js +0 -1
- package/dist/rules/no-unused-vars.d.ts +19 -0
- package/dist/rules/no-unused-vars.d.ts.map +1 -0
- package/dist/rules/no-unused-vars.js +0 -1
- package/dist/rules/no-use-before-define.d.ts +15 -0
- package/dist/rules/no-use-before-define.d.ts.map +1 -0
- package/dist/rules/no-use-before-define.js +0 -1
- package/dist/rules/no-useless-constructor.d.ts +10 -0
- package/dist/rules/no-useless-constructor.d.ts.map +1 -0
- package/dist/rules/no-useless-constructor.js +0 -1
- package/dist/rules/no-useless-empty-export.d.ts +3 -0
- package/dist/rules/no-useless-empty-export.d.ts.map +1 -0
- package/dist/rules/no-useless-empty-export.js +0 -1
- package/dist/rules/no-var-requires.d.ts +9 -0
- package/dist/rules/no-var-requires.d.ts.map +1 -0
- package/dist/rules/no-var-requires.js +0 -1
- package/dist/rules/no-wrapper-object-types.d.ts +4 -0
- package/dist/rules/no-wrapper-object-types.d.ts.map +1 -0
- package/dist/rules/no-wrapper-object-types.js +0 -1
- package/dist/rules/non-nullable-type-assertion-style.d.ts +3 -0
- package/dist/rules/non-nullable-type-assertion-style.d.ts.map +1 -0
- package/dist/rules/non-nullable-type-assertion-style.js +0 -1
- package/dist/rules/only-throw-error.d.ts +12 -0
- package/dist/rules/only-throw-error.d.ts.map +1 -0
- package/dist/rules/only-throw-error.js +0 -1
- package/dist/rules/parameter-properties.d.ts +12 -0
- package/dist/rules/parameter-properties.d.ts.map +1 -0
- package/dist/rules/parameter-properties.js +0 -1
- package/dist/rules/prefer-as-const.d.ts +4 -0
- package/dist/rules/prefer-as-const.d.ts.map +1 -0
- package/dist/rules/prefer-as-const.js +0 -1
- package/dist/rules/prefer-destructuring.d.ts +18 -0
- package/dist/rules/prefer-destructuring.d.ts.map +1 -0
- package/dist/rules/prefer-destructuring.js +0 -1
- package/dist/rules/prefer-enum-initializers.d.ts +5 -0
- package/dist/rules/prefer-enum-initializers.d.ts.map +1 -0
- package/dist/rules/prefer-enum-initializers.js +0 -1
- package/dist/rules/prefer-find.d.ts +4 -0
- package/dist/rules/prefer-find.d.ts.map +1 -0
- package/dist/rules/prefer-find.js +0 -1
- package/dist/rules/prefer-for-of.d.ts +4 -0
- package/dist/rules/prefer-for-of.d.ts.map +1 -0
- package/dist/rules/prefer-for-of.js +0 -1
- package/dist/rules/prefer-function-type.d.ts +8 -0
- package/dist/rules/prefer-function-type.d.ts.map +1 -0
- package/dist/rules/prefer-function-type.js +0 -1
- package/dist/rules/prefer-includes.d.ts +4 -0
- package/dist/rules/prefer-includes.d.ts.map +1 -0
- package/dist/rules/prefer-includes.js +0 -1
- package/dist/rules/prefer-literal-enum-member.d.ts +5 -0
- package/dist/rules/prefer-literal-enum-member.d.ts.map +1 -0
- package/dist/rules/prefer-literal-enum-member.js +0 -1
- package/dist/rules/prefer-namespace-keyword.d.ts +3 -0
- package/dist/rules/prefer-namespace-keyword.d.ts.map +1 -0
- package/dist/rules/prefer-namespace-keyword.js +0 -1
- package/dist/rules/prefer-nullish-coalescing.d.ts +20 -0
- package/dist/rules/prefer-nullish-coalescing.d.ts.map +1 -0
- package/dist/rules/prefer-nullish-coalescing.js +0 -1
- package/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.d.ts +12 -0
- package/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.d.ts.map +1 -0
- package/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js +0 -1
- package/dist/rules/prefer-optional-chain-utils/analyzeChain.d.ts +8 -0
- package/dist/rules/prefer-optional-chain-utils/analyzeChain.d.ts.map +1 -0
- package/dist/rules/prefer-optional-chain-utils/analyzeChain.js +26 -26
- package/dist/rules/prefer-optional-chain-utils/checkNullishAndReport.d.ts +7 -0
- package/dist/rules/prefer-optional-chain-utils/checkNullishAndReport.d.ts.map +1 -0
- package/dist/rules/prefer-optional-chain-utils/checkNullishAndReport.js +0 -1
- package/dist/rules/prefer-optional-chain-utils/compareNodes.d.ts +16 -0
- package/dist/rules/prefer-optional-chain-utils/compareNodes.d.ts.map +1 -0
- package/dist/rules/prefer-optional-chain-utils/compareNodes.js +63 -54
- package/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.d.ts +42 -0
- package/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.d.ts.map +1 -0
- package/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js +63 -33
- package/dist/rules/prefer-optional-chain.d.ts +4 -0
- package/dist/rules/prefer-optional-chain.d.ts.map +1 -0
- package/dist/rules/prefer-optional-chain.js +1 -2
- package/dist/rules/prefer-promise-reject-errors.d.ts +11 -0
- package/dist/rules/prefer-promise-reject-errors.d.ts.map +1 -0
- package/dist/rules/prefer-promise-reject-errors.js +0 -1
- package/dist/rules/prefer-readonly-parameter-types.d.ts +13 -0
- package/dist/rules/prefer-readonly-parameter-types.d.ts.map +1 -0
- package/dist/rules/prefer-readonly-parameter-types.js +0 -1
- package/dist/rules/prefer-readonly.d.ts +9 -0
- package/dist/rules/prefer-readonly.d.ts.map +1 -0
- package/dist/rules/prefer-readonly.js +0 -1
- package/dist/rules/prefer-reduce-type-parameter.d.ts +3 -0
- package/dist/rules/prefer-reduce-type-parameter.d.ts.map +1 -0
- package/dist/rules/prefer-reduce-type-parameter.js +0 -1
- package/dist/rules/prefer-regexp-exec.d.ts +3 -0
- package/dist/rules/prefer-regexp-exec.d.ts.map +1 -0
- package/dist/rules/prefer-regexp-exec.js +0 -1
- package/dist/rules/prefer-return-this-type.d.ts +3 -0
- package/dist/rules/prefer-return-this-type.d.ts.map +1 -0
- package/dist/rules/prefer-return-this-type.js +0 -1
- package/dist/rules/prefer-string-starts-ends-with.d.ts +11 -0
- package/dist/rules/prefer-string-starts-ends-with.d.ts.map +1 -0
- package/dist/rules/prefer-string-starts-ends-with.js +0 -1
- package/dist/rules/prefer-ts-expect-error.d.ts +4 -0
- package/dist/rules/prefer-ts-expect-error.d.ts.map +1 -0
- package/dist/rules/prefer-ts-expect-error.js +0 -1
- package/dist/rules/promise-function-async.d.ts +14 -0
- package/dist/rules/promise-function-async.d.ts.map +1 -0
- package/dist/rules/promise-function-async.js +0 -1
- package/dist/rules/related-getter-setter-pairs.d.ts +3 -0
- package/dist/rules/related-getter-setter-pairs.d.ts.map +1 -0
- package/dist/rules/related-getter-setter-pairs.js +0 -1
- package/dist/rules/require-array-sort-compare.d.ts +9 -0
- package/dist/rules/require-array-sort-compare.d.ts.map +1 -0
- package/dist/rules/require-array-sort-compare.js +0 -1
- package/dist/rules/require-await.d.ts +3 -0
- package/dist/rules/require-await.d.ts.map +1 -0
- package/dist/rules/require-await.js +0 -1
- package/dist/rules/restrict-plus-operands.d.ts +14 -0
- package/dist/rules/restrict-plus-operands.d.ts.map +1 -0
- package/dist/rules/restrict-plus-operands.js +0 -1
- package/dist/rules/restrict-template-expressions.d.ts +18 -0
- package/dist/rules/restrict-template-expressions.d.ts.map +1 -0
- package/dist/rules/restrict-template-expressions.js +0 -1
- package/dist/rules/return-await.d.ts +4 -0
- package/dist/rules/return-await.d.ts.map +1 -0
- package/dist/rules/return-await.js +0 -1
- package/dist/rules/sort-type-constituents.d.ts +13 -0
- package/dist/rules/sort-type-constituents.d.ts.map +1 -0
- package/dist/rules/sort-type-constituents.js +0 -1
- package/dist/rules/strict-boolean-expressions.d.ts +17 -0
- package/dist/rules/strict-boolean-expressions.d.ts.map +1 -0
- package/dist/rules/strict-boolean-expressions.js +0 -1
- package/dist/rules/switch-exhaustiveness-check.d.ts +32 -0
- package/dist/rules/switch-exhaustiveness-check.d.ts.map +1 -0
- package/dist/rules/switch-exhaustiveness-check.js +0 -1
- package/dist/rules/triple-slash-reference.d.ts +11 -0
- package/dist/rules/triple-slash-reference.d.ts.map +1 -0
- package/dist/rules/triple-slash-reference.js +0 -1
- package/dist/rules/typedef.d.ts +15 -0
- package/dist/rules/typedef.d.ts.map +1 -0
- package/dist/rules/typedef.js +28 -17
- package/dist/rules/unbound-method.d.ts +8 -0
- package/dist/rules/unbound-method.d.ts.map +1 -0
- package/dist/rules/unbound-method.js +0 -1
- package/dist/rules/unified-signatures.d.ts +9 -0
- package/dist/rules/unified-signatures.d.ts.map +1 -0
- package/dist/rules/unified-signatures.js +0 -1
- package/dist/rules/use-unknown-in-catch-callback-variable.d.ts +5 -0
- package/dist/rules/use-unknown-in-catch-callback-variable.d.ts.map +1 -0
- package/dist/rules/use-unknown-in-catch-callback-variable.js +0 -1
- package/dist/util/assertionFunctionUtils.d.ts +17 -0
- package/dist/util/assertionFunctionUtils.d.ts.map +1 -0
- package/dist/util/assertionFunctionUtils.js +0 -1
- package/dist/util/astUtils.d.ts +13 -0
- package/dist/util/astUtils.d.ts.map +1 -0
- package/dist/util/astUtils.js +0 -1
- package/dist/util/collectUnusedVariables.d.ts +16 -0
- package/dist/util/collectUnusedVariables.d.ts.map +1 -0
- package/dist/util/collectUnusedVariables.js +0 -1
- package/dist/util/createRule.d.ts +4 -0
- package/dist/util/createRule.d.ts.map +1 -0
- package/dist/util/createRule.js +0 -1
- package/dist/util/escapeRegExp.d.ts +2 -0
- package/dist/util/escapeRegExp.d.ts.map +1 -0
- package/dist/util/escapeRegExp.js +0 -1
- package/dist/util/explicitReturnTypeUtils.d.ts +48 -0
- package/dist/util/explicitReturnTypeUtils.d.ts.map +1 -0
- package/dist/util/explicitReturnTypeUtils.js +0 -1
- package/dist/util/getConstraintInfo.d.ts +36 -0
- package/dist/util/getConstraintInfo.d.ts.map +1 -0
- package/dist/util/getConstraintInfo.js +0 -1
- package/dist/util/getESLintCoreRule.d.ts +28 -0
- package/dist/util/getESLintCoreRule.d.ts.map +1 -0
- package/dist/util/getESLintCoreRule.js +0 -1
- package/dist/util/getFixOrSuggest.d.ts +10 -0
- package/dist/util/getFixOrSuggest.d.ts.map +1 -0
- package/dist/util/getFixOrSuggest.js +0 -1
- package/dist/util/getForStatementHeadLoc.d.ts +18 -0
- package/dist/util/getForStatementHeadLoc.d.ts.map +1 -0
- package/dist/util/getForStatementHeadLoc.js +0 -1
- package/dist/util/getFunctionHeadLoc.d.ts +102 -0
- package/dist/util/getFunctionHeadLoc.d.ts.map +1 -0
- package/dist/util/getFunctionHeadLoc.js +0 -1
- package/dist/util/getMemberHeadLoc.d.ts +37 -0
- package/dist/util/getMemberHeadLoc.d.ts.map +1 -0
- package/dist/util/getMemberHeadLoc.js +0 -1
- package/dist/util/getOperatorPrecedence.d.ts +36 -0
- package/dist/util/getOperatorPrecedence.d.ts.map +1 -0
- package/dist/util/getOperatorPrecedence.js +0 -1
- package/dist/util/getParentFunctionNode.d.ts +3 -0
- package/dist/util/getParentFunctionNode.d.ts.map +1 -0
- package/dist/util/getParentFunctionNode.js +0 -1
- package/dist/util/getStaticStringValue.d.ts +12 -0
- package/dist/util/getStaticStringValue.d.ts.map +1 -0
- package/dist/util/getStaticStringValue.js +0 -1
- package/dist/util/getStringLength.d.ts +2 -0
- package/dist/util/getStringLength.d.ts.map +1 -0
- package/dist/util/getStringLength.js +0 -1
- package/dist/util/getTextWithParentheses.d.ts +4 -0
- package/dist/util/getTextWithParentheses.d.ts.map +1 -0
- package/dist/util/getTextWithParentheses.js +0 -1
- package/dist/util/getThisExpression.d.ts +3 -0
- package/dist/util/getThisExpression.d.ts.map +1 -0
- package/dist/util/getThisExpression.js +0 -1
- package/dist/util/getValueOfLiteralType.d.ts +3 -0
- package/dist/util/getValueOfLiteralType.d.ts.map +1 -0
- package/dist/util/getValueOfLiteralType.js +0 -1
- package/dist/util/getWrappedCode.d.ts +3 -0
- package/dist/util/getWrappedCode.d.ts.map +1 -0
- package/dist/util/getWrappedCode.js +0 -1
- package/dist/util/getWrappingFixer.d.ts +43 -0
- package/dist/util/getWrappingFixer.d.ts.map +1 -0
- package/dist/util/getWrappingFixer.js +0 -1
- package/dist/util/index.d.ts +35 -0
- package/dist/util/index.d.ts.map +1 -0
- package/dist/util/index.js +0 -1
- package/dist/util/isArrayMethodCallWithPredicate.d.ts +4 -0
- package/dist/util/isArrayMethodCallWithPredicate.d.ts.map +1 -0
- package/dist/util/isArrayMethodCallWithPredicate.js +0 -1
- package/dist/util/isAssignee.d.ts +3 -0
- package/dist/util/isAssignee.d.ts.map +1 -0
- package/dist/util/isAssignee.js +0 -1
- package/dist/util/isNodeEqual.d.ts +3 -0
- package/dist/util/isNodeEqual.d.ts.map +1 -0
- package/dist/util/isNodeEqual.js +0 -1
- package/dist/util/isNullLiteral.d.ts +3 -0
- package/dist/util/isNullLiteral.d.ts.map +1 -0
- package/dist/util/isNullLiteral.js +0 -1
- package/dist/util/isStartOfExpressionStatement.d.ts +8 -0
- package/dist/util/isStartOfExpressionStatement.d.ts.map +1 -0
- package/dist/util/isStartOfExpressionStatement.js +0 -1
- package/dist/util/isTypeImport.d.ts +13 -0
- package/dist/util/isTypeImport.d.ts.map +1 -0
- package/dist/util/isTypeImport.js +0 -1
- package/dist/util/isUndefinedIdentifier.d.ts +3 -0
- package/dist/util/isUndefinedIdentifier.d.ts.map +1 -0
- package/dist/util/isUndefinedIdentifier.js +0 -1
- package/dist/util/misc.d.ts +116 -0
- package/dist/util/misc.d.ts.map +1 -0
- package/dist/util/misc.js +0 -1
- package/dist/util/needsPrecedingSemiColon.d.ts +12 -0
- package/dist/util/needsPrecedingSemiColon.d.ts.map +1 -0
- package/dist/util/needsPrecedingSemiColon.js +0 -1
- package/dist/util/needsToBeAwaited.d.ts +8 -0
- package/dist/util/needsToBeAwaited.d.ts.map +1 -0
- package/dist/util/needsToBeAwaited.js +0 -1
- package/dist/util/objectIterators.d.ts +4 -0
- package/dist/util/objectIterators.d.ts.map +1 -0
- package/dist/util/objectIterators.js +0 -1
- package/dist/util/rangeToLoc.d.ts +3 -0
- package/dist/util/rangeToLoc.d.ts.map +1 -0
- package/dist/util/rangeToLoc.js +0 -1
- package/dist/util/referenceContainsTypeQuery.d.ts +6 -0
- package/dist/util/referenceContainsTypeQuery.d.ts.map +1 -0
- package/dist/util/referenceContainsTypeQuery.js +0 -1
- package/dist/util/scopeUtils.d.ts +4 -0
- package/dist/util/scopeUtils.d.ts.map +1 -0
- package/dist/util/scopeUtils.js +0 -1
- package/dist/util/truthinessAndNullishUtils.d.ts +6 -0
- package/dist/util/truthinessAndNullishUtils.d.ts.map +1 -0
- package/dist/util/truthinessAndNullishUtils.js +0 -1
- package/dist/util/types.d.ts +3 -0
- package/dist/util/types.d.ts.map +1 -0
- package/dist/util/types.js +0 -1
- package/package.json +9 -8
- package/dist/configs/all.js.map +0 -1
- package/dist/configs/base.js.map +0 -1
- package/dist/configs/disable-type-checked.js.map +0 -1
- package/dist/configs/eslint-recommended-raw.js.map +0 -1
- package/dist/configs/eslint-recommended.js.map +0 -1
- package/dist/configs/recommended-type-checked-only.js.map +0 -1
- package/dist/configs/recommended-type-checked.js.map +0 -1
- package/dist/configs/recommended.js.map +0 -1
- package/dist/configs/strict-type-checked-only.js.map +0 -1
- package/dist/configs/strict-type-checked.js.map +0 -1
- package/dist/configs/strict.js.map +0 -1
- package/dist/configs/stylistic-type-checked-only.js.map +0 -1
- package/dist/configs/stylistic-type-checked.js.map +0 -1
- package/dist/configs/stylistic.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/rules/adjacent-overload-signatures.js.map +0 -1
- package/dist/rules/array-type.js.map +0 -1
- package/dist/rules/await-thenable.js.map +0 -1
- package/dist/rules/ban-ts-comment.js.map +0 -1
- package/dist/rules/ban-tslint-comment.js.map +0 -1
- package/dist/rules/class-literal-property-style.js.map +0 -1
- package/dist/rules/class-methods-use-this.js.map +0 -1
- package/dist/rules/consistent-generic-constructors.js.map +0 -1
- package/dist/rules/consistent-indexed-object-style.js.map +0 -1
- package/dist/rules/consistent-return.js.map +0 -1
- package/dist/rules/consistent-type-assertions.js.map +0 -1
- package/dist/rules/consistent-type-definitions.js.map +0 -1
- package/dist/rules/consistent-type-exports.js.map +0 -1
- package/dist/rules/consistent-type-imports.js.map +0 -1
- package/dist/rules/default-param-last.js.map +0 -1
- package/dist/rules/dot-notation.js.map +0 -1
- package/dist/rules/enum-utils/shared.js.map +0 -1
- package/dist/rules/explicit-function-return-type.js.map +0 -1
- package/dist/rules/explicit-member-accessibility.js.map +0 -1
- package/dist/rules/explicit-module-boundary-types.js.map +0 -1
- package/dist/rules/index.js.map +0 -1
- package/dist/rules/init-declarations.js.map +0 -1
- package/dist/rules/max-params.js.map +0 -1
- package/dist/rules/member-ordering.js.map +0 -1
- package/dist/rules/method-signature-style.js.map +0 -1
- package/dist/rules/naming-convention-utils/enums.js.map +0 -1
- package/dist/rules/naming-convention-utils/format.js.map +0 -1
- package/dist/rules/naming-convention-utils/index.js.map +0 -1
- package/dist/rules/naming-convention-utils/parse-options.js.map +0 -1
- package/dist/rules/naming-convention-utils/schema.js.map +0 -1
- package/dist/rules/naming-convention-utils/shared.js.map +0 -1
- package/dist/rules/naming-convention-utils/types.js.map +0 -1
- package/dist/rules/naming-convention-utils/validator.js.map +0 -1
- package/dist/rules/naming-convention.js.map +0 -1
- package/dist/rules/no-array-constructor.js.map +0 -1
- package/dist/rules/no-array-delete.js.map +0 -1
- package/dist/rules/no-base-to-string.js.map +0 -1
- package/dist/rules/no-confusing-non-null-assertion.js.map +0 -1
- package/dist/rules/no-confusing-void-expression.js.map +0 -1
- package/dist/rules/no-deprecated.js.map +0 -1
- package/dist/rules/no-dupe-class-members.js.map +0 -1
- package/dist/rules/no-duplicate-enum-values.js.map +0 -1
- package/dist/rules/no-duplicate-type-constituents.js.map +0 -1
- package/dist/rules/no-dynamic-delete.js.map +0 -1
- package/dist/rules/no-empty-function.js.map +0 -1
- package/dist/rules/no-empty-interface.js.map +0 -1
- package/dist/rules/no-empty-object-type.js.map +0 -1
- package/dist/rules/no-explicit-any.js.map +0 -1
- package/dist/rules/no-extra-non-null-assertion.js.map +0 -1
- package/dist/rules/no-extraneous-class.js.map +0 -1
- package/dist/rules/no-floating-promises.js.map +0 -1
- package/dist/rules/no-for-in-array.js.map +0 -1
- package/dist/rules/no-implied-eval.js.map +0 -1
- package/dist/rules/no-import-type-side-effects.js.map +0 -1
- package/dist/rules/no-inferrable-types.js.map +0 -1
- package/dist/rules/no-invalid-this.js.map +0 -1
- package/dist/rules/no-invalid-void-type.js.map +0 -1
- package/dist/rules/no-loop-func.js.map +0 -1
- package/dist/rules/no-loss-of-precision.js.map +0 -1
- package/dist/rules/no-magic-numbers.js.map +0 -1
- package/dist/rules/no-meaningless-void-operator.js.map +0 -1
- package/dist/rules/no-misused-new.js.map +0 -1
- package/dist/rules/no-misused-promises.js.map +0 -1
- package/dist/rules/no-misused-spread.js.map +0 -1
- package/dist/rules/no-mixed-enums.js.map +0 -1
- package/dist/rules/no-namespace.js.map +0 -1
- package/dist/rules/no-non-null-asserted-nullish-coalescing.js.map +0 -1
- package/dist/rules/no-non-null-asserted-optional-chain.js.map +0 -1
- package/dist/rules/no-non-null-assertion.js.map +0 -1
- package/dist/rules/no-redeclare.js.map +0 -1
- package/dist/rules/no-redundant-type-constituents.js.map +0 -1
- package/dist/rules/no-require-imports.js.map +0 -1
- package/dist/rules/no-restricted-imports.js.map +0 -1
- package/dist/rules/no-restricted-types.js.map +0 -1
- package/dist/rules/no-shadow.js.map +0 -1
- package/dist/rules/no-this-alias.js.map +0 -1
- package/dist/rules/no-type-alias.js.map +0 -1
- package/dist/rules/no-unnecessary-boolean-literal-compare.js.map +0 -1
- package/dist/rules/no-unnecessary-condition.js.map +0 -1
- package/dist/rules/no-unnecessary-parameter-property-assignment.js.map +0 -1
- package/dist/rules/no-unnecessary-qualifier.js.map +0 -1
- package/dist/rules/no-unnecessary-template-expression.js.map +0 -1
- package/dist/rules/no-unnecessary-type-arguments.js.map +0 -1
- package/dist/rules/no-unnecessary-type-assertion.js.map +0 -1
- package/dist/rules/no-unnecessary-type-constraint.js.map +0 -1
- package/dist/rules/no-unnecessary-type-parameters.js.map +0 -1
- package/dist/rules/no-unsafe-argument.js.map +0 -1
- package/dist/rules/no-unsafe-assignment.js.map +0 -1
- package/dist/rules/no-unsafe-call.js.map +0 -1
- package/dist/rules/no-unsafe-declaration-merging.js.map +0 -1
- package/dist/rules/no-unsafe-enum-comparison.js.map +0 -1
- package/dist/rules/no-unsafe-function-type.js.map +0 -1
- package/dist/rules/no-unsafe-member-access.js.map +0 -1
- package/dist/rules/no-unsafe-return.js.map +0 -1
- package/dist/rules/no-unsafe-type-assertion.js.map +0 -1
- package/dist/rules/no-unsafe-unary-minus.js.map +0 -1
- package/dist/rules/no-unused-expressions.js.map +0 -1
- package/dist/rules/no-unused-vars.js.map +0 -1
- package/dist/rules/no-use-before-define.js.map +0 -1
- package/dist/rules/no-useless-constructor.js.map +0 -1
- package/dist/rules/no-useless-empty-export.js.map +0 -1
- package/dist/rules/no-var-requires.js.map +0 -1
- package/dist/rules/no-wrapper-object-types.js.map +0 -1
- package/dist/rules/non-nullable-type-assertion-style.js.map +0 -1
- package/dist/rules/only-throw-error.js.map +0 -1
- package/dist/rules/parameter-properties.js.map +0 -1
- package/dist/rules/prefer-as-const.js.map +0 -1
- package/dist/rules/prefer-destructuring.js.map +0 -1
- package/dist/rules/prefer-enum-initializers.js.map +0 -1
- package/dist/rules/prefer-find.js.map +0 -1
- package/dist/rules/prefer-for-of.js.map +0 -1
- package/dist/rules/prefer-function-type.js.map +0 -1
- package/dist/rules/prefer-includes.js.map +0 -1
- package/dist/rules/prefer-literal-enum-member.js.map +0 -1
- package/dist/rules/prefer-namespace-keyword.js.map +0 -1
- package/dist/rules/prefer-nullish-coalescing.js.map +0 -1
- package/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js.map +0 -1
- package/dist/rules/prefer-optional-chain-utils/analyzeChain.js.map +0 -1
- package/dist/rules/prefer-optional-chain-utils/checkNullishAndReport.js.map +0 -1
- package/dist/rules/prefer-optional-chain-utils/compareNodes.js.map +0 -1
- package/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js.map +0 -1
- package/dist/rules/prefer-optional-chain.js.map +0 -1
- package/dist/rules/prefer-promise-reject-errors.js.map +0 -1
- package/dist/rules/prefer-readonly-parameter-types.js.map +0 -1
- package/dist/rules/prefer-readonly.js.map +0 -1
- package/dist/rules/prefer-reduce-type-parameter.js.map +0 -1
- package/dist/rules/prefer-regexp-exec.js.map +0 -1
- package/dist/rules/prefer-return-this-type.js.map +0 -1
- package/dist/rules/prefer-string-starts-ends-with.js.map +0 -1
- package/dist/rules/prefer-ts-expect-error.js.map +0 -1
- package/dist/rules/promise-function-async.js.map +0 -1
- package/dist/rules/related-getter-setter-pairs.js.map +0 -1
- package/dist/rules/require-array-sort-compare.js.map +0 -1
- package/dist/rules/require-await.js.map +0 -1
- package/dist/rules/restrict-plus-operands.js.map +0 -1
- package/dist/rules/restrict-template-expressions.js.map +0 -1
- package/dist/rules/return-await.js.map +0 -1
- package/dist/rules/sort-type-constituents.js.map +0 -1
- package/dist/rules/strict-boolean-expressions.js.map +0 -1
- package/dist/rules/switch-exhaustiveness-check.js.map +0 -1
- package/dist/rules/triple-slash-reference.js.map +0 -1
- package/dist/rules/typedef.js.map +0 -1
- package/dist/rules/unbound-method.js.map +0 -1
- package/dist/rules/unified-signatures.js.map +0 -1
- package/dist/rules/use-unknown-in-catch-callback-variable.js.map +0 -1
- package/dist/util/assertionFunctionUtils.js.map +0 -1
- package/dist/util/astUtils.js.map +0 -1
- package/dist/util/collectUnusedVariables.js.map +0 -1
- package/dist/util/createRule.js.map +0 -1
- package/dist/util/escapeRegExp.js.map +0 -1
- package/dist/util/explicitReturnTypeUtils.js.map +0 -1
- package/dist/util/getConstraintInfo.js.map +0 -1
- package/dist/util/getESLintCoreRule.js.map +0 -1
- package/dist/util/getFixOrSuggest.js.map +0 -1
- package/dist/util/getForStatementHeadLoc.js.map +0 -1
- package/dist/util/getFunctionHeadLoc.js.map +0 -1
- package/dist/util/getMemberHeadLoc.js.map +0 -1
- package/dist/util/getOperatorPrecedence.js.map +0 -1
- package/dist/util/getParentFunctionNode.js.map +0 -1
- package/dist/util/getStaticStringValue.js.map +0 -1
- package/dist/util/getStringLength.js.map +0 -1
- package/dist/util/getTextWithParentheses.js.map +0 -1
- package/dist/util/getThisExpression.js.map +0 -1
- package/dist/util/getValueOfLiteralType.js.map +0 -1
- package/dist/util/getWrappedCode.js.map +0 -1
- package/dist/util/getWrappingFixer.js.map +0 -1
- package/dist/util/index.js.map +0 -1
- package/dist/util/isArrayMethodCallWithPredicate.js.map +0 -1
- package/dist/util/isAssignee.js.map +0 -1
- package/dist/util/isNodeEqual.js.map +0 -1
- package/dist/util/isNullLiteral.js.map +0 -1
- package/dist/util/isStartOfExpressionStatement.js.map +0 -1
- package/dist/util/isTypeImport.js.map +0 -1
- package/dist/util/isUndefinedIdentifier.js.map +0 -1
- package/dist/util/misc.js.map +0 -1
- package/dist/util/needsPrecedingSemiColon.js.map +0 -1
- package/dist/util/needsToBeAwaited.js.map +0 -1
- package/dist/util/objectIterators.js.map +0 -1
- package/dist/util/rangeToLoc.js.map +0 -1
- package/dist/util/referenceContainsTypeQuery.js.map +0 -1
- package/dist/util/scopeUtils.js.map +0 -1
- package/dist/util/truthinessAndNullishUtils.js.map +0 -1
- package/dist/util/types.js.map +0 -1
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"prefer-for-of.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-for-of.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;;AAMnE,wBAgKG"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import type { TSESLint } from '@typescript-eslint/utils';
|
2
|
+
export declare const phrases: {
|
3
|
+
readonly TSInterfaceDeclaration: "Interface";
|
4
|
+
readonly TSTypeLiteral: "Type literal";
|
5
|
+
};
|
6
|
+
declare const _default: TSESLint.RuleModule<"functionTypeOverCallableType" | "unexpectedThisOnFunctionOnlyInterface", [], import("../../rules").ESLintPluginDocs, TSESLint.RuleListener>;
|
7
|
+
export default _default;
|
8
|
+
//# sourceMappingURL=prefer-function-type.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"prefer-function-type.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-function-type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AAMnE,eAAO,MAAM,OAAO;;;CAGV,CAAC;;AAEX,wBAsNG"}
|
@@ -0,0 +1,4 @@
|
|
1
|
+
import type { TSESLint } from '@typescript-eslint/utils';
|
2
|
+
declare const _default: TSESLint.RuleModule<"preferIncludes" | "preferStringIncludes", [], import("../../rules").ESLintPluginDocs, TSESLint.RuleListener>;
|
3
|
+
export default _default;
|
4
|
+
//# sourceMappingURL=prefer-includes.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"prefer-includes.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-includes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;;AAcnE,wBAkQG"}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
declare const _default: import("@typescript-eslint/utils/ts-eslint").RuleModule<"notLiteral" | "notLiteralOrBitwiseExpression", [{
|
2
|
+
allowBitwiseExpressions: boolean;
|
3
|
+
}], import("../../rules").ESLintPluginDocs, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
4
|
+
export default _default;
|
5
|
+
//# sourceMappingURL=prefer-literal-enum-member.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"prefer-literal-enum-member.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-literal-enum-member.ts"],"names":[],"mappings":";;;AAMA,wBAmJG"}
|
@@ -0,0 +1,3 @@
|
|
1
|
+
declare const _default: import("@typescript-eslint/utils/ts-eslint").RuleModule<"useNamespace", [], import("../../rules").ESLintPluginDocs, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
|
2
|
+
export default _default;
|
3
|
+
//# sourceMappingURL=prefer-namespace-keyword.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"prefer-namespace-keyword.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-namespace-keyword.ts"],"names":[],"mappings":";AAIA,wBA2CG"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import type { TSESLint } from '@typescript-eslint/utils';
|
2
|
+
export type Options = [
|
3
|
+
{
|
4
|
+
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
|
5
|
+
ignoreBooleanCoercion?: boolean;
|
6
|
+
ignoreConditionalTests?: boolean;
|
7
|
+
ignoreMixedLogicalExpressions?: boolean;
|
8
|
+
ignorePrimitives?: {
|
9
|
+
bigint?: boolean;
|
10
|
+
boolean?: boolean;
|
11
|
+
number?: boolean;
|
12
|
+
string?: boolean;
|
13
|
+
} | true;
|
14
|
+
ignoreTernaryTests?: boolean;
|
15
|
+
}
|
16
|
+
];
|
17
|
+
export type MessageIds = 'noStrictNullCheck' | 'preferNullishOverOr' | 'preferNullishOverTernary' | 'suggestNullish';
|
18
|
+
declare const _default: TSESLint.RuleModule<MessageIds, Options, import("../../rules").ESLintPluginDocs, TSESLint.RuleListener>;
|
19
|
+
export default _default;
|
20
|
+
//# sourceMappingURL=prefer-nullish-coalescing.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"prefer-nullish-coalescing.d.ts","sourceRoot":"","sources":["../../src/rules/prefer-nullish-coalescing.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,0BAA0B,CAAC;AA0BnE,MAAM,MAAM,OAAO,GAAG;IACpB;QACE,sDAAsD,CAAC,EAAE,OAAO,CAAC;QACjE,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,6BAA6B,CAAC,EAAE,OAAO,CAAC;QACxC,gBAAgB,CAAC,EACb;YACE,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,MAAM,CAAC,EAAE,OAAO,CAAC;SAClB,GACD,IAAI,CAAC;QACT,kBAAkB,CAAC,EAAE,OAAO,CAAC;KAC9B;CACF,CAAC;AAEF,MAAM,MAAM,UAAU,GAClB,mBAAmB,GACnB,qBAAqB,GACrB,0BAA0B,GAC1B,gBAAgB,CAAC;;AAErB,wBA+dG"}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
export type PreferOptionalChainMessageIds = 'optionalChainSuggest' | 'preferOptionalChain';
|
2
|
+
export interface PreferOptionalChainOptions {
|
3
|
+
allowPotentiallyUnsafeFixesThatModifyTheReturnTypeIKnowWhatImDoing?: boolean;
|
4
|
+
checkAny?: boolean;
|
5
|
+
checkBigInt?: boolean;
|
6
|
+
checkBoolean?: boolean;
|
7
|
+
checkNumber?: boolean;
|
8
|
+
checkString?: boolean;
|
9
|
+
checkUnknown?: boolean;
|
10
|
+
requireNullish?: boolean;
|
11
|
+
}
|
12
|
+
//# sourceMappingURL=PreferOptionalChainOptions.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"PreferOptionalChainOptions.d.ts","sourceRoot":"","sources":["../../../src/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GACrC,sBAAsB,GACtB,qBAAqB,CAAC;AAE1B,MAAM,WAAW,0BAA0B;IACzC,kEAAkE,CAAC,EAAE,OAAO,CAAC;IAC7E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import type { ParserServicesWithTypeInformation, TSESTree } from '@typescript-eslint/utils';
|
2
|
+
import type { RuleContext } from '@typescript-eslint/utils/ts-eslint';
|
3
|
+
import type { ValidOperand } from './gatherLogicalOperands';
|
4
|
+
import type { PreferOptionalChainMessageIds, PreferOptionalChainOptions } from './PreferOptionalChainOptions';
|
5
|
+
export declare function analyzeChain(context: RuleContext<PreferOptionalChainMessageIds, [
|
6
|
+
PreferOptionalChainOptions
|
7
|
+
]>, parserServices: ParserServicesWithTypeInformation, options: PreferOptionalChainOptions, node: TSESTree.Node, operator: TSESTree.LogicalExpression['operator'], chain: ValidOperand[]): void;
|
8
|
+
//# sourceMappingURL=analyzeChain.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"analyzeChain.d.ts","sourceRoot":"","sources":["../../../src/rules/prefer-optional-chain-utils/analyzeChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,QAAQ,EACT,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAGV,WAAW,EAEZ,MAAM,oCAAoC,CAAC;AAM5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EACV,6BAA6B,EAC7B,0BAA0B,EAC3B,MAAM,8BAA8B,CAAC;AA8etC,wBAAgB,YAAY,CAC1B,OAAO,EAAE,WAAW,CAClB,6BAA6B,EAC7B;IAAC,0BAA0B;CAAC,CAC7B,EACD,cAAc,EAAE,iCAAiC,EACjD,OAAO,EAAE,0BAA0B,EACnC,IAAI,EAAE,QAAQ,CAAC,IAAI,EACnB,QAAQ,EAAE,QAAQ,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAChD,KAAK,EAAE,YAAY,EAAE,GACpB,IAAI,CA0GN"}
|
@@ -40,6 +40,7 @@ const ts = __importStar(require("typescript"));
|
|
40
40
|
const util_1 = require("../../util");
|
41
41
|
const checkNullishAndReport_1 = require("./checkNullishAndReport");
|
42
42
|
const compareNodes_1 = require("./compareNodes");
|
43
|
+
const gatherLogicalOperands_1 = require("./gatherLogicalOperands");
|
43
44
|
function includesType(parserServices, node, typeFlagIn) {
|
44
45
|
const typeFlag = typeFlagIn | ts.TypeFlags.Any | ts.TypeFlags.Unknown;
|
45
46
|
const types = (0, ts_api_utils_1.unionTypeParts)(parserServices.getTypeAtLocation(node));
|
@@ -52,24 +53,24 @@ function includesType(parserServices, node, typeFlagIn) {
|
|
52
53
|
}
|
53
54
|
const analyzeAndChainOperand = (parserServices, operand, index, chain) => {
|
54
55
|
switch (operand.comparisonType) {
|
55
|
-
case
|
56
|
+
case gatherLogicalOperands_1.NullishComparisonType.Boolean: {
|
56
57
|
const nextOperand = chain.at(index + 1);
|
57
58
|
if (nextOperand?.comparisonType ===
|
58
|
-
|
59
|
+
gatherLogicalOperands_1.NullishComparisonType.NotStrictEqualNull &&
|
59
60
|
operand.comparedName.type === utils_1.AST_NODE_TYPES.Identifier) {
|
60
61
|
return null;
|
61
62
|
}
|
62
63
|
return [operand];
|
63
64
|
}
|
64
|
-
case
|
65
|
+
case gatherLogicalOperands_1.NullishComparisonType.NotEqualNullOrUndefined:
|
65
66
|
return [operand];
|
66
|
-
case
|
67
|
+
case gatherLogicalOperands_1.NullishComparisonType.NotStrictEqualNull: {
|
67
68
|
// handle `x !== null && x !== undefined`
|
68
69
|
const nextOperand = chain.at(index + 1);
|
69
70
|
if (nextOperand?.comparisonType ===
|
70
|
-
|
71
|
+
gatherLogicalOperands_1.NullishComparisonType.NotStrictEqualUndefined &&
|
71
72
|
(0, compareNodes_1.compareNodes)(operand.comparedName, nextOperand.comparedName) ===
|
72
|
-
|
73
|
+
compareNodes_1.NodeComparisonResult.Equal) {
|
73
74
|
return [operand, nextOperand];
|
74
75
|
}
|
75
76
|
if (includesType(parserServices, operand.comparedName, ts.TypeFlags.Undefined)) {
|
@@ -80,13 +81,13 @@ const analyzeAndChainOperand = (parserServices, operand, index, chain) => {
|
|
80
81
|
}
|
81
82
|
return [operand];
|
82
83
|
}
|
83
|
-
case
|
84
|
+
case gatherLogicalOperands_1.NullishComparisonType.NotStrictEqualUndefined: {
|
84
85
|
// handle `x !== undefined && x !== null`
|
85
86
|
const nextOperand = chain.at(index + 1);
|
86
87
|
if (nextOperand?.comparisonType ===
|
87
|
-
|
88
|
+
gatherLogicalOperands_1.NullishComparisonType.NotStrictEqualNull &&
|
88
89
|
(0, compareNodes_1.compareNodes)(operand.comparedName, nextOperand.comparedName) ===
|
89
|
-
|
90
|
+
compareNodes_1.NodeComparisonResult.Equal) {
|
90
91
|
return [operand, nextOperand];
|
91
92
|
}
|
92
93
|
if (includesType(parserServices, operand.comparedName, ts.TypeFlags.Null)) {
|
@@ -103,16 +104,16 @@ const analyzeAndChainOperand = (parserServices, operand, index, chain) => {
|
|
103
104
|
};
|
104
105
|
const analyzeOrChainOperand = (parserServices, operand, index, chain) => {
|
105
106
|
switch (operand.comparisonType) {
|
106
|
-
case
|
107
|
-
case
|
107
|
+
case gatherLogicalOperands_1.NullishComparisonType.NotBoolean:
|
108
|
+
case gatherLogicalOperands_1.NullishComparisonType.EqualNullOrUndefined:
|
108
109
|
return [operand];
|
109
|
-
case
|
110
|
+
case gatherLogicalOperands_1.NullishComparisonType.StrictEqualNull: {
|
110
111
|
// handle `x === null || x === undefined`
|
111
112
|
const nextOperand = chain.at(index + 1);
|
112
113
|
if (nextOperand?.comparisonType ===
|
113
|
-
|
114
|
+
gatherLogicalOperands_1.NullishComparisonType.StrictEqualUndefined &&
|
114
115
|
(0, compareNodes_1.compareNodes)(operand.comparedName, nextOperand.comparedName) ===
|
115
|
-
|
116
|
+
compareNodes_1.NodeComparisonResult.Equal) {
|
116
117
|
return [operand, nextOperand];
|
117
118
|
}
|
118
119
|
if (includesType(parserServices, operand.comparedName, ts.TypeFlags.Undefined)) {
|
@@ -123,12 +124,12 @@ const analyzeOrChainOperand = (parserServices, operand, index, chain) => {
|
|
123
124
|
}
|
124
125
|
return [operand];
|
125
126
|
}
|
126
|
-
case
|
127
|
+
case gatherLogicalOperands_1.NullishComparisonType.StrictEqualUndefined: {
|
127
128
|
// handle `x === undefined || x === null`
|
128
129
|
const nextOperand = chain.at(index + 1);
|
129
|
-
if (nextOperand?.comparisonType ===
|
130
|
+
if (nextOperand?.comparisonType === gatherLogicalOperands_1.NullishComparisonType.StrictEqualNull &&
|
130
131
|
(0, compareNodes_1.compareNodes)(operand.comparedName, nextOperand.comparedName) ===
|
131
|
-
|
132
|
+
compareNodes_1.NodeComparisonResult.Equal) {
|
132
133
|
return [operand, nextOperand];
|
133
134
|
}
|
134
135
|
if (includesType(parserServices, operand.comparedName, ts.TypeFlags.Null)) {
|
@@ -183,14 +184,14 @@ function getReportDescriptor(sourceCode, parserServices, node, operator, options
|
|
183
184
|
// so we need to make sure that there is at least one operand that includes
|
184
185
|
// `undefined`, or else we're going to change the final type - which is
|
185
186
|
// unsafe and might cause downstream type errors.
|
186
|
-
else if (lastOperand.comparisonType ===
|
187
|
+
else if (lastOperand.comparisonType === gatherLogicalOperands_1.NullishComparisonType.EqualNullOrUndefined ||
|
187
188
|
lastOperand.comparisonType ===
|
188
|
-
|
189
|
-
lastOperand.comparisonType ===
|
189
|
+
gatherLogicalOperands_1.NullishComparisonType.NotEqualNullOrUndefined ||
|
190
|
+
lastOperand.comparisonType === gatherLogicalOperands_1.NullishComparisonType.StrictEqualUndefined ||
|
190
191
|
lastOperand.comparisonType ===
|
191
|
-
|
192
|
+
gatherLogicalOperands_1.NullishComparisonType.NotStrictEqualUndefined ||
|
192
193
|
(operator === '||' &&
|
193
|
-
lastOperand.comparisonType ===
|
194
|
+
lastOperand.comparisonType === gatherLogicalOperands_1.NullishComparisonType.NotBoolean)) {
|
194
195
|
// we know the last operand is an equality check - so the change in types
|
195
196
|
// DOES NOT matter and will not change the runtime result or cause a type
|
196
197
|
// check error
|
@@ -304,7 +305,7 @@ function getReportDescriptor(sourceCode, parserServices, node, operator, options
|
|
304
305
|
})();
|
305
306
|
newCode = `${left} ${operator} ${right}`;
|
306
307
|
}
|
307
|
-
else if (lastOperand.comparisonType ===
|
308
|
+
else if (lastOperand.comparisonType === gatherLogicalOperands_1.NullishComparisonType.NotBoolean) {
|
308
309
|
newCode = `!${newCode}`;
|
309
310
|
}
|
310
311
|
const reportRange = getReportRange(chain, node.range, sourceCode);
|
@@ -444,11 +445,11 @@ function analyzeChain(context, parserServices, options, node, operator, chain) {
|
|
444
445
|
// this also means we won't false-positive in cases like
|
445
446
|
// foo !== null && foo !== undefined
|
446
447
|
validatedOperands[validatedOperands.length - 1].comparedName);
|
447
|
-
if (comparisonResult ===
|
448
|
+
if (comparisonResult === compareNodes_1.NodeComparisonResult.Subset) {
|
448
449
|
// the operands are comparable, so we can continue searching
|
449
450
|
subChain.push(currentOperand);
|
450
451
|
}
|
451
|
-
else if (comparisonResult ===
|
452
|
+
else if (comparisonResult === compareNodes_1.NodeComparisonResult.Invalid) {
|
452
453
|
maybeReportThenReset(validatedOperands);
|
453
454
|
}
|
454
455
|
else {
|
@@ -464,4 +465,3 @@ function analyzeChain(context, parserServices, options, node, operator, chain) {
|
|
464
465
|
// check the leftovers
|
465
466
|
maybeReportThenReset();
|
466
467
|
}
|
467
|
-
//# sourceMappingURL=analyzeChain.js.map
|
@@ -0,0 +1,7 @@
|
|
1
|
+
import type { ParserServicesWithTypeInformation, TSESTree } from '@typescript-eslint/utils';
|
2
|
+
import type { ReportDescriptor, RuleContext } from '@typescript-eslint/utils/ts-eslint';
|
3
|
+
import type { PreferOptionalChainMessageIds, PreferOptionalChainOptions } from './PreferOptionalChainOptions';
|
4
|
+
export declare function checkNullishAndReport(context: RuleContext<PreferOptionalChainMessageIds, [
|
5
|
+
PreferOptionalChainOptions
|
6
|
+
]>, parserServices: ParserServicesWithTypeInformation, { requireNullish }: PreferOptionalChainOptions, maybeNullishNodes: TSESTree.Expression[], descriptor: ReportDescriptor<PreferOptionalChainMessageIds>): void;
|
7
|
+
//# sourceMappingURL=checkNullishAndReport.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"checkNullishAndReport.d.ts","sourceRoot":"","sources":["../../../src/rules/prefer-optional-chain-utils/checkNullishAndReport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iCAAiC,EACjC,QAAQ,EACT,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,gBAAgB,EAChB,WAAW,EACZ,MAAM,oCAAoC,CAAC;AAM5C,OAAO,KAAK,EACV,6BAA6B,EAC7B,0BAA0B,EAC3B,MAAM,8BAA8B,CAAC;AAEtC,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,WAAW,CAClB,6BAA6B,EAC7B;IAAC,0BAA0B;CAAC,CAC7B,EACD,cAAc,EAAE,iCAAiC,EACjD,EAAE,cAAc,EAAE,EAAE,0BAA0B,EAC9C,iBAAiB,EAAE,QAAQ,CAAC,UAAU,EAAE,EACxC,UAAU,EAAE,gBAAgB,CAAC,6BAA6B,CAAC,GAC1D,IAAI,CAWN"}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import type { TSESTree } from '@typescript-eslint/utils';
|
2
|
+
export declare const enum NodeComparisonResult {
|
3
|
+
/** the two nodes are comparably the same */
|
4
|
+
Equal = "Equal",
|
5
|
+
/** the left node is a subset of the right node */
|
6
|
+
Subset = "Subset",
|
7
|
+
/** the left node is not the same or is a superset of the right node */
|
8
|
+
Invalid = "Invalid"
|
9
|
+
}
|
10
|
+
type CompareNodesArgument = TSESTree.Node | null | undefined;
|
11
|
+
/**
|
12
|
+
* Compares two nodes' ASTs to determine if the A is equal to or a subset of B
|
13
|
+
*/
|
14
|
+
export declare function compareNodes(nodeA: CompareNodesArgument, nodeB: CompareNodesArgument): NodeComparisonResult;
|
15
|
+
export {};
|
16
|
+
//# sourceMappingURL=compareNodes.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"compareNodes.d.ts","sourceRoot":"","sources":["../../../src/rules/prefer-optional-chain-utils/compareNodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAKzD,0BAAkB,oBAAoB;IACpC,4CAA4C;IAC5C,KAAK,UAAU;IACf,kDAAkD;IAClD,MAAM,WAAW;IACjB,uEAAuE;IACvE,OAAO,YAAY;CACpB;AA8GD,KAAK,oBAAoB,GAAG,QAAQ,CAAC,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;AAuQ7D;;GAEG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,oBAAoB,EAC3B,KAAK,EAAE,oBAAoB,GAC1B,oBAAoB,CAqBtB"}
|
@@ -1,23 +1,33 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.NodeComparisonResult = void 0;
|
3
4
|
exports.compareNodes = compareNodes;
|
4
5
|
const utils_1 = require("@typescript-eslint/utils");
|
5
6
|
const visitor_keys_1 = require("@typescript-eslint/visitor-keys");
|
7
|
+
var NodeComparisonResult;
|
8
|
+
(function (NodeComparisonResult) {
|
9
|
+
/** the two nodes are comparably the same */
|
10
|
+
NodeComparisonResult["Equal"] = "Equal";
|
11
|
+
/** the left node is a subset of the right node */
|
12
|
+
NodeComparisonResult["Subset"] = "Subset";
|
13
|
+
/** the left node is not the same or is a superset of the right node */
|
14
|
+
NodeComparisonResult["Invalid"] = "Invalid";
|
15
|
+
})(NodeComparisonResult || (exports.NodeComparisonResult = NodeComparisonResult = {}));
|
6
16
|
function compareArrays(arrayA, arrayB) {
|
7
17
|
if (arrayA.length !== arrayB.length) {
|
8
|
-
return
|
18
|
+
return NodeComparisonResult.Invalid;
|
9
19
|
}
|
10
20
|
const result = arrayA.every((elA, idx) => {
|
11
21
|
const elB = arrayB[idx];
|
12
22
|
if (elA == null || elB == null) {
|
13
23
|
return elA === elB;
|
14
24
|
}
|
15
|
-
return compareUnknownValues(elA, elB) ===
|
25
|
+
return compareUnknownValues(elA, elB) === NodeComparisonResult.Equal;
|
16
26
|
});
|
17
27
|
if (result) {
|
18
|
-
return
|
28
|
+
return NodeComparisonResult.Equal;
|
19
29
|
}
|
20
|
-
return
|
30
|
+
return NodeComparisonResult.Invalid;
|
21
31
|
}
|
22
32
|
function isValidNode(x) {
|
23
33
|
return (typeof x === 'object' &&
|
@@ -36,13 +46,13 @@ function compareUnknownValues(valueA, valueB) {
|
|
36
46
|
/* istanbul ignore if -- not possible for us to test this - it's just a sanity safeguard */
|
37
47
|
if (valueA == null || valueB == null) {
|
38
48
|
if (valueA !== valueB) {
|
39
|
-
return
|
49
|
+
return NodeComparisonResult.Invalid;
|
40
50
|
}
|
41
|
-
return
|
51
|
+
return NodeComparisonResult.Equal;
|
42
52
|
}
|
43
53
|
/* istanbul ignore if -- not possible for us to test this - it's just a sanity safeguard */
|
44
54
|
if (!isValidNode(valueA) || !isValidNode(valueB)) {
|
45
|
-
return
|
55
|
+
return NodeComparisonResult.Invalid;
|
46
56
|
}
|
47
57
|
return compareNodes(valueA, valueB);
|
48
58
|
}
|
@@ -51,11 +61,11 @@ function compareByVisiting(nodeA, nodeB) {
|
|
51
61
|
/* istanbul ignore if -- not possible for us to test this - it's just a sanity safeguard */
|
52
62
|
if (currentVisitorKeys == null) {
|
53
63
|
// we don't know how to visit this node, so assume it's invalid to avoid false-positives / broken fixers
|
54
|
-
return
|
64
|
+
return NodeComparisonResult.Invalid;
|
55
65
|
}
|
56
66
|
if (currentVisitorKeys.length === 0) {
|
57
67
|
// assume nodes with no keys are constant things like keywords
|
58
|
-
return
|
68
|
+
return NodeComparisonResult.Equal;
|
59
69
|
}
|
60
70
|
for (const key of currentVisitorKeys) {
|
61
71
|
// @ts-expect-error - dynamic access but it's safe
|
@@ -66,20 +76,20 @@ function compareByVisiting(nodeA, nodeB) {
|
|
66
76
|
const arrayA = nodeAChildOrChildren;
|
67
77
|
const arrayB = nodeBChildOrChildren;
|
68
78
|
const result = compareArrays(arrayA, arrayB);
|
69
|
-
if (result !==
|
70
|
-
return
|
79
|
+
if (result !== NodeComparisonResult.Equal) {
|
80
|
+
return NodeComparisonResult.Invalid;
|
71
81
|
}
|
72
82
|
// fallthrough to the next key as the key was "equal"
|
73
83
|
}
|
74
84
|
else {
|
75
85
|
const result = compareUnknownValues(nodeAChildOrChildren, nodeBChildOrChildren);
|
76
|
-
if (result !==
|
77
|
-
return
|
86
|
+
if (result !== NodeComparisonResult.Equal) {
|
87
|
+
return NodeComparisonResult.Invalid;
|
78
88
|
}
|
79
89
|
// fallthrough to the next key as the key was "equal"
|
80
90
|
}
|
81
91
|
}
|
82
|
-
return
|
92
|
+
return NodeComparisonResult.Equal;
|
83
93
|
}
|
84
94
|
function compareNodesUncached(nodeA, nodeB) {
|
85
95
|
if (nodeA.type !== nodeB.type) {
|
@@ -133,22 +143,22 @@ function compareNodesUncached(nodeA, nodeB) {
|
|
133
143
|
if (nodeB.property.type === utils_1.AST_NODE_TYPES.PrivateIdentifier) {
|
134
144
|
// Private identifiers in optional chaining is not currently allowed
|
135
145
|
// TODO - handle this once TS supports it (https://github.com/microsoft/TypeScript/issues/42734)
|
136
|
-
return
|
146
|
+
return NodeComparisonResult.Invalid;
|
137
147
|
}
|
138
|
-
if (compareNodes(nodeA, nodeB.object) !==
|
139
|
-
return
|
148
|
+
if (compareNodes(nodeA, nodeB.object) !== NodeComparisonResult.Invalid) {
|
149
|
+
return NodeComparisonResult.Subset;
|
140
150
|
}
|
141
|
-
return
|
151
|
+
return NodeComparisonResult.Invalid;
|
142
152
|
case utils_1.AST_NODE_TYPES.CallExpression:
|
143
|
-
if (compareNodes(nodeA, nodeB.callee) !==
|
144
|
-
return
|
153
|
+
if (compareNodes(nodeA, nodeB.callee) !== NodeComparisonResult.Invalid) {
|
154
|
+
return NodeComparisonResult.Subset;
|
145
155
|
}
|
146
|
-
return
|
156
|
+
return NodeComparisonResult.Invalid;
|
147
157
|
default:
|
148
|
-
return
|
158
|
+
return NodeComparisonResult.Invalid;
|
149
159
|
}
|
150
160
|
}
|
151
|
-
return
|
161
|
+
return NodeComparisonResult.Invalid;
|
152
162
|
}
|
153
163
|
switch (nodeA.type) {
|
154
164
|
// these expressions create a new instance each time - so it makes no sense to compare the chain
|
@@ -160,10 +170,10 @@ function compareNodesUncached(nodeA, nodeB) {
|
|
160
170
|
case utils_1.AST_NODE_TYPES.JSXFragment:
|
161
171
|
case utils_1.AST_NODE_TYPES.NewExpression:
|
162
172
|
case utils_1.AST_NODE_TYPES.ObjectExpression:
|
163
|
-
return
|
173
|
+
return NodeComparisonResult.Invalid;
|
164
174
|
// chaining from assignments could change the value irrevocably - so it makes no sense to compare the chain
|
165
175
|
case utils_1.AST_NODE_TYPES.AssignmentExpression:
|
166
|
-
return
|
176
|
+
return NodeComparisonResult.Invalid;
|
167
177
|
case utils_1.AST_NODE_TYPES.CallExpression: {
|
168
178
|
const nodeBCall = nodeB;
|
169
179
|
// check for cases like
|
@@ -172,12 +182,12 @@ function compareNodesUncached(nodeA, nodeB) {
|
|
172
182
|
// ^^^^^^^^^^ nodeB
|
173
183
|
// we don't want to check the arguments in this case
|
174
184
|
const aSubsetOfB = compareNodes(nodeA, nodeBCall.callee);
|
175
|
-
if (aSubsetOfB !==
|
176
|
-
return
|
185
|
+
if (aSubsetOfB !== NodeComparisonResult.Invalid) {
|
186
|
+
return NodeComparisonResult.Subset;
|
177
187
|
}
|
178
188
|
const calleeCompare = compareNodes(nodeA.callee, nodeBCall.callee);
|
179
|
-
if (calleeCompare !==
|
180
|
-
return
|
189
|
+
if (calleeCompare !== NodeComparisonResult.Equal) {
|
190
|
+
return NodeComparisonResult.Invalid;
|
181
191
|
}
|
182
192
|
// NOTE - we purposely ignore optional flag because for our purposes
|
183
193
|
// foo?.bar() && foo.bar?.()?.baz
|
@@ -185,14 +195,14 @@ function compareNodesUncached(nodeA, nodeB) {
|
|
185
195
|
// foo.bar() && foo?.bar?.()?.baz
|
186
196
|
// are going to be exactly the same
|
187
197
|
const argumentCompare = compareArrays(nodeA.arguments, nodeBCall.arguments);
|
188
|
-
if (argumentCompare !==
|
189
|
-
return
|
198
|
+
if (argumentCompare !== NodeComparisonResult.Equal) {
|
199
|
+
return NodeComparisonResult.Invalid;
|
190
200
|
}
|
191
201
|
const typeParamCompare = compareNodes(nodeA.typeArguments, nodeBCall.typeArguments);
|
192
|
-
if (typeParamCompare ===
|
193
|
-
return
|
202
|
+
if (typeParamCompare === NodeComparisonResult.Equal) {
|
203
|
+
return NodeComparisonResult.Equal;
|
194
204
|
}
|
195
|
-
return
|
205
|
+
return NodeComparisonResult.Invalid;
|
196
206
|
}
|
197
207
|
case utils_1.AST_NODE_TYPES.ChainExpression:
|
198
208
|
// special case handling for ChainExpression because it's allowed to be a subset
|
@@ -200,23 +210,23 @@ function compareNodesUncached(nodeA, nodeB) {
|
|
200
210
|
case utils_1.AST_NODE_TYPES.Identifier:
|
201
211
|
case utils_1.AST_NODE_TYPES.PrivateIdentifier:
|
202
212
|
if (nodeA.name === nodeB.name) {
|
203
|
-
return
|
213
|
+
return NodeComparisonResult.Equal;
|
204
214
|
}
|
205
|
-
return
|
215
|
+
return NodeComparisonResult.Invalid;
|
206
216
|
case utils_1.AST_NODE_TYPES.Literal: {
|
207
217
|
const nodeBLiteral = nodeB;
|
208
218
|
if (nodeA.raw === nodeBLiteral.raw &&
|
209
219
|
nodeA.value === nodeBLiteral.value) {
|
210
|
-
return
|
220
|
+
return NodeComparisonResult.Equal;
|
211
221
|
}
|
212
|
-
return
|
222
|
+
return NodeComparisonResult.Invalid;
|
213
223
|
}
|
214
224
|
case utils_1.AST_NODE_TYPES.MemberExpression: {
|
215
225
|
const nodeBMember = nodeB;
|
216
226
|
if (nodeBMember.property.type === utils_1.AST_NODE_TYPES.PrivateIdentifier) {
|
217
227
|
// Private identifiers in optional chaining is not currently allowed
|
218
228
|
// TODO - handle this once TS supports it (https://github.com/microsoft/TypeScript/issues/42734)
|
219
|
-
return
|
229
|
+
return NodeComparisonResult.Invalid;
|
220
230
|
}
|
221
231
|
// check for cases like
|
222
232
|
// foo.bar && foo.bar.baz
|
@@ -231,11 +241,11 @@ function compareNodesUncached(nodeA, nodeB) {
|
|
231
241
|
//
|
232
242
|
// we don't want to check the property in this case
|
233
243
|
const aSubsetOfB = compareNodes(nodeA, nodeBMember.object);
|
234
|
-
if (aSubsetOfB !==
|
235
|
-
return
|
244
|
+
if (aSubsetOfB !== NodeComparisonResult.Invalid) {
|
245
|
+
return NodeComparisonResult.Subset;
|
236
246
|
}
|
237
247
|
if (nodeA.computed !== nodeBMember.computed) {
|
238
|
-
return
|
248
|
+
return NodeComparisonResult.Invalid;
|
239
249
|
}
|
240
250
|
// NOTE - we purposely ignore optional flag because for our purposes
|
241
251
|
// foo?.bar && foo.bar?.baz
|
@@ -243,8 +253,8 @@ function compareNodesUncached(nodeA, nodeB) {
|
|
243
253
|
// foo.bar && foo?.bar?.baz
|
244
254
|
// are going to be exactly the same
|
245
255
|
const objectCompare = compareNodes(nodeA.object, nodeBMember.object);
|
246
|
-
if (objectCompare !==
|
247
|
-
return
|
256
|
+
if (objectCompare !== NodeComparisonResult.Equal) {
|
257
|
+
return NodeComparisonResult.Invalid;
|
248
258
|
}
|
249
259
|
return compareNodes(nodeA.property, nodeBMember.property);
|
250
260
|
}
|
@@ -257,29 +267,29 @@ function compareNodesUncached(nodeA, nodeB) {
|
|
257
267
|
return elA.value.cooked === elB.value.cooked;
|
258
268
|
});
|
259
269
|
if (!areQuasisEqual) {
|
260
|
-
return
|
270
|
+
return NodeComparisonResult.Invalid;
|
261
271
|
}
|
262
|
-
return
|
272
|
+
return NodeComparisonResult.Equal;
|
263
273
|
}
|
264
274
|
case utils_1.AST_NODE_TYPES.TemplateElement: {
|
265
275
|
const nodeBElement = nodeB;
|
266
276
|
if (nodeA.value.cooked === nodeBElement.value.cooked) {
|
267
|
-
return
|
277
|
+
return NodeComparisonResult.Equal;
|
268
278
|
}
|
269
|
-
return
|
279
|
+
return NodeComparisonResult.Invalid;
|
270
280
|
}
|
271
281
|
// these aren't actually valid expressions.
|
272
282
|
// https://github.com/typescript-eslint/typescript-eslint/blob/20d7caee35ab84ae6381fdf04338c9e2b9e2bc48/packages/ast-spec/src/unions/Expression.ts#L37-L43
|
273
283
|
case utils_1.AST_NODE_TYPES.ArrayPattern:
|
274
284
|
case utils_1.AST_NODE_TYPES.ObjectPattern:
|
275
285
|
/* istanbul ignore next */
|
276
|
-
return
|
286
|
+
return NodeComparisonResult.Invalid;
|
277
287
|
// update expression returns a number and also changes the value each time - so it makes no sense to compare the chain
|
278
288
|
case utils_1.AST_NODE_TYPES.UpdateExpression:
|
279
|
-
return
|
289
|
+
return NodeComparisonResult.Invalid;
|
280
290
|
// yield returns the value passed to the `next` function, so it may not be the same each time - so it makes no sense to compare the chain
|
281
291
|
case utils_1.AST_NODE_TYPES.YieldExpression:
|
282
|
-
return
|
292
|
+
return NodeComparisonResult.Invalid;
|
283
293
|
// general-case automatic handling of nodes to save us implementing every
|
284
294
|
// single case by hand. This just iterates the visitor keys to recursively
|
285
295
|
// check the children.
|
@@ -297,9 +307,9 @@ const COMPARE_NODES_CACHE = new WeakMap();
|
|
297
307
|
function compareNodes(nodeA, nodeB) {
|
298
308
|
if (nodeA == null || nodeB == null) {
|
299
309
|
if (nodeA !== nodeB) {
|
300
|
-
return
|
310
|
+
return NodeComparisonResult.Invalid;
|
301
311
|
}
|
302
|
-
return
|
312
|
+
return NodeComparisonResult.Equal;
|
303
313
|
}
|
304
314
|
const cached = COMPARE_NODES_CACHE.get(nodeA)?.get(nodeB);
|
305
315
|
if (cached) {
|
@@ -314,4 +324,3 @@ function compareNodes(nodeA, nodeB) {
|
|
314
324
|
mapA.set(nodeB, result);
|
315
325
|
return result;
|
316
326
|
}
|
317
|
-
//# sourceMappingURL=compareNodes.js.map
|