diff --git a/.eslintrc.js b/.eslintrc.js index 4d2673c632c2..c4eae75db4a6 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -15,6 +15,7 @@ module.exports = { }, extends: [ 'eslint:recommended', + 'plugin:eslint-plugin/recommended', 'plugin:@typescript-eslint/recommended', 'plugin:@typescript-eslint/recommended-requiring-type-checking', ], @@ -194,6 +195,7 @@ module.exports = { '@typescript-eslint/no-unsafe-call': 'off', '@typescript-eslint/no-unsafe-member-access': 'off', '@typescript-eslint/no-unsafe-return': 'off', + 'eslint-plugin/consistent-output': 'off', 'eslint-plugin/no-identical-tests': 'error', 'jest/no-disabled-tests': 'warn', 'jest/no-focused-tests': 'error', @@ -243,6 +245,7 @@ module.exports = { 'packages/eslint-plugin/src/rules/**/*.ts', ], rules: { + 'eslint-plugin/require-meta-schema': 'off', // TODO: allow variable // specifically for rules - default exports makes the tooling easier 'import/no-default-export': 'off', }, diff --git a/packages/eslint-plugin/src/rules/no-duplicate-enum-values.ts b/packages/eslint-plugin/src/rules/no-duplicate-enum-values.ts index dcd0f6be36fa..814da92664e5 100644 --- a/packages/eslint-plugin/src/rules/no-duplicate-enum-values.ts +++ b/packages/eslint-plugin/src/rules/no-duplicate-enum-values.ts @@ -9,7 +9,7 @@ export default util.createRule({ description: 'Disallow duplicate enum member values', recommended: 'strict', }, - hasSuggestions: true, + hasSuggestions: false, messages: { duplicateValue: 'Duplicate enum member value {{value}}.', }, diff --git a/packages/eslint-plugin/src/rules/no-useless-empty-export.ts b/packages/eslint-plugin/src/rules/no-useless-empty-export.ts index c06c47b8f8e3..258c049e68df 100644 --- a/packages/eslint-plugin/src/rules/no-useless-empty-export.ts +++ b/packages/eslint-plugin/src/rules/no-useless-empty-export.ts @@ -31,7 +31,7 @@ export default util.createRule({ suggestion: true, }, fixable: 'code', - hasSuggestions: true, + hasSuggestions: false, messages: { uselessExport: 'Empty export does nothing and can be removed.', }, diff --git a/packages/eslint-plugin/src/rules/padding-line-between-statements.ts b/packages/eslint-plugin/src/rules/padding-line-between-statements.ts index e9d62632c820..938ba9524aa3 100644 --- a/packages/eslint-plugin/src/rules/padding-line-between-statements.ts +++ b/packages/eslint-plugin/src/rules/padding-line-between-statements.ts @@ -592,7 +592,7 @@ export default util.createRule({ extendsBaseRule: true, }, fixable: 'whitespace', - hasSuggestions: true, + hasSuggestions: false, schema: { definitions: { paddingType: { diff --git a/packages/eslint-plugin/tests/rules/consistent-indexed-object-style.test.ts b/packages/eslint-plugin/tests/rules/consistent-indexed-object-style.test.ts index b02fd3dfa2db..5c59f92b92de 100644 --- a/packages/eslint-plugin/tests/rules/consistent-indexed-object-style.test.ts +++ b/packages/eslint-plugin/tests/rules/consistent-indexed-object-style.test.ts @@ -194,11 +194,7 @@ interface B extends A { [index: number]: unknown; } `, - output: ` -interface B extends A { - [index: number]: unknown; -} - `, + output: null, errors: [{ messageId: 'preferRecord', line: 2, column: 1 }], }, // Readonly interface with generic parameter diff --git a/packages/eslint-plugin/tests/rules/explicit-member-accessibility.test.ts b/packages/eslint-plugin/tests/rules/explicit-member-accessibility.test.ts index 2c3a5a86eb74..829e2987ad16 100644 --- a/packages/eslint-plugin/tests/rules/explicit-member-accessibility.test.ts +++ b/packages/eslint-plugin/tests/rules/explicit-member-accessibility.test.ts @@ -368,11 +368,7 @@ export class XXXX { line: 3, }, ], - output: ` -export class XXXX { - public constructor(readonly value: string) {} -} - `, + output: null, }, { filename: 'test.ts', @@ -383,11 +379,7 @@ export class WithParameterProperty { `, options: [{ accessibility: 'explicit' }], errors: [{ messageId: 'missingAccessibility' }], - output: ` -export class WithParameterProperty { - public constructor(readonly value: string) {} -} - `, + output: null, }, { filename: 'test.ts', @@ -406,11 +398,7 @@ export class XXXX { }, ], errors: [{ messageId: 'missingAccessibility' }], - output: ` -export class XXXX { - public constructor(readonly samosa: string) {} -} - `, + output: null, }, { filename: 'test.ts', @@ -426,11 +414,7 @@ class Test { }, ], errors: [{ messageId: 'missingAccessibility' }], - output: ` -class Test { - public constructor(readonly foo: string) {} -} - `, + output: null, }, { filename: 'test.ts', @@ -453,14 +437,7 @@ class Test { column: 3, }, ], - output: ` -class Test { - x: number; - public getX() { - return this.x; - } -} - `, + output: null, }, { filename: 'test.ts', @@ -483,14 +460,7 @@ class Test { column: 3, }, ], - output: ` -class Test { - private x: number; - getX() { - return this.x; - } -} - `, + output: null, }, { filename: 'test.ts', @@ -522,14 +492,7 @@ class Test { column: 3, }, ], - output: ` -class Test { - x?: number; - getX?() { - return this.x; - } -} - `, + output: null, }, { filename: 'test.ts', @@ -658,20 +621,7 @@ class Test { }, ], options: [{ overrides: { constructors: 'no-public' } }], - output: ` -class Test { - private x: number; - constructor(x: number) { - this.x = x; - } - get internalValue() { - return this.x; - } - set internalValue(value: number) { - this.x = value; - } -} - `, + output: null, }, { filename: 'test.ts', @@ -706,20 +656,7 @@ class Test { column: 3, }, ], - output: ` -class Test { - private x: number; - constructor(x: number) { - this.x = x; - } - get internalValue() { - return this.x; - } - set internalValue(value: number) { - this.x = value; - } -} - `, + output: null, }, { filename: 'test.ts', @@ -743,14 +680,7 @@ class Test { overrides: { parameterProperties: 'no-public' }, }, ], - output: ` -class Test { - constructor(public x: number) {} - public foo(): string { - return 'foo'; - } -} - `, + output: null, }, { filename: 'test.ts', @@ -766,11 +696,7 @@ class Test { column: 3, }, ], - output: ` -class Test { - constructor(public x: number) {} -} - `, + output: null, }, { filename: 'test.ts', @@ -818,11 +744,7 @@ class Test { column: 3, }, ], - output: ` -class Test { - x = 2; -} - `, + output: null, }, { filename: 'test.ts', @@ -866,11 +788,7 @@ class Test { column: 3, }, ], - output: ` -class Test { - constructor(public ...x: any[]) {} -} - `, + output: null, }, { filename: 'test.ts', diff --git a/packages/eslint-plugin/tests/rules/no-dynamic-delete.test.ts b/packages/eslint-plugin/tests/rules/no-dynamic-delete.test.ts index 798971e90f18..782bc3fec577 100644 --- a/packages/eslint-plugin/tests/rules/no-dynamic-delete.test.ts +++ b/packages/eslint-plugin/tests/rules/no-dynamic-delete.test.ts @@ -68,10 +68,7 @@ const container: { [i: string]: 0 } = {}; delete container['aa' + 'b']; `, errors: [{ messageId: 'dynamicDelete' }], - output: ` -const container: { [i: string]: 0 } = {}; -delete container['aa' + 'b']; - `, + output: null, }, { code: ` @@ -90,10 +87,7 @@ const container: { [i: string]: 0 } = {}; delete container[-Infinity]; `, errors: [{ messageId: 'dynamicDelete' }], - output: ` -const container: { [i: string]: 0 } = {}; -delete container[-Infinity]; - `, + output: null, }, { code: ` @@ -101,10 +95,7 @@ const container: { [i: string]: 0 } = {}; delete container[+Infinity]; `, errors: [{ messageId: 'dynamicDelete' }], - output: ` -const container: { [i: string]: 0 } = {}; -delete container[+Infinity]; - `, + output: null, }, { code: ` @@ -112,10 +103,7 @@ const container: { [i: string]: 0 } = {}; delete container[NaN]; `, errors: [{ messageId: 'dynamicDelete' }], - output: ` -const container: { [i: string]: 0 } = {}; -delete container[NaN]; - `, + output: null, }, { code: ` @@ -135,11 +123,7 @@ const name = 'name'; delete container[name]; `, errors: [{ messageId: 'dynamicDelete' }], - output: ` -const container: { [i: string]: 0 } = {}; -const name = 'name'; -delete container[name]; - `, + output: null, }, { code: ` @@ -147,11 +131,7 @@ const container: { [i: string]: 0 } = {}; const getName = () => 'aaa'; delete container[getName()]; `, - output: ` -const container: { [i: string]: 0 } = {}; -const getName = () => 'aaa'; -delete container[getName()]; - `, + output: null, errors: [{ messageId: 'dynamicDelete' }], }, { @@ -160,11 +140,7 @@ const container: { [i: string]: 0 } = {}; const name = { foo: { bar: 'bar' } }; delete container[name.foo.bar]; `, - output: ` -const container: { [i: string]: 0 } = {}; -const name = { foo: { bar: 'bar' } }; -delete container[name.foo.bar]; - `, + output: null, errors: [{ messageId: 'dynamicDelete' }], }, ], diff --git a/packages/eslint-plugin/tests/rules/no-empty-interface.test.ts b/packages/eslint-plugin/tests/rules/no-empty-interface.test.ts index f974af09c186..dc4ea909ea73 100644 --- a/packages/eslint-plugin/tests/rules/no-empty-interface.test.ts +++ b/packages/eslint-plugin/tests/rules/no-empty-interface.test.ts @@ -184,12 +184,7 @@ declare module FooBar { }, ], // output matches input because a suggestion was made - output: ` -declare module FooBar { - type Baz = typeof baz; - export interface Bar extends Baz {} -} - `.trimRight(), + output: null, }, ], }); diff --git a/packages/eslint-plugin/tests/rules/prefer-as-const.test.ts b/packages/eslint-plugin/tests/rules/prefer-as-const.test.ts index d5c15474f698..764301f4f68e 100644 --- a/packages/eslint-plugin/tests/rules/prefer-as-const.test.ts +++ b/packages/eslint-plugin/tests/rules/prefer-as-const.test.ts @@ -62,7 +62,7 @@ ruleTester.run('prefer-as-const', rule, { }, { code: "let []: 'bar' = 'bar';", - output: "let []: 'bar' = 'bar';", + output: null, errors: [ { messageId: 'variableConstAssertion', @@ -73,7 +73,7 @@ ruleTester.run('prefer-as-const', rule, { }, { code: "let foo: 'bar' = 'bar';", - output: "let foo: 'bar' = 'bar';", + output: null, errors: [ { messageId: 'variableConstAssertion', @@ -90,7 +90,7 @@ ruleTester.run('prefer-as-const', rule, { }, { code: 'let foo: 2 = 2;', - output: 'let foo: 2 = 2;', + output: null, errors: [ { messageId: 'variableConstAssertion', diff --git a/packages/eslint-plugin/tests/rules/prefer-function-type.test.ts b/packages/eslint-plugin/tests/rules/prefer-function-type.test.ts index 50fb8370b187..452bcadffc89 100644 --- a/packages/eslint-plugin/tests/rules/prefer-function-type.test.ts +++ b/packages/eslint-plugin/tests/rules/prefer-function-type.test.ts @@ -82,12 +82,7 @@ export default interface Foo { }, }, ], - output: ` -export default interface Foo { - /** comment */ - (): string; -} - `, + output: null, }, { code: ` pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy