@rhyster/eslint-config 1.5.0 → 1.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.
Files changed (56) hide show
  1. package/dist/eslint.config.d.ts +12 -15
  2. package/dist/eslint.config.d.ts.map +1 -1
  3. package/dist/index.cjs +105 -114
  4. package/dist/index.cjs.map +1 -1
  5. package/dist/index.d.cts +1656 -1544
  6. package/dist/index.d.mts +1656 -1544
  7. package/dist/index.d.ts +1656 -1544
  8. package/dist/index.mjs +101 -110
  9. package/dist/index.mjs.map +1 -1
  10. package/dist/src/index.d.ts +1653 -1542
  11. package/dist/src/index.d.ts.map +1 -1
  12. package/dist/src/rules/airbnb/best-practices.d.ts.map +1 -0
  13. package/dist/src/rules/airbnb/errors.d.ts.map +1 -0
  14. package/dist/src/rules/airbnb/es6.d.ts.map +1 -0
  15. package/dist/src/{airbnb → rules/airbnb}/imports.d.ts.map +1 -1
  16. package/dist/src/rules/airbnb/node.d.ts.map +1 -0
  17. package/dist/src/rules/airbnb/strict.d.ts.map +1 -0
  18. package/dist/src/{airbnb → rules/airbnb}/style.d.ts.map +1 -1
  19. package/dist/src/rules/airbnb/variables.d.ts.map +1 -0
  20. package/dist/src/rules/browser.d.ts +1137 -0
  21. package/dist/src/rules/browser.d.ts.map +1 -0
  22. package/dist/src/rules/general.d.ts +35 -0
  23. package/dist/src/rules/general.d.ts.map +1 -0
  24. package/dist/src/rules/typescript.d.ts.map +1 -0
  25. package/dist/src/rules/vue.d.ts +36 -0
  26. package/dist/src/rules/vue.d.ts.map +1 -0
  27. package/package.json +2 -2
  28. package/src/index.ts +35 -164
  29. package/src/rules/browser.ts +10 -0
  30. package/src/rules/general.ts +61 -0
  31. package/src/rules/vue.ts +67 -0
  32. package/dist/src/airbnb/best-practices.d.ts.map +0 -1
  33. package/dist/src/airbnb/errors.d.ts.map +0 -1
  34. package/dist/src/airbnb/es6.d.ts.map +0 -1
  35. package/dist/src/airbnb/node.d.ts.map +0 -1
  36. package/dist/src/airbnb/strict.d.ts.map +0 -1
  37. package/dist/src/airbnb/variables.d.ts.map +0 -1
  38. package/dist/src/typescript.d.ts.map +0 -1
  39. /package/dist/src/{airbnb → rules/airbnb}/best-practices.d.ts +0 -0
  40. /package/dist/src/{airbnb → rules/airbnb}/errors.d.ts +0 -0
  41. /package/dist/src/{airbnb → rules/airbnb}/es6.d.ts +0 -0
  42. /package/dist/src/{airbnb → rules/airbnb}/imports.d.ts +0 -0
  43. /package/dist/src/{airbnb → rules/airbnb}/node.d.ts +0 -0
  44. /package/dist/src/{airbnb → rules/airbnb}/strict.d.ts +0 -0
  45. /package/dist/src/{airbnb → rules/airbnb}/style.d.ts +0 -0
  46. /package/dist/src/{airbnb → rules/airbnb}/variables.d.ts +0 -0
  47. /package/dist/src/{typescript.d.ts → rules/typescript.d.ts} +0 -0
  48. /package/src/{airbnb → rules/airbnb}/best-practices.ts +0 -0
  49. /package/src/{airbnb → rules/airbnb}/errors.ts +0 -0
  50. /package/src/{airbnb → rules/airbnb}/es6.ts +0 -0
  51. /package/src/{airbnb → rules/airbnb}/imports.ts +0 -0
  52. /package/src/{airbnb → rules/airbnb}/node.ts +0 -0
  53. /package/src/{airbnb → rules/airbnb}/strict.ts +0 -0
  54. /package/src/{airbnb → rules/airbnb}/style.ts +0 -0
  55. /package/src/{airbnb → rules/airbnb}/variables.ts +0 -0
  56. /package/src/{typescript.ts → rules/typescript.ts} +0 -0
package/dist/index.mjs CHANGED
@@ -1,12 +1,12 @@
1
1
  import js from '@eslint/js';
