@html-eslint/eslint-plugin-react 0.56.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/LICENSE +21 -0
- package/README.md +11 -0
- package/lib/configs/index.js +14 -0
- package/lib/constants/node-types.js +176 -0
- package/lib/index.js +37 -0
- package/lib/rules/index.js +15 -0
- package/lib/rules/no-ineffective-attrs.js +67 -0
- package/lib/rules/no-invalid-attr-value.js +96 -0
- package/lib/rules/no-obsolete-attrs.js +55 -0
- package/lib/rules/no-obsolete-tags.js +54 -0
- package/lib/rules/use-baseline.js +92 -0
- package/lib/rules/utils/adapter.js +180 -0
- package/lib/types.js +1 -0
- package/lib/types.ts +401 -0
- package/package.json +55 -0
- package/types/configs/index.d.ts +2 -0
- package/types/configs/index.d.ts.map +1 -0
- package/types/constants/node-types.d.ts +171 -0
- package/types/constants/node-types.d.ts.map +1 -0
- package/types/index.d.ts +6 -0
- package/types/index.d.ts.map +1 -0
- package/types/rules/index.d.ts +22 -0
- package/types/rules/index.d.ts.map +1 -0
- package/types/rules/no-ineffective-attrs.d.ts +4 -0
- package/types/rules/no-ineffective-attrs.d.ts.map +1 -0
- package/types/rules/no-invalid-attr-value.d.ts +10 -0
- package/types/rules/no-invalid-attr-value.d.ts.map +1 -0
- package/types/rules/no-obsolete-attrs.d.ts +4 -0
- package/types/rules/no-obsolete-attrs.d.ts.map +1 -0
- package/types/rules/no-obsolete-tags.d.ts +10 -0
- package/types/rules/no-obsolete-tags.d.ts.map +1 -0
- package/types/rules/use-baseline.d.ts +10 -0
- package/types/rules/use-baseline.d.ts.map +1 -0
- package/types/rules/utils/adapter.d.ts +14 -0
- package/types/rules/utils/adapter.d.ts.map +1 -0
- package/types/types.d.ts +255 -0
- package/types/types.d.ts.map +1 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
export namespace AST_NODE_TYPES {
|
|
2
|
+
let AccessorProperty: "AccessorProperty";
|
|
3
|
+
let ArrayExpression: "ArrayExpression";
|
|
4
|
+
let ArrayPattern: "ArrayPattern";
|
|
5
|
+
let ArrowFunctionExpression: "ArrowFunctionExpression";
|
|
6
|
+
let AssignmentExpression: "AssignmentExpression";
|
|
7
|
+
let AssignmentPattern: "AssignmentPattern";
|
|
8
|
+
let AwaitExpression: "AwaitExpression";
|
|
9
|
+
let BinaryExpression: "BinaryExpression";
|
|
10
|
+
let BlockStatement: "BlockStatement";
|
|
11
|
+
let BreakStatement: "BreakStatement";
|
|
12
|
+
let CallExpression: "CallExpression";
|
|
13
|
+
let CatchClause: "CatchClause";
|
|
14
|
+
let ChainExpression: "ChainExpression";
|
|
15
|
+
let ClassBody: "ClassBody";
|
|
16
|
+
let ClassDeclaration: "ClassDeclaration";
|
|
17
|
+
let ClassExpression: "ClassExpression";
|
|
18
|
+
let ConditionalExpression: "ConditionalExpression";
|
|
19
|
+
let ContinueStatement: "ContinueStatement";
|
|
20
|
+
let DebuggerStatement: "DebuggerStatement";
|
|
21
|
+
let Decorator: "Decorator";
|
|
22
|
+
let DoWhileStatement: "DoWhileStatement";
|
|
23
|
+
let EmptyStatement: "EmptyStatement";
|
|
24
|
+
let ExportAllDeclaration: "ExportAllDeclaration";
|
|
25
|
+
let ExportDefaultDeclaration: "ExportDefaultDeclaration";
|
|
26
|
+
let ExportNamedDeclaration: "ExportNamedDeclaration";
|
|
27
|
+
let ExportSpecifier: "ExportSpecifier";
|
|
28
|
+
let ExpressionStatement: "ExpressionStatement";
|
|
29
|
+
let ForInStatement: "ForInStatement";
|
|
30
|
+
let ForOfStatement: "ForOfStatement";
|
|
31
|
+
let ForStatement: "ForStatement";
|
|
32
|
+
let FunctionDeclaration: "FunctionDeclaration";
|
|
33
|
+
let FunctionExpression: "FunctionExpression";
|
|
34
|
+
let Identifier: "Identifier";
|
|
35
|
+
let IfStatement: "IfStatement";
|
|
36
|
+
let ImportAttribute: "ImportAttribute";
|
|
37
|
+
let ImportDeclaration: "ImportDeclaration";
|
|
38
|
+
let ImportDefaultSpecifier: "ImportDefaultSpecifier";
|
|
39
|
+
let ImportExpression: "ImportExpression";
|
|
40
|
+
let ImportNamespaceSpecifier: "ImportNamespaceSpecifier";
|
|
41
|
+
let ImportSpecifier: "ImportSpecifier";
|
|
42
|
+
let JSXAttribute: "JSXAttribute";
|
|
43
|
+
let JSXClosingElement: "JSXClosingElement";
|
|
44
|
+
let JSXClosingFragment: "JSXClosingFragment";
|
|
45
|
+
let JSXElement: "JSXElement";
|
|
46
|
+
let JSXEmptyExpression: "JSXEmptyExpression";
|
|
47
|
+
let JSXExpressionContainer: "JSXExpressionContainer";
|
|
48
|
+
let JSXFragment: "JSXFragment";
|
|
49
|
+
let JSXIdentifier: "JSXIdentifier";
|
|
50
|
+
let JSXMemberExpression: "JSXMemberExpression";
|
|
51
|
+
let JSXNamespacedName: "JSXNamespacedName";
|
|
52
|
+
let JSXOpeningElement: "JSXOpeningElement";
|
|
53
|
+
let JSXOpeningFragment: "JSXOpeningFragment";
|
|
54
|
+
let JSXSpreadAttribute: "JSXSpreadAttribute";
|
|
55
|
+
let JSXSpreadChild: "JSXSpreadChild";
|
|
56
|
+
let JSXText: "JSXText";
|
|
57
|
+
let LabeledStatement: "LabeledStatement";
|
|
58
|
+
let Literal: "Literal";
|
|
59
|
+
let LogicalExpression: "LogicalExpression";
|
|
60
|
+
let MemberExpression: "MemberExpression";
|
|
61
|
+
let MetaProperty: "MetaProperty";
|
|
62
|
+
let MethodDefinition: "MethodDefinition";
|
|
63
|
+
let NewExpression: "NewExpression";
|
|
64
|
+
let ObjectExpression: "ObjectExpression";
|
|
65
|
+
let ObjectPattern: "ObjectPattern";
|
|
66
|
+
let PrivateIdentifier: "PrivateIdentifier";
|
|
67
|
+
let Program: "Program";
|
|
68
|
+
let Property: "Property";
|
|
69
|
+
let PropertyDefinition: "PropertyDefinition";
|
|
70
|
+
let RestElement: "RestElement";
|
|
71
|
+
let ReturnStatement: "ReturnStatement";
|
|
72
|
+
let SequenceExpression: "SequenceExpression";
|
|
73
|
+
let SpreadElement: "SpreadElement";
|
|
74
|
+
let StaticBlock: "StaticBlock";
|
|
75
|
+
let Super: "Super";
|
|
76
|
+
let SwitchCase: "SwitchCase";
|
|
77
|
+
let SwitchStatement: "SwitchStatement";
|
|
78
|
+
let TaggedTemplateExpression: "TaggedTemplateExpression";
|
|
79
|
+
let TemplateLiteral: "TemplateLiteral";
|
|
80
|
+
let TemplateElement: "TemplateElement";
|
|
81
|
+
let ThisExpression: "ThisExpression";
|
|
82
|
+
let ThrowStatement: "ThrowStatement";
|
|
83
|
+
let TryStatement: "TryStatement";
|
|
84
|
+
let TSAbstractAccessorProperty: "TSAbstractAccessorProperty";
|
|
85
|
+
let TSAbstractKeyword: "TSAbstractKeyword";
|
|
86
|
+
let TSAbstractMethodDefinition: "TSAbstractMethodDefinition";
|
|
87
|
+
let TSAbstractPropertyDefinition: "TSAbstractPropertyDefinition";
|
|
88
|
+
let TSAnyKeyword: "TSAnyKeyword";
|
|
89
|
+
let TSArrayType: "TSArrayType";
|
|
90
|
+
let TSAsExpression: "TSAsExpression";
|
|
91
|
+
let TSAsyncKeyword: "TSAsyncKeyword";
|
|
92
|
+
let TSBigIntKeyword: "TSBigIntKeyword";
|
|
93
|
+
let TSBooleanKeyword: "TSBooleanKeyword";
|
|
94
|
+
let TSCallSignatureDeclaration: "TSCallSignatureDeclaration";
|
|
95
|
+
let TSClassImplements: "TSClassImplements";
|
|
96
|
+
let TSConditionalType: "TSConditionalType";
|
|
97
|
+
let TSConstructorType: "TSConstructorType";
|
|
98
|
+
let TSConstructSignatureDeclaration: "TSConstructSignatureDeclaration";
|
|
99
|
+
let TSDeclareFunction: "TSDeclareFunction";
|
|
100
|
+
let TSDeclareKeyword: "TSDeclareKeyword";
|
|
101
|
+
let TSEmptyBodyFunctionExpression: "TSEmptyBodyFunctionExpression";
|
|
102
|
+
let TSEnumBody: "TSEnumBody";
|
|
103
|
+
let TSEnumDeclaration: "TSEnumDeclaration";
|
|
104
|
+
let TSEnumMember: "TSEnumMember";
|
|
105
|
+
let TSExportAssignment: "TSExportAssignment";
|
|
106
|
+
let TSExportKeyword: "TSExportKeyword";
|
|
107
|
+
let TSExternalModuleReference: "TSExternalModuleReference";
|
|
108
|
+
let TSFunctionType: "TSFunctionType";
|
|
109
|
+
let TSImportEqualsDeclaration: "TSImportEqualsDeclaration";
|
|
110
|
+
let TSImportType: "TSImportType";
|
|
111
|
+
let TSIndexedAccessType: "TSIndexedAccessType";
|
|
112
|
+
let TSIndexSignature: "TSIndexSignature";
|
|
113
|
+
let TSInferType: "TSInferType";
|
|
114
|
+
let TSInstantiationExpression: "TSInstantiationExpression";
|
|
115
|
+
let TSInterfaceBody: "TSInterfaceBody";
|
|
116
|
+
let TSInterfaceDeclaration: "TSInterfaceDeclaration";
|
|
117
|
+
let TSInterfaceHeritage: "TSInterfaceHeritage";
|
|
118
|
+
let TSIntersectionType: "TSIntersectionType";
|
|
119
|
+
let TSIntrinsicKeyword: "TSIntrinsicKeyword";
|
|
120
|
+
let TSLiteralType: "TSLiteralType";
|
|
121
|
+
let TSMappedType: "TSMappedType";
|
|
122
|
+
let TSMethodSignature: "TSMethodSignature";
|
|
123
|
+
let TSModuleBlock: "TSModuleBlock";
|
|
124
|
+
let TSModuleDeclaration: "TSModuleDeclaration";
|
|
125
|
+
let TSNamedTupleMember: "TSNamedTupleMember";
|
|
126
|
+
let TSNamespaceExportDeclaration: "TSNamespaceExportDeclaration";
|
|
127
|
+
let TSNeverKeyword: "TSNeverKeyword";
|
|
128
|
+
let TSNonNullExpression: "TSNonNullExpression";
|
|
129
|
+
let TSNullKeyword: "TSNullKeyword";
|
|
130
|
+
let TSNumberKeyword: "TSNumberKeyword";
|
|
131
|
+
let TSObjectKeyword: "TSObjectKeyword";
|
|
132
|
+
let TSOptionalType: "TSOptionalType";
|
|
133
|
+
let TSParameterProperty: "TSParameterProperty";
|
|
134
|
+
let TSPrivateKeyword: "TSPrivateKeyword";
|
|
135
|
+
let TSPropertySignature: "TSPropertySignature";
|
|
136
|
+
let TSProtectedKeyword: "TSProtectedKeyword";
|
|
137
|
+
let TSPublicKeyword: "TSPublicKeyword";
|
|
138
|
+
let TSQualifiedName: "TSQualifiedName";
|
|
139
|
+
let TSReadonlyKeyword: "TSReadonlyKeyword";
|
|
140
|
+
let TSRestType: "TSRestType";
|
|
141
|
+
let TSSatisfiesExpression: "TSSatisfiesExpression";
|
|
142
|
+
let TSStaticKeyword: "TSStaticKeyword";
|
|
143
|
+
let TSStringKeyword: "TSStringKeyword";
|
|
144
|
+
let TSSymbolKeyword: "TSSymbolKeyword";
|
|
145
|
+
let TSTemplateLiteralType: "TSTemplateLiteralType";
|
|
146
|
+
let TSThisType: "TSThisType";
|
|
147
|
+
let TSTupleType: "TSTupleType";
|
|
148
|
+
let TSTypeAliasDeclaration: "TSTypeAliasDeclaration";
|
|
149
|
+
let TSTypeAnnotation: "TSTypeAnnotation";
|
|
150
|
+
let TSTypeAssertion: "TSTypeAssertion";
|
|
151
|
+
let TSTypeLiteral: "TSTypeLiteral";
|
|
152
|
+
let TSTypeOperator: "TSTypeOperator";
|
|
153
|
+
let TSTypeParameter: "TSTypeParameter";
|
|
154
|
+
let TSTypeParameterDeclaration: "TSTypeParameterDeclaration";
|
|
155
|
+
let TSTypeParameterInstantiation: "TSTypeParameterInstantiation";
|
|
156
|
+
let TSTypePredicate: "TSTypePredicate";
|
|
157
|
+
let TSTypeQuery: "TSTypeQuery";
|
|
158
|
+
let TSTypeReference: "TSTypeReference";
|
|
159
|
+
let TSUndefinedKeyword: "TSUndefinedKeyword";
|
|
160
|
+
let TSUnionType: "TSUnionType";
|
|
161
|
+
let TSUnknownKeyword: "TSUnknownKeyword";
|
|
162
|
+
let TSVoidKeyword: "TSVoidKeyword";
|
|
163
|
+
let UnaryExpression: "UnaryExpression";
|
|
164
|
+
let UpdateExpression: "UpdateExpression";
|
|
165
|
+
let VariableDeclaration: "VariableDeclaration";
|
|
166
|
+
let VariableDeclarator: "VariableDeclarator";
|
|
167
|
+
let WhileStatement: "WhileStatement";
|
|
168
|
+
let WithStatement: "WithStatement";
|
|
169
|
+
let YieldExpression: "YieldExpression";
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=node-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-types.d.ts","sourceRoot":"","sources":["../../lib/constants/node-types.js"],"names":[],"mappings":""}
|
package/types/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../lib/index.js"],"names":[],"mappings":";AAIA,qCAAqC;AAErC,4BAA4B;AAC5B,sBADW,aAAa,CA4BtB;4BA9BwB,QAAQ"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export = rules;
|
|
2
|
+
declare const rules: {
|
|
3
|
+
"no-invalid-attr-value": import("../types").RuleModule<[{
|
|
4
|
+
allow?: {
|
|
5
|
+
tag: string;
|
|
6
|
+
attr: string;
|
|
7
|
+
valuePattern?: string;
|
|
8
|
+
}[];
|
|
9
|
+
}]>;
|
|
10
|
+
"use-baseline": import("../types").RuleModule<[useBaseline.Option]>;
|
|
11
|
+
"no-ineffective-attrs": import("../types").RuleModule<[]>;
|
|
12
|
+
"no-obsolete-tags": import("../types").RuleModule<[{
|
|
13
|
+
allow?: {
|
|
14
|
+
tag: string;
|
|
15
|
+
attr: string;
|
|
16
|
+
valuePattern?: string;
|
|
17
|
+
}[];
|
|
18
|
+
}]>;
|
|
19
|
+
"no-obsolete-attrs": import("../types").RuleModule<[]>;
|
|
20
|
+
};
|
|
21
|
+
import useBaseline = require("./use-baseline");
|
|
22
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/rules/index.js"],"names":[],"mappings":";AAMA;;;;;wBAKO,CAAC;;;;;;;;;wBAJmC,CAAC;;;;EAK1C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-ineffective-attrs.d.ts","sourceRoot":"","sources":["../../lib/rules/no-ineffective-attrs.js"],"names":[],"mappings":"wBAeW,WAAW,EAAE,CAAC;;gCATf,UAAU"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-invalid-attr-value.d.ts","sourceRoot":"","sources":["../../lib/rules/no-invalid-attr-value.js"],"names":[],"mappings":"wBAaU,WACT,CAAK;IAAE,KAAK,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,CAAC,CACrE;;gCATM,UAAU"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-obsolete-attrs.d.ts","sourceRoot":"","sources":["../../lib/rules/no-obsolete-attrs.js"],"names":[],"mappings":"wBAWW,WAAW,EAAE,CAAC;;gCATI,UAAU"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-obsolete-tags.d.ts","sourceRoot":"","sources":["../../lib/rules/no-obsolete-tags.js"],"names":[],"mappings":"wBASU,WACT,CAAK;IAAE,KAAK,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAAE,CAAC,CACrE;;gCAX0B,UAAU"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
declare namespace _exports {
|
|
2
|
+
export { Option };
|
|
3
|
+
}
|
|
4
|
+
declare const _exports: RuleModule<[Option]>;
|
|
5
|
+
export = _exports;
|
|
6
|
+
type Option = {
|
|
7
|
+
available: "widely" | "newly" | number;
|
|
8
|
+
};
|
|
9
|
+
import type { RuleModule } from "../types";
|
|
10
|
+
//# sourceMappingURL=use-baseline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-baseline.d.ts","sourceRoot":"","sources":["../../lib/rules/use-baseline.js"],"names":[],"mappings":";;;wBAeW,WAAW,CAAC,MAAM,CAAC,CAAC;;;eAPjB,QAAQ,GAAG,OAAO,GAAG,MAAM;;gCAF/B,UAAU"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {JSXOpeningElement} node
|
|
3
|
+
* @returns {ElementNodeAdapter<
|
|
4
|
+
* JSXOpeningElement,
|
|
5
|
+
* JSXSpreadAttribute | JSXAttribute["name"] | null,
|
|
6
|
+
* JSXAttribute["value"]
|
|
7
|
+
* >}
|
|
8
|
+
*/
|
|
9
|
+
export function elementNodeAdapter(node: JSXOpeningElement): ElementNodeAdapter<JSXOpeningElement, JSXSpreadAttribute | JSXAttribute["name"] | null, JSXAttribute["value"]>;
|
|
10
|
+
import type { JSXOpeningElement } from "../../types";
|
|
11
|
+
import type { JSXSpreadAttribute } from "../../types";
|
|
12
|
+
import type { JSXAttribute } from "../../types";
|
|
13
|
+
import type { ElementNodeAdapter } from "@html-eslint/core";
|
|
14
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../lib/rules/utils/adapter.js"],"names":[],"mappings":"AA4JA;;;;;;;GAOG;AACH,yCAPW,iBAAiB,GACf,mBACZ,iBAAqB,EACrB,kBAAsB,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,IAAI,EAChD,YAAY,CAAC,OAAO,CAAC,CACtB,CAeH;uCAtKS,aAAa;wCAAb,aAAa;kCAAb,aAAa;wCAPb,mBAAmB"}
|
package/types/types.d.ts
ADDED
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
/** https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/utils/src/ts-eslint/Rule.ts */
|
|
2
|
+
import type { TSESTree } from "@typescript-eslint/types";
|
|
3
|
+
import eslint from "eslint";
|
|
4
|
+
/** Utility type to convert node type enum to string literal */
|
|
5
|
+
type NodeWithStringType<T extends TSESTree.Node> = Omit<T, "type"> & {
|
|
6
|
+
type: `${T["type"]}`;
|
|
7
|
+
};
|
|
8
|
+
export type NullLiteral = NodeWithStringType<TSESTree.NullLiteral>;
|
|
9
|
+
export type AccessorProperty = NodeWithStringType<TSESTree.AccessorProperty>;
|
|
10
|
+
export type ArrayExpression = NodeWithStringType<TSESTree.ArrayExpression>;
|
|
11
|
+
export type ArrayPattern = NodeWithStringType<TSESTree.ArrayPattern>;
|
|
12
|
+
export type ArrowFunctionExpression = NodeWithStringType<TSESTree.ArrowFunctionExpression>;
|
|
13
|
+
export type AssignmentExpression = NodeWithStringType<TSESTree.AssignmentExpression>;
|
|
14
|
+
export type AssignmentPattern = NodeWithStringType<TSESTree.AssignmentPattern>;
|
|
15
|
+
export type AwaitExpression = NodeWithStringType<TSESTree.AwaitExpression>;
|
|
16
|
+
export type BinaryExpression = NodeWithStringType<TSESTree.BinaryExpression>;
|
|
17
|
+
export type BlockStatement = NodeWithStringType<TSESTree.BlockStatement>;
|
|
18
|
+
export type BreakStatement = NodeWithStringType<TSESTree.BreakStatement>;
|
|
19
|
+
export type CallExpression = NodeWithStringType<TSESTree.CallExpression>;
|
|
20
|
+
export type CatchClause = NodeWithStringType<TSESTree.CatchClause>;
|
|
21
|
+
export type ChainExpression = NodeWithStringType<TSESTree.ChainExpression>;
|
|
22
|
+
export type ClassBody = NodeWithStringType<TSESTree.ClassBody>;
|
|
23
|
+
export type ClassDeclaration = NodeWithStringType<TSESTree.ClassDeclaration>;
|
|
24
|
+
export type ClassExpression = NodeWithStringType<TSESTree.ClassExpression>;
|
|
25
|
+
export type ConditionalExpression = NodeWithStringType<TSESTree.ConditionalExpression>;
|
|
26
|
+
export type ContinueStatement = NodeWithStringType<TSESTree.ContinueStatement>;
|
|
27
|
+
export type DebuggerStatement = NodeWithStringType<TSESTree.DebuggerStatement>;
|
|
28
|
+
export type Decorator = NodeWithStringType<TSESTree.Decorator>;
|
|
29
|
+
export type DoWhileStatement = NodeWithStringType<TSESTree.DoWhileStatement>;
|
|
30
|
+
export type EmptyStatement = NodeWithStringType<TSESTree.EmptyStatement>;
|
|
31
|
+
export type ExportAllDeclaration = NodeWithStringType<TSESTree.ExportAllDeclaration>;
|
|
32
|
+
export type ExportDefaultDeclaration = NodeWithStringType<TSESTree.ExportDefaultDeclaration>;
|
|
33
|
+
export type ExportNamedDeclaration = NodeWithStringType<TSESTree.ExportNamedDeclaration>;
|
|
34
|
+
export type ExportSpecifier = NodeWithStringType<TSESTree.ExportSpecifier>;
|
|
35
|
+
export type ExpressionStatement = NodeWithStringType<TSESTree.ExpressionStatement>;
|
|
36
|
+
export type ForInStatement = NodeWithStringType<TSESTree.ForInStatement>;
|
|
37
|
+
export type ForOfStatement = NodeWithStringType<TSESTree.ForOfStatement>;
|
|
38
|
+
export type ForStatement = NodeWithStringType<TSESTree.ForStatement>;
|
|
39
|
+
export type FunctionDeclaration = NodeWithStringType<TSESTree.FunctionDeclaration>;
|
|
40
|
+
export type FunctionExpression = NodeWithStringType<TSESTree.FunctionExpression>;
|
|
41
|
+
export type Identifier = NodeWithStringType<TSESTree.Identifier>;
|
|
42
|
+
export type IfStatement = NodeWithStringType<TSESTree.IfStatement>;
|
|
43
|
+
export type ImportAttribute = NodeWithStringType<TSESTree.ImportAttribute>;
|
|
44
|
+
export type ImportDeclaration = NodeWithStringType<TSESTree.ImportDeclaration>;
|
|
45
|
+
export type ImportDefaultSpecifier = NodeWithStringType<TSESTree.ImportDefaultSpecifier>;
|
|
46
|
+
export type ImportExpression = NodeWithStringType<TSESTree.ImportExpression>;
|
|
47
|
+
export type ImportNamespaceSpecifier = NodeWithStringType<TSESTree.ImportNamespaceSpecifier>;
|
|
48
|
+
export type ImportSpecifier = NodeWithStringType<TSESTree.ImportSpecifier>;
|
|
49
|
+
export type JSXAttribute = NodeWithStringType<TSESTree.JSXAttribute>;
|
|
50
|
+
export type JSXClosingElement = NodeWithStringType<TSESTree.JSXClosingElement>;
|
|
51
|
+
export type JSXClosingFragment = NodeWithStringType<TSESTree.JSXClosingFragment>;
|
|
52
|
+
export type JSXElement = NodeWithStringType<TSESTree.JSXElement>;
|
|
53
|
+
export type JSXEmptyExpression = NodeWithStringType<TSESTree.JSXEmptyExpression>;
|
|
54
|
+
export type JSXExpressionContainer = NodeWithStringType<TSESTree.JSXExpressionContainer>;
|
|
55
|
+
export type JSXFragment = NodeWithStringType<TSESTree.JSXFragment>;
|
|
56
|
+
export type JSXIdentifier = NodeWithStringType<TSESTree.JSXIdentifier>;
|
|
57
|
+
export type JSXMemberExpression = NodeWithStringType<TSESTree.JSXMemberExpression>;
|
|
58
|
+
export type JSXNamespacedName = NodeWithStringType<TSESTree.JSXNamespacedName>;
|
|
59
|
+
export type JSXOpeningElement = NodeWithStringType<TSESTree.JSXOpeningElement>;
|
|
60
|
+
export type JSXOpeningFragment = NodeWithStringType<TSESTree.JSXOpeningFragment>;
|
|
61
|
+
export type JSXSpreadAttribute = NodeWithStringType<TSESTree.JSXSpreadAttribute>;
|
|
62
|
+
export type JSXSpreadChild = NodeWithStringType<TSESTree.JSXSpreadChild>;
|
|
63
|
+
export type JSXText = NodeWithStringType<TSESTree.JSXText>;
|
|
64
|
+
export type LabeledStatement = NodeWithStringType<TSESTree.LabeledStatement>;
|
|
65
|
+
export type Literal = NodeWithStringType<TSESTree.Literal>;
|
|
66
|
+
export type LogicalExpression = NodeWithStringType<TSESTree.LogicalExpression>;
|
|
67
|
+
export type MemberExpression = NodeWithStringType<TSESTree.MemberExpression>;
|
|
68
|
+
export type MetaProperty = NodeWithStringType<TSESTree.MetaProperty>;
|
|
69
|
+
export type MethodDefinition = NodeWithStringType<TSESTree.MethodDefinition>;
|
|
70
|
+
export type NewExpression = NodeWithStringType<TSESTree.NewExpression>;
|
|
71
|
+
export type ObjectExpression = NodeWithStringType<TSESTree.ObjectExpression>;
|
|
72
|
+
export type ObjectPattern = NodeWithStringType<TSESTree.ObjectPattern>;
|
|
73
|
+
export type PrivateIdentifier = NodeWithStringType<TSESTree.PrivateIdentifier>;
|
|
74
|
+
export type Program = NodeWithStringType<TSESTree.Program>;
|
|
75
|
+
export type Property = NodeWithStringType<TSESTree.Property>;
|
|
76
|
+
export type PropertyDefinition = NodeWithStringType<TSESTree.PropertyDefinition>;
|
|
77
|
+
export type RestElement = NodeWithStringType<TSESTree.RestElement>;
|
|
78
|
+
export type ReturnStatement = NodeWithStringType<TSESTree.ReturnStatement>;
|
|
79
|
+
export type SequenceExpression = NodeWithStringType<TSESTree.SequenceExpression>;
|
|
80
|
+
export type SpreadElement = NodeWithStringType<TSESTree.SpreadElement>;
|
|
81
|
+
export type StaticBlock = NodeWithStringType<TSESTree.StaticBlock>;
|
|
82
|
+
export type Super = NodeWithStringType<TSESTree.Super>;
|
|
83
|
+
export type SwitchCase = NodeWithStringType<TSESTree.SwitchCase>;
|
|
84
|
+
export type SwitchStatement = NodeWithStringType<TSESTree.SwitchStatement>;
|
|
85
|
+
export type TaggedTemplateExpression = NodeWithStringType<TSESTree.TaggedTemplateExpression>;
|
|
86
|
+
export type TemplateElement = NodeWithStringType<TSESTree.TemplateElement>;
|
|
87
|
+
export type TemplateLiteral = NodeWithStringType<TSESTree.TemplateLiteral>;
|
|
88
|
+
export type ThisExpression = NodeWithStringType<TSESTree.ThisExpression>;
|
|
89
|
+
export type ThrowStatement = NodeWithStringType<TSESTree.ThrowStatement>;
|
|
90
|
+
export type TryStatement = NodeWithStringType<TSESTree.TryStatement>;
|
|
91
|
+
export type UnaryExpression = NodeWithStringType<TSESTree.UnaryExpression>;
|
|
92
|
+
export type UpdateExpression = NodeWithStringType<TSESTree.UpdateExpression>;
|
|
93
|
+
export type VariableDeclaration = NodeWithStringType<TSESTree.VariableDeclaration>;
|
|
94
|
+
export type VariableDeclarator = NodeWithStringType<TSESTree.VariableDeclarator>;
|
|
95
|
+
export type WhileStatement = NodeWithStringType<TSESTree.WhileStatement>;
|
|
96
|
+
export type WithStatement = NodeWithStringType<TSESTree.WithStatement>;
|
|
97
|
+
export type YieldExpression = NodeWithStringType<TSESTree.YieldExpression>;
|
|
98
|
+
export type TSAsExpression = NodeWithStringType<TSESTree.TSAsExpression>;
|
|
99
|
+
export type TSTypeAnnotation = NodeWithStringType<TSESTree.TSTypeAnnotation>;
|
|
100
|
+
export type TSTypeReference = NodeWithStringType<TSESTree.TSTypeReference>;
|
|
101
|
+
export type TSQualifiedName = NodeWithStringType<TSESTree.TSQualifiedName>;
|
|
102
|
+
export type TSInterfaceDeclaration = NodeWithStringType<TSESTree.TSInterfaceDeclaration>;
|
|
103
|
+
export type TSTypeAliasDeclaration = NodeWithStringType<TSESTree.TSTypeAliasDeclaration>;
|
|
104
|
+
export type TSEnumDeclaration = NodeWithStringType<TSESTree.TSEnumDeclaration>;
|
|
105
|
+
export type TSModuleDeclaration = NodeWithStringType<TSESTree.TSModuleDeclaration>;
|
|
106
|
+
export type TSImportEqualsDeclaration = NodeWithStringType<TSESTree.TSImportEqualsDeclaration>;
|
|
107
|
+
export type TSExportAssignment = NodeWithStringType<TSESTree.TSExportAssignment>;
|
|
108
|
+
export type TSNamespaceExportDeclaration = NodeWithStringType<TSESTree.TSNamespaceExportDeclaration>;
|
|
109
|
+
export type Node = AccessorProperty | ArrayExpression | ArrayPattern | ArrowFunctionExpression | AssignmentExpression | AssignmentPattern | AwaitExpression | BinaryExpression | BlockStatement | BreakStatement | CallExpression | CatchClause | ChainExpression | ClassBody | ClassDeclaration | ClassExpression | ConditionalExpression | ContinueStatement | DebuggerStatement | Decorator | DoWhileStatement | EmptyStatement | ExportAllDeclaration | ExportDefaultDeclaration | ExportNamedDeclaration | ExportSpecifier | ExpressionStatement | ForInStatement | ForOfStatement | ForStatement | FunctionDeclaration | FunctionExpression | Identifier | IfStatement | ImportAttribute | ImportDeclaration | ImportDefaultSpecifier | ImportExpression | ImportNamespaceSpecifier | ImportSpecifier | JSXAttribute | JSXClosingElement | JSXClosingFragment | JSXElement | JSXEmptyExpression | JSXExpressionContainer | JSXFragment | JSXIdentifier | JSXMemberExpression | JSXNamespacedName | JSXOpeningElement | JSXOpeningFragment | JSXSpreadAttribute | JSXSpreadChild | JSXText | LabeledStatement | Literal | LogicalExpression | MemberExpression | MetaProperty | MethodDefinition | NewExpression | ObjectExpression | ObjectPattern | PrivateIdentifier | Program | Property | PropertyDefinition | RestElement | ReturnStatement | SequenceExpression | SpreadElement | StaticBlock | Super | SwitchCase | SwitchStatement | TaggedTemplateExpression | TemplateElement | TemplateLiteral | ThisExpression | ThrowStatement | TryStatement | UnaryExpression | UpdateExpression | VariableDeclaration | VariableDeclarator | WhileStatement | WithStatement | YieldExpression;
|
|
110
|
+
export type RuleFunction<T extends TSESTree.NodeOrTokenData = never> = (node: T) => void;
|
|
111
|
+
type RuleListenerExitSelectors = {
|
|
112
|
+
[K in keyof RuleListenerBaseSelectors as `${K}:exit`]: RuleListenerBaseSelectors[K];
|
|
113
|
+
};
|
|
114
|
+
interface RuleListenerBaseSelectors {
|
|
115
|
+
AccessorProperty?: RuleFunction<AccessorProperty>;
|
|
116
|
+
ArrayExpression?: RuleFunction<ArrayExpression>;
|
|
117
|
+
ArrayPattern?: RuleFunction<ArrayPattern>;
|
|
118
|
+
ArrowFunctionExpression?: RuleFunction<ArrowFunctionExpression>;
|
|
119
|
+
AssignmentExpression?: RuleFunction<AssignmentExpression>;
|
|
120
|
+
AssignmentPattern?: RuleFunction<AssignmentPattern>;
|
|
121
|
+
AwaitExpression?: RuleFunction<AwaitExpression>;
|
|
122
|
+
BinaryExpression?: RuleFunction<BinaryExpression>;
|
|
123
|
+
BlockStatement?: RuleFunction<BlockStatement>;
|
|
124
|
+
BreakStatement?: RuleFunction<BreakStatement>;
|
|
125
|
+
CallExpression?: RuleFunction<CallExpression>;
|
|
126
|
+
CatchClause?: RuleFunction<CatchClause>;
|
|
127
|
+
ChainExpression?: RuleFunction<ChainExpression>;
|
|
128
|
+
ClassBody?: RuleFunction<ClassBody>;
|
|
129
|
+
ClassDeclaration?: RuleFunction<ClassDeclaration>;
|
|
130
|
+
ClassExpression?: RuleFunction<ClassExpression>;
|
|
131
|
+
ConditionalExpression?: RuleFunction<ConditionalExpression>;
|
|
132
|
+
ContinueStatement?: RuleFunction<ContinueStatement>;
|
|
133
|
+
DebuggerStatement?: RuleFunction<DebuggerStatement>;
|
|
134
|
+
Decorator?: RuleFunction<Decorator>;
|
|
135
|
+
DoWhileStatement?: RuleFunction<DoWhileStatement>;
|
|
136
|
+
EmptyStatement?: RuleFunction<EmptyStatement>;
|
|
137
|
+
ExportAllDeclaration?: RuleFunction<ExportAllDeclaration>;
|
|
138
|
+
ExportDefaultDeclaration?: RuleFunction<ExportDefaultDeclaration>;
|
|
139
|
+
ExportNamedDeclaration?: RuleFunction<ExportNamedDeclaration>;
|
|
140
|
+
ExportSpecifier?: RuleFunction<ExportSpecifier>;
|
|
141
|
+
ExpressionStatement?: RuleFunction<ExpressionStatement>;
|
|
142
|
+
ForInStatement?: RuleFunction<ForInStatement>;
|
|
143
|
+
ForOfStatement?: RuleFunction<ForOfStatement>;
|
|
144
|
+
ForStatement?: RuleFunction<ForStatement>;
|
|
145
|
+
FunctionDeclaration?: RuleFunction<FunctionDeclaration>;
|
|
146
|
+
FunctionExpression?: RuleFunction<FunctionExpression>;
|
|
147
|
+
Identifier?: RuleFunction<Identifier>;
|
|
148
|
+
IfStatement?: RuleFunction<IfStatement>;
|
|
149
|
+
ImportAttribute?: RuleFunction<ImportAttribute>;
|
|
150
|
+
ImportDeclaration?: RuleFunction<ImportDeclaration>;
|
|
151
|
+
ImportDefaultSpecifier?: RuleFunction<ImportDefaultSpecifier>;
|
|
152
|
+
ImportExpression?: RuleFunction<ImportExpression>;
|
|
153
|
+
ImportNamespaceSpecifier?: RuleFunction<ImportNamespaceSpecifier>;
|
|
154
|
+
ImportSpecifier?: RuleFunction<ImportSpecifier>;
|
|
155
|
+
JSXAttribute?: RuleFunction<JSXAttribute>;
|
|
156
|
+
JSXClosingElement?: RuleFunction<JSXClosingElement>;
|
|
157
|
+
JSXClosingFragment?: RuleFunction<JSXClosingFragment>;
|
|
158
|
+
JSXElement?: RuleFunction<JSXElement>;
|
|
159
|
+
JSXEmptyExpression?: RuleFunction<JSXEmptyExpression>;
|
|
160
|
+
JSXExpressionContainer?: RuleFunction<JSXExpressionContainer>;
|
|
161
|
+
JSXFragment?: RuleFunction<JSXFragment>;
|
|
162
|
+
JSXIdentifier?: RuleFunction<JSXIdentifier>;
|
|
163
|
+
JSXMemberExpression?: RuleFunction<JSXMemberExpression>;
|
|
164
|
+
JSXNamespacedName?: RuleFunction<JSXNamespacedName>;
|
|
165
|
+
JSXOpeningElement?: RuleFunction<JSXOpeningElement>;
|
|
166
|
+
JSXOpeningFragment?: RuleFunction<JSXOpeningFragment>;
|
|
167
|
+
JSXSpreadAttribute?: RuleFunction<JSXSpreadAttribute>;
|
|
168
|
+
JSXSpreadChild?: RuleFunction<JSXSpreadChild>;
|
|
169
|
+
JSXText?: RuleFunction<JSXText>;
|
|
170
|
+
LabeledStatement?: RuleFunction<LabeledStatement>;
|
|
171
|
+
Literal?: RuleFunction<Literal>;
|
|
172
|
+
LogicalExpression?: RuleFunction<LogicalExpression>;
|
|
173
|
+
MemberExpression?: RuleFunction<MemberExpression>;
|
|
174
|
+
MetaProperty?: RuleFunction<MetaProperty>;
|
|
175
|
+
MethodDefinition?: RuleFunction<MethodDefinition>;
|
|
176
|
+
NewExpression?: RuleFunction<NewExpression>;
|
|
177
|
+
ObjectExpression?: RuleFunction<ObjectExpression>;
|
|
178
|
+
ObjectPattern?: RuleFunction<ObjectPattern>;
|
|
179
|
+
PrivateIdentifier?: RuleFunction<PrivateIdentifier>;
|
|
180
|
+
Program?: RuleFunction<Program>;
|
|
181
|
+
Property?: RuleFunction<Property>;
|
|
182
|
+
PropertyDefinition?: RuleFunction<PropertyDefinition>;
|
|
183
|
+
RestElement?: RuleFunction<RestElement>;
|
|
184
|
+
ReturnStatement?: RuleFunction<ReturnStatement>;
|
|
185
|
+
SequenceExpression?: RuleFunction<SequenceExpression>;
|
|
186
|
+
SpreadElement?: RuleFunction<SpreadElement>;
|
|
187
|
+
StaticBlock?: RuleFunction<StaticBlock>;
|
|
188
|
+
Super?: RuleFunction<Super>;
|
|
189
|
+
SwitchCase?: RuleFunction<SwitchCase>;
|
|
190
|
+
SwitchStatement?: RuleFunction<SwitchStatement>;
|
|
191
|
+
TaggedTemplateExpression?: RuleFunction<TaggedTemplateExpression>;
|
|
192
|
+
TemplateElement?: RuleFunction<TemplateElement>;
|
|
193
|
+
TemplateLiteral?: RuleFunction<TemplateLiteral>;
|
|
194
|
+
ThisExpression?: RuleFunction<ThisExpression>;
|
|
195
|
+
ThrowStatement?: RuleFunction<ThrowStatement>;
|
|
196
|
+
TryStatement?: RuleFunction<TryStatement>;
|
|
197
|
+
UnaryExpression?: RuleFunction<UnaryExpression>;
|
|
198
|
+
UpdateExpression?: RuleFunction<UpdateExpression>;
|
|
199
|
+
VariableDeclaration?: RuleFunction<VariableDeclaration>;
|
|
200
|
+
VariableDeclarator?: RuleFunction<VariableDeclarator>;
|
|
201
|
+
WhileStatement?: RuleFunction<WhileStatement>;
|
|
202
|
+
WithStatement?: RuleFunction<WithStatement>;
|
|
203
|
+
YieldExpression?: RuleFunction<YieldExpression>;
|
|
204
|
+
}
|
|
205
|
+
export type RuleListener = RuleListenerBaseSelectors & RuleListenerExitSelectors;
|
|
206
|
+
interface RuleFix {
|
|
207
|
+
range: eslint.AST.Range;
|
|
208
|
+
text: string;
|
|
209
|
+
}
|
|
210
|
+
export interface RuleFixer {
|
|
211
|
+
insertTextAfter(nodeOrToken: TSESTree.BaseNode, text: string): RuleFix;
|
|
212
|
+
insertTextAfterRange(range: eslint.AST.Range, text: string): RuleFix;
|
|
213
|
+
insertTextBefore(nodeOrToken: TSESTree.BaseNode, text: string): RuleFix;
|
|
214
|
+
insertTextBeforeRange(range: eslint.AST.Range, text: string): RuleFix;
|
|
215
|
+
remove(nodeOrToken: TSESTree.BaseNode): RuleFix;
|
|
216
|
+
removeRange(range: eslint.AST.Range): RuleFix;
|
|
217
|
+
replaceText(nodeOrToken: TSESTree.BaseNode, text: string): RuleFix;
|
|
218
|
+
replaceTextRange(range: eslint.AST.Range, text: string): RuleFix;
|
|
219
|
+
}
|
|
220
|
+
export type ReportFixFunction = (fixer: RuleFixer) => IterableIterator<RuleFix> | readonly RuleFix[] | RuleFix | null;
|
|
221
|
+
interface ReportDescriptorOptionsBase {
|
|
222
|
+
data?: {
|
|
223
|
+
[key: string]: string;
|
|
224
|
+
};
|
|
225
|
+
fix?: null | ReportFixFunction;
|
|
226
|
+
}
|
|
227
|
+
type SuggestionDescriptorMessage = {
|
|
228
|
+
messageId: string;
|
|
229
|
+
};
|
|
230
|
+
export type SuggestionReportDescriptor = SuggestionDescriptorMessage & ReportDescriptorOptionsBase;
|
|
231
|
+
interface ReportDescriptorOptions extends ReportDescriptorOptionsBase {
|
|
232
|
+
suggest?: SuggestionReportDescriptor[] | null;
|
|
233
|
+
}
|
|
234
|
+
type ReportDescriptor = ReportDescriptorMessage & ReportDescriptorLocation & ReportDescriptorOptions;
|
|
235
|
+
type ReportDescriptorMessage = {
|
|
236
|
+
message: string;
|
|
237
|
+
} | {
|
|
238
|
+
messageId: string;
|
|
239
|
+
};
|
|
240
|
+
type ReportDescriptorLocation = {
|
|
241
|
+
node?: Node;
|
|
242
|
+
loc?: eslint.AST.SourceLocation;
|
|
243
|
+
line?: number;
|
|
244
|
+
column?: number;
|
|
245
|
+
};
|
|
246
|
+
export interface Context<Options extends unknown[]> extends Omit<eslint.Rule.RuleContext, "report"> {
|
|
247
|
+
report(descriptor: ReportDescriptor): void;
|
|
248
|
+
options: Options;
|
|
249
|
+
}
|
|
250
|
+
export interface RuleModule<Options extends unknown[]> {
|
|
251
|
+
create(context: Context<Options>): RuleListener;
|
|
252
|
+
meta: eslint.Rule.RuleMetaData;
|
|
253
|
+
}
|
|
254
|
+
export {};
|
|
255
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../lib/types.ts"],"names":[],"mappings":"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"}
|