@eslint-react/kit 2.0.0-next.14 → 2.0.0-next.140

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
@@ -1,9 +1,47 @@
1
+ import { unit } from '@eslint-react/eff';
2
+ import { TSESTree } from '@typescript-eslint/types';
1
3
  import * as typescript from 'typescript';
2
4
  import * as tseslint from '@typescript-eslint/utils/ts-eslint';
3
5
  import { ReportDescriptor } from '@typescript-eslint/utils/ts-eslint';
4
- import * as z from '@zod/mini';
5
- import { _ } from '@eslint-react/eff';
6
- import { TSESTree } from '@typescript-eslint/utils';
6
+ import { z } from 'zod/v4';
7
+ import { TSESTree as TSESTree$1 } from '@typescript-eslint/utils';
8
+
9
+ /**
10
+ * Check if the given node is a member expression that accesses `process.env.NODE_ENV`
11
+ * @param node The AST node
12
+ * @returns True if the node is a member expression that accesses `process.env.NODE_ENV`, false otherwise
13
+ */
14
+ declare function isProcessEnvNodeEnv(node: TSESTree.Node | null | unit): node is TSESTree.MemberExpression;
15
+ /**
16
+ * Check if the given node is a binary expression that compares `process.env.NODE_ENV` with a string literal
17
+ * @param node The AST node
18
+ * @param operator The operator used in the comparison
19
+ * @param value The string literal value to compare against
20
+ * @returns True if the node is a binary expression that compares `process.env.NODE_ENV` with the specified value, false otherwise
21
+ */
22
+ declare function isProcessEnvNodeEnvCompare(node: TSESTree.Node | null | unit, operator: "===" | "!==", value: "development" | "production"): node is TSESTree.BinaryExpression;
23
+ /**
24
+ * Checks if the given node is a `vi.mock`.
25
+ * @param node The node to check
26
+ * @returns `true` if the node is a `vi.mock`, otherwise `false`.
27
+ * @internal
28
+ */
29
+ declare function isViMock(node: TSESTree.Node | null | unit): node is TSESTree.MemberExpression;
30
+ /**
31
+ * Checks if the given node is a `vi.mock` callback.
32
+ * @param node The node to check
33
+ * @returns `true` if the node is a `vi.mock` callback, otherwise `false`.
34
+ * @internal
35
+ */
36
+ declare function isViMockCallback(node: TSESTree.Node | null | unit): boolean;
37
+
38
+ declare const ContextDetection_isProcessEnvNodeEnv: typeof isProcessEnvNodeEnv;
39
+ declare const ContextDetection_isProcessEnvNodeEnvCompare: typeof isProcessEnvNodeEnvCompare;
40
+ declare const ContextDetection_isViMock: typeof isViMock;
41
+ declare const ContextDetection_isViMockCallback: typeof isViMockCallback;
42
+ declare namespace ContextDetection {
43
+ export { ContextDetection_isProcessEnvNodeEnv as isProcessEnvNodeEnv, ContextDetection_isProcessEnvNodeEnvCompare as isProcessEnvNodeEnvCompare, ContextDetection_isViMock as isViMock, ContextDetection_isViMockCallback as isViMockCallback };
44
+ }
7
45
 
8
46
  /**
9
47
  * Rule severity.
@@ -32,6 +70,11 @@ type RuleContext<MessageIds extends string = string, Options extends readonly un
32
70
  */
33
71
  type RuleFeature = "CFG" | "DBG" | "FIX" | "MOD" | "TSC" | "EXP";
34
72
  type RulePolicy = number;
73
+ type RuleSuggest<MessageIds extends string = string> = {
74
+ messageId: MessageIds;
75
+ data?: Record<string, unknown>;
76
+ fix: tseslint.ReportFixFunction;
77
+ };
35
78
 
36
79
  declare const JsxEmit: {
37
80
  readonly None: 0;
@@ -81,14 +124,14 @@ declare namespace index$1 {
81
124
  /**
82
125
  * @internal
83
126
  */
84
- declare const LanguagePreferenceSchema: z.ZodMiniObject<{
85
- indentStyle: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"tab">, z.ZodMiniLiteral<"space">]>>;
86
- indentWidth: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
87
- quoteStyle: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"single">, z.ZodMiniLiteral<"double">]>>;
88
- semicolons: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"always">, z.ZodMiniLiteral<"asNeeded">]>>;
89
- trailingCommas: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"all">, z.ZodMiniLiteral<"es5">, z.ZodMiniLiteral<"none">]>>;
90
- jsxQuoteStyle: z.ZodMiniOptional<z.ZodMiniUnion<readonly [z.ZodMiniLiteral<"single">, z.ZodMiniLiteral<"double">]>>;
91
- }, {}>;
127
+ declare const LanguagePreferenceSchema: z.ZodObject<{
128
+ indentStyle: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"tab">, z.ZodLiteral<"space">]>>;
129
+ indentWidth: z.ZodOptional<z.ZodNumber>;
130
+ quoteStyle: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"single">, z.ZodLiteral<"double">]>>;
131
+ semicolons: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"always">, z.ZodLiteral<"asNeeded">]>>;
132
+ trailingCommas: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"all">, z.ZodLiteral<"es5">, z.ZodLiteral<"none">]>>;
133
+ jsxQuoteStyle: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"single">, z.ZodLiteral<"double">]>>;
134
+ }, z.core.$strip>;
92
135
 
