@jsse/eslint-config 0.0.4 → 0.0.6
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/LICENSE +21 -21
- package/README.md +5 -0
- package/dist/cli.cjs +4 -2
- package/dist/cli.js +4 -2
- package/dist/index.cjs +287 -194
- package/dist/index.d.cts +121 -2
- package/dist/index.d.ts +121 -2
- package/dist/index.js +286 -194
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -2388,6 +2388,7 @@ __export(src_exports, {
|
|
|
2388
2388
|
prettier: () => prettier,
|
|
2389
2389
|
react: () => react,
|
|
2390
2390
|
reactHooks: () => reactHooks,
|
|
2391
|
+
reactRules: () => reactRules,
|
|
2391
2392
|
renameRules: () => renameRules,
|
|
2392
2393
|
sortPackageJson: () => sortPackageJson,
|
|
2393
2394
|
sortTsconfig: () => sortTsconfig,
|
|
@@ -2462,7 +2463,15 @@ var GLOB_TESTS = [
|
|
|
2462
2463
|
`**/*.bench.${GLOB_SRC_EXT}`,
|
|
2463
2464
|
`**/*.benchmark.${GLOB_SRC_EXT}`
|
|
2464
2465
|
];
|
|
2465
|
-
var GLOB_ALL_SRC = [
|
|
2466
|
+
var GLOB_ALL_SRC = [
|
|
2467
|
+
GLOB_SRC,
|
|
2468
|
+
GLOB_STYLE,
|
|
2469
|
+
GLOB_JSON,
|
|
2470
|
+
GLOB_JSON5,
|
|
2471
|
+
GLOB_MARKDOWN,
|
|
2472
|
+
GLOB_YAML,
|
|
2473
|
+
GLOB_HTML
|
|
2474
|
+
];
|
|
2466
2475
|
var GLOB_EXCLUDE = [
|
|
2467
2476
|
"**/node_modules",
|
|
2468
2477
|
"**/dist",
|
|
@@ -2522,7 +2531,10 @@ function imports(options = {}) {
|
|
|
2522
2531
|
"import/no-webpack-loader-syntax": "error",
|
|
2523
2532
|
"import/order": "error",
|
|
2524
2533
|
...stylistic2 ? {
|
|
2525
|
-
"import/newline-after-import": [
|
|
2534
|
+
"import/newline-after-import": [
|
|
2535
|
+
"error",
|
|
2536
|
+
{ considerComments: true, count: 1 }
|
|
2537
|
+
]
|
|
2526
2538
|
} : {}
|
|
2527
2539
|
}
|
|
2528
2540
|
}
|
|
@@ -2565,7 +2577,10 @@ function javascript(options = {}) {
|
|
|
2565
2577
|
},
|
|
2566
2578
|
rules: {
|
|
2567
2579
|
...import_js.default.configs.recommended.rules,
|
|
2568
|
-
"accessor-pairs": [
|
|
2580
|
+
"accessor-pairs": [
|
|
2581
|
+
"error",
|
|
2582
|
+
{ enforceForClassMembers: true, setWithoutGet: true }
|
|
2583
|
+
],
|
|
2569
2584
|
"array-callback-return": "error",
|
|
2570
2585
|
"arrow-parens": ["error", "as-needed", { requireForBlockBody: true }],
|
|
2571
2586
|
"block-scoped-var": "error",
|
|
@@ -2573,7 +2588,10 @@ function javascript(options = {}) {
|
|
|
2573
2588
|
"default-case-last": "error",
|
|
2574
2589
|
"dot-notation": ["error", { allowKeywords: true }],
|
|
2575
2590
|
eqeqeq: ["error", "smart"],
|
|
2576
|
-
"new-cap": [
|
|
2591
|
+
"new-cap": [
|
|
2592
|
+
"error",
|
|
2593
|
+
{ capIsNew: false, newIsCap: true, properties: true }
|
|
2594
|
+
],
|
|
2577
2595
|
"no-alert": "error",
|
|
2578
2596
|
"no-array-constructor": "error",
|
|
2579
2597
|
"no-async-promise-executor": "error",
|
|
@@ -2696,7 +2714,10 @@ function javascript(options = {}) {
|
|
|
2696
2714
|
vars: "all"
|
|
2697
2715
|
}
|
|
2698
2716
|
],
|
|
2699
|
-
"no-use-before-define": [
|
|
2717
|
+
"no-use-before-define": [
|
|
2718
|
+
"error",
|
|
2719
|
+
{ classes: false, functions: false, variables: true }
|
|
2720
|
+
],
|
|
2700
2721
|
"no-useless-backreference": "error",
|
|
2701
2722
|
"no-useless-call": "error",
|
|
2702
2723
|
"no-useless-catch": "error",
|
|
@@ -2758,7 +2779,10 @@ function javascript(options = {}) {
|
|
|
2758
2779
|
varsIgnorePattern: "^_"
|
|
2759
2780
|
}
|
|
2760
2781
|
],
|
|
2761
|
-
"use-isnan": [
|
|
2782
|
+
"use-isnan": [
|
|
2783
|
+
"error",
|
|
2784
|
+
{ enforceForIndexOf: true, enforceForSwitchCase: true }
|
|
2785
|
+
],
|
|
2762
2786
|
"valid-typeof": ["error", { requireStringLiterals: true }],
|
|
2763
2787
|
"vars-on-top": "error",
|
|
2764
2788
|
yoda: ["error", "never"],
|
|
@@ -2860,10 +2884,19 @@ function jsonc(options = {}) {
|
|
|
2860
2884
|
"jsonc/comma-dangle": ["error", "never"],
|
|
2861
2885
|
"jsonc/comma-style": ["error", "last"],
|
|
2862
2886
|
"jsonc/indent": ["error", indent],
|
|
2863
|
-
"jsonc/key-spacing": [
|
|
2864
|
-
|
|
2887
|
+
"jsonc/key-spacing": [
|
|
2888
|
+
"error",
|
|
2889
|
+
{ afterColon: true, beforeColon: false }
|
|
2890
|
+
],
|
|
2891
|
+
"jsonc/object-curly-newline": [
|
|
2892
|
+
"error",
|
|
2893
|
+
{ consistent: true, multiline: true }
|
|
2894
|
+
],
|
|
2865
2895
|
"jsonc/object-curly-spacing": ["error", "always"],
|
|
2866
|
-
"jsonc/object-property-newline": [
|
|
2896
|
+
"jsonc/object-property-newline": [
|
|
2897
|
+
"error",
|
|
2898
|
+
{ allowMultiplePropertiesPerLine: true }
|
|
2899
|
+
],
|
|
2867
2900
|
"jsonc/quote-props": "error",
|
|
2868
2901
|
"jsonc/quotes": "error"
|
|
2869
2902
|
} : {},
|
|
@@ -3065,171 +3098,176 @@ function typescriptLanguageOptions(options) {
|
|
|
3065
3098
|
}
|
|
3066
3099
|
|
|
3067
3100
|
// src/configs/react.ts
|
|
3068
|
-
|
|
3069
|
-
|
|
3070
|
-
|
|
3071
|
-
|
|
3072
|
-
"
|
|
3073
|
-
|
|
3074
|
-
|
|
3075
|
-
|
|
3076
|
-
|
|
3077
|
-
|
|
3078
|
-
|
|
3079
|
-
|
|
3080
|
-
|
|
3081
|
-
|
|
3082
|
-
|
|
3083
|
-
|
|
3084
|
-
|
|
3085
|
-
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
|
|
3090
|
-
|
|
3091
|
-
"error",
|
|
3092
|
-
|
|
3093
|
-
|
|
3094
|
-
|
|
3095
|
-
|
|
3096
|
-
|
|
3097
|
-
|
|
3098
|
-
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
|
|
3102
|
-
|
|
3103
|
-
|
|
3104
|
-
|
|
3105
|
-
|
|
3106
|
-
|
|
3107
|
-
|
|
3108
|
-
|
|
3109
|
-
|
|
3110
|
-
|
|
3111
|
-
|
|
3112
|
-
|
|
3113
|
-
|
|
3114
|
-
|
|
3115
|
-
|
|
3116
|
-
|
|
3117
|
-
|
|
3118
|
-
|
|
3119
|
-
|
|
3120
|
-
|
|
3121
|
-
"error",
|
|
3122
|
-
|
|
3123
|
-
|
|
3124
|
-
|
|
3125
|
-
|
|
3126
|
-
|
|
3127
|
-
|
|
3128
|
-
|
|
3129
|
-
|
|
3130
|
-
|
|
3131
|
-
|
|
3132
|
-
|
|
3133
|
-
|
|
3134
|
-
|
|
3135
|
-
|
|
3136
|
-
|
|
3137
|
-
|
|
3138
|
-
|
|
3139
|
-
|
|
3140
|
-
|
|
3141
|
-
|
|
3142
|
-
|
|
3143
|
-
|
|
3144
|
-
|
|
3145
|
-
|
|
3146
|
-
|
|
3147
|
-
|
|
3148
|
-
|
|
3149
|
-
|
|
3150
|
-
|
|
3151
|
-
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
"error",
|
|
3155
|
-
|
|
3156
|
-
|
|
3157
|
-
|
|
3158
|
-
|
|
3159
|
-
|
|
3160
|
-
|
|
3161
|
-
|
|
3162
|
-
|
|
3163
|
-
|
|
3164
|
-
|
|
3165
|
-
|
|
3166
|
-
|
|
3167
|
-
|
|
3168
|
-
|
|
3169
|
-
|
|
3170
|
-
|
|
3171
|
-
|
|
3172
|
-
|
|
3173
|
-
|
|
3174
|
-
|
|
3175
|
-
|
|
3176
|
-
|
|
3177
|
-
|
|
3178
|
-
|
|
3179
|
-
|
|
3180
|
-
|
|
3181
|
-
|
|
3182
|
-
|
|
3183
|
-
|
|
3184
|
-
|
|
3185
|
-
|
|
3186
|
-
|
|
3187
|
-
|
|
3188
|
-
|
|
3189
|
-
|
|
3190
|
-
|
|
3191
|
-
|
|
3192
|
-
|
|
3193
|
-
|
|
3194
|
-
|
|
3195
|
-
|
|
3196
|
-
|
|
3197
|
-
|
|
3198
|
-
|
|
3199
|
-
|
|
3200
|
-
|
|
3201
|
-
"error",
|
|
3202
|
-
|
|
3203
|
-
|
|
3204
|
-
|
|
3205
|
-
|
|
3206
|
-
|
|
3207
|
-
|
|
3208
|
-
|
|
3209
|
-
|
|
3210
|
-
|
|
3211
|
-
|
|
3212
|
-
|
|
3213
|
-
|
|
3214
|
-
|
|
3215
|
-
|
|
3216
|
-
"error",
|
|
3217
|
-
|
|
3218
|
-
|
|
3219
|
-
|
|
3220
|
-
|
|
3221
|
-
|
|
3222
|
-
|
|
3223
|
-
|
|
3224
|
-
|
|
3225
|
-
|
|
3226
|
-
"error",
|
|
3227
|
-
|
|
3228
|
-
|
|
3229
|
-
|
|
3230
|
-
|
|
3231
|
-
|
|
3232
|
-
|
|
3101
|
+
function reactRules() {
|
|
3102
|
+
return {
|
|
3103
|
+
"react-hooks/exhaustive-deps": "error",
|
|
3104
|
+
"react-hooks/rules-of-hooks": "error",
|
|
3105
|
+
"react/boolean-prop-naming": [
|
|
3106
|
+
"error",
|
|
3107
|
+
{
|
|
3108
|
+
rule: [
|
|
3109
|
+
"^(is|has)[A-Z]([A-Za-z0-9]?)+",
|
|
3110
|
+
"|^(debug|disabled|hidden|required|selected|highlight)$"
|
|
3111
|
+
].join(""),
|
|
3112
|
+
validateNested: true
|
|
3113
|
+
}
|
|
3114
|
+
],
|
|
3115
|
+
"react/button-has-type": "error",
|
|
3116
|
+
"react/function-component-definition": [
|
|
3117
|
+
"error",
|
|
3118
|
+
{
|
|
3119
|
+
namedComponents: "function-declaration",
|
|
3120
|
+
unnamedComponents: "arrow-function"
|
|
3121
|
+
}
|
|
3122
|
+
],
|
|
3123
|
+
"react/hook-use-state": "error",
|
|
3124
|
+
"react/iframe-missing-sandbox": "error",
|
|
3125
|
+
"react/jsx-boolean-value": "error",
|
|
3126
|
+
"react/jsx-child-element-spacing": "error",
|
|
3127
|
+
"react/jsx-closing-bracket-location": [
|
|
3128
|
+
"error",
|
|
3129
|
+
{
|
|
3130
|
+
nonEmpty: "tag-aligned",
|
|
3131
|
+
selfClosing: false
|
|
3132
|
+
}
|
|
3133
|
+
],
|
|
3134
|
+
"react/jsx-closing-tag-location": "error",
|
|
3135
|
+
"react/jsx-curly-brace-presence": [
|
|
3136
|
+
"error",
|
|
3137
|
+
{
|
|
3138
|
+
children: "never",
|
|
3139
|
+
propElementValues: "always",
|
|
3140
|
+
props: "never"
|
|
3141
|
+
}
|
|
3142
|
+
],
|
|
3143
|
+
"react/jsx-curly-newline": [
|
|
3144
|
+
"error",
|
|
3145
|
+
{
|
|
3146
|
+
multiline: "consistent",
|
|
3147
|
+
singleline: "forbid"
|
|
3148
|
+
}
|
|
3149
|
+
],
|
|
3150
|
+
"react/jsx-curly-spacing": ["error", "never"],
|
|
3151
|
+
"react/jsx-equals-spacing": ["error", "never"],
|
|
3152
|
+
"react/jsx-first-prop-new-line": "error",
|
|
3153
|
+
"react/jsx-fragments": ["error", "syntax"],
|
|
3154
|
+
"react/jsx-indent": ["error", 2],
|
|
3155
|
+
"react/jsx-indent-props": ["error", 2],
|
|
3156
|
+
"react/jsx-key": "warn",
|
|
3157
|
+
"react/jsx-max-props-per-line": [
|
|
3158
|
+
"error",
|
|
3159
|
+
{
|
|
3160
|
+
maximum: 3,
|
|
3161
|
+
when: "multiline"
|
|
3162
|
+
}
|
|
3163
|
+
],
|
|
3164
|
+
"react/jsx-no-bind": [
|
|
3165
|
+
"error",
|
|
3166
|
+
{
|
|
3167
|
+
allowArrowFunctions: true
|
|
3168
|
+
}
|
|
3169
|
+
],
|
|
3170
|
+
"react/jsx-no-comment-textnodes": "error",
|
|
3171
|
+
"react/jsx-no-constructed-context-values": "error",
|
|
3172
|
+
"react/jsx-no-duplicate-props": [
|
|
3173
|
+
"error",
|
|
3174
|
+
{
|
|
3175
|
+
ignoreCase: true
|
|
3176
|
+
}
|
|
3177
|
+
],
|
|
3178
|
+
"react/jsx-no-script-url": "error",
|
|
3179
|
+
"react/jsx-no-target-blank": [
|
|
3180
|
+
"error",
|
|
3181
|
+
{
|
|
3182
|
+
forms: true,
|
|
3183
|
+
warnOnSpreadAttributes: true
|
|
3184
|
+
}
|
|
3185
|
+
],
|
|
3186
|
+
"react/jsx-no-undef": "error",
|
|
3187
|
+
"react/jsx-no-useless-fragment": "error",
|
|
3188
|
+
"react/jsx-pascal-case": "error",
|
|
3189
|
+
"react/jsx-props-no-multi-spaces": "error",
|
|
3190
|
+
"react/jsx-sort-props": [
|
|
3191
|
+
"error",
|
|
3192
|
+
{
|
|
3193
|
+
callbacksLast: true,
|
|
3194
|
+
noSortAlphabetically: true,
|
|
3195
|
+
reservedFirst: true,
|
|
3196
|
+
shorthandFirst: true
|
|
3197
|
+
}
|
|
3198
|
+
],
|
|
3199
|
+
"react/jsx-tag-spacing": [
|
|
3200
|
+
"error",
|
|
3201
|
+
{
|
|
3202
|
+
afterOpening: "never",
|
|
3203
|
+
beforeClosing: "never",
|
|
3204
|
+
beforeSelfClosing: "never",
|
|
3205
|
+
closingSlash: "never"
|
|
3206
|
+
}
|
|
3207
|
+
],
|
|
3208
|
+
"react/jsx-uses-react": "error",
|
|
3209
|
+
"react/jsx-uses-vars": "error",
|
|
3210
|
+
"react/jsx-wrap-multilines": [
|
|
3211
|
+
"error",
|
|
3212
|
+
{
|
|
3213
|
+
arrow: "parens-new-line",
|
|
3214
|
+
assignment: "parens-new-line",
|
|
3215
|
+
condition: "ignore",
|
|
3216
|
+
declaration: "parens-new-line",
|
|
3217
|
+
logical: "ignore",
|
|
3218
|
+
prop: "ignore",
|
|
3219
|
+
return: "parens-new-line"
|
|
3220
|
+
}
|
|
3221
|
+
],
|
|
3222
|
+
"react/no-access-state-in-setstate": "error",
|
|
3223
|
+
"react/no-array-index-key": "error",
|
|
3224
|
+
"react/no-arrow-function-lifecycle": "error",
|
|
3225
|
+
"react/no-children-prop": "error",
|
|
3226
|
+
"react/no-danger": "error",
|
|
3227
|
+
"react/no-danger-with-children": "error",
|
|
3228
|
+
"react/no-deprecated": "error",
|
|
3229
|
+
"react/no-did-update-set-state": "error",
|
|
3230
|
+
"react/no-direct-mutation-state": "error",
|
|
3231
|
+
"react/no-find-dom-node": "error",
|
|
3232
|
+
"react/no-invalid-html-attribute": "error",
|
|
3233
|
+
"react/no-is-mounted": "error",
|
|
3234
|
+
"react/no-namespace": "error",
|
|
3235
|
+
"react/no-redundant-should-component-update": "error",
|
|
3236
|
+
"react/no-render-return-value": "error",
|
|
3237
|
+
"react/no-string-refs": [
|
|
3238
|
+
"error",
|
|
3239
|
+
{
|
|
3240
|
+
noTemplateLiterals: true
|
|
3241
|
+
}
|
|
3242
|
+
],
|
|
3243
|
+
"react/no-this-in-sfc": "error",
|
|
3244
|
+
"react/no-typos": "error",
|
|
3245
|
+
"react/no-unescaped-entities": "error",
|
|
3246
|
+
"react/no-unsafe": "error",
|
|
3247
|
+
// "react/no-unused-prop-types": "error",
|
|
3248
|
+
"react/no-unused-state": "error",
|
|
3249
|
+
"react/prefer-read-only-props": "error",
|
|
3250
|
+
// "react/prop-types": "error",
|
|
3251
|
+
"react/react-in-jsx-scope": "off",
|
|
3252
|
+
"react/require-default-props": [
|
|
3253
|
+
"error",
|
|
3254
|
+
{
|
|
3255
|
+
forbidDefaultForRequired: true,
|
|
3256
|
+
ignoreFunctionalComponents: true
|
|
3257
|
+
}
|
|
3258
|
+
],
|
|
3259
|
+
"react/self-closing-comp": "error",
|
|
3260
|
+
"react/state-in-constructor": ["error", "never"],
|
|
3261
|
+
"react/static-property-placement": "error",
|
|
3262
|
+
"react/style-prop-object": [
|
|
3263
|
+
"error",
|
|
3264
|
+
{
|
|
3265
|
+
allow: ["FormattedNumber"]
|
|
3266
|
+
}
|
|
3267
|
+
],
|
|
3268
|
+
"react/void-dom-elements-no-children": "error"
|
|
3269
|
+
};
|
|
3270
|
+
}
|
|
3233
3271
|
function reactHooks() {
|
|
3234
3272
|
return [
|
|
3235
3273
|
{
|
|
@@ -3291,7 +3329,12 @@ function reactRecomendedRules() {
|
|
|
3291
3329
|
};
|
|
3292
3330
|
}
|
|
3293
3331
|
function react(options) {
|
|
3294
|
-
const {
|
|
3332
|
+
const {
|
|
3333
|
+
parserOptions = {},
|
|
3334
|
+
tsconfigPath,
|
|
3335
|
+
react: react2,
|
|
3336
|
+
reactRefresh
|
|
3337
|
+
} = options ?? {};
|
|
3295
3338
|
const config = [
|
|
3296
3339
|
{
|
|
3297
3340
|
files: [GLOB_SRC],
|
|
@@ -3310,16 +3353,12 @@ function react(options) {
|
|
|
3310
3353
|
},
|
|
3311
3354
|
{
|
|
3312
3355
|
files: [GLOB_SRC],
|
|
3313
|
-
plugins: {
|
|
3314
|
-
// react: pluginReact,
|
|
3315
|
-
// },
|
|
3316
|
-
},
|
|
3317
3356
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
|
|
3318
3357
|
rules: {
|
|
3319
3358
|
...reactRecomendedRules(),
|
|
3320
3359
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
|
|
3321
3360
|
...import_eslint_plugin_react.default.configs["jsx-runtime"].rules,
|
|
3322
|
-
...reactRules
|
|
3361
|
+
...reactRules()
|
|
3323
3362
|
},
|
|
3324
3363
|
settings: {
|
|
3325
3364
|
react: {
|
|
@@ -3428,7 +3467,14 @@ function sortTsconfig() {
|
|
|
3428
3467
|
"jsonc/sort-keys": [
|
|
3429
3468
|
"error",
|
|
3430
3469
|
{
|
|
3431
|
-
order: [
|
|
3470
|
+
order: [
|
|
3471
|
+
"extends",
|
|
3472
|
+
"compilerOptions",
|
|
3473
|
+
"references",
|
|
3474
|
+
"files",
|
|
3475
|
+
"include",
|
|
3476
|
+
"exclude"
|
|
3477
|
+
],
|
|
3432
3478
|
pathPattern: "^$"
|
|
3433
3479
|
},
|
|
3434
3480
|
{
|
|
@@ -3541,7 +3587,9 @@ function sortTsconfig() {
|
|
|
3541
3587
|
// src/utils.ts
|
|
3542
3588
|
var import_node_process2 = __toESM(require("process"), 1);
|
|
3543
3589
|
function combine(...configs) {
|
|
3544
|
-
return configs.flatMap(
|
|
3590
|
+
return configs.flatMap(
|
|
3591
|
+
(config) => Array.isArray(config) ? config : [config]
|
|
3592
|
+
);
|
|
3545
3593
|
}
|
|
3546
3594
|
function renameRules(rules, from, to) {
|
|
3547
3595
|
if (from === to) {
|
|
@@ -3586,7 +3634,10 @@ function test(options = {}) {
|
|
|
3586
3634
|
files: GLOB_TESTS,
|
|
3587
3635
|
name: "jsse:test:rules",
|
|
3588
3636
|
rules: {
|
|
3589
|
-
"test/consistent-test-it": [
|
|
3637
|
+
"test/consistent-test-it": [
|
|
3638
|
+
"error",
|
|
3639
|
+
{ fn: "it", withinDescribe: "it" }
|
|
3640
|
+
],
|
|
3590
3641
|
"test/no-identical-title": "error",
|
|
3591
3642
|
"test/no-only-tests": isInEditor2 ? "off" : isCI() ? "error" : "warn",
|
|
3592
3643
|
"test/prefer-hooks-in-order": "error",
|
|
@@ -3844,7 +3895,7 @@ function typescriptRulesTypeOblivious() {
|
|
|
3844
3895
|
"@typescript-eslint/no-use-before-define": [
|
|
3845
3896
|
"error",
|
|
3846
3897
|
{
|
|
3847
|
-
functions:
|
|
3898
|
+
functions: true,
|
|
3848
3899
|
classes: true,
|
|
3849
3900
|
variables: true,
|
|
3850
3901
|
enums: true,
|
|
@@ -3987,7 +4038,16 @@ function typescriptRulesTypeOblivious() {
|
|
|
3987
4038
|
"@typescript-eslint/no-restricted-imports": [
|
|
3988
4039
|
"error",
|
|
3989
4040
|
{
|
|
3990
|
-
paths: [
|
|
4041
|
+
paths: [
|
|
4042
|
+
"error",
|
|
4043
|
+
"domain",
|
|
4044
|
+
"freelist",
|
|
4045
|
+
"smalloc",
|
|
4046
|
+
"punycode",
|
|
4047
|
+
"sys",
|
|
4048
|
+
"querystring",
|
|
4049
|
+
"colors"
|
|
4050
|
+
]
|
|
3991
4051
|
}
|
|
3992
4052
|
],
|
|
3993
4053
|
"padding-line-between-statements": "off",
|
|
@@ -4006,11 +4066,16 @@ function typescriptRulesTypeOblivious() {
|
|
|
4006
4066
|
"no-duplicate-imports": "off"
|
|
4007
4067
|
};
|
|
4008
4068
|
}
|
|
4009
|
-
function typescriptRules({
|
|
4010
|
-
|
|
4011
|
-
|
|
4012
|
-
|
|
4013
|
-
|
|
4069
|
+
function typescriptRules({
|
|
4070
|
+
typeAware
|
|
4071
|
+
}) {
|
|
4072
|
+
if (typeAware) {
|
|
4073
|
+
return {
|
|
4074
|
+
...typescriptRulesTypeOblivious(),
|
|
4075
|
+
...typescriptRulesTypeAware()
|
|
4076
|
+
};
|
|
4077
|
+
}
|
|
4078
|
+
return typescriptRulesTypeOblivious();
|
|
4014
4079
|
}
|
|
4015
4080
|
|
|
4016
4081
|
// src/configs/ts/typescript.ts
|
|
@@ -4032,7 +4097,9 @@ function typescript(options) {
|
|
|
4032
4097
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
4033
4098
|
...import_eslint_plugin2.default.configs.strict.rules,
|
|
4034
4099
|
"no-invalid-this": "off",
|
|
4035
|
-
...typescriptRules(
|
|
4100
|
+
...typescriptRules(
|
|
4101
|
+
typeAware !== false && tsconfigPath ? { typeAware: true } : { typeAware: false }
|
|
4102
|
+
),
|
|
4036
4103
|
...overrides
|
|
4037
4104
|
};
|
|
4038
4105
|
return [
|
|
@@ -11017,6 +11084,22 @@ function tailwind() {
|
|
|
11017
11084
|
}
|
|
11018
11085
|
|
|
11019
11086
|
// src/configs/stylistic.ts
|
|
11087
|
+
function jsxStylistic({
|
|
11088
|
+
indent
|
|
11089
|
+
}) {
|
|
11090
|
+
return {
|
|
11091
|
+
"@stylistic/jsx-curly-brace-presence": [
|
|
11092
|
+
"error",
|
|
11093
|
+
{ propElementValues: "always" }
|
|
11094
|
+
],
|
|
11095
|
+
"@stylistic/jsx-indent": [
|
|
11096
|
+
"error",
|
|
11097
|
+
indent,
|
|
11098
|
+
{ checkAttributes: true, indentLogicalExpressions: true }
|
|
11099
|
+
],
|
|
11100
|
+
"@stylistic/jsx-quotes": "error"
|
|
11101
|
+
};
|
|
11102
|
+
}
|
|
11020
11103
|
function stylistic(options = {}) {
|
|
11021
11104
|
const { indent = 2, quotes = "double", jsx = true } = options;
|
|
11022
11105
|
return [
|
|
@@ -11028,8 +11111,12 @@ function stylistic(options = {}) {
|
|
|
11028
11111
|
},
|
|
11029
11112
|
rules: {
|
|
11030
11113
|
"@stylistic/quote-props": ["error", "as-needed"],
|
|
11031
|
-
"@stylistic/quotes": [
|
|
11032
|
-
|
|
11114
|
+
"@stylistic/quotes": [
|
|
11115
|
+
"error",
|
|
11116
|
+
quotes,
|
|
11117
|
+
{ allowTemplateLiterals: false, avoidEscape: true }
|
|
11118
|
+
],
|
|
11119
|
+
...jsx ? jsxStylistic({ indent }) : {}
|
|
11033
11120
|
}
|
|
11034
11121
|
}
|
|
11035
11122
|
];
|
|
@@ -11075,7 +11162,12 @@ function defaultOptions2() {
|
|
|
11075
11162
|
};
|
|
11076
11163
|
}
|
|
11077
11164
|
function normalizeOptions(options = {}) {
|
|
11078
|
-
const off = [
|
|
11165
|
+
const off = [
|
|
11166
|
+
.../* @__PURE__ */ new Set([
|
|
11167
|
+
...options.off ?? [],
|
|
11168
|
+
...options.fast ? [...slowRules] : []
|
|
11169
|
+
])
|
|
11170
|
+
].sort(
|
|
11079
11171
|
(a, b) => a.localeCompare(b, void 0, { numeric: true, sensitivity: "base" })
|
|
11080
11172
|
);
|
|
11081
11173
|
const stylisticOptions = options.stylistic === false ? false : typeof options.stylistic === "object" ? options.stylistic : {};
|
|
@@ -11273,6 +11365,7 @@ function jsseReact() {
|
|
|
11273
11365
|
prettier,
|
|
11274
11366
|
react,
|
|
11275
11367
|
reactHooks,
|
|
11368
|
+
reactRules,
|
|
11276
11369
|
renameRules,
|
|
11277
11370
|
sortPackageJson,
|
|
11278
11371
|
sortTsconfig,
|