@lincy/eslint-config 7.0.0 → 7.1.2

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.cjs CHANGED
@@ -26,33 +26,33 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
26
26
  //#endregion
27
27
  let eslint_flat_config_utils = require("eslint-flat-config-utils");
28
28
  let node_process = require("node:process");
29
- node_process = __toESM(node_process);
29
+ node_process = __toESM(node_process, 1);
30
30
  let node_fs_promises = require("node:fs/promises");
31
- node_fs_promises = __toESM(node_fs_promises);
31
+ node_fs_promises = __toESM(node_fs_promises, 1);
32
32
  let node_url = require("node:url");
33
33
  let node_fs = require("node:fs");
34
- node_fs = __toESM(node_fs);
34
+ node_fs = __toESM(node_fs, 1);
35
35
  let node_path = require("node:path");
36
- node_path = __toESM(node_path);
36
+ node_path = __toESM(node_path, 1);
37
37
  let local_pkg = require("local-pkg");
38
38
  let _e18e_eslint_plugin = require("@e18e/eslint-plugin");
39
- _e18e_eslint_plugin = __toESM(_e18e_eslint_plugin);
39
+ _e18e_eslint_plugin = __toESM(_e18e_eslint_plugin, 1);
40
40
  let _eslint_community_eslint_plugin_eslint_comments = require("@eslint-community/eslint-plugin-eslint-comments");
41
- _eslint_community_eslint_plugin_eslint_comments = __toESM(_eslint_community_eslint_plugin_eslint_comments);
41
+ _eslint_community_eslint_plugin_eslint_comments = __toESM(_eslint_community_eslint_plugin_eslint_comments, 1);
42
42
  let eslint_plugin_antfu = require("eslint-plugin-antfu");
43
- eslint_plugin_antfu = __toESM(eslint_plugin_antfu);
43
+ eslint_plugin_antfu = __toESM(eslint_plugin_antfu, 1);
44
44
  let eslint_plugin_import_lite = require("eslint-plugin-import-lite");
45
- eslint_plugin_import_lite = __toESM(eslint_plugin_import_lite);
45
+ eslint_plugin_import_lite = __toESM(eslint_plugin_import_lite, 1);
46
46
  let eslint_plugin_n = require("eslint-plugin-n");
47
- eslint_plugin_n = __toESM(eslint_plugin_n);
47
+ eslint_plugin_n = __toESM(eslint_plugin_n, 1);
48
48
  let eslint_plugin_perfectionist = require("eslint-plugin-perfectionist");
49
- eslint_plugin_perfectionist = __toESM(eslint_plugin_perfectionist);
49
+ eslint_plugin_perfectionist = __toESM(eslint_plugin_perfectionist, 1);
50
50
  let eslint_plugin_unicorn = require("eslint-plugin-unicorn");
51
- eslint_plugin_unicorn = __toESM(eslint_plugin_unicorn);
51
+ eslint_plugin_unicorn = __toESM(eslint_plugin_unicorn, 1);
52
52
  let eslint_plugin_unused_imports = require("eslint-plugin-unused-imports");
53
- eslint_plugin_unused_imports = __toESM(eslint_plugin_unused_imports);
53
+ eslint_plugin_unused_imports = __toESM(eslint_plugin_unused_imports, 1);
54
54
  let globals = require("globals");
55
- globals = __toESM(globals);
55
+ globals = __toESM(globals, 1);
56
56
  let eslint_merge_processors = require("eslint-merge-processors");
57
57
  let eslint_plugin_regexp = require("eslint-plugin-regexp");
58
58
  //#region node_modules/.pnpm/find-up-simple@1.0.1/node_modules/find-up-simple/index.js
@@ -121,7 +121,6 @@ const GLOB_JSON5 = "**/*.json5";
121
121
  const GLOB_JSONC = "**/*.jsonc";
122
122
  const GLOB_MARKDOWN = "**/*.md";
123
123
  const GLOB_MARKDOWN_IN_MARKDOWN = "**/*.md/*.md";
124
- const GLOB_SVELTE = "**/*.svelte";
125
124
  const GLOB_VUE = "**/*.vue";