93
136
  /**
94
137
  * @internal
@@ -98,6 +141,17 @@ type LanguagePreference = z.infer<typeof LanguagePreferenceSchema>;
98
141
  * Get a copy of the default LanguagePreference.
99
142
  */
100
143
  declare function make$1(): LanguagePreference;
144
+ /**
145
+ * A default LanguagePreference object.
146
+ */
147
+ declare const defaultLanguagePreference: {
148
+ indentStyle?: "tab" | "space" | undefined;
149
+ indentWidth?: number | undefined;
150
+ quoteStyle?: "single" | "double" | undefined;
151
+ semicolons?: "always" | "asNeeded" | undefined;
152
+ trailingCommas?: "all" | "es5" | "none" | undefined;
153
+ jsxQuoteStyle?: "single" | "double" | undefined;
154
+ };
101
155
  declare function getFromContext(): void;
102
156
  declare module "@typescript-eslint/utils/ts-eslint" {
103
157
  interface SharedConfigurationSettings {
@@ -106,9 +160,10 @@ declare module "@typescript-eslint/utils/ts-eslint" {
106
160
 
107
161
  type index_LanguagePreference = LanguagePreference;
108
162
  declare const index_LanguagePreferenceSchema: typeof LanguagePreferenceSchema;
163
+ declare const index_defaultLanguagePreference: typeof defaultLanguagePreference;
109
164
  declare const index_getFromContext: typeof getFromContext;
110
165
  declare namespace index {
111
- export { type index_LanguagePreference as LanguagePreference, index_LanguagePreferenceSchema as LanguagePreferenceSchema, index_getFromContext as getFromContext, make$1 as make };
166
+ export { type index_LanguagePreference as LanguagePreference, index_LanguagePreferenceSchema as LanguagePreferenceSchema, index_defaultLanguagePreference as defaultLanguagePreference, index_getFromContext as getFromContext, make$1 as make };
112
167
  }
113
168
 
114
169
  /**
@@ -223,16 +278,16 @@ declare namespace RegExp$1 {
223
278
  }
224
279
 
225
280
  interface Reporter<TMessageID extends string> {
226
- send: (descriptor: _ | null | ReportDescriptor<TMessageID>) => void;
227
- sendOrElse: <TElse>(descriptor: _ | null | ReportDescriptor<TMessageID>, cb: () => TElse) => _ | TElse;
281
+ send: (descriptor: unit | null | ReportDescriptor<TMessageID>) => void;
282
+ sendOrElse: <TElse>(descriptor: unit | null | ReportDescriptor<TMessageID>, cb: () => TElse) => unit | TElse;
228
283
  }
229
284
  declare const send: {
230
- <TMessageID extends string>(context: RuleContext, descriptor: _ | null | ReportDescriptor<TMessageID>): void;
231
- <TMessageID extends string>(context: RuleContext): (descriptor: _ | null | ReportDescriptor<TMessageID>) => void;
285
+ <TMessageID extends string>(context: RuleContext, descriptor: unit | null | ReportDescriptor<TMessageID>): void;
286
+ <TMessageID extends string>(context: RuleContext): (descriptor: unit | null | ReportDescriptor<TMessageID>) => void;
232
287
  };
233
288
  declare const sendOrElse: {
234
- <TMessageID extends string, TElse>(context: RuleContext, descriptor: _ | null | ReportDescriptor<TMessageID>, cb: () => TElse): _ | TElse;
235
- <TMessageID extends string, TElse>(context: RuleContext): (descriptor: _ | null | ReportDescriptor<TMessageID>) => (cb: () => TElse) => _ | TElse;
289
+ <TMessageID extends string, TElse>(context: RuleContext, descriptor: unit | null | ReportDescriptor<TMessageID>, cb: () => TElse): unit | TElse;
290
+ <TMessageID extends string, TElse>(context: RuleContext): (descriptor: unit | null | ReportDescriptor<TMessageID>) => (cb: () => TElse) => unit | TElse;
236
291
  };
237
292
  declare function make<TMessageID extends string>(context: RuleContext): Reporter<TMessageID>;
238
293
 
@@ -244,22 +299,22 @@ declare namespace Reporter$1 {
244
299
  export { type Reporter$1_Reporter as Reporter, Reporter$1_make as make, Reporter$1_send as send, Reporter$1_sendOrElse as sendOrElse };
245
300
  }
246
301
 
247
- type ImplicitReturnArrowFunctionExpression = TSESTree.ArrowFunctionExpression & {
248
- body: TSESTree.Expression;
302
+ type ImplicitReturnArrowFunctionExpression = TSESTree$1.ArrowFunctionExpression & {
303
+ body: TSESTree$1.Expression;
249
304
  };
250
- type ObjectDestructuringVariableDeclarator = TSESTree.VariableDeclarator & {
251
- id: TSESTree.ObjectPattern;
252
- init: TSESTree.Identifier;
305
+ type ObjectDestructuringVariableDeclarator = TSESTree$1.VariableDeclarator & {
306
+ id: TSESTree$1.ObjectPattern;
307
+ init: TSESTree$1.Identifier;
253
308
  };
254
- type DisplayNameAssignmentExpression = TSESTree.AssignmentExpression & {
309
+ type DisplayNameAssignmentExpression = TSESTree$1.AssignmentExpression & {
255
310
  type: "AssignmentExpression";
256
- left: TSESTree.MemberExpression & {
257
- property: TSESTree.Identifier & {
311
+ left: TSESTree$1.MemberExpression & {
312
+ property: TSESTree$1.Identifier & {
258
313
  name: "displayName";
259
314
  };
260
315
  };
261
316
  operator: "=";
262
- right: TSESTree.Literal;
317
+ right: TSESTree$1.Literal;
263
318
  };
264
319
  declare const IMPLICIT_RETURN_ARROW_FUNCTION_EXPRESSION = "ArrowFunctionExpression[body.type!='BlockStatement']";
265
320
  declare const OBJECT_DESTRUCTURING_VARIABLE_DECLARATOR: string;
@@ -275,4 +330,4 @@ declare namespace Selector {
275
330
  export { Selector_DISPLAY_NAME_ASSIGNMENT_EXPRESSION as DISPLAY_NAME_ASSIGNMENT_EXPRESSION, type Selector_DisplayNameAssignmentExpression as DisplayNameAssignmentExpression, Selector_IMPLICIT_RETURN_ARROW_FUNCTION_EXPRESSION as IMPLICIT_RETURN_ARROW_FUNCTION_EXPRESSION, type Selector_ImplicitReturnArrowFunctionExpression as ImplicitReturnArrowFunctionExpression, Selector_OBJECT_DESTRUCTURING_VARIABLE_DECLARATOR as OBJECT_DESTRUCTURING_VARIABLE_DECLARATOR, type Selector_ObjectDestructuringVariableDeclarator as ObjectDestructuringVariableDeclarator };
276
331
  }
277
332
 
278
- export { index$1 as JsxConfig, index as LanguagePreference, RegExp$1 as RegExp, Reporter$1 as Reporter, type RuleContext, type RuleDeclaration, type RuleFeature, type RulePolicy, type RulePreset, type RuleSeverity, Selector };
333
+ export { ContextDetection, index$1 as JsxConfig, index as LanguagePreference, RegExp$1 as RegExp, Reporter$1 as Reporter, type RuleContext, type RuleDeclaration, type RuleFeature, type RulePolicy, type RulePreset, type RuleSeverity, type RuleSuggest, Selector };
package/dist/index.js CHANGED
@@ -1,11 +1,357 @@
1
+ import * as AST from '@eslint-react/ast';
1
2
  import { dual, getOrElseUpdate } from '@eslint-react/eff';
2
- import * as z from '@zod/mini';
3
+ import { z } from 'zod/v4';
3
4
 
5
+ var __create = Object.create;
4
6
  var __defProp = Object.defineProperty;
7
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
8
+ var __getOwnPropNames = Object.getOwnPropertyNames;
9
+ var __getProtoOf = Object.getPrototypeOf;
10
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
11
+ var __commonJS = (cb, mod) => function __require() {
12
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
13
+ };
5
14
  var __export = (target, all) => {
6
15
  for (var name in all)
7
16
  __defProp(target, name, { get: all[name], enumerable: true });
8
17
  };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
27
+ // If the importer is in node compatibility mode or this is not an ESM
28
+ // file that has been converted to a CommonJS file using a Babel-
29
+ // compatible transform (i.e. "__esModule" has not been set), then set
30
+ // "default" to the CommonJS "module.exports" for node compatibility.
31
+ __defProp(target, "default", { value: mod, enumerable: true }) ,
32
+ mod
33
+ ));
34
+
35
+ // ../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js
36
+ var require_ast_spec = __commonJS({
37
+ "../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js"(exports) {
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.AST_TOKEN_TYPES = exports.AST_NODE_TYPES = void 0;
40
+ var AST_NODE_TYPES;
41
+ (function(AST_NODE_TYPES2) {
42
+ AST_NODE_TYPES2["AccessorProperty"] = "AccessorProperty";
43
+ AST_NODE_TYPES2["ArrayExpression"] = "ArrayExpression";
44
+ AST_NODE_TYPES2["ArrayPattern"] = "ArrayPattern";
45
+ AST_NODE_TYPES2["ArrowFunctionExpression"] = "ArrowFunctionExpression";
46
+ AST_NODE_TYPES2["AssignmentExpression"] = "AssignmentExpression";
47
+ AST_NODE_TYPES2["AssignmentPattern"] = "AssignmentPattern";
48
+ AST_NODE_TYPES2["AwaitExpression"] = "AwaitExpression";
49
+ AST_NODE_TYPES2["BinaryExpression"] = "BinaryExpression";
50
+ AST_NODE_TYPES2["BlockStatement"] = "BlockStatement";
51
+ AST_NODE_TYPES2["BreakStatement"] = "BreakStatement";
52
+ AST_NODE_TYPES2["CallExpression"] = "CallExpression";
53
+ AST_NODE_TYPES2["CatchClause"] = "CatchClause";
54
+ AST_NODE_TYPES2["ChainExpression"] = "ChainExpression";
55
+ AST_NODE_TYPES2["ClassBody"] = "ClassBody";
56
+ AST_NODE_TYPES2["ClassDeclaration"] = "ClassDeclaration";
57
+ AST_NODE_TYPES2["ClassExpression"] = "ClassExpression";
58
+ AST_NODE_TYPES2["ConditionalExpression"] = "ConditionalExpression";
59
+ AST_NODE_TYPES2["ContinueStatement"] = "ContinueStatement";
60
+ AST_NODE_TYPES2["DebuggerStatement"] = "DebuggerStatement";
61
+ AST_NODE_TYPES2["Decorator"] = "Decorator";
62
+ AST_NODE_TYPES2["DoWhileStatement"] = "DoWhileStatement";
63
+ AST_NODE_TYPES2["EmptyStatement"] = "EmptyStatement";
64
+ AST_NODE_TYPES2["ExportAllDeclaration"] = "ExportAllDeclaration";
65
+ AST_NODE_TYPES2["ExportDefaultDeclaration"] = "ExportDefaultDeclaration";
66
+ AST_NODE_TYPES2["ExportNamedDeclaration"] = "ExportNamedDeclaration";
67
+ AST_NODE_TYPES2["ExportSpecifier"] = "ExportSpecifier";
68
+ AST_NODE_TYPES2["ExpressionStatement"] = "ExpressionStatement";
69
+ AST_NODE_TYPES2["ForInStatement"] = "ForInStatement";
70
+ AST_NODE_TYPES2["ForOfStatement"] = "ForOfStatement";
71
+ AST_NODE_TYPES2["ForStatement"] = "ForStatement";
72
+ AST_NODE_TYPES2["FunctionDeclaration"] = "FunctionDeclaration";
73
+ AST_NODE_TYPES2["FunctionExpression"] = "FunctionExpression";
74
+ AST_NODE_TYPES2["Identifier"] = "Identifier";
75
+ AST_NODE_TYPES2["IfStatement"] = "IfStatement";
76
+ AST_NODE_TYPES2["ImportAttribute"] = "ImportAttribute";
77
+ AST_NODE_TYPES2["ImportDeclaration"] = "ImportDeclaration";
78
+ AST_NODE_TYPES2["ImportDefaultSpecifier"] = "ImportDefaultSpecifier";
79
+ AST_NODE_TYPES2["ImportExpression"] = "ImportExpression";
80
+ AST_NODE_TYPES2["ImportNamespaceSpecifier"] = "ImportNamespaceSpecifier";
81
+ AST_NODE_TYPES2["ImportSpecifier"] = "ImportSpecifier";
82
+ AST_NODE_TYPES2["JSXAttribute"] = "JSXAttribute";
83
+ AST_NODE_TYPES2["JSXClosingElement"] = "JSXClosingElement";
84
+ AST_NODE_TYPES2["JSXClosingFragment"] = "JSXClosingFragment";
85
+ AST_NODE_TYPES2["JSXElement"] = "JSXElement";
86
+ AST_NODE_TYPES2["JSXEmptyExpression"] = "JSXEmptyExpression";
87
+ AST_NODE_TYPES2["JSXExpressionContainer"] = "JSXExpressionContainer";
88
+ AST_NODE_TYPES2["JSXFragment"] = "JSXFragment";
89
+ AST_NODE_TYPES2["JSXIdentifier"] = "JSXIdentifier";
90
+ AST_NODE_TYPES2["JSXMemberExpression"] = "JSXMemberExpression";
91
+ AST_NODE_TYPES2["JSXNamespacedName"] = "JSXNamespacedName";
92
+ AST_NODE_TYPES2["JSXOpeningElement"] = "JSXOpeningElement";
93
+ AST_NODE_TYPES2["JSXOpeningFragment"] = "JSXOpeningFragment";
94
+ AST_NODE_TYPES2["JSXSpreadAttribute"] = "JSXSpreadAttribute";
95
+ AST_NODE_TYPES2["JSXSpreadChild"] = "JSXSpreadChild";
96
+ AST_NODE_TYPES2["JSXText"] = "JSXText";
97
+ AST_NODE_TYPES2["LabeledStatement"] = "LabeledStatement";
98
+ AST_NODE_TYPES2["Literal"] = "Literal";
99
+ AST_NODE_TYPES2["LogicalExpression"] = "LogicalExpression";
100
+ AST_NODE_TYPES2["MemberExpression"] = "MemberExpression";
101
+ AST_NODE_TYPES2["MetaProperty"] = "MetaProperty";
102
+ AST_NODE_TYPES2["MethodDefinition"] = "MethodDefinition";
103
+ AST_NODE_TYPES2["NewExpression"] = "NewExpression";
104
+ AST_NODE_TYPES2["ObjectExpression"] = "ObjectExpression";
105
+ AST_NODE_TYPES2["ObjectPattern"] = "ObjectPattern";
106
+ AST_NODE_TYPES2["PrivateIdentifier"] = "PrivateIdentifier";
107
+ AST_NODE_TYPES2["Program"] = "Program";
108
+ AST_NODE_TYPES2["Property"] = "Property";
109
+ AST_NODE_TYPES2["PropertyDefinition"] = "PropertyDefinition";
110
+ AST_NODE_TYPES2["RestElement"] = "RestElement";
111
+ AST_NODE_TYPES2["ReturnStatement"] = "ReturnStatement";
112
+ AST_NODE_TYPES2["SequenceExpression"] = "SequenceExpression";
113
+ AST_NODE_TYPES2["SpreadElement"] = "SpreadElement";
114
+ AST_NODE_TYPES2["StaticBlock"] = "StaticBlock";
115
+ AST_NODE_TYPES2["Super"] = "Super";
116
+ AST_NODE_TYPES2["SwitchCase"] = "SwitchCase";
117
+ AST_NODE_TYPES2["SwitchStatement"] = "SwitchStatement";
118
+ AST_NODE_TYPES2["TaggedTemplateExpression"] = "TaggedTemplateExpression";
119
+ AST_NODE_TYPES2["TemplateElement"] = "TemplateElement";
120
+ AST_NODE_TYPES2["TemplateLiteral"] = "TemplateLiteral";
121
+ AST_NODE_TYPES2["ThisExpression"] = "ThisExpression";
122
+ AST_NODE_TYPES2["ThrowStatement"] = "ThrowStatement";
123
+ AST_NODE_TYPES2["TryStatement"] = "TryStatement";
124
+ AST_NODE_TYPES2["UnaryExpression"] = "UnaryExpression";
125
+ AST_NODE_TYPES2["UpdateExpression"] = "UpdateExpression";
126
+ AST_NODE_TYPES2["VariableDeclaration"] = "VariableDeclaration";
127
+ AST_NODE_TYPES2["VariableDeclarator"] = "VariableDeclarator";
128
+ AST_NODE_TYPES2["WhileStatement"] = "WhileStatement";
129
+ AST_NODE_TYPES2["WithStatement"] = "WithStatement";
130
+ AST_NODE_TYPES2["YieldExpression"] = "YieldExpression";
131
+ AST_NODE_TYPES2["TSAbstractAccessorProperty"] = "TSAbstractAccessorProperty";
132
+ AST_NODE_TYPES2["TSAbstractKeyword"] = "TSAbstractKeyword";
133
+ AST_NODE_TYPES2["TSAbstractMethodDefinition"] = "TSAbstractMethodDefinition";
134
+ AST_NODE_TYPES2["TSAbstractPropertyDefinition"] = "TSAbstractPropertyDefinition";
135
+ AST_NODE_TYPES2["TSAnyKeyword"] = "TSAnyKeyword";
136
+ AST_NODE_TYPES2["TSArrayType"] = "TSArrayType";
137
+ AST_NODE_TYPES2["TSAsExpression"] = "TSAsExpression";
138
+ AST_NODE_TYPES2["TSAsyncKeyword"] = "TSAsyncKeyword";
139
+ AST_NODE_TYPES2["TSBigIntKeyword"] = "TSBigIntKeyword";
140
+ AST_NODE_TYPES2["TSBooleanKeyword"] = "TSBooleanKeyword";
141
+ AST_NODE_TYPES2["TSCallSignatureDeclaration"] = "TSCallSignatureDeclaration";
142
+ AST_NODE_TYPES2["TSClassImplements"] = "TSClassImplements";
143
+ AST_NODE_TYPES2["TSConditionalType"] = "TSConditionalType";
144
+ AST_NODE_TYPES2["TSConstructorType"] = "TSConstructorType";
145
+ AST_NODE_TYPES2["TSConstructSignatureDeclaration"] = "TSConstructSignatureDeclaration";
146
+ AST_NODE_TYPES2["TSDeclareFunction"] = "TSDeclareFunction";
147
+ AST_NODE_TYPES2["TSDeclareKeyword"] = "TSDeclareKeyword";
148
+ AST_NODE_TYPES2["TSEmptyBodyFunctionExpression"] = "TSEmptyBodyFunctionExpression";
149
+ AST_NODE_TYPES2["TSEnumBody"] = "TSEnumBody";
150
+ AST_NODE_TYPES2["TSEnumDeclaration"] = "TSEnumDeclaration";
151
+ AST_NODE_TYPES2["TSEnumMember"] = "TSEnumMember";
152
+ AST_NODE_TYPES2["TSExportAssignment"] = "TSExportAssignment";
153
+ AST_NODE_TYPES2["TSExportKeyword"] = "TSExportKeyword";
154
+ AST_NODE_TYPES2["TSExternalModuleReference"] = "TSExternalModuleReference";
155
+ AST_NODE_TYPES2["TSFunctionType"] = "TSFunctionType";
156
+ AST_NODE_TYPES2["TSImportEqualsDeclaration"] = "TSImportEqualsDeclaration";
157
+ AST_NODE_TYPES2["TSImportType"] = "TSImportType";
158
+ AST_NODE_TYPES2["TSIndexedAccessType"] = "TSIndexedAccessType";
159
+ AST_NODE_TYPES2["TSIndexSignature"] = "TSIndexSignature";
160
+ AST_NODE_TYPES2["TSInferType"] = "TSInferType";
161
+ AST_NODE_TYPES2["TSInstantiationExpression"] = "TSInstantiationExpression";
162
+ AST_NODE_TYPES2["TSInterfaceBody"] = "TSInterfaceBody";
163
+ AST_NODE_TYPES2["TSInterfaceDeclaration"] = "TSInterfaceDeclaration";
164
+ AST_NODE_TYPES2["TSInterfaceHeritage"] = "TSInterfaceHeritage";
165
+ AST_NODE_TYPES2["TSIntersectionType"] = "TSIntersectionType";
166
+ AST_NODE_TYPES2["TSIntrinsicKeyword"] = "TSIntrinsicKeyword";
167
+ AST_NODE_TYPES2["TSLiteralType"] = "TSLiteralType";
168
+ AST_NODE_TYPES2["TSMappedType"] = "TSMappedType";
169
+ AST_NODE_TYPES2["TSMethodSignature"] = "TSMethodSignature";
170
+ AST_NODE_TYPES2["TSModuleBlock"] = "TSModuleBlock";
171
+ AST_NODE_TYPES2["TSModuleDeclaration"] = "TSModuleDeclaration";
172
+ AST_NODE_TYPES2["TSNamedTupleMember"] = "TSNamedTupleMember";
173
+ AST_NODE_TYPES2["TSNamespaceExportDeclaration"] = "TSNamespaceExportDeclaration";
174
+ AST_NODE_TYPES2["TSNeverKeyword"] = "TSNeverKeyword";
175
+ AST_NODE_TYPES2["TSNonNullExpression"] = "TSNonNullExpression";
176
+ AST_NODE_TYPES2["TSNullKeyword"] = "TSNullKeyword";
177
+ AST_NODE_TYPES2["TSNumberKeyword"] = "TSNumberKeyword";
178
+ AST_NODE_TYPES2["TSObjectKeyword"] = "TSObjectKeyword";
179
+ AST_NODE_TYPES2["TSOptionalType"] = "TSOptionalType";
180
+ AST_NODE_TYPES2["TSParameterProperty"] = "TSParameterProperty";
181
+ AST_NODE_TYPES2["TSPrivateKeyword"] = "TSPrivateKeyword";
182
+ AST_NODE_TYPES2["TSPropertySignature"] = "TSPropertySignature";
183
+ AST_NODE_TYPES2["TSProtectedKeyword"] = "TSProtectedKeyword";
184
+ AST_NODE_TYPES2["TSPublicKeyword"] = "TSPublicKeyword";
185
+ AST_NODE_TYPES2["TSQualifiedName"] = "TSQualifiedName";
186
+ AST_NODE_TYPES2["TSReadonlyKeyword"] = "TSReadonlyKeyword";
187
+ AST_NODE_TYPES2["TSRestType"] = "TSRestType";
188
+ AST_NODE_TYPES2["TSSatisfiesExpression"] = "TSSatisfiesExpression";
189
+ AST_NODE_TYPES2["TSStaticKeyword"] = "TSStaticKeyword";
190
+ AST_NODE_TYPES2["TSStringKeyword"] = "TSStringKeyword";
191
+ AST_NODE_TYPES2["TSSymbolKeyword"] = "TSSymbolKeyword";
192
+ AST_NODE_TYPES2["TSTemplateLiteralType"] = "TSTemplateLiteralType";
193
+ AST_NODE_TYPES2["TSThisType"] = "TSThisType";
194
+ AST_NODE_TYPES2["TSTupleType"] = "TSTupleType";
195
+ AST_NODE_TYPES2["TSTypeAliasDeclaration"] = "TSTypeAliasDeclaration";
196
+ AST_NODE_TYPES2["TSTypeAnnotation"] = "TSTypeAnnotation";
197
+ AST_NODE_TYPES2["TSTypeAssertion"] = "TSTypeAssertion";
198
+ AST_NODE_TYPES2["TSTypeLiteral"] = "TSTypeLiteral";
199
+ AST_NODE_TYPES2["TSTypeOperator"] = "TSTypeOperator";
200
+ AST_NODE_TYPES2["TSTypeParameter"] = "TSTypeParameter";
201
+ AST_NODE_TYPES2["TSTypeParameterDeclaration"] = "TSTypeParameterDeclaration";
202
+ AST_NODE_TYPES2["TSTypeParameterInstantiation"] = "TSTypeParameterInstantiation";
203
+ AST_NODE_TYPES2["TSTypePredicate"] = "TSTypePredicate";
204
+ AST_NODE_TYPES2["TSTypeQuery"] = "TSTypeQuery";
205
+ AST_NODE_TYPES2["TSTypeReference"] = "TSTypeReference";
206
+ AST_NODE_TYPES2["TSUndefinedKeyword"] = "TSUndefinedKeyword";
207
+ AST_NODE_TYPES2["TSUnionType"] = "TSUnionType";
208
+ AST_NODE_TYPES2["TSUnknownKeyword"] = "TSUnknownKeyword";
209
+ AST_NODE_TYPES2["TSVoidKeyword"] = "TSVoidKeyword";
210
+ })(AST_NODE_TYPES || (exports.AST_NODE_TYPES = AST_NODE_TYPES = {}));
211
+ var AST_TOKEN_TYPES;
212
+ (function(AST_TOKEN_TYPES2) {
213
+ AST_TOKEN_TYPES2["Boolean"] = "Boolean";
214
+ AST_TOKEN_TYPES2["Identifier"] = "Identifier";
215
+ AST_TOKEN_TYPES2["JSXIdentifier"] = "JSXIdentifier";
216
+ AST_TOKEN_TYPES2["PrivateIdentifier"] = "PrivateIdentifier";
217
+ AST_TOKEN_TYPES2["JSXText"] = "JSXText";
218
+ AST_TOKEN_TYPES2["Keyword"] = "Keyword";
219
+ AST_TOKEN_TYPES2["Null"] = "Null";
220
+ AST_TOKEN_TYPES2["Numeric"] = "Numeric";
221
+ AST_TOKEN_TYPES2["Punctuator"] = "Punctuator";
222
+ AST_TOKEN_TYPES2["RegularExpression"] = "RegularExpression";
223
+ AST_TOKEN_TYPES2["String"] = "String";
224
+ AST_TOKEN_TYPES2["Template"] = "Template";
225
+ AST_TOKEN_TYPES2["Block"] = "Block";
226
+ AST_TOKEN_TYPES2["Line"] = "Line";
227
+ })(AST_TOKEN_TYPES || (exports.AST_TOKEN_TYPES = AST_TOKEN_TYPES = {}));
228
+ }
229
+ });
230
+
231
+ // ../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/lib.js
232
+ var require_lib = __commonJS({
233
+ "../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/lib.js"(exports) {
234
+ Object.defineProperty(exports, "__esModule", { value: true });
235
+ }
236
+ });
237
+
238
+ // ../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/parser-options.js
239
+ var require_parser_options = __commonJS({
240
+ "../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/parser-options.js"(exports) {
241
+ Object.defineProperty(exports, "__esModule", { value: true });
242
+ }
243
+ });
244
+
245
+ // ../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/ts-estree.js
246
+ var require_ts_estree = __commonJS({
247
+ "../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/ts-estree.js"(exports) {
248
+ var __createBinding = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
249
+ if (k2 === void 0) k2 = k;
250
+ var desc = Object.getOwnPropertyDescriptor(m, k);
251
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
252
+ desc = { enumerable: true, get: function() {
253
+ return m[k];
254
+ } };
255
+ }
256
+ Object.defineProperty(o, k2, desc);
257
+ }) : (function(o, m, k, k2) {
258
+ if (k2 === void 0) k2 = k;
259
+ o[k2] = m[k];
260
+ }));
261
+ var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? (function(o, v) {
262
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
263
+ }) : function(o, v) {
264
+ o["default"] = v;
265
+ });
266
+ var __importStar = exports && exports.__importStar || /* @__PURE__ */ (function() {
267
+ var ownKeys = function(o) {
268
+ ownKeys = Object.getOwnPropertyNames || function(o2) {
269
+ var ar = [];
270
+ for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k;
271
+ return ar;
272
+ };
273
+ return ownKeys(o);
274
+ };
275
+ return function(mod) {
276
+ if (mod && mod.__esModule) return mod;
277
+ var result = {};
278
+ if (mod != null) {
279
+ for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
280
+ }
281
+ __setModuleDefault(result, mod);
282
+ return result;
283
+ };
284
+ })();
285
+ Object.defineProperty(exports, "__esModule", { value: true });
286
+ exports.TSESTree = void 0;
287
+ exports.TSESTree = __importStar(require_ast_spec());
288
+ }
289
+ });
290
+
291
+ // ../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/index.js
292
+ var require_dist = __commonJS({
293
+ "../../../node_modules/.pnpm/@typescript-eslint+types@8.40.0/node_modules/@typescript-eslint/types/dist/index.js"(exports) {
294
+ var __createBinding = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
295
+ if (k2 === void 0) k2 = k;
296
+ var desc = Object.getOwnPropertyDescriptor(m, k);
297
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
298
+ desc = { enumerable: true, get: function() {
299
+ return m[k];
300
+ } };
301
+ }
302
+ Object.defineProperty(o, k2, desc);
303
+ }) : (function(o, m, k, k2) {
304
+ if (k2 === void 0) k2 = k;
305
+ o[k2] = m[k];
306
+ }));
307
+ var __exportStar = exports && exports.__exportStar || function(m, exports2) {
308
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports2, p)) __createBinding(exports2, m, p);
309
+ };
310
+ Object.defineProperty(exports, "__esModule", { value: true });
311
+ exports.AST_TOKEN_TYPES = exports.AST_NODE_TYPES = void 0;
312
+ var ast_spec_1 = require_ast_spec();
313
+ Object.defineProperty(exports, "AST_NODE_TYPES", { enumerable: true, get: function() {
314
+ return ast_spec_1.AST_NODE_TYPES;
315
+ } });
316
+ Object.defineProperty(exports, "AST_TOKEN_TYPES", { enumerable: true, get: function() {
317
+ return ast_spec_1.AST_TOKEN_TYPES;
318
+ } });
319
+ __exportStar(require_lib(), exports);
320
+ __exportStar(require_parser_options(), exports);
321
+ __exportStar(require_ts_estree(), exports);
322
+ }
323
+ });
324
+
325
+ // src/ContextDetection.ts
326
+ var ContextDetection_exports = {};
327
+ __export(ContextDetection_exports, {
328
+ isProcessEnvNodeEnv: () => isProcessEnvNodeEnv,
329
+ isProcessEnvNodeEnvCompare: () => isProcessEnvNodeEnvCompare,
330
+ isViMock: () => isViMock,
331
+ isViMockCallback: () => isViMockCallback
332
+ });
333
+ var import_types = __toESM(require_dist());
334
+ function isProcessEnvNodeEnv(node) {
335
+ return node != null && node.type === import_types.AST_NODE_TYPES.MemberExpression && node.object.type === import_types.AST_NODE_TYPES.MemberExpression && node.object.object.type === import_types.AST_NODE_TYPES.Identifier && node.object.object.name === "process" && node.object.property.type === import_types.AST_NODE_TYPES.Identifier && node.object.property.name === "env" && node.property.type === import_types.AST_NODE_TYPES.Identifier && node.property.name === "NODE_ENV";
336
+ }
337
+ function isProcessEnvNodeEnvCompare(node, operator, value) {
338
+ if (node == null) return false;
339
+ if (node.type !== import_types.AST_NODE_TYPES.BinaryExpression) return false;
340
+ if (node.operator !== operator) return false;
341
+ if (isProcessEnvNodeEnv(node.left) && AST.isLiteral(node.right, "string")) {
342
+ return node.right.value === value;
343
+ }
344
+ if (AST.isLiteral(node.left, "string") && isProcessEnvNodeEnv(node.right)) {
345
+ return node.left.value === value;
346
+ }
347
+ return false;
348
+ }
349
+ function isViMock(node) {
350
+ return node != null && node.type === import_types.AST_NODE_TYPES.MemberExpression && node.object.type === import_types.AST_NODE_TYPES.Identifier && node.object.name === "vi" && node.property.type === import_types.AST_NODE_TYPES.Identifier && node.property.name === "mock";
351
+ }
352
+ function isViMockCallback(node) {
353
+ return node != null && AST.isFunction(node) && node.parent.type === import_types.AST_NODE_TYPES.CallExpression && isViMock(node.parent.callee) && node.parent.arguments[1] === node;
354
+ }
9
355
 
