@luxass/eslint-config 4.3.2 → 4.3.3

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
@@ -104,7 +104,7 @@ var import_eslint_plugin_eslint_comments = __toESM(require("@eslint-community/es
104
104
  async function comments() {
105
105
  return [
106
106
  {
107
- name: "luxass:eslint-comments",
107
+ name: "luxass/eslint-comments",
108
108
  plugins: {
109
109
  "eslint-comments": import_eslint_plugin_eslint_comments.default
110
110
  },
@@ -128,7 +128,7 @@ var import_eslint_plugin_unicorn = __toESM(require("eslint-plugin-unicorn"), 1);
128
128
  function unicorn() {
129
129
  return [
130
130
  {
131
- name: "luxass:unicorn",
131
+ name: "luxass/unicorn",
132
132
  plugins: {
133
133
  unicorn: import_eslint_plugin_unicorn.default
134
134
  },
@@ -273,7 +273,7 @@ var import_eslint_plugin_n = __toESM(require("eslint-plugin-n"), 1);
273
273
  function node() {
274
274
  return [
275
275
  {
276
- name: "luxass:node",
276
+ name: "luxass/node",
277
277
  plugins: {
278
278
  node: import_eslint_plugin_n.default
279
279
  },
@@ -295,7 +295,7 @@ function node() {
295
295
  function sortPackageJson() {
296
296
  return [
297
297
  {
298
- name: "luxass:sort:package-json",
298
+ name: "luxass/sort/package-json",
299
299
  files: ["**/package.json"],
300
300
  rules: {
301
301
  "jsonc/sort-array-values": [
@@ -395,7 +395,7 @@ function sortPackageJson() {
395
395
  function sortTsconfig() {
396
396
  return [
397
397
  {
398
- name: "luxass:sort:tsconfig",
398
+ name: "luxass/sort/tsconfig",
399
399
  files: ["**/tsconfig.json", "**/tsconfig.*.json"],
400
400
  rules: {
401
401
  "jsonc/sort-keys": [
@@ -527,7 +527,7 @@ async function imports(options = {}) {
527
527
  } = options;
528
528
  return [
529
529
  {
530
- name: "luxass:imports",
530
+ name: "luxass/imports",
531
531
  plugins: {
532
532
  antfu: import_eslint_plugin_antfu.default,
533
533
  import: import_eslint_plugin_import_x.default
@@ -549,7 +549,7 @@ async function imports(options = {}) {
549
549
  }
550
550
  },
551
551
  {
552
- name: "luxass:disables:imports-bin",
552
+ name: "luxass/disables/imports-bin",
553
553
  files: ["**/bin/**/*", `**/bin.${GLOB_SRC_EXT}`],
554
554
  rules: {
555
555
  "antfu/no-import-dist": "off",
@@ -567,7 +567,7 @@ async function javascript(options = {}) {
567
567
  const { editor = false, overrides = {} } = options;
568
568
  return [
569
569
  {
570
- name: "luxass:javascript",
570
+ name: "luxass/javascript",
571
571
  languageOptions: {
572
572
  ecmaVersion: 2022,
573
573
  globals: {
@@ -650,7 +650,7 @@ async function javascript(options = {}) {
650
650
  "no-multi-str": "error",
651
651
  "no-new": "error",
652
652
  "no-new-func": "error",
653
- "no-new-symbol": "error",
653
+ "no-new-native-nonconstructor": "error",
654
654
  "no-new-wrappers": "error",
655
655
  "no-obj-calls": "error",
656
656
  "no-octal": "error",
@@ -804,7 +804,7 @@ async function javascript(options = {}) {
804
804
  }
805
805
  },
806
806
  {
807
- name: "luxass:disables:cli",
807
+ name: "luxass/disables/cli",
808
808
  files: [
809
809
  `scripts/${GLOB_SRC}`,
810
810
  `cli.${GLOB_SRC_EXT}`,
@@ -896,7 +896,7 @@ async function jsdoc(options = {}) {
896
896
  } = options;
897
897
  return [
898
898
  {
899
- name: "luxass:jsdoc",
899
+ name: "luxass/jsdoc",
900
900
  plugins: {
901
901
  jsdoc: await interop(import("eslint-plugin-jsdoc"))
902
902
  },
@@ -942,13 +942,13 @@ async function jsonc(options = {}) {
942
942
  ]);
943
943
  return [
944
944
  {
945
- name: "luxass:jsonc:setup",
945
+ name: "luxass/jsonc/setup",
946
946
  plugins: {
947
947
  jsonc: pluginJsonc
948
948
  }
949
949
  },
950
950
  {
951
- name: "luxass:jsonc:rules",
951
+ name: "luxass/jsonc/rules",
952
952
  files,
953
953
  languageOptions: {
954
954
  parser: parserJsonc
@@ -1018,13 +1018,13 @@ async function markdown(options = {}) {
1018
1018
  const markdown2 = await interop(import("eslint-plugin-markdown"));
1019
1019
  return [
1020
1020
  {
1021
- name: "luxass:markdown:setup",
1021
+ name: "luxass/markdown/setup",
1022
1022
  plugins: {
1023
1023
  markdown: markdown2
1024
1024
  }
1025
1025
  },
1026
1026
  {
1027
- name: "luxass:markdown:processor",
1027
+ name: "luxass/markdown:processor",
1028
1028
  files,
1029
1029
  ignores: [GLOB_MARKDOWN_IN_MARKDOWN],
1030
1030
  // `eslint-plugin-markdown` only creates virtual files for code blocks,
@@ -1036,14 +1036,14 @@ async function markdown(options = {}) {
1036
1036
  ])
1037
1037
  },
1038
1038
  {
1039
- name: "luxass:markdown:parser",
1039
+ name: "luxass/markdown/parser",
1040
1040
  files,
1041
1041
  languageOptions: {
1042
1042
  parser: parserPlain
1043
1043
  }
1044
1044
  },
1045
1045
  {
1046
- name: "luxass:markdown:disables",
1046
+ name: "luxass/markdown/disables",
1047
1047
  files: [
1048
1048
  GLOB_MARKDOWN_CODE,
1049
1049
  ...exts.map((ext) => `${GLOB_MARKDOWN}/**/*.${ext}`)
@@ -1128,7 +1128,7 @@ async function stylistic(options = {}) {
1128
1128
  });
1129
1129
  return [
1130
1130
  {
1131
- name: "luxass:stylistic",
1131
+ name: "luxass/stylistic",
1132
1132
  plugins: {
1133
1133
  antfu: import_eslint_plugin_antfu3.default,
1134
1134
  style: pluginStylistic
@@ -1195,7 +1195,7 @@ async function typescript(options = {}) {
1195
1195
  return {
1196
1196
  files: files2,
1197
1197
  ...ignores2 ? { ignores: ignores2 } : {},
1198
- name: `luxass:typescript:${typeAware ? "type-aware-parser" : "parser"}`,
1198
+ name: `luxass/typescript/${typeAware ? "type-aware-parser" : "parser"}`,
1199
1199
  languageOptions: {
1200
1200
  parser: parserTs,
1201
1201
  parserOptions: {
@@ -1213,7 +1213,7 @@ async function typescript(options = {}) {
1213
1213
  return [
1214
1214
  {
1215
1215
  // Install the plugins without globs, so they can be configured separately.
1216
- name: "luxass:typescript:setup",
1216
+ name: "luxass/typescript/setup",
1217
1217
  plugins: {
1218
1218
  antfu: import_eslint_plugin_antfu4.default,
1219
1219
  ts: pluginTs
@@ -1224,7 +1224,7 @@ async function typescript(options = {}) {
1224
1224
  makeParser(false, files, filesTypeAware)
1225
1225
  ] : [makeParser(false, files)],
1226
1226
  {
1227
- name: "luxass:typescript:rules",
1227
+ name: "luxass/typescript/rules",
1228
1228
  files,
1229
1229
  rules: {
1230
1230
  ...renameRules(
@@ -1312,7 +1312,7 @@ async function typescript(options = {}) {
1312
1312
  }
1313
1313
  },
1314
1314
  {
1315
- name: "luxass:typescript:rules-type-aware",
1315
+ name: "luxass/typescript/rules-type-aware",
1316
1316
  files: filesTypeAware,
1317
1317
  rules: {
1318
1318
  ...tsconfigPath ? typeAwareRules : {},
@@ -1320,7 +1320,7 @@ async function typescript(options = {}) {
1320
1320
  }
1321
1321
  },
1322
1322
  {
1323
- name: "luxass:typescript:disables:dts",
1323
+ name: "luxass/typescript/disables/dts",
1324
1324
  files: ["**/*.d.ts"],
1325
1325
  rules: {
1326
1326
  "eslint-comments/no-unlimited-disable": "off",
@@ -1330,21 +1330,21 @@ async function typescript(options = {}) {
1330
1330
  }
1331
1331
  },
1332
1332
  {
1333
- name: "luxass:typescript:disables:tests",
1333
+ name: "luxass/typescript/disables/tests",
1334
1334
  files: ["**/*.{test,spec}.ts?(x)"],
1335
1335
  rules: {
1336
1336
  "no-unused-expressions": "off"
1337
1337
  }
1338
1338
  },
1339
1339
  {
1340
- name: "luxass:typescript:disables:playground",
1340
+ name: "luxass/typescript/disables/playground",
1341
1341
  files: [`**/playground.${GLOB_SRC_EXT}`],
1342
1342
  rules: {
1343
1343
  "no-console": "off"
1344
1344
  }
1345
1345
  },
1346
1346
  {
1347
- name: "luxass:typescript:disables:javascript",
1347
+ name: "luxass/typescript/disables/javascript",
1348
1348
  files: ["**/*.js", "**/*.cjs"],
1349
1349
  rules: {
1350
1350
  "ts/no-require-imports": "off",
@@ -1377,7 +1377,7 @@ async function vue(options = {}) {
1377
1377
  } = typeof stylistic2 === "boolean" ? {} : stylistic2;
1378
1378
  return [
1379
1379
  {
1380
- name: "luxass:vue:setup",
1380
+ name: "luxass/vue/setup",
1381
1381
  // This allows Vue plugin to work with auto imports
1382
1382
  // https://github.com/vuejs/eslint-plugin-vue/pull/2422
1383
1383
  languageOptions: {
@@ -1403,7 +1403,7 @@ async function vue(options = {}) {
1403
1403
  }
1404
1404
  },
1405
1405
  {
1406
- name: "luxass:vue:rules",
1406
+ name: "luxass/vue/rules",
1407
1407
  files,
1408
1408
  languageOptions: {
1409
1409
  parser: parserVue,
@@ -1561,13 +1561,13 @@ async function yaml(options = {}) {
1561
1561
  } = typeof stylistic2 === "boolean" ? {} : stylistic2;
1562
1562
  return [
1563
1563
  {
1564
- name: "luxass:yaml:setup",
1564
+ name: "luxass/yaml/setup",
1565
1565
  plugins: {
1566
1566
  yaml: pluginYaml
1567
1567
  }
1568
1568
  },
1569
1569
  {
1570
- name: "luxass:yaml:rules",
1570
+ name: "luxass/yaml/rules",
1571
1571
  files,
1572
1572
  languageOptions: {
1573
1573
  parser: parserYaml
@@ -1602,7 +1602,7 @@ async function yaml(options = {}) {
1602
1602
  }
1603
1603
  },
1604
1604
  {
1605
- name: "luxass:yaml:github-actions",
1605
+ name: "luxass/yaml/github-actions",
1606
1606
  files: ["**/.github/workflows/*.{yml,yaml}"],
1607
1607
  rules: {
1608
1608
  // GitHub Actions supports empty values to enable features
@@ -1626,7 +1626,7 @@ async function test(options = {}) {
1626
1626
  ]);
1627
1627
  return [
1628
1628
  {
1629
- name: "luxass:test:setup",
1629
+ name: "luxass/test/setup",
1630
1630
  plugins: {
1631
1631
  test: {
1632
1632
  ...pluginVitest,
@@ -1637,7 +1637,7 @@ async function test(options = {}) {
1637
1637
  }
1638
1638
  },
1639
1639
  {
1640
- name: "luxass:test:rules",
1640
+ name: "luxass/test/rules",
1641
1641
  files,
1642
1642
  rules: {
1643
1643
  "test/consistent-test-it": [
@@ -1672,11 +1672,14 @@ async function unocss(options = {}) {
1672
1672
  ]);
1673
1673
  return [
1674
1674
  {
1675
- name: "luxass:unocss",
1675
+ name: "luxass/unocss/setup",
1676
1676
  files,
1677
1677
  plugins: {
1678
1678
  unocss: pluginUnoCSS
1679
- },
1679
+ }
1680
+ },
1681
+ {
1682
+ name: "luxass/unocss/rules",
1680
1683
  rules: {
1681
1684
  "unocss/order": "warn",
1682
1685
  ...attributify ? {
@@ -1704,13 +1707,13 @@ async function nextjs(options = {}) {
1704
1707
  const pluginNextjs = await interop(import("@next/eslint-plugin-next"));
1705
1708
  return [
1706
1709
  {
1707
- name: "luxass:nextjs:setup",
1710
+ name: "luxass/nextjs/setup",
1708
1711
  plugins: {
1709
1712
  "@next/next": pluginNextjs
1710
1713
  }
1711
1714
  },
1712
1715
  {
1713
- name: "luxass:nextjs:rules",
1716
+ name: "luxass/nextjs/rules",
1714
1717
  files,
1715
1718
  rules: {
1716
1719
  ...pluginNextjs.configs.recommended.rules,
@@ -1750,7 +1753,7 @@ async function nextjs(options = {}) {
1750
1753
  }
1751
1754
  },
1752
1755
  {
1753
- name: "luxass:nextjs:default-export-override",
1756
+ name: "luxass/nextjs/default-export-override",
1754
1757
  files: GLOB_NEXTJS_ROUTES,
1755
1758
  rules: {
1756
1759
  "import/prefer-default-export": "error",
@@ -1758,7 +1761,7 @@ async function nextjs(options = {}) {
1758
1761
  }
1759
1762
  },
1760
1763
  {
1761
- name: "luxass:nextjs:og-override",
1764
+ name: "luxass/nextjs/og-override",
1762
1765
  files: GLOB_NEXTJS_OG,
1763
1766
  rules: {
1764
1767
  "@next/next/no-img-element": "off",
@@ -1803,7 +1806,7 @@ async function react(options = {}) {
1803
1806
  const isAllowConstantExport = (0, import_local_pkg2.isPackageExists)("vite");
1804
1807
  return [
1805
1808
  {
1806
- name: "luxass:react:setup",
1809
+ name: "luxass/react/setup",
1807
1810
  plugins: {
1808
1811
  "react": pluginReact,
1809
1812
  "react-hooks": pluginReactHooks,
@@ -1812,7 +1815,7 @@ async function react(options = {}) {
1812
1815
  }
1813
1816
  },
1814
1817
  {
1815
- name: "luxass:react:rules",
1818
+ name: "luxass/react/rules",
1816
1819
  files,
1817
1820
  languageOptions: {
1818
1821
  parserOptions: {
@@ -2076,13 +2079,13 @@ async function astro(options = {}) {
2076
2079
  ]);
2077
2080
  return [
2078
2081
  {
2079
- name: "luxass:astro:setup",
2082
+ name: "luxass/astro/setup",
2080
2083
  plugins: {
2081
2084
  astro: pluginAstro
2082
2085
  }
2083
2086
  },
2084
2087
  {
2085
- name: "luxass:astro:rules",
2088
+ name: "luxass/astro/rules",
2086
2089
  files,
2087
2090
  languageOptions: {
2088
2091
  parser: parserAstro,
@@ -2110,7 +2113,7 @@ async function astro(options = {}) {
2110
2113
  }
2111
2114
  },
2112
2115
  {
2113
- name: "luxass:astro:scripts-js",
2116
+ name: "luxass/astro/scripts-js",
2114
2117
  files: [
2115
2118
  "**/*.astro/*.js",
2116
2119
  "*.astro/*.js"
@@ -2126,7 +2129,7 @@ async function astro(options = {}) {
2126
2129
  }
2127
2130
  },
2128
2131
  {
2129
- name: "luxass:astro:scripts-ts",
2132
+ name: "luxass/astro/scripts-ts",
2130
2133
  files: [
2131
2134
  "**/*.astro/*.ts",
2132
2135
  "*.astro/*.ts"
@@ -2162,7 +2165,7 @@ async function tailwindcss(options = {}) {
2162
2165
  ]);
2163
2166
  return [
2164
2167
  {
2165
- name: "luxass:tailwindcss:setup",
2168
+ name: "luxass/tailwindcss/setup",
2166
2169
  languageOptions: {
2167
2170
  parserOptions: {
2168
2171
  ecmaFeatures: {
@@ -2175,7 +2178,7 @@ async function tailwindcss(options = {}) {
2175
2178
  }
2176
2179
  },
2177
2180
  {
2178
- name: "luxass:tailwindcss:rules",
2181
+ name: "luxass/tailwindcss/rules",
2179
2182
  files,
2180
2183
  rules: {
2181
2184
  // https://github.com/francoismassart/eslint-plugin-tailwindcss/blob/master/docs/rules/classnames-order.md
@@ -2244,7 +2247,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2244
2247
  const pluginFormat = await interop(import("eslint-plugin-format"));
2245
2248
  const configs = [
2246
2249
  {
2247
- name: "luxass:formatter:setup",
2250
+ name: "luxass/formatter/setup",
2248
2251
  plugins: {
2249
2252
  format: pluginFormat
2250
2253
  }
@@ -2253,7 +2256,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2253
2256
  if (options.css) {
2254
2257
  configs.push(
2255
2258
  {
2256
- name: "luxass:formatter:css",
2259
+ name: "luxass/formatter/css",
2257
2260
  files: [GLOB_CSS, GLOB_POSTCSS],
2258
2261
  languageOptions: {
2259
2262
  parser: parserPlain
@@ -2269,7 +2272,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2269
2272
  }
2270
2273
  },
2271
2274
  {
2272
- name: "luxass:formatter:scss",
2275
+ name: "luxass/formatter/scss",
2273
2276
  files: [GLOB_SCSS],
2274
2277
  languageOptions: {
2275
2278
  parser: parserPlain
@@ -2285,7 +2288,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2285
2288
  }
2286
2289
  },
2287
2290
  {
2288
- name: "luxass:formatter:less",
2291
+ name: "luxass/formatter/less",
2289
2292
  files: [GLOB_LESS],
2290
2293
  languageOptions: {
2291
2294
  parser: parserPlain
@@ -2304,7 +2307,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2304
2307
  }
2305
2308
  if (options.html) {
2306
2309
  configs.push({
2307
- name: "luxass:formatter:html",
2310
+ name: "luxass/formatter/html",
2308
2311
  files: ["**/*.html"],
2309
2312
  languageOptions: {
2310
2313
  parser: parserPlain
@@ -2323,7 +2326,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2323
2326
  if (options.markdown) {
2324
2327
  const formater = options.markdown === true ? "prettier" : options.markdown;
2325
2328
  configs.push({
2326
- name: "luxass:formatter:markdown",
2329
+ name: "luxass/formatter/markdown",
2327
2330
  files: [GLOB_MARKDOWN],
2328
2331
  languageOptions: {
2329
2332
  parser: parserPlain
@@ -2346,7 +2349,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2346
2349
  }
2347
2350
  if (options.astro) {
2348
2351
  configs.push({
2349
- name: "luxass:formatter:astro",
2352
+ name: "luxass/formatter/astro",
2350
2353
  files: [GLOB_ASTRO],
2351
2354
  languageOptions: {
2352
2355
  parser: parserPlain
@@ -2367,7 +2370,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2367
2370
  }
2368
2371
  if (options.graphql) {
2369
2372
  configs.push({
2370
- name: "luxass:formatter:graphql",
2373
+ name: "luxass/formatter/graphql",
2371
2374
  files: [GLOB_GRAPHQL],
2372
2375
  languageOptions: {
2373
2376
  parser: parserPlain
@@ -2405,13 +2408,13 @@ async function toml(options = {}) {
2405
2408
  ]);
2406
2409
  return [
2407
2410
  {
2408
- name: "luxass:toml:setup",
2411
+ name: "luxass/toml/setup",
2409
2412
  plugins: {
2410
2413
  toml: pluginToml
2411
2414
  }
2412
2415
  },
2413
2416
  {
2414
- name: "luxass:toml:rules",
2417
+ name: "luxass/toml/rules",
2415
2418
  files,
2416
2419
  languageOptions: {
2417
2420
  parser: parserToml
@@ -2462,13 +2465,13 @@ async function solid(options = {}) {
2462
2465
  ]);
2463
2466
  return [
2464
2467
  {
2465
- name: "luxass:solid:setup",
2468
+ name: "luxass/solid/setup",
2466
2469
  plugins: {
2467
2470
  solid: pluginSolid
2468
2471
  }
2469
2472
  },
2470
2473
  {
2471
- name: "luxass:solid:rules",
2474
+ name: "luxass/solid/rules",
2472
2475
  files,
2473
2476
  languageOptions: {
2474
2477
  parserOptions: {
package/dist/index.js CHANGED
@@ -9,7 +9,7 @@ import eslintCommentsPlugin from "@eslint-community/eslint-plugin-eslint-comment
9
9
  async function comments() {
10
10
  return [
11
11
  {
12
- name: "luxass:eslint-comments",
12
+ name: "luxass/eslint-comments",
13
13
  plugins: {
14
14
  "eslint-comments": eslintCommentsPlugin
15
15
  },
@@ -33,7 +33,7 @@ import pluginUnicorn from "eslint-plugin-unicorn";
33
33
  function unicorn() {
34
34
  return [
35
35
  {
36
- name: "luxass:unicorn",
36
+ name: "luxass/unicorn",
37
37
  plugins: {
38
38
  unicorn: pluginUnicorn
39
39
  },
@@ -178,7 +178,7 @@ import pluginNode from "eslint-plugin-n";
178
178
  function node() {
179
179
  return [
180
180
  {
181
- name: "luxass:node",
181
+ name: "luxass/node",
182
182
  plugins: {
183
183
  node: pluginNode
184
184
  },
@@ -200,7 +200,7 @@ function node() {
200
200
  function sortPackageJson() {
201
201
  return [
202
202
  {
203
- name: "luxass:sort:package-json",
203
+ name: "luxass/sort/package-json",
204
204
  files: ["**/package.json"],
205
205
  rules: {
206
206
  "jsonc/sort-array-values": [
@@ -300,7 +300,7 @@ function sortPackageJson() {
300
300
  function sortTsconfig() {
301
301
  return [
302
302
  {
303
- name: "luxass:sort:tsconfig",
303
+ name: "luxass/sort/tsconfig",
304
304
  files: ["**/tsconfig.json", "**/tsconfig.*.json"],
305
305
  rules: {
306
306
  "jsonc/sort-keys": [
@@ -432,7 +432,7 @@ async function imports(options = {}) {
432
432
  } = options;
433
433
  return [
434
434
  {
435
- name: "luxass:imports",
435
+ name: "luxass/imports",
436
436
  plugins: {
437
437
  antfu: pluginAntfu,
438
438
  import: pluginImport
@@ -454,7 +454,7 @@ async function imports(options = {}) {
454
454
  }
455
455
  },
456
456
  {
457
- name: "luxass:disables:imports-bin",
457
+ name: "luxass/disables/imports-bin",
458
458
  files: ["**/bin/**/*", `**/bin.${GLOB_SRC_EXT}`],
459
459
  rules: {
460
460
  "antfu/no-import-dist": "off",
@@ -472,7 +472,7 @@ async function javascript(options = {}) {
472
472
  const { editor = false, overrides = {} } = options;
473
473
  return [
474
474
  {
475
- name: "luxass:javascript",
475
+ name: "luxass/javascript",
476
476
  languageOptions: {
477
477
  ecmaVersion: 2022,
478
478
  globals: {
@@ -555,7 +555,7 @@ async function javascript(options = {}) {
555
555
  "no-multi-str": "error",
556
556
  "no-new": "error",
557
557
  "no-new-func": "error",
558
- "no-new-symbol": "error",
558
+ "no-new-native-nonconstructor": "error",
559
559
  "no-new-wrappers": "error",
560
560
  "no-obj-calls": "error",
561
561
  "no-octal": "error",
@@ -709,7 +709,7 @@ async function javascript(options = {}) {
709
709
  }
710
710
  },
711
711
  {
712
- name: "luxass:disables:cli",
712
+ name: "luxass/disables/cli",
713
713
  files: [
714
714
  `scripts/${GLOB_SRC}`,
715
715
  `cli.${GLOB_SRC_EXT}`,
@@ -801,7 +801,7 @@ async function jsdoc(options = {}) {
801
801
  } = options;
802
802
  return [
803
803
  {
804
- name: "luxass:jsdoc",
804
+ name: "luxass/jsdoc",
805
805
  plugins: {
806
806
  jsdoc: await interop(import("eslint-plugin-jsdoc"))
807
807
  },
@@ -847,13 +847,13 @@ async function jsonc(options = {}) {
847
847
  ]);
848
848
  return [
849
849
  {
850
- name: "luxass:jsonc:setup",
850
+ name: "luxass/jsonc/setup",
851
851
  plugins: {
852
852
  jsonc: pluginJsonc
853
853
  }
854
854
  },
855
855
  {
856
- name: "luxass:jsonc:rules",
856
+ name: "luxass/jsonc/rules",
857
857
  files,
858
858
  languageOptions: {
859
859
  parser: parserJsonc
@@ -923,13 +923,13 @@ async function markdown(options = {}) {
923
923
  const markdown2 = await interop(import("eslint-plugin-markdown"));
924
924
  return [
925
925
  {
926
- name: "luxass:markdown:setup",
926
+ name: "luxass/markdown/setup",
927
927
  plugins: {
928
928
  markdown: markdown2
929
929
  }
930
930
  },
931
931
  {
932
- name: "luxass:markdown:processor",
932
+ name: "luxass/markdown:processor",
933
933
  files,
934
934
  ignores: [GLOB_MARKDOWN_IN_MARKDOWN],
935
935
  // `eslint-plugin-markdown` only creates virtual files for code blocks,
@@ -941,14 +941,14 @@ async function markdown(options = {}) {
941
941
  ])
942
942
  },
943
943
  {
944
- name: "luxass:markdown:parser",
944
+ name: "luxass/markdown/parser",
945
945
  files,
946
946
  languageOptions: {
947
947
  parser: parserPlain
948
948
  }
949
949
  },
950
950
  {
951
- name: "luxass:markdown:disables",
951
+ name: "luxass/markdown/disables",
952
952
  files: [
953
953
  GLOB_MARKDOWN_CODE,
954
954
  ...exts.map((ext) => `${GLOB_MARKDOWN}/**/*.${ext}`)
@@ -1033,7 +1033,7 @@ async function stylistic(options = {}) {
1033
1033
  });
1034
1034
  return [
1035
1035
  {
1036
- name: "luxass:stylistic",
1036
+ name: "luxass/stylistic",
1037
1037
  plugins: {
1038
1038
  antfu: pluginAntfu3,
1039
1039
  style: pluginStylistic
@@ -1100,7 +1100,7 @@ async function typescript(options = {}) {
1100
1100
  return {
1101
1101
  files: files2,
1102
1102
  ...ignores2 ? { ignores: ignores2 } : {},
1103
- name: `luxass:typescript:${typeAware ? "type-aware-parser" : "parser"}`,
1103
+ name: `luxass/typescript/${typeAware ? "type-aware-parser" : "parser"}`,
1104
1104
  languageOptions: {
1105
1105
  parser: parserTs,
1106
1106
  parserOptions: {
@@ -1118,7 +1118,7 @@ async function typescript(options = {}) {
1118
1118
  return [
1119
1119
  {
1120
1120
  // Install the plugins without globs, so they can be configured separately.
1121
- name: "luxass:typescript:setup",
1121
+ name: "luxass/typescript/setup",
1122
1122
  plugins: {
1123
1123
  antfu: pluginAntfu4,
1124
1124
  ts: pluginTs
@@ -1129,7 +1129,7 @@ async function typescript(options = {}) {
1129
1129
  makeParser(false, files, filesTypeAware)
1130
1130
  ] : [makeParser(false, files)],
1131
1131
  {
1132
- name: "luxass:typescript:rules",
1132
+ name: "luxass/typescript/rules",
1133
1133
  files,
1134
1134
  rules: {
1135
1135
  ...renameRules(
@@ -1217,7 +1217,7 @@ async function typescript(options = {}) {
1217
1217
  }
1218
1218
  },
1219
1219
  {
1220
- name: "luxass:typescript:rules-type-aware",
1220
+ name: "luxass/typescript/rules-type-aware",
1221
1221
  files: filesTypeAware,
1222
1222
  rules: {
1223
1223
  ...tsconfigPath ? typeAwareRules : {},
@@ -1225,7 +1225,7 @@ async function typescript(options = {}) {
1225
1225
  }
1226
1226
  },
1227
1227
  {
1228
- name: "luxass:typescript:disables:dts",
1228
+ name: "luxass/typescript/disables/dts",
1229
1229
  files: ["**/*.d.ts"],
1230
1230
  rules: {
1231
1231
  "eslint-comments/no-unlimited-disable": "off",
@@ -1235,21 +1235,21 @@ async function typescript(options = {}) {
1235
1235
  }
1236
1236
  },
1237
1237
  {
1238
- name: "luxass:typescript:disables:tests",
1238
+ name: "luxass/typescript/disables/tests",
1239
1239
  files: ["**/*.{test,spec}.ts?(x)"],
1240
1240
  rules: {
1241
1241
  "no-unused-expressions": "off"
1242
1242
  }
1243
1243
  },
1244
1244
  {
1245
- name: "luxass:typescript:disables:playground",
1245
+ name: "luxass/typescript/disables/playground",
1246
1246
  files: [`**/playground.${GLOB_SRC_EXT}`],
1247
1247
  rules: {
1248
1248
  "no-console": "off"
1249
1249
  }
1250
1250
  },
1251
1251
  {
1252
- name: "luxass:typescript:disables:javascript",
1252
+ name: "luxass/typescript/disables/javascript",
1253
1253
  files: ["**/*.js", "**/*.cjs"],
1254
1254
  rules: {
1255
1255
  "ts/no-require-imports": "off",
@@ -1282,7 +1282,7 @@ async function vue(options = {}) {
1282
1282
  } = typeof stylistic2 === "boolean" ? {} : stylistic2;
1283
1283
  return [
1284
1284
  {
1285
- name: "luxass:vue:setup",
1285
+ name: "luxass/vue/setup",
1286
1286
  // This allows Vue plugin to work with auto imports
1287
1287
  // https://github.com/vuejs/eslint-plugin-vue/pull/2422
1288
1288
  languageOptions: {
@@ -1308,7 +1308,7 @@ async function vue(options = {}) {
1308
1308
  }
1309
1309
  },
1310
1310
  {
1311
- name: "luxass:vue:rules",
1311
+ name: "luxass/vue/rules",
1312
1312
  files,
1313
1313
  languageOptions: {
1314
1314
  parser: parserVue,
@@ -1466,13 +1466,13 @@ async function yaml(options = {}) {
1466
1466
  } = typeof stylistic2 === "boolean" ? {} : stylistic2;
1467
1467
  return [
1468
1468
  {
1469
- name: "luxass:yaml:setup",
1469
+ name: "luxass/yaml/setup",
1470
1470
  plugins: {
1471
1471
  yaml: pluginYaml
1472
1472
  }
1473
1473
  },
1474
1474
  {
1475
- name: "luxass:yaml:rules",
1475
+ name: "luxass/yaml/rules",
1476
1476
  files,
1477
1477
  languageOptions: {
1478
1478
  parser: parserYaml
@@ -1507,7 +1507,7 @@ async function yaml(options = {}) {
1507
1507
  }
1508
1508
  },
1509
1509
  {
1510
- name: "luxass:yaml:github-actions",
1510
+ name: "luxass/yaml/github-actions",
1511
1511
  files: ["**/.github/workflows/*.{yml,yaml}"],
1512
1512
  rules: {
1513
1513
  // GitHub Actions supports empty values to enable features
@@ -1531,7 +1531,7 @@ async function test(options = {}) {
1531
1531
  ]);
1532
1532
  return [
1533
1533
  {
1534
- name: "luxass:test:setup",
1534
+ name: "luxass/test/setup",
1535
1535
  plugins: {
1536
1536
  test: {
1537
1537
  ...pluginVitest,
@@ -1542,7 +1542,7 @@ async function test(options = {}) {
1542
1542
  }
1543
1543
  },
1544
1544
  {
1545
- name: "luxass:test:rules",
1545
+ name: "luxass/test/rules",
1546
1546
  files,
1547
1547
  rules: {
1548
1548
  "test/consistent-test-it": [
@@ -1577,11 +1577,14 @@ async function unocss(options = {}) {
1577
1577
  ]);
1578
1578
  return [
1579
1579
  {
1580
- name: "luxass:unocss",
1580
+ name: "luxass/unocss/setup",
1581
1581
  files,
1582
1582
  plugins: {
1583
1583
  unocss: pluginUnoCSS
1584
- },
1584
+ }
1585
+ },
1586
+ {
1587
+ name: "luxass/unocss/rules",
1585
1588
  rules: {
1586
1589
  "unocss/order": "warn",
1587
1590
  ...attributify ? {
@@ -1609,13 +1612,13 @@ async function nextjs(options = {}) {
1609
1612
  const pluginNextjs = await interop(import("@next/eslint-plugin-next"));
1610
1613
  return [
1611
1614
  {
1612
- name: "luxass:nextjs:setup",
1615
+ name: "luxass/nextjs/setup",
1613
1616
  plugins: {
1614
1617
  "@next/next": pluginNextjs
1615
1618
  }
1616
1619
  },
1617
1620
  {
1618
- name: "luxass:nextjs:rules",
1621
+ name: "luxass/nextjs/rules",
1619
1622
  files,
1620
1623
  rules: {
1621
1624
  ...pluginNextjs.configs.recommended.rules,
@@ -1655,7 +1658,7 @@ async function nextjs(options = {}) {
1655
1658
  }
1656
1659
  },
1657
1660
  {
1658
- name: "luxass:nextjs:default-export-override",
1661
+ name: "luxass/nextjs/default-export-override",
1659
1662
  files: GLOB_NEXTJS_ROUTES,
1660
1663
  rules: {
1661
1664
  "import/prefer-default-export": "error",
@@ -1663,7 +1666,7 @@ async function nextjs(options = {}) {
1663
1666
  }
1664
1667
  },
1665
1668
  {
1666
- name: "luxass:nextjs:og-override",
1669
+ name: "luxass/nextjs/og-override",
1667
1670
  files: GLOB_NEXTJS_OG,
1668
1671
  rules: {
1669
1672
  "@next/next/no-img-element": "off",
@@ -1708,7 +1711,7 @@ async function react(options = {}) {
1708
1711
  const isAllowConstantExport = isPackageExists2("vite");
1709
1712
  return [
1710
1713
  {
1711
- name: "luxass:react:setup",
1714
+ name: "luxass/react/setup",
1712
1715
  plugins: {
1713
1716
  "react": pluginReact,
1714
1717
  "react-hooks": pluginReactHooks,
@@ -1717,7 +1720,7 @@ async function react(options = {}) {
1717
1720
  }
1718
1721
  },
1719
1722
  {
1720
- name: "luxass:react:rules",
1723
+ name: "luxass/react/rules",
1721
1724
  files,
1722
1725
  languageOptions: {
1723
1726
  parserOptions: {
@@ -1981,13 +1984,13 @@ async function astro(options = {}) {
1981
1984
  ]);
1982
1985
  return [
1983
1986
  {
1984
- name: "luxass:astro:setup",
1987
+ name: "luxass/astro/setup",
1985
1988
  plugins: {
1986
1989
  astro: pluginAstro
1987
1990
  }
1988
1991
  },
1989
1992
  {
1990
- name: "luxass:astro:rules",
1993
+ name: "luxass/astro/rules",
1991
1994
  files,
1992
1995
  languageOptions: {
1993
1996
  parser: parserAstro,
@@ -2015,7 +2018,7 @@ async function astro(options = {}) {
2015
2018
  }
2016
2019
  },
2017
2020
  {
2018
- name: "luxass:astro:scripts-js",
2021
+ name: "luxass/astro/scripts-js",
2019
2022
  files: [
2020
2023
  "**/*.astro/*.js",
2021
2024
  "*.astro/*.js"
@@ -2031,7 +2034,7 @@ async function astro(options = {}) {
2031
2034
  }
2032
2035
  },
2033
2036
  {
2034
- name: "luxass:astro:scripts-ts",
2037
+ name: "luxass/astro/scripts-ts",
2035
2038
  files: [
2036
2039
  "**/*.astro/*.ts",
2037
2040
  "*.astro/*.ts"
@@ -2067,7 +2070,7 @@ async function tailwindcss(options = {}) {
2067
2070
  ]);
2068
2071
  return [
2069
2072
  {
2070
- name: "luxass:tailwindcss:setup",
2073
+ name: "luxass/tailwindcss/setup",
2071
2074
  languageOptions: {
2072
2075
  parserOptions: {
2073
2076
  ecmaFeatures: {
@@ -2080,7 +2083,7 @@ async function tailwindcss(options = {}) {
2080
2083
  }
2081
2084
  },
2082
2085
  {
2083
- name: "luxass:tailwindcss:rules",
2086
+ name: "luxass/tailwindcss/rules",
2084
2087
  files,
2085
2088
  rules: {
2086
2089
  // https://github.com/francoismassart/eslint-plugin-tailwindcss/blob/master/docs/rules/classnames-order.md
@@ -2149,7 +2152,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2149
2152
  const pluginFormat = await interop(import("eslint-plugin-format"));
2150
2153
  const configs = [
2151
2154
  {
2152
- name: "luxass:formatter:setup",
2155
+ name: "luxass/formatter/setup",
2153
2156
  plugins: {
2154
2157
  format: pluginFormat
2155
2158
  }
@@ -2158,7 +2161,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2158
2161
  if (options.css) {
2159
2162
  configs.push(
2160
2163
  {
2161
- name: "luxass:formatter:css",
2164
+ name: "luxass/formatter/css",
2162
2165
  files: [GLOB_CSS, GLOB_POSTCSS],
2163
2166
  languageOptions: {
2164
2167
  parser: parserPlain
@@ -2174,7 +2177,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2174
2177
  }
2175
2178
  },
2176
2179
  {
2177
- name: "luxass:formatter:scss",
2180
+ name: "luxass/formatter/scss",
2178
2181
  files: [GLOB_SCSS],
2179
2182
  languageOptions: {
2180
2183
  parser: parserPlain
@@ -2190,7 +2193,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2190
2193
  }
2191
2194
  },
2192
2195
  {
2193
- name: "luxass:formatter:less",
2196
+ name: "luxass/formatter/less",
2194
2197
  files: [GLOB_LESS],
2195
2198
  languageOptions: {
2196
2199
  parser: parserPlain
@@ -2209,7 +2212,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2209
2212
  }
2210
2213
  if (options.html) {
2211
2214
  configs.push({
2212
- name: "luxass:formatter:html",
2215
+ name: "luxass/formatter/html",
2213
2216
  files: ["**/*.html"],
2214
2217
  languageOptions: {
2215
2218
  parser: parserPlain
@@ -2228,7 +2231,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2228
2231
  if (options.markdown) {
2229
2232
  const formater = options.markdown === true ? "prettier" : options.markdown;
2230
2233
  configs.push({
2231
- name: "luxass:formatter:markdown",
2234
+ name: "luxass/formatter/markdown",
2232
2235
  files: [GLOB_MARKDOWN],
2233
2236
  languageOptions: {
2234
2237
  parser: parserPlain
@@ -2251,7 +2254,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2251
2254
  }
2252
2255
  if (options.astro) {
2253
2256
  configs.push({
2254
- name: "luxass:formatter:astro",
2257
+ name: "luxass/formatter/astro",
2255
2258
  files: [GLOB_ASTRO],
2256
2259
  languageOptions: {
2257
2260
  parser: parserPlain
@@ -2272,7 +2275,7 @@ async function formatters(options = {}, stylistic2 = {}) {
2272
2275
  }
2273
2276
  if (options.graphql) {
2274
2277
  configs.push({
2275
- name: "luxass:formatter:graphql",
2278
+ name: "luxass/formatter/graphql",
2276
2279
  files: [GLOB_GRAPHQL],
2277
2280
  languageOptions: {
2278
2281
  parser: parserPlain
@@ -2310,13 +2313,13 @@ async function toml(options = {}) {
2310
2313
  ]);
2311
2314
  return [
2312
2315
  {
2313
- name: "luxass:toml:setup",
2316
+ name: "luxass/toml/setup",
2314
2317
  plugins: {
2315
2318
  toml: pluginToml
2316
2319
  }
2317
2320
  },
2318
2321
  {
2319
- name: "luxass:toml:rules",
2322
+ name: "luxass/toml/rules",
2320
2323
  files,
2321
2324
  languageOptions: {
2322
2325
  parser: parserToml
@@ -2367,13 +2370,13 @@ async function solid(options = {}) {
2367
2370
  ]);
2368
2371
  return [
2369
2372
  {
2370
- name: "luxass:solid:setup",
2373
+ name: "luxass/solid/setup",
2371
2374
  plugins: {
2372
2375
  solid: pluginSolid
2373
2376
  }
2374
2377
  },
2375
2378
  {
2376
- name: "luxass:solid:rules",
2379
+ name: "luxass/solid/rules",
2377
2380
  files,
2378
2381
  languageOptions: {
2379
2382
  parserOptions: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luxass/eslint-config",
3
- "version": "4.3.2",
3
+ "version": "4.3.3",
4
4
  "description": "ESLint config for @luxass",
5
5
  "type": "module",
6
6
  "author": {
@@ -38,7 +38,9 @@
38
38
  },
39
39
  "scripts": {
40
40
  "build": "pnpm typegen && tsup --format esm,cjs --clean --dts",
41
- "dev": "tsup --watch",
41
+ "stub": "tsup --format esm",
42
+ "dev": "tsup --format esm,cjs --watch & npx @eslint/config-inspector",
43
+ "build:inspector": "pnpm build && npx @eslint/config-inspector build",
42
44
  "test": "vitest --run",
43
45
  "typegen": "pnpx tsx ./scripts/typegen.ts",
44
46
  "test:watch": "vitest",
@@ -129,6 +131,7 @@
129
131
  },
130
132
  "devDependencies": {
131
133
  "@antfu/eslint-plugin-prettier": "^5.0.1-1",
134
+ "@eslint/config-inspector": "^0.4.1",
132
135
  "@next/eslint-plugin-next": "^14.1.4",
133
136
  "@stylistic/eslint-plugin-migrate": "^1.7.0",
134
137
  "@types/eslint": "^8.56.6",