eslint-config-heck 1.53.0 → 2.1.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/biomeLinting.json CHANGED
@@ -10,6 +10,7 @@
10
10
  "noBlankTarget": "error",
11
11
  "noDistractingElements": "error",
12
12
  "noHeaderScope": "error",
13
+ "noInteractiveElementToNoninteractiveRole": "error",
13
14
  "noNoninteractiveElementToInteractiveRole": "error",
14
15
  "noNoninteractiveTabindex": "error",
15
16
  "noPositiveTabindex": "error",
@@ -18,6 +19,7 @@
18
19
  "noSvgWithoutTitle": "error",
19
20
  "useAltText": "error",
20
21
  "useAnchorContent": "error",
22
+ "useAriaActivedescendantWithTabindex": "error",
21
23
  "useAriaPropsForRole": "error",
22
24
  "useButtonType": "error",
23
25
  "useHeadingContent": "error",
@@ -38,6 +40,7 @@
38
40
  "noForEach": "error",
39
41
  "noMultipleSpacesInRegularExpressionLiterals": "error",
40
42
  "noStaticOnlyClass": "error",
43
+ "noThisInStatic": "error",
41
44
  "noUselessCatch": "error",
42
45
  "noUselessConstructor": "error",
43
46
  "noUselessEmptyExport": "error",
@@ -49,6 +52,7 @@
49
52
  "noUselessTypeConstraint": "error",
50
53
  "noVoid": "error",
51
54
  "noWith": "error",
55
+ "useArrowFunction": "error",
52
56
  "useFlatMap": "error",
53
57
  "useLiteralKeys": "error",
54
58
  "useOptionalChain": "error",
@@ -60,11 +64,12 @@
60
64
  "noConstAssign": "error",
61
65
  "noConstantCondition": "error",
62
66
  "noConstructorReturn": "error",
67
+ "noEmptyCharacterClassInRegex": "error",
63
68
  "noEmptyPattern": "error",
64
69
  "noGlobalObjectCalls": "error",
65
70
  "noInnerDeclarations": "error",
66
71
  "noInvalidConstructorSuper": "error",
67
- "noNewSymbol": "error",
72
+ "noInvalidNewBuiltin": "error",
68
73
  "noNonoctalDecimalEscape": "error",
69
74
  "noPrecisionLoss": "error",
70
75
  "noRenderReturnValue": "error",
@@ -109,6 +114,8 @@
109
114
  "noRestrictedGlobals": "off",
110
115
  "noShoutyConstants": "error",
111
116
  "noUnusedTemplateLiteral": "error",
117
+ "noUselessElse": "error",
118
+ "useAsConstAssertion": "error",
112
119
  "noVar": "error",
113
120
  "useBlockStatements": "error",
114
121
  "useCollapsedElseIf": "error",
@@ -122,12 +129,14 @@
122
129
  "useNumericLiterals": "error",
123
130
  "useSelfClosingElements": "error",
124
131
  "useShorthandArrayType": "error",
132
+ "useShorthandAssign": "error",
125
133
  "useSingleCaseStatement": "error",
126
134
  "useSingleVarDeclarator": "error",
127
135
  "useTemplate": "error",
128
136
  "useWhile": "error"
129
137
  },
130
138
  "suspicious": {
139
+ "noApproximativeNumericConstant": "error",
131
140
  "noArrayIndexKey": "error",
132
141
  "noAssignInExpressions": "error",
133
142
  "noAsyncPromiseExecutor": "error",
@@ -156,6 +165,8 @@
156
165
  "noGlobalIsNan": "error",
157
166
  "noImportAssign": "error",
158
167
  "noLabelVar": "error",
168
+ "noMisleadingInstantiator": "error",
169
+ "noMisrefactoredShorthandAssign": "error",
159
170
  "noPrototypeBuiltins": "error",
160
171
  "noRedeclare": "error",
161
172
  "noRedundantUseStrict": "error",
@@ -171,23 +182,19 @@
171
182
  "useValidTypeof": "error"
172
183
  },
173
184
  "nursery": {
174
- "noApproximativeNumericConstant": "error",
185
+ "noAriaHiddenOnFocusable": "error",
186
+ "noDefaultExport": "error",
175
187
  "noDuplicateJsonKeys": "error",
176
188
  "noEmptyBlockStatements": "error",
177
- "noEmptyCharacterClassInRegex": "error",
178
- "noInteractiveElementToNoninteractiveRole": "error",
179
- "noInvalidNewBuiltin": "error",
180
- "noMisleadingInstantiator": "error",
181
- "noMisrefactoredShorthandAssign": "error",
189
+ "noImplicitAnyLet": "error",
182
190
  "noUnusedImports": "error",
183
- "noUselessElse": "error",
191
+ "noUnusedPrivateClassMembers": "error",
184
192
  "noUselessLoneBlockStatements": "off",
185
- "useAriaActivedescendantWithTabindex": "error",
186
- "useArrowFunction": "error",
187
- "useAsConstAssertion": "error",
193
+ "useAwait": "error",
188
194
  "useGroupedTypeImport": "error",
189
195
  "useImportRestrictions": "error",
190
- "useShorthandAssign": "error"
196
+ "useRegexLiterals": "error",
197
+ "useValidAriaRole": "error"
191
198
  }