2
- import stylistic from '@stylistic/eslint-plugin';
3
- import importx from 'eslint-plugin-import-x';
4
2
  import nodePlugin from 'eslint-plugin-n';
5
- import vuePlugin from 'eslint-plugin-vue';
6
3
  import globals from 'globals';
7
4
  import ts from 'typescript-eslint';
8
- import vueParser from 'vue-eslint-parser';
9
5
  import confusingBrowserGlobals from 'confusing-browser-globals';
6
+ import stylistic from '@stylistic/eslint-plugin';
7
+ import importx from 'eslint-plugin-import-x';
8
+ import vuePlugin from 'eslint-plugin-vue';
9
+ import vueParser from 'vue-eslint-parser';
10
10
 
11
11
  const bestPractices = {
12
12
  name: "@rhyster/eslint-config/airbnb/best-practices",
@@ -1743,6 +1743,66 @@ const variables = {
1743
1743
  }
1744
1744
  };
1745
1745
 
1746
+ const browserRules = {
1747
+ name: "@rhyster/eslint-config/airbnb/browser",
1748
+ languageOptions: {
1749
+ globals: globals.browser
1750
+ }
1751
+ };
1752
+
1753
+ const general = {
1754
+ name: "@rhyster/eslint-config/general",
1755
+ plugins: {
1756
+ "@typescript-eslint": ts.plugin,
1757
+ "@stylistic": stylistic,
1758
+ "import-x": importx
1759
+ },
1760
+ languageOptions: {
1761
+ parser: ts.parser,
1762
+ parserOptions: {
1763
+ projectService: true
1764
+ }
1765
+ },
1766
+ settings: {
1767
+ "import-x/parsers": {
1768
+ espree: [
1769
+ ".js",
1770
+ ".mjs"
1771
+ ],
1772
+ "@typescript-eslint/parser": [
1773
+ ".ts",
1774
+ ".d.ts"
1775
+ ]
1776
+ },
1777
+ "import-x/resolver": {
1778
+ node: {
1779
+ extensions: [
1780
+ ".mjs",
1781
+ ".js",
1782
+ ".json",
1783
+ ".ts",
1784
+ ".d.ts"
1785
+ ]
1786
+ }
1787
+ },
1788
+ "import-x/extensions": [
1789
+ ".js",
1790
+ ".mjs",
1791
+ ".ts",
1792
+ ".d.ts"
1793
+ ],
1794
+ "import-x/core-modules": [],
1795
+ "import-x/ignore": [
1796
+ "node_modules",
1797
+ "\\.(coffee|scss|css|less|hbs|svg|json)$"
1798
+ ],
1799
+ "import-x/external-module-folders": [
1800
+ "node_modules",
1801
+ "node_modules/@types"
1802
+ ]
1803
+ }
1804
+ };
1805
+
1746
1806
  const typescript = {
1747
1807
  name: "@rhyster/eslint-config/typescript",
1748
1808
  rules: {
@@ -1815,64 +1875,6 @@ const typescript = {
1815
1875
  }
1816
1876
  };
1817
1877
 
1818
- const general = {
1819
- name: "@rhyster/eslint-config/airbnb/general",
1820
- plugins: {
1821
- "@typescript-eslint": ts.plugin,
1822
- "@stylistic": stylistic,
1823
- "import-x": importx
1824
- },
1825
- languageOptions: {
1826
- parser: ts.parser,
1827
- parserOptions: {
1828
- projectService: true
1829
- }
1830
- },
1831
- settings: {
1832
- "import-x/parsers": {
1833
- espree: [
1834
- ".js",
1835
- ".mjs"
1836
- ],
1837
- "@typescript-eslint/parser": [
1838
- ".ts",
1839
- ".d.ts"
1840
- ]
1841
- },
1842
- "import-x/resolver": {
1843
- node: {
1844
- extensions: [
1845
- ".mjs",
1846
- ".js",
1847
- ".json",
1848
- ".ts",
1849
- ".d.ts"
1850
- ]
1851
- }
1852
- },
1853
- "import-x/extensions": [
1854
- ".js",
1855
- ".mjs",
1856
- ".ts",
1857
- ".d.ts"
1858
- ],
1859
- "import-x/core-modules": [],
1860
- "import-x/ignore": [
1861
- "node_modules",
1862
- "\\.(coffee|scss|css|less|hbs|svg|json)$"
1863
- ],
1864
- "import-x/external-module-folders": [
1865
- "node_modules",
1866
- "node_modules/@types"
1867
- ]
1868
- }
1869
- };
1870
- const browserRules = {
1871
- name: "@rhyster/eslint-config/airbnb/browser",
1872
- languageOptions: {
1873
- globals: globals.browser
1874
- }
1875
- };
1876
1878
  const generalVue = {
1877
1879
  ...general,
1878
1880
  name: "@rhyster/eslint-config/airbnb/general-vue",
@@ -1904,7 +1906,6 @@ const generalVue = {
1904
1906
  };
1905
1907
  const setupVue = {
1906
1908
  name: "@rhyster/eslint-config/setup-vue",
1907
- files: ["**/*.vue"],
1908
1909
  languageOptions: {
1909
1910
  parser: vueParser,
1910
1911
  parserOptions: {
@@ -1914,12 +1915,21 @@ const setupVue = {
1914
1915
  }
1915
1916
  }
1916
1917
  };
1917
- const core = [
1918
+ const vueConfigs = {
1919
+ name: "@rhyster/eslint-config/vue-configs",
1920
+ rules: {
1921
+ "import-x/no-unused-modules": "off"
1922
+ }
1923
+ };
1924
+ const vueRules = [
1925
+ generalVue,
1926
+ ...vuePlugin.configs["flat/recommended"],
1927
+ setupVue,
1928
+ vueConfigs
1929
+ ];
1930
+
1931
+ const coreConfigs = [
1918
1932
  js.configs.recommended,
1919
- {
1920
- name: "@rhyster/eslint-config/files-ts",
1921
- files: ["**/*.ts"]
1922
- },
1923
1933
  general,
1924
1934
  ...ts.configs.strictTypeChecked,
1925
1935
  ...ts.configs.stylisticTypeChecked,
@@ -1932,62 +1942,43 @@ const core = [
1932
1942
  strict,
1933
1943
  typescript
1934
1944
  ];
1945
+ const core = coreConfigs.map((config) => ({
1946
+ ...config,
1947
+ files: ["src/**/*.ts"]
1948
+ }));
1935
1949
  const node = [
1936
1950
  ...core,
1937
1951
  {
1952
+ name: "@rhyster/eslint-config/setup-node",
1953
+ files: ["src/**/*.ts"],
1938
1954
  languageOptions: {
1939
1955
  globals: globals.node
1940
1956
  },
1941
1957
  plugins: {
1942
1958
  n: nodePlugin
1943
- },
1944
- ...nodeRules
1959
+ }
1960
+ },
1961
+ {
1962
+ ...nodeRules,
1963
+ files: ["src/**/*.ts"]
1945
1964
  }
1946
1965
  ];
1947
1966
  const browser = [
1948
1967
  ...core,
1949
- browserRules
1968
+ {
1969
+ ...browserRules,
1970
+ files: ["src/**/*.ts"]
1971
+ }
1950
1972
  ];
1951
1973
  const vue = [
1952
- js.configs.recommended,
1953
- {
1954
- name: "@rhyster/eslint-config/files-ts",
1955
- files: ["**/*.ts"]
1956
- },
1957
- {
1958
- name: "@rhyster/eslint-config/files-vue",
1959
- files: ["**/*.vue"]
1960
- },
1961
- generalVue,
1962
- ...ts.configs.strictTypeChecked.map((config) => {
1963
- if (config.files?.includes("**/*.ts") === true) {
1964
- return {
1965
- ...config,
1966
- files: [...config.files, "**/*.vue"]
1967
- };
1968
- }
1969
- return config;
1970
- }),
1971
- ...ts.configs.stylisticTypeChecked.map((config) => {
1972
- if (config.files?.includes("**/*.ts") === true) {
1973
- return {
1974
- ...config,
1975
- files: [...config.files, "**/*.vue"]
1976
- };
1977
- }
1978
- return config;
1979
- }),
1980
- bestPractices,
1981
- errors,
1982
- style,
1983
- variables,
1984
- es6,
1985
- imports,
1986
- strict,
1987
- typescript,
1988
- browserRules,
1989
- ...vuePlugin.configs["flat/recommended"],
1990
- setupVue
1974
+ ...browser.map((config) => ({
1975
+ ...config,
1976
+ files: ["src/**/*.ts", "src/**/*.vue"]
1977
+ })),
1978
+ ...vueRules.map((config) => ({
1979
+ ...config,
1980
+ files: ["src/**/*.vue"]
1981
+ }))
1991
1982
  ];
1992
1983
 
1993
1984
  export { browser, core, node, vue };