@rebeccastevens/eslint-config 3.8.0 → 3.9.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/CHANGELOG.md CHANGED
@@ -1,6 +1,13 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file. Dates are displayed in UTC.
3
3
 
4
+ # [3.9.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.8.0...v3.9.0) (2026-02-22)
5
+
6
+
7
+ ### Features
8
+
9
+ * major deps updates ([9396918](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/commit/939691884bd035b57bc688e5b2126b4d880c5f92))
10
+
4
11
  # [3.8.0](https://github.com/RebeccaStevens/eslint-config-rebeccastevens/compare/v3.7.1...v3.8.0) (2025-07-03)
5
12
 
6
13
 
package/dist/index.cjs CHANGED
@@ -212,6 +212,244 @@ const GLOB_EXCLUDE = [
212
212
  "**/typegen.d.ts",
213
213
  ];
214
214
 
215
+ const StylisticConfigDefaults = {
216
+ indent: 2,
217
+ jsx: true,
218
+ quotes: "double",
219
+ semi: true,
220
+ printWidth: 120,
221
+ };
222
+ async function stylistic(options) {
223
+ const { stylistic: { indent, jsx, quotes, semi }, overrides, typescript, } = options;
224
+ const [pluginStylistic] = (await loadPackages(["@stylistic/eslint-plugin"]));
225
+ const config = pluginStylistic.configs.customize({
226
+ flat: true,
227
+ indent,
228
+ jsx,
229
+ pluginName: "style",
230
+ quotes,
231
+ semi,
232
+ });
233
+ return [
234
+ {
235
+ name: "rs:stylistic",
236
+ plugins: {
237
+ style: pluginStylistic,
238
+ },
239
+ rules: {
240
+ ...config.rules,
241
+ "style/array-bracket-spacing": ["error", "never"],
242
+ "style/arrow-parens": ["error", "always"],
243
+ "style/arrow-spacing": ["error", { before: true, after: true }],
244
+ "style/block-spacing": ["error", "always"],
245
+ "style/brace-style": "error",
246
+ "style/comma-dangle": [
247
+ "error",
248
+ {
249
+ arrays: "only-multiline",
250
+ exports: "only-multiline",
251
+ functions: "ignore",
252
+ imports: "only-multiline",
253
+ objects: "only-multiline",
254
+ ...(typescript
255
+ ? {
256
+ enums: "only-multiline",
257
+ generics: "only-multiline",
258
+ tuples: "only-multiline",
259
+ }
260
+ : {}),
261
+ },
262
+ ],
263
+ "style/comma-spacing": ["error", { before: false, after: true }],
264
+ "style/comma-style": ["error", "last"],
265
+ "style/computed-property-spacing": "error",
266
+ "style/dot-location": ["error", "property"],
267
+ "style/eol-last": "error",
268
+ "style/function-call-spacing": ["error", "never"],
269
+ "style/generator-star-spacing": ["error", "after"],
270
+ "style/indent": typescript
271
+ ? "off"
272
+ : [
273
+ "error",
274
+ indent,
275
+ {
276
+ SwitchCase: 1,
277
+ VariableDeclarator: 1,
278
+ outerIIFEBody: 1,
279
+ MemberExpression: 1,
280
+ FunctionDeclaration: { parameters: 1, body: 1 },
281
+ FunctionExpression: { parameters: 1, body: 1 },
282
+ CallExpression: { arguments: 1 },
283
+ ArrayExpression: 1,
284
+ ObjectExpression: 1,
285
+ ImportDeclaration: 1,
286
+ flatTernaryExpressions: false,
287
+ ignoreComments: false,
288
+ },
289
+ ],
290
+ "style/indent-binary-ops": "error",
291
+ "style/key-spacing": ["error", { beforeColon: false, afterColon: true }],
292
+ "style/keyword-spacing": ["error", { before: true, after: true }],
293
+ "style/linebreak-style": ["error", "unix"],
294
+ "style/lines-around-comment": [
295
+ "warn",
296
+ {
297
+ beforeBlockComment: true,
298
+ beforeLineComment: false,
299
+ afterBlockComment: false,
300
+ afterLineComment: false,
301
+ afterHashbangComment: true,
302
+ allowBlockStart: true,
303
+ allowBlockEnd: true,
304
+ allowObjectStart: true,
305
+ allowObjectEnd: true,
306
+ allowArrayStart: true,
307
+ allowArrayEnd: true,
308
+ allowClassStart: true,
309
+ allowClassEnd: true,
310
+ ...(typescript
311
+ ? {
312
+ allowEnumEnd: true,
313
+ allowEnumStart: true,
314
+ allowInterfaceEnd: true,
315
+ allowInterfaceStart: true,
316
+ allowModuleEnd: true,
317
+ allowModuleStart: true,
318
+ allowTypeEnd: true,
319
+ allowTypeStart: true,
320
+ }
321
+ : {}),
322
+ },
323
+ ],
324
+ "style/lines-between-class-members": [
325
+ "error",
326
+ "always",
327
+ {
328
+ exceptAfterSingleLine: true,
329
+ ...(typescript
330
+ ? {
331
+ exceptAfterOverload: true,
332
+ }
333
+ : {}),
334
+ },
335
+ ],
336
+ "style/max-statements-per-line": ["error", { max: 1 }],
337
+ "style/multiline-ternary": ["error", "always-multiline"],
338
+ "style/new-parens": "error",
339
+ "style/newline-per-chained-call": ["error", { ignoreChainWithDepth: 2 }],
340
+ "style/no-extra-parens": ["error", "all", { nestedBinaryExpressions: false }],
341
+ "style/no-extra-semi": "error",
342
+ "style/no-floating-decimal": "error",
343
+ "style/no-mixed-operators": [
344
+ "error",
345
+ {
346
+ groups: [
347
+ ["+", "-", "*", "/", "%", "**"],
348
+ ["&", "|", "^", "~", "<<", ">>", ">>>"],
349
+ ["==", "!=", "===", "!==", ">", ">=", "<", "<="],
350
+ ["&&", "||"],
351
+ ["in", "instanceof"],
352
+ ],
353
+ allowSamePrecedence: true,
354
+ },
355
+ ],
356
+ "style/no-mixed-spaces-and-tabs": "error",
357
+ "style/no-multi-spaces": ["error", { ignoreEOLComments: true }],
358
+ "style/no-multiple-empty-lines": ["error", { max: 1, maxEOF: 1 }],
359
+ "style/no-tabs": "error",
360
+ "style/no-trailing-spaces": "error",
361
+ "style/no-whitespace-before-property": "error",
362
+ "style/nonblock-statement-body-position": ["error", "beside", { overrides: {} }],
363
+ "style/object-curly-newline": [
364
+ "error",
365
+ {
366
+ ObjectExpression: {
367
+ minProperties: 3,
368
+ multiline: true,
369
+ consistent: true,
370
+ },
371
+ ObjectPattern: {
372
+ minProperties: 3,
373
+ multiline: true,
374
+ consistent: true,
375
+ },
376
+ },
377
+ ],
378
+ "style/object-curly-spacing": ["error", "always"],
379
+ "style/object-property-newline": ["error", { allowAllPropertiesOnSameLine: true }],
380
+ "style/one-var-declaration-per-line": ["error", "always"],
381
+ "style/operator-linebreak": [
382
+ "error",
383
+ "after",
384
+ {
385
+ overrides: {
386
+ // "=": "none",
387
+ "==": "none",
388
+ "===": "none",
389
+ "?": "before",
390
+ ":": "before",
391
+ "|": "before",
392
+ },
393
+ },
394
+ ],
395
+ "style/padded-blocks": [
396
+ "error",
397
+ {
398
+ blocks: "never",
399
+ switches: "never",
400
+ classes: "never",
401
+ },
402
+ ],
403
+ "style/quote-props": ["error", "consistent-as-needed"],
404
+ "style/quotes": ["error", quotes, { avoidEscape: true, allowTemplateLiterals: true }],
405
+ "style/rest-spread-spacing": ["error", "never"],
406
+ "style/semi-spacing": ["error", { before: false, after: true }],
407
+ "style/semi-style": ["error", "last"],
408
+ "style/semi": ["error", semi ? "always" : "never"],
409
+ "style/space-before-blocks": ["error", "always"],
410
+ "style/space-before-function-paren": [
411
+ "error",
412
+ {
413
+ asyncArrow: "always",
414
+ anonymous: "never",
415
+ named: "never",
416
+ },
417
+ ],
418
+ "style/space-in-parens": ["error", "never"],
419
+ "style/space-infix-ops": "error",
420
+ "style/space-unary-ops": ["error", { words: true, nonwords: false }],
421
+ "style/spaced-comment": [
422
+ "error",
423
+ "always",
424
+ {
425
+ line: {
426
+ exceptions: ["-", "+", "*"],
427
+ markers: ["*package", "!", "/", ",", "="],
428
+ },
429
+ block: {
430
+ balanced: true,
431
+ exceptions: ["-", "+", "*"],
432
+ markers: ["*package", "!", "*", ",", ":", "::", "flow-include"],
433
+ },
434
+ },
435
+ ],
436
+ "style/switch-colon-spacing": ["error", { after: true, before: false }],
437
+ "style/template-curly-spacing": ["error", "never"],
438
+ "style/template-tag-spacing": ["error", "never"],
439
+ "style/wrap-iife": ["error", "inside", { functionPrototypeMethods: true }],
440
+ "style/yield-star-spacing": ["error", "after"],
441
+ ...(typescript
442
+ ? {
443
+ "style/member-delimiter-style": "error",
444
+ "style/type-annotation-spacing": "error",
445
+ }
446
+ : {}),
447
+ ...overrides,
448
+ },
449
+ },
450
+ ];
451
+ }
452
+
215
453
  async function formatters(opts, stylistic) {
216
454
  const options = opts === true
217
455
  ? {
@@ -237,7 +475,11 @@ async function formatters(opts, stylistic) {
237
475
  printWidth: printWidth ?? 120,
238
476
  semi: semi ?? true,
239
477
  singleQuote: quotes === "single",
240
- tabWidth: typeof indent === "number" ? indent : 2,
478
+ tabWidth: typeof indent === "number"
479
+ ? indent
480
+ : typeof StylisticConfigDefaults.indent === "number"
481
+ ? StylisticConfigDefaults.indent
482
+ : 2,
241
483
  trailingComma: "all",
242
484
  useTabs: indent === "tab",
243
485
  }, options.prettierOptions ?? {});
@@ -1548,7 +1790,7 @@ async function jsdoc(options) {
1548
1790
 
1549
1791
  async function jsonc(options) {
1550
1792
  const { files, overrides, stylistic } = options;
1551
- const { indent = 2 } = typeof stylistic === "boolean" ? {} : stylistic;
1793
+ const { indent = StylisticConfigDefaults.indent } = typeof stylistic === "boolean" ? {} : stylistic;
1552
1794
  const [pluginJsonc, parserJsonc] = (await loadPackages(["eslint-plugin-jsonc", "jsonc-eslint-parser"]));
1553
1795
  const stylisticEnforcement = stylistic === false ? "off" : "error";
1554
1796
  return [
@@ -1594,7 +1836,24 @@ async function jsonc(options) {
1594
1836
  "jsonc/array-bracket-spacing": [stylisticEnforcement, "never"],
1595
1837
  "jsonc/comma-dangle": [stylisticEnforcement, "never"],
1596
1838
  "jsonc/comma-style": [stylisticEnforcement, "last"],
1597
- "jsonc/indent": [stylisticEnforcement, indent],
1839
+ "jsonc/indent": [
1840
+ stylisticEnforcement,
1841
+ indent,
1842
+ {
1843
+ SwitchCase: 1,
1844
+ VariableDeclarator: 1,
1845
+ outerIIFEBody: 1,
1846
+ MemberExpression: 1,
1847
+ FunctionDeclaration: { parameters: 1, body: 1 },
1848
+ FunctionExpression: { parameters: 1, body: 1 },
1849
+ CallExpression: { arguments: 1 },
1850
+ ArrayExpression: 1,
1851
+ ObjectExpression: 1,
1852
+ ImportDeclaration: 1,
1853
+ flatTernaryExpressions: false,
1854
+ ignoreComments: false,
1855
+ },
1856
+ ],
1598
1857
  "jsonc/key-spacing": [stylisticEnforcement, { afterColon: true, beforeColon: false }],
1599
1858
  "jsonc/object-curly-newline": [stylisticEnforcement, { consistent: true, multiline: true }],
1600
1859
  "jsonc/object-curly-spacing": [stylisticEnforcement, "always"],
@@ -2413,244 +2672,6 @@ function sortTsconfig() {
2413
2672
  ];
2414
2673
  }
2415
2674
 
2416
- const StylisticConfigDefaults = {
2417
- indent: 2,
2418
- jsx: true,
2419
- quotes: "double",
2420
- semi: true,
2421
- printWidth: 120,
2422
- };
2423
- async function stylistic(options) {
2424
- const { stylistic: { indent, jsx, quotes, semi }, overrides, typescript, } = options;
2425
- const [pluginStylistic] = (await loadPackages(["@stylistic/eslint-plugin"]));
2426
- const config = pluginStylistic.configs.customize({
2427
- flat: true,
2428
- indent,
2429
- jsx,
2430
- pluginName: "style",
2431
- quotes,
2432
- semi,
2433
- });
2434
- return [
2435
- {
2436
- name: "rs:stylistic",
2437
- plugins: {
2438
- style: pluginStylistic,
2439
- },
2440
- rules: {
2441
- ...config.rules,
2442
- "style/array-bracket-spacing": ["error", "never"],
2443
- "style/arrow-parens": ["error", "always"],
2444
- "style/arrow-spacing": ["error", { before: true, after: true }],
2445
- "style/block-spacing": ["error", "always"],
2446
- "style/brace-style": "error",
2447
- "style/comma-dangle": [
2448
- "error",
2449
- {
2450
- arrays: "only-multiline",
2451
- exports: "only-multiline",
2452
- functions: "ignore",
2453
- imports: "only-multiline",
2454
- objects: "only-multiline",
2455
- ...(typescript
2456
- ? {
2457
- enums: "only-multiline",
2458
- generics: "only-multiline",
2459
- tuples: "only-multiline",
2460
- }
2461
- : {}),
2462
- },
2463
- ],
2464
- "style/comma-spacing": ["error", { before: false, after: true }],
2465
- "style/comma-style": ["error", "last"],
2466
- "style/computed-property-spacing": "error",
2467
- "style/dot-location": ["error", "property"],
2468
- "style/eol-last": "error",
2469
- "style/function-call-spacing": ["error", "never"],
2470
- "style/generator-star-spacing": ["error", "after"],
2471
- "style/indent": typescript
2472
- ? "off"
2473
- : [
2474
- "error",
2475
- indent,
2476
- {
2477
- SwitchCase: 1,
2478
- VariableDeclarator: 1,
2479
- outerIIFEBody: 1,
2480
- MemberExpression: 1,
2481
- FunctionDeclaration: { parameters: 1, body: 1 },
2482
- FunctionExpression: { parameters: 1, body: 1 },
2483
- CallExpression: { arguments: 1 },
2484
- ArrayExpression: 1,
2485
- ObjectExpression: 1,
2486
- ImportDeclaration: 1,
2487
- flatTernaryExpressions: false,
2488
- ignoreComments: false,
2489
- },
2490
- ],
2491
- "style/indent-binary-ops": "error",
2492
- "style/key-spacing": ["error", { beforeColon: false, afterColon: true }],
2493
- "style/keyword-spacing": ["error", { before: true, after: true }],
2494
- "style/linebreak-style": ["error", "unix"],
2495
- "style/lines-around-comment": [
2496
- "warn",
2497
- {
2498
- beforeBlockComment: true,
2499
- beforeLineComment: false,
2500
- afterBlockComment: false,
2501
- afterLineComment: false,
2502
- afterHashbangComment: true,
2503
- allowBlockStart: true,
2504
- allowBlockEnd: true,
2505
- allowObjectStart: true,
2506
- allowObjectEnd: true,
2507
- allowArrayStart: true,
2508
- allowArrayEnd: true,
2509
- allowClassStart: true,
2510
- allowClassEnd: true,
2511
- ...(typescript
2512
- ? {
2513
- allowEnumEnd: true,
2514
- allowEnumStart: true,
2515
- allowInterfaceEnd: true,
2516
- allowInterfaceStart: true,
2517
- allowModuleEnd: true,
2518
- allowModuleStart: true,
2519
- allowTypeEnd: true,
2520
- allowTypeStart: true,
2521
- }
2522
- : {}),
2523
- },
2524
- ],
2525
- "style/lines-between-class-members": [
2526
- "error",
2527
- "always",
2528
- {
2529
- exceptAfterSingleLine: true,
2530
- ...(typescript
2531
- ? {
2532
- exceptAfterOverload: true,
2533
- }
2534
- : {}),
2535
- },
2536
- ],
2537
- "style/max-statements-per-line": ["error", { max: 1 }],
2538
- "style/multiline-ternary": ["error", "always-multiline"],
2539
- "style/new-parens": "error",
2540
- "style/newline-per-chained-call": ["error", { ignoreChainWithDepth: 2 }],
2541
- "style/no-extra-parens": ["error", "all", { nestedBinaryExpressions: false }],
2542
- "style/no-extra-semi": "error",
2543
- "style/no-floating-decimal": "error",
2544
- "style/no-mixed-operators": [
2545
- "error",
2546
- {
2547
- groups: [
2548
- ["+", "-", "*", "/", "%", "**"],
2549
- ["&", "|", "^", "~", "<<", ">>", ">>>"],
2550
- ["==", "!=", "===", "!==", ">", ">=", "<", "<="],
2551
- ["&&", "||"],
2552
- ["in", "instanceof"],
2553
- ],
2554
- allowSamePrecedence: true,
2555
- },
2556
- ],
2557
- "style/no-mixed-spaces-and-tabs": "error",
2558
- "style/no-multi-spaces": ["error", { ignoreEOLComments: true }],
2559
- "style/no-multiple-empty-lines": ["error", { max: 1, maxEOF: 1 }],
2560
- "style/no-tabs": "error",
2561
- "style/no-trailing-spaces": "error",
2562
- "style/no-whitespace-before-property": "error",
2563
- "style/nonblock-statement-body-position": ["error", "beside", { overrides: {} }],
2564
- "style/object-curly-newline": [
2565
- "error",
2566
- {
2567
- ObjectExpression: {
2568
- minProperties: 3,
2569
- multiline: true,
2570
- consistent: true,
2571
- },
2572
- ObjectPattern: {
2573
- minProperties: 3,
2574
- multiline: true,
2575
- consistent: true,
2576
- },
2577
- },
2578
- ],
2579
- "style/object-curly-spacing": ["error", "always"],
2580
- "style/object-property-newline": ["error", { allowAllPropertiesOnSameLine: true }],
2581
- "style/one-var-declaration-per-line": ["error", "always"],
2582
- "style/operator-linebreak": [
2583
- "error",
2584
- "after",
2585
- {
2586
- overrides: {
2587
- // "=": "none",
2588
- "==": "none",
2589
- "===": "none",
2590
- "?": "before",
2591
- ":": "before",
2592
- "|": "before",
2593
- },
2594
- },
2595
- ],
2596
- "style/padded-blocks": [
2597
- "error",
2598
- {
2599
- blocks: "never",
2600
- switches: "never",
2601
- classes: "never",
2602
- },
2603
- ],
2604
- "style/quote-props": ["error", "consistent-as-needed"],
2605
- "style/quotes": ["error", quotes, { avoidEscape: true, allowTemplateLiterals: true }],
2606
- "style/rest-spread-spacing": ["error", "never"],
2607
- "style/semi-spacing": ["error", { before: false, after: true }],
2608
- "style/semi-style": ["error", "last"],
2609
- "style/semi": ["error", semi ? "always" : "never"],
2610
- "style/space-before-blocks": ["error", "always"],
2611
- "style/space-before-function-paren": [
2612
- "error",
2613
- {
2614
- asyncArrow: "always",
2615
- anonymous: "never",
2616
- named: "never",
2617
- },
2618
- ],
2619
- "style/space-in-parens": ["error", "never"],
2620
- "style/space-infix-ops": "error",
2621
- "style/space-unary-ops": ["error", { words: true, nonwords: false }],
2622
- "style/spaced-comment": [
2623
- "error",
2624
- "always",
2625
- {
2626
- line: {
2627
- exceptions: ["-", "+", "*"],
2628
- markers: ["*package", "!", "/", ",", "="],
2629
- },
2630
- block: {
2631
- balanced: true,
2632
- exceptions: ["-", "+", "*"],
2633
- markers: ["*package", "!", "*", ",", ":", "::", "flow-include"],
2634
- },
2635
- },
2636
- ],
2637
- "style/switch-colon-spacing": ["error", { after: true, before: false }],
2638
- "style/template-curly-spacing": ["error", "never"],
2639
- "style/template-tag-spacing": ["error", "never"],
2640
- "style/wrap-iife": ["error", "inside", { functionPrototypeMethods: true }],
2641
- "style/yield-star-spacing": ["error", "after"],
2642
- ...(typescript
2643
- ? {
2644
- "style/member-delimiter-style": "error",
2645
- "style/type-annotation-spacing": "error",
2646
- }
2647
- : {}),
2648
- ...overrides,
2649
- },
2650
- },
2651
- ];
2652
- }
2653
-
2654
2675
  async function tailwind(options) {
2655
2676
  const { overrides, stylistic, tailwindVersion, tailwindEntryPoint, tailwindConfig } = options;
2656
2677
  const [pluginBetterTailwind] = (await loadPackages(["eslint-plugin-better-tailwindcss"]));
@@ -2673,6 +2694,14 @@ async function tailwind(options) {
2673
2694
  : undefined,
2674
2695
  },
2675
2696
  rules: {
2697
+ "tailwind-better/no-unknown-classes": [
2698
+ "off",
2699
+ {
2700
+ detectComponentClasses: true,
2701
+ },
2702
+ ],
2703
+ "tailwind-better/no-conflicting-classes": "error",
2704
+ "tailwind-better/no-restricted-classes": "error",
2676
2705
  ...(stylistic === false
2677
2706
  ? {}
2678
2707
  : {
@@ -2687,28 +2716,29 @@ async function tailwind(options) {
2687
2716
  printWidth: stylistic.printWidth,
2688
2717
  },
2689
2718
  ],
2690
- "tailwind-better/no-unnecessary-whitespace": "warn",
2691
2719
  "tailwind-better/enforce-consistent-class-order": [
2692
2720
  "error",
2693
2721
  {
2694
- order: "improved",
2722
+ order: "strict",
2723
+ detectComponentClasses: true,
2724
+ componentClassOrder: "preserve",
2725
+ componentClassPosition: "start",
2726
+ unknownClassOrder: "preserve",
2727
+ unknownClassPosition: "start",
2695
2728
  },
2696
2729
  ],
2697
- "tailwind-better/no-duplicate-classes": "error",
2698
2730
  "tailwind-better/enforce-consistent-variable-syntax": [
2699
2731
  "error",
2700
2732
  {
2701
- syntax: "parentheses",
2733
+ syntax: "shorthand",
2702
2734
  },
2703
2735
  ],
2704
- "tailwind-better/no-unregistered-classes": [
2705
- "off",
2706
- {
2707
- detectComponentClasses: true,
2708
- },
2709
- ],
2710
- "tailwind-better/no-conflicting-classes": "error",
2711
- "tailwind-better/no-restricted-classes": "error",
2736
+ "tailwind-better/enforce-consistent-important-position": "off",
2737
+ "tailwind-better/enforce-shorthand-classes": "off",
2738
+ "tailwind-better/enforce-canonical-classes": "error",
2739
+ "tailwind-better/no-duplicate-classes": "error",
2740
+ "tailwind-better/no-deprecated-classes": "warn",
2741
+ "tailwind-better/no-unnecessary-whitespace": "warn",
2712
2742
  }),
2713
2743
  ...overrides,
2714
2744
  },
@@ -2780,7 +2810,7 @@ async function test(options) {
2780
2810
 
2781
2811
  async function toml(options) {
2782
2812
  const { files, overrides, stylistic } = options;
2783
- const { indent = 2 } = typeof stylistic === "boolean" ? {} : stylistic;
2813
+ const { indent = StylisticConfigDefaults.indent } = typeof stylistic === "boolean" ? {} : stylistic;
2784
2814
  const [pluginToml, parserToml] = (await loadPackages(["eslint-plugin-toml", "toml-eslint-parser"]));
2785
2815
  const stylisticEnforcement = stylistic === false ? "off" : "error";
2786
2816
  return [
@@ -2809,7 +2839,7 @@ async function toml(options) {
2809
2839
  "toml/array-bracket-newline": stylisticEnforcement,
2810
2840
  "toml/array-bracket-spacing": stylisticEnforcement,
2811
2841
  "toml/array-element-newline": stylisticEnforcement,
2812
- "toml/indent": [stylisticEnforcement, indent === "tab" ? 2 : indent],
2842
+ "toml/indent": [stylisticEnforcement, typeof indent === "number" ? indent : StylisticConfigDefaults.indent],
2813
2843
  "toml/inline-table-curly-spacing": stylisticEnforcement,
2814
2844
  "toml/key-spacing": stylisticEnforcement,
2815
2845
  "toml/padding-line-between-pairs": stylisticEnforcement,
@@ -3370,7 +3400,7 @@ const NuxtPackages = ["nuxt"];
3370
3400
  async function vue(options) {
3371
3401
  const { files, i18n, overrides, parserOptions, stylistic, typescript, vueVersion } = options;
3372
3402
  const sfcBlocks = options.sfcBlocks === true ? {} : options.sfcBlocks;
3373
- const { indent = 2 } = typeof stylistic === "boolean" ? {} : stylistic;
3403
+ const { indent = StylisticConfigDefaults.indent } = typeof stylistic === "boolean" ? {} : stylistic;
3374
3404
  const isUsingNuxt = NuxtPackages.some((i) => localPkg.isPackageExists(i));
3375
3405
  const [pluginVue, pluginVueI18n, parserVue, processorVueBlocks, { mergeProcessors }] = (await loadPackages([
3376
3406
  "eslint-plugin-vue",
@@ -3468,7 +3498,7 @@ async function vue(options) {
3468
3498
  "vue/dot-location": ["error", "property"],
3469
3499
  "vue/dot-notation": ["error", { allowKeywords: true }],
3470
3500
  "vue/eqeqeq": ["error", "smart"],
3471
- "vue/html-indent": ["error", indent],
3501
+ "vue/html-indent": ["error", indent, { baseIndent: 1 }],
3472
3502
  "vue/html-quotes": ["error", "double"],
3473
3503
  // "vue/max-attributes-per-line": "off",
3474
3504
  "vue/multi-word-component-names": "error",
@@ -3599,7 +3629,7 @@ async function vue(options) {
3599
3629
 
3600
3630
  async function yaml(options) {
3601
3631
  const { files, overrides, stylistic } = options;
3602
- const { indent = 2, quotes = "single" } = typeof stylistic === "boolean" ? {} : stylistic;
3632
+ const { indent = StylisticConfigDefaults.indent, quotes = "single" } = typeof stylistic === "boolean" ? {} : stylistic;
3603
3633
  const [pluginYaml, parserYaml] = (await loadPackages(["eslint-plugin-yml", "yaml-eslint-parser"]));
3604
3634
  const stylisticEnforcement = stylistic === false ? "off" : "error";
3605
3635
  return [
@@ -3630,7 +3660,14 @@ async function yaml(options) {
3630
3660
  "yaml/flow-mapping-curly-spacing": stylisticEnforcement,
3631
3661
  "yaml/flow-sequence-bracket-newline": stylisticEnforcement,
3632
3662
  "yaml/flow-sequence-bracket-spacing": stylisticEnforcement,
3633
- "yaml/indent": [stylisticEnforcement, indent === "tab" ? 2 : indent],
3663
+ "yaml/indent": [
3664
+ stylisticEnforcement,
3665
+ typeof indent === "number"
3666
+ ? indent
3667
+ : typeof StylisticConfigDefaults.indent === "number"
3668
+ ? StylisticConfigDefaults.indent
3669
+ : 2,
3670
+ ],
3634
3671
  "yaml/key-spacing": stylisticEnforcement,
3635
3672
  "yaml/no-tab-indent": stylisticEnforcement,
3636
3673
  "yaml/quotes": [stylisticEnforcement, { avoidEscape: true, prefer: quotes === "backtick" ? "double" : quotes }],