@typescript-eslint/eslint-plugin 6.0.1-alpha.1 → 6.0.1-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -107,7 +107,9 @@ exports.default = util.createRule({
|
|
|
107
107
|
'always-multiline': forceCommaIfMultiline,
|
|
108
108
|
'only-multiline': allowCommaIfMultiline,
|
|
109
109
|
never: forbidComma,
|
|
110
|
-
|
|
110
|
+
// https://github.com/typescript-eslint/typescript-eslint/issues/7220
|
|
111
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type, @typescript-eslint/no-empty-function
|
|
112
|
+
ignore: () => { },
|
|
111
113
|
};
|
|
112
114
|
function last(nodes) {
|
|
113
115
|
return nodes[nodes.length - 1] ?? null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comma-dangle.js","sourceRoot":"","sources":["../../src/rules/comma-dangle.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AACA,oDAA0D;AAE1D,8CAAgC;AAChC,iEAA8D;AAE9D,MAAM,QAAQ,GAAG,IAAA,qCAAiB,EAAC,cAAc,CAAC,CAAC;AAUnD,MAAM,mBAAmB,GAAG;IAC1B,kBAAkB;IAClB,QAAQ;IACR,OAAO;IACP,gBAAgB;CACjB,CAAC;AAEF,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAErC,SAAS,gBAAgB,CAAC,OAAe;IACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC/B,OAAO;YACL,KAAK,EAAE,OAAO;YACd,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,OAAO;SAChB,CAAC;KACH;IACD,OAAO;QACL,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,oBAAoB;QAC5C,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,oBAAoB;QAClD,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,oBAAoB;KAC/C,CAAC;AACJ,CAAC;AAED,kBAAe,IAAI,CAAC,UAAU,CAAsB;IAClD,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE;QACJ,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE;YACJ,WAAW,EAAE,qCAAqC;YAClD,eAAe,EAAE,IAAI;SACtB;QACD,MAAM,EAAE;YACN,KAAK,EAAE;gBACL,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,mBAAmB;iBAC1B;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,GAAG,mBAAmB,EAAE,QAAQ,CAAC;iBACzC;aACF;YACD,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL;oBACE,KAAK,EAAE;wBACL;4BACE,IAAI,EAAE,eAAe;yBACtB;wBACD;4BACE,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE;gCACV,MAAM,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;gCAC3C,OAAO,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;gCAC5C,OAAO,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;gCAC5C,OAAO,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;gCAC5C,SAAS,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;gCAC9C,KAAK,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;gCAC1C,QAAQ,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;gCAC7C,MAAM,EAAE,EAAE,IAAI,EAAE,yBAAyB,EAAE;6BAC5C;4BACD,oBAAoB,EAAE,KAAK;yBAC5B;qBACF;iBACF;aACF;YACD,eAAe,EAAE,KAAK;SACvB;QACD,OAAO,EAAE,MAAM;QACf,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,cAAc;QAC5C,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ;KACjC;IACD,cAAc,EAAE,CAAC,OAAO,CAAC;IACzB,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC;QACvB,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3C,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAEpD,MAAM,SAAS,GAAG;YAChB,MAAM,EAAE,UAAU;YAClB,kBAAkB,EAAE,qBAAqB;YACzC,gBAAgB,EAAE,qBAAqB;YACvC,KAAK,EAAE,WAAW;YAClB,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"comma-dangle.js","sourceRoot":"","sources":["../../src/rules/comma-dangle.ts"],"names":[],"mappings":"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"}
|
package/docs/rules/camelcase.md
CHANGED
|
@@ -5,6 +5,6 @@ This rule has been deprecated in favour of the [`naming-convention`](./naming-co
|
|
|
5
5
|
:::
|
|
6
6
|
|
|
7
7
|
<!--
|
|
8
|
-
This doc file has been left on purpose because `camelcase` is a core
|
|
8
|
+
This doc file has been left on purpose because `camelcase` is a core ESLint rule.
|
|
9
9
|
This exists to help direct people to the replacement rule.
|
|
10
10
|
-->
|
|
@@ -7,7 +7,7 @@ description: 'Require explicit accessibility modifiers on class properties and m
|
|
|
7
7
|
> See **https://typescript-eslint.io/rules/explicit-member-accessibility** for documentation.
|
|
8
8
|
|
|
9
9
|
TypeScript allows placing explicit `public`, `protected`, and `private` accessibility modifiers in front of class members.
|
|
10
|
-
The modifiers exist solely in the type system and just
|
|
10
|
+
The modifiers exist solely in the type system and just serve to describe who is allowed to access those members.
|
|
11
11
|
|
|
12
12
|
Leaving off accessibility modifiers makes for less code to read and write.
|
|
13
13
|
Members are `public` by default.
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@typescript-eslint/eslint-plugin",
|
|
3
|
-
"version": "6.0.1-alpha.
|
|
3
|
+
"version": "6.0.1-alpha.10+d36816447",
|
|
4
4
|
"description": "TypeScript plugin for ESLint",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist",
|
|
7
7
|
"docs",
|
|
8
8
|
"index.d.ts",
|
|
9
|
+
"rules.d.ts",
|
|
9
10
|
"package.json",
|
|
10
11
|
"README.md",
|
|
11
12
|
"LICENSE"
|
|
@@ -55,18 +56,17 @@
|
|
|
55
56
|
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
56
57
|
},
|
|
57
58
|
"dependencies": {
|
|
58
|
-
"@eslint-community/regexpp": "^4.5.
|
|
59
|
-
"@typescript-eslint/scope-manager": "6.0.1-alpha.
|
|
60
|
-
"@typescript-eslint/type-utils": "6.0.1-alpha.
|
|
61
|
-
"@typescript-eslint/utils": "6.0.1-alpha.
|
|
62
|
-
"@typescript-eslint/visitor-keys": "6.0.1-alpha.
|
|
59
|
+
"@eslint-community/regexpp": "^4.5.1",
|
|
60
|
+
"@typescript-eslint/scope-manager": "6.0.1-alpha.10+d36816447",
|
|
61
|
+
"@typescript-eslint/type-utils": "6.0.1-alpha.10+d36816447",
|
|
62
|
+
"@typescript-eslint/utils": "6.0.1-alpha.10+d36816447",
|
|
63
|
+
"@typescript-eslint/visitor-keys": "6.0.1-alpha.10+d36816447",
|
|
63
64
|
"debug": "^4.3.4",
|
|
64
|
-
"grapheme-splitter": "^1.0.4",
|
|
65
65
|
"graphemer": "^1.4.0",
|
|
66
66
|
"ignore": "^5.2.4",
|
|
67
67
|
"natural-compare": "^1.4.0",
|
|
68
68
|
"natural-compare-lite": "^1.4.0",
|
|
69
|
-
"semver": "^7.5.
|
|
69
|
+
"semver": "^7.5.4",
|
|
70
70
|
"ts-api-utils": "^1.0.1"
|
|
71
71
|
},
|
|
72
72
|
"devDependencies": {
|
|
@@ -75,14 +75,14 @@
|
|
|
75
75
|
"@types/natural-compare": "*",
|
|
76
76
|
"@types/prettier": "*",
|
|
77
77
|
"@typescript-eslint/rule-schema-to-typescript-types": "6.0.0",
|
|
78
|
-
"@typescript-eslint/rule-tester": "6.0.1-alpha.
|
|
78
|
+
"@typescript-eslint/rule-tester": "6.0.1-alpha.10+d36816447",
|
|
79
79
|
"ajv": "^6.12.6",
|
|
80
|
-
"chalk": "^5.0
|
|
80
|
+
"chalk": "^5.3.0",
|
|
81
81
|
"cross-fetch": "*",
|
|
82
82
|
"jest-specific-snapshot": "*",
|
|
83
83
|
"json-schema": "*",
|
|
84
84
|
"markdown-table": "^3.0.3",
|
|
85
|
-
"marked": "^
|
|
85
|
+
"marked": "^5.1.1",
|
|
86
86
|
"prettier": "*",
|
|
87
87
|
"title-case": "^3.0.3",
|
|
88
88
|
"typescript": "*"
|
|
@@ -100,5 +100,5 @@
|
|
|
100
100
|
"type": "opencollective",
|
|
101
101
|
"url": "https://opencollective.com/typescript-eslint"
|
|
102
102
|
},
|
|
103
|
-
"gitHead": "
|
|
103
|
+
"gitHead": "d368164478a8b141ad6b1c4ea5088fdc639ccafe"
|
|
104
104
|
}
|
package/rules.d.ts
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
We purposely don't generate types for our plugin because TL;DR:
|
|
3
|
+
1) there's no real reason that anyone should do a typed import of our rules,
|
|
4
|
+
2) it would require us to change our code so there aren't as many inferred types
|
|
5
|
+
|
|
6
|
+
This type declaration exists as a hacky way to add a type to the export for our
|
|
7
|
+
internal packages that require it.
|
|
8
|
+
|
|
9
|
+
*** Long reason ***
|
|
10
|
+
|
|
11
|
+
When you turn on declaration files, TS requires all types to be "fully resolvable"
|
|
12
|
+
without changes to the code.
|
|
13
|
+
All of our lint rules `export default createRule(...)`, which means they all
|
|
14
|
+
implicitly reference the `TSESLint.Rule` type for the export.
|
|
15
|
+
|
|
16
|
+
TS wants to transpile each rule file to this `.d.ts` file:
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
import type { TSESLint } from '@typescript-eslint/utils';
|
|
20
|
+
declare const _default: TSESLint.RuleModule<TMessageIds, TOptions, TSESLint.RuleListener>;
|
|
21
|
+
export default _default;
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Because we don't import `TSESLint` in most files, it means that TS would have to
|
|
25
|
+
insert a new import during the declaration emit to make this work.
|
|
26
|
+
However TS wants to avoid adding new imports to the file because a new module
|
|
27
|
+
could have type side-effects (like global augmentation) which could cause weird
|
|
28
|
+
type side-effects in the decl file that wouldn't exist in source TS file.
|
|
29
|
+
|
|
30
|
+
So TS errors on most of our rules with the following error:
|
|
31
|
+
```
|
|
32
|
+
The inferred type of 'default' cannot be named without a reference to
|
|
33
|
+
'../../../../node_modules/@typescript-eslint/utils/src/ts-eslint/Rule'.
|
|
34
|
+
This is likely not portable. A type annotation is necessary. ts(2742)
|
|
35
|
+
```
|
|
36
|
+
*/
|
|
37
|
+
|
|
38
|
+
import type { RuleModule } from '@typescript-eslint/utils/ts-eslint';
|
|
39
|
+
|
|
40
|
+
export interface TypeScriptESLintRules {
|
|
41
|
+
[ruleName: string]: RuleModule<string, unknown[]>;
|
|
42
|
+
}
|
|
43
|
+
declare const rules: TypeScriptESLintRules;
|
|
44
|
+
export = rules;
|