eslint 8.39.0 → 8.41.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -3
- package/lib/cli-engine/cli-engine.js +3 -1
- package/lib/cli.js +2 -28
- package/lib/config/default-config.js +1 -1
- package/lib/config/flat-config-schema.js +57 -35
- package/lib/eslint/eslint-helpers.js +8 -7
- package/lib/eslint/flat-eslint.js +101 -46
- package/lib/linter/apply-disable-directives.js +11 -1
- package/lib/linter/config-comment-parser.js +9 -2
- package/lib/linter/linter.js +20 -11
- package/lib/linter/report-translator.js +4 -19
- package/lib/rules/accessor-pairs.js +2 -2
- package/lib/rules/array-bracket-newline.js +2 -2
- package/lib/rules/array-bracket-spacing.js +2 -2
- package/lib/rules/array-callback-return.js +2 -2
- package/lib/rules/array-element-newline.js +2 -2
- package/lib/rules/arrow-body-style.js +2 -2
- package/lib/rules/arrow-parens.js +2 -2
- package/lib/rules/arrow-spacing.js +2 -2
- package/lib/rules/block-scoped-var.js +2 -2
- package/lib/rules/block-spacing.js +2 -2
- package/lib/rules/brace-style.js +2 -2
- package/lib/rules/callback-return.js +2 -2
- package/lib/rules/camelcase.js +2 -2
- package/lib/rules/capitalized-comments.js +2 -2
- package/lib/rules/class-methods-use-this.js +2 -2
- package/lib/rules/comma-dangle.js +2 -2
- package/lib/rules/comma-spacing.js +2 -2
- package/lib/rules/comma-style.js +2 -2
- package/lib/rules/complexity.js +1 -1
- package/lib/rules/computed-property-spacing.js +2 -2
- package/lib/rules/consistent-return.js +3 -3
- package/lib/rules/consistent-this.js +2 -2
- package/lib/rules/constructor-super.js +1 -1
- package/lib/rules/curly.js +2 -2
- package/lib/rules/default-case-last.js +1 -1
- package/lib/rules/default-case.js +2 -2
- package/lib/rules/default-param-last.js +1 -1
- package/lib/rules/dot-location.js +2 -2
- package/lib/rules/dot-notation.js +2 -2
- package/lib/rules/eol-last.js +2 -2
- package/lib/rules/eqeqeq.js +2 -2
- package/lib/rules/for-direction.js +1 -1
- package/lib/rules/func-call-spacing.js +2 -2
- package/lib/rules/func-name-matching.js +1 -1
- package/lib/rules/func-names.js +2 -2
- package/lib/rules/func-style.js +1 -1
- package/lib/rules/function-call-argument-newline.js +2 -2
- package/lib/rules/function-paren-newline.js +2 -2
- package/lib/rules/generator-star-spacing.js +2 -2
- package/lib/rules/getter-return.js +2 -2
- package/lib/rules/global-require.js +2 -2
- package/lib/rules/grouped-accessor-pairs.js +2 -2
- package/lib/rules/guard-for-in.js +1 -1
- package/lib/rules/handle-callback-err.js +2 -2
- package/lib/rules/id-blacklist.js +2 -2
- package/lib/rules/id-denylist.js +2 -2
- package/lib/rules/id-length.js +3 -36
- package/lib/rules/id-match.js +2 -2
- package/lib/rules/implicit-arrow-linebreak.js +2 -2
- package/lib/rules/indent-legacy.js +2 -2
- package/lib/rules/indent.js +40 -56
- package/lib/rules/init-declarations.js +1 -1
- package/lib/rules/jsx-quotes.js +1 -1
- package/lib/rules/key-spacing.js +4 -10
- package/lib/rules/keyword-spacing.js +2 -2
- package/lib/rules/line-comment-position.js +2 -2
- package/lib/rules/linebreak-style.js +2 -2
- package/lib/rules/lines-around-comment.js +2 -2
- package/lib/rules/lines-around-directive.js +2 -2
- package/lib/rules/lines-between-class-members.js +2 -2
- package/lib/rules/logical-assignment-operators.js +2 -2
- package/lib/rules/max-classes-per-file.js +1 -1
- package/lib/rules/max-depth.js +1 -1
- package/lib/rules/max-len.js +2 -2
- package/lib/rules/max-lines-per-function.js +2 -2
- package/lib/rules/max-lines.js +2 -2
- package/lib/rules/max-nested-callbacks.js +1 -1
- package/lib/rules/max-params.js +2 -2
- package/lib/rules/max-statements-per-line.js +2 -2
- package/lib/rules/max-statements.js +1 -1
- package/lib/rules/multiline-comment-style.js +2 -2
- package/lib/rules/multiline-ternary.js +2 -2
- package/lib/rules/new-cap.js +2 -2
- package/lib/rules/new-parens.js +2 -2
- package/lib/rules/newline-after-var.js +2 -2
- package/lib/rules/newline-before-return.js +2 -2
- package/lib/rules/newline-per-chained-call.js +2 -2
- package/lib/rules/no-alert.js +2 -2
- package/lib/rules/no-array-constructor.js +1 -1
- package/lib/rules/no-async-promise-executor.js +2 -2
- package/lib/rules/no-await-in-loop.js +1 -1
- package/lib/rules/no-bitwise.js +1 -1
- package/lib/rules/no-buffer-constructor.js +1 -1
- package/lib/rules/no-caller.js +1 -1
- package/lib/rules/no-case-declarations.js +1 -1
- package/lib/rules/no-catch-shadow.js +2 -2
- package/lib/rules/no-class-assign.js +2 -2
- package/lib/rules/no-compare-neg-zero.js +1 -1
- package/lib/rules/no-cond-assign.js +2 -2
- package/lib/rules/no-confusing-arrow.js +2 -2
- package/lib/rules/no-console.js +2 -2
- package/lib/rules/no-const-assign.js +2 -2
- package/lib/rules/no-constant-binary-expression.js +2 -2
- package/lib/rules/no-constant-condition.js +2 -2
- package/lib/rules/no-constructor-return.js +1 -1
- package/lib/rules/no-continue.js +1 -1
- package/lib/rules/no-control-regex.js +1 -1
- package/lib/rules/no-debugger.js +1 -1
- package/lib/rules/no-delete-var.js +1 -1
- package/lib/rules/no-div-regex.js +2 -2
- package/lib/rules/no-dupe-args.js +2 -2
- package/lib/rules/no-dupe-class-members.js +1 -1
- package/lib/rules/no-dupe-else-if.js +2 -2
- package/lib/rules/no-dupe-keys.js +1 -1
- package/lib/rules/no-duplicate-case.js +2 -2
- package/lib/rules/no-duplicate-imports.js +1 -1
- package/lib/rules/no-else-return.js +2 -2
- package/lib/rules/no-empty-character-class.js +1 -1
- package/lib/rules/no-empty-function.js +2 -2
- package/lib/rules/no-empty-pattern.js +1 -1
- package/lib/rules/no-empty-static-block.js +2 -2
- package/lib/rules/no-empty.js +2 -2
- package/lib/rules/no-eq-null.js +1 -1
- package/lib/rules/no-eval.js +2 -2
- package/lib/rules/no-ex-assign.js +2 -2
- package/lib/rules/no-extend-native.js +2 -2
- package/lib/rules/no-extra-bind.js +2 -2
- package/lib/rules/no-extra-boolean-cast.js +2 -2
- package/lib/rules/no-extra-label.js +2 -2
- package/lib/rules/no-extra-parens.js +2 -2
- package/lib/rules/no-extra-semi.js +3 -3
- package/lib/rules/no-fallthrough.js +3 -3
- package/lib/rules/no-floating-decimal.js +2 -2
- package/lib/rules/no-func-assign.js +2 -2
- package/lib/rules/no-global-assign.js +2 -2
- package/lib/rules/no-implicit-coercion.js +2 -2
- package/lib/rules/no-implicit-globals.js +2 -2
- package/lib/rules/no-implied-eval.js +2 -2
- package/lib/rules/no-import-assign.js +2 -2
- package/lib/rules/no-inline-comments.js +2 -2
- package/lib/rules/no-inner-declarations.js +1 -1
- package/lib/rules/no-invalid-regexp.js +1 -1
- package/lib/rules/no-invalid-this.js +2 -2
- package/lib/rules/no-irregular-whitespace.js +2 -2
- package/lib/rules/no-iterator.js +1 -1
- package/lib/rules/no-label-var.js +2 -2
- package/lib/rules/no-labels.js +1 -1
- package/lib/rules/no-lone-blocks.js +2 -2
- package/lib/rules/no-lonely-if.js +2 -2
- package/lib/rules/no-loop-func.js +2 -2
- package/lib/rules/no-loss-of-precision.js +1 -1
- package/lib/rules/no-magic-numbers.js +1 -1
- package/lib/rules/no-misleading-character-class.js +2 -2
- package/lib/rules/no-mixed-operators.js +2 -2
- package/lib/rules/no-mixed-requires.js +1 -1
- package/lib/rules/no-mixed-spaces-and-tabs.js +2 -2
- package/lib/rules/no-multi-assign.js +1 -1
- package/lib/rules/no-multi-spaces.js +2 -2
- package/lib/rules/no-multi-str.js +1 -1
- package/lib/rules/no-multiple-empty-lines.js +2 -2
- package/lib/rules/no-native-reassign.js +2 -2
- package/lib/rules/no-negated-condition.js +1 -1
- package/lib/rules/no-negated-in-lhs.js +1 -1
- package/lib/rules/no-nested-ternary.js +1 -1
- package/lib/rules/no-new-func.js +2 -2
- package/lib/rules/no-new-native-nonconstructor.js +2 -2
- package/lib/rules/no-new-object.js +2 -2
- package/lib/rules/no-new-require.js +1 -1
- package/lib/rules/no-new-symbol.js +2 -2
- package/lib/rules/no-new-wrappers.js +1 -1
- package/lib/rules/no-new.js +1 -1
- package/lib/rules/no-nonoctal-decimal-escape.js +2 -2
- package/lib/rules/no-obj-calls.js +2 -2
- package/lib/rules/no-octal-escape.js +1 -1
- package/lib/rules/no-octal.js +1 -1
- package/lib/rules/no-param-reassign.js +2 -2
- package/lib/rules/no-path-concat.js +1 -1
- package/lib/rules/no-plusplus.js +1 -1
- package/lib/rules/no-process-env.js +1 -1
- package/lib/rules/no-process-exit.js +1 -1
- package/lib/rules/no-promise-executor-return.js +2 -2
- package/lib/rules/no-proto.js +1 -1
- package/lib/rules/no-prototype-builtins.js +1 -1
- package/lib/rules/no-redeclare.js +2 -2
- package/lib/rules/no-regex-spaces.js +2 -2
- package/lib/rules/no-restricted-exports.js +2 -2
- package/lib/rules/no-restricted-globals.js +2 -2
- package/lib/rules/no-restricted-imports.js +2 -2
- package/lib/rules/no-restricted-modules.js +1 -1
- package/lib/rules/no-restricted-properties.js +1 -1
- package/lib/rules/no-restricted-syntax.js +1 -1
- package/lib/rules/no-return-assign.js +2 -2
- package/lib/rules/no-return-await.js +3 -3
- package/lib/rules/no-script-url.js +1 -1
- package/lib/rules/no-self-assign.js +2 -2
- package/lib/rules/no-self-compare.js +2 -2
- package/lib/rules/no-sequences.js +2 -2
- package/lib/rules/no-setter-return.js +2 -2
- package/lib/rules/no-shadow-restricted-names.js +2 -2
- package/lib/rules/no-shadow.js +2 -2
- package/lib/rules/no-spaced-func.js +2 -2
- package/lib/rules/no-sparse-arrays.js +1 -1
- package/lib/rules/no-sync.js +1 -1
- package/lib/rules/no-tabs.js +2 -2
- package/lib/rules/no-template-curly-in-string.js +1 -1
- package/lib/rules/no-ternary.js +1 -1
- package/lib/rules/no-this-before-super.js +1 -1
- package/lib/rules/no-throw-literal.js +1 -1
- package/lib/rules/no-trailing-spaces.js +2 -2
- package/lib/rules/no-undef-init.js +2 -2
- package/lib/rules/no-undef.js +2 -2
- package/lib/rules/no-undefined.js +2 -2
- package/lib/rules/no-underscore-dangle.js +2 -2
- package/lib/rules/no-unexpected-multiline.js +2 -2
- package/lib/rules/no-unmodified-loop-condition.js +2 -2
- package/lib/rules/no-unneeded-ternary.js +2 -2
- package/lib/rules/no-unreachable-loop.js +1 -1
- package/lib/rules/no-unreachable.js +2 -2
- package/lib/rules/no-unsafe-finally.js +1 -1
- package/lib/rules/no-unsafe-negation.js +2 -2
- package/lib/rules/no-unsafe-optional-chaining.js +1 -1
- package/lib/rules/no-unused-expressions.js +1 -1
- package/lib/rules/no-unused-labels.js +2 -2
- package/lib/rules/no-unused-private-class-members.js +1 -1
- package/lib/rules/no-unused-vars.js +2 -2
- package/lib/rules/no-use-before-define.js +2 -2
- package/lib/rules/no-useless-backreference.js +2 -2
- package/lib/rules/no-useless-call.js +2 -2
- package/lib/rules/no-useless-catch.js +1 -1
- package/lib/rules/no-useless-computed-key.js +2 -2
- package/lib/rules/no-useless-concat.js +2 -2
- package/lib/rules/no-useless-constructor.js +1 -1
- package/lib/rules/no-useless-escape.js +2 -2
- package/lib/rules/no-useless-rename.js +2 -2
- package/lib/rules/no-useless-return.js +2 -2
- package/lib/rules/no-var.js +2 -2
- package/lib/rules/no-void.js +1 -1
- package/lib/rules/no-warning-comments.js +2 -2
- package/lib/rules/no-whitespace-before-property.js +2 -2
- package/lib/rules/no-with.js +1 -1
- package/lib/rules/nonblock-statement-body-position.js +2 -2
- package/lib/rules/object-curly-newline.js +2 -2
- package/lib/rules/object-curly-spacing.js +4 -4
- package/lib/rules/object-property-newline.js +2 -2
- package/lib/rules/object-shorthand.js +2 -2
- package/lib/rules/one-var-declaration-per-line.js +1 -1
- package/lib/rules/one-var.js +2 -2
- package/lib/rules/operator-assignment.js +2 -2
- package/lib/rules/operator-linebreak.js +2 -2
- package/lib/rules/padded-blocks.js +2 -2
- package/lib/rules/padding-line-between-statements.js +4 -4
- package/lib/rules/prefer-arrow-callback.js +2 -2
- package/lib/rules/prefer-const.js +2 -2
- package/lib/rules/prefer-destructuring.js +2 -2
- package/lib/rules/prefer-exponentiation-operator.js +2 -2
- package/lib/rules/prefer-named-capture-group.js +2 -2
- package/lib/rules/prefer-numeric-literals.js +2 -2
- package/lib/rules/prefer-object-has-own.js +2 -2
- package/lib/rules/prefer-object-spread.js +2 -2
- package/lib/rules/prefer-promise-reject-errors.js +2 -2
- package/lib/rules/prefer-reflect.js +1 -1
- package/lib/rules/prefer-regex-literals.js +2 -2
- package/lib/rules/prefer-rest-params.js +2 -2
- package/lib/rules/prefer-spread.js +2 -2
- package/lib/rules/prefer-template.js +2 -2
- package/lib/rules/quote-props.js +2 -2
- package/lib/rules/quotes.js +2 -2
- package/lib/rules/radix.js +2 -2
- package/lib/rules/require-atomic-updates.js +2 -2
- package/lib/rules/require-await.js +2 -2
- package/lib/rules/require-jsdoc.js +2 -2
- package/lib/rules/require-unicode-regexp.js +2 -2
- package/lib/rules/require-yield.js +1 -1
- package/lib/rules/rest-spread-spacing.js +2 -2
- package/lib/rules/semi-spacing.js +2 -2
- package/lib/rules/semi-style.js +2 -2
- package/lib/rules/semi.js +30 -5
- package/lib/rules/sort-imports.js +2 -2
- package/lib/rules/sort-keys.js +2 -2
- package/lib/rules/sort-vars.js +2 -2
- package/lib/rules/space-before-blocks.js +2 -2
- package/lib/rules/space-before-function-paren.js +2 -2
- package/lib/rules/space-in-parens.js +2 -2
- package/lib/rules/space-infix-ops.js +2 -2
- package/lib/rules/space-unary-ops.js +2 -2
- package/lib/rules/spaced-comment.js +2 -2
- package/lib/rules/strict.js +1 -1
- package/lib/rules/switch-colon-spacing.js +2 -2
- package/lib/rules/symbol-description.js +2 -2
- package/lib/rules/template-curly-spacing.js +2 -2
- package/lib/rules/template-tag-spacing.js +2 -2
- package/lib/rules/unicode-bom.js +2 -2
- package/lib/rules/use-isnan.js +1 -1
- package/lib/rules/valid-jsdoc.js +2 -2
- package/lib/rules/valid-typeof.js +2 -2
- package/lib/rules/vars-on-top.js +1 -1
- package/lib/rules/wrap-iife.js +2 -2
- package/lib/rules/wrap-regex.js +2 -2
- package/lib/rules/yield-star-spacing.js +2 -2
- package/lib/rules/yoda.js +2 -2
- package/lib/shared/string-utils.js +39 -1
- package/lib/shared/types.js +6 -2
- package/lib/unsupported-api.js +2 -1
- package/messages/invalid-rule-options.js +17 -0
- package/messages/invalid-rule-severity.js +13 -0
- package/messages/shared.js +18 -0
- package/package.json +6 -7
@@ -19,7 +19,7 @@ module.exports = {
|
|
19
19
|
docs: {
|
20
20
|
description: "Disallow reassigning `const` variables",
|
21
21
|
recommended: true,
|
22
|
-
url: "https://eslint.org/docs/rules/no-const-assign"
|
22
|
+
url: "https://eslint.org/docs/latest/rules/no-const-assign"
|
23
23
|
},
|
24
24
|
|
25
25
|
schema: [],
|
@@ -31,7 +31,7 @@ module.exports = {
|
|
31
31
|
|
32
32
|
create(context) {
|
33
33
|
|
34
|
-
const sourceCode = context.
|
34
|
+
const sourceCode = context.sourceCode;
|
35
35
|
|
36
36
|
/**
|
37
37
|
* Finds and reports references that are non initializer and writable.
|
@@ -441,7 +441,7 @@ module.exports = {
|
|
441
441
|
docs: {
|
442
442
|
description: "Disallow expressions where the operation doesn't affect the value",
|
443
443
|
recommended: false,
|
444
|
-
url: "https://eslint.org/docs/rules/no-constant-binary-expression"
|
444
|
+
url: "https://eslint.org/docs/latest/rules/no-constant-binary-expression"
|
445
445
|
},
|
446
446
|
schema: [],
|
447
447
|
messages: {
|
@@ -453,7 +453,7 @@ module.exports = {
|
|
453
453
|
},
|
454
454
|
|
455
455
|
create(context) {
|
456
|
-
const sourceCode = context.
|
456
|
+
const sourceCode = context.sourceCode;
|
457
457
|
|
458
458
|
return {
|
459
459
|
LogicalExpression(node) {
|
@@ -23,7 +23,7 @@ module.exports = {
|
|
23
23
|
docs: {
|
24
24
|
description: "Disallow constant expressions in conditions",
|
25
25
|
recommended: true,
|
26
|
-
url: "https://eslint.org/docs/rules/no-constant-condition"
|
26
|
+
url: "https://eslint.org/docs/latest/rules/no-constant-condition"
|
27
27
|
},
|
28
28
|
|
29
29
|
schema: [
|
@@ -48,7 +48,7 @@ module.exports = {
|
|
48
48
|
const options = context.options[0] || {},
|
49
49
|
checkLoops = options.checkLoops !== false,
|
50
50
|
loopSetStack = [];
|
51
|
-
const sourceCode = context.
|
51
|
+
const sourceCode = context.sourceCode;
|
52
52
|
|
53
53
|
let loopsInCurrentScope = new Set();
|
54
54
|
|
@@ -17,7 +17,7 @@ module.exports = {
|
|
17
17
|
docs: {
|
18
18
|
description: "Disallow returning value from constructor",
|
19
19
|
recommended: false,
|
20
|
-
url: "https://eslint.org/docs/rules/no-constructor-return"
|
20
|
+
url: "https://eslint.org/docs/latest/rules/no-constructor-return"
|
21
21
|
},
|
22
22
|
|
23
23
|
schema: {},
|
package/lib/rules/no-continue.js
CHANGED
@@ -56,7 +56,7 @@ module.exports = {
|
|
56
56
|
docs: {
|
57
57
|
description: "Disallow control characters in regular expressions",
|
58
58
|
recommended: true,
|
59
|
-
url: "https://eslint.org/docs/rules/no-control-regex"
|
59
|
+
url: "https://eslint.org/docs/latest/rules/no-control-regex"
|
60
60
|
},
|
61
61
|
|
62
62
|
schema: [],
|
package/lib/rules/no-debugger.js
CHANGED
@@ -17,7 +17,7 @@ module.exports = {
|
|
17
17
|
docs: {
|
18
18
|
description: "Disallow equal signs explicitly at the beginning of regular expressions",
|
19
19
|
recommended: false,
|
20
|
-
url: "https://eslint.org/docs/rules/no-div-regex"
|
20
|
+
url: "https://eslint.org/docs/latest/rules/no-div-regex"
|
21
21
|
},
|
22
22
|
|
23
23
|
fixable: "code",
|
@@ -30,7 +30,7 @@ module.exports = {
|
|
30
30
|
},
|
31
31
|
|
32
32
|
create(context) {
|
33
|
-
const sourceCode = context.
|
33
|
+
const sourceCode = context.sourceCode;
|
34
34
|
|
35
35
|
return {
|
36
36
|
|
@@ -17,7 +17,7 @@ module.exports = {
|
|
17
17
|
docs: {
|
18
18
|
description: "Disallow duplicate arguments in `function` definitions",
|
19
19
|
recommended: true,
|
20
|
-
url: "https://eslint.org/docs/rules/no-dupe-args"
|
20
|
+
url: "https://eslint.org/docs/latest/rules/no-dupe-args"
|
21
21
|
},
|
22
22
|
|
23
23
|
schema: [],
|
@@ -29,7 +29,7 @@ module.exports = {
|
|
29
29
|
|
30
30
|
create(context) {
|
31
31
|
|
32
|
-
const sourceCode = context.
|
32
|
+
const sourceCode = context.sourceCode;
|
33
33
|
|
34
34
|
//--------------------------------------------------------------------------
|
35
35
|
// Helpers
|
@@ -54,7 +54,7 @@ module.exports = {
|
|
54
54
|
docs: {
|
55
55
|
description: "Disallow duplicate conditions in if-else-if chains",
|
56
56
|
recommended: true,
|
57
|
-
url: "https://eslint.org/docs/rules/no-dupe-else-if"
|
57
|
+
url: "https://eslint.org/docs/latest/rules/no-dupe-else-if"
|
58
58
|
},
|
59
59
|
|
60
60
|
schema: [],
|
@@ -65,7 +65,7 @@ module.exports = {
|
|
65
65
|
},
|
66
66
|
|
67
67
|
create(context) {
|
68
|
-
const sourceCode = context.
|
68
|
+
const sourceCode = context.sourceCode;
|
69
69
|
|
70
70
|
/**
|
71
71
|
* Determines whether the two given nodes are considered to be equal. In particular, given that the nodes
|
@@ -24,7 +24,7 @@ module.exports = {
|
|
24
24
|
docs: {
|
25
25
|
description: "Disallow duplicate case labels",
|
26
26
|
recommended: true,
|
27
|
-
url: "https://eslint.org/docs/rules/no-duplicate-case"
|
27
|
+
url: "https://eslint.org/docs/latest/rules/no-duplicate-case"
|
28
28
|
},
|
29
29
|
|
30
30
|
schema: [],
|
@@ -35,7 +35,7 @@ module.exports = {
|
|
35
35
|
},
|
36
36
|
|
37
37
|
create(context) {
|
38
|
-
const sourceCode = context.
|
38
|
+
const sourceCode = context.sourceCode;
|
39
39
|
|
40
40
|
/**
|
41
41
|
* Determines whether the two given nodes are considered to be equal.
|
@@ -235,7 +235,7 @@ module.exports = {
|
|
235
235
|
docs: {
|
236
236
|
description: "Disallow duplicate module imports",
|
237
237
|
recommended: false,
|
238
|
-
url: "https://eslint.org/docs/rules/no-duplicate-imports"
|
238
|
+
url: "https://eslint.org/docs/latest/rules/no-duplicate-imports"
|
239
239
|
},
|
240
240
|
|
241
241
|
schema: [
|
@@ -24,7 +24,7 @@ module.exports = {
|
|
24
24
|
docs: {
|
25
25
|
description: "Disallow `else` blocks after `return` statements in `if` statements",
|
26
26
|
recommended: false,
|
27
|
-
url: "https://eslint.org/docs/rules/no-else-return"
|
27
|
+
url: "https://eslint.org/docs/latest/rules/no-else-return"
|
28
28
|
},
|
29
29
|
|
30
30
|
schema: [{
|
@@ -47,7 +47,7 @@ module.exports = {
|
|
47
47
|
|
48
48
|
create(context) {
|
49
49
|
|
50
|
-
const sourceCode = context.
|
50
|
+
const sourceCode = context.sourceCode;
|
51
51
|
|
52
52
|
//--------------------------------------------------------------------------
|
53
53
|
// Helpers
|
@@ -32,7 +32,7 @@ module.exports = {
|
|
32
32
|
docs: {
|
33
33
|
description: "Disallow empty character classes in regular expressions",
|
34
34
|
recommended: true,
|
35
|
-
url: "https://eslint.org/docs/rules/no-empty-character-class"
|
35
|
+
url: "https://eslint.org/docs/latest/rules/no-empty-character-class"
|
36
36
|
},
|
37
37
|
|
38
38
|
schema: [],
|
@@ -97,7 +97,7 @@ module.exports = {
|
|
97
97
|
docs: {
|
98
98
|
description: "Disallow empty functions",
|
99
99
|
recommended: false,
|
100
|
-
url: "https://eslint.org/docs/rules/no-empty-function"
|
100
|
+
url: "https://eslint.org/docs/latest/rules/no-empty-function"
|
101
101
|
},
|
102
102
|
|
103
103
|
schema: [
|
@@ -123,7 +123,7 @@ module.exports = {
|
|
123
123
|
const options = context.options[0] || {};
|
124
124
|
const allowed = options.allow || [];
|
125
125
|
|
126
|
-
const sourceCode = context.
|
126
|
+
const sourceCode = context.sourceCode;
|
127
127
|
|
128
128
|
/**
|
129
129
|
* Reports a given function node if the node matches the following patterns.
|
@@ -16,7 +16,7 @@ module.exports = {
|
|
16
16
|
docs: {
|
17
17
|
description: "Disallow empty static blocks",
|
18
18
|
recommended: false,
|
19
|
-
url: "https://eslint.org/docs/rules/no-empty-static-block"
|
19
|
+
url: "https://eslint.org/docs/latest/rules/no-empty-static-block"
|
20
20
|
},
|
21
21
|
|
22
22
|
schema: [],
|
@@ -27,7 +27,7 @@ module.exports = {
|
|
27
27
|
},
|
28
28
|
|
29
29
|
create(context) {
|
30
|
-
const sourceCode = context.
|
30
|
+
const sourceCode = context.sourceCode;
|
31
31
|
|
32
32
|
return {
|
33
33
|
StaticBlock(node) {
|
package/lib/rules/no-empty.js
CHANGED
@@ -23,7 +23,7 @@ module.exports = {
|
|
23
23
|
docs: {
|
24
24
|
description: "Disallow empty block statements",
|
25
25
|
recommended: true,
|
26
|
-
url: "https://eslint.org/docs/rules/no-empty"
|
26
|
+
url: "https://eslint.org/docs/latest/rules/no-empty"
|
27
27
|
},
|
28
28
|
|
29
29
|
schema: [
|
@@ -49,7 +49,7 @@ module.exports = {
|
|
49
49
|
const options = context.options[0] || {},
|
50
50
|
allowEmptyCatch = options.allowEmptyCatch || false;
|
51
51
|
|
52
|
-
const sourceCode = context.
|
52
|
+
const sourceCode = context.sourceCode;
|
53
53
|
|
54
54
|
return {
|
55
55
|
BlockStatement(node) {
|
package/lib/rules/no-eq-null.js
CHANGED
@@ -18,7 +18,7 @@ module.exports = {
|
|
18
18
|
docs: {
|
19
19
|
description: "Disallow `null` comparisons without type-checking operators",
|
20
20
|
recommended: false,
|
21
|
-
url: "https://eslint.org/docs/rules/no-eq-null"
|
21
|
+
url: "https://eslint.org/docs/latest/rules/no-eq-null"
|
22
22
|
},
|
23
23
|
|
24
24
|
schema: [],
|
package/lib/rules/no-eval.js
CHANGED
@@ -45,7 +45,7 @@ module.exports = {
|
|
45
45
|
docs: {
|
46
46
|
description: "Disallow the use of `eval()`",
|
47
47
|
recommended: false,
|
48
|
-
url: "https://eslint.org/docs/rules/no-eval"
|
48
|
+
url: "https://eslint.org/docs/latest/rules/no-eval"
|
49
49
|
},
|
50
50
|
|
51
51
|
schema: [
|
@@ -68,7 +68,7 @@ module.exports = {
|
|
68
68
|
context.options[0] &&
|
69
69
|
context.options[0].allowIndirect
|
70
70
|
);
|
71
|
-
const sourceCode = context.
|
71
|
+
const sourceCode = context.sourceCode;
|
72
72
|
let funcInfo = null;
|
73
73
|
|
74
74
|
/**
|
@@ -19,7 +19,7 @@ module.exports = {
|
|
19
19
|
docs: {
|
20
20
|
description: "Disallow reassigning exceptions in `catch` clauses",
|
21
21
|
recommended: true,
|
22
|
-
url: "https://eslint.org/docs/rules/no-ex-assign"
|
22
|
+
url: "https://eslint.org/docs/latest/rules/no-ex-assign"
|
23
23
|
},
|
24
24
|
|
25
25
|
schema: [],
|
@@ -31,7 +31,7 @@ module.exports = {
|
|
31
31
|
|
32
32
|
create(context) {
|
33
33
|
|
34
|
-
const sourceCode = context.
|
34
|
+
const sourceCode = context.sourceCode;
|
35
35
|
|
36
36
|
/**
|
37
37
|
* Finds and reports references that are non initializer and writable.
|
@@ -24,7 +24,7 @@ module.exports = {
|
|
24
24
|
docs: {
|
25
25
|
description: "Disallow extending native types",
|
26
26
|
recommended: false,
|
27
|
-
url: "https://eslint.org/docs/rules/no-extend-native"
|
27
|
+
url: "https://eslint.org/docs/latest/rules/no-extend-native"
|
28
28
|
},
|
29
29
|
|
30
30
|
schema: [
|
@@ -51,7 +51,7 @@ module.exports = {
|
|
51
51
|
create(context) {
|
52
52
|
|
53
53
|
const config = context.options[0] || {};
|
54
|
-
const sourceCode = context.
|
54
|
+
const sourceCode = context.sourceCode;
|
55
55
|
const exceptions = new Set(config.exceptions || []);
|
56
56
|
const modifiedBuiltins = new Set(
|
57
57
|
Object.keys(globals.builtin)
|
@@ -28,7 +28,7 @@ module.exports = {
|
|
28
28
|
docs: {
|
29
29
|
description: "Disallow unnecessary calls to `.bind()`",
|
30
30
|
recommended: false,
|
31
|
-
url: "https://eslint.org/docs/rules/no-extra-bind"
|
31
|
+
url: "https://eslint.org/docs/latest/rules/no-extra-bind"
|
32
32
|
},
|
33
33
|
|
34
34
|
schema: [],
|
@@ -40,7 +40,7 @@ module.exports = {
|
|
40
40
|
},
|
41
41
|
|
42
42
|
create(context) {
|
43
|
-
const sourceCode = context.
|
43
|
+
const sourceCode = context.sourceCode;
|
44
44
|
let scopeInfo = null;
|
45
45
|
|
46
46
|
/**
|
@@ -26,7 +26,7 @@ module.exports = {
|
|
26
26
|
docs: {
|
27
27
|
description: "Disallow unnecessary boolean casts",
|
28
28
|
recommended: true,
|
29
|
-
url: "https://eslint.org/docs/rules/no-extra-boolean-cast"
|
29
|
+
url: "https://eslint.org/docs/latest/rules/no-extra-boolean-cast"
|
30
30
|
},
|
31
31
|
|
32
32
|
schema: [{
|
@@ -48,7 +48,7 @@ module.exports = {
|
|
48
48
|
},
|
49
49
|
|
50
50
|
create(context) {
|
51
|
-
const sourceCode = context.
|
51
|
+
const sourceCode = context.sourceCode;
|
52
52
|
|
53
53
|
// Node types which have a test which will coerce values to booleans.
|
54
54
|
const BOOLEAN_NODE_TYPES = new Set([
|
@@ -23,7 +23,7 @@ module.exports = {
|
|
23
23
|
docs: {
|
24
24
|
description: "Disallow unnecessary labels",
|
25
25
|
recommended: false,
|
26
|
-
url: "https://eslint.org/docs/rules/no-extra-label"
|
26
|
+
url: "https://eslint.org/docs/latest/rules/no-extra-label"
|
27
27
|
},
|
28
28
|
|
29
29
|
schema: [],
|
@@ -35,7 +35,7 @@ module.exports = {
|
|
35
35
|
},
|
36
36
|
|
37
37
|
create(context) {
|
38
|
-
const sourceCode = context.
|
38
|
+
const sourceCode = context.sourceCode;
|
39
39
|
let scopeInfo = null;
|
40
40
|
|
41
41
|
/**
|
@@ -19,7 +19,7 @@ module.exports = {
|
|
19
19
|
docs: {
|
20
20
|
description: "Disallow unnecessary parentheses",
|
21
21
|
recommended: false,
|
22
|
-
url: "https://eslint.org/docs/rules/no-extra-parens"
|
22
|
+
url: "https://eslint.org/docs/latest/rules/no-extra-parens"
|
23
23
|
},
|
24
24
|
|
25
25
|
fixable: "code",
|
@@ -70,7 +70,7 @@ module.exports = {
|
|
70
70
|
},
|
71
71
|
|
72
72
|
create(context) {
|
73
|
-
const sourceCode = context.
|
73
|
+
const sourceCode = context.sourceCode;
|
74
74
|
|
75
75
|
const tokensToIgnore = new WeakSet();
|
76
76
|
const precedence = astUtils.getPrecedence;
|
@@ -24,7 +24,7 @@ module.exports = {
|
|
24
24
|
docs: {
|
25
25
|
description: "Disallow unnecessary semicolons",
|
26
26
|
recommended: true,
|
27
|
-
url: "https://eslint.org/docs/rules/no-extra-semi"
|
27
|
+
url: "https://eslint.org/docs/latest/rules/no-extra-semi"
|
28
28
|
},
|
29
29
|
|
30
30
|
fixable: "code",
|
@@ -36,7 +36,7 @@ module.exports = {
|
|
36
36
|
},
|
37
37
|
|
38
38
|
create(context) {
|
39
|
-
const sourceCode = context.
|
39
|
+
const sourceCode = context.sourceCode;
|
40
40
|
|
41
41
|
/**
|
42
42
|
* Reports an unnecessary semicolon error.
|
@@ -54,7 +54,7 @@ module.exports = {
|
|
54
54
|
* tokens to avoid conflicting with semi.
|
55
55
|
* https://github.com/eslint/eslint/issues/7928
|
56
56
|
*/
|
57
|
-
return new FixTracker(fixer, context.
|
57
|
+
return new FixTracker(fixer, context.sourceCode)
|
58
58
|
.retainSurroundingTokens(nodeOrToken)
|
59
59
|
.remove(nodeOrToken);
|
60
60
|
}
|
@@ -35,7 +35,7 @@ function isFallThroughComment(comment, fallthroughCommentPattern) {
|
|
35
35
|
* @returns {boolean} `true` if the case has a valid fallthrough comment.
|
36
36
|
*/
|
37
37
|
function hasFallthroughComment(caseWhichFallsThrough, subsequentCase, context, fallthroughCommentPattern) {
|
38
|
-
const sourceCode = context.
|
38
|
+
const sourceCode = context.sourceCode;
|
39
39
|
|
40
40
|
if (caseWhichFallsThrough.consequent.length === 1 && caseWhichFallsThrough.consequent[0].type === "BlockStatement") {
|
41
41
|
const trailingCloseBrace = sourceCode.getLastToken(caseWhichFallsThrough.consequent[0]);
|
@@ -82,7 +82,7 @@ module.exports = {
|
|
82
82
|
docs: {
|
83
83
|
description: "Disallow fallthrough of `case` statements",
|
84
84
|
recommended: true,
|
85
|
-
url: "https://eslint.org/docs/rules/no-fallthrough"
|
85
|
+
url: "https://eslint.org/docs/latest/rules/no-fallthrough"
|
86
86
|
},
|
87
87
|
|
88
88
|
schema: [
|
@@ -110,7 +110,7 @@ module.exports = {
|
|
110
110
|
create(context) {
|
111
111
|
const options = context.options[0] || {};
|
112
112
|
let currentCodePath = null;
|
113
|
-
const sourceCode = context.
|
113
|
+
const sourceCode = context.sourceCode;
|
114
114
|
const allowEmptyCase = options.allowEmptyCase || false;
|
115
115
|
|
116
116
|
/*
|
@@ -23,7 +23,7 @@ module.exports = {
|
|
23
23
|
docs: {
|
24
24
|
description: "Disallow leading or trailing decimal points in numeric literals",
|
25
25
|
recommended: false,
|
26
|
-
url: "https://eslint.org/docs/rules/no-floating-decimal"
|
26
|
+
url: "https://eslint.org/docs/latest/rules/no-floating-decimal"
|
27
27
|
},
|
28
28
|
|
29
29
|
schema: [],
|
@@ -35,7 +35,7 @@ module.exports = {
|
|
35
35
|
},
|
36
36
|
|
37
37
|
create(context) {
|
38
|
-
const sourceCode = context.
|
38
|
+
const sourceCode = context.sourceCode;
|
39
39
|
|
40
40
|
return {
|
41
41
|
Literal(node) {
|
@@ -19,7 +19,7 @@ module.exports = {
|
|
19
19
|
docs: {
|
20
20
|
description: "Disallow reassigning `function` declarations",
|
21
21
|
recommended: true,
|
22
|
-
url: "https://eslint.org/docs/rules/no-func-assign"
|
22
|
+
url: "https://eslint.org/docs/latest/rules/no-func-assign"
|
23
23
|
},
|
24
24
|
|
25
25
|
schema: [],
|
@@ -31,7 +31,7 @@ module.exports = {
|
|
31
31
|
|
32
32
|
create(context) {
|
33
33
|
|
34
|
-
const sourceCode = context.
|
34
|
+
const sourceCode = context.sourceCode;
|
35
35
|
|
36
36
|
/**
|
37
37
|
* Reports a reference if is non initializer and writable.
|
@@ -17,7 +17,7 @@ module.exports = {
|
|
17
17
|
docs: {
|
18
18
|
description: "Disallow assignments to native objects or read-only global variables",
|
19
19
|
recommended: true,
|
20
|
-
url: "https://eslint.org/docs/rules/no-global-assign"
|
20
|
+
url: "https://eslint.org/docs/latest/rules/no-global-assign"
|
21
21
|
},
|
22
22
|
|
23
23
|
schema: [
|
@@ -41,7 +41,7 @@ module.exports = {
|
|
41
41
|
|
42
42
|
create(context) {
|
43
43
|
const config = context.options[0];
|
44
|
-
const sourceCode = context.
|
44
|
+
const sourceCode = context.sourceCode;
|
45
45
|
const exceptions = (config && config.exceptions) || [];
|
46
46
|
|
47
47
|
/**
|
@@ -193,7 +193,7 @@ module.exports = {
|
|
193
193
|
docs: {
|
194
194
|
description: "Disallow shorthand type conversions",
|
195
195
|
recommended: false,
|
196
|
-
url: "https://eslint.org/docs/rules/no-implicit-coercion"
|
196
|
+
url: "https://eslint.org/docs/latest/rules/no-implicit-coercion"
|
197
197
|
},
|
198
198
|
|
199
199
|
fixable: "code",
|
@@ -235,7 +235,7 @@ module.exports = {
|
|
235
235
|
|
236
236
|
create(context) {
|
237
237
|
const options = parseOptions(context.options[0] || {});
|
238
|
-
const sourceCode = context.
|
238
|
+
const sourceCode = context.sourceCode;
|
239
239
|
|
240
240
|
/**
|
241
241
|
* Reports an error and autofixes the node
|
@@ -17,7 +17,7 @@ module.exports = {
|
|
17
17
|
docs: {
|
18
18
|
description: "Disallow declarations in the global scope",
|
19
19
|
recommended: false,
|
20
|
-
url: "https://eslint.org/docs/rules/no-implicit-globals"
|
20
|
+
url: "https://eslint.org/docs/latest/rules/no-implicit-globals"
|
21
21
|
},
|
22
22
|
|
23
23
|
schema: [{
|
@@ -43,7 +43,7 @@ module.exports = {
|
|
43
43
|
create(context) {
|
44
44
|
|
45
45
|
const checkLexicalBindings = context.options[0] && context.options[0].lexicalBindings === true;
|
46
|
-
const sourceCode = context.
|
46
|
+
const sourceCode = context.sourceCode;
|
47
47
|
|
48
48
|
/**
|
49
49
|
* Reports the node.
|
@@ -24,7 +24,7 @@ module.exports = {
|
|
24
24
|
docs: {
|
25
25
|
description: "Disallow the use of `eval()`-like methods",
|
26
26
|
recommended: false,
|
27
|
-
url: "https://eslint.org/docs/rules/no-implied-eval"
|
27
|
+
url: "https://eslint.org/docs/latest/rules/no-implied-eval"
|
28
28
|
},
|
29
29
|
|
30
30
|
schema: [],
|
@@ -37,7 +37,7 @@ module.exports = {
|
|
37
37
|
create(context) {
|
38
38
|
const GLOBAL_CANDIDATES = Object.freeze(["global", "window", "globalThis"]);
|
39
39
|
const EVAL_LIKE_FUNC_PATTERN = /^(?:set(?:Interval|Timeout)|execScript)$/u;
|
40
|
-
const sourceCode = context.
|
40
|
+
const sourceCode = context.sourceCode;
|
41
41
|
|
42
42
|
/**
|
43
43
|
* Checks whether a node is evaluated as a string or not.
|
@@ -182,7 +182,7 @@ module.exports = {
|
|
182
182
|
docs: {
|
183
183
|
description: "Disallow assigning to imported bindings",
|
184
184
|
recommended: true,
|
185
|
-
url: "https://eslint.org/docs/rules/no-import-assign"
|
185
|
+
url: "https://eslint.org/docs/latest/rules/no-import-assign"
|
186
186
|
},
|
187
187
|
|
188
188
|
schema: [],
|
@@ -194,7 +194,7 @@ module.exports = {
|
|
194
194
|
},
|
195
195
|
|
196
196
|
create(context) {
|
197
|
-
const sourceCode = context.
|
197
|
+
const sourceCode = context.sourceCode;
|
198
198
|
|
199
199
|
return {
|
200
200
|
ImportDeclaration(node) {
|
@@ -18,7 +18,7 @@ module.exports = {
|
|
18
18
|
docs: {
|
19
19
|
description: "Disallow inline comments after code",
|
20
20
|
recommended: false,
|
21
|
-
url: "https://eslint.org/docs/rules/no-inline-comments"
|
21
|
+
url: "https://eslint.org/docs/latest/rules/no-inline-comments"
|
22
22
|
},
|
23
23
|
|
24
24
|
schema: [
|
@@ -39,7 +39,7 @@ module.exports = {
|
|
39
39
|
},
|
40
40
|
|
41
41
|
create(context) {
|
42
|
-
const sourceCode = context.
|
42
|
+
const sourceCode = context.sourceCode;
|
43
43
|
const options = context.options[0];
|
44
44
|
let customIgnoreRegExp;
|
45
45
|
|