@jsse/eslint-config 0.8.2 → 0.8.4

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.js CHANGED
@@ -1,9 +1,10 @@
1
1
  import { n as __exportAll, r as __toESM, t as __commonJSMin } from "./rolldown-runtime-DJK8HYOj.js";
2
- import { n as SLOW_RULES, r as VERSION, t as DEBUG } from "./const-Bzz9-PXu.js";
2
+ import { n as SLOW_RULES, r as VERSION, t as DEBUG } from "./const-D_tT7WuW.js";
3
3
  import { builtinModules, createRequire } from "node:module";
4
4
  import process$1 from "node:process";
5
5
  import fs, { realpathSync, statSync } from "node:fs";
6
6
  import Debug from "debug";
7
+ import pluginE18e from "@e18e/eslint-plugin";
7
8
  import pluginEslintComments from "@eslint-community/eslint-plugin-eslint-comments";
8
9
  import pluginTs from "@typescript-eslint/eslint-plugin";
9
10
  import * as parserTs from "@typescript-eslint/parser";
@@ -133,13 +134,92 @@ const GLOB_EXCLUDE = [
133
134
  ];
134
135
  //#endregion
135
136
  //#region src/lager.ts
137
+ var import_picocolors = /* @__PURE__ */ __toESM((/* @__PURE__ */ __commonJSMin(((exports, module) => {
138
+ let p = process || {}, argv = p.argv || [], env = p.env || {};
139
+ let isColorSupported = !(!!env.NO_COLOR || argv.includes("--no-color")) && (!!env.FORCE_COLOR || argv.includes("--color") || p.platform === "win32" || (p.stdout || {}).isTTY && env.TERM !== "dumb" || !!env.CI);
140
+ let formatter = (open, close, replace = open) => (input) => {
141
+ let string = "" + input, index = string.indexOf(close, open.length);
142
+ return ~index ? open + replaceClose(string, close, replace, index) + close : open + string + close;
143
+ };
144
+ let replaceClose = (string, close, replace, index) => {
145
+ let result = "", cursor = 0;
146
+ do {
147
+ result += string.substring(cursor, index) + replace;
148
+ cursor = index + close.length;
149
+ index = string.indexOf(close, cursor);
150
+ } while (~index);
151
+ return result + string.substring(cursor);
152
+ };
153
+ let createColors = (enabled = isColorSupported) => {
154
+ let f = enabled ? formatter : () => String;
155
+ return {
156
+ isColorSupported: enabled,
157
+ reset: f("\x1B[0m", "\x1B[0m"),
158
+ bold: f("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
159
+ dim: f("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
160
+ italic: f("\x1B[3m", "\x1B[23m"),
161
+ underline: f("\x1B[4m", "\x1B[24m"),
162
+ inverse: f("\x1B[7m", "\x1B[27m"),
163
+ hidden: f("\x1B[8m", "\x1B[28m"),
164
+ strikethrough: f("\x1B[9m", "\x1B[29m"),
165
+ black: f("\x1B[30m", "\x1B[39m"),
166
+ red: f("\x1B[31m", "\x1B[39m"),
167
+ green: f("\x1B[32m", "\x1B[39m"),
168
+ yellow: f("\x1B[33m", "\x1B[39m"),
169
+ blue: f("\x1B[34m", "\x1B[39m"),
170
+ magenta: f("\x1B[35m", "\x1B[39m"),
171
+ cyan: f("\x1B[36m", "\x1B[39m"),
172
+ white: f("\x1B[37m", "\x1B[39m"),
173
+ gray: f("\x1B[90m", "\x1B[39m"),
174
+ bgBlack: f("\x1B[40m", "\x1B[49m"),
175
+ bgRed: f("\x1B[41m", "\x1B[49m"),
176
+ bgGreen: f("\x1B[42m", "\x1B[49m"),
177
+ bgYellow: f("\x1B[43m", "\x1B[49m"),
178
+ bgBlue: f("\x1B[44m", "\x1B[49m"),
179
+ bgMagenta: f("\x1B[45m", "\x1B[49m"),
180
+ bgCyan: f("\x1B[46m", "\x1B[49m"),
181
+ bgWhite: f("\x1B[47m", "\x1B[49m"),
182
+ blackBright: f("\x1B[90m", "\x1B[39m"),
183
+ redBright: f("\x1B[91m", "\x1B[39m"),
184
+ greenBright: f("\x1B[92m", "\x1B[39m"),
185
+ yellowBright: f("\x1B[93m", "\x1B[39m"),
186
+ blueBright: f("\x1B[94m", "\x1B[39m"),
187
+ magentaBright: f("\x1B[95m", "\x1B[39m"),
188
+ cyanBright: f("\x1B[96m", "\x1B[39m"),
189
+ whiteBright: f("\x1B[97m", "\x1B[39m"),
190
+ bgBlackBright: f("\x1B[100m", "\x1B[49m"),
191
+ bgRedBright: f("\x1B[101m", "\x1B[49m"),
192
+ bgGreenBright: f("\x1B[102m", "\x1B[49m"),
193
+ bgYellowBright: f("\x1B[103m", "\x1B[49m"),
194
+ bgBlueBright: f("\x1B[104m", "\x1B[49m"),
195
+ bgMagentaBright: f("\x1B[105m", "\x1B[49m"),
196
+ bgCyanBright: f("\x1B[106m", "\x1B[49m"),
197
+ bgWhiteBright: f("\x1B[107m", "\x1B[49m")
198
+ };
199
+ };
200
+ module.exports = createColors();
201
+ module.exports.createColors = createColors;
202
+ })))(), 1);
136
203
  const dbg = Debug("jsse:eslint-config");
204
+ const WARN_LABEL = import_picocolors.default.yellow("[[@jsse/eslint-config::WARN]]");
137
205
  function enableDbg() {
138
206
  const currentNamespaces = Debug.namespaces;
139
207
  const current = typeof currentNamespaces === "string" ? currentNamespaces : void 0;
140
208
  Debug.enable([current, "jsse:eslint-config"].filter((ns) => ns !== void 0).join(","));
141
209
  dbg("Debugging enabled for @jsse/eslint-config");
142
210
  }
211
+ const warn = (...args) => {
212
+ const msg = args.map((arg) => {
213
+ if (typeof arg === "string") return arg;
214
+ if (arg instanceof Error) return arg.message;
215
+ try {
216
+ return JSON.stringify(arg, void 0, 2);
217
+ } catch (_e) {
218
+ return String(arg);
219
+ }
220
+ }).join(" ");
221
+ console.warn(`${WARN_LABEL} ${msg}`);
222
+ };
143
223
  //#endregion
144
224
  //#region src/utils.ts
145
225
  /**
@@ -235,7 +315,7 @@ const parserPlain = {
235
315
  visitorKeys: { Program: [] }
236
316
  })
237
317
  };
238
- function turnOffRules(configs, off) {
318
+ function turnOffRules(configs, off, debug) {
239
319
  if (off.length > 0) {
240
320
  for (const rule of off) dbg(`turning-off: ${rule}`);
241
321
  const currentlyActiveRules = /* @__PURE__ */ new Set();
@@ -243,7 +323,12 @@ function turnOffRules(configs, off) {
243
323
  const cfgRules = Object.keys(config.rules ?? {});
244
324
  for (const rule of cfgRules) currentlyActiveRules.add(rule);
245
325
  }
246
- for (const rule of off) if (!currentlyActiveRules.has(rule)) dbg(`Rule \`${rule}\` is not active in the current config, you can remove it from the off list`);
326
+ for (const rule of off) {
327
+ if (currentlyActiveRules.has(rule)) continue;
328
+ const msg = `Rule \`${rule}\` is not active in the current config, you can remove it from the off list`;
329
+ dbg(msg);
330
+ if (debug) warn(msg);
331
+ }
247
332
  for (const config of configs) {
248
333
  const cfgRules = config.rules;
249
334
  if (cfgRules) {
@@ -277,7 +362,7 @@ function warn2error(configs) {
277
362
  return configs;
278
363
  }
279
364
  const TYPESCRIPT_ESLINT_PREFIX = "@typescript-eslint/";
280
- function replaceTypescriptEslintPrefix(items, tsPrefix) {
365
+ function replaceTypescriptEslintPrefixInplace(items, tsPrefix) {
281
366
  for (const [key, value] of Object.entries(items)) {
282
367
  if (!key.startsWith(TYPESCRIPT_ESLINT_PREFIX)) continue;
283
368
  delete items[key];
@@ -334,6 +419,29 @@ const deMorgan = async () => {
334
419
  }];
335
420
  };
336
421
  //#endregion
422
+ //#region src/configs/e18e.ts
423
+ async function e18e(options = {}) {
424
+ const { isInEditor = false, modernization = true, type = "app", moduleReplacements = type === "lib" && isInEditor, overrides = {}, performanceImprovements = true } = options;
425
+ const configs = pluginE18e.configs;
426
+ return [{
427
+ name: "jsse/e18e/rules",
428
+ plugins: { e18e: pluginE18e },
429
+ rules: {
430
+ ...modernization && { ...configs.modernization.rules },
431
+ ...moduleReplacements && { ...configs.moduleReplacements.rules },
432
+ ...performanceImprovements && { ...configs.performanceImprovements.rules },
433
+ ...type !== "lib" && { "e18e/prefer-static-regex": "off" },
434
+ "e18e/prefer-array-at": "off",
435
+ "e18e/prefer-array-from-map": "off",
436
+ "e18e/prefer-array-to-reversed": "off",
437
+ "e18e/prefer-array-to-sorted": "off",
438
+ "e18e/prefer-array-to-spliced": "off",
439
+ "e18e/prefer-spread-syntax": "off",
440
+ ...overrides
441
+ }
442
+ }];
443
+ }
444
+ //#endregion
337
445
  //#region src/configs/eslint-comments.ts
338
446
  const eslintComments = async () => [{
339
447
  files: GLOB_CODE,
@@ -365,7 +473,7 @@ const reactHooks = async () => {
365
473
  //#endregion
366
474
  //#region src/configs/ts/typescript-language-options.ts
367
475
  function typescriptLanguageOptions(options) {
368
- const { componentExts = [], react, tsconfig } = options || {};
476
+ const { componentExts = [], react, tsconfig } = options;
369
477
  const tsOptions = tsconfig ? {
370
478
  project: Array.isArray(tsconfig) ? tsconfig : [tsconfig],
371
479
  tsconfigRootDir: process$1.cwd()
@@ -396,7 +504,8 @@ async function importReactPlugins() {
396
504
  const eslintReact = async (options) => {
397
505
  const { componentExts, parserOptions = {}, react, reactRefresh, tsconfig } = options ?? {};
398
506
  const { pluginReact, pluginReactRefresh } = await importReactPlugins();
399
- const coreReactPlugins = pluginReact.configs.all.plugins;
507
+ const coreReactPlugins = pluginReact.configs.all.plugins?.["@eslint-react"];
508
+ if (!coreReactPlugins) throw new Error("coreReactPlugins is undefined");
400
509
  const reactHooksConfig = await reactHooks();
401
510
  const config = [
402
511
  {
@@ -409,7 +518,7 @@ const eslintReact = async (options) => {
409
518
  }),
410
519
  name: "jsse/react/setup",
411
520
  plugins: {
412
- "@eslint-react": coreReactPlugins["@eslint-react"],
521
+ "@eslint-react": coreReactPlugins,
413
522
  "react-refresh": pluginReactRefresh
414
523
  }
415
524
  },
@@ -5047,7 +5156,7 @@ function typescriptRulesTypeOblivious() {
5047
5156
  };
5048
5157
  }
5049
5158
  function tsPresetRules(props) {
5050
- return extractRules(props?.typeAware ? props?.strict ? tseslint.configs.strictTypeChecked : tseslint.configs.recommendedTypeChecked : props?.strict ? tseslint.configs.strict : tseslint.configs.recommended);
5159
+ return extractRules(props?.typeAware ? props.strict ? tseslint.configs.strictTypeChecked : tseslint.configs.recommendedTypeChecked : props?.strict ? tseslint.configs.strict : tseslint.configs.recommended);
5051
5160
  }
5052
5161
  function typescriptRules(props) {
5053
5162
  const normalized = {
@@ -5167,18 +5276,14 @@ const n = async () => {
5167
5276
  //#endregion
5168
5277
  //#region src/configs/no-only-tests.ts
5169
5278
  const noOnlyTests = async (options = {}) => {
5170
- const { isInEditor = false, overrides = {} } = options;
5279
+ const { isInEditor = false } = options;
5171
5280
  return [{
5172
5281
  name: "jsse/no-only-tests/setup",
5173
5282
  plugins: { "no-only-tests": await interopDefault(import("eslint-plugin-no-only-tests")) }
5174
5283
  }, {
5175
5284
  files: GLOB_TESTS,
5176
5285
  name: "jsse/no-only-tests/rules",
5177
- rules: {
5178
- "no-only-tests/no-only-tests": isInEditor ? "off" : isCI() ? "error" : "warn",
5179
- "unicorn/no-null": "off",
5180
- ...overrides
5181
- }
5286
+ rules: { "no-only-tests/no-only-tests": isInEditor ? "off" : isCI() ? "error" : "warn" }
5182
5287
  }];
5183
5288
  };
5184
5289
  //#endregion
@@ -12486,6 +12591,7 @@ quansync(function* (name, cwd) {
12486
12591
  //#region src/options.ts
12487
12592
  function defaultOptions() {
12488
12593
  const typescriptExists = isPackageExists("typescript");
12594
+ const vitestExists = isPackageExists("vitest");
12489
12595
  return {
12490
12596
  command: true,
12491
12597
  componentExts: [],
@@ -12508,10 +12614,11 @@ function defaultOptions() {
12508
12614
  sortTsconfig: true,
12509
12615
  stylistic: true,
12510
12616
  tailwind: false,
12511
- test: true,
12617
+ test: vitestExists,
12512
12618
  tsPrefix: "@typescript-eslint",
12513
12619
  typeAware: false,
12514
12620
  typescript: typescriptExists,
12621
+ warnings: true,
12515
12622
  yaml: false
12516
12623
  };
12517
12624
  }
@@ -12549,7 +12656,7 @@ const CODE_SCOPED_CFG_NAMES = /* @__PURE__ */ new Set([
12549
12656
  "jsse/unicorn"
12550
12657
  ]);
12551
12658
  function postProcessConfigs(configs, options) {
12552
- const { componentExts, off, rootId = "jsse", tsPrefix, typescript } = options;
12659
+ const { componentExts, debug = false, off, rootId = "jsse", tsPrefix, typescript } = options;
12553
12660
  if (!typescript) {
12554
12661
  for (const config of configs) if (config.name && CODE_SCOPED_CFG_NAMES.has(config.name)) config.files = [GLOB_JS, GLOB_JSX];
12555
12662
  }
@@ -12561,13 +12668,13 @@ function postProcessConfigs(configs, options) {
12561
12668
  ],
12562
12669
  rulePrefixes: uniqueStrings("@typescript-eslint", tsPrefix ?? [])
12563
12670
  }) : configs;
12564
- if (off && off.length > 0) turnOffRules(scopedConfigs, off);
12671
+ if (off && off.length > 0) turnOffRules(scopedConfigs, off, debug);
12565
12672
  if (rootId !== "jsse") {
12566
12673
  for (const config of scopedConfigs) if (config.name && config.name.startsWith("jsse/")) config.name = config.name.replace("jsse/", `${rootId}/`);
12567
12674
  }
12568
12675
  if (tsPrefix && tsPrefix !== "@typescript-eslint") for (const config of scopedConfigs) {
12569
- if (config.plugins) replaceTypescriptEslintPrefix(config.plugins, tsPrefix);
12570
- if (config.rules) replaceTypescriptEslintPrefix(config.rules, tsPrefix);
12676
+ if (config.plugins) replaceTypescriptEslintPrefixInplace(config.plugins, tsPrefix);
12677
+ if (config.rules) replaceTypescriptEslintPrefixInplace(config.rules, tsPrefix);
12571
12678
  }
12572
12679
  return scopedConfigs;
12573
12680
  }
@@ -12591,7 +12698,7 @@ const FLAT_CFG_PROPS = [
12591
12698
  */
12592
12699
  async function jsse(options = {}, ...userConfigs) {
12593
12700
  const normalizedOptions = normalizeOptions(options);
12594
- const { command: enableCommand, componentExts, debug, gitignore: enableGitignore, isInEditor, jsonc: enableJsonc, markdown: enableMarkdown, off, overrides = {}, pnpm: enablePnpm, prettier: enablePrettier, react: enableReact, regexp: enableRegexp, reportUnusedDisableDirectives, rootId, sortImports: enableSortImports, sortPackageJson: enableSortPackageJson, sortTsconfig: enableSortTsconfig, stylistic: stylisticOptions, tailwind: tailwindOptions, test: enableTest, tsPrefix, typescript: typescriptOptions, yaml: enableYaml } = normalizedOptions;
12701
+ const { command: enableCommand, componentExts, debug = false, gitignore: enableGitignore, isInEditor, jsonc: enableJsonc, markdown: enableMarkdown, off, overrides = {}, pnpm: enablePnpm, prettier: enablePrettier, react: enableReact, regexp: enableRegexp, reportUnusedDisableDirectives, rootId, sortImports: enableSortImports, sortPackageJson: enableSortPackageJson, sortTsconfig: enableSortTsconfig, stylistic: stylisticOptions, tailwind: tailwindOptions, test: enableTest, tsPrefix, typescript: typescriptOptions, yaml: enableYaml } = normalizedOptions;
12595
12702
  if (debug || process$1.argv.includes("--debug")) enableDbg();
12596
12703
  dbg("@jsse/eslint-config debug=true");
12597
12704
  dbg("@jsse/eslint-config isInEditor: %O", isInEditor);
@@ -12614,7 +12721,7 @@ async function jsse(options = {}, ...userConfigs) {
12614
12721
  isInEditor,
12615
12722
  overrides: overrides.javascript,
12616
12723
  reportUnusedDisableDirectives
12617
- }), eslintComments(), n(), jsdoc(), imports({ stylistic: stylisticOptions }), unicorn(), antfu(), deMorgan());
12724
+ }), eslintComments(), n(), jsdoc(), imports({ stylistic: stylisticOptions }), unicorn(), antfu(), deMorgan(), e18e());
12618
12725
  if (enableSortImports) configs.push(perfectionist());
12619
12726
  /**
12620
12727
  * =========================================================================
@@ -12665,10 +12772,7 @@ async function jsse(options = {}, ...userConfigs) {
12665
12772
  if (enableTest) configs.push(vitest({
12666
12773
  isInEditor,
12667
12774
  overrides: overrides.test
12668
- }), noOnlyTests({
12669
- isInEditor,
12670
- overrides: overrides.test
12671
- }));
12775
+ }), noOnlyTests({ isInEditor }));
12672
12776
  if (enableJsonc) {
12673
12777
  configs.push(jsonc({
12674
12778
  overrides: overrides.jsonc,
@@ -12685,6 +12789,7 @@ async function jsse(options = {}, ...userConfigs) {
12685
12789
  if (Object.keys(fusedConfig).length > 0) configs.push([fusedConfig]);
12686
12790
  const finalizedConfigs = postProcessConfigs(await combineAsync(...configs, ...userConfigs), {
12687
12791
  componentExts,
12792
+ debug,
12688
12793
  off,
12689
12794
  rootId,
12690
12795
  tsPrefix,
@@ -12713,4 +12818,4 @@ const jsseReact = (options, ...configs) => {
12713
12818
  }, ...configs);
12714
12819
  };
12715
12820
  //#endregion
12716
- export { SLOW_RULES, VERSION, changeRuleEntrySeverity, combine, combineAsync, jsse as default, jsse, defaultOptions, defineConfig, error2warn, globs_exports as globs, importPluginMarkdown, importPluginReact, importPluginReactRefresh, importPluginStylistic, interopDefault, isCI, isInEditor, jsseReact, normalizeOptions, parserPlain, parserTs, pluginAntfu, pluginDeMorgan, pluginEslintComments, pluginImportLite, pluginN, pluginPerfectionist, pluginPnpm, pluginRegexp, pluginTs, pluginUnicorn, pluginUnusedImports, renameRules, replaceTypescriptEslintPrefix, scopeTypeScriptRules, turnOffRules, uniqueStrings, warn2error };
12821
+ export { SLOW_RULES, VERSION, changeRuleEntrySeverity, combine, combineAsync, jsse as default, jsse, defaultOptions, defineConfig, error2warn, globs_exports as globs, importPluginMarkdown, importPluginReact, importPluginReactRefresh, importPluginStylistic, interopDefault, isCI, isInEditor, jsseReact, normalizeOptions, parserPlain, parserTs, pluginAntfu, pluginDeMorgan, pluginE18e, pluginEslintComments, pluginImportLite, pluginN, pluginPerfectionist, pluginPnpm, pluginRegexp, pluginTs, pluginUnicorn, pluginUnusedImports, renameRules, replaceTypescriptEslintPrefixInplace, scopeTypeScriptRules, turnOffRules, uniqueStrings, warn2error };
@@ -1 +1 @@
1
- {"root":["../src/cli.ts","../src/config-fns.ts","../src/configs.test.ts","../src/const.ts","../src/define-config.ts","../src/dev.ts","../src/fixable.test.ts","../src/fixable.ts","../src/globs.ts","../src/index.ts","../src/lager.ts","../src/options.test.ts","../src/options.ts","../src/plugins-all.test.ts","../src/plugins-all.ts","../src/plugins.ts","../src/postprocess.test.ts","../src/postprocess.ts","../src/presets.ts","../src/types.ts","../src/utils.ts","../src/_generated/fixable-rules-map.ts","../src/_generated/rule-options.d.ts","../src/_generated/version.ts","../src/_generated/dts/antfu.d.ts","../src/_generated/dts/builtins.d.ts","../src/_generated/dts/command.d.ts","../src/_generated/dts/de-morgan.d.ts","../src/_generated/dts/eslint-comments.d.ts","../src/_generated/dts/eslint-react.d.ts","../src/_generated/dts/ignores.d.ts","../src/_generated/dts/imports.d.ts","../src/_generated/dts/javascript.d.ts","../src/_generated/dts/jsdoc.d.ts","../src/_generated/dts/jsonc.d.ts","../src/_generated/dts/markdown.d.ts","../src/_generated/dts/n.d.ts","../src/_generated/dts/no-only-tests.d.ts","../src/_generated/dts/perfectionist.d.ts","../src/_generated/dts/pnpm.d.ts","../src/_generated/dts/prettier.d.ts","../src/_generated/dts/react-hooks.d.ts","../src/_generated/dts/regexp.d.ts","../src/_generated/dts/sort-package-json.d.ts","../src/_generated/dts/sort-tsconfig.d.ts","../src/_generated/dts/stylistic.d.ts","../src/_generated/dts/toml.d.ts","../src/_generated/dts/typescript.d.ts","../src/_generated/dts/unicorn.d.ts","../src/_generated/dts/vitest.d.ts","../src/_generated/dts/yml.d.ts","../src/configs/_template.ts","../src/configs/antfu.ts","../src/configs/command.ts","../src/configs/de-morgan.ts","../src/configs/eslint-comments.ts","../src/configs/eslint-react.ts","../src/configs/ignores.ts","../src/configs/imports.ts","../src/configs/javascript.ts","../src/configs/jsdoc.ts","../src/configs/jsonc.ts","../src/configs/markdown.ts","../src/configs/n.ts","../src/configs/no-only-tests.ts","../src/configs/perfectionist.ts","../src/configs/pnpm.ts","../src/configs/prettier.ts","../src/configs/react-hooks.ts","../src/configs/react.ts","../src/configs/regexp.ts","../src/configs/rules.test.ts","../src/configs/sort-package-json.ts","../src/configs/sort-tsconfig.ts","../src/configs/stylistic.ts","../src/configs/toml.ts","../src/configs/tsdoc.ts","../src/configs/unicorn.ts","../src/configs/vitest.ts","../src/configs/yml.ts","../src/configs/_legacy/tailwind.ts","../src/configs/ts/parser.ts","../src/configs/ts/requires-type-checking.ts","../src/configs/ts/typescript-language-options.ts","../src/configs/ts/typescript-rules.ts","../src/configs/ts/typescript.ts"],"version":"6.0.3"}
1
+ {"root":["../src/cli.ts","../src/config-fns.ts","../src/configs.test.ts","../src/const.ts","../src/define-config.ts","../src/fixable.test.ts","../src/fixable.ts","../src/globs.ts","../src/index.ts","../src/lager.ts","../src/options.test.ts","../src/options.ts","../src/plugins-all.test.ts","../src/plugins-all.ts","../src/plugins.ts","../src/postprocess.test.ts","../src/postprocess.ts","../src/presets.ts","../src/types.ts","../src/utils.ts","../src/_generated/fixable-rules-map.ts","../src/_generated/rule-options.d.ts","../src/_generated/version.ts","../src/_generated/dts/antfu.d.ts","../src/_generated/dts/builtins.d.ts","../src/_generated/dts/command.d.ts","../src/_generated/dts/de-morgan.d.ts","../src/_generated/dts/e18e.d.ts","../src/_generated/dts/eslint-comments.d.ts","../src/_generated/dts/eslint-react.d.ts","../src/_generated/dts/ignores.d.ts","../src/_generated/dts/imports.d.ts","../src/_generated/dts/javascript.d.ts","../src/_generated/dts/jsdoc.d.ts","../src/_generated/dts/jsonc.d.ts","../src/_generated/dts/markdown.d.ts","../src/_generated/dts/n.d.ts","../src/_generated/dts/no-only-tests.d.ts","../src/_generated/dts/perfectionist.d.ts","../src/_generated/dts/pnpm.d.ts","../src/_generated/dts/prettier.d.ts","../src/_generated/dts/react-hooks.d.ts","../src/_generated/dts/regexp.d.ts","../src/_generated/dts/sort-package-json.d.ts","../src/_generated/dts/sort-tsconfig.d.ts","../src/_generated/dts/stylistic.d.ts","../src/_generated/dts/toml.d.ts","../src/_generated/dts/typescript.d.ts","../src/_generated/dts/unicorn.d.ts","../src/_generated/dts/vitest.d.ts","../src/_generated/dts/yml.d.ts","../src/configs/_template.ts","../src/configs/antfu.ts","../src/configs/command.ts","../src/configs/de-morgan.ts","../src/configs/disables.ts","../src/configs/e18e.ts","../src/configs/eslint-comments.ts","../src/configs/eslint-react.ts","../src/configs/ignores.ts","../src/configs/imports.ts","../src/configs/javascript.ts","../src/configs/jsdoc.ts","../src/configs/jsonc.ts","../src/configs/markdown.ts","../src/configs/n.ts","../src/configs/no-only-tests.ts","../src/configs/perfectionist.ts","../src/configs/pnpm.ts","../src/configs/prettier.ts","../src/configs/react-hooks.ts","../src/configs/react.ts","../src/configs/regexp.ts","../src/configs/rules.test.ts","../src/configs/sort-package-json.ts","../src/configs/sort-tsconfig.ts","../src/configs/stylistic.ts","../src/configs/toml.ts","../src/configs/tsdoc.ts","../src/configs/unicorn.ts","../src/configs/vitest.ts","../src/configs/yml.ts","../src/configs/_legacy/tailwind.ts","../src/configs/ts/parser.ts","../src/configs/ts/requires-type-checking.ts","../src/configs/ts/typescript-language-options.ts","../src/configs/ts/typescript-rules.ts","../src/configs/ts/typescript.ts"],"version":"6.0.3"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@jsse/eslint-config",
3
3
  "type": "module",
4
- "version": "0.8.2",
4
+ "version": "0.8.4",
5
5
  "description": "@jsse/eslint-config ~ WYSIWYG",
6
6
  "author": "jessekrubin <jessekrubin@gmail.com> (https://github.com/jessekrubin/)",
7
7
  "license": "MIT",
@@ -36,6 +36,7 @@
36
36
  ],
37
37
  "peerDependencies": {
38
38
  "@eslint-react/eslint-plugin": "^5.6.0",
39
+ "@vitest/eslint-plugin": "^1.6.20",
39
40
  "eslint": "^10.5.0",
40
41
  "eslint-plugin-react": "^7.37.5",
41
42
  "eslint-plugin-react-hooks": "^7.1.1",
@@ -45,6 +46,9 @@
45
46
  "@eslint-react/eslint-plugin": {
46
47
  "optional": true
47
48
  },
49
+ "@vitest/eslint-plugin": {
50
+ "optional": true
51
+ },
48
52
  "eslint": {
49
53
  "optional": false
50
54
  },
@@ -59,14 +63,14 @@
59
63
  }
60
64
  },
61
65
  "dependencies": {
66
+ "@e18e/eslint-plugin": "^0.5.1",
62
67
  "@eslint-community/eslint-plugin-eslint-comments": "^4.7.2",
63
68
  "@eslint/js": "^10.0.1",
64
69
  "@eslint/markdown": "^8.0.2",
65
70
  "@stylistic/eslint-plugin": "5.10.0",
66
- "@typescript-eslint/eslint-plugin": "^8.62.0",
67
- "@typescript-eslint/parser": "^8.62.0",
68
- "@typescript-eslint/rule-tester": "^8.62.0",
69
- "@vitest/eslint-plugin": "^1.6.20",
71
+ "@typescript-eslint/eslint-plugin": "^8.62.1",
72
+ "@typescript-eslint/parser": "^8.62.1",
73
+ "@typescript-eslint/rule-tester": "^8.62.1",
70
74
  "debug": "^4.4.3",
71
75
  "eslint-config-flat-gitignore": "^2.3.0",
72
76
  "eslint-merge-processors": "^2.0.0",
@@ -74,17 +78,17 @@
74
78
  "eslint-plugin-command": "^3.5.2",
75
79
  "eslint-plugin-de-morgan": "^2.1.2",
76
80
  "eslint-plugin-import-lite": "^0.6.0",
77
- "eslint-plugin-jsdoc": "^63.0.7",
81
+ "eslint-plugin-jsdoc": "^63.0.10",
78
82
  "eslint-plugin-jsonc": "^3.2.0",
79
- "eslint-plugin-n": "^18.1.0",
83
+ "eslint-plugin-n": "^18.2.1",
80
84
  "eslint-plugin-no-only-tests": "^3.4.0",
81
85
  "eslint-plugin-perfectionist": "^5.9.1",
82
86
  "eslint-plugin-pnpm": "^1.6.1",
83
87
  "eslint-plugin-react-hooks": "^7.1.1",
84
88
  "eslint-plugin-react-refresh": "^0.5.3",
85
- "eslint-plugin-regexp": "^3.1.0",
89
+ "eslint-plugin-regexp": "^3.1.1",
86
90
  "eslint-plugin-toml": "^1.4.0",
87
- "eslint-plugin-unicorn": "^68.0.0",
91
+ "eslint-plugin-unicorn": "^69.0.0",
88
92
  "eslint-plugin-unused-imports": "^4.4.1",
89
93
  "eslint-plugin-yml": "^3.5.0",
90
94
  "jsonc-eslint-parser": "^3.1.0",
@@ -94,17 +98,16 @@
94
98
  },
95
99
  "devDependencies": {
96
100
  "@changesets/cli": "^2.31.0",
97
- "@emnapi/core": "^1.11.1",
98
- "@emnapi/runtime": "^1.11.1",
99
- "@eslint-react/eslint-plugin": "^5.9.2",
101
+ "@eslint-react/eslint-plugin": "^5.10.0",
100
102
  "@jsse/prettier-config": "^1.0.2",
101
103
  "@jsse/tsconfig": "^0.5.1",
102
- "@optique/core": "^1.1.0",
103
- "@optique/run": "^1.1.0",
104
+ "@optique/core": "^1.1.1",
105
+ "@optique/run": "^1.1.1",
104
106
  "@types/debug": "^4.1.13",
105
107
  "@types/fs-extra": "^11.0.4",
106
- "@types/node": "^25.9.4",
107
- "eslint": "^10.5.0",
108
+ "@types/node": "^24.13.2",
109
+ "@vitest/eslint-plugin": "^1.6.20",
110
+ "eslint": "^10.6.0",
108
111
  "eslint-flat-config-utils": "^3.2.0",
109
112
  "eslint-plugin-react": "^7.37.5",
110
113
  "eslint-typegen": "^2.3.1",
@@ -113,12 +116,12 @@
113
116
  "fast-glob": "^3.3.3",
114
117
  "fs-extra": "^11.3.5",
115
118
  "globals": "^17.7.0",
116
- "knip": "^6.18.0",
119
+ "knip": "^6.23.0",
117
120
  "local-pkg": "^1.2.1",
118
121
  "oxfmt": "^0.56.0",
119
122
  "oxlint": "^1.71.0",
120
123
  "picocolors": "^1.1.1",
121
- "prettier": "^3.8.4",
124
+ "prettier": "^3.9.3",
122
125
  "publint": "^0.3.21",
123
126
  "react": "~19.2.7",
124
127
  "rimraf": "^6.1.3",