192
199
  }
193
200
  }
package/node.js CHANGED
@@ -1054,6 +1054,7 @@ const overrides = [
1054
1054
  "@typescript-eslint/no-unsafe-enum-comparison": "error",
1055
1055
  "@typescript-eslint/no-unsafe-member-access": "error",
1056
1056
  "@typescript-eslint/no-unsafe-return": "error",
1057
+ "@typescript-eslint/no-unsafe-unary-minus": "error",
1057
1058
  "@typescript-eslint/no-useless-empty-export": "error",
1058
1059
  "@typescript-eslint/no-var-requires": "error",
1059
1060
  "@typescript-eslint/non-nullable-type-assertion-style": "off",
package/nodeWithBiome.js CHANGED
@@ -895,6 +895,7 @@ const overrides = [
895
895
  "@typescript-eslint/no-unsafe-enum-comparison": "error",
896
896
  "@typescript-eslint/no-unsafe-member-access": "error",
897
897
  "@typescript-eslint/no-unsafe-return": "error",
898
+ "@typescript-eslint/no-unsafe-unary-minus": "error",
898
899
  "@typescript-eslint/no-useless-empty-export": "off",
899
900
  "@typescript-eslint/no-var-requires": "error",
900
901
  "@typescript-eslint/non-nullable-type-assertion-style": "off",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-config-heck",
3
- "version": "1.53.0",
3
+ "version": "2.1.0",
4
4
  "description": "Contains an ESLint configuration for ES2015+, TypeScript, and React.",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -17,9 +17,9 @@
17
17
  "author": "atheck",
18
18
  "license": "MIT",
19
19
  "dependencies": {
20
- "@typescript-eslint/eslint-plugin": "6.9.1",
21
- "@typescript-eslint/parser": "6.9.1",
22
- "eslint": "8.52.0",
20
+ "@typescript-eslint/eslint-plugin": "6.13.0",
21
+ "@typescript-eslint/parser": "6.13.0",
22
+ "eslint": "8.54.0",
23
23
  "eslint-import-resolver-typescript": "3.6.1",
24
24
  "eslint-plugin-deprecation": "2.0.0",
25
25
  "eslint-plugin-import": "2.29.0",
@@ -27,19 +27,19 @@
27
27
  "eslint-plugin-react": "7.33.2",
28
28
  "eslint-plugin-react-hooks": "4.6.0",
29
29
  "eslint-plugin-react-native": "4.1.0",
30
- "eslint-plugin-testing-library": "6.1.0",
30
+ "eslint-plugin-testing-library": "6.2.0",
31
31
  "eslint-plugin-typescript-heck": "1.3.1",
32
32
  "eslint-plugin-unicorn": "49.0.0",
33
- "typescript": "5.2.2"
33
+ "typescript": "5.3.2"
34
34
  },
35
35
  "devDependencies": {
36
- "@biomejs/biome": "1.3.3",
37
- "@testing-library/react": "14.0.0",
38
- "@types/jest": "29.5.7",
39
- "@types/react": "18.2.33",
36
+ "@biomejs/biome": "1.4.0",
37
+ "@testing-library/react": "14.1.2",
38
+ "@types/jest": "29.5.10",
39
+ "@types/react": "18.2.38",
40
40
  "jest": "29.7.0",
41
41
  "react": "18.2.0",
42
- "semantic-release": "22.0.6"
42
+ "semantic-release": "22.0.8"
43
43
  },
44
44
  "repository": {
45
45
  "type": "git",
package/readme.md CHANGED
@@ -62,7 +62,7 @@ If you are using react-native, you can enable react-native specific rules:
62
62
 
63
63
  ### No formatting
64
64
 
65
- To disable some of the formatting rules (when using a formatter like prettier or Rome) you can use this configuration:
65
+ To disable some of the formatting rules (when using a formatter like prettier or Biome) you can use this configuration:
66
66
 
67
67
  ~~~json
68
68
  {
@@ -88,15 +88,3 @@ If you are using Biome you can also extend your Biome config with the "biomeLint
88
88
  "extends": ["./node_modules/eslint-config-heck/biomeLinting.json"]
89
89
  }
90
90
  ~~~
91
-
92
- ### Exclude rules included in Rome
93
-
94
- To disable some the rules that are already included in Rome you can use this configuration:
95
-
96
- ~~~json
97
- {
98
- "extends": ["heck/node", "heck/excludeRome"]
99
- }
100
- ~~~
101
-
102
- **Attention:** Since Rome is no longer maintained, this will not be the case with this ruleset. Use the Biome rulesets instead.
package/excludeRome.js DELETED
@@ -1,122 +0,0 @@
1
- "use strict";
2
-
3
- module.exports = {
4
- rules: {
5
- // ESLint
6
- "constructor-super": "off",
7
- "default-case-last": "off",
8
- "default-param-last": "off",
9
- eqeqeq: "off",
10
- "for-direction": "off",
11
- "no-async-promise-executor": "off",
12
- "no-case-declarations": "off",
13
- "no-class-assign": "off",
14
- "no-compare-neg-zero": "off",
15
- "no-cond-assign": "off",
16
- "no-const-assign": "off",
17
- "no-constructor-return": "off",
18
- "no-debugger": "off",
19
- "no-delete-var": "off",
20
- "no-dupe-args": "off",
21
- "no-dupe-class-members": "off",
22
- "no-dupe-keys": "off",
23
- "no-duplicate-case": "off",
24
- "no-else-return": "off",
25
- "no-empty-character-class": "off",
26
- "no-empty-static-block": "off",
27
- "no-empty": "off",
28
- "no-ex-assign": "off",
29
- "no-extra-label": "off",
30
- "no-extra-semi": "off",
31
- "no-func-assign": "off",
32
- "no-import-assign": "off",
33
- "no-inner-declarations": "off",
34
- "no-label-var": "off",
35
- "no-lone-blocks": "error",
36
- "no-lonely-if": "off",
37
- "no-loss-of-precision": "off",
38
- "no-mixed-operators": "off",
39
- "no-negated-condition": "off",
40
- "no-new-native-nonconstructor": "off",
41
- "no-new-symbol": "off",
42
- "no-obj-calls": "off",
43
- "no-param-reassign": "off",
44
- "no-prototype-builtins": "off",
45
- "no-redeclare": "off",
46
- "no-regex-spaces": "off",
47
- "no-return-assign": "off",
48
- "no-self-compare": "off",
49
- "no-sequences": "off",
50
- "no-setter-return": "off",
51
- "no-shadow-restricted-names": "off",
52
- "no-sparse-arrays": "off",
53
- "no-this-before-super": "off",
54
- "no-undef": "off",
55
- "no-unreachable": "off",
56
- "no-unsafe-finally": "off",
57
- "no-unsafe-negation": "off",
58
- "no-unsafe-optional-chaining": "off",
59
- "no-unused-labels": "off",
60
- "no-unused-vars": "off",
61
- "no-useless-catch": "off",
62
- "no-useless-constructor": "off",
63
- "no-useless-rename": "off",
64
- "no-var": "off",
65
- "no-with": "off",
66
- "one-var": "off",
67
- "operator-assignment": "off",
68
- "prefer-const": "off",
69
- "prefer-exponentiation-operator": "off",
70
- "prefer-numeric-literals": "off",
71
- "prefer-rest-params": "off",
72
- "prefer-template": "off",
73
- "require-yield": "off",
74
- "sort-imports": "off",
75
- "valid-typeof": "off",
76
- "wrap-regex": "off",
77
-
78
- // Typescript
79
- "@typescript-eslint/array-type": "off",
80
- "@typescript-eslint/default-param-last": "off",
81
- "@typescript-eslint/no-dupe-class-members": "off",
82
- "@typescript-eslint/no-empty-interface": "off",
83
- "@typescript-eslint/no-explicit-any": "off",
84
- "@typescript-eslint/no-extra-non-null-assertion": "off",
85
- "@typescript-eslint/no-extra-semi": "off",
86
- "@typescript-eslint/no-inferrable-types": "off",
87
- "@typescript-eslint/no-loss-of-precision": "off",
88
- "@typescript-eslint/no-misused-new": "off",
89
- "@typescript-eslint/no-namespace": "off",
90
- "@typescript-eslint/no-non-null-assertion": "off",
91
- "@typescript-eslint/no-redeclare": "off",
92
- "@typescript-eslint/no-unnecessary-type-constraint": "off",
93
- "@typescript-eslint/no-unused-vars": "off",
94
- "@typescript-eslint/no-useless-constructor": "off",
95
- "@typescript-eslint/prefer-as-const": "off",
96
- "@typescript-eslint/prefer-enum-initializers": "off",
97
- "@typescript-eslint/prefer-namespace-keyword": "off",
98
-
99
- // Unicorn
100
- "unicorn/no-extra-boolean-cast": "off",
101
- "unicorn/no-lonely-if": "off",
102
- "unicorn/no-negated-condition": "off",
103
- "unicorn/no-useless-switch-case": "off",
104
- "unicorn/prefer-array-flat-map": "off",
105
- "unicorn/prefer-prototype-methods": "off",
106
- "unicorn/switch-case-braces": "off",
107
-
108
- // React
109
- "react/button-has-type": "off",
110
- "react/jsx-boolean-value": "off",
111
- "react/jsx-fragments": "off",
112
- "react/jsx-no-blank-target": "off",
113
- "react/jsx-no-comment-textnodes": "off",
114
- "react/jsx-no-useless-fragment": "off",
115
- "react/no-array-index-key": "off",
116
- "react/no-children-prop": "off",
117
- "react/no-danger-with-children": "off",
118
- "react/no-render-return-value": "off",
119
- "react/self-closing-comp": "off",
120
- "react/void-dom-elements-no-children": "off",
121
- },
122
- };