126
125
  const GLOB_YAML = "**/*.y?(a)ml";
127
126
  const GLOB_TOML = "**/*.toml";
@@ -133,7 +132,9 @@ const GLOB_MARKDOWN_CODE = `${GLOB_MARKDOWN}/${GLOB_SRC}`;
133
132
  const GLOB_TESTS = [
134
133
  `**/__tests__/**/*.${GLOB_SRC_EXT}`,
135
134
  `**/*.spec.${GLOB_SRC_EXT}`,
136
- `**/*.test.${GLOB_SRC_EXT}`
135
+ `**/*.test.${GLOB_SRC_EXT}`,
136
+ `**/*.bench.${GLOB_SRC_EXT}`,
137
+ `**/*.benchmark.${GLOB_SRC_EXT}`
137
138
  ];
138
139
  const GLOB_ALL_SRC = [
139
140
  GLOB_SRC,
@@ -141,9 +142,9 @@ const GLOB_ALL_SRC = [
141
142
  GLOB_JSON,
142
143
  GLOB_JSON5,
143
144
  GLOB_MARKDOWN,
144
- GLOB_SVELTE,
145
145
  GLOB_VUE,
146
146
  GLOB_YAML,
147
+ GLOB_XML,
147
148
  GLOB_HTML
148
149
  ];
149
150
  const GLOB_EXCLUDE = [
@@ -152,12 +153,13 @@ const GLOB_EXCLUDE = [
152
153
  "**/package-lock.json",
153
154
  "**/yarn.lock",
154
155
  "**/pnpm-lock.yaml",
156
+ "**/bun.lockb",
155
157
  "**/output",
156
158
  "**/coverage",
157
- "**/tmp",
158
159
  "**/temp",
159
- "**/.tmp",
160
160
  "**/.temp",
161
+ "**/tmp",
162
+ "**/.tmp",
161
163
  "**/.history",
162
164
  "**/.vitepress/cache",
163
165
  "**/.nuxt",
@@ -165,16 +167,21 @@ const GLOB_EXCLUDE = [
165
167
  "**/.vercel",
166
168
  "**/.changeset",
167
169
  "**/.idea",
170
+ "**/.cache",
168
171
  "**/.output",
169
172
  "**/.vite-inspect",
170
173
  "**/.yarn",
171
- "**/vite.config.*.timestamp-*",
172
174
  "**/CHANGELOG*.md",
173
- "**/*.min.*",
174
175
  "**/LICENSE*",
176
+ "**/*.min.*",
175
177
  "**/__snapshots__",
178
+ "**/vite.config.*.timestamp-*",
176
179
  "**/auto-import?(s).d.ts",
177
- "**/components.d.ts"
180
+ "**/components.d.ts",
181
+ "**/.context",
182
+ "**/.claude",
183
+ "**/.agents",
184
+ "**/.*/skills"
178
185
  ];
179
186
  //#endregion
180
187
  //#region src/configs/disables.ts
@@ -243,6 +250,9 @@ async function e18e(options = {}) {
243
250
  ...modernization ? { ...configs.modernization.rules } : {},
244
251
  ...moduleReplacements ? { ...configs.moduleReplacements.rules } : {},
245
252
  ...performanceImprovements ? { ...configs.performanceImprovements.rules } : {},
253
+ ...type === "lib" ? {} : { "e18e/prefer-static-regex": "off" },
254
+ "e18e/prefer-array-at": "off",
255
+ "e18e/prefer-array-from-map": "off",
246
256
  "e18e/prefer-array-to-reversed": "off",
247
257
  "e18e/prefer-array-to-sorted": "off",
248
258
  "e18e/prefer-array-to-spliced": "off",
@@ -2252,7 +2262,6 @@ exports.GLOB_SCSS = GLOB_SCSS;
2252
2262
  exports.GLOB_SRC = GLOB_SRC;
2253
2263
  exports.GLOB_SRC_EXT = GLOB_SRC_EXT;
2254
2264
  exports.GLOB_STYLE = GLOB_STYLE;
2255
- exports.GLOB_SVELTE = GLOB_SVELTE;
2256
2265
  exports.GLOB_SVG = GLOB_SVG;
2257
2266
  exports.GLOB_TESTS = GLOB_TESTS;
2258
2267
  exports.GLOB_TOML = GLOB_TOML;
package/dist/index.d.cts CHANGED
@@ -4428,7 +4428,7 @@ interface RuleOptions {
4428
4428
  */
4429
4429
  'test/no-mocks-import'?: Linter.RuleEntry<[]>;
4430
4430
  /**
4431
- * disallow .only blocks in tests
4431
+ * disallow focused/only tests
4432
4432
  * @see https://github.com/levibuzolic/eslint-plugin-no-only-tests
4433
4433
  */
4434
4434
  'test/no-only-tests'?: Linter.RuleEntry<TestNoOnlyTests>;
@@ -6827,7 +6827,7 @@ interface RuleOptions {
6827
6827
  * disallow object, array, and function literals in template
6828
6828
  * @see https://eslint.vuejs.org/rules/no-literals-in-template.html
6829
6829
  */
6830
- 'vue/no-literals-in-template'?: Linter.RuleEntry<[]>;
6830
+ 'vue/no-literals-in-template'?: Linter.RuleEntry<VueNoLiteralsInTemplate>;
6831
6831
  /**
6832
6832
  * disallow unnecessary `<template>`
6833
6833
  * @see https://eslint.vuejs.org/rules/no-lone-template.html
@@ -7220,6 +7220,11 @@ interface RuleOptions {
7220
7220
  * @see https://eslint.vuejs.org/rules/prefer-separate-static-class.html
7221
7221
  */
7222
7222
  'vue/prefer-separate-static-class'?: Linter.RuleEntry<[]>;
7223
+ /**
7224
+ * enforce passing a single argument to custom event emissions
7225
+ * @see https://eslint.vuejs.org/rules/prefer-single-event-payload.html
7226
+ */
7227
+ 'vue/prefer-single-event-payload'?: Linter.RuleEntry<[]>;
7223
7228
  /**
7224
7229
  * Require template literals instead of string concatenation in `<template>`
7225
7230
  * @see https://eslint.vuejs.org/rules/prefer-template.html
@@ -7235,6 +7240,11 @@ interface RuleOptions {
7235
7240
  * @see https://eslint.vuejs.org/rules/prefer-use-template-ref.html
7236
7241
  */
7237
7242
  'vue/prefer-use-template-ref'?: Linter.RuleEntry<[]>;
7243
+ /**
7244
+ * enforce using `v-model` instead of `:prop`/`@update:prop` pair
7245
+ * @see https://eslint.vuejs.org/rules/prefer-v-model.html
7246
+ */
7247
+ 'vue/prefer-v-model'?: Linter.RuleEntry<[]>;
7238
7248
  /**
7239
7249
  * enforce specific casing for the Prop name in Vue components
7240
7250
  * @see https://eslint.vuejs.org/rules/prop-name-casing.html
@@ -10328,6 +10338,7 @@ type PerfectionistSortClasses = {
10328
10338
  matchesAstSelector?: string;
10329
10339
  };
10330
10340
  useExperimentalDependencyDetection?: boolean;
10341
+ newlinesBetweenOverloadSignatures?: ("ignore" | number);
10331
10342
  ignoreCallbackDependenciesPatterns?: (({
10332
10343
  pattern: string;
10333
10344
  flags?: string;
@@ -11691,6 +11702,7 @@ type PerfectionistSortModules = [] | [{
11691
11702
  })[];
11692
11703
  newlinesBetween?: ("ignore" | number);
11693
11704
  useExperimentalDependencyDetection?: boolean;
11705
+ newlinesBetweenOverloadSignatures?: ("ignore" | number);
11694
11706
  partitionByComment?: (boolean | (({
11695
11707
  pattern: string;
11696
11708
  flags?: string;
@@ -16115,6 +16127,9 @@ type VueNoIrregularWhitespace = [] | [{
16115
16127
  skipRegExps?: boolean;
16116
16128
  skipHTMLAttributeValues?: boolean;
16117
16129
  skipHTMLTextContents?: boolean;
16130
+ }]; // ----- vue/no-literals-in-template -----
16131
+ type VueNoLiteralsInTemplate = [] | [{
16132
+ ignores?: string[];
16118
16133
  }]; // ----- vue/no-lone-template -----
16119
16134
  type VueNoLoneTemplate = [] | [{
16120
16135
  ignoreAccessible?: boolean;
@@ -16269,7 +16284,7 @@ type VueNoUnusedComponents = [] | [{
16269
16284
  ignoreWhenBindingPresent?: boolean;
16270
16285
  }]; // ----- vue/no-unused-properties -----
16271
16286
  type VueNoUnusedProperties = [] | [{
16272
- groups?: ("props" | "data" | "asyncData" | "computed" | "methods" | "setup")[];
16287
+ groups?: ("props" | "data" | "asyncData" | "computed" | "methods" | "setup" | "inject")[];
16273
16288
  deepData?: boolean;
16274
16289
  ignorePublicMembers?: boolean;
16275
16290
  unreferencedOptions?: ("unknownMemberAsUnreferenced" | "returnAsUnreferenced")[];
@@ -17395,7 +17410,6 @@ declare const GLOB_JSON5 = "**/*.json5";
17395
17410
  declare const GLOB_JSONC = "**/*.jsonc";
17396
17411
  declare const GLOB_MARKDOWN = "**/*.md";
17397
17412
  declare const GLOB_MARKDOWN_IN_MARKDOWN = "**/*.md/*.md";
17398
- declare const GLOB_SVELTE = "**/*.svelte";
17399
17413
  declare const GLOB_VUE = "**/*.vue";
17400
17414
  declare const GLOB_YAML = "**/*.y?(a)ml";
17401
17415
  declare const GLOB_TOML = "**/*.toml";
@@ -17451,4 +17465,4 @@ declare function ensurePackages(packages: (string | undefined)[]): Promise<void>
17451
17465
  declare function isInEditorEnv(): boolean;
17452
17466
  declare function isInGitHooksOrLintStaged(): boolean;
17453
17467
  //#endregion
17454
- export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsE18e, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIgnores, OptionsIsInEditor, OptionsMarkdown, OptionsOverrides, OptionsPnpm, OptionsProjectType, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, type RuleOptions, Rules, StylisticConfig, StylisticConfigDefaults, TypedFlatConfigItem, combine, comments, lincy as default, lincy, defaultPluginRenaming, disables, e18e, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
17468
+ export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsE18e, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIgnores, OptionsIsInEditor, OptionsMarkdown, OptionsOverrides, OptionsPnpm, OptionsProjectType, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, type RuleOptions, Rules, StylisticConfig, StylisticConfigDefaults, TypedFlatConfigItem, combine, comments, lincy as default, lincy, defaultPluginRenaming, disables, e18e, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
package/dist/index.d.mts CHANGED
@@ -4428,7 +4428,7 @@ interface RuleOptions {
4428
4428
  */
4429
4429
  'test/no-mocks-import'?: Linter.RuleEntry<[]>;
4430
4430
  /**
4431
- * disallow .only blocks in tests
4431
+ * disallow focused/only tests
4432
4432
  * @see https://github.com/levibuzolic/eslint-plugin-no-only-tests
4433
4433
  */
4434
4434
  'test/no-only-tests'?: Linter.RuleEntry<TestNoOnlyTests>;
@@ -6827,7 +6827,7 @@ interface RuleOptions {
6827
6827
  * disallow object, array, and function literals in template
6828
6828
  * @see https://eslint.vuejs.org/rules/no-literals-in-template.html
6829
6829
  */
6830
- 'vue/no-literals-in-template'?: Linter.RuleEntry<[]>;
6830
+ 'vue/no-literals-in-template'?: Linter.RuleEntry<VueNoLiteralsInTemplate>;
6831
6831
  /**
6832
6832
  * disallow unnecessary `<template>`
6833
6833
  * @see https://eslint.vuejs.org/rules/no-lone-template.html
@@ -7220,6 +7220,11 @@ interface RuleOptions {
7220
7220
  * @see https://eslint.vuejs.org/rules/prefer-separate-static-class.html
7221
7221
  */
7222
7222
  'vue/prefer-separate-static-class'?: Linter.RuleEntry<[]>;
7223
+ /**
7224
+ * enforce passing a single argument to custom event emissions
7225
+ * @see https://eslint.vuejs.org/rules/prefer-single-event-payload.html
7226
+ */
7227
+ 'vue/prefer-single-event-payload'?: Linter.RuleEntry<[]>;
7223
7228
  /**
7224
7229
  * Require template literals instead of string concatenation in `<template>`
7225
7230
  * @see https://eslint.vuejs.org/rules/prefer-template.html
@@ -7235,6 +7240,11 @@ interface RuleOptions {
7235
7240
  * @see https://eslint.vuejs.org/rules/prefer-use-template-ref.html
7236
7241
  */
7237
7242
  'vue/prefer-use-template-ref'?: Linter.RuleEntry<[]>;
7243
+ /**
7244
+ * enforce using `v-model` instead of `:prop`/`@update:prop` pair
7245
+ * @see https://eslint.vuejs.org/rules/prefer-v-model.html
7246
+ */
7247
+ 'vue/prefer-v-model'?: Linter.RuleEntry<[]>;
7238
7248
  /**
7239
7249
  * enforce specific casing for the Prop name in Vue components
7240
7250
  * @see https://eslint.vuejs.org/rules/prop-name-casing.html
@@ -10328,6 +10338,7 @@ type PerfectionistSortClasses = {
10328
10338
  matchesAstSelector?: string;
10329
10339
  };
10330
10340
  useExperimentalDependencyDetection?: boolean;
10341
+ newlinesBetweenOverloadSignatures?: ("ignore" | number);
10331
10342
  ignoreCallbackDependenciesPatterns?: (({
10332
10343
  pattern: string;
10333
10344
  flags?: string;
@@ -11691,6 +11702,7 @@ type PerfectionistSortModules = [] | [{
11691
11702
  })[];
11692
11703
  newlinesBetween?: ("ignore" | number);
11693
11704
  useExperimentalDependencyDetection?: boolean;
11705
+ newlinesBetweenOverloadSignatures?: ("ignore" | number);
11694
11706
  partitionByComment?: (boolean | (({
11695
11707
  pattern: string;
11696
11708
  flags?: string;
@@ -16115,6 +16127,9 @@ type VueNoIrregularWhitespace = [] | [{
16115
16127
  skipRegExps?: boolean;
16116
16128
  skipHTMLAttributeValues?: boolean;
16117
16129
  skipHTMLTextContents?: boolean;
16130
+ }]; // ----- vue/no-literals-in-template -----
16131
+ type VueNoLiteralsInTemplate = [] | [{
16132
+ ignores?: string[];
16118
16133
  }]; // ----- vue/no-lone-template -----
16119
16134
  type VueNoLoneTemplate = [] | [{
16120
16135
  ignoreAccessible?: boolean;
@@ -16269,7 +16284,7 @@ type VueNoUnusedComponents = [] | [{
16269
16284
  ignoreWhenBindingPresent?: boolean;
16270
16285
  }]; // ----- vue/no-unused-properties -----
16271
16286
  type VueNoUnusedProperties = [] | [{
16272
- groups?: ("props" | "data" | "asyncData" | "computed" | "methods" | "setup")[];
16287
+ groups?: ("props" | "data" | "asyncData" | "computed" | "methods" | "setup" | "inject")[];
16273
16288
  deepData?: boolean;
16274
16289
  ignorePublicMembers?: boolean;
16275
16290
  unreferencedOptions?: ("unknownMemberAsUnreferenced" | "returnAsUnreferenced")[];
@@ -17395,7 +17410,6 @@ declare const GLOB_JSON5 = "**/*.json5";
17395
17410
  declare const GLOB_JSONC = "**/*.jsonc";
17396
17411
  declare const GLOB_MARKDOWN = "**/*.md";
17397
17412
  declare const GLOB_MARKDOWN_IN_MARKDOWN = "**/*.md/*.md";
17398
- declare const GLOB_SVELTE = "**/*.svelte";
17399
17413
  declare const GLOB_VUE = "**/*.vue";
17400
17414
  declare const GLOB_YAML = "**/*.y?(a)ml";
17401
17415
  declare const GLOB_TOML = "**/*.toml";
@@ -17451,4 +17465,4 @@ declare function ensurePackages(packages: (string | undefined)[]): Promise<void>
17451
17465
  declare function isInEditorEnv(): boolean;
17452
17466
  declare function isInGitHooksOrLintStaged(): boolean;
17453
17467
  //#endregion
17454
- export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsE18e, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIgnores, OptionsIsInEditor, OptionsMarkdown, OptionsOverrides, OptionsPnpm, OptionsProjectType, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, type RuleOptions, Rules, StylisticConfig, StylisticConfigDefaults, TypedFlatConfigItem, combine, comments, lincy as default, lincy, defaultPluginRenaming, disables, e18e, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
17468
+ export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsE18e, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIgnores, OptionsIsInEditor, OptionsMarkdown, OptionsOverrides, OptionsPnpm, OptionsProjectType, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, type RuleOptions, Rules, StylisticConfig, StylisticConfigDefaults, TypedFlatConfigItem, combine, comments, lincy as default, lincy, defaultPluginRenaming, disables, e18e, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
package/dist/index.mjs CHANGED
@@ -82,7 +82,6 @@ const GLOB_JSON5 = "**/*.json5";
82
82
  const GLOB_JSONC = "**/*.jsonc";
83
83
  const GLOB_MARKDOWN = "**/*.md";
84
84
  const GLOB_MARKDOWN_IN_MARKDOWN = "**/*.md/*.md";
85
- const GLOB_SVELTE = "**/*.svelte";
86
85
  const GLOB_VUE = "**/*.vue";
87
86
  const GLOB_YAML = "**/*.y?(a)ml";
88
87
  const GLOB_TOML = "**/*.toml";
@@ -94,7 +93,9 @@ const GLOB_MARKDOWN_CODE = `${GLOB_MARKDOWN}/${GLOB_SRC}`;
94
93
  const GLOB_TESTS = [
95
94
  `**/__tests__/**/*.${GLOB_SRC_EXT}`,
96
95
  `**/*.spec.${GLOB_SRC_EXT}`,
97
- `**/*.test.${GLOB_SRC_EXT}`
96
+ `**/*.test.${GLOB_SRC_EXT}`,
97
+ `**/*.bench.${GLOB_SRC_EXT}`,
98
+ `**/*.benchmark.${GLOB_SRC_EXT}`
98
99
  ];
99
100
  const GLOB_ALL_SRC = [
100
101
  GLOB_SRC,
@@ -102,9 +103,9 @@ const GLOB_ALL_SRC = [
102
103
  GLOB_JSON,
103
104
  GLOB_JSON5,
104
105
  GLOB_MARKDOWN,
105
- GLOB_SVELTE,
106
106
  GLOB_VUE,
107
107
  GLOB_YAML,
108
+ GLOB_XML,
108
109
  GLOB_HTML
109
110
  ];
110
111
  const GLOB_EXCLUDE = [
@@ -113,12 +114,13 @@ const GLOB_EXCLUDE = [
113
114
  "**/package-lock.json",
114
115
  "**/yarn.lock",
115
116
  "**/pnpm-lock.yaml",
117
+ "**/bun.lockb",
116
118
  "**/output",
117
119
  "**/coverage",
118
- "**/tmp",
119
120
  "**/temp",
120
- "**/.tmp",
121
121
  "**/.temp",
122
+ "**/tmp",
123
+ "**/.tmp",
122
124
  "**/.history",
123
125
  "**/.vitepress/cache",
124
126
  "**/.nuxt",
@@ -126,16 +128,21 @@ const GLOB_EXCLUDE = [
126
128
  "**/.vercel",
127
129
  "**/.changeset",
128
130
  "**/.idea",
131
+ "**/.cache",
129
132
  "**/.output",
130
133
  "**/.vite-inspect",
131
134
  "**/.yarn",
132
- "**/vite.config.*.timestamp-*",
133
135
  "**/CHANGELOG*.md",
134
- "**/*.min.*",
135
136
  "**/LICENSE*",
137
+ "**/*.min.*",
136
138
  "**/__snapshots__",
139
+ "**/vite.config.*.timestamp-*",
137
140
  "**/auto-import?(s).d.ts",
138
- "**/components.d.ts"
141
+ "**/components.d.ts",
142
+ "**/.context",
143
+ "**/.claude",
144
+ "**/.agents",
145
+ "**/.*/skills"
139
146
  ];
140
147
  //#endregion
141
148
  //#region src/configs/disables.ts
@@ -204,6 +211,9 @@ async function e18e(options = {}) {
204
211
  ...modernization ? { ...configs.modernization.rules } : {},
205
212
  ...moduleReplacements ? { ...configs.moduleReplacements.rules } : {},
206
213
  ...performanceImprovements ? { ...configs.performanceImprovements.rules } : {},
214
+ ...type === "lib" ? {} : { "e18e/prefer-static-regex": "off" },
215
+ "e18e/prefer-array-at": "off",
216
+ "e18e/prefer-array-from-map": "off",
207
217
  "e18e/prefer-array-to-reversed": "off",
208
218
  "e18e/prefer-array-to-sorted": "off",
209
219
  "e18e/prefer-array-to-spliced": "off",
@@ -2194,4 +2204,4 @@ function getOverrides(options, key) {
2194
2204
  //#region src/index.ts
2195
2205
  var src_default = lincy;
2196
2206
  //#endregion
2197
- export { GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, StylisticConfigDefaults, combine, comments, src_default as default, defaultPluginRenaming, disables, e18e, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, lincy, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
2207
+ export { GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, StylisticConfigDefaults, combine, comments, src_default as default, defaultPluginRenaming, disables, e18e, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, lincy, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@lincy/eslint-config",
3
3
  "type": "module",
4
- "version": "7.0.0",
4
+ "version": "7.1.2",
5
5
  "description": "LinCenYing's ESLint config",
6
6
  "author": "LinCenYing <lincenying@gmail.com> (https://github.com/lincenying/)",
7
7
  "license": "MIT",
@@ -23,7 +23,7 @@
23
23
  "dist"
24
24
  ],
25
25
  "peerDependencies": {
26
- "@eslint-react/eslint-plugin": "^2.3.5",
26
+ "@eslint-react/eslint-plugin": "^3.0.0",
27
27
  "@next/eslint-plugin-next": ">=15.0.0",
28
28
  "@prettier/plugin-xml": "^3.4.1",
29
29
  "@unocss/eslint-plugin": ">=0.50.0",
@@ -57,35 +57,35 @@
57
57
  },
58
58
  "dependencies": {
59
59
  "@antfu/install-pkg": "^1.1.0",
60
- "@clack/prompts": "^1.2.0",
60
+ "@clack/prompts": "^1.3.0",
61
61
  "@e18e/eslint-plugin": "^0.3.0",
62
62
  "@eslint-community/eslint-plugin-eslint-comments": "^4.7.1",
63
63
  "@eslint/markdown": "^8.0.1",
64
64
  "@stylistic/eslint-plugin": "^5.10.0",
65
- "@typescript-eslint/eslint-plugin": "^8.58.0",
66
- "@typescript-eslint/parser": "^8.58.0",
67
- "@vitest/eslint-plugin": "^1.6.14",
65
+ "@typescript-eslint/eslint-plugin": "^8.59.2",
66
+ "@typescript-eslint/parser": "^8.59.2",
67
+ "@vitest/eslint-plugin": "^1.6.16",
68
68
  "eslint-config-flat-gitignore": "^2.3.0",
69
- "eslint-flat-config-utils": "^3.1.0",
69
+ "eslint-flat-config-utils": "^3.2.0",
70
70
  "eslint-merge-processors": "^2.0.0",
71
71
  "eslint-parser-plain": "^0.1.1",
72
72
  "eslint-plugin-antfu": "^3.2.2",
73
- "eslint-plugin-erasable-syntax-only": "^0.4.0",
73
+ "eslint-plugin-erasable-syntax-only": "^0.4.1",
74
74
  "eslint-plugin-import-lite": "^0.6.0",
75
75
  "eslint-plugin-jsdoc": "^62.9.0",
76
76
  "eslint-plugin-jsonc": "^3.1.2",
77
77
  "eslint-plugin-n": "^17.24.0",
78
- "eslint-plugin-no-only-tests": "^3.3.0",
79
- "eslint-plugin-perfectionist": "^5.8.0",
78
+ "eslint-plugin-no-only-tests": "^3.4.0",
79
+ "eslint-plugin-perfectionist": "^5.9.0",
80
80
  "eslint-plugin-pnpm": "^1.6.0",
81
81
  "eslint-plugin-regexp": "^3.1.0",
82
82
  "eslint-plugin-toml": "^1.3.1",
83
83
  "eslint-plugin-unicorn": "^64.0.0",
84
84
  "eslint-plugin-unused-imports": "^4.4.1",
85
- "eslint-plugin-vue": "^10.8.0",
86
- "eslint-plugin-yml": "^3.3.1",
85
+ "eslint-plugin-vue": "^10.9.1",
86
+ "eslint-plugin-yml": "^3.3.2",
87
87
  "eslint-processor-vue-blocks": "^2.0.0",
88
- "globals": "^17.4.0",
88
+ "globals": "^17.6.0",
89
89
  "jsonc-eslint-parser": "^3.1.0",
90
90
  "local-pkg": "^1.1.2",
91
91
  "toml-eslint-parser": "^1.0.3",
@@ -93,34 +93,34 @@
93
93
  "yaml-eslint-parser": "^2.0.0"
94
94
  },
95
95
  "devDependencies": {
96
- "@antfu/ni": "^30.0.0",
96
+ "@antfu/ni": "^30.1.0",
97
97
  "@eslint-react/eslint-plugin": "^3.0.0",
98
- "@eslint/config-inspector": "^1.5.0",
99
- "@next/eslint-plugin-next": "^16.2.2",
98
+ "@eslint/config-inspector": "^2.0.1",
99
+ "@next/eslint-plugin-next": "^16.2.5",
100
100
  "@prettier/plugin-xml": "^3.4.2",
101
101
  "@stylistic/eslint-plugin-migrate": "^4.4.1",
102
- "@types/node": "^25.5.2",
102
+ "@types/node": "^25.6.0",
103
103
  "@types/react": "^19.2.14",
104
- "@unocss/eslint-plugin": "^66.6.7",
105
- "bumpp": "^11.0.1",
106
- "eslint": "^10.2.0",
104
+ "@unocss/eslint-plugin": "^66.6.8",
105
+ "bumpp": "^11.1.0",
106
+ "eslint": "^10.3.0",
107
107
  "eslint-plugin-format": "^2.0.1",
108
- "eslint-plugin-react-hooks": "^7.0.1",
108
+ "eslint-plugin-react-hooks": "^7.1.1",
109
109
  "eslint-plugin-react-refresh": "^0.5.2",
110
110
  "eslint-typegen": "^2.3.1",
111
111
  "esno": "^4.8.0",
112
112
  "execa": "^9.6.1",
113
113
  "find-up-simple": "^1.0.1",
114
- "lint-staged": "^16.4.0",
115
- "prettier": "^3.8.1",
116
- "react": "^19.2.4",
114
+ "lint-staged": "^17.0.2",
115
+ "prettier": "^3.8.3",
116
+ "react": "^19.2.6",
117
117
  "simple-open-url": "^3.0.1",
118
- "tinyglobby": "^0.2.15",
119
- "tsdown": "^0.21.7",
120
- "typescript": "^6.0.2",
121
- "vitest": "^4.1.2",
122
- "vue": "^3.5.32",
123
- "@lincy/eslint-config": "7.0.0"
118
+ "tinyglobby": "^0.2.16",
119
+ "tsdown": "^0.21.10",
120
+ "typescript": "^6.0.3",
121
+ "vitest": "^4.1.5",
122
+ "vue": "^3.5.34",
123
+ "@lincy/eslint-config": "7.1.2"
124
124
  },
125
125
  "resolutions": {
126
126
  "@eslint-community/eslint-utils": "catalog:peer",