@typescript-eslint/eslint-plugin 8.70.1-alpha.20 → 8.70.1-alpha.22
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/index.d.ts
CHANGED
|
@@ -994,7 +994,7 @@ declare const _default: {
|
|
|
994
994
|
'no-useless-constructor': import("@typescript-eslint/utils/ts-eslint").RuleModule<"noUselessConstructor" | "removeConstructor", [], import("../rules").ESLintPluginDocs, import("@typescript-eslint/utils/ts-eslint").RuleListener> & {
|
|
995
995
|
name: string;
|
|
996
996
|
};
|
|
997
|
-
'no-useless-default-assignment': import("@typescript-eslint/utils/ts-eslint").RuleModule<"noStrictNullCheck" | "preferOptionalSyntax" | "uselessDefaultAssignment" | "uselessUndefined", [{
|
|
997
|
+
'no-useless-default-assignment': import("@typescript-eslint/utils/ts-eslint").RuleModule<"noStrictNullCheck" | "preferOptionalSyntax" | "removeDefaultAssignment" | "useOptionalSyntax" | "uselessDefaultAssignment" | "uselessUndefined", [{
|
|
998
998
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
|
|
999
999
|
}], import("../rules").ESLintPluginDocs, import("@typescript-eslint/utils/ts-eslint").RuleListener> & {
|
|
1000
1000
|
name: string;
|
package/dist/raw-plugin.d.ts
CHANGED
|
@@ -1017,7 +1017,7 @@ declare const _default: {
|
|
|
1017
1017
|
'no-useless-constructor': TSESLint.RuleModule<"noUselessConstructor" | "removeConstructor", [], import("../rules").ESLintPluginDocs, TSESLint.RuleListener> & {
|
|
1018
1018
|
name: string;
|
|
1019
1019
|
};
|
|
1020
|
-
'no-useless-default-assignment': TSESLint.RuleModule<"noStrictNullCheck" | "preferOptionalSyntax" | "uselessDefaultAssignment" | "uselessUndefined", [{
|
|
1020
|
+
'no-useless-default-assignment': TSESLint.RuleModule<"noStrictNullCheck" | "preferOptionalSyntax" | "removeDefaultAssignment" | "useOptionalSyntax" | "uselessDefaultAssignment" | "uselessUndefined", [{
|
|
1021
1021
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
|
|
1022
1022
|
}], import("../rules").ESLintPluginDocs, TSESLint.RuleListener> & {
|
|
1023
1023
|
name: string;
|
package/dist/rules/index.d.ts
CHANGED
|
@@ -315,7 +315,7 @@ declare const rules: {
|
|
|
315
315
|
'no-useless-constructor': import("@typescript-eslint/utils/ts-eslint").RuleModule<"noUselessConstructor" | "removeConstructor", [], import("../../rules").ESLintPluginDocs, import("@typescript-eslint/utils/ts-eslint").RuleListener> & {
|
|
316
316
|
name: string;
|
|
317
317
|
};
|
|
318
|
-
'no-useless-default-assignment': import("@typescript-eslint/utils/ts-eslint").RuleModule<"noStrictNullCheck" | "preferOptionalSyntax" | "uselessDefaultAssignment" | "uselessUndefined", [{
|
|
318
|
+
'no-useless-default-assignment': import("@typescript-eslint/utils/ts-eslint").RuleModule<"noStrictNullCheck" | "preferOptionalSyntax" | "removeDefaultAssignment" | "useOptionalSyntax" | "uselessDefaultAssignment" | "uselessUndefined", [{
|
|
319
319
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
|
|
320
320
|
}], import("../../rules").ESLintPluginDocs, import("@typescript-eslint/utils/ts-eslint").RuleListener> & {
|
|
321
321
|
name: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { TSESLint } from '@typescript-eslint/utils';
|
|
2
|
-
type MessageId = 'noStrictNullCheck' | 'preferOptionalSyntax' | 'uselessDefaultAssignment' | 'uselessUndefined';
|
|
2
|
+
type MessageId = 'noStrictNullCheck' | 'preferOptionalSyntax' | 'removeDefaultAssignment' | 'uselessDefaultAssignment' | 'uselessUndefined' | 'useOptionalSyntax';
|
|
3
3
|
type Options = [
|
|
4
4
|
{
|
|
5
5
|
allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
|
|
@@ -46,12 +46,14 @@ exports.default = (0, util_1.createRule)({
|
|
|
46
46
|
recommended: 'strict',
|
|
47
47
|
requiresTypeChecking: true,
|
|
48
48
|
},
|
|
49
|
-
|
|
49
|
+
hasSuggestions: true,
|
|
50
50
|
messages: {
|
|
51
51
|
noStrictNullCheck: 'This rule requires the `strictNullChecks` compiler option to be turned on to function correctly.',
|
|
52
|
-
preferOptionalSyntax: 'Using `= undefined` to make a parameter optional adds unnecessary runtime logic.
|
|
52
|
+
preferOptionalSyntax: 'Using `= undefined` to make a parameter optional adds unnecessary runtime logic.',
|
|
53
|
+
removeDefaultAssignment: 'Remove the default value.',
|
|
53
54
|
uselessDefaultAssignment: 'Default value is useless because the {{ type }} is not optional.',
|
|
54
55
|
uselessUndefined: 'Default value is useless because it is undefined. Optional {{ type }}s are already undefined by default.',
|
|
56
|
+
useOptionalSyntax: 'Use the `?` optional syntax instead.',
|
|
55
57
|
},
|
|
56
58
|
schema: [
|
|
57
59
|
{
|
|
@@ -286,7 +288,7 @@ exports.default = (0, util_1.createRule)({
|
|
|
286
288
|
node: node.right,
|
|
287
289
|
messageId: 'uselessDefaultAssignment',
|
|
288
290
|
data: { type },
|
|
289
|
-
|
|
291
|
+
suggest: [removeDefaultSuggestion(node)],
|
|
290
292
|
});
|
|
291
293
|
}
|
|
292
294
|
function reportUselessUndefined(node, type) {
|
|
@@ -294,13 +296,19 @@ exports.default = (0, util_1.createRule)({
|
|
|
294
296
|
node: node.right,
|
|
295
297
|
messageId: 'uselessUndefined',
|
|
296
298
|
data: { type },
|
|
297
|
-
|
|
299
|
+
suggest: [removeDefaultSuggestion(node)],
|
|
298
300
|
});
|
|
299
301
|
}
|
|
300
302
|
function reportPreferOptionalSyntax(node) {
|
|
301
303
|
context.report({
|
|
302
304
|
node: node.right,
|
|
303
305
|
messageId: 'preferOptionalSyntax',
|
|
306
|
+
suggest: [useOptionalSyntaxSuggestion(node)],
|
|
307
|
+
});
|
|
308
|
+
}
|
|
309
|
+
function useOptionalSyntaxSuggestion(node) {
|
|
310
|
+
return {
|
|
311
|
+
messageId: 'useOptionalSyntax',
|
|
304
312
|
*fix(fixer) {
|
|
305
313
|
yield removeDefault(fixer, node);
|
|
306
314
|
const { left } = node;
|
|
@@ -308,7 +316,13 @@ exports.default = (0, util_1.createRule)({
|
|
|
308
316
|
yield fixer.insertTextAfterRange([left.range[0], left.range[0] + left.name.length], '?');
|
|
309
317
|
}
|
|
310
318
|
},
|
|
311
|
-
}
|
|
319
|
+
};
|
|
320
|
+
}
|
|
321
|
+
function removeDefaultSuggestion(node) {
|
|
322
|
+
return {
|
|
323
|
+
messageId: 'removeDefaultAssignment',
|
|
324
|
+
fix: fixer => removeDefault(fixer, node),
|
|
325
|
+
};
|
|
312
326
|
}
|
|
313
327
|
function removeDefault(fixer, node) {
|
|
314
328
|
const start = node.left.range[1];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@typescript-eslint/eslint-plugin",
|
|
3
|
-
"version": "8.70.1-alpha.
|
|
3
|
+
"version": "8.70.1-alpha.22",
|
|
4
4
|
"description": "TypeScript plugin for ESLint",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
@@ -47,10 +47,10 @@
|
|
|
47
47
|
],
|
|
48
48
|
"dependencies": {
|
|
49
49
|
"@eslint-community/regexpp": "^4.12.2",
|
|
50
|
-
"@typescript-eslint/scope-manager": "8.70.1-alpha.
|
|
51
|
-
"@typescript-eslint/type-utils": "8.70.1-alpha.
|
|
52
|
-
"@typescript-eslint/utils": "8.70.1-alpha.
|
|
53
|
-
"@typescript-eslint/visitor-keys": "8.70.1-alpha.
|
|
50
|
+
"@typescript-eslint/scope-manager": "8.70.1-alpha.22",
|
|
51
|
+
"@typescript-eslint/type-utils": "8.70.1-alpha.22",
|
|
52
|
+
"@typescript-eslint/utils": "8.70.1-alpha.22",
|
|
53
|
+
"@typescript-eslint/visitor-keys": "8.70.1-alpha.22",
|
|
54
54
|
"ignore": "^7.0.5",
|
|
55
55
|
"natural-compare": "^1.4.0",
|
|
56
56
|
"ts-api-utils": "^2.5.0"
|
|
@@ -60,8 +60,8 @@
|
|
|
60
60
|
"@types/mdast": "^4.0.4",
|
|
61
61
|
"@types/natural-compare": "^1.4.3",
|
|
62
62
|
"@types/react": "^18.3.21",
|
|
63
|
-
"@typescript-eslint/rule-schema-to-typescript-types": "8.70.1-alpha.
|
|
64
|
-
"@typescript-eslint/rule-tester": "8.70.1-alpha.
|
|
63
|
+
"@typescript-eslint/rule-schema-to-typescript-types": "8.70.1-alpha.22",
|
|
64
|
+
"@typescript-eslint/rule-tester": "8.70.1-alpha.22",
|
|
65
65
|
"@typescript/native": "npm:typescript@^7.0.2",
|
|
66
66
|
"@vitest/coverage-v8": "^4.0.18",
|
|
67
67
|
"ajv": "^6.12.6",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"vitest": "^4.0.18"
|
|
82
82
|
},
|
|
83
83
|
"peerDependencies": {
|
|
84
|
-
"@typescript-eslint/parser": "^8.70.1-alpha.
|
|
84
|
+
"@typescript-eslint/parser": "^8.70.1-alpha.22",
|
|
85
85
|
"eslint": "^8.57.0 || ^9.0.0 || ^10.0.0",
|
|
86
86
|
"typescript": ">=4.8.4 <6.1.0"
|
|
87
87
|
},
|