@ntnyq/eslint-config 4.0.0-beta.6 → 4.0.0-beta.7

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
@@ -47,28 +47,28 @@ import { default as default8 } from "eslint-plugin-antfu";
47
47
  import { default as default9 } from "eslint-plugin-jsdoc";
48
48
  import { default as default10 } from "eslint-plugin-jsonc";
49
49
  import { default as default11 } from "eslint-plugin-pinia";
50
- import { default as default12 } from "eslint-plugin-format";
50
+ import { default as default12 } from "eslint-plugin-ntnyq";
51
+ import { default as default13 } from "eslint-plugin-format";
51
52
  import { plugin } from "typescript-eslint";
52
- import { default as default13 } from "@unocss/eslint-plugin";
53
- import { default as default14 } from "@vitest/eslint-plugin";
54
- import { default as default15 } from "eslint-plugin-unicorn";
55
- import { default as default16 } from "eslint-plugin-import-x";
56
- import { default as default17 } from "eslint-plugin-prettier";
57
- import { default as default18 } from "eslint-plugin-de-morgan";
58
- import { default as default19 } from "eslint-plugin-no-only-tests";
59
- import { default as default20 } from "eslint-plugin-github-action";
60
- import { default as default21 } from "eslint-plugin-perfectionist";
61
- import { default as default22 } from "eslint-plugin-unused-imports";
62
- import { default as default23 } from "@eslint-community/eslint-plugin-eslint-comments";
53
+ import { default as default14 } from "@unocss/eslint-plugin";
54
+ import { default as default15 } from "@vitest/eslint-plugin";
55
+ import { default as default16 } from "eslint-plugin-unicorn";
56
+ import { default as default17 } from "eslint-plugin-import-x";
57
+ import { default as default18 } from "eslint-plugin-prettier";
58
+ import { default as default19 } from "eslint-plugin-de-morgan";
59
+ import { default as default20 } from "eslint-plugin-no-only-tests";
60
+ import { default as default21 } from "eslint-plugin-github-action";
61
+ import { default as default22 } from "eslint-plugin-perfectionist";
62
+ import { default as default23 } from "eslint-plugin-unused-imports";
63
+ import { default as default24 } from "@eslint-community/eslint-plugin-eslint-comments";
63
64
 
64
65
  // src/eslint/resolvers.ts
65
66
  import { createTypeScriptImportResolver } from "eslint-import-resolver-typescript";
66
- var createNodeResolver = default16.createNodeResolver;
67
+ var createNodeResolver = default17.createNodeResolver;
67
68
 
68
69
  // src/eslint/processors.ts
69
- import { mergeProcessors } from "eslint-merge-processors";
70
- import { processorPassThrough } from "eslint-merge-processors";
71
- import { default as default24 } from "eslint-processor-vue-blocks";
70
+ import { default as default25 } from "eslint-processor-vue-blocks";
71
+ import { mergeProcessors, processorPassThrough } from "eslint-merge-processors";
72
72
 
73
73
  // src/globs.ts
74
74
  var GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
