@meteorlxy/eslint-config 7.4.0 → 7.6.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/dist/index.cjs CHANGED
@@ -36,8 +36,8 @@ let confusing_browser_globals = require("confusing-browser-globals");
36
36
  confusing_browser_globals = __toESM(confusing_browser_globals, 1);
37
37
  let _typescript_eslint_eslint_plugin = require("@typescript-eslint/eslint-plugin");
38
38
  _typescript_eslint_eslint_plugin = __toESM(_typescript_eslint_eslint_plugin, 1);
39
- let eslint_plugin_eslint_comments = require("eslint-plugin-eslint-comments");
40
- eslint_plugin_eslint_comments = __toESM(eslint_plugin_eslint_comments, 1);
39
+ let _eslint_community_eslint_plugin_eslint_comments = require("@eslint-community/eslint-plugin-eslint-comments");
40
+ _eslint_community_eslint_plugin_eslint_comments = __toESM(_eslint_community_eslint_plugin_eslint_comments, 1);
41
41
  let globals = require("globals");
42
42
  globals = __toESM(globals, 1);
43
43
  let eslint_merge_processors = require("eslint-merge-processors");
@@ -594,10 +594,15 @@ const builtinRules = {
594
594
  //#endregion
595
595
  //#region src/rules/eslint-comments.ts
596
596
  const eslintCommentsRules = {
597
- "eslint-comments/no-aggregating-enable": "error",
598
- "eslint-comments/no-duplicate-disable": "error",
599
- "eslint-comments/no-unlimited-disable": "error",
600
- "eslint-comments/no-unused-enable": "error"
597
+ "@eslint-community/eslint-comments/disable-enable-pair": ["error", { allowWholeFile: true }],
598
+ "@eslint-community/eslint-comments/no-aggregating-enable": "error",
599
+ "@eslint-community/eslint-comments/no-duplicate-disable": "error",
600
+ "@eslint-community/eslint-comments/no-unlimited-disable": "error",
601
+ "@eslint-community/eslint-comments/no-unused-disable": "error",
602
+ "@eslint-community/eslint-comments/no-unused-enable": "error",
603
+ "@eslint-community/eslint-comments/no-restricted-disable": "off",
604
+ "@eslint-community/eslint-comments/no-use": ["off", { allow: [] }],
605
+ "@eslint-community/eslint-comments/require-description": ["error", { ignore: [] }]
601
606
  };
602
607
  //#endregion
603
608
  //#region src/rules/imports.ts
@@ -815,6 +820,7 @@ const markdownShimRules = {
815
820
  //#region src/rules/markdown.ts
816
821
  const markdownRules = {
817
822
  "markdown/fenced-code-language": "error",
823
+ "markdown/fenced-code-meta": "off",
818
824
  "markdown/heading-increment": "error",
819
825
  "markdown/no-bare-urls": "off",
820
826
  "markdown/no-duplicate-definitions": "error",
@@ -860,12 +866,12 @@ const reactHooksRules = {
860
866
  "react-hooks/static-components": "error",
861
867
  "react-hooks/unsupported-syntax": "error",
862
868
  "react-hooks/use-memo": "error",
863
- "react-hooks/automatic-effect-dependencies": "off",
864
869
  "react-hooks/capitalized-calls": "off",
870
+ "react-hooks/exhaustive-effect-dependencies": "off",
865
871
  "react-hooks/fbt": "off",
866
- "react-hooks/fire": "off",
867
872
  "react-hooks/hooks": "off",
868
873
  "react-hooks/invariant": "off",
874
+ "react-hooks/memo-dependencies": "off",
869
875
  "react-hooks/memoized-effect-dependencies": "off",
870
876
  "react-hooks/no-deriving-state-in-effects": "off",
871
877
  "react-hooks/rule-suppression": "off",
@@ -1548,9 +1554,11 @@ const vueRules = {
1548
1554
  "vue/prefer-define-options": "error",
1549
1555
  "vue/prefer-prop-type-boolean-first": "error",
1550
1556
  "vue/prefer-separate-static-class": "error",
1557
+ "vue/prefer-single-event-payload": "warn",
1551
1558
  "vue/prefer-template": builtinRules["prefer-template"],
1552
1559
  "vue/prefer-true-attribute-shorthand": "off",
1553
1560
  "vue/prefer-use-template-ref": "error",
1561
+ "vue/prefer-v-model": "warn",
1554
1562
  "vue/require-default-export": "warn",
1555
1563
  "vue/require-direct-export": ["error", { disallowFunctionalComponentFunction: false }],
1556
1564
  "vue/require-explicit-slots": "error",
@@ -1622,7 +1630,7 @@ const imports = ({ overrides, packageDir } = {}) => [{
1622
1630
  const javascript = ({ overrides } = {}) => [
1623
1631
  {
1624
1632
  name: "meteorlxy/javascript/plugins",
1625
- plugins: { "eslint-comments": eslint_plugin_eslint_comments.default }
1633
+ plugins: { "@eslint-community/eslint-comments": _eslint_community_eslint_plugin_eslint_comments.default }
1626
1634
  },
1627
1635
  {
1628
1636
  name: "meteorlxy/javascript/rules",
@@ -1736,7 +1744,7 @@ const prettier = () => [{
1736
1744
  /**
1737
1745
  * React configuration for eslint.
1738
1746
  */
1739
- const react = async ({ files = ["**/*.ts", "**/*.tsx"], overrides } = {}) => {
1747
+ const react = async ({ files = ["**/*.ts", "**/*.tsx"], overrides, settings } = {}) => {
1740
1748
  const [reactPlugin, reactHooksPlugin, reactRefreshPlugin] = await Promise.all([
1741
1749
  interopDefault(import("eslint-plugin-react")),
1742
1750
  interopDefault(import("eslint-plugin-react-hooks")),
@@ -1749,7 +1757,14 @@ const react = async ({ files = ["**/*.ts", "**/*.tsx"], overrides } = {}) => {
1749
1757
  "react-hooks": reactHooksPlugin,
1750
1758
  "react-refresh": reactRefreshPlugin
1751
1759
  },
1752
- settings: { react: { version: "detect" } }
1760
+ settings: {
1761
+ ...settings,
1762
+ "react": {
1763
+ version: "detect",
1764
+ ...settings?.react
1765
+ },
1766
+ "react-hooks": { ...settings?.["react-hooks"] }
1767
+ }
1753
1768
  }, {
1754
1769
  name: "meteorlxy/react/rules",
1755
1770
  files,
package/dist/index.d.cts CHANGED
@@ -78,13 +78,25 @@ declare const prettier: () => Config[];
78
78
  interface EslintReactOptions {
79
79
  files?: Config['files'];
80
80
  overrides?: Config['rules'];
81
+ settings?: {
82
+ 'react'?: {
83
+ version?: string;
84
+ };
85
+ /**
86
+ * @see https://react.dev/reference/eslint-plugin-react-hooks/lints/rules-of-hooks#options
87
+ */
88
+ 'react-hooks'?: {
89
+ additionalEffectHooks?: string;
90
+ };
91
+ };
81
92
  }
82
93
  /**
83
94
  * React configuration for eslint.
84
95
  */
85
96
  declare const react$1: ({
86
97
  files,
87
- overrides
98
+ overrides,
99
+ settings
88
100
  }?: EslintReactOptions) => Promise<Config[]>;
89
101
  //#endregion
90
102
  //#region src/configs/typescript.d.ts
@@ -371,7 +383,7 @@ declare const builtinRules: {
371
383
  name: string;
372
384
  message: string;
373
385
  }, ...{
374
- name: "external" | "parent" | "name" | "addEventListener" | "blur" | "close" | "closed" | "confirm" | "defaultStatus" | "defaultstatus" | "event" | "find" | "focus" | "frameElement" | "frames" | "history" | "innerHeight" | "innerWidth" | "length" | "location" | "locationbar" | "menubar" | "moveBy" | "moveTo" | "onblur" | "onerror" | "onfocus" | "onload" | "onresize" | "onunload" | "open" | "opener" | "opera" | "outerHeight" | "outerWidth" | "pageXOffset" | "pageYOffset" | "print" | "removeEventListener" | "resizeBy" | "resizeTo" | "screen" | "screenLeft" | "screenTop" | "screenX" | "screenY" | "scroll" | "scrollbars" | "scrollBy" | "scrollTo" | "scrollX" | "scrollY" | "self" | "status" | "statusbar" | "stop" | "toolbar" | "top";
386
+ name: "name" | "addEventListener" | "blur" | "close" | "closed" | "confirm" | "defaultStatus" | "defaultstatus" | "event" | "external" | "find" | "focus" | "frameElement" | "frames" | "history" | "innerHeight" | "innerWidth" | "length" | "location" | "locationbar" | "menubar" | "moveBy" | "moveTo" | "onblur" | "onerror" | "onfocus" | "onload" | "onresize" | "onunload" | "open" | "opener" | "opera" | "outerHeight" | "outerWidth" | "pageXOffset" | "pageYOffset" | "parent" | "print" | "removeEventListener" | "resizeBy" | "resizeTo" | "screen" | "screenLeft" | "screenTop" | "screenX" | "screenY" | "scroll" | "scrollbars" | "scrollBy" | "scrollTo" | "scrollX" | "scrollY" | "self" | "status" | "statusbar" | "stop" | "toolbar" | "top";
375
387
  message: string;
376
388
  }[]];
377
389
  'no-restricted-imports': ["off", {
@@ -592,10 +604,21 @@ declare const builtinRules: {
592
604
  //#endregion
593
605
  //#region src/rules/eslint-comments.d.ts
594
606
  declare const eslintCommentsRules: {
595
- 'eslint-comments/no-aggregating-enable': "error";
596
- 'eslint-comments/no-duplicate-disable': "error";
597
- 'eslint-comments/no-unlimited-disable': "error";
598
- 'eslint-comments/no-unused-enable': "error";
607
+ '@eslint-community/eslint-comments/disable-enable-pair': ["error", {
608
+ allowWholeFile: boolean;
609
+ }];
610
+ '@eslint-community/eslint-comments/no-aggregating-enable': "error";
611
+ '@eslint-community/eslint-comments/no-duplicate-disable': "error";
612
+ '@eslint-community/eslint-comments/no-unlimited-disable': "error";
613
+ '@eslint-community/eslint-comments/no-unused-disable': "error";
614
+ '@eslint-community/eslint-comments/no-unused-enable': "error";
615
+ '@eslint-community/eslint-comments/no-restricted-disable': "off";
616
+ '@eslint-community/eslint-comments/no-use': ["off", {
617
+ allow: never[];
618
+ }];
619
+ '@eslint-community/eslint-comments/require-description': ["error", {
620
+ ignore: never[];
621
+ }];
599
622
  };
600
623
  //#endregion
601
624
  //#region src/rules/imports.d.ts
@@ -768,6 +791,7 @@ declare const markdownShimRules: {
768
791
  //#region src/rules/markdown.d.ts
769
792
  declare const markdownRules: {
770
793
  'markdown/fenced-code-language': "error";
794
+ 'markdown/fenced-code-meta': "off";
771
795
  'markdown/heading-increment': "error";
772
796
  'markdown/no-bare-urls': "off";
773
797
  'markdown/no-duplicate-definitions': "error";
@@ -815,12 +839,12 @@ declare const reactHooksRules: {
815
839
  'react-hooks/static-components': "error";
816
840
  'react-hooks/unsupported-syntax': "error";
817
841
  'react-hooks/use-memo': "error";
818
- 'react-hooks/automatic-effect-dependencies': "off";
819
842
  'react-hooks/capitalized-calls': "off";
843
+ 'react-hooks/exhaustive-effect-dependencies': "off";
820
844
  'react-hooks/fbt': "off";
821
- 'react-hooks/fire': "off";
822
845
  'react-hooks/hooks': "off";
823
846
  'react-hooks/invariant': "off";
847
+ 'react-hooks/memo-dependencies': "off";
824
848
  'react-hooks/memoized-effect-dependencies': "off";
825
849
  'react-hooks/no-deriving-state-in-effects': "off";
826
850
  'react-hooks/rule-suppression': "off";
@@ -1530,9 +1554,11 @@ declare const vueRules: {
1530
1554
  'vue/prefer-define-options': "error";
1531
1555
  'vue/prefer-prop-type-boolean-first': "error";
1532
1556
  'vue/prefer-separate-static-class': "error";
1557
+ 'vue/prefer-single-event-payload': "warn";
1533
1558
  'vue/prefer-template': "error";
1534
1559
  'vue/prefer-true-attribute-shorthand': "off";
1535
1560
  'vue/prefer-use-template-ref': "error";
1561
+ 'vue/prefer-v-model': "warn";
1536
1562
  'vue/require-default-export': "warn";
1537
1563
  'vue/require-direct-export': ["error", {
1538
1564
  disallowFunctionalComponentFunction: boolean;
package/dist/index.d.mts CHANGED
@@ -76,13 +76,25 @@ declare const prettier: () => Config[];
76
76
  interface EslintReactOptions {
77
77
  files?: Config['files'];
78
78
  overrides?: Config['rules'];
79
+ settings?: {
80
+ 'react'?: {
81
+ version?: string;
82
+ };
83
+ /**
84
+ * @see https://react.dev/reference/eslint-plugin-react-hooks/lints/rules-of-hooks#options
85
+ */
86
+ 'react-hooks'?: {
87
+ additionalEffectHooks?: string;
88
+ };
89
+ };
79
90
  }
80
91
  /**
81
92
  * React configuration for eslint.
82
93
  */
83
94
  declare const react$1: ({
84
95
  files,
85
- overrides
96
+ overrides,
97
+ settings
86
98
  }?: EslintReactOptions) => Promise<Config[]>;
87
99
  //#endregion
88
100
  //#region src/configs/typescript.d.ts
@@ -369,7 +381,7 @@ declare const builtinRules: {
369
381
  name: string;
370
382
  message: string;
371
383
  }, ...{
372
- name: "external" | "parent" | "name" | "addEventListener" | "blur" | "close" | "closed" | "confirm" | "defaultStatus" | "defaultstatus" | "event" | "find" | "focus" | "frameElement" | "frames" | "history" | "innerHeight" | "innerWidth" | "length" | "location" | "locationbar" | "menubar" | "moveBy" | "moveTo" | "onblur" | "onerror" | "onfocus" | "onload" | "onresize" | "onunload" | "open" | "opener" | "opera" | "outerHeight" | "outerWidth" | "pageXOffset" | "pageYOffset" | "print" | "removeEventListener" | "resizeBy" | "resizeTo" | "screen" | "screenLeft" | "screenTop" | "screenX" | "screenY" | "scroll" | "scrollbars" | "scrollBy" | "scrollTo" | "scrollX" | "scrollY" | "self" | "status" | "statusbar" | "stop" | "toolbar" | "top";
384
+ name: "name" | "addEventListener" | "blur" | "close" | "closed" | "confirm" | "defaultStatus" | "defaultstatus" | "event" | "external" | "find" | "focus" | "frameElement" | "frames" | "history" | "innerHeight" | "innerWidth" | "length" | "location" | "locationbar" | "menubar" | "moveBy" | "moveTo" | "onblur" | "onerror" | "onfocus" | "onload" | "onresize" | "onunload" | "open" | "opener" | "opera" | "outerHeight" | "outerWidth" | "pageXOffset" | "pageYOffset" | "parent" | "print" | "removeEventListener" | "resizeBy" | "resizeTo" | "screen" | "screenLeft" | "screenTop" | "screenX" | "screenY" | "scroll" | "scrollbars" | "scrollBy" | "scrollTo" | "scrollX" | "scrollY" | "self" | "status" | "statusbar" | "stop" | "toolbar" | "top";
373
385
  message: string;
374
386
  }[]];
375
387
  'no-restricted-imports': ["off", {
@@ -590,10 +602,21 @@ declare const builtinRules: {
590
602
  //#endregion
591
603
  //#region src/rules/eslint-comments.d.ts
592
604
  declare const eslintCommentsRules: {
593
- 'eslint-comments/no-aggregating-enable': "error";
594
- 'eslint-comments/no-duplicate-disable': "error";
595
- 'eslint-comments/no-unlimited-disable': "error";
596
- 'eslint-comments/no-unused-enable': "error";
605
+ '@eslint-community/eslint-comments/disable-enable-pair': ["error", {
606
+ allowWholeFile: boolean;
607
+ }];
608
+ '@eslint-community/eslint-comments/no-aggregating-enable': "error";
609
+ '@eslint-community/eslint-comments/no-duplicate-disable': "error";
610
+ '@eslint-community/eslint-comments/no-unlimited-disable': "error";
611
+ '@eslint-community/eslint-comments/no-unused-disable': "error";
612
+ '@eslint-community/eslint-comments/no-unused-enable': "error";
613
+ '@eslint-community/eslint-comments/no-restricted-disable': "off";
614
+ '@eslint-community/eslint-comments/no-use': ["off", {
615
+ allow: never[];
616
+ }];
617
+ '@eslint-community/eslint-comments/require-description': ["error", {
618
+ ignore: never[];
619
+ }];
597
620
  };
598
621
  //#endregion
599
622
  //#region src/rules/imports.d.ts
@@ -766,6 +789,7 @@ declare const markdownShimRules: {
766
789
  //#region src/rules/markdown.d.ts
767
790
  declare const markdownRules: {
768
791
  'markdown/fenced-code-language': "error";
792
+ 'markdown/fenced-code-meta': "off";
769
793
  'markdown/heading-increment': "error";
770
794
  'markdown/no-bare-urls': "off";
771
795
  'markdown/no-duplicate-definitions': "error";
@@ -813,12 +837,12 @@ declare const reactHooksRules: {
813
837
  'react-hooks/static-components': "error";
814
838
  'react-hooks/unsupported-syntax': "error";
815
839
  'react-hooks/use-memo': "error";
816
- 'react-hooks/automatic-effect-dependencies': "off";
817
840
  'react-hooks/capitalized-calls': "off";
841
+ 'react-hooks/exhaustive-effect-dependencies': "off";
818
842
  'react-hooks/fbt': "off";
819
- 'react-hooks/fire': "off";
820
843
  'react-hooks/hooks': "off";
821
844
  'react-hooks/invariant': "off";
845
+ 'react-hooks/memo-dependencies': "off";
822
846
  'react-hooks/memoized-effect-dependencies': "off";
823
847
  'react-hooks/no-deriving-state-in-effects': "off";
824
848
  'react-hooks/rule-suppression': "off";
@@ -1528,9 +1552,11 @@ declare const vueRules: {
1528
1552
  'vue/prefer-define-options': "error";
1529
1553
  'vue/prefer-prop-type-boolean-first': "error";
1530
1554
  'vue/prefer-separate-static-class': "error";
1555
+ 'vue/prefer-single-event-payload': "warn";
1531
1556
  'vue/prefer-template': "error";
1532
1557
  'vue/prefer-true-attribute-shorthand': "off";
1533
1558
  'vue/prefer-use-template-ref': "error";
1559
+ 'vue/prefer-v-model': "warn";
1534
1560
  'vue/require-default-export': "warn";
1535
1561
  'vue/require-direct-export': ["error", {
1536
1562
  disallowFunctionalComponentFunction: boolean;
package/dist/index.mjs CHANGED
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./chunk-CfYAbeIz.mjs";
2
2
  import importPlugin from "eslint-plugin-import-x";
3
3
  import confusingBrowserGlobals from "confusing-browser-globals";
4
4
  import tsPlugin from "@typescript-eslint/eslint-plugin";
5
- import eslintCommentsPlugin from "eslint-plugin-eslint-comments";
5
+ import eslintCommentsPlugin from "@eslint-community/eslint-plugin-eslint-comments";
6
6
  import globals from "globals";
7
7
  import { mergeProcessors, processorPassThrough } from "eslint-merge-processors";
8
8
  import prettierConfig from "eslint-config-prettier/flat";
@@ -556,10 +556,15 @@ const builtinRules = {
556
556
  //#endregion
557
557
  //#region src/rules/eslint-comments.ts
558
558
  const eslintCommentsRules = {
559
- "eslint-comments/no-aggregating-enable": "error",
560
- "eslint-comments/no-duplicate-disable": "error",
561
- "eslint-comments/no-unlimited-disable": "error",
562
- "eslint-comments/no-unused-enable": "error"
559
+ "@eslint-community/eslint-comments/disable-enable-pair": ["error", { allowWholeFile: true }],
560
+ "@eslint-community/eslint-comments/no-aggregating-enable": "error",
561
+ "@eslint-community/eslint-comments/no-duplicate-disable": "error",
562
+ "@eslint-community/eslint-comments/no-unlimited-disable": "error",
563
+ "@eslint-community/eslint-comments/no-unused-disable": "error",
564
+ "@eslint-community/eslint-comments/no-unused-enable": "error",
565
+ "@eslint-community/eslint-comments/no-restricted-disable": "off",
566
+ "@eslint-community/eslint-comments/no-use": ["off", { allow: [] }],
567
+ "@eslint-community/eslint-comments/require-description": ["error", { ignore: [] }]
563
568
  };
564
569
  //#endregion
565
570
  //#region src/rules/imports.ts
@@ -777,6 +782,7 @@ const markdownShimRules = {
777
782
  //#region src/rules/markdown.ts
778
783
  const markdownRules = {
779
784
  "markdown/fenced-code-language": "error",
785
+ "markdown/fenced-code-meta": "off",
780
786
  "markdown/heading-increment": "error",
781
787
  "markdown/no-bare-urls": "off",
782
788
  "markdown/no-duplicate-definitions": "error",
@@ -822,12 +828,12 @@ const reactHooksRules = {
822
828
  "react-hooks/static-components": "error",
823
829
  "react-hooks/unsupported-syntax": "error",
824
830
  "react-hooks/use-memo": "error",
825
- "react-hooks/automatic-effect-dependencies": "off",
826
831
  "react-hooks/capitalized-calls": "off",
832
+ "react-hooks/exhaustive-effect-dependencies": "off",
827
833
  "react-hooks/fbt": "off",
828
- "react-hooks/fire": "off",
829
834
  "react-hooks/hooks": "off",
830
835
  "react-hooks/invariant": "off",
836
+ "react-hooks/memo-dependencies": "off",
831
837
  "react-hooks/memoized-effect-dependencies": "off",
832
838
  "react-hooks/no-deriving-state-in-effects": "off",
833
839
  "react-hooks/rule-suppression": "off",
@@ -1510,9 +1516,11 @@ const vueRules = {
1510
1516
  "vue/prefer-define-options": "error",
1511
1517
  "vue/prefer-prop-type-boolean-first": "error",
1512
1518
  "vue/prefer-separate-static-class": "error",
1519
+ "vue/prefer-single-event-payload": "warn",
1513
1520
  "vue/prefer-template": builtinRules["prefer-template"],
1514
1521
  "vue/prefer-true-attribute-shorthand": "off",
1515
1522
  "vue/prefer-use-template-ref": "error",
1523
+ "vue/prefer-v-model": "warn",
1516
1524
  "vue/require-default-export": "warn",
1517
1525
  "vue/require-direct-export": ["error", { disallowFunctionalComponentFunction: false }],
1518
1526
  "vue/require-explicit-slots": "error",
@@ -1584,7 +1592,7 @@ const imports = ({ overrides, packageDir } = {}) => [{
1584
1592
  const javascript = ({ overrides } = {}) => [
1585
1593
  {
1586
1594
  name: "meteorlxy/javascript/plugins",
1587
- plugins: { "eslint-comments": eslintCommentsPlugin }
1595
+ plugins: { "@eslint-community/eslint-comments": eslintCommentsPlugin }
1588
1596
  },
1589
1597
  {
1590
1598
  name: "meteorlxy/javascript/rules",
@@ -1698,7 +1706,7 @@ const prettier = () => [{
1698
1706
  /**
1699
1707
  * React configuration for eslint.
1700
1708
  */
1701
- const react = async ({ files = ["**/*.ts", "**/*.tsx"], overrides } = {}) => {
1709
+ const react = async ({ files = ["**/*.ts", "**/*.tsx"], overrides, settings } = {}) => {
1702
1710
  const [reactPlugin, reactHooksPlugin, reactRefreshPlugin] = await Promise.all([
1703
1711
  interopDefault(import("eslint-plugin-react")),
1704
1712
  interopDefault(import("eslint-plugin-react-hooks")),
@@ -1711,7 +1719,14 @@ const react = async ({ files = ["**/*.ts", "**/*.tsx"], overrides } = {}) => {
1711
1719
  "react-hooks": reactHooksPlugin,
1712
1720
  "react-refresh": reactRefreshPlugin
1713
1721
  },
1714
- settings: { react: { version: "detect" } }
1722
+ settings: {
1723
+ ...settings,
1724
+ "react": {
1725
+ version: "detect",
1726
+ ...settings?.react
1727
+ },
1728
+ "react-hooks": { ...settings?.["react-hooks"] }
1729
+ }
1715
1730
  }, {
1716
1731
  name: "meteorlxy/react/rules",
1717
1732
  files,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meteorlxy/eslint-config",
3
- "version": "7.4.0",
3
+ "version": "7.6.0",
4
4
  "description": "meteorlxy eslint config",
5
5
  "keywords": [
6
6
  "config",
@@ -32,36 +32,36 @@
32
32
  "access": "public"
33
33
  },
34
34
  "dependencies": {
35
- "@eslint/core": "^0.17.0",
36
- "@eslint/markdown": "^7.5.1",
37
- "@typescript-eslint/eslint-plugin": "^8.59.1",
38
- "@typescript-eslint/parser": "^8.59.1",
35
+ "@eslint-community/eslint-plugin-eslint-comments": "^4.7.1",
36
+ "@eslint/core": "^1.2.1",
37
+ "@eslint/markdown": "^8.0.1",
38
+ "@typescript-eslint/eslint-plugin": "^8.59.2",
39
+ "@typescript-eslint/parser": "^8.59.2",
39
40
  "confusing-browser-globals": "^1.0.11",
40
41
  "eslint-config-flat-gitignore": "^2.3.0",
41
42
  "eslint-config-prettier": "^10.1.8",
42
43
  "eslint-merge-processors": "^2.0.0",
43
- "eslint-plugin-eslint-comments": "^3.2.0",
44
44
  "eslint-plugin-import-x": "^4.16.2",
45
45
  "eslint-plugin-jsonc": "^3.1.2",
46
- "globals": "^17.5.0",
46
+ "globals": "^17.6.0",
47
47
  "jsonc-eslint-parser": "^3.1.0"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@types/confusing-browser-globals": "^1.0.3",
51
- "eslint": "^9.39.4",
51
+ "eslint": "^10.3.0",
52
52
  "eslint-plugin-react": "^7.37.5",
53
53
  "eslint-plugin-react-hooks": "^7.1.1",
54
54
  "eslint-plugin-react-refresh": "^0.5.2",
55
- "eslint-plugin-vue": "^10.9.0",
56
- "tsdown": "^0.21.10",
55
+ "eslint-plugin-vue": "^10.9.1",
56
+ "tsdown": "^0.22.0",
57
57
  "vue-eslint-parser": "^10.4.0"
58
58
  },
59
59
  "peerDependencies": {
60
- "eslint": "^9.39.4",
60
+ "eslint": "^9.39.4 || ^10.3.0",
61
61
  "eslint-plugin-react": "^7.37.5",
62
62
  "eslint-plugin-react-hooks": "^7.1.1",
63
63
  "eslint-plugin-react-refresh": "^0.5.2",
64
- "eslint-plugin-vue": "^10.9.0",
64
+ "eslint-plugin-vue": "^10.9.1",
65
65
  "vue-eslint-parser": "^10.4.0"
66
66
  },
67
67
  "peerDependenciesMeta": {