@lntvow/eslint-config 9.24.5 → 9.24.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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 lntvow
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/dist/index.d.cts CHANGED
@@ -1258,7 +1258,7 @@ interface RuleOptions {
1258
1258
  * Disallow identifiers from shadowing restricted names
1259
1259
  * @see https://eslint.org/docs/latest/rules/no-shadow-restricted-names
1260
1260
  */
1261
- 'no-shadow-restricted-names'?: Linter.RuleEntry<[]>
1261
+ 'no-shadow-restricted-names'?: Linter.RuleEntry<NoShadowRestrictedNames>
1262
1262
  /**
1263
1263
  * Disallow spacing between function identifiers and their applications (deprecated)
1264
1264
  * @see https://eslint.org/docs/latest/rules/no-spaced-func
@@ -1308,6 +1308,11 @@ interface RuleOptions {
1308
1308
  * @deprecated
1309
1309
  */
1310
1310
  'no-trailing-spaces'?: Linter.RuleEntry<NoTrailingSpaces>
1311
+ /**
1312
+ * Disallow `let` or `var` variables that are read but never assigned
1313
+ * @see https://eslint.org/docs/latest/rules/no-unassigned-vars
1314
+ */
1315
+ 'no-unassigned-vars'?: Linter.RuleEntry<[]>
1311
1316
  /**
1312
1317
  * Disallow the use of undeclared variables unless mentioned in `/*global *\/` comments
1313
1318
  * @see https://eslint.org/docs/latest/rules/no-undef
@@ -1432,7 +1437,7 @@ interface RuleOptions {
1432
1437
  * Disallow unnecessary escape characters
1433
1438
  * @see https://eslint.org/docs/latest/rules/no-useless-escape
1434
1439
  */
1435
- 'no-useless-escape'?: Linter.RuleEntry<[]>
1440
+ 'no-useless-escape'?: Linter.RuleEntry<NoUselessEscape>
1436
1441
  /**
1437
1442
  * Disallow renaming import, export, and destructured assignments to the same name
1438
1443
  * @see https://eslint.org/docs/latest/rules/no-useless-rename
@@ -4935,6 +4940,8 @@ type CapitalizedComments = []|[("always" | "never")]|[("always" | "never"), ({
4935
4940
  type ClassMethodsUseThis = []|[{
4936
4941
  exceptMethods?: string[]
4937
4942
  enforceForClassFields?: boolean
4943
+ ignoreOverrideMethods?: boolean
4944
+ ignoreClassesWithImplements?: ("all" | "public-fields")
4938
4945
  }]
4939
4946
  // ----- comma-dangle -----
4940
4947
  type CommaDangle = []|[(_CommaDangleValue | {
@@ -5012,6 +5019,7 @@ type _FuncNamesValue = ("always" | "as-needed" | "never")
5012
5019
  // ----- func-style -----
5013
5020
  type FuncStyle = []|[("declaration" | "expression")]|[("declaration" | "expression"), {
5014
5021
  allowArrowFunctions?: boolean
5022
+ allowTypeAnnotation?: boolean
5015
5023
  overrides?: {
5016
5024
  namedExports?: ("declaration" | "expression" | "ignore")
5017
5025
  }
@@ -5864,6 +5872,8 @@ type MaxNestedCallbacks = []|[(number | {
5864
5872
  type MaxParams = []|[(number | {
5865
5873
  maximum?: number
5866
5874
  max?: number
5875
+
5876
+ countVoidThis?: boolean
5867
5877
  })]
5868
5878
  // ----- max-statements -----
5869
5879
  type MaxStatements = []|[(number | {
@@ -5938,7 +5948,7 @@ type NoEmpty = []|[{
5938
5948
  }]
5939
5949
  // ----- no-empty-function -----
5940
5950
  type NoEmptyFunction = []|[{
5941
- allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "asyncFunctions" | "asyncMethods")[]
5951
+ allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "asyncFunctions" | "asyncMethods" | "privateConstructors" | "protectedConstructors" | "decoratedFunctions" | "overrideMethods")[]
5942
5952
  }]
5943
5953
  // ----- no-empty-pattern -----
5944
5954
  type NoEmptyPattern = []|[{
@@ -6030,6 +6040,10 @@ type NoMagicNumbers = []|[{
6030
6040
  ignoreArrayIndexes?: boolean
6031
6041
  ignoreDefaultValues?: boolean
6032
6042
  ignoreClassFieldInitialValues?: boolean
6043
+ ignoreEnums?: boolean
6044
+ ignoreNumericLiteralTypes?: boolean
6045
+ ignoreReadonlyClassProperties?: boolean
6046
+ ignoreTypeIndexes?: boolean
6033
6047
  }]
6034
6048
  // ----- no-misleading-character-class -----
6035
6049
  type NoMisleadingCharacterClass = []|[{
@@ -6140,13 +6154,9 @@ type NoRestrictedModules = ((string | {
6140
6154
  }[])
6141
6155
  // ----- no-restricted-properties -----
6142
6156
  type NoRestrictedProperties = ({
6143
- object: string
6144
- property?: string
6145
- message?: string
6157
+ [k: string]: unknown | undefined
6146
6158
  } | {
6147
- object?: string
6148
- property: string
6149
- message?: string
6159
+ [k: string]: unknown | undefined
6150
6160
  })[]
6151
6161
  // ----- no-restricted-syntax -----
6152
6162
  type NoRestrictedSyntax = (string | {
@@ -6166,9 +6176,15 @@ type NoSequences = []|[{
6166
6176
  // ----- no-shadow -----
6167
6177
  type NoShadow = []|[{
6168
6178
  builtinGlobals?: boolean
6169
- hoist?: ("all" | "functions" | "never")
6179
+ hoist?: ("all" | "functions" | "never" | "types" | "functions-and-types")
6170
6180
  allow?: string[]
6171
6181
  ignoreOnInitialization?: boolean
6182
+ ignoreTypeValueShadow?: boolean
6183
+ ignoreFunctionTypeParameterNameValueShadow?: boolean
6184
+ }]
6185
+ // ----- no-shadow-restricted-names -----
6186
+ type NoShadowRestrictedNames = []|[{
6187
+ reportGlobalThis?: boolean
6172
6188
  }]
6173
6189
  // ----- no-sync -----
6174
6190
  type NoSync = []|[{
@@ -6221,6 +6237,7 @@ type NoUnusedExpressions = []|[{
6221
6237
  allowTernary?: boolean
6222
6238
  allowTaggedTemplates?: boolean
6223
6239
  enforceForJSX?: boolean
6240
+ ignoreDirectives?: boolean
6224
6241
  }]
6225
6242
  // ----- no-unused-vars -----
6226
6243
  type NoUnusedVars = []|[(("all" | "local") | {
@@ -6241,11 +6258,18 @@ type NoUseBeforeDefine = []|[("nofunc" | {
6241
6258
  classes?: boolean
6242
6259
  variables?: boolean
6243
6260
  allowNamedExports?: boolean
6261
+ enums?: boolean
6262
+ typedefs?: boolean
6263
+ ignoreTypeReferences?: boolean
6244
6264
  })]
6245
6265
  // ----- no-useless-computed-key -----
6246
6266
  type NoUselessComputedKey = []|[{
6247
6267
  enforceForClassMembers?: boolean
6248
6268
  }]
6269
+ // ----- no-useless-escape -----
6270
+ type NoUselessEscape = []|[{
6271
+ allowRegexCharacters?: string[]
6272
+ }]
6249
6273
  // ----- no-useless-rename -----
6250
6274
  type NoUselessRename = []|[{
6251
6275
  ignoreDestructuring?: boolean
@@ -8705,6 +8729,7 @@ type TsNoUnusedExpressions = []|[{
8705
8729
  allowTernary?: boolean
8706
8730
  allowTaggedTemplates?: boolean
8707
8731
  enforceForJSX?: boolean
8732
+ ignoreDirectives?: boolean
8708
8733
  }]
8709
8734
  // ----- ts/no-unused-vars -----
8710
8735
  type TsNoUnusedVars = []|[(("all" | "local") | {
package/dist/index.d.ts CHANGED
@@ -1258,7 +1258,7 @@ interface RuleOptions {
1258
1258
  * Disallow identifiers from shadowing restricted names
1259
1259
  * @see https://eslint.org/docs/latest/rules/no-shadow-restricted-names
1260
1260
  */
1261
- 'no-shadow-restricted-names'?: Linter.RuleEntry<[]>
1261
+ 'no-shadow-restricted-names'?: Linter.RuleEntry<NoShadowRestrictedNames>
1262
1262
  /**
1263
1263
  * Disallow spacing between function identifiers and their applications (deprecated)
1264
1264
  * @see https://eslint.org/docs/latest/rules/no-spaced-func
@@ -1308,6 +1308,11 @@ interface RuleOptions {
1308
1308
  * @deprecated
1309
1309
  */
1310
1310
  'no-trailing-spaces'?: Linter.RuleEntry<NoTrailingSpaces>
1311
+ /**
1312
+ * Disallow `let` or `var` variables that are read but never assigned
1313
+ * @see https://eslint.org/docs/latest/rules/no-unassigned-vars
1314
+ */
1315
+ 'no-unassigned-vars'?: Linter.RuleEntry<[]>
1311
1316
  /**
1312
1317
  * Disallow the use of undeclared variables unless mentioned in `/*global *\/` comments
1313
1318
  * @see https://eslint.org/docs/latest/rules/no-undef
@@ -1432,7 +1437,7 @@ interface RuleOptions {
1432
1437
  * Disallow unnecessary escape characters
1433
1438
  * @see https://eslint.org/docs/latest/rules/no-useless-escape
1434
1439
  */
1435
- 'no-useless-escape'?: Linter.RuleEntry<[]>
1440
+ 'no-useless-escape'?: Linter.RuleEntry<NoUselessEscape>
1436
1441
  /**
1437
1442
  * Disallow renaming import, export, and destructured assignments to the same name
1438
1443
  * @see https://eslint.org/docs/latest/rules/no-useless-rename
@@ -4935,6 +4940,8 @@ type CapitalizedComments = []|[("always" | "never")]|[("always" | "never"), ({
4935
4940
  type ClassMethodsUseThis = []|[{
4936
4941
  exceptMethods?: string[]
4937
4942
  enforceForClassFields?: boolean
4943
+ ignoreOverrideMethods?: boolean
4944
+ ignoreClassesWithImplements?: ("all" | "public-fields")
4938
4945
  }]
4939
4946
  // ----- comma-dangle -----
4940
4947
  type CommaDangle = []|[(_CommaDangleValue | {
@@ -5012,6 +5019,7 @@ type _FuncNamesValue = ("always" | "as-needed" | "never")
5012
5019
  // ----- func-style -----
5013
5020
  type FuncStyle = []|[("declaration" | "expression")]|[("declaration" | "expression"), {
5014
5021
  allowArrowFunctions?: boolean
5022
+ allowTypeAnnotation?: boolean
5015
5023
  overrides?: {
5016
5024
  namedExports?: ("declaration" | "expression" | "ignore")
5017
5025
  }
@@ -5864,6 +5872,8 @@ type MaxNestedCallbacks = []|[(number | {
5864
5872
  type MaxParams = []|[(number | {
5865
5873
  maximum?: number
5866
5874
  max?: number
5875
+
5876
+ countVoidThis?: boolean
5867
5877
  })]
5868
5878
  // ----- max-statements -----
5869
5879
  type MaxStatements = []|[(number | {
@@ -5938,7 +5948,7 @@ type NoEmpty = []|[{
5938
5948
  }]
5939
5949
  // ----- no-empty-function -----
5940
5950
  type NoEmptyFunction = []|[{
5941
- allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "asyncFunctions" | "asyncMethods")[]
5951
+ allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "asyncFunctions" | "asyncMethods" | "privateConstructors" | "protectedConstructors" | "decoratedFunctions" | "overrideMethods")[]
5942
5952
  }]
5943
5953
  // ----- no-empty-pattern -----
5944
5954
  type NoEmptyPattern = []|[{
@@ -6030,6 +6040,10 @@ type NoMagicNumbers = []|[{
6030
6040
  ignoreArrayIndexes?: boolean
6031
6041
  ignoreDefaultValues?: boolean
6032
6042
  ignoreClassFieldInitialValues?: boolean
6043
+ ignoreEnums?: boolean
6044
+ ignoreNumericLiteralTypes?: boolean
6045
+ ignoreReadonlyClassProperties?: boolean
6046
+ ignoreTypeIndexes?: boolean
6033
6047
  }]
6034
6048
  // ----- no-misleading-character-class -----
6035
6049
  type NoMisleadingCharacterClass = []|[{
@@ -6140,13 +6154,9 @@ type NoRestrictedModules = ((string | {
6140
6154
  }[])
6141
6155
  // ----- no-restricted-properties -----
6142
6156
  type NoRestrictedProperties = ({
6143
- object: string
6144
- property?: string
6145
- message?: string
6157
+ [k: string]: unknown | undefined
6146
6158
  } | {
6147
- object?: string
6148
- property: string
6149
- message?: string
6159
+ [k: string]: unknown | undefined
6150
6160
  })[]
6151
6161
  // ----- no-restricted-syntax -----
6152
6162
  type NoRestrictedSyntax = (string | {
@@ -6166,9 +6176,15 @@ type NoSequences = []|[{
6166
6176
  // ----- no-shadow -----
6167
6177
  type NoShadow = []|[{
6168
6178
  builtinGlobals?: boolean
6169
- hoist?: ("all" | "functions" | "never")
6179
+ hoist?: ("all" | "functions" | "never" | "types" | "functions-and-types")
6170
6180
  allow?: string[]
6171
6181
  ignoreOnInitialization?: boolean
6182
+ ignoreTypeValueShadow?: boolean
6183
+ ignoreFunctionTypeParameterNameValueShadow?: boolean
6184
+ }]
6185
+ // ----- no-shadow-restricted-names -----
6186
+ type NoShadowRestrictedNames = []|[{
6187
+ reportGlobalThis?: boolean
6172
6188
  }]
6173
6189
  // ----- no-sync -----
6174
6190
  type NoSync = []|[{
@@ -6221,6 +6237,7 @@ type NoUnusedExpressions = []|[{
6221
6237
  allowTernary?: boolean
6222
6238
  allowTaggedTemplates?: boolean
6223
6239
  enforceForJSX?: boolean
6240
+ ignoreDirectives?: boolean
6224
6241
  }]
6225
6242
  // ----- no-unused-vars -----
6226
6243
  type NoUnusedVars = []|[(("all" | "local") | {
@@ -6241,11 +6258,18 @@ type NoUseBeforeDefine = []|[("nofunc" | {
6241
6258
  classes?: boolean
6242
6259
  variables?: boolean
6243
6260
  allowNamedExports?: boolean
6261
+ enums?: boolean
6262
+ typedefs?: boolean
6263
+ ignoreTypeReferences?: boolean
6244
6264
  })]
6245
6265
  // ----- no-useless-computed-key -----
6246
6266
  type NoUselessComputedKey = []|[{
6247
6267
  enforceForClassMembers?: boolean
6248
6268
  }]
6269
+ // ----- no-useless-escape -----
6270
+ type NoUselessEscape = []|[{
6271
+ allowRegexCharacters?: string[]
6272
+ }]
6249
6273
  // ----- no-useless-rename -----
6250
6274
  type NoUselessRename = []|[{
6251
6275
  ignoreDestructuring?: boolean
@@ -8705,6 +8729,7 @@ type TsNoUnusedExpressions = []|[{
8705
8729
  allowTernary?: boolean
8706
8730
  allowTaggedTemplates?: boolean
8707
8731
  enforceForJSX?: boolean
8732
+ ignoreDirectives?: boolean
8708
8733
  }]
8709
8734
  // ----- ts/no-unused-vars -----
8710
8735
  type TsNoUnusedVars = []|[(("all" | "local") | {
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "@lntvow/eslint-config",
3
- "version": "9.24.5",
4
- "description": "A customizable eslint configuration",
3
+ "version": "9.24.7",
4
+ "type": "module",
5
+ "description": "Customizable eslint configuration",
5
6
  "keywords": [
6
7
  "eslint",
7
8
  "eslint-config"
@@ -14,7 +15,6 @@
14
15
  "files": [
15
16
  "dist"
16
17
  ],
17
- "type": "module",
18
18
  "types": "./dist/index.d.ts",
19
19
  "main": "./dist/index.cjs",
20
20
  "module": "./dist/index.mjs",
@@ -25,18 +25,6 @@
25
25
  "require": "./dist/index.cjs"
26
26
  }
27
27
  },
28
- "devDependencies": {
29
- "@lntvow/dev": "^4.4.14",
30
- "@types/node": "^24.0.3",
31
- "axios": "^1.10.0",
32
- "cheerio": "1.1.0",
33
- "eslint-typegen": "^2.2.0",
34
- "tsup": "^8.5.0",
35
- "unbuild": "^3.5.0",
36
- "tsx": "^4.20.3",
37
- "node-cron": "^4.1.0",
38
- "simple-git": "^3.28.0"
39
- },
40
28
  "peerDependencies": {
41
29
  "eslint": ">=9.0.0",
42
30
  "prettier": ">=3.1.0"
@@ -46,7 +34,6 @@
46
34
  "@eslint/js": "^9.23.0",
47
35
  "@lntvow/utils": "^3.2.6",
48
36
  "@stylistic/eslint-plugin": "^2.10.1",
49
- "eslint": "^9.23.0",
50
37
  "eslint-config-prettier": "^10.1.1",
51
38
  "eslint-flat-config-utils": "^0.4.0",
52
39
  "eslint-plugin-import-x": "^4.6.1",
@@ -60,17 +47,41 @@
60
47
  "typescript": "^5.8.2",
61
48
  "typescript-eslint": "^8.28.0",
62
49
  "vue-eslint-parser": "^9.4.3",
63
- "@lntvow/eslint-plugin": "^9.24.5"
50
+ "@lntvow/eslint-plugin": "^9.24.7"
51
+ },
52
+ "devDependencies": {
53
+ "@commitlint/cli": "^19.8.1",
54
+ "@commitlint/config-conventional": "^19.8.1",
55
+ "@lntvow/dev": "^5.0.2",
56
+ "@lntvow/eslint-config": "^9.24.6",
57
+ "@types/estree": "^1.0.8",
58
+ "@types/node": "^24.0.3",
59
+ "axios": "^1.10.0",
60
+ "bumpp": "^10.2.0",
61
+ "cheerio": "1.1.0",
62
+ "commitizen": "^4.3.1",
63
+ "cz-conventional-changelog": "^3.3.0",
64
+ "eslint": "^9.29.0",
65
+ "eslint-typegen": "^2.2.0",
66
+ "lint-staged": "^16.1.2",
67
+ "node-cron": "^4.1.0",
68
+ "npm-run-all": "^4.1.5",
69
+ "prettier": "^3.5.3",
70
+ "simple-git": "^3.28.0",
71
+ "simple-git-hooks": "^2.13.0",
72
+ "tsup": "^8.5.0",
73
+ "tsx": "^4.20.3",
74
+ "unbuild": "^3.5.0"
64
75
  },
65
76
  "scripts": {
66
77
  "postinstall": "simple-git-hooks",
67
78
  "rimraf": "rimraf ./node_modules/ && pnpm -r rimraf",
79
+ "ncu": "ncu -u --reject @types/node && pnpm install",
68
80
  "commit": "git add . && git-cz && git push",
69
81
  "release": "git add . && bumpp package.json packages/*/package.json --all --no-tag --no-print-commits",
70
82
  "lint:eslint": "eslint \"src/**/*.{js,jsx,ts,tsx,vue}\" --fix",
71
83
  "lint:tsc": "tsc --noEmit",
72
84
  "lint": "run-p lint:eslint lint:tsc",
73
- "ncu": "ncu -u && pnpm install",
74
85
  "dev": "pnpm -r dev && tsup --config tsup.dev.config.ts",
75
86
  "typegen": "pnpm -r build && tsx scripts/typegen.ts",
76
87
  "build": "pnpm typegen && tsup",