@@ -396,7 +396,7 @@ var configVue = (options = {}) => {
396
396
  if (!sfcBlocks) return processorVueSFC;
397
397
  return mergeProcessors2([
398
398
  processorVueSFC,
399
- default24({
399
+ default25({
400
400
  ...sfcBlocks,
401
401
  blocks: {
402
402
  styles: true,
@@ -991,18 +991,23 @@ var configSort = (options = {}) => {
991
991
  };
992
992
 
993
993
  // src/configs/svgo.ts
994
- import { createConfig as createSVGOConfig } from "eslint-plugin-svgo";
995
994
  var configSVGO = (options = {}) => {
996
- const { files = [GLOB_SVG], rules: overridesRules = {} } = options;
995
+ const { files = [GLOB_SVG], ignores = [] } = options;
997
996
  return [
998
- createSVGOConfig({
997
+ {
999
998
  name: "ntnyq/svgo",
1000
999
  files,
1000
+ ignores,
1001
+ plugins: {
1002
+ svgo: default5
1003
+ },
1004
+ languageOptions: {
1005
+ parser: parserPlain
1006
+ },
1001
1007
  rules: {
1002
- "svgo/svgo": "error",
1003
- ...overridesRules
1008
+ "svgo/svgo": "error"
1004
1009
  }
1005
- })
1010
+ }
1006
1011
  ];
1007
1012
  };
1008
1013
 
@@ -1120,7 +1125,7 @@ var configTest = (options = {}) => {
1120
1125
  {
1121
1126
  name: "ntnyq/test/setup",
1122
1127
  plugins: {
1123
- "no-only-tests": default19
1128
+ "no-only-tests": default20
1124
1129
  }
1125
1130
  },
1126
1131
  {
@@ -1140,10 +1145,18 @@ var configTest = (options = {}) => {
1140
1145
  name: "ntnyq/test/vitest",
1141
1146
  files,
1142
1147
  plugins: {
1143
- vitest: default14
1148
+ vitest: default15
1149
+ },
1150
+ settings: {
1151
+ /**
1152
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/tree/main?tab=readme-ov-file#enabling-with-type-testing
1153
+ */
1154
+ vitest: {
1155
+ typecheck: true
1156
+ }
1144
1157
  },
1145
1158
  rules: {
1146
- ...default14.configs.recommended.rules,
1159
+ ...default15.configs.recommended.rules,
1147
1160
  // Overrides rules
1148
1161
  ...options.overridesVitestRules
1149
1162
  }
@@ -1353,17 +1366,18 @@ var configJsonc = (options = {}) => {
1353
1366
  };
1354
1367
 
1355
1368
  // src/configs/ntnyq.ts
1356
- import { createConfig as createNtnyqConfig } from "eslint-plugin-ntnyq";
1357
1369
  var configNtnyq = (options = {}) => [
1358
1370
  {
1359
- ...createNtnyqConfig({
1360
- rules: {
1361
- "ntnyq/prefer-newline-after-file-header": "error",
1362
- // Overrides rules
1363
- ...options.overrides
1364
- }
1365
- }),
1366
- name: "ntnyq/ntnyq"
1371
+ name: "ntnyq/ntnyq",
1372
+ plugins: {
1373
+ ntnyq: default12
1374
+ },
1375
+ rules: {
1376
+ "ntnyq/no-duplicate-exports": "error",
1377
+ "ntnyq/prefer-newline-after-file-header": "error",
1378
+ // Overrides rules
1379
+ ...options.overrides
1380
+ }
1367
1381
  }
1368
1382
  ];
1369
1383
 
@@ -1602,7 +1616,7 @@ var configFormat = (options = {}) => {
1602
1616
  {
1603
1617
  name: "ntnyq/format/setup",
1604
1618
  plugins: {
1605
- format: default12
1619
+ format: default13
1606
1620
  }
1607
1621
  }
1608
1622
  ];
@@ -1706,7 +1720,7 @@ var configUnoCSS = (options = {}) => [
1706
1720
  {
1707
1721
  name: "ntnyq/unocss",
1708
1722
  plugins: {
1709
- unocss: default13
1723
+ unocss: default14
1710
1724
  },
1711
1725
  rules: {
1712
1726
  "unocss/order-attributify": options.attributify ? "error" : "off",
@@ -1810,7 +1824,7 @@ var configImportX = (options = {}) => {
1810
1824
  {
1811
1825
  name: "ntnyq/import-x",
1812
1826
  plugins: {
1813
- "import-x": default16
1827
+ "import-x": default17
1814
1828
  },
1815
1829
  settings: {
1816
1830
  "import-x/resolver-next": [
@@ -1868,32 +1882,24 @@ var configUnicorn = (options = {}) => [
1868
1882
  {
1869
1883
  name: "ntnyq/unicorn",
1870
1884
  plugins: {
1871
- unicorn: default15
1885
+ unicorn: default16
1872
1886
  },
1873
1887
  rules: {
1874
- "unicorn/catch-error-name": [
1875
- "error",
1876
- {
1877
- name: "err",
1878
- ignore: ["^_."]
1879
- }
1880
- ],
1888
+ "unicorn/consistent-assert": "error",
1881
1889
  "unicorn/consistent-existence-index-check": "error",
1882
- "unicorn/custom-error-definition": "error",
1883
1890
  "unicorn/error-message": "error",
1884
1891
  "unicorn/escape-case": "error",
1885
1892
  "unicorn/new-for-builtins": "error",
1893
+ "unicorn/no-accessor-recursion": "error",
1886
1894
  "unicorn/no-console-spaces": "error",
1887
1895
  "unicorn/no-for-loop": "error",
1888
1896
  "unicorn/no-hex-escape": "error",
1897
+ "unicorn/no-instanceof-builtins": "error",
1889
1898
  "unicorn/no-lonely-if": "error",
1890
1899
  "unicorn/no-new-buffer": "error",
1891
1900
  "unicorn/no-static-only-class": "error",
1892
1901
  "unicorn/no-typeof-undefined": "error",
1893
1902
  "unicorn/no-unnecessary-await": "error",
1894
- "unicorn/no-zero-fractions": "error",
1895
- "unicorn/number-literal-case": "error",
1896
- "unicorn/prefer-date-now": "error",
1897
1903
  "unicorn/prefer-includes": "error",
1898
1904
  "unicorn/prefer-keyboard-event-key": "error",
1899
1905
  "unicorn/prefer-math-min-max": "error",
@@ -1901,15 +1907,39 @@ var configUnicorn = (options = {}) => [
1901
1907
  "unicorn/prefer-modern-math-apis": "error",
1902
1908
  "unicorn/prefer-negative-index": "error",
1903
1909
  "unicorn/prefer-node-protocol": "error",
1904
- "unicorn/prefer-number-properties": "error",
1905
1910
  "unicorn/prefer-optional-catch-binding": "error",
1906
1911
  "unicorn/prefer-prototype-methods": "error",
1907
1912
  "unicorn/prefer-reflect-apply": "error",
1908
- "unicorn/prefer-regexp-test": "error",
1909
1913
  "unicorn/prefer-structured-clone": "error",
1910
- "unicorn/prefer-type-error": "error",
1911
1914
  "unicorn/switch-case-braces": ["error", "avoid"],
1915
+ /**
1916
+ * @pg Error
1917
+ */
1918
+ "unicorn/catch-error-name": [
1919
+ "error",
1920
+ {
1921
+ name: "err",
1922
+ ignore: ["^_."]
1923
+ }
1924
+ ],
1925
+ "unicorn/custom-error-definition": "error",
1926
+ "unicorn/prefer-type-error": "error",
1912
1927
  "unicorn/throw-new-error": "error",
1928
+ /**
1929
+ * @pg Number
1930
+ */
1931
+ "unicorn/no-zero-fractions": "error",
1932
+ "unicorn/number-literal-case": "error",
1933
+ "unicorn/prefer-number-properties": "error",
1934
+ /**
1935
+ * @pg RegExp
1936
+ */
1937
+ "unicorn/prefer-regexp-test": "error",
1938
+ /**
1939
+ * @pg Date
1940
+ */
1941
+ "unicorn/consistent-date-clone": "error",
1942
+ "unicorn/prefer-date-now": "error",
1913
1943
  /**
1914
1944
  * @pg String
1915
1945
  */
@@ -1933,7 +1963,6 @@ var configUnicorn = (options = {}) => [
1933
1963
  */
1934
1964
  "unicorn/no-array-method-this-argument": "error",
1935
1965
  "unicorn/no-array-push-push": "error",
1936
- "unicorn/no-instanceof-array": "error",
1937
1966
  "unicorn/no-new-array": "error",
1938
1967
  "unicorn/prefer-array-find": "error",
1939
1968
  "unicorn/prefer-array-flat-map": "error",
@@ -1955,10 +1984,10 @@ var configUnicorn = (options = {}) => [
1955
1984
  // src/configs/deMorgan.ts
1956
1985
  var configDeMorgan = (options = {}) => [
1957
1986
  {
1958
- ...default18.configs.recommended,
1987
+ ...default19.configs.recommended,
1959
1988
  name: "ntnyq/de-morgan",
1960
1989
  rules: {
1961
- ...default18.configs.recommended.rules,
1990
+ ...default19.configs.recommended.rules,
1962
1991
  // Overrides rules
1963
1992
  ...options.overrides
1964
1993
  }
@@ -2064,7 +2093,7 @@ var configPrettier = (options = {}) => {
2064
2093
  {
2065
2094
  name: "ntnyq/prettier",
2066
2095
  plugins: {
2067
- prettier: default17
2096
+ prettier: default18
2068
2097
  },
2069
2098
  rules: {
2070
2099
  "vue/array-bracket-newline": "off",
@@ -2104,7 +2133,7 @@ var configPrettier = (options = {}) => {
2104
2133
  "vue/space-infix-ops": "off",
2105
2134
  "vue/space-unary-ops": "off",
2106
2135
  "vue/template-curly-spacing": "off",
2107
- ...default17.configs.recommended.rules,
2136
+ ...default18.configs.recommended.rules,
2108
2137
  "prettier/prettier": options.severity || "warn",
2109
2138
  // Overrides rules
2110
2139
  ...options.overrides
@@ -2117,7 +2146,7 @@ var configPrettier = (options = {}) => {
2117
2146
  name: "ntnyq/prettier/disabled",
2118
2147
  files: [...disabledFiles, ...userDisabledFiles],
2119
2148
  plugins: {
2120
- prettier: default17
2149
+ prettier: default18
2121
2150
  },
2122
2151
  rules: {
2123
2152
  "prettier/prettier": "off"
@@ -2177,8 +2206,8 @@ var configSpecials = (options = {}) => {
2177
2206
  name: "ntnyq/specials/config-file",
2178
2207
  files: [`**/*.config*.${GLOB_SRC_EXT}`],
2179
2208
  plugins: {
2180
- "import-x": default16,
2181
- perfectionist: default21
2209
+ "import-x": default17,
2210
+ perfectionist: default22
2182
2211
  },
2183
2212
  rules: {
2184
2213
  "@typescript-eslint/explicit-function-return-type": "off",
@@ -2917,7 +2946,7 @@ var configPerfectionist = (options = {}) => {
2917
2946
  {
2918
2947
  name: options.all ? "ntnyq/perfectionist/all" : "ntnyq/perfectionist/common",
2919
2948
  plugins: {
2920
- perfectionist: default21
2949
+ perfectionist: default22
2921
2950
  },
2922
2951
  rules: {
2923
2952
  ...commonRules,
@@ -2941,7 +2970,7 @@ var configPerfectionist = (options = {}) => {
2941
2970
  name: "ntnyq/perfectionist/enums",
2942
2971
  files: [`**/enums/${GLOB_SRC}`, `**/enums.${GLOB_SRC_EXT}`],
2943
2972
  plugins: {
2944
- perfectionist: default21
2973
+ perfectionist: default22
2945
2974
  },
2946
2975
  rules: {
2947
2976
  ...sharedRules2,
@@ -2956,7 +2985,7 @@ var configPerfectionist = (options = {}) => {
2956
2985
  name: "ntnyq/perfectionist/types",
2957
2986
  files: [...GLOB_TYPES],
2958
2987
  plugins: {
2959
- perfectionist: default21
2988
+ perfectionist: default22
2960
2989
  },
2961
2990
  rules: {
2962
2991
  ...sharedRules2,
@@ -2971,7 +3000,7 @@ var configPerfectionist = (options = {}) => {
2971
3000
  name: "ntnyq/perfectionist/constants",
2972
3001
  files: [`**/constants/${GLOB_SRC}`, `**/constants.${GLOB_SRC_EXT}`],
2973
3002
  plugins: {
2974
- perfectionist: default21
3003
+ perfectionist: default22
2975
3004
  },
2976
3005
  rules: {
2977
3006
  ...sharedRules2,
@@ -2989,7 +3018,7 @@ var configUnusedImports = (options = {}) => [
2989
3018
  {
2990
3019
  name: "ntnyq/unused-imports",
2991
3020
  plugins: {
2992
- "unused-imports": default22
3021
+ "unused-imports": default23
2993
3022
  },
2994
3023
  rules: {
2995
3024
  "@typescript-eslint/no-unused-vars": "off",
@@ -3018,10 +3047,10 @@ var configESLintComments = (options = {}) => [
3018
3047
  {
3019
3048
  name: "ntnyq/eslint-comments",
3020
3049
  plugins: {
3021
- "@eslint-community/eslint-comments": default23
3050
+ "@eslint-community/eslint-comments": default24
3022
3051
  },
3023
3052
  rules: {
3024
- ...default23.configs.recommended.rules,
3053
+ ...default24.configs.recommended.rules,
3025
3054
  "@eslint-community/eslint-comments/disable-enable-pair": [
3026
3055
  "error",
3027
3056
  { allowWholeFile: true }
@@ -3366,32 +3395,33 @@ export {
3366
3395
  parserVue,
3367
3396
  parserYaml,
3368
3397
  default8 as pluginAntfu,
3369
- default23 as pluginComments,
3370
- default18 as pluginDeMorgan,
3398
+ default24 as pluginComments,
3399
+ default19 as pluginDeMorgan,
3371
3400
  pluginDepend,
3372
- default12 as pluginFormat,
3373
- default20 as pluginGitHubAction,
3374
- default16 as pluginImportX,
3401
+ default13 as pluginFormat,
3402
+ default21 as pluginGitHubAction,
3403
+ default17 as pluginImportX,
3375
3404
  default9 as pluginJsdoc,
3376
3405
  default10 as pluginJsonc,
3377
3406
  default7 as pluginMarkdown,
3378
- default19 as pluginNoOnlyTests,
3407
+ default20 as pluginNoOnlyTests,
3379
3408
  default2 as pluginNode,
3380
- default21 as pluginPerfectionist,
3409
+ default12 as pluginNtnyq,
3410
+ default22 as pluginPerfectionist,
3381
3411
  default11 as pluginPinia,
3382
- default17 as pluginPrettier,
3412
+ default18 as pluginPrettier,
3383
3413
  pluginRegexp,
3384
3414
  default5 as pluginSvgo,
3385
3415
  default6 as pluginToml,
3386
3416
  plugin as pluginTypeScript,
3387
- default15 as pluginUnicorn,
3388
- default13 as pluginUnoCSS,
3389
- default22 as pluginUnusedImports,
3390
- default14 as pluginVitest,
3417
+ default16 as pluginUnicorn,
3418
+ default14 as pluginUnoCSS,
3419
+ default23 as pluginUnusedImports,
3420
+ default15 as pluginVitest,
3391
3421
  default3 as pluginVue,
3392
3422
  default4 as pluginYml,
3393
3423
  processorPassThrough,
3394
- default24 as processorVueBlocks,
3424
+ default25 as processorVueBlocks,
3395
3425
  resolveSubOptions,
3396
3426
  toArray
3397
3427
  };
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@ntnyq/eslint-config",
3
3
  "type": "module",
4
- "version": "4.0.0-beta.6",
5
- "packageManager": "pnpm@10.4.0",
4
+ "version": "4.0.0-beta.7",
5
+ "packageManager": "pnpm@10.4.1",
6
6
  "description": "An opinionated ESLint config preset of ntnyq",
7
7
  "keywords": [
8
8
  "eslint",
@@ -54,7 +54,7 @@
54
54
  "typecheck": "tsc --noEmit"
55
55
  },
56
56
  "peerDependencies": {
57
- "eslint": "^9.5.0",
57
+ "eslint": "^9.20.0",
58
58
  "eslint-plugin-eslint-plugin": "^6.4.0"
59
59
  },
60
60
  "peerDependenciesMeta": {
@@ -68,11 +68,11 @@
68
68
  "@eslint-community/eslint-plugin-eslint-comments": "^4.4.1",
69
69
  "@eslint/js": "^9.20.0",
70
70
  "@eslint/markdown": "^6.2.2",
71
- "@unocss/eslint-plugin": "^65.5.0",
71
+ "@unocss/eslint-plugin": "^66.0.0",
72
72
  "@vitest/eslint-plugin": "^1.1.31",
73
- "eslint-config-flat-gitignore": "^2.0.0",
73
+ "eslint-config-flat-gitignore": "^2.1.0",
74
74
  "eslint-flat-config-utils": "^2.0.1",
75
- "eslint-import-resolver-typescript": "^3.8.0",
75
+ "eslint-import-resolver-typescript": "^3.8.1",
76
76
  "eslint-merge-processors": "^2.0.0",
77
77
  "eslint-plugin-antfu": "^3.1.0",
78
78
  "eslint-plugin-command": "^3.1.0",
@@ -92,17 +92,17 @@
92
92
  "eslint-plugin-regexp": "^2.7.0",
93
93
  "eslint-plugin-svgo": "^0.5.2",
94
94
  "eslint-plugin-toml": "^0.12.0",
95
- "eslint-plugin-unicorn": "^56.0.1",
95
+ "eslint-plugin-unicorn": "^57.0.0",
96
96
  "eslint-plugin-unused-imports": "^4.1.4",
97
97
  "eslint-plugin-vue": "^9.32.0",
98
- "eslint-plugin-yml": "^1.16.0",
98
+ "eslint-plugin-yml": "^1.17.0",
99
99
  "eslint-processor-vue-blocks": "^2.0.0",
100
100
  "globals": "^15.15.0",
101
101
  "jsonc-eslint-parser": "^2.4.0",
102
102
  "local-pkg": "^1.0.0",
103
103
  "prettier": "^3.5.1",
104
104
  "toml-eslint-parser": "^0.10.0",
105
- "typescript-eslint": "^8.24.0",
105
+ "typescript-eslint": "^8.24.1",
106
106
  "vue-eslint-parser": "^9.4.3",
107
107
  "yaml-eslint-parser": "^1.2.3"
108
108
  },
@@ -128,10 +128,16 @@
128
128
  "pnpm": {
129
129
  "onlyBuiltDependencies": [
130
130
  "esbuild"
131
- ],
132
- "overrides": {
133
- "esbuild": "^0.25.0"
134
- }
131
+ ]
132
+ },
133
+ "resolutions": {
134
+ "@shikijs/core": "^3.0.0",
135
+ "@shikijs/markdown-it": "^3.0.0",
136
+ "@shikijs/rehype": "^3.0.0",
137
+ "@shikijs/transformers": "^3.0.0",
138
+ "@shikijs/types": "^3.0.0",
139
+ "esbuild": "^0.25.0",
140
+ "shiki": "^3.0.0"
135
141
  },
136
142
  "nano-staged": {
137
143
  "*.{js,ts,mjs,cjs,vue,svg,json,jsonc,md,yaml,yml}": "eslint --fix",