@fabdeh/eslint-config 0.13.1 → 0.13.2
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.d.mts +2 -1
- package/dist/index.mjs +108 -99
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -19302,7 +19302,8 @@ interface IsInEditorOptions {
|
|
|
19302
19302
|
*/
|
|
19303
19303
|
interface UnicornOptions {
|
|
19304
19304
|
/**
|
|
19305
|
-
* If set to `true`, enables all recommended settings from unicorn plugin
|
|
19305
|
+
* If set to `true`, enables all recommended settings from unicorn plugin, on top of (not instead of)
|
|
19306
|
+
* the curated rule set, so no curated rule is downgraded by the plugin's own recommended set.
|
|
19306
19307
|
*
|
|
19307
19308
|
* @default false
|
|
19308
19309
|
*/
|
package/dist/index.mjs
CHANGED
|
@@ -30,10 +30,10 @@ const CONFIG_PRESET_FULL_ON = {
|
|
|
30
30
|
pnpm: true,
|
|
31
31
|
regexp: true,
|
|
32
32
|
stylistic: { experimental: true },
|
|
33
|
-
tailwindcss: true,
|
|
33
|
+
tailwindcss: { enableAllRules: true },
|
|
34
34
|
toml: true,
|
|
35
35
|
typescript: { enableErasableSyntaxOnly: true },
|
|
36
|
-
unicorn: true,
|
|
36
|
+
unicorn: { allRecommended: true },
|
|
37
37
|
vitest: true,
|
|
38
38
|
yaml: true
|
|
39
39
|
};
|
|
@@ -2220,6 +2220,108 @@ async function typescript(options = {}, isWorkspaceProject = false) {
|
|
|
2220
2220
|
//#endregion
|
|
2221
2221
|
//#region src/configs/unicorn.ts
|
|
2222
2222
|
/**
|
|
2223
|
+
* The curated rule set of `eslint-plugin-unicorn`, including the project's own rule options
|
|
2224
|
+
* (such as the upper-case markdown exception for `unicorn/filename-case`). These stay in force even
|
|
2225
|
+
* when the full recommended set is enabled, so a stricter setting never silently downgrades a rule.
|
|
2226
|
+
*/
|
|
2227
|
+
const CURATED_RULES = {
|
|
2228
|
+
"unicorn/catch-error-name": "error",
|
|
2229
|
+
"unicorn/consistent-date-clone": "error",
|
|
2230
|
+
"unicorn/consistent-empty-array-spread": "error",
|
|
2231
|
+
"unicorn/consistent-existence-index-check": "error",
|
|
2232
|
+
"unicorn/consistent-function-scoping": ["error", { checkArrowFunctions: false }],
|
|
2233
|
+
"unicorn/custom-error-definition": "error",
|
|
2234
|
+
"unicorn/error-message": "error",
|
|
2235
|
+
"unicorn/escape-case": "error",
|
|
2236
|
+
"unicorn/explicit-length-check": "error",
|
|
2237
|
+
"unicorn/filename-case": ["error", {
|
|
2238
|
+
case: "kebabCase",
|
|
2239
|
+
ignore: [/^[A-Z0-9_-]+\.md$/]
|
|
2240
|
+
}],
|
|
2241
|
+
"unicorn/new-for-builtins": "error",
|
|
2242
|
+
"unicorn/no-abusive-eslint-disable": "error",
|
|
2243
|
+
"unicorn/no-anonymous-default-export": "error",
|
|
2244
|
+
"unicorn/no-array-for-each": "error",
|
|
2245
|
+
"unicorn/no-array-method-this-argument": "error",
|
|
2246
|
+
"unicorn/no-array-reduce": "error",
|
|
2247
|
+
"unicorn/no-await-expression-member": "error",
|
|
2248
|
+
"unicorn/no-await-in-promise-methods": "error",
|
|
2249
|
+
"unicorn/no-document-cookie": "error",
|
|
2250
|
+
"unicorn/no-empty-file": "error",
|
|
2251
|
+
"unicorn/no-for-loop": "error",
|
|
2252
|
+
"unicorn/no-hex-escape": "error",
|
|
2253
|
+
"unicorn/no-instanceof-builtins": "error",
|
|
2254
|
+
"unicorn/no-invalid-fetch-options": "error",
|
|
2255
|
+
"unicorn/no-invalid-remove-event-listener": "error",
|
|
2256
|
+
"unicorn/no-lonely-if": "error",
|
|
2257
|
+
"unicorn/no-magic-array-flat-depth": "error",
|
|
2258
|
+
"unicorn/no-negated-condition": "error",
|
|
2259
|
+
"unicorn/no-negation-in-equality-check": "error",
|
|
2260
|
+
"unicorn/no-new-array": "error",
|
|
2261
|
+
"unicorn/no-new-buffer": "error",
|
|
2262
|
+
"unicorn/no-null": "error",
|
|
2263
|
+
"unicorn/no-process-exit": "error",
|
|
2264
|
+
"unicorn/no-single-promise-in-promise-methods": "error",
|
|
2265
|
+
"unicorn/no-thenable": "error",
|
|
2266
|
+
"unicorn/no-this-assignment": "error",
|
|
2267
|
+
"unicorn/no-typeof-undefined": "error",
|
|
2268
|
+
"unicorn/no-unnecessary-await": "error",
|
|
2269
|
+
"unicorn/no-unnecessary-array-flat-depth": "error",
|
|
2270
|
+
"unicorn/no-unnecessary-array-splice-count": "error",
|
|
2271
|
+
"unicorn/no-unnecessary-slice-end": "error",
|
|
2272
|
+
"unicorn/no-unused-properties": "warn",
|
|
2273
|
+
"unicorn/no-useless-fallback-in-spread": "error",
|
|
2274
|
+
"unicorn/no-useless-length-check": "error",
|
|
2275
|
+
"unicorn/no-useless-promise-resolve-reject": "error",
|
|
2276
|
+
"unicorn/no-useless-spread": "error",
|
|
2277
|
+
"unicorn/no-useless-switch-case": "error",
|
|
2278
|
+
"unicorn/no-zero-fractions": "error",
|
|
2279
|
+
"unicorn/number-literal-case": "error",
|
|
2280
|
+
"unicorn/numeric-separators-style": "error",
|
|
2281
|
+
"unicorn/prefer-array-find": "error",
|
|
2282
|
+
"unicorn/prefer-array-flat": "error",
|
|
2283
|
+
"unicorn/prefer-array-flat-map": "error",
|
|
2284
|
+
"unicorn/prefer-array-index-of": "error",
|
|
2285
|
+
"unicorn/prefer-array-some": "error",
|
|
2286
|
+
"unicorn/prefer-at": "error",
|
|
2287
|
+
"unicorn/prefer-blob-reading-methods": "error",
|
|
2288
|
+
"unicorn/prefer-code-point": "error",
|
|
2289
|
+
"unicorn/prefer-date-now": "error",
|
|
2290
|
+
"unicorn/prefer-default-parameters": "error",
|
|
2291
|
+
"unicorn/prefer-export-from": "error",
|
|
2292
|
+
"unicorn/prefer-import-meta-properties": "error",
|
|
2293
|
+
"unicorn/prefer-includes": "error",
|
|
2294
|
+
"unicorn/prefer-keyboard-event-key": "error",
|
|
2295
|
+
"unicorn/prefer-logical-operator-over-ternary": "error",
|
|
2296
|
+
"unicorn/prefer-math-min-max": "error",
|
|
2297
|
+
"unicorn/prefer-math-trunc": "error",
|
|
2298
|
+
"unicorn/prefer-modern-math-apis": "error",
|
|
2299
|
+
"unicorn/prefer-negative-index": "error",
|
|
2300
|
+
"unicorn/prefer-node-protocol": "error",
|
|
2301
|
+
"unicorn/prefer-number-properties": "error",
|
|
2302
|
+
"unicorn/prefer-object-from-entries": "error",
|
|
2303
|
+
"unicorn/prefer-optional-catch-binding": "error",
|
|
2304
|
+
"unicorn/prefer-query-selector": "error",
|
|
2305
|
+
"unicorn/prefer-regexp-test": "error",
|
|
2306
|
+
"unicorn/prefer-set-has": "error",
|
|
2307
|
+
"unicorn/prefer-set-size": "error",
|
|
2308
|
+
"unicorn/prefer-single-call": "error",
|
|
2309
|
+
"unicorn/prefer-spread": "error",
|
|
2310
|
+
"unicorn/prefer-string-raw": "error",
|
|
2311
|
+
"unicorn/prefer-string-replace-all": "error",
|
|
2312
|
+
"unicorn/prefer-string-slice": "error",
|
|
2313
|
+
"unicorn/prefer-string-starts-ends-with": "error",
|
|
2314
|
+
"unicorn/prefer-string-trim-start-end": "error",
|
|
2315
|
+
"unicorn/prefer-structured-clone": "error",
|
|
2316
|
+
"unicorn/prefer-switch": "error",
|
|
2317
|
+
"unicorn/prefer-ternary": "error",
|
|
2318
|
+
"unicorn/prefer-type-error": "error",
|
|
2319
|
+
"unicorn/require-array-join-separator": "error",
|
|
2320
|
+
"unicorn/require-number-to-fixed-digits-argument": "error",
|
|
2321
|
+
"unicorn/require-post-message-target-origin": "error",
|
|
2322
|
+
"unicorn/throw-new-error": "error"
|
|
2323
|
+
};
|
|
2324
|
+
/**
|
|
2223
2325
|
* Generates a configuration array for the Unicorn plugin with the specified options.
|
|
2224
2326
|
*
|
|
2225
2327
|
* @param [options] - The options to customize the Unicorn rules.
|
|
@@ -2230,103 +2332,10 @@ function unicorn(options = {}) {
|
|
|
2230
2332
|
name: "fabdeh/unicorn/rules",
|
|
2231
2333
|
files: [GLOB_SRC],
|
|
2232
2334
|
plugins: { unicorn: unicornPlugin },
|
|
2233
|
-
rules:
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
"unicorn/consistent-existence-index-check": "error",
|
|
2238
|
-
"unicorn/consistent-function-scoping": ["error", { checkArrowFunctions: false }],
|
|
2239
|
-
"unicorn/custom-error-definition": "error",
|
|
2240
|
-
"unicorn/error-message": "error",
|
|
2241
|
-
"unicorn/escape-case": "error",
|
|
2242
|
-
"unicorn/explicit-length-check": "error",
|
|
2243
|
-
"unicorn/filename-case": ["error", {
|
|
2244
|
-
case: "kebabCase",
|
|
2245
|
-
ignore: [/^[A-Z0-9_-]+\.md$/]
|
|
2246
|
-
}],
|
|
2247
|
-
"unicorn/new-for-builtins": "error",
|
|
2248
|
-
"unicorn/no-abusive-eslint-disable": "error",
|
|
2249
|
-
"unicorn/no-anonymous-default-export": "error",
|
|
2250
|
-
"unicorn/no-array-for-each": "error",
|
|
2251
|
-
"unicorn/no-array-method-this-argument": "error",
|
|
2252
|
-
"unicorn/no-array-reduce": "error",
|
|
2253
|
-
"unicorn/no-await-expression-member": "error",
|
|
2254
|
-
"unicorn/no-await-in-promise-methods": "error",
|
|
2255
|
-
"unicorn/no-document-cookie": "error",
|
|
2256
|
-
"unicorn/no-empty-file": "error",
|
|
2257
|
-
"unicorn/no-for-loop": "error",
|
|
2258
|
-
"unicorn/no-hex-escape": "error",
|
|
2259
|
-
"unicorn/no-instanceof-builtins": "error",
|
|
2260
|
-
"unicorn/no-invalid-fetch-options": "error",
|
|
2261
|
-
"unicorn/no-invalid-remove-event-listener": "error",
|
|
2262
|
-
"unicorn/no-lonely-if": "error",
|
|
2263
|
-
"unicorn/no-magic-array-flat-depth": "error",
|
|
2264
|
-
"unicorn/no-negated-condition": "error",
|
|
2265
|
-
"unicorn/no-negation-in-equality-check": "error",
|
|
2266
|
-
"unicorn/no-new-array": "error",
|
|
2267
|
-
"unicorn/no-new-buffer": "error",
|
|
2268
|
-
"unicorn/no-null": "error",
|
|
2269
|
-
"unicorn/no-process-exit": "error",
|
|
2270
|
-
"unicorn/no-single-promise-in-promise-methods": "error",
|
|
2271
|
-
"unicorn/no-thenable": "error",
|
|
2272
|
-
"unicorn/no-this-assignment": "error",
|
|
2273
|
-
"unicorn/no-typeof-undefined": "error",
|
|
2274
|
-
"unicorn/no-unnecessary-await": "error",
|
|
2275
|
-
"unicorn/no-unnecessary-array-flat-depth": "error",
|
|
2276
|
-
"unicorn/no-unnecessary-array-splice-count": "error",
|
|
2277
|
-
"unicorn/no-unnecessary-slice-end": "error",
|
|
2278
|
-
"unicorn/no-unused-properties": "warn",
|
|
2279
|
-
"unicorn/no-useless-fallback-in-spread": "error",
|
|
2280
|
-
"unicorn/no-useless-length-check": "error",
|
|
2281
|
-
"unicorn/no-useless-promise-resolve-reject": "error",
|
|
2282
|
-
"unicorn/no-useless-spread": "error",
|
|
2283
|
-
"unicorn/no-useless-switch-case": "error",
|
|
2284
|
-
"unicorn/no-zero-fractions": "error",
|
|
2285
|
-
"unicorn/number-literal-case": "error",
|
|
2286
|
-
"unicorn/numeric-separators-style": "error",
|
|
2287
|
-
"unicorn/prefer-array-find": "error",
|
|
2288
|
-
"unicorn/prefer-array-flat": "error",
|
|
2289
|
-
"unicorn/prefer-array-flat-map": "error",
|
|
2290
|
-
"unicorn/prefer-array-index-of": "error",
|
|
2291
|
-
"unicorn/prefer-array-some": "error",
|
|
2292
|
-
"unicorn/prefer-at": "error",
|
|
2293
|
-
"unicorn/prefer-blob-reading-methods": "error",
|
|
2294
|
-
"unicorn/prefer-code-point": "error",
|
|
2295
|
-
"unicorn/prefer-date-now": "error",
|
|
2296
|
-
"unicorn/prefer-default-parameters": "error",
|
|
2297
|
-
"unicorn/prefer-export-from": "error",
|
|
2298
|
-
"unicorn/prefer-import-meta-properties": "error",
|
|
2299
|
-
"unicorn/prefer-includes": "error",
|
|
2300
|
-
"unicorn/prefer-keyboard-event-key": "error",
|
|
2301
|
-
"unicorn/prefer-logical-operator-over-ternary": "error",
|
|
2302
|
-
"unicorn/prefer-math-min-max": "error",
|
|
2303
|
-
"unicorn/prefer-math-trunc": "error",
|
|
2304
|
-
"unicorn/prefer-modern-math-apis": "error",
|
|
2305
|
-
"unicorn/prefer-negative-index": "error",
|
|
2306
|
-
"unicorn/prefer-node-protocol": "error",
|
|
2307
|
-
"unicorn/prefer-number-properties": "error",
|
|
2308
|
-
"unicorn/prefer-object-from-entries": "error",
|
|
2309
|
-
"unicorn/prefer-optional-catch-binding": "error",
|
|
2310
|
-
"unicorn/prefer-query-selector": "error",
|
|
2311
|
-
"unicorn/prefer-regexp-test": "error",
|
|
2312
|
-
"unicorn/prefer-set-has": "error",
|
|
2313
|
-
"unicorn/prefer-set-size": "error",
|
|
2314
|
-
"unicorn/prefer-single-call": "error",
|
|
2315
|
-
"unicorn/prefer-spread": "error",
|
|
2316
|
-
"unicorn/prefer-string-raw": "error",
|
|
2317
|
-
"unicorn/prefer-string-replace-all": "error",
|
|
2318
|
-
"unicorn/prefer-string-slice": "error",
|
|
2319
|
-
"unicorn/prefer-string-starts-ends-with": "error",
|
|
2320
|
-
"unicorn/prefer-string-trim-start-end": "error",
|
|
2321
|
-
"unicorn/prefer-structured-clone": "error",
|
|
2322
|
-
"unicorn/prefer-switch": "error",
|
|
2323
|
-
"unicorn/prefer-ternary": "error",
|
|
2324
|
-
"unicorn/prefer-type-error": "error",
|
|
2325
|
-
"unicorn/require-array-join-separator": "error",
|
|
2326
|
-
"unicorn/require-number-to-fixed-digits-argument": "error",
|
|
2327
|
-
"unicorn/require-post-message-target-origin": "error",
|
|
2328
|
-
"unicorn/throw-new-error": "error"
|
|
2329
|
-
} }
|
|
2335
|
+
rules: options.allRecommended ? {
|
|
2336
|
+
...unicornPlugin.configs.recommended.rules,
|
|
2337
|
+
...CURATED_RULES
|
|
2338
|
+
} : CURATED_RULES
|
|
2330
2339
|
}];
|
|
2331
2340
|
}
|
|
2332
2341
|
//#endregion
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fabdeh/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.13.
|
|
4
|
+
"version": "0.13.2",
|
|
5
5
|
"description": "My personal eslint config preset",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Fabien Dehopré",
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
"tsx": "^4.23.12",
|
|
127
127
|
"typescript": "^6.0.3",
|
|
128
128
|
"vitest": "^4.1.10",
|
|
129
|
-
"@fabdeh/eslint-config": "0.13.
|
|
129
|
+
"@fabdeh/eslint-config": "0.13.2"
|
|
130
130
|
},
|
|
131
131
|
"simple-git-hooks": {
|
|
132
132
|
"pre-commit": "pnpm nano-staged",
|