10
356
  // src/JsxConfig/index.ts
11
357
  var JsxConfig_exports = {};
@@ -64,7 +410,7 @@ function toRegExp(string) {
64
410
  return { test: (s) => s === string };
65
411
  }
66
412
  function isRegExp(string) {
67
- return Boolean(REGEXP_STR.test(string));
413
+ return REGEXP_STR.test(string);
68
414
  }
69
415
 
70
416
  // src/JsxConfig/JsxConfig.ts
@@ -118,6 +464,7 @@ function getFromAnnotation(context) {
118
464
  var LanguagePreference_exports = {};
119
465
  __export(LanguagePreference_exports, {
120
466
  LanguagePreferenceSchema: () => LanguagePreferenceSchema,
467
+ defaultLanguagePreference: () => defaultLanguagePreference,
121
468
  getFromContext: () => getFromContext2,
122
469
  make: () => make2
123
470
  });
@@ -133,6 +480,7 @@ function make2() {
133
480
  trailingCommas: "all"
134
481
  };
135
482
  }
483
+ var defaultLanguagePreference = make2();
136
484
  function getFromContext2() {
137
485
  throw new Error("getFromContext is not implemented");
138
486
  }
@@ -214,4 +562,4 @@ var DISPLAY_NAME_ASSIGNMENT_EXPRESSION = [
214
562
  "[left.property.name='displayName']"
215
563
  ].join("");
