@cuiqg/eslint-config 2.8.15 → 2.8.17

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 (2) hide show
  1. package/dist/index.mjs +94 -369
  2. package/package.json +7 -7
package/dist/index.mjs CHANGED
@@ -33,9 +33,7 @@ const GLOB_TS = `**/*.?([cm])ts`;
33
33
  const GLOB_TSX = `**/*.?([cm])tsx`;
34
34
  const GLOB_JS = `**/*.?([cm])js`;
35
35
  const GLOB_JSX = `**/*.?([cm])jsx`;
36
- const GLOB_STYLE = "**/*.{c,sc}ss";
37
36
  const GLOB_CSS = "**/*.css";
38
- const GLOB_SCSS = "**/*.scss";
39
37
  const GLOB_VUE = "**/*.vue";
40
38
  const GLOB_EXCLUDE = [
41
39
  "**/node_modules",
@@ -83,7 +81,7 @@ const GLOB_EXCLUDE = [
83
81
  async function ignores() {
84
82
  const [pluginGitignore] = await Promise.all([interopDefault(import("eslint-config-flat-gitignore"))]);
85
83
  return [{
86
- ignores: [...GLOB_EXCLUDE],
84
+ ignores: GLOB_EXCLUDE,
87
85
  name: "cuiqg/ignores"
88
86
  }, { ...pluginGitignore({
89
87
  name: "cuiqg/ignores/gitignore",
@@ -93,213 +91,30 @@ async function ignores() {
93
91
 
94
92
  //#endregion
95
93
  //#region src/configs/javascript.js
96
- async function javascript(options = {}) {
97
- const { isInEditor: isInEditor$1 = false } = options;
98
- const pluginUnusedImports = await interopDefault(import("eslint-plugin-unused-imports"));
94
+ async function javascript() {
95
+ const files = [GLOB_JS];
96
+ const [pluginJS] = await Promise.all([interopDefault(import("@eslint/js"))]);
99
97
  return [{
100
98
  name: "cuiqg/javascript",
101
- plugins: { "unused-imports": pluginUnusedImports },
99
+ files,
100
+ plugins: { js: pluginJS },
102
101
  languageOptions: {
103
102
  globals: {
104
103
  ...globals.browser,
105
- ...globals.es2025,
104
+ ...globals.es2026,
106
105
  ...globals.node
107
106
  },
108
107
  parserOptions: {
108
+ ecmaFeatures: { jsx: true },
109
109
  ecmaVersion: "latest",
110
110
  sourceType: "module"
111
- }
111
+ },
112
+ sourceType: "module"
112
113
  },
113
114
  linterOptions: { reportUnusedDisableDirectives: true },
114
115
  rules: {
115
- "accessor-pairs": ["error", {
116
- enforceForClassMembers: true,
117
- setWithoutGet: true
118
- }],
119
- "array-callback-return": "error",
120
- "block-scoped-var": "error",
121
- "constructor-super": "error",
122
- "default-case-last": "error",
123
- "dot-notation": ["error", { allowKeywords: true }],
124
- "eqeqeq": ["error", "smart"],
125
- "new-cap": ["error", {
126
- capIsNew: false,
127
- newIsCap: true,
128
- properties: true
129
- }],
130
- "no-alert": "error",
131
- "no-array-constructor": "error",
132
- "no-async-promise-executor": "error",
133
- "no-caller": "error",
134
- "no-case-declarations": "error",
135
- "no-class-assign": "error",
136
- "no-compare-neg-zero": "error",
137
- "no-cond-assign": ["error", "always"],
138
- "no-console": ["error", { allow: ["warn", "error"] }],
139
- "no-const-assign": "error",
140
- "no-control-regex": "error",
141
- "no-debugger": "error",
142
- "no-delete-var": "error",
143
- "no-dupe-args": "error",
144
- "no-dupe-class-members": "error",
145
- "no-dupe-keys": "error",
146
- "no-duplicate-case": "error",
147
- "no-empty": ["error", { allowEmptyCatch: true }],
148
- "no-empty-character-class": "error",
149
- "no-empty-pattern": "error",
150
- "no-eval": "error",
151
- "no-ex-assign": "error",
152
- "no-extend-native": "error",
153
- "no-extra-bind": "error",
154
- "no-extra-boolean-cast": "error",
155
- "no-fallthrough": "error",
156
- "no-func-assign": "error",
157
- "no-global-assign": "error",
158
- "no-implied-eval": "error",
159
- "no-import-assign": "error",
160
- "no-invalid-regexp": "error",
161
- "no-irregular-whitespace": "error",
162
- "no-iterator": "error",
163
- "no-labels": ["error", {
164
- allowLoop: false,
165
- allowSwitch: false
166
- }],
167
- "no-lone-blocks": "error",
168
- "no-loss-of-precision": "error",
169
- "no-misleading-character-class": "error",
170
- "no-multi-str": "error",
171
- "no-new": "error",
172
- "no-new-func": "error",
173
- "no-new-native-nonconstructor": "error",
174
- "no-new-wrappers": "error",
175
- "no-obj-calls": "error",
176
- "no-octal": "error",
177
- "no-octal-escape": "error",
178
- "no-proto": "error",
179
- "no-prototype-builtins": "error",
180
- "no-redeclare": ["error", { builtinGlobals: false }],
181
- "no-regex-spaces": "error",
182
- "no-restricted-globals": [
183
- "error",
184
- {
185
- message: "Use `globalThis` instead.",
186
- name: "global"
187
- },
188
- {
189
- message: "Use `globalThis` instead.",
190
- name: "self"
191
- }
192
- ],
193
- "no-restricted-properties": [
194
- "error",
195
- {
196
- message: "Use `Object.getPrototypeOf` or `Object.setPrototypeOf` instead.",
197
- property: "__proto__"
198
- },
199
- {
200
- message: "Use `Object.defineProperty` instead.",
201
- property: "__defineGetter__"
202
- },
203
- {
204
- message: "Use `Object.defineProperty` instead.",
205
- property: "__defineSetter__"
206
- },
207
- {
208
- message: "Use `Object.getOwnPropertyDescriptor` instead.",
209
- property: "__lookupGetter__"
210
- },
211
- {
212
- message: "Use `Object.getOwnPropertyDescriptor` instead.",
213
- property: "__lookupSetter__"
214
- }
215
- ],
216
- "no-restricted-syntax": [
217
- "error",
218
- "TSEnumDeclaration[const=true]",
219
- "TSExportAssignment"
220
- ],
221
- "no-self-assign": ["error", { props: true }],
222
- "no-self-compare": "error",
223
- "no-sequences": "error",
224
- "no-shadow-restricted-names": "error",
225
- "no-sparse-arrays": "error",
226
- "no-template-curly-in-string": "error",
227
- "no-this-before-super": "error",
228
- "no-throw-literal": "error",
229
- "no-undef": "error",
230
- "no-undef-init": "error",
231
- "no-unexpected-multiline": "error",
232
- "no-unmodified-loop-condition": "error",
233
- "no-unneeded-ternary": ["error", { defaultAssignment: false }],
234
- "no-unreachable": "error",
235
- "no-unreachable-loop": "error",
236
- "no-unsafe-finally": "error",
237
- "no-unsafe-negation": "error",
238
- "no-unused-expressions": ["error", {
239
- allowShortCircuit: true,
240
- allowTaggedTemplates: true,
241
- allowTernary: true
242
- }],
243
- "no-unused-vars": ["error", {
244
- args: "none",
245
- caughtErrors: "none",
246
- ignoreRestSiblings: true,
247
- vars: "all"
248
- }],
249
- "no-use-before-define": ["error", {
250
- classes: false,
251
- functions: false,
252
- variables: true
253
- }],
254
- "no-useless-backreference": "error",
255
- "no-useless-call": "error",
256
- "no-useless-catch": "error",
257
- "no-useless-computed-key": "error",
258
- "no-useless-constructor": "error",
259
- "no-useless-rename": "error",
260
- "no-useless-return": "error",
261
- "no-var": "error",
262
- "no-with": "error",
263
- "object-shorthand": [
264
- "error",
265
- "always",
266
- {
267
- avoidQuotes: true,
268
- ignoreConstructors: false
269
- }
270
- ],
271
- "one-var": ["error", { initialized: "never" }],
272
- "prefer-arrow-callback": ["error", {
273
- allowNamedFunctions: false,
274
- allowUnboundThis: true
275
- }],
276
- "prefer-const": [isInEditor$1 ? "warn" : "error", {
277
- destructuring: "all",
278
- ignoreReadBeforeAssign: true
279
- }],
280
- "prefer-exponentiation-operator": "error",
281
- "prefer-promise-reject-errors": "error",
282
- "prefer-regex-literals": ["error", { disallowRedundantWrapping: true }],
283
- "prefer-rest-params": "error",
284
- "prefer-spread": "error",
285
- "prefer-template": "error",
286
- "symbol-description": "error",
287
- "unicode-bom": ["error", "never"],
288
- "unused-imports/no-unused-imports": isInEditor$1 ? "warn" : "error",
289
- "unused-imports/no-unused-vars": ["error", {
290
- args: "after-used",
291
- argsIgnorePattern: "^_",
292
- ignoreRestSiblings: true,
293
- vars: "all",
294
- varsIgnorePattern: "^_"
295
- }],
296
- "use-isnan": ["error", {
297
- enforceForIndexOf: true,
298
- enforceForSwitchCase: true
299
- }],
300
- "valid-typeof": ["error", { requireStringLiterals: true }],
301
- "vars-on-top": "error",
302
- "yoda": ["error", "never"]
116
+ ...pluginJS.configs.recommended.rules,
117
+ "no-unused-vars": "off"
303
118
  }
304
119
  }];
305
120
  }
@@ -307,9 +122,10 @@ async function javascript(options = {}) {
307
122
  //#endregion
308
123
  //#region src/configs/jsdoc.js
309
124
  async function jsdoc() {
125
+ const [pluginJsdoc] = await Promise.all([interopDefault(import("eslint-plugin-jsdoc"))]);
310
126
  return [{
311
127
  name: "cuiqg/jsdoc",
312
- plugins: { jsdoc: await interopDefault(import("eslint-plugin-jsdoc")) },
128
+ plugins: { jsdoc: pluginJsdoc },
313
129
  rules: {
314
130
  "jsdoc/check-access": "warn",
315
131
  "jsdoc/check-param-names": "warn",
@@ -441,12 +257,8 @@ async function stylistic(options = {}) {
441
257
  async function unocss() {
442
258
  const [pluginUnoCSS] = await Promise.all([interopDefault(import("@unocss/eslint-plugin"))]);
443
259
  return [{
444
- name: "cuiqg/unocss",
445
- plugins: { "@unocss": pluginUnoCSS },
446
- rules: {
447
- "@unocss/order": "warn",
448
- "@unocss/order-attributify": "warn"
449
- }
260
+ ...pluginUnoCSS.configs.flat,
261
+ name: "cuiqg/unocss"
450
262
  }];
451
263
  }
452
264
 
@@ -474,154 +286,49 @@ async function vue(options = {}) {
474
286
  },
475
287
  processor: pluginVue.processors[".vue"],
476
288
  rules: {
477
- "vue/attribute-hyphenation": ["error", "always"],
289
+ ...pluginVue.configs["flat/recommended"].map((c) => c.rules).reduce((acc, c) => ({
290
+ ...acc,
291
+ ...c
292
+ }), {}),
478
293
  "vue/block-order": ["error", { order: [
479
294
  "script",
480
295
  "template",
481
296
  "style"
482
297
  ] }],
483
- "vue/comment-directive": "error",
484
- "vue/component-api-style": "error",
485
- "vue/component-definition-name-casing": ["error", "kebab-case"],
486
- "vue/component-name-in-template-casing": ["error", "kebab-case"],
487
- "vue/component-options-name-casing": ["error", "kebab-case"],
488
- "vue/custom-event-name-casing": ["error", "kebab-case"],
489
- "vue/define-emits-declaration": "error",
490
- "vue/define-props-declaration": "error",
491
- "vue/define-props-destructuring": ["error", { destructure: "always" }],
492
- "vue/enforce-style-attribute": ["error", { allow: ["scoped", "plain"] }],
493
- "vue/max-attributes-per-line": ["error", {
494
- singleline: { max: 1 },
495
- multiline: { max: 1 }
298
+ "vue/custom-event-name-casing": ["error", "camelCase"],
299
+ "vue/eqeqeq": ["error", "smart"],
300
+ "vue/html-self-closing": ["error", {
301
+ html: {
302
+ component: "always",
303
+ normal: "always",
304
+ void: "any"
305
+ },
306
+ math: "always",
307
+ svg: "always"
496
308
  }],
497
- "vue/html-button-has-type": "error",
498
- "vue/html-end-tags": "error",
499
- "vue/jsx-uses-vars": "error",
500
- "vue/no-async-in-computed-properties": "error",
501
- "vue/no-child-content": "error",
502
- "vue/no-computed-properties-in-data": "error",
503
- "vue/no-deprecated-data-object-declaration": "error",
504
- "vue/no-deprecated-delete-set": "error",
505
- "vue/no-deprecated-destroyed-lifecycle": "error",
506
- "vue/no-deprecated-dollar-listeners-api": "error",
507
- "vue/no-deprecated-dollar-scopedslots-api": "error",
508
- "vue/no-deprecated-events-api": "error",
509
- "vue/no-deprecated-filter": "error",
510
- "vue/no-deprecated-functional-template": "error",
511
- "vue/no-deprecated-html-element-is": "error",
512
- "vue/no-deprecated-inline-template": "error",
513
- "vue/no-deprecated-model-definition": "error",
514
- "vue/no-deprecated-props-default-this": "error",
515
- "vue/no-deprecated-router-link-tag-prop": "error",
516
- "vue/no-deprecated-scope-attribute": "error",
517
- "vue/no-deprecated-slot-attribute": "error",
518
- "vue/no-deprecated-slot-scope-attribute": "error",
519
- "vue/no-deprecated-v-bind-sync": "error",
520
- "vue/no-deprecated-v-is": "error",
521
- "vue/no-deprecated-v-on-native-modifier": "error",
522
- "vue/no-deprecated-v-on-number-modifiers": "error",
523
- "vue/no-deprecated-vue-config-keycodes": "error",
524
- "vue/no-dupe-keys": "error",
525
- "vue/no-dupe-v-else-if": "error",
526
- "vue/no-duplicate-attr-inheritance": "error",
527
- "vue/no-duplicate-attributes": "error",
528
- "vue/no-duplicate-class-names": "error",
529
- "vue/no-empty-component-block": "error",
530
- "vue/no-export-in-script-setup": "error",
531
- "vue/no-expose-after-await": "error",
532
- "vue/no-lifecycle-after-await": "error",
533
- "vue/no-lone-template": "error",
534
- "vue/no-multiple-objects-in-class": "error",
535
- "vue/no-multiple-slot-args": "error",
536
- "vue/no-mutating-props": "error",
537
- "vue/no-negated-condition": "error",
538
- "vue/no-negated-v-if-condition": "error",
539
- "vue/no-parsing-error": "error",
540
- "vue/no-potential-component-option-typo": "error",
541
- "vue/no-ref-as-operand": "error",
542
- "vue/no-ref-object-reactivity-loss": "error",
543
- "vue/no-required-prop-with-default": "error",
544
- "vue/no-reserved-component-names": "error",
545
- "vue/no-reserved-keys": "error",
546
- "vue/no-reserved-props": "error",
547
- "vue/no-setup-props-reactivity-loss": "error",
548
- "vue/no-shared-component-data": "error",
549
- "vue/no-side-effects-in-computed-properties": "error",
550
- "vue/no-template-key": "error",
551
- "vue/no-template-shadow": "error",
552
- "vue/no-template-target-blank": "error",
553
- "vue/no-textarea-mustache": "error",
554
- "vue/no-this-in-before-route-enter": "error",
555
- "vue/no-undef-components": "error",
556
- "vue/no-undef-properties": "error",
557
- "vue/no-unused-components": "error",
558
- "vue/no-unused-emit-declarations": "error",
559
- "vue/no-unused-vars": ["error", { ignorePattern: "^_" }],
560
- "vue/no-use-computed-property-like-method": "error",
561
- "vue/no-use-v-else-with-v-for": "error",
562
- "vue/no-use-v-if-with-v-for": "error",
563
- "vue/no-useless-mustaches": "error",
564
- "vue/no-useless-template-attributes": "error",
309
+ "vue/max-attributes-per-line": "off",
310
+ "vue/multi-word-component-names": "off",
311
+ "vue/no-constant-condition": "warn",
312
+ "vue/no-empty-pattern": "error",
313
+ "vue/no-loss-of-precision": "error",
314
+ "vue/no-ref-as-operand": "off",
315
+ "vue/no-unused-refs": "error",
565
316
  "vue/no-useless-v-bind": "error",
566
- "vue/no-v-for-template-key-on-child": "error",
567
- "vue/no-v-html": "error",
568
- "vue/no-v-text-v-html-on-component": "error",
569
- "vue/no-watch-after-await": "error",
570
- "vue/prefer-define-options": "error",
571
- "vue/prefer-import-from-vue": "error",
572
- "vue/prefer-separate-static-class": "error",
573
- "vue/prefer-true-attribute-shorthand": "error",
574
- "vue/prop-name-casing": ["error", "camelCase"],
575
- "vue/require-component-is": "error",
576
- "vue/require-default-prop": "error",
577
- "vue/require-emit-validator": "error",
578
- "vue/require-explicit-emits": "error",
579
- "vue/require-explicit-slots": "error",
580
- "vue/require-macro-variable-name": ["error", {
581
- defineEmits: "emit",
582
- defineProps: "props",
583
- defineSlots: "slots",
584
- useAttrs: "attrs",
585
- useSlots: "slots"
586
- }],
587
- "vue/require-name-property": "error",
588
- "vue/require-prop-type-constructor": "error",
589
- "vue/require-render-return": "error",
590
- "vue/require-slots-as-functions": "error",
591
- "vue/require-toggle-inside-transition": "error",
592
- "vue/require-typed-ref": "error",
593
- "vue/require-v-for-key": "error",
594
- "vue/require-valid-default-prop": "error",
595
- "vue/return-in-computed-property": "error",
596
- "vue/return-in-emits-validator": "error",
597
- "vue/this-in-template": "error",
598
- "vue/use-v-on-exact": "error",
599
- "vue/v-bind-style": "error",
600
- "vue/v-on-event-hyphenation": "error",
601
- "vue/v-on-style": "error",
602
- "vue/v-slot-style": "error",
603
- "vue/valid-attribute-name": "error",
604
- "vue/valid-define-emits": "error",
605
- "vue/valid-define-options": "error",
606
- "vue/valid-define-props": "error",
607
- "vue/valid-next-tick": "error",
608
- "vue/valid-template-root": "error",
609
- "vue/valid-v-bind": "error",
610
- "vue/valid-v-cloak": "error",
611
- "vue/valid-v-else": "error",
612
- "vue/valid-v-else-if": "error",
613
- "vue/valid-v-for": "error",
614
- "vue/valid-v-html": "error",
615
- "vue/valid-v-if": "error",
616
- "vue/valid-v-is": "error",
617
- "vue/valid-v-memo": "error",
618
- "vue/valid-v-model": "error",
619
- "vue/valid-v-on": "error",
620
- "vue/valid-v-once": "error",
621
- "vue/valid-v-pre": "error",
622
- "vue/valid-v-show": "error",
623
- "vue/valid-v-slot": "error",
624
- "vue/valid-v-text": "error"
317
+ "vue/no-v-html": "off",
318
+ "vue/object-shorthand": [
319
+ "error",
320
+ "always",
321
+ {
322
+ avoidQuotes: true,
323
+ ignoreConstructors: false
324
+ }
325
+ ],
326
+ "vue/one-component-per-file": "off",
327
+ "vue/padding-line-between-blocks": ["error", "always"],
328
+ "vue/prefer-template": "error",
329
+ "vue/require-default-prop": "off",
330
+ "vue/require-prop-types": "off",
331
+ "vue/return-in-computed-property": ["error", { treatUndefinedAsUnspecified: false }]
625
332
  }
626
333
  }];
627
334
  }
@@ -639,30 +346,10 @@ async function tailwindcss() {
639
346
  }];
640
347
  }
641
348
 
642
- //#endregion
643
- //#region src/configs/comments.js
644
- async function comments() {
645
- const [pluginComments] = await Promise.all([interopDefault(import("@eslint-community/eslint-plugin-eslint-comments"))]);
646
- return [{
647
- name: "cuiqg/eslint-comments",
648
- plugins: { "@eslint-community/eslint-comments": pluginComments },
649
- rules: {
650
- "@eslint-community/eslint-comments/no-aggregating-enable": "error",
651
- "@eslint-community/eslint-comments/no-duplicate-disable": "error",
652
- "@eslint-community/eslint-comments/no-unlimited-disable": "error",
653
- "@eslint-community/eslint-comments/no-unused-enable": "error"
654
- }
655
- }];
656
- }
657
-
658
349
  //#endregion
659
350
  //#region src/configs/typescript.js
660
351
  async function typescript() {
661
- const files = [
662
- GLOB_TS,
663
- GLOB_TSX,
664
- GLOB_VUE
665
- ];
352
+ const files = [GLOB_TS, GLOB_TSX];
666
353
  const [pluginTs, parserTs] = await Promise.all([interopDefault(import("@typescript-eslint/eslint-plugin")), interopDefault(import("@typescript-eslint/parser"))]);
667
354
  return [{
668
355
  files,
@@ -862,6 +549,29 @@ async function autoImports(options = {}) {
862
549
  return config;
863
550
  }
864
551
 
552
+ //#endregion
553
+ //#region src/configs/next.js
554
+ async function nextjs() {
555
+ const [pluginNextjs] = await Promise.all([interopDefault(import("@next/eslint-plugin-next"))]);
556
+ return [{
557
+ name: "cuiqg/nextjs",
558
+ plugins: { "@next/next": pluginNextjs },
559
+ rules: { ...pluginNextjs.configs.recommended.rules }
560
+ }];
561
+ }
562
+
563
+ //#endregion
564
+ //#region src/configs/css.js
565
+ async function css() {
566
+ const [pluginCSS] = await Promise.all([interopDefault(import("@eslint/css"))]);
567
+ return [{
568
+ name: "cuiqg/css",
569
+ files: [GLOB_CSS],
570
+ plugins: { css: pluginCSS },
571
+ rules: { ...pluginCSS.configs.recommended.rules }
572
+ }];
573
+ }
574
+
865
575
  //#endregion
866
576
  //#region src/env.js
867
577
  const isInGitHookOrLintStaged = () => {
@@ -877,13 +587,28 @@ const hasUnocss = () => isPackageExists("unocss");
877
587
 
878
588
  //#endregion
879
589
  //#region src/presets.js
590
+ /**
591
+ *
592
+ * @param {object} [options]
593
+ * @param {boolean} [options.jsdoc]
594
+ * @param {boolean} [options.unocss]
595
+ * @param {boolean} [options.tailwindcss]
596
+ * @param {boolean} [options.typescript]
597
+ * @param {boolean} [options.vue]
598
+ * @param {boolean} [options.nextjs]
599
+ * @param {boolean} [options.css]
600
+ * @param {...object} userConfigs
601
+ * @returns {FlatConfigComposer} FlatConfigComposer
602
+ */
880
603
  function cuiqg(options = {}, ...userConfigs) {
881
- const { jsdoc: enableJsdoc = true, unocss: enableUnocss = hasUnocss(), tailwindcss: enableTailwindcss = false, typescript: enableTypescript = false, vue: enableVue = hasVue() } = options;
604
+ const { jsdoc: enableJsdoc = true, unocss: enableUnocss = hasUnocss(), tailwindcss: enableTailwindcss = false, typescript: enableTypescript = false, vue: enableVue = hasVue(), nextjs: enableNextjs = false, css: enableCSS = false } = options;
882
605
  const configs = [];
883
- configs.push(autoImports(), baseline(), ignores(), comments(), javascript({ isInEditor }), stylistic(), packageJson());
606
+ configs.push(autoImports(), baseline(), ignores(), javascript({ isInEditor }), stylistic(), packageJson());
884
607
  if (enableTypescript) configs.push(typescript());
885
608
  if (enableJsdoc) configs.push(jsdoc());
609
+ if (enableCSS) configs.push(css());
886
610
  if (enableVue) configs.push(vue({ typescript: enableTypescript }), macros());
611
+ if (enableNextjs) configs.push(nextjs());
887
612
  if (enableUnocss) configs.push(unocss());
888
613
  if (enableTailwindcss) configs.push(tailwindcss());
889
614
  return new FlatConfigComposer(...configs, ...userConfigs);
@@ -894,4 +619,4 @@ function cuiqg(options = {}, ...userConfigs) {
894
619
  var src_default = cuiqg;
895
620
 
896
621
  //#endregion
897
- export { GLOB_CSS, GLOB_EXCLUDE, GLOB_JS, GLOB_JSX, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_TS, GLOB_TSX, GLOB_VUE, autoImports, baseline, comments, cuiqg, src_default as default, hasUnocss, hasVue, ignores, isInEditor, isInGitHookOrLintStaged, javascript, jsdoc, macros, packageJson, stylistic, stylisticConfigDefaults, tailwindcss, typescript, unocss, vue };
622
+ export { GLOB_CSS, GLOB_EXCLUDE, GLOB_JS, GLOB_JSX, GLOB_SRC, GLOB_SRC_EXT, GLOB_TS, GLOB_TSX, GLOB_VUE, autoImports, baseline, css, cuiqg, src_default as default, hasUnocss, hasVue, ignores, isInEditor, isInGitHookOrLintStaged, javascript, jsdoc, macros, nextjs, packageJson, stylistic, stylisticConfigDefaults, tailwindcss, typescript, unocss, vue };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cuiqg/eslint-config",
3
- "version": "2.8.15",
3
+ "version": "2.8.17",
4
4
  "description": "Eslint config for @cuiqg",
5
5
  "keywords": [
6
6
  "eslint-config"
@@ -26,6 +26,9 @@
26
26
  "files": [
27
27
  "dist"
28
28
  ],
29
+ "peerDependencies": {
30
+ "eslint": ">=9.28.0"
31
+ },
29
32
  "devDependencies": {
30
33
  "@eslint/config-inspector": "^1.4.2",
31
34
  "@types/node": "^25.0.3",
@@ -35,11 +38,10 @@
35
38
  "typescript": "^5.9.3",
36
39
  "unrun": "^0.2.22"
37
40
  },
38
- "peerDependencies": {
39
- "eslint": ">=9.28.0"
40
- },
41
41
  "dependencies": {
42
- "@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
42
+ "@eslint/css": "^0.14.1",
43
+ "@eslint/js": "^9.39.2",
44
+ "@next/eslint-plugin-next": "^16.1.1",
43
45
  "@stylistic/eslint-plugin": "^5.6.1",
44
46
  "@typescript-eslint/eslint-plugin": "^8.50.1",
45
47
  "@typescript-eslint/parser": "^8.50.1",
@@ -49,11 +51,9 @@
49
51
  "eslint-flat-config-utils": "^2.1.4",
50
52
  "eslint-plugin-baseline-js": "^0.4.2",
51
53
  "eslint-plugin-depend": "^1.4.0",
52
- "eslint-plugin-import-x": "^4.16.1",
53
54
  "eslint-plugin-jsdoc": "^61.5.0",
54
55
  "eslint-plugin-package-json": "^0.85.0",
55
56
  "eslint-plugin-tailwindcss": "4.0.0-beta.0",
56
- "eslint-plugin-unused-imports": "^4.3.0",
57
57
  "eslint-plugin-vue": "^10.6.2",
58
58
  "globals": "^16.5.0",
59
59
  "jsonc-eslint-parser": "^2.4.2",