@luxass/eslint-config 4.2.5 → 4.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -54
- package/dist/index.cjs +166 -479
- package/dist/index.d.cts +733 -12
- package/dist/index.d.ts +733 -12
- package/dist/{configs/index.cjs → index.js} +300 -542
- package/package.json +51 -86
- package/dist/chunk-4YBQZLPS.mjs +0 -68
- package/dist/chunk-4YT54JFZ.mjs +0 -48
- package/dist/chunk-5NK24IKQ.mjs +0 -26
- package/dist/chunk-6T7MXPCT.mjs +0 -17
- package/dist/chunk-7ODEIBF5.mjs +0 -144
- package/dist/chunk-AQRBQAKE.mjs +0 -48
- package/dist/chunk-DAJA5AV3.mjs +0 -29
- package/dist/chunk-DCOLHWHC.mjs +0 -269
- package/dist/chunk-DVQQVCGF.mjs +0 -45
- package/dist/chunk-EHWA727G.mjs +0 -69
- package/dist/chunk-FNOIGW47.mjs +0 -104
- package/dist/chunk-KOXCJL3C.mjs +0 -109
- package/dist/chunk-MMSZW2UW.mjs +0 -92
- package/dist/chunk-MT5P5EKH.mjs +0 -207
- package/dist/chunk-O2BXTQHK.mjs +0 -117
- package/dist/chunk-QDSV5ONX.mjs +0 -93
- package/dist/chunk-QMGT2Z63.mjs +0 -57
- package/dist/chunk-RVSUTDCE.mjs +0 -57
- package/dist/chunk-SPD4DGYN.mjs +0 -274
- package/dist/chunk-UITQW3RA.mjs +0 -293
- package/dist/chunk-V57HXOSW.mjs +0 -81
- package/dist/chunk-WDSV2EFG.mjs +0 -7
- package/dist/chunk-WOBGA3K2.mjs +0 -63
- package/dist/chunk-WSQOWO67.mjs +0 -16
- package/dist/chunk-XBASVDU6.mjs +0 -215
- package/dist/chunk-XPKGXA67.mjs +0 -183
- package/dist/chunk-YGZJUKJC.mjs +0 -0
- package/dist/chunk-YO3IYQ2L.mjs +0 -220
- package/dist/configs/astro.cjs +0 -179
- package/dist/configs/astro.d.cts +0 -11
- package/dist/configs/astro.d.ts +0 -11
- package/dist/configs/astro.mjs +0 -8
- package/dist/configs/comments.cjs +0 -63
- package/dist/configs/comments.d.cts +0 -15
- package/dist/configs/comments.d.ts +0 -15
- package/dist/configs/comments.mjs +0 -6
- package/dist/configs/formatters.cjs +0 -274
- package/dist/configs/formatters.d.cts +0 -11
- package/dist/configs/formatters.d.ts +0 -11
- package/dist/configs/formatters.mjs +0 -9
- package/dist/configs/ignores.cjs +0 -96
- package/dist/configs/ignores.d.cts +0 -15
- package/dist/configs/ignores.d.ts +0 -15
- package/dist/configs/ignores.mjs +0 -7
- package/dist/configs/imports.cjs +0 -104
- package/dist/configs/imports.d.cts +0 -23
- package/dist/configs/imports.d.ts +0 -23
- package/dist/configs/imports.mjs +0 -7
- package/dist/configs/index.d.cts +0 -20
- package/dist/configs/index.d.ts +0 -20
- package/dist/configs/index.mjs +0 -104
- package/dist/configs/javascript.cjs +0 -324
- package/dist/configs/javascript.d.cts +0 -11
- package/dist/configs/javascript.d.ts +0 -11
- package/dist/configs/javascript.mjs +0 -7
- package/dist/configs/jsdoc.cjs +0 -85
- package/dist/configs/jsdoc.d.cts +0 -27
- package/dist/configs/jsdoc.d.ts +0 -27
- package/dist/configs/jsdoc.mjs +0 -7
- package/dist/configs/jsonc.cjs +0 -155
- package/dist/configs/jsonc.d.cts +0 -11
- package/dist/configs/jsonc.d.ts +0 -11
- package/dist/configs/jsonc.mjs +0 -8
- package/dist/configs/markdown.cjs +0 -164
- package/dist/configs/markdown.d.cts +0 -35
- package/dist/configs/markdown.d.ts +0 -35
- package/dist/configs/markdown.mjs +0 -8
- package/dist/configs/nextjs.cjs +0 -180
- package/dist/configs/nextjs.d.cts +0 -11
- package/dist/configs/nextjs.d.ts +0 -11
- package/dist/configs/nextjs.mjs +0 -8
- package/dist/configs/node.cjs +0 -60
- package/dist/configs/node.d.cts +0 -15
- package/dist/configs/node.d.ts +0 -15
- package/dist/configs/node.mjs +0 -6
- package/dist/configs/perfectionist.cjs +0 -51
- package/dist/configs/perfectionist.d.cts +0 -20
- package/dist/configs/perfectionist.d.ts +0 -20
- package/dist/configs/perfectionist.mjs +0 -6
- package/dist/configs/react.cjs +0 -379
- package/dist/configs/react.d.cts +0 -11
- package/dist/configs/react.d.ts +0 -11
- package/dist/configs/react.mjs +0 -8
- package/dist/configs/solid.cjs +0 -360
- package/dist/configs/solid.d.cts +0 -11
- package/dist/configs/solid.d.ts +0 -11
- package/dist/configs/solid.mjs +0 -8
- package/dist/configs/sort.cjs +0 -240
- package/dist/configs/sort.d.cts +0 -26
- package/dist/configs/sort.d.ts +0 -26
- package/dist/configs/sort.mjs +0 -8
- package/dist/configs/stylistic.cjs +0 -98
- package/dist/configs/stylistic.d.cts +0 -11
- package/dist/configs/stylistic.d.ts +0 -11
- package/dist/configs/stylistic.mjs +0 -9
- package/dist/configs/tailwindcss.cjs +0 -148
- package/dist/configs/tailwindcss.d.cts +0 -11
- package/dist/configs/tailwindcss.d.ts +0 -11
- package/dist/configs/tailwindcss.mjs +0 -8
- package/dist/configs/test.cjs +0 -206
- package/dist/configs/test.d.cts +0 -11
- package/dist/configs/test.d.ts +0 -11
- package/dist/configs/test.mjs +0 -9
- package/dist/configs/toml.cjs +0 -131
- package/dist/configs/toml.d.cts +0 -11
- package/dist/configs/toml.d.ts +0 -11
- package/dist/configs/toml.mjs +0 -8
- package/dist/configs/typescript.cjs +0 -291
- package/dist/configs/typescript.d.cts +0 -11
- package/dist/configs/typescript.d.ts +0 -11
- package/dist/configs/typescript.mjs +0 -8
- package/dist/configs/unicorn.cjs +0 -91
- package/dist/configs/unicorn.d.cts +0 -15
- package/dist/configs/unicorn.d.ts +0 -15
- package/dist/configs/unicorn.mjs +0 -6
- package/dist/configs/unocss.cjs +0 -133
- package/dist/configs/unocss.d.cts +0 -11
- package/dist/configs/unocss.d.ts +0 -11
- package/dist/configs/unocss.mjs +0 -8
- package/dist/configs/vue.cjs +0 -293
- package/dist/configs/vue.d.cts +0 -11
- package/dist/configs/vue.d.ts +0 -11
- package/dist/configs/vue.mjs +0 -8
- package/dist/configs/yaml.cjs +0 -143
- package/dist/configs/yaml.d.cts +0 -11
- package/dist/configs/yaml.d.ts +0 -11
- package/dist/configs/yaml.mjs +0 -8
- package/dist/custom-rules/utils.cjs +0 -31
- package/dist/custom-rules/utils.d.cts +0 -6
- package/dist/custom-rules/utils.d.ts +0 -6
- package/dist/custom-rules/utils.mjs +0 -6
- package/dist/globs.cjs +0 -158
- package/dist/globs.d.cts +0 -28
- package/dist/globs.d.ts +0 -28
- package/dist/globs.mjs +0 -56
- package/dist/index.mjs +0 -284
- package/dist/types-HqEzZfQU.d.cts +0 -668
- package/dist/types-HqEzZfQU.d.ts +0 -668
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
|
|
20
20
|
## 📦 Install
|
|
21
21
|
|
|
22
|
-
```bash
|
|
22
|
+
```bash copy
|
|
23
23
|
npm install -D eslint @luxass/eslint-config
|
|
24
24
|
```
|
|
25
25
|
|
|
@@ -29,28 +29,28 @@ With [`"type": "module"`](https://nodejs.org/api/packages.html#type) in `package
|
|
|
29
29
|
|
|
30
30
|
```js
|
|
31
31
|
// eslint.config.js
|
|
32
|
-
import luxass from "@luxass/eslint-config"
|
|
32
|
+
import luxass from "@luxass/eslint-config";
|
|
33
33
|
|
|
34
|
-
export default luxass()
|
|
34
|
+
export default luxass();
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
With CJS:
|
|
38
38
|
|
|
39
39
|
```js
|
|
40
40
|
// eslint.config.js
|
|
41
|
-
const luxass = require("@luxass/eslint-config").default
|
|
41
|
+
const luxass = require("@luxass/eslint-config").default;
|
|
42
42
|
|
|
43
|
-
module.exports = luxass()
|
|
43
|
+
module.exports = luxass();
|
|
44
44
|
```
|
|
45
45
|
|
|
46
46
|
Combined with legacy config:
|
|
47
47
|
|
|
48
48
|
```js
|
|
49
49
|
// eslint.config.js
|
|
50
|
-
const luxass = require("@luxass/eslint-config").default
|
|
51
|
-
const { FlatCompat } = require("@eslint/eslintrc")
|
|
50
|
+
const luxass = require("@luxass/eslint-config").default;
|
|
51
|
+
const { FlatCompat } = require("@eslint/eslintrc");
|
|
52
52
|
|
|
53
|
-
const compat = new FlatCompat()
|
|
53
|
+
const compat = new FlatCompat();
|
|
54
54
|
|
|
55
55
|
module.exports = luxass(
|
|
56
56
|
{
|
|
@@ -66,7 +66,7 @@ module.exports = luxass(
|
|
|
66
66
|
})
|
|
67
67
|
|
|
68
68
|
// Other flat configs...
|
|
69
|
-
)
|
|
69
|
+
);
|
|
70
70
|
```
|
|
71
71
|
|
|
72
72
|
> Note that `.eslintignore` no longer works in Flat config, see [customization](#customization) for more details.
|
|
@@ -129,16 +129,16 @@ Normally you would only need to import the `luxass` preset:
|
|
|
129
129
|
|
|
130
130
|
```js
|
|
131
131
|
// eslint.config.js
|
|
132
|
-
import luxass from "@luxass/eslint-config"
|
|
132
|
+
import luxass from "@luxass/eslint-config";
|
|
133
133
|
|
|
134
|
-
export default luxass()
|
|
134
|
+
export default luxass();
|
|
135
135
|
```
|
|
136
136
|
|
|
137
137
|
you can also configure each `config` individually:
|
|
138
138
|
|
|
139
139
|
```js
|
|
140
140
|
// eslint.config.js
|
|
141
|
-
import luxass from "@luxass/eslint-config"
|
|
141
|
+
import luxass from "@luxass/eslint-config";
|
|
142
142
|
|
|
143
143
|
export default luxass({
|
|
144
144
|
stylistic: true,
|
|
@@ -152,14 +152,14 @@ export default luxass({
|
|
|
152
152
|
ignores: [
|
|
153
153
|
"**/fixtures"
|
|
154
154
|
]
|
|
155
|
-
})
|
|
155
|
+
});
|
|
156
156
|
```
|
|
157
157
|
|
|
158
158
|
The `luxass` function accepts an arbitrary number of `flat configs` overrides:
|
|
159
159
|
|
|
160
160
|
```js
|
|
161
161
|
// eslint.config.js
|
|
162
|
-
import luxass from "@luxass/eslint-config"
|
|
162
|
+
import luxass from "@luxass/eslint-config";
|
|
163
163
|
|
|
164
164
|
export default luxass({
|
|
165
165
|
// configuration points for my config
|
|
@@ -167,7 +167,7 @@ export default luxass({
|
|
|
167
167
|
rules: {}
|
|
168
168
|
}, {
|
|
169
169
|
rules: {}
|
|
170
|
-
})
|
|
170
|
+
});
|
|
171
171
|
```
|
|
172
172
|
|
|
173
173
|
<details>
|
|
@@ -178,6 +178,7 @@ We don't recommend using this style in general usages, as there are shared optio
|
|
|
178
178
|
```js
|
|
179
179
|
// eslint.config.js
|
|
180
180
|
import {
|
|
181
|
+
combine,
|
|
181
182
|
comments,
|
|
182
183
|
ignores,
|
|
183
184
|
imports,
|
|
@@ -192,10 +193,8 @@ import {
|
|
|
192
193
|
typescript,
|
|
193
194
|
unicorn,
|
|
194
195
|
vue,
|
|
195
|
-
yaml
|
|
196
|
-
} from "@luxass/eslint-config
|
|
197
|
-
|
|
198
|
-
import { combine } from "@luxass/eslint-config"
|
|
196
|
+
yaml
|
|
197
|
+
} from "@luxass/eslint-config";
|
|
199
198
|
|
|
200
199
|
export default combine(
|
|
201
200
|
ignores(),
|
|
@@ -211,7 +210,7 @@ export default combine(
|
|
|
211
210
|
jsonc(),
|
|
212
211
|
yaml(),
|
|
213
212
|
markdown(),
|
|
214
|
-
)
|
|
213
|
+
);
|
|
215
214
|
```
|
|
216
215
|
|
|
217
216
|
</details>
|
|
@@ -247,7 +246,7 @@ Certain rules would only be enabled in specific files, for example, `ts/*` rules
|
|
|
247
246
|
|
|
248
247
|
```js
|
|
249
248
|
// eslint.config.js
|
|
250
|
-
import luxass from "@luxass/eslint-config"
|
|
249
|
+
import luxass from "@luxass/eslint-config";
|
|
251
250
|
|
|
252
251
|
export default luxass(
|
|
253
252
|
{ vue: true, typescript: true },
|
|
@@ -264,14 +263,14 @@ export default luxass(
|
|
|
264
263
|
"style/semi": ["error", "never"],
|
|
265
264
|
},
|
|
266
265
|
}
|
|
267
|
-
)
|
|
266
|
+
);
|
|
268
267
|
```
|
|
269
268
|
|
|
270
269
|
We also provided a `overrides` options to make it easier:
|
|
271
270
|
|
|
272
271
|
```js
|
|
273
272
|
// eslint.config.js
|
|
274
|
-
import luxass from "@luxass/eslint-config"
|
|
273
|
+
import luxass from "@luxass/eslint-config";
|
|
275
274
|
|
|
276
275
|
export default luxass({
|
|
277
276
|
overrides: {
|
|
@@ -284,7 +283,7 @@ export default luxass({
|
|
|
284
283
|
yaml: {},
|
|
285
284
|
// ...
|
|
286
285
|
}
|
|
287
|
-
})
|
|
286
|
+
});
|
|
288
287
|
```
|
|
289
288
|
|
|
290
289
|
### Optional Configs
|
|
@@ -300,7 +299,7 @@ Use external formatters to format files that ESLint cannot handle yet (`.css`, `
|
|
|
300
299
|
|
|
301
300
|
```js
|
|
302
301
|
// eslint.config.js
|
|
303
|
-
import luxass from "@luxass/eslint-config"
|
|
302
|
+
import luxass from "@luxass/eslint-config";
|
|
304
303
|
|
|
305
304
|
export default luxass({
|
|
306
305
|
formatters: {
|
|
@@ -326,7 +325,7 @@ export default luxass({
|
|
|
326
325
|
*/
|
|
327
326
|
markdown: "prettier"
|
|
328
327
|
}
|
|
329
|
-
})
|
|
328
|
+
});
|
|
330
329
|
```
|
|
331
330
|
|
|
332
331
|
Running `npx eslint` should prompt you to install the required dependencies, otherwise, you can install them manually:
|
|
@@ -341,11 +340,11 @@ To enable React support, need to explicitly turn it on:
|
|
|
341
340
|
|
|
342
341
|
```js
|
|
343
342
|
// eslint.config.js
|
|
344
|
-
import luxass from "@luxass/eslint-config"
|
|
343
|
+
import luxass from "@luxass/eslint-config";
|
|
345
344
|
|
|
346
345
|
export default luxass({
|
|
347
346
|
react: true,
|
|
348
|
-
})
|
|
347
|
+
});
|
|
349
348
|
```
|
|
350
349
|
|
|
351
350
|
Running `npx eslint` should prompt you to install the required dependencies, otherwise, you can install them manually:
|
|
@@ -362,11 +361,11 @@ Next.JS also enables React support.
|
|
|
362
361
|
|
|
363
362
|
```js
|
|
364
363
|
// eslint.config.js
|
|
365
|
-
import luxass from "@luxass/eslint-config"
|
|
364
|
+
import luxass from "@luxass/eslint-config";
|
|
366
365
|
|
|
367
366
|
export default luxass({
|
|
368
367
|
nextjs: true,
|
|
369
|
-
})
|
|
368
|
+
});
|
|
370
369
|
```
|
|
371
370
|
|
|
372
371
|
Running `npx eslint` should prompt you to install the required dependencies, otherwise, you can install them manually:
|
|
@@ -381,11 +380,11 @@ To enable UnoCSS support, need to explicitly turn it on:
|
|
|
381
380
|
|
|
382
381
|
```js
|
|
383
382
|
// eslint.config.js
|
|
384
|
-
import luxass from "@luxass/eslint-config"
|
|
383
|
+
import luxass from "@luxass/eslint-config";
|
|
385
384
|
|
|
386
385
|
export default luxass({
|
|
387
386
|
unocss: true,
|
|
388
|
-
})
|
|
387
|
+
});
|
|
389
388
|
```
|
|
390
389
|
|
|
391
390
|
Running `npx eslint` should prompt you to install the required dependencies, otherwise, you can install them manually:
|
|
@@ -400,11 +399,11 @@ To enable TailwindCSS support, need to explicitly turn it on:
|
|
|
400
399
|
|
|
401
400
|
```js
|
|
402
401
|
// eslint.config.js
|
|
403
|
-
import luxass from "@luxass/eslint-config"
|
|
402
|
+
import luxass from "@luxass/eslint-config";
|
|
404
403
|
|
|
405
404
|
export default luxass({
|
|
406
405
|
tailwindcss: true,
|
|
407
|
-
})
|
|
406
|
+
});
|
|
408
407
|
```
|
|
409
408
|
|
|
410
409
|
Running `npx eslint` should prompt you to install the required dependencies, otherwise, you can install them manually:
|
|
@@ -417,37 +416,19 @@ npm i -D eslint-plugin-tailwindcss
|
|
|
417
416
|
|
|
418
417
|
This config also provides some optional plugins/rules for extended usages.
|
|
419
418
|
|
|
420
|
-
#### `perfectionist` (sorting)
|
|
421
|
-
|
|
422
|
-
This plugin [`eslint-plugin-perfectionist`](https://github.com/azat-io/eslint-plugin-perfectionist) allows you to sorted object keys, imports, etc, with auto-fix.
|
|
423
|
-
|
|
424
|
-
The plugin is installed but no rules are enabled by default.
|
|
425
|
-
|
|
426
|
-
It's recommended to opt-in on each file individually using [configuration comments](https://eslint.org/docs/latest/use/configure/rules#using-configuration-comments-1).
|
|
427
|
-
|
|
428
|
-
```js
|
|
429
|
-
/* eslint perfectionist/sort-objects: "error" */
|
|
430
|
-
const objectWantedToSort = {
|
|
431
|
-
a: 2,
|
|
432
|
-
b: 1,
|
|
433
|
-
c: 3,
|
|
434
|
-
}
|
|
435
|
-
/* eslint perfectionist/sort-objects: "off" */
|
|
436
|
-
```
|
|
437
|
-
|
|
438
419
|
### Type Aware Rules
|
|
439
420
|
|
|
440
421
|
You can optionally enable the [type aware rules](https://typescript-eslint.io/linting/typed-linting/) by passing the options object to the `typescript` config:
|
|
441
422
|
|
|
442
423
|
```js
|
|
443
424
|
// eslint.config.js
|
|
444
|
-
import luxass from "@luxass/eslint-config"
|
|
425
|
+
import luxass from "@luxass/eslint-config";
|
|
445
426
|
|
|
446
427
|
export default luxass({
|
|
447
428
|
typescript: {
|
|
448
429
|
tsconfigPath: "tsconfig.json",
|
|
449
430
|
},
|
|
450
|
-
})
|
|
431
|
+
});
|
|
451
432
|
```
|
|
452
433
|
|
|
453
434
|
## Versioning Policy
|