@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 +8 -0
- package/dist/index.cjs +31 -346
- package/dist/index.d.cts +15 -11
- package/dist/index.d.ts +15 -11
- package/dist/index.js +62 -400
- package/package.json +9 -7
- package/src/index.ts +37 -3
- package/src/libs.ts +1 -2
- package/src/types.ts +18 -13
- package/test/astro.spec.ts +120 -0
package/dist/index.js
CHANGED
|
@@ -1,387 +1,23 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __commonJS = (cb, mod) => function __require() {
|
|
8
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
9
|
-
};
|
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
-
for (let key of __getOwnPropNames(from))
|
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
19
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
20
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
21
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
22
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
23
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
24
|
-
mod
|
|
25
|
-
));
|
|
26
|
-
|
|
27
|
-
// ../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/package.json
|
|
28
|
-
var require_package = __commonJS({
|
|
29
|
-
"../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/package.json"(exports, module) {
|
|
30
|
-
module.exports = {
|
|
31
|
-
name: "@eslint/js",
|
|
32
|
-
version: "9.17.0",
|
|
33
|
-
description: "ESLint JavaScript language implementation",
|
|
34
|
-
main: "./src/index.js",
|
|
35
|
-
types: "./types/index.d.ts",
|
|
36
|
-
scripts: {
|
|
37
|
-
"test:types": "tsc -p tests/types/tsconfig.json"
|
|
38
|
-
},
|
|
39
|
-
files: [
|
|
40
|
-
"LICENSE",
|
|
41
|
-
"README.md",
|
|
42
|
-
"src",
|
|
43
|
-
"types"
|
|
44
|
-
],
|
|
45
|
-
publishConfig: {
|
|
46
|
-
access: "public"
|
|
47
|
-
},
|
|
48
|
-
repository: {
|
|
49
|
-
type: "git",
|
|
50
|
-
url: "https://github.com/eslint/eslint.git",
|
|
51
|
-
directory: "packages/js"
|
|
52
|
-
},
|
|
53
|
-
homepage: "https://eslint.org",
|
|
54
|
-
bugs: "https://github.com/eslint/eslint/issues/",
|
|
55
|
-
keywords: [
|
|
56
|
-
"javascript",
|
|
57
|
-
"eslint-plugin",
|
|
58
|
-
"eslint"
|
|
59
|
-
],
|
|
60
|
-
license: "MIT",
|
|
61
|
-
engines: {
|
|
62
|
-
node: "^18.18.0 || ^20.9.0 || >=21.1.0"
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
// ../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/configs/eslint-all.js
|
|
69
|
-
var require_eslint_all = __commonJS({
|
|
70
|
-
"../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/configs/eslint-all.js"(exports, module) {
|
|
71
|
-
"use strict";
|
|
72
|
-
module.exports = Object.freeze({
|
|
73
|
-
"rules": {
|
|
74
|
-
"accessor-pairs": "error",
|
|
75
|
-
"array-callback-return": "error",
|
|
76
|
-
"arrow-body-style": "error",
|
|
77
|
-
"block-scoped-var": "error",
|
|
78
|
-
"camelcase": "error",
|
|
79
|
-
"capitalized-comments": "error",
|
|
80
|
-
"class-methods-use-this": "error",
|
|
81
|
-
"complexity": "error",
|
|
82
|
-
"consistent-return": "error",
|
|
83
|
-
"consistent-this": "error",
|
|
84
|
-
"constructor-super": "error",
|
|
85
|
-
"curly": "error",
|
|
86
|
-
"default-case": "error",
|
|
87
|
-
"default-case-last": "error",
|
|
88
|
-
"default-param-last": "error",
|
|
89
|
-
"dot-notation": "error",
|
|
90
|
-
"eqeqeq": "error",
|
|
91
|
-
"for-direction": "error",
|
|
92
|
-
"func-name-matching": "error",
|
|
93
|
-
"func-names": "error",
|
|
94
|
-
"func-style": "error",
|
|
95
|
-
"getter-return": "error",
|
|
96
|
-
"grouped-accessor-pairs": "error",
|
|
97
|
-
"guard-for-in": "error",
|
|
98
|
-
"id-denylist": "error",
|
|
99
|
-
"id-length": "error",
|
|
100
|
-
"id-match": "error",
|
|
101
|
-
"init-declarations": "error",
|
|
102
|
-
"logical-assignment-operators": "error",
|
|
103
|
-
"max-classes-per-file": "error",
|
|
104
|
-
"max-depth": "error",
|
|
105
|
-
"max-lines": "error",
|
|
106
|
-
"max-lines-per-function": "error",
|
|
107
|
-
"max-nested-callbacks": "error",
|
|
108
|
-
"max-params": "error",
|
|
109
|
-
"max-statements": "error",
|
|
110
|
-
"new-cap": "error",
|
|
111
|
-
"no-alert": "error",
|
|
112
|
-
"no-array-constructor": "error",
|
|
113
|
-
"no-async-promise-executor": "error",
|
|
114
|
-
"no-await-in-loop": "error",
|
|
115
|
-
"no-bitwise": "error",
|
|
116
|
-
"no-caller": "error",
|
|
117
|
-
"no-case-declarations": "error",
|
|
118
|
-
"no-class-assign": "error",
|
|
119
|
-
"no-compare-neg-zero": "error",
|
|
120
|
-
"no-cond-assign": "error",
|
|
121
|
-
"no-console": "error",
|
|
122
|
-
"no-const-assign": "error",
|
|
123
|
-
"no-constant-binary-expression": "error",
|
|
124
|
-
"no-constant-condition": "error",
|
|
125
|
-
"no-constructor-return": "error",
|
|
126
|
-
"no-continue": "error",
|
|
127
|
-
"no-control-regex": "error",
|
|
128
|
-
"no-debugger": "error",
|
|
129
|
-
"no-delete-var": "error",
|
|
130
|
-
"no-div-regex": "error",
|
|
131
|
-
"no-dupe-args": "error",
|
|
132
|
-
"no-dupe-class-members": "error",
|
|
133
|
-
"no-dupe-else-if": "error",
|
|
134
|
-
"no-dupe-keys": "error",
|
|
135
|
-
"no-duplicate-case": "error",
|
|
136
|
-
"no-duplicate-imports": "error",
|
|
137
|
-
"no-else-return": "error",
|
|
138
|
-
"no-empty": "error",
|
|
139
|
-
"no-empty-character-class": "error",
|
|
140
|
-
"no-empty-function": "error",
|
|
141
|
-
"no-empty-pattern": "error",
|
|
142
|
-
"no-empty-static-block": "error",
|
|
143
|
-
"no-eq-null": "error",
|
|
144
|
-
"no-eval": "error",
|
|
145
|
-
"no-ex-assign": "error",
|
|
146
|
-
"no-extend-native": "error",
|
|
147
|
-
"no-extra-bind": "error",
|
|
148
|
-
"no-extra-boolean-cast": "error",
|
|
149
|
-
"no-extra-label": "error",
|
|
150
|
-
"no-fallthrough": "error",
|
|
151
|
-
"no-func-assign": "error",
|
|
152
|
-
"no-global-assign": "error",
|
|
153
|
-
"no-implicit-coercion": "error",
|
|
154
|
-
"no-implicit-globals": "error",
|
|
155
|
-
"no-implied-eval": "error",
|
|
156
|
-
"no-import-assign": "error",
|
|
157
|
-
"no-inline-comments": "error",
|
|
158
|
-
"no-inner-declarations": "error",
|
|
159
|
-
"no-invalid-regexp": "error",
|
|
160
|
-
"no-invalid-this": "error",
|
|
161
|
-
"no-irregular-whitespace": "error",
|
|
162
|
-
"no-iterator": "error",
|
|
163
|
-
"no-label-var": "error",
|
|
164
|
-
"no-labels": "error",
|
|
165
|
-
"no-lone-blocks": "error",
|
|
166
|
-
"no-lonely-if": "error",
|
|
167
|
-
"no-loop-func": "error",
|
|
168
|
-
"no-loss-of-precision": "error",
|
|
169
|
-
"no-magic-numbers": "error",
|
|
170
|
-
"no-misleading-character-class": "error",
|
|
171
|
-
"no-multi-assign": "error",
|
|
172
|
-
"no-multi-str": "error",
|
|
173
|
-
"no-negated-condition": "error",
|
|
174
|
-
"no-nested-ternary": "error",
|
|
175
|
-
"no-new": "error",
|
|
176
|
-
"no-new-func": "error",
|
|
177
|
-
"no-new-native-nonconstructor": "error",
|
|
178
|
-
"no-new-wrappers": "error",
|
|
179
|
-
"no-nonoctal-decimal-escape": "error",
|
|
180
|
-
"no-obj-calls": "error",
|
|
181
|
-
"no-object-constructor": "error",
|
|
182
|
-
"no-octal": "error",
|
|
183
|
-
"no-octal-escape": "error",
|
|
184
|
-
"no-param-reassign": "error",
|
|
185
|
-
"no-plusplus": "error",
|
|
186
|
-
"no-promise-executor-return": "error",
|
|
187
|
-
"no-proto": "error",
|
|
188
|
-
"no-prototype-builtins": "error",
|
|
189
|
-
"no-redeclare": "error",
|
|
190
|
-
"no-regex-spaces": "error",
|
|
191
|
-
"no-restricted-exports": "error",
|
|
192
|
-
"no-restricted-globals": "error",
|
|
193
|
-
"no-restricted-imports": "error",
|
|
194
|
-
"no-restricted-properties": "error",
|
|
195
|
-
"no-restricted-syntax": "error",
|
|
196
|
-
"no-return-assign": "error",
|
|
197
|
-
"no-script-url": "error",
|
|
198
|
-
"no-self-assign": "error",
|
|
199
|
-
"no-self-compare": "error",
|
|
200
|
-
"no-sequences": "error",
|
|
201
|
-
"no-setter-return": "error",
|
|
202
|
-
"no-shadow": "error",
|
|
203
|
-
"no-shadow-restricted-names": "error",
|
|
204
|
-
"no-sparse-arrays": "error",
|
|
205
|
-
"no-template-curly-in-string": "error",
|
|
206
|
-
"no-ternary": "error",
|
|
207
|
-
"no-this-before-super": "error",
|
|
208
|
-
"no-throw-literal": "error",
|
|
209
|
-
"no-undef": "error",
|
|
210
|
-
"no-undef-init": "error",
|
|
211
|
-
"no-undefined": "error",
|
|
212
|
-
"no-underscore-dangle": "error",
|
|
213
|
-
"no-unexpected-multiline": "error",
|
|
214
|
-
"no-unmodified-loop-condition": "error",
|
|
215
|
-
"no-unneeded-ternary": "error",
|
|
216
|
-
"no-unreachable": "error",
|
|
217
|
-
"no-unreachable-loop": "error",
|
|
218
|
-
"no-unsafe-finally": "error",
|
|
219
|
-
"no-unsafe-negation": "error",
|
|
220
|
-
"no-unsafe-optional-chaining": "error",
|
|
221
|
-
"no-unused-expressions": "error",
|
|
222
|
-
"no-unused-labels": "error",
|
|
223
|
-
"no-unused-private-class-members": "error",
|
|
224
|
-
"no-unused-vars": "error",
|
|
225
|
-
"no-use-before-define": "error",
|
|
226
|
-
"no-useless-assignment": "error",
|
|
227
|
-
"no-useless-backreference": "error",
|
|
228
|
-
"no-useless-call": "error",
|
|
229
|
-
"no-useless-catch": "error",
|
|
230
|
-
"no-useless-computed-key": "error",
|
|
231
|
-
"no-useless-concat": "error",
|
|
232
|
-
"no-useless-constructor": "error",
|
|
233
|
-
"no-useless-escape": "error",
|
|
234
|
-
"no-useless-rename": "error",
|
|
235
|
-
"no-useless-return": "error",
|
|
236
|
-
"no-var": "error",
|
|
237
|
-
"no-void": "error",
|
|
238
|
-
"no-warning-comments": "error",
|
|
239
|
-
"no-with": "error",
|
|
240
|
-
"object-shorthand": "error",
|
|
241
|
-
"one-var": "error",
|
|
242
|
-
"operator-assignment": "error",
|
|
243
|
-
"prefer-arrow-callback": "error",
|
|
244
|
-
"prefer-const": "error",
|
|
245
|
-
"prefer-destructuring": "error",
|
|
246
|
-
"prefer-exponentiation-operator": "error",
|
|
247
|
-
"prefer-named-capture-group": "error",
|
|
248
|
-
"prefer-numeric-literals": "error",
|
|
249
|
-
"prefer-object-has-own": "error",
|
|
250
|
-
"prefer-object-spread": "error",
|
|
251
|
-
"prefer-promise-reject-errors": "error",
|
|
252
|
-
"prefer-regex-literals": "error",
|
|
253
|
-
"prefer-rest-params": "error",
|
|
254
|
-
"prefer-spread": "error",
|
|
255
|
-
"prefer-template": "error",
|
|
256
|
-
"radix": "error",
|
|
257
|
-
"require-atomic-updates": "error",
|
|
258
|
-
"require-await": "error",
|
|
259
|
-
"require-unicode-regexp": "error",
|
|
260
|
-
"require-yield": "error",
|
|
261
|
-
"sort-imports": "error",
|
|
262
|
-
"sort-keys": "error",
|
|
263
|
-
"sort-vars": "error",
|
|
264
|
-
"strict": "error",
|
|
265
|
-
"symbol-description": "error",
|
|
266
|
-
"unicode-bom": "error",
|
|
267
|
-
"use-isnan": "error",
|
|
268
|
-
"valid-typeof": "error",
|
|
269
|
-
"vars-on-top": "error",
|
|
270
|
-
"yoda": "error"
|
|
271
|
-
}
|
|
272
|
-
});
|
|
273
|
-
}
|
|
274
|
-
});
|
|
275
|
-
|
|
276
|
-
// ../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/configs/eslint-recommended.js
|
|
277
|
-
var require_eslint_recommended = __commonJS({
|
|
278
|
-
"../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/configs/eslint-recommended.js"(exports, module) {
|
|
279
|
-
"use strict";
|
|
280
|
-
module.exports = Object.freeze({
|
|
281
|
-
rules: Object.freeze({
|
|
282
|
-
"constructor-super": "error",
|
|
283
|
-
"for-direction": "error",
|
|
284
|
-
"getter-return": "error",
|
|
285
|
-
"no-async-promise-executor": "error",
|
|
286
|
-
"no-case-declarations": "error",
|
|
287
|
-
"no-class-assign": "error",
|
|
288
|
-
"no-compare-neg-zero": "error",
|
|
289
|
-
"no-cond-assign": "error",
|
|
290
|
-
"no-const-assign": "error",
|
|
291
|
-
"no-constant-binary-expression": "error",
|
|
292
|
-
"no-constant-condition": "error",
|
|
293
|
-
"no-control-regex": "error",
|
|
294
|
-
"no-debugger": "error",
|
|
295
|
-
"no-delete-var": "error",
|
|
296
|
-
"no-dupe-args": "error",
|
|
297
|
-
"no-dupe-class-members": "error",
|
|
298
|
-
"no-dupe-else-if": "error",
|
|
299
|
-
"no-dupe-keys": "error",
|
|
300
|
-
"no-duplicate-case": "error",
|
|
301
|
-
"no-empty": "error",
|
|
302
|
-
"no-empty-character-class": "error",
|
|
303
|
-
"no-empty-pattern": "error",
|
|
304
|
-
"no-empty-static-block": "error",
|
|
305
|
-
"no-ex-assign": "error",
|
|
306
|
-
"no-extra-boolean-cast": "error",
|
|
307
|
-
"no-fallthrough": "error",
|
|
308
|
-
"no-func-assign": "error",
|
|
309
|
-
"no-global-assign": "error",
|
|
310
|
-
"no-import-assign": "error",
|
|
311
|
-
"no-invalid-regexp": "error",
|
|
312
|
-
"no-irregular-whitespace": "error",
|
|
313
|
-
"no-loss-of-precision": "error",
|
|
314
|
-
"no-misleading-character-class": "error",
|
|
315
|
-
"no-new-native-nonconstructor": "error",
|
|
316
|
-
"no-nonoctal-decimal-escape": "error",
|
|
317
|
-
"no-obj-calls": "error",
|
|
318
|
-
"no-octal": "error",
|
|
319
|
-
"no-prototype-builtins": "error",
|
|
320
|
-
"no-redeclare": "error",
|
|
321
|
-
"no-regex-spaces": "error",
|
|
322
|
-
"no-self-assign": "error",
|
|
323
|
-
"no-setter-return": "error",
|
|
324
|
-
"no-shadow-restricted-names": "error",
|
|
325
|
-
"no-sparse-arrays": "error",
|
|
326
|
-
"no-this-before-super": "error",
|
|
327
|
-
"no-undef": "error",
|
|
328
|
-
"no-unexpected-multiline": "error",
|
|
329
|
-
"no-unreachable": "error",
|
|
330
|
-
"no-unsafe-finally": "error",
|
|
331
|
-
"no-unsafe-negation": "error",
|
|
332
|
-
"no-unsafe-optional-chaining": "error",
|
|
333
|
-
"no-unused-labels": "error",
|
|
334
|
-
"no-unused-private-class-members": "error",
|
|
335
|
-
"no-unused-vars": "error",
|
|
336
|
-
"no-useless-backreference": "error",
|
|
337
|
-
"no-useless-catch": "error",
|
|
338
|
-
"no-useless-escape": "error",
|
|
339
|
-
"no-with": "error",
|
|
340
|
-
"require-yield": "error",
|
|
341
|
-
"use-isnan": "error",
|
|
342
|
-
"valid-typeof": "error"
|
|
343
|
-
})
|
|
344
|
-
});
|
|
345
|
-
}
|
|
346
|
-
});
|
|
347
|
-
|
|
348
|
-
// ../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/index.js
|
|
349
|
-
var require_src = __commonJS({
|
|
350
|
-
"../../node_modules/.pnpm/@eslint+js@9.17.0/node_modules/@eslint/js/src/index.js"(exports, module) {
|
|
351
|
-
"use strict";
|
|
352
|
-
var { version } = require_package();
|
|
353
|
-
module.exports = {
|
|
354
|
-
meta: {
|
|
355
|
-
name: "@eslint/js",
|
|
356
|
-
version
|
|
357
|
-
},
|
|
358
|
-
configs: {
|
|
359
|
-
all: require_eslint_all(),
|
|
360
|
-
recommended: require_eslint_recommended()
|
|
361
|
-
}
|
|
362
|
-
};
|
|
363
|
-
}
|
|
364
|
-
});
|
|
365
|
-
|
|
366
1
|
// src/index.ts
|
|
367
2
|
import globals from "globals";
|
|
368
3
|
|
|
369
4
|
// src/libs.ts
|
|
370
|
-
|
|
5
|
+
import { default as default2 } from "@eslint/js";
|
|
371
6
|
import { default as default3 } from "@next/eslint-plugin-next";
|
|
372
7
|
import { default as default4 } from "@typescript-eslint/eslint-plugin";
|
|
373
8
|
import { default as default5 } from "@typescript-eslint/parser";
|
|
374
9
|
import { default as default6 } from "eslint-config-prettier";
|
|
375
|
-
import { default as default7 } from "eslint-plugin-
|
|
376
|
-
import { default as default8 } from "eslint-plugin-
|
|
377
|
-
import { default as default9 } from "eslint-plugin-
|
|
378
|
-
import { default as default10 } from "eslint-plugin-react
|
|
379
|
-
import { default as default11 } from "eslint-plugin-
|
|
380
|
-
import { default as default12 } from "eslint-plugin-
|
|
381
|
-
import { default as default13 } from "eslint-plugin-
|
|
382
|
-
import { default as default14 } from "
|
|
383
|
-
import { default as default15 } from "
|
|
384
|
-
import { default as default16 } from "
|
|
10
|
+
import { default as default7 } from "eslint-plugin-astro";
|
|
11
|
+
import { default as default8 } from "eslint-plugin-jsonc";
|
|
12
|
+
import { default as default9 } from "eslint-plugin-perfectionist";
|
|
13
|
+
import { default as default10 } from "eslint-plugin-react";
|
|
14
|
+
import { default as default11 } from "eslint-plugin-react-hooks";
|
|
15
|
+
import { default as default12 } from "eslint-plugin-unused-imports";
|
|
16
|
+
import { default as default13 } from "eslint-plugin-vue";
|
|
17
|
+
import { default as default14 } from "eslint-plugin-yml";
|
|
18
|
+
import { default as default15 } from "jsonc-eslint-parser";
|
|
19
|
+
import { default as default16 } from "vue-eslint-parser";
|
|
20
|
+
import { default as default17 } from "yaml-eslint-parser";
|
|
385
21
|
|
|
386
22
|
// src/index.ts
|
|
387
23
|
function config(params = {}) {
|
|
@@ -415,7 +51,7 @@ function config(params = {}) {
|
|
|
415
51
|
};
|
|
416
52
|
const javascriptConfig = [
|
|
417
53
|
// Default
|
|
418
|
-
|
|
54
|
+
default2.configs.recommended,
|
|
419
55
|
{
|
|
420
56
|
files: ["**/*.js", "**/*.mjs"],
|
|
421
57
|
languageOptions: {
|
|
@@ -431,7 +67,7 @@ function config(params = {}) {
|
|
|
431
67
|
},
|
|
432
68
|
name: "lqbach/javascript",
|
|
433
69
|
plugins: {
|
|
434
|
-
"unused-imports":
|
|
70
|
+
"unused-imports": default12
|
|
435
71
|
},
|
|
436
72
|
rules: {
|
|
437
73
|
"unused-imports/no-unused-imports": "error",
|
|
@@ -478,10 +114,10 @@ function config(params = {}) {
|
|
|
478
114
|
},
|
|
479
115
|
name: "lqbach/react",
|
|
480
116
|
plugins: {
|
|
481
|
-
react:
|
|
117
|
+
react: default10
|
|
482
118
|
},
|
|
483
119
|
rules: {
|
|
484
|
-
...
|
|
120
|
+
...default10.configs.flat?.recommended.rules,
|
|
485
121
|
// ignore `css` for emotion usage
|
|
486
122
|
"react/no-unknown-property": ["error", { ignore: ["css"] }]
|
|
487
123
|
}
|
|
@@ -490,16 +126,17 @@ function config(params = {}) {
|
|
|
490
126
|
files: ["**/*.{js,jsx,mjs,cjs,ts,tsx}"],
|
|
491
127
|
name: "lqbach/react-hooks",
|
|
492
128
|
plugins: {
|
|
493
|
-
"react-hooks":
|
|
129
|
+
"react-hooks": default11
|
|
494
130
|
},
|
|
495
131
|
rules: {
|
|
496
|
-
|
|
132
|
+
"react-hooks/exhaustive-deps": "warn",
|
|
133
|
+
"react-hooks/rules-of-hooks": "error"
|
|
497
134
|
}
|
|
498
135
|
} : {};
|
|
499
136
|
const vueConfig = params.vue ?? false ? {
|
|
500
137
|
files: ["**/*.vue"],
|
|
501
138
|
languageOptions: {
|
|
502
|
-
parser:
|
|
139
|
+
parser: default16,
|
|
503
140
|
parserOptions: {
|
|
504
141
|
parser: params.typescript ? default5 : null,
|
|
505
142
|
sourceType: "module"
|
|
@@ -507,13 +144,13 @@ function config(params = {}) {
|
|
|
507
144
|
},
|
|
508
145
|
name: "lqbach/vue",
|
|
509
146
|
plugins: {
|
|
510
|
-
vue:
|
|
147
|
+
vue: default13
|
|
511
148
|
},
|
|
512
|
-
processor:
|
|
149
|
+
processor: default13.processors[".vue"],
|
|
513
150
|
rules: {
|
|
514
|
-
...
|
|
515
|
-
...
|
|
516
|
-
...
|
|
151
|
+
...default13.configs["base"].rules,
|
|
152
|
+
...default13.configs["essential"].rules,
|
|
153
|
+
...default13.configs["strongly-recommended"].rules
|
|
517
154
|
}
|
|
518
155
|
} : {};
|
|
519
156
|
const nextConfig = params.next ?? false ? {
|
|
@@ -537,35 +174,35 @@ function config(params = {}) {
|
|
|
537
174
|
const yamlConfig = params.yaml ?? true ? {
|
|
538
175
|
files: ["**/*.{yaml, yml}"],
|
|
539
176
|
languageOptions: {
|
|
540
|
-
parser:
|
|
177
|
+
parser: default17
|
|
541
178
|
},
|
|
542
179
|
name: "lqbach/yaml",
|
|
543
180
|
plugins: {
|
|
544
|
-
yml:
|
|
181
|
+
yml: default14
|
|
545
182
|
},
|
|
546
183
|
rules: {
|
|
547
|
-
...
|
|
548
|
-
...
|
|
184
|
+
...default14.configs["standard"].rules,
|
|
185
|
+
...default14.configs["prettier"].rules
|
|
549
186
|
}
|
|
550
187
|
} : {};
|
|
551
188
|
const jsoncConfig = params.json ?? true ? [
|
|
552
189
|
{
|
|
553
190
|
name: "lqbach/jsonc-plugin",
|
|
554
191
|
plugins: {
|
|
555
|
-
jsonc:
|
|
192
|
+
jsonc: default8
|
|
556
193
|
}
|
|
557
194
|
},
|
|
558
195
|
{
|
|
559
196
|
files: ["**/*.{json, json5, jsonc}"],
|
|
560
197
|
languageOptions: {
|
|
561
|
-
parser:
|
|
198
|
+
parser: default15
|
|
562
199
|
},
|
|
563
200
|
name: "lqbach/json",
|
|
564
201
|
rules: {
|
|
565
|
-
...
|
|
566
|
-
...
|
|
567
|
-
...
|
|
568
|
-
...
|
|
202
|
+
...default8.configs["recommended-with-json"].rules,
|
|
203
|
+
...default8.configs["recommended-with-jsonc"].rules,
|
|
204
|
+
...default8.configs["recommended-with-json5"].rules,
|
|
205
|
+
...default8.configs["prettier"].rules,
|
|
569
206
|
"jsonc/no-comments": "off"
|
|
570
207
|
}
|
|
571
208
|
}
|
|
@@ -573,10 +210,34 @@ function config(params = {}) {
|
|
|
573
210
|
const perfectionistConfig = params.perfectionist ?? true ? {
|
|
574
211
|
name: "lqbach/perfectionist",
|
|
575
212
|
plugins: {
|
|
576
|
-
perfectionist:
|
|
213
|
+
perfectionist: default9
|
|
214
|
+
},
|
|
215
|
+
rules: {
|
|
216
|
+
...default9.configs["recommended-natural"].rules
|
|
217
|
+
}
|
|
218
|
+
} : {};
|
|
219
|
+
const astroConfig = params.astro ?? false ? {
|
|
220
|
+
files: ["**/*.astro"],
|
|
221
|
+
languageOptions: {
|
|
222
|
+
parserOptions: params.typescript ? {
|
|
223
|
+
extraFileExtensions: [".astro"],
|
|
224
|
+
parser: default5,
|
|
225
|
+
sourceType: "module"
|
|
226
|
+
} : {}
|
|
227
|
+
},
|
|
228
|
+
name: "lqbach/astro",
|
|
229
|
+
plugins: {
|
|
230
|
+
astro: default7
|
|
577
231
|
},
|
|
578
232
|
rules: {
|
|
579
|
-
|
|
233
|
+
"astro/missing-client-only-directive-value": "error",
|
|
234
|
+
"astro/no-conflict-set-directives": "error",
|
|
235
|
+
"astro/no-deprecated-astro-canonicalurl": "error",
|
|
236
|
+
"astro/no-deprecated-astro-fetchcontent": "error",
|
|
237
|
+
"astro/no-deprecated-astro-resolve": "error",
|
|
238
|
+
"astro/no-deprecated-getentrybyslug": "error",
|
|
239
|
+
"astro/no-unused-define-vars-in-style": "error",
|
|
240
|
+
"astro/valid-compile": "error"
|
|
580
241
|
}
|
|
581
242
|
} : {};
|
|
582
243
|
const prettierConfig = default6;
|
|
@@ -588,6 +249,7 @@ function config(params = {}) {
|
|
|
588
249
|
config2.push(reactHooksConfig);
|
|
589
250
|
config2.push(vueConfig);
|
|
590
251
|
config2.push(nextConfig);
|
|
252
|
+
config2.push(astroConfig);
|
|
591
253
|
config2.push(yamlConfig);
|
|
592
254
|
config2.push(...jsoncConfig);
|
|
593
255
|
config2.push(perfectionistConfig);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lqbach/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.8.0",
|
|
5
5
|
"description": "lqbach's Personal Eslint Config",
|
|
6
6
|
"private": false,
|
|
7
7
|
"license": "MIT",
|
|
@@ -18,20 +18,22 @@
|
|
|
18
18
|
"main": "./dist/index.js",
|
|
19
19
|
"types": "./dist/index.d.ts",
|
|
20
20
|
"dependencies": {
|
|
21
|
+
"@eslint/js": "^9.11.0",
|
|
21
22
|
"@next/eslint-plugin-next": "^15.1.2",
|
|
22
23
|
"@typescript-eslint/eslint-plugin": "^8.18.0",
|
|
23
24
|
"@typescript-eslint/parser": "^8.18.0",
|
|
24
|
-
"eslint-config-prettier": "^
|
|
25
|
+
"eslint-config-prettier": "^10.1.8",
|
|
26
|
+
"eslint-plugin-astro": "^1.3.1",
|
|
25
27
|
"eslint-plugin-jsonc": "^2.16.0",
|
|
26
|
-
"eslint-plugin-perfectionist": "^
|
|
28
|
+
"eslint-plugin-perfectionist": "^4.15.0",
|
|
27
29
|
"eslint-plugin-react": "^7.37.1",
|
|
28
|
-
"eslint-plugin-react-hooks": "^
|
|
30
|
+
"eslint-plugin-react-hooks": "^6.1.1",
|
|
29
31
|
"eslint-plugin-unused-imports": "^4.1.4",
|
|
30
|
-
"eslint-plugin-vue": "^
|
|
32
|
+
"eslint-plugin-vue": "^10.5.0",
|
|
31
33
|
"eslint-plugin-yml": "^1.14.0",
|
|
32
|
-
"globals": "^
|
|
34
|
+
"globals": "^16.0.0",
|
|
33
35
|
"jsonc-eslint-parser": "^2.4.0",
|
|
34
|
-
"vue-eslint-parser": "^
|
|
36
|
+
"vue-eslint-parser": "^10.2.0",
|
|
35
37
|
"yaml-eslint-parser": "^1.2.2"
|
|
36
38
|
},
|
|
37
39
|
"peerDependencies": {
|
package/src/index.ts
CHANGED
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
parserTypeScript,
|
|
8
8
|
parserVue,
|
|
9
9
|
parserYaml,
|
|
10
|
+
pluginAstro,
|
|
10
11
|
pluginJsonc,
|
|
11
12
|
pluginNext,
|
|
12
13
|
pluginPerfectionist,
|
|
@@ -150,7 +151,8 @@ export default function config(params: ConfigParams = {}): Array<ConfigObject> {
|
|
|
150
151
|
"react-hooks": pluginReactHooks,
|
|
151
152
|
},
|
|
152
153
|
rules: {
|
|
153
|
-
|
|
154
|
+
"react-hooks/exhaustive-deps": "warn",
|
|
155
|
+
"react-hooks/rules-of-hooks": "error",
|
|
154
156
|
},
|
|
155
157
|
}
|
|
156
158
|
: {}
|
|
@@ -174,8 +176,8 @@ export default function config(params: ConfigParams = {}): Array<ConfigObject> {
|
|
|
174
176
|
processor: pluginVue.processors[".vue"],
|
|
175
177
|
rules: {
|
|
176
178
|
...pluginVue.configs["base"].rules,
|
|
177
|
-
...pluginVue.configs["
|
|
178
|
-
...pluginVue.configs["
|
|
179
|
+
...pluginVue.configs["essential"].rules,
|
|
180
|
+
...pluginVue.configs["strongly-recommended"].rules,
|
|
179
181
|
},
|
|
180
182
|
}
|
|
181
183
|
: {}
|
|
@@ -264,6 +266,37 @@ export default function config(params: ConfigParams = {}): Array<ConfigObject> {
|
|
|
264
266
|
}
|
|
265
267
|
: {}
|
|
266
268
|
|
|
269
|
+
// Astro Config
|
|
270
|
+
const astroConfig: ConfigObject =
|
|
271
|
+
(params.astro ?? false)
|
|
272
|
+
? {
|
|
273
|
+
files: ["**/*.astro"],
|
|
274
|
+
languageOptions: {
|
|
275
|
+
parserOptions: params.typescript
|
|
276
|
+
? {
|
|
277
|
+
extraFileExtensions: [".astro"],
|
|
278
|
+
parser: parserTypeScript,
|
|
279
|
+
sourceType: "module",
|
|
280
|
+
}
|
|
281
|
+
: {},
|
|
282
|
+
},
|
|
283
|
+
name: "lqbach/astro",
|
|
284
|
+
plugins: {
|
|
285
|
+
astro: pluginAstro,
|
|
286
|
+
},
|
|
287
|
+
rules: {
|
|
288
|
+
"astro/missing-client-only-directive-value": "error",
|
|
289
|
+
"astro/no-conflict-set-directives": "error",
|
|
290
|
+
"astro/no-deprecated-astro-canonicalurl": "error",
|
|
291
|
+
"astro/no-deprecated-astro-fetchcontent": "error",
|
|
292
|
+
"astro/no-deprecated-astro-resolve": "error",
|
|
293
|
+
"astro/no-deprecated-getentrybyslug": "error",
|
|
294
|
+
"astro/no-unused-define-vars-in-style": "error",
|
|
295
|
+
"astro/valid-compile": "error",
|
|
296
|
+
},
|
|
297
|
+
}
|
|
298
|
+
: {}
|
|
299
|
+
|
|
267
300
|
const prettierConfig: ConfigObject = configPrettier
|
|
268
301
|
|
|
269
302
|
let config: Array<ConfigObject> = []
|
|
@@ -274,6 +307,7 @@ export default function config(params: ConfigParams = {}): Array<ConfigObject> {
|
|
|
274
307
|
config.push(reactHooksConfig)
|
|
275
308
|
config.push(vueConfig)
|
|
276
309
|
config.push(nextConfig)
|
|
310
|
+
config.push(astroConfig)
|
|
277
311
|
config.push(yamlConfig)
|
|
278
312
|
config.push(...jsoncConfig)
|
|
279
313
|
config.push(perfectionistConfig)
|