@lqbach/eslint-config 0.7.0 → 0.8.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/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.8.0](https://github.com/lqbach/eslint-prettier-config/compare/eslint-config-v0.7.0...eslint-config-v0.8.0) (2025-10-04)
4
+
5
+
6
+ ### Features 🚀
7
+
8
+ * add astro ([eabb4b0](https://github.com/lqbach/eslint-prettier-config/commit/eabb4b0923608c5c3964cf149e40f0a88d08dc0e))
9
+ * add mise file ([#19](https://github.com/lqbach/eslint-prettier-config/issues/19)) ([fbd6061](https://github.com/lqbach/eslint-prettier-config/commit/fbd60615fb30c310d6b38d1cdc875ba9f21f6684))
10
+
3
11
  ## [0.7.0](https://github.com/lqbach/eslint-prettier-config/compare/eslint-config-v0.6.1...eslint-config-v0.7.0) (2024-12-22)
4
12
 
5
13
 
package/dist/index.cjs CHANGED
@@ -5,9 +5,6 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __getProtoOf = Object.getPrototypeOf;
7
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __commonJS = (cb, mod) => function __require() {
9
- return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
10
- };
11
8
  var __export = (target, all) => {
12
9
  for (var name in all)
13
10
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -30,345 +27,6 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
30
27
  ));
31
28
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
32
29
 
33
- // ../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/package.json
34
- var require_package = __commonJS({
35
- "../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/package.json"(exports2, module2) {
36
- module2.exports = {
37
- name: "@eslint/js",
38
- version: "9.17.0",
39
- description: "ESLint JavaScript language implementation",
40
- main: "./src/index.js",
41
- types: "./types/index.d.ts",
42
- scripts: {
43
- "test:types": "tsc -p tests/types/tsconfig.json"
44
- },
45
- files: [
46
- "LICENSE",
47
- "README.md",
48
- "src",
49
- "types"
50
- ],
51
- publishConfig: {
52
- access: "public"
53
- },
54
- repository: {
55
- type: "git",
56
- url: "https://github.com/eslint/eslint.git",
57
- directory: "packages/js"
58
- },
59
- homepage: "https://eslint.org",
60
- bugs: "https://github.com/eslint/eslint/issues/",
61
- keywords: [
62
- "javascript",
63
- "eslint-plugin",
64
- "eslint"
65
- ],
66
- license: "MIT",
67
- engines: {
68
- node: "^18.18.0 || ^20.9.0 || >=21.1.0"
69
- }
70
- };
71
- }
72
- });
73
-
74
- // ../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/configs/eslint-all.js
75
- var require_eslint_all = __commonJS({
76
- "../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/configs/eslint-all.js"(exports2, module2) {
77
- "use strict";
78
- module2.exports = Object.freeze({
79
- "rules": {
80
- "accessor-pairs": "error",
81
- "array-callback-return": "error",
82
- "arrow-body-style": "error",
83
- "block-scoped-var": "error",
84
- "camelcase": "error",
85
- "capitalized-comments": "error",
86
- "class-methods-use-this": "error",
87
- "complexity": "error",
88
- "consistent-return": "error",
89
- "consistent-this": "error",
90
- "constructor-super": "error",
91
- "curly": "error",
92
- "default-case": "error",
93
- "default-case-last": "error",
94
- "default-param-last": "error",
95
- "dot-notation": "error",
96
- "eqeqeq": "error",
97
- "for-direction": "error",
98
- "func-name-matching": "error",
99
- "func-names": "error",
100
- "func-style": "error",
101
- "getter-return": "error",
102
- "grouped-accessor-pairs": "error",
103
- "guard-for-in": "error",
104
- "id-denylist": "error",
105
- "id-length": "error",
106
- "id-match": "error",
107
- "init-declarations": "error",
108
- "logical-assignment-operators": "error",
109
- "max-classes-per-file": "error",
110
- "max-depth": "error",
111
- "max-lines": "error",
112
- "max-lines-per-function": "error",
113
- "max-nested-callbacks": "error",
114
- "max-params": "error",
115
- "max-statements": "error",
116
- "new-cap": "error",
117
- "no-alert": "error",
118
- "no-array-constructor": "error",
119
- "no-async-promise-executor": "error",
120
- "no-await-in-loop": "error",
121
- "no-bitwise": "error",
122
- "no-caller": "error",
123
- "no-case-declarations": "error",
124
- "no-class-assign": "error",
125
- "no-compare-neg-zero": "error",
126
- "no-cond-assign": "error",
127
- "no-console": "error",
128
- "no-const-assign": "error",
129
- "no-constant-binary-expression": "error",
130
- "no-constant-condition": "error",
131
- "no-constructor-return": "error",
132
- "no-continue": "error",
133
- "no-control-regex": "error",
134
- "no-debugger": "error",
135
- "no-delete-var": "error",
136
- "no-div-regex": "error",
137
- "no-dupe-args": "error",
138
- "no-dupe-class-members": "error",
139
- "no-dupe-else-if": "error",
140
- "no-dupe-keys": "error",
141
- "no-duplicate-case": "error",
142
- "no-duplicate-imports": "error",
143
- "no-else-return": "error",
144
- "no-empty": "error",
145
- "no-empty-character-class": "error",
146
- "no-empty-function": "error",
147
- "no-empty-pattern": "error",
148
- "no-empty-static-block": "error",
149
- "no-eq-null": "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-extra-label": "error",
156
- "no-fallthrough": "error",
157
- "no-func-assign": "error",
158
- "no-global-assign": "error",
159
- "no-implicit-coercion": "error",
160
- "no-implicit-globals": "error",
161
- "no-implied-eval": "error",
162
- "no-import-assign": "error",
163
- "no-inline-comments": "error",
164
- "no-inner-declarations": "error",
165
- "no-invalid-regexp": "error",
166
- "no-invalid-this": "error",
167
- "no-irregular-whitespace": "error",
168
- "no-iterator": "error",
169
- "no-label-var": "error",
170
- "no-labels": "error",
171
- "no-lone-blocks": "error",
172
- "no-lonely-if": "error",
173
- "no-loop-func": "error",
174
- "no-loss-of-precision": "error",
175
- "no-magic-numbers": "error",
176
- "no-misleading-character-class": "error",
177
- "no-multi-assign": "error",
178
- "no-multi-str": "error",
179
- "no-negated-condition": "error",
180
- "no-nested-ternary": "error",
181
- "no-new": "error",
182
- "no-new-func": "error",
183
- "no-new-native-nonconstructor": "error",
184
- "no-new-wrappers": "error",
185
- "no-nonoctal-decimal-escape": "error",
186
- "no-obj-calls": "error",
187
- "no-object-constructor": "error",
188
- "no-octal": "error",
189
- "no-octal-escape": "error",
190
- "no-param-reassign": "error",
191
- "no-plusplus": "error",
192
- "no-promise-executor-return": "error",
193
- "no-proto": "error",
194
- "no-prototype-builtins": "error",
195
- "no-redeclare": "error",
196
- "no-regex-spaces": "error",
197
- "no-restricted-exports": "error",
198
- "no-restricted-globals": "error",
199
- "no-restricted-imports": "error",
200
- "no-restricted-properties": "error",
201
- "no-restricted-syntax": "error",
202
- "no-return-assign": "error",
203
- "no-script-url": "error",
204
- "no-self-assign": "error",
205
- "no-self-compare": "error",
206
- "no-sequences": "error",
207
- "no-setter-return": "error",
208
- "no-shadow": "error",
209
- "no-shadow-restricted-names": "error",
210
- "no-sparse-arrays": "error",
211
- "no-template-curly-in-string": "error",
212
- "no-ternary": "error",
213
- "no-this-before-super": "error",
214
- "no-throw-literal": "error",
215
- "no-undef": "error",
216
- "no-undef-init": "error",
217
- "no-undefined": "error",
218
- "no-underscore-dangle": "error",
219
- "no-unexpected-multiline": "error",
220
- "no-unmodified-loop-condition": "error",
221
- "no-unneeded-ternary": "error",
222
- "no-unreachable": "error",
223
- "no-unreachable-loop": "error",
224
- "no-unsafe-finally": "error",
225
- "no-unsafe-negation": "error",
226
- "no-unsafe-optional-chaining": "error",
227
- "no-unused-expressions": "error",
228
- "no-unused-labels": "error",
229
- "no-unused-private-class-members": "error",
230
- "no-unused-vars": "error",
231
- "no-use-before-define": "error",
232
- "no-useless-assignment": "error",
233
- "no-useless-backreference": "error",
234
- "no-useless-call": "error",
235
- "no-useless-catch": "error",
236
- "no-useless-computed-key": "error",
237
- "no-useless-concat": "error",
238
- "no-useless-constructor": "error",
239
- "no-useless-escape": "error",
240
- "no-useless-rename": "error",
241
- "no-useless-return": "error",
242
- "no-var": "error",
243
- "no-void": "error",
244
- "no-warning-comments": "error",
245
- "no-with": "error",
246
- "object-shorthand": "error",
247
- "one-var": "error",
248
- "operator-assignment": "error",
249
- "prefer-arrow-callback": "error",
250
- "prefer-const": "error",
251
- "prefer-destructuring": "error",
252
- "prefer-exponentiation-operator": "error",
253
- "prefer-named-capture-group": "error",
254
- "prefer-numeric-literals": "error",
255
- "prefer-object-has-own": "error",
256
- "prefer-object-spread": "error",
257
- "prefer-promise-reject-errors": "error",
258
- "prefer-regex-literals": "error",
259
- "prefer-rest-params": "error",
260
- "prefer-spread": "error",
261
- "prefer-template": "error",
262
- "radix": "error",
263
- "require-atomic-updates": "error",
264
- "require-await": "error",
265
- "require-unicode-regexp": "error",
266
- "require-yield": "error",
267
- "sort-imports": "error",
268
- "sort-keys": "error",
269
- "sort-vars": "error",
270
- "strict": "error",
271
- "symbol-description": "error",
272
- "unicode-bom": "error",
273
- "use-isnan": "error",
274
- "valid-typeof": "error",
275
- "vars-on-top": "error",
276
- "yoda": "error"
277
- }
278
- });
279
- }
280
- });
281
-
282
- // ../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/configs/eslint-recommended.js
283
- var require_eslint_recommended = __commonJS({
284
- "../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/configs/eslint-recommended.js"(exports2, module2) {
285
- "use strict";
286
- module2.exports = Object.freeze({
287
- rules: Object.freeze({
288
- "constructor-super": "error",
289
- "for-direction": "error",
290
- "getter-return": "error",
291
- "no-async-promise-executor": "error",
292
- "no-case-declarations": "error",
293
- "no-class-assign": "error",
294
- "no-compare-neg-zero": "error",
295
- "no-cond-assign": "error",
296
- "no-const-assign": "error",
297
- "no-constant-binary-expression": "error",
298
- "no-constant-condition": "error",
299
- "no-control-regex": "error",
300
- "no-debugger": "error",
301
- "no-delete-var": "error",
302
- "no-dupe-args": "error",
303
- "no-dupe-class-members": "error",
304
- "no-dupe-else-if": "error",
305
- "no-dupe-keys": "error",
306
- "no-duplicate-case": "error",
307
- "no-empty": "error",
308
- "no-empty-character-class": "error",
309
- "no-empty-pattern": "error",
310
- "no-empty-static-block": "error",
311
- "no-ex-assign": "error",
312
- "no-extra-boolean-cast": "error",
313
- "no-fallthrough": "error",
314
- "no-func-assign": "error",
315
- "no-global-assign": "error",
316
- "no-import-assign": "error",
317
- "no-invalid-regexp": "error",
318
- "no-irregular-whitespace": "error",
319
- "no-loss-of-precision": "error",
320
- "no-misleading-character-class": "error",
321
- "no-new-native-nonconstructor": "error",
322
- "no-nonoctal-decimal-escape": "error",
323
- "no-obj-calls": "error",
324
- "no-octal": "error",
325
- "no-prototype-builtins": "error",
326
- "no-redeclare": "error",
327
- "no-regex-spaces": "error",
328
- "no-self-assign": "error",
329
- "no-setter-return": "error",
330
- "no-shadow-restricted-names": "error",
331
- "no-sparse-arrays": "error",
332
- "no-this-before-super": "error",
333
- "no-undef": "error",
334
- "no-unexpected-multiline": "error",
335
- "no-unreachable": "error",
336
- "no-unsafe-finally": "error",
337
- "no-unsafe-negation": "error",
338
- "no-unsafe-optional-chaining": "error",
339
- "no-unused-labels": "error",
340
- "no-unused-private-class-members": "error",
341
- "no-unused-vars": "error",
342
- "no-useless-backreference": "error",
343
- "no-useless-catch": "error",
344
- "no-useless-escape": "error",
345
- "no-with": "error",
346
- "require-yield": "error",
347
- "use-isnan": "error",
348
- "valid-typeof": "error"
349
- })
350
- });
351
- }
352
- });
353
-
354
- // ../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/index.js
355
- var require_src = __commonJS({
356
- "../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/index.js"(exports2, module2) {
357
- "use strict";
358
- var { version } = require_package();
359
- module2.exports = {
360
- meta: {
361
- name: "@eslint/js",
362
- version
363
- },
364
- configs: {
365
- all: require_eslint_all(),
366
- recommended: require_eslint_recommended()
367
- }
368
- };
369
- }
370
- });
371
-
372
30
  // src/index.ts
373
31
  var index_exports = {};
374
32
  __export(index_exports, {
@@ -378,11 +36,12 @@ module.exports = __toCommonJS(index_exports);
378
36
  var import_globals = __toESM(require("globals"), 1);
379
37
 
380
38
  // src/libs.ts
381
- var import_js = __toESM(require_src(), 1);
39
+ var import_js = __toESM(require("@eslint/js"), 1);
382
40
  var import_eslint_plugin_next = __toESM(require("@next/eslint-plugin-next"), 1);
383
41
  var import_eslint_plugin = __toESM(require("@typescript-eslint/eslint-plugin"), 1);
384
42
  var import_parser = __toESM(require("@typescript-eslint/parser"), 1);
385
43
  var import_eslint_config_prettier = __toESM(require("eslint-config-prettier"), 1);
44
+ var import_eslint_plugin_astro = __toESM(require("eslint-plugin-astro"), 1);
386
45
  var import_eslint_plugin_jsonc = __toESM(require("eslint-plugin-jsonc"), 1);
387
46
  var import_eslint_plugin_perfectionist = __toESM(require("eslint-plugin-perfectionist"), 1);
388
47
  var import_eslint_plugin_react = __toESM(require("eslint-plugin-react"), 1);
@@ -504,7 +163,8 @@ function config(params = {}) {
504
163
  "react-hooks": import_eslint_plugin_react_hooks.default
505
164
  },
506
165
  rules: {
507
- ...import_eslint_plugin_react_hooks.default.configs.recommended.rules
166
+ "react-hooks/exhaustive-deps": "warn",
167
+ "react-hooks/rules-of-hooks": "error"
508
168
  }
509
169
  } : {};
510
170
  const vueConfig = params.vue ?? false ? {
@@ -523,8 +183,8 @@ function config(params = {}) {
523
183
  processor: import_eslint_plugin_vue.default.processors[".vue"],
524
184
  rules: {
525
185
  ...import_eslint_plugin_vue.default.configs["base"].rules,
526
- ...import_eslint_plugin_vue.default.configs["vue3-essential"].rules,
527
- ...import_eslint_plugin_vue.default.configs["vue3-strongly-recommended"].rules
186
+ ...import_eslint_plugin_vue.default.configs["essential"].rules,
187
+ ...import_eslint_plugin_vue.default.configs["strongly-recommended"].rules
528
188
  }
529
189
  } : {};
530
190
  const nextConfig = params.next ?? false ? {
@@ -590,6 +250,30 @@ function config(params = {}) {
590
250
  ...import_eslint_plugin_perfectionist.default.configs["recommended-natural"].rules
591
251
  }
592
252
  } : {};
253
+ const astroConfig = params.astro ?? false ? {
254
+ files: ["**/*.astro"],
255
+ languageOptions: {
256
+ parserOptions: params.typescript ? {
257
+ extraFileExtensions: [".astro"],
258
+ parser: import_parser.default,
259
+ sourceType: "module"
260
+ } : {}
261
+ },
262
+ name: "lqbach/astro",
263
+ plugins: {
264
+ astro: import_eslint_plugin_astro.default
265
+ },
266
+ rules: {
267
+ "astro/missing-client-only-directive-value": "error",
268
+ "astro/no-conflict-set-directives": "error",
269
+ "astro/no-deprecated-astro-canonicalurl": "error",
270
+ "astro/no-deprecated-astro-fetchcontent": "error",
271
+ "astro/no-deprecated-astro-resolve": "error",
272
+ "astro/no-deprecated-getentrybyslug": "error",
273
+ "astro/no-unused-define-vars-in-style": "error",
274
+ "astro/valid-compile": "error"
275
+ }
276
+ } : {};
593
277
  const prettierConfig = import_eslint_config_prettier.default;
594
278
  let config2 = [];
595
279
  config2.push(ignoresConfig);
@@ -599,6 +283,7 @@ function config(params = {}) {
599
283
  config2.push(reactHooksConfig);
600
284
  config2.push(vueConfig);
601
285
  config2.push(nextConfig);
286
+ config2.push(astroConfig);
602
287
  config2.push(yamlConfig);
603
288
  config2.push(...jsoncConfig);
604
289
  config2.push(perfectionistConfig);
package/dist/index.d.cts CHANGED
@@ -1,4 +1,19 @@
1
+ interface AstroConfigParams {
2
+ typescript?: boolean;
3
+ }
4
+ interface ConfigObject {
5
+ files?: Array<string>;
6
+ ignores?: Array<string>;
7
+ languageOptions?: LanguageOptions;
8
+ linterOptions?: LinterOptions;
9
+ name?: string;
10
+ plugins?: object;
11
+ processor?: object;
12
+ rules?: object;
13
+ settings?: any;
14
+ }
1
15
  interface ConfigParams {
16
+ astro?: AstroConfigParams | boolean;
2
17
  ignores?: Array<string>;
3
18
  json?: boolean;
4
19
  markdown?: boolean;
@@ -20,17 +35,6 @@ interface LinterOptions {
20
35
  noInlineConfig?: boolean;
21
36
  reportUnusedDisableDirectives?: boolean;
22
37
  }
23
- interface ConfigObject {
24
- files?: Array<string>;
25
- ignores?: Array<string>;
26
- languageOptions?: LanguageOptions;
27
- linterOptions?: LinterOptions;
28
- name?: string;
29
- plugins?: object;
30
- processor?: object;
31
- rules?: object;
32
- settings?: any;
33
- }
34
38
  interface NextJSConfigParams {
35
39
  rootDir?: string;
36
40
  }
package/dist/index.d.ts CHANGED
@@ -1,4 +1,19 @@
1
+ interface AstroConfigParams {
2
+ typescript?: boolean;
3
+ }
4
+ interface ConfigObject {
5
+ files?: Array<string>;
6
+ ignores?: Array<string>;
7
+ languageOptions?: LanguageOptions;
8
+ linterOptions?: LinterOptions;
9
+ name?: string;
10
+ plugins?: object;
11
+ processor?: object;
12
+ rules?: object;
13
+ settings?: any;
14
+ }
1
15
  interface ConfigParams {
16
+ astro?: AstroConfigParams | boolean;
2
17
  ignores?: Array<string>;
3
18
  json?: boolean;
4
19
  markdown?: boolean;
@@ -20,17 +35,6 @@ interface LinterOptions {
20
35
  noInlineConfig?: boolean;
21
36
  reportUnusedDisableDirectives?: boolean;
22
37
  }
23
- interface ConfigObject {
24
- files?: Array<string>;
25
- ignores?: Array<string>;
26
- languageOptions?: LanguageOptions;
27
- linterOptions?: LinterOptions;
28
- name?: string;
29
- plugins?: object;
30
- processor?: object;
31
- rules?: object;
32
- settings?: any;
33
- }
34
38
  interface NextJSConfigParams {
35
39
  rootDir?: string;
36
40
  }