216
564
 
217
- export { JsxConfig_exports as JsxConfig, LanguagePreference_exports as LanguagePreference, RegExp_exports as RegExp, Reporter_exports as Reporter, Selector_exports as Selector };
565
+ export { ContextDetection_exports as ContextDetection, JsxConfig_exports as JsxConfig, LanguagePreference_exports as LanguagePreference, RegExp_exports as RegExp, Reporter_exports as Reporter, Selector_exports as Selector };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eslint-react/kit",
3
- "version": "2.0.0-next.14",
3
+ "version": "2.0.0-next.140",
4
4
  "description": "ESLint React's plugin kit for building plugins and rules.",
5
5
  "homepage": "https://github.com/Rel1cx/eslint-react",
6
6
  "bugs": {
@@ -27,19 +27,19 @@
27
27
  "./package.json"
28
28
  ],
29
29
  "dependencies": {
30
- "@typescript-eslint/utils": "^8.31.1",
31
- "@zod/mini": "^4.0.0-beta.20250503T014749",
32
- "ts-pattern": "^5.7.0",
33
- "@eslint-react/eff": "2.0.0-next.14"
30
+ "@typescript-eslint/utils": "^8.40.0",
31
+ "ts-pattern": "^5.8.0",
32
+ "zod": "^4.0.17",
33
+ "@eslint-react/ast": "2.0.0-next.140",
34
+ "@eslint-react/eff": "2.0.0-next.140"
34
35
  },
35
36
  "devDependencies": {
36
- "@tsconfig/node22": "^22.0.1",
37
- "tsup": "^8.4.0",
38
- "type-fest": "^4.40.1",
37
+ "@tsconfig/node22": "^22.0.2",
38
+ "tsup": "^8.5.0",
39
+ "type-fest": "^4.41.0",
39
40
  "@local/configs": "0.0.0"
40
41
  },
41
42
  "engines": {
42
- "bun": ">=1.0.15",
43
43
  "node": ">=20.19.0"
44
44
  },
45
45
  "scripts": {