@ntnyq/eslint-config 5.4.1 → 5.5.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/dist/index.d.ts +219 -143
- package/dist/index.js +106 -87
- package/package.json +18 -19
package/dist/index.js
CHANGED
|
@@ -162,7 +162,7 @@ const sharedRules = {
|
|
|
162
162
|
...pluginVue.configs["strongly-recommended"].rules,
|
|
163
163
|
...pluginVue.configs.recommended.rules
|
|
164
164
|
};
|
|
165
|
-
const disabledRules
|
|
165
|
+
const disabledRules = {
|
|
166
166
|
"vue/multi-word-component-names": "off",
|
|
167
167
|
"vue/no-setup-props-reactivity-loss": "off",
|
|
168
168
|
"vue/no-v-html": "off",
|
|
@@ -448,7 +448,7 @@ const configVue = (options = {}) => {
|
|
|
448
448
|
"shorthand",
|
|
449
449
|
{ sameNameShorthand: "always" }
|
|
450
450
|
],
|
|
451
|
-
...disabledRules
|
|
451
|
+
...disabledRules,
|
|
452
452
|
...extensionRules,
|
|
453
453
|
...unCategorizedRules,
|
|
454
454
|
...options.overrides
|
|
@@ -2046,15 +2046,14 @@ const configImportX = (options = {}) => {
|
|
|
2046
2046
|
|
|
2047
2047
|
//#endregion
|
|
2048
2048
|
//#region src/configs/unicorn.ts
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
"
|
|
2054
|
-
"
|
|
2055
|
-
"
|
|
2056
|
-
|
|
2057
|
-
};
|
|
2049
|
+
/**
|
|
2050
|
+
* Built-in presets of `eslint-plugin-unicorn`
|
|
2051
|
+
*/
|
|
2052
|
+
const PLUGIN_UNICORN_PRESET = [
|
|
2053
|
+
"all",
|
|
2054
|
+
"recommended",
|
|
2055
|
+
"unopinionated"
|
|
2056
|
+
];
|
|
2058
2057
|
/**
|
|
2059
2058
|
* Config for powerful rules
|
|
2060
2059
|
*
|
|
@@ -2063,82 +2062,102 @@ const disabledRules = {
|
|
|
2063
2062
|
* @param options - {@link ConfigUnicornOptions}
|
|
2064
2063
|
* @returns ESLint configs
|
|
2065
2064
|
*/
|
|
2066
|
-
const configUnicorn = (options = {}) =>
|
|
2067
|
-
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
|
|
2079
|
-
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
|
|
2096
|
-
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
|
|
2101
|
-
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
|
|
2110
|
-
|
|
2111
|
-
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
|
|
2119
|
-
|
|
2120
|
-
|
|
2121
|
-
|
|
2122
|
-
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2126
|
-
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2065
|
+
const configUnicorn = (options = {}) => {
|
|
2066
|
+
if (options.preset && PLUGIN_UNICORN_PRESET.includes(options.preset)) return [{
|
|
2067
|
+
name: `ntnyq/unicorn/${options.preset}`,
|
|
2068
|
+
plugins: { unicorn: pluginUnicorn },
|
|
2069
|
+
rules: {
|
|
2070
|
+
...pluginUnicorn.configs[options.preset].rules,
|
|
2071
|
+
...options.overrides
|
|
2072
|
+
}
|
|
2073
|
+
}];
|
|
2074
|
+
return [{
|
|
2075
|
+
name: "ntnyq/unicorn",
|
|
2076
|
+
plugins: { unicorn: pluginUnicorn },
|
|
2077
|
+
rules: {
|
|
2078
|
+
"unicorn/explicit-length-check": "off",
|
|
2079
|
+
"unicorn/prefer-global-this": "off",
|
|
2080
|
+
"unicorn/prefer-top-level-await": "off",
|
|
2081
|
+
"unicorn/consistent-assert": "error",
|
|
2082
|
+
"unicorn/consistent-existence-index-check": "error",
|
|
2083
|
+
"unicorn/error-message": "error",
|
|
2084
|
+
"unicorn/escape-case": "error",
|
|
2085
|
+
"unicorn/new-for-builtins": "error",
|
|
2086
|
+
"unicorn/no-accessor-recursion": "error",
|
|
2087
|
+
"unicorn/no-console-spaces": "error",
|
|
2088
|
+
"unicorn/no-for-loop": "error",
|
|
2089
|
+
"unicorn/no-hex-escape": "error",
|
|
2090
|
+
"unicorn/no-instanceof-builtins": "error",
|
|
2091
|
+
"unicorn/no-lonely-if": "error",
|
|
2092
|
+
"unicorn/no-new-buffer": "error",
|
|
2093
|
+
"unicorn/no-static-only-class": "error",
|
|
2094
|
+
"unicorn/no-typeof-undefined": "error",
|
|
2095
|
+
"unicorn/no-unnecessary-await": "error",
|
|
2096
|
+
"unicorn/prefer-class-fields": "error",
|
|
2097
|
+
"unicorn/prefer-import-meta-properties": "error",
|
|
2098
|
+
"unicorn/prefer-includes": "error",
|
|
2099
|
+
"unicorn/prefer-keyboard-event-key": "error",
|
|
2100
|
+
"unicorn/prefer-math-min-max": "error",
|
|
2101
|
+
"unicorn/prefer-math-trunc": "error",
|
|
2102
|
+
"unicorn/prefer-modern-math-apis": "error",
|
|
2103
|
+
"unicorn/prefer-negative-index": "error",
|
|
2104
|
+
"unicorn/prefer-node-protocol": "error",
|
|
2105
|
+
"unicorn/prefer-optional-catch-binding": "error",
|
|
2106
|
+
"unicorn/prefer-prototype-methods": "error",
|
|
2107
|
+
"unicorn/prefer-reflect-apply": "error",
|
|
2108
|
+
"unicorn/prefer-structured-clone": "error",
|
|
2109
|
+
"unicorn/switch-case-braces": ["error", "avoid"],
|
|
2110
|
+
"unicorn/catch-error-name": ["error", {
|
|
2111
|
+
name: "err",
|
|
2112
|
+
ignore: ["^_."]
|
|
2113
|
+
}],
|
|
2114
|
+
"unicorn/custom-error-definition": "error",
|
|
2115
|
+
"unicorn/no-useless-error-capture-stack-trace": "error",
|
|
2116
|
+
"unicorn/prefer-type-error": "error",
|
|
2117
|
+
"unicorn/throw-new-error": "error",
|
|
2118
|
+
"unicorn/no-zero-fractions": "error",
|
|
2119
|
+
"unicorn/number-literal-case": "error",
|
|
2120
|
+
"unicorn/prefer-number-properties": "error",
|
|
2121
|
+
"unicorn/prefer-bigint-literals": "error",
|
|
2122
|
+
"unicorn/better-regex": "off",
|
|
2123
|
+
"unicorn/prefer-regexp-test": "error",
|
|
2124
|
+
"unicorn/consistent-date-clone": "error",
|
|
2125
|
+
"unicorn/prefer-date-now": "error",
|
|
2126
|
+
"unicorn/prefer-code-point": "error",
|
|
2127
|
+
"unicorn/prefer-string-slice": "error",
|
|
2128
|
+
"unicorn/prefer-string-starts-ends-with": "error",
|
|
2129
|
+
"unicorn/prefer-string-trim-start-end": "error",
|
|
2130
|
+
"unicorn/no-invalid-remove-event-listener": "error",
|
|
2131
|
+
"unicorn/prefer-add-event-listener": "error",
|
|
2132
|
+
"unicorn/prefer-classlist-toggle": "error",
|
|
2133
|
+
"unicorn/prefer-dom-node-append": "error",
|
|
2134
|
+
"unicorn/prefer-dom-node-dataset": "error",
|
|
2135
|
+
"unicorn/prefer-dom-node-remove": "error",
|
|
2136
|
+
"unicorn/prefer-dom-node-text-content": "error",
|
|
2137
|
+
"unicorn/prefer-modern-dom-apis": "error",
|
|
2138
|
+
"unicorn/prefer-query-selector": "error",
|
|
2139
|
+
"unicorn/no-array-callback-reference": "off",
|
|
2140
|
+
"unicorn/no-array-reverse": "off",
|
|
2141
|
+
"unicorn/no-array-sort": "off",
|
|
2142
|
+
"unicorn/no-array-method-this-argument": "error",
|
|
2143
|
+
"unicorn/no-new-array": "error",
|
|
2144
|
+
"unicorn/no-unnecessary-array-flat-depth": "error",
|
|
2145
|
+
"unicorn/no-unnecessary-array-splice-count": "error",
|
|
2146
|
+
"unicorn/no-unnecessary-slice-end": "error",
|
|
2147
|
+
"unicorn/prefer-array-find": "error",
|
|
2148
|
+
"unicorn/prefer-array-flat-map": "error",
|
|
2149
|
+
"unicorn/prefer-array-index-of": "error",
|
|
2150
|
+
"unicorn/prefer-array-some": "error",
|
|
2151
|
+
"unicorn/prefer-single-call": "error",
|
|
2152
|
+
"unicorn/require-array-join-separator": "error",
|
|
2153
|
+
"unicorn/prefer-set-has": "error",
|
|
2154
|
+
"unicorn/prefer-set-size": "error",
|
|
2155
|
+
"unicorn/require-module-specifiers": "off",
|
|
2156
|
+
"unicorn/require-module-attributes": "error",
|
|
2157
|
+
...options.overrides
|
|
2158
|
+
}
|
|
2159
|
+
}];
|
|
2160
|
+
};
|
|
2142
2161
|
|
|
2143
2162
|
//#endregion
|
|
2144
2163
|
//#region src/configs/deMorgan.ts
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ntnyq/eslint-config",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "5.
|
|
4
|
+
"version": "5.5.0",
|
|
5
5
|
"description": "An opinionated ESLint config preset of ntnyq",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"eslint",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"tag": "latest"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
|
-
"@html-eslint/eslint-plugin": "^0.
|
|
40
|
-
"@html-eslint/parser": "^0.
|
|
39
|
+
"@html-eslint/eslint-plugin": "^0.46.0",
|
|
40
|
+
"@html-eslint/parser": "^0.46.0",
|
|
41
41
|
"astro-eslint-parser": "^1.2.2",
|
|
42
42
|
"eslint": "^9.20.0",
|
|
43
43
|
"eslint-plugin-astro": "^1.3.1",
|
|
@@ -88,10 +88,10 @@
|
|
|
88
88
|
"@antfu/install-pkg": "^1.1.0",
|
|
89
89
|
"@clack/prompts": "^0.11.0",
|
|
90
90
|
"@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
|
|
91
|
-
"@eslint/js": "^9.
|
|
92
|
-
"@eslint/markdown": "^7.
|
|
93
|
-
"@unocss/eslint-plugin": "^66.
|
|
94
|
-
"@vitest/eslint-plugin": "^1.3.
|
|
91
|
+
"@eslint/js": "^9.35.0",
|
|
92
|
+
"@eslint/markdown": "^7.2.0",
|
|
93
|
+
"@unocss/eslint-plugin": "^66.5.1",
|
|
94
|
+
"@vitest/eslint-plugin": "^1.3.9",
|
|
95
95
|
"eslint-config-flat-gitignore": "^2.1.0",
|
|
96
96
|
"eslint-flat-config-utils": "^2.1.1",
|
|
97
97
|
"eslint-import-resolver-typescript": "^4.4.4",
|
|
@@ -103,7 +103,7 @@
|
|
|
103
103
|
"eslint-plugin-depend": "^1.2.0",
|
|
104
104
|
"eslint-plugin-github-action": "^0.0.16",
|
|
105
105
|
"eslint-plugin-import-x": "^4.16.1",
|
|
106
|
-
"eslint-plugin-jsdoc": "^54.
|
|
106
|
+
"eslint-plugin-jsdoc": "^54.5.0",
|
|
107
107
|
"eslint-plugin-jsonc": "^2.20.1",
|
|
108
108
|
"eslint-plugin-n": "^17.21.3",
|
|
109
109
|
"eslint-plugin-no-only-tests": "^3.3.0",
|
|
@@ -114,41 +114,40 @@
|
|
|
114
114
|
"eslint-plugin-regexp": "^2.10.0",
|
|
115
115
|
"eslint-plugin-svgo": "^0.11.1",
|
|
116
116
|
"eslint-plugin-toml": "^0.12.0",
|
|
117
|
-
"eslint-plugin-unicorn": "^
|
|
117
|
+
"eslint-plugin-unicorn": "^61.0.1",
|
|
118
118
|
"eslint-plugin-vue": "^10.4.0",
|
|
119
119
|
"eslint-plugin-yml": "^1.18.0",
|
|
120
120
|
"eslint-processor-vue-blocks": "^2.0.0",
|
|
121
121
|
"globals": "^16.3.0",
|
|
122
122
|
"jsonc-eslint-parser": "^2.4.0",
|
|
123
123
|
"local-pkg": "^1.1.2",
|
|
124
|
-
"prettier": "^3.6.2",
|
|
125
124
|
"toml-eslint-parser": "^0.10.0",
|
|
126
|
-
"typescript-eslint": "^8.
|
|
125
|
+
"typescript-eslint": "^8.42.0",
|
|
127
126
|
"vue-eslint-parser": "^10.2.0",
|
|
128
127
|
"yaml-eslint-parser": "^1.3.0"
|
|
129
128
|
},
|
|
130
129
|
"devDependencies": {
|
|
131
130
|
"@ntnyq/prettier-config": "^3.0.1",
|
|
132
|
-
"@types/node": "^24.3.
|
|
133
|
-
"@typescript-eslint/utils": "^8.
|
|
131
|
+
"@types/node": "^24.3.1",
|
|
132
|
+
"@typescript-eslint/utils": "^8.42.0",
|
|
134
133
|
"bumpp": "^10.2.3",
|
|
135
134
|
"consola": "^3.4.2",
|
|
136
|
-
"eslint": "^9.
|
|
137
|
-
"eslint-plugin-eslint-plugin": "^7.0.0",
|
|
135
|
+
"eslint": "^9.35.0",
|
|
138
136
|
"eslint-typegen": "^2.3.0",
|
|
139
137
|
"husky": "^9.1.7",
|
|
140
138
|
"jiti": "^2.5.1",
|
|
141
139
|
"nano-staged": "^0.8.0",
|
|
142
140
|
"npm-run-all2": "^8.0.4",
|
|
143
|
-
"
|
|
144
|
-
"
|
|
145
|
-
"
|
|
141
|
+
"prettier": "^3.6.2",
|
|
142
|
+
"tinyglobby": "^0.2.15",
|
|
143
|
+
"tsdown": "^0.14.2",
|
|
144
|
+
"tsx": "^4.20.5",
|
|
146
145
|
"typescript": "^5.9.2",
|
|
147
146
|
"uncase": "^0.2.0",
|
|
148
147
|
"vitest": "^3.2.4"
|
|
149
148
|
},
|
|
150
149
|
"engines": {
|
|
151
|
-
"node": "
|
|
150
|
+
"node": "^20.11.0 || >=21.1.0"
|
|
152
151
|
},
|
|
153
152
|
"nano-staged": {
|
|
154
153
|
"*.{js,ts,mjs,cjs,md,vue,svg,yml,yaml,toml,json}": "eslint --fix",
|