eslint-config-complete 3.2.4 → 4.0.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.
@@ -9,170 +9,170 @@ export const baseUnicorn = defineConfig({
9
9
  unicorn: ESLintPluginUnicorn,
10
10
  },
11
11
  rules: {
12
- "unicorn/better-regex": "warn",
13
- "unicorn/catch-error-name": "warn",
14
- "unicorn/consistent-assert": "warn",
15
- "unicorn/consistent-date-clone": "warn",
12
+ "unicorn/better-regex": "error",
13
+ "unicorn/catch-error-name": "error",
14
+ "unicorn/consistent-assert": "error",
15
+ "unicorn/consistent-date-clone": "error",
16
16
  /** Disabled because it has too many false positives. */
17
17
  "unicorn/consistent-destructuring": "off",
18
- "unicorn/consistent-empty-array-spread": "warn",
19
- "unicorn/consistent-existence-index-check": "warn",
20
- "unicorn/consistent-function-scoping": "warn",
21
- "unicorn/custom-error-definition": "warn",
18
+ "unicorn/consistent-empty-array-spread": "error",
19
+ "unicorn/consistent-existence-index-check": "error",
20
+ "unicorn/consistent-function-scoping": "error",
21
+ "unicorn/custom-error-definition": "error",
22
22
  "unicorn/empty-brace-spaces": "off", // eslint-config-prettier
23
- "unicorn/error-message": "warn",
24
- "unicorn/escape-case": "warn",
25
- "unicorn/expiring-todo-comments": "warn",
26
- "unicorn/explicit-length-check": "warn",
23
+ "unicorn/error-message": "error",
24
+ "unicorn/escape-case": "error",
25
+ "unicorn/expiring-todo-comments": "error",
26
+ "unicorn/explicit-length-check": "error",
27
27
  /** Disabled since projects may use different file naming conventions. */
28
28
  "unicorn/filename-case": "off",
29
- "unicorn/import-style": "warn",
30
- "unicorn/new-for-builtins": "warn",
29
+ "unicorn/import-style": "error",
30
+ "unicorn/new-for-builtins": "error",
31
31
  /**
32
32
  * Disabled because if a line breaks three or more ESLint rules, then it is useful to use a
33
33
  * single "eslint-disable" comment to make things more concise.
34
34
  */
35
35
  "unicorn/no-abusive-eslint-disable": "off",
36
- "unicorn/no-array-sort": "warn",
37
- "unicorn/no-accessor-recursion": "warn",
38
- "unicorn/no-anonymous-default-export": "warn",
36
+ "unicorn/no-array-sort": "error",
37
+ "unicorn/no-accessor-recursion": "error",
38
+ "unicorn/no-anonymous-default-export": "error",
39
39
  /** Disabled since it is not helpful when using TypeScript. */
40
40
  "unicorn/no-array-callback-reference": "off",
41
- "unicorn/no-array-for-each": "warn",
42
- "unicorn/no-array-method-this-argument": "warn",
43
- "unicorn/no-array-push-push": "warn",
44
- "unicorn/no-array-reduce": "warn",
45
- "unicorn/no-array-reverse": "warn",
46
- "unicorn/no-await-expression-member": "warn",
47
- "unicorn/no-await-in-promise-methods": "warn",
48
- "unicorn/no-console-spaces": "warn",
49
- "unicorn/no-document-cookie": "warn",
50
- "unicorn/no-empty-file": "warn",
51
- "unicorn/no-for-loop": "warn",
52
- "unicorn/no-hex-escape": "warn",
53
- "unicorn/no-immediate-mutation": "warn",
54
- "unicorn/no-instanceof-array": "warn",
55
- "unicorn/no-instanceof-builtins": "warn",
56
- "unicorn/no-invalid-fetch-options": "warn",
57
- "unicorn/no-invalid-remove-event-listener": "warn",
41
+ "unicorn/no-array-for-each": "error",
42
+ "unicorn/no-array-method-this-argument": "error",
43
+ "unicorn/no-array-push-push": "error",
44
+ "unicorn/no-array-reduce": "error",
45
+ "unicorn/no-array-reverse": "error",
46
+ "unicorn/no-await-expression-member": "error",
47
+ "unicorn/no-await-in-promise-methods": "error",
48
+ "unicorn/no-console-spaces": "error",
49
+ "unicorn/no-document-cookie": "error",
50
+ "unicorn/no-empty-file": "error",
51
+ "unicorn/no-for-loop": "error",
52
+ "unicorn/no-hex-escape": "error",
53
+ "unicorn/no-immediate-mutation": "error",
54
+ "unicorn/no-instanceof-array": "error",
55
+ "unicorn/no-instanceof-builtins": "error",
56
+ "unicorn/no-invalid-fetch-options": "error",
57
+ "unicorn/no-invalid-remove-event-listener": "error",
58
58
  /** Disabled because it is common to prefix variables with "new". */
59
59
  "unicorn/no-keyword-prefix": "off",
60
- "unicorn/no-length-as-slice-end": "warn",
61
- "unicorn/no-lonely-if": "warn",
62
- "unicorn/no-magic-array-flat-depth": "warn",
63
- "unicorn/no-negated-condition": "warn",
64
- "unicorn/no-negation-in-equality-check": "warn",
60
+ "unicorn/no-length-as-slice-end": "error",
61
+ "unicorn/no-lonely-if": "error",
62
+ "unicorn/no-magic-array-flat-depth": "error",
63
+ "unicorn/no-negated-condition": "error",
64
+ "unicorn/no-negation-in-equality-check": "error",
65
65
  "unicorn/no-nested-ternary": "off", // eslint-config-prettier
66
- "unicorn/no-new-array": "warn",
67
- "unicorn/no-new-buffer": "warn",
68
- "unicorn/no-named-default": "warn",
69
- "unicorn/no-null": "warn",
70
- "unicorn/no-object-as-default-parameter": "warn",
66
+ "unicorn/no-new-array": "error",
67
+ "unicorn/no-new-buffer": "error",
68
+ "unicorn/no-named-default": "error",
69
+ "unicorn/no-null": "error",
70
+ "unicorn/no-object-as-default-parameter": "error",
71
71
  /**
72
72
  * Disabled because using `process.exit` is common to exit command-line applications without
73
73
  * verbose output.
74
74
  */
75
75
  "unicorn/no-process-exit": "off",
76
- "unicorn/no-single-promise-in-promise-methods": "warn",
77
- "unicorn/no-static-only-class": "warn",
78
- "unicorn/no-thenable": "warn",
76
+ "unicorn/no-single-promise-in-promise-methods": "error",
77
+ "unicorn/no-static-only-class": "error",
78
+ "unicorn/no-thenable": "error",
79
79
  /** Superseded by the `@typescript-eslint/no-this-alias` rule. */
80
80
  "unicorn/no-this-assignment": "off",
81
- "unicorn/no-typeof-undefined": "warn",
82
- "unicorn/no-unnecessary-array-flat-depth": "warn",
83
- "unicorn/no-unnecessary-array-splice-count": "warn",
84
- "unicorn/no-unnecessary-slice-end": "warn",
85
- "unicorn/no-unnecessary-await": "warn",
86
- "unicorn/no-unnecessary-polyfills": "warn",
87
- "unicorn/no-unreadable-array-destructuring": "warn",
88
- "unicorn/no-unreadable-iife": "warn",
89
- "unicorn/no-unused-properties": "warn",
90
- "unicorn/no-useless-collection-argument": "warn",
91
- "unicorn/no-useless-error-capture-stack-trace": "warn",
92
- "unicorn/no-useless-fallback-in-spread": "warn",
93
- "unicorn/no-useless-length-check": "warn",
94
- "unicorn/no-useless-promise-resolve-reject": "warn",
95
- "unicorn/no-useless-spread": "warn",
96
- "unicorn/no-useless-switch-case": "warn",
81
+ "unicorn/no-typeof-undefined": "error",
82
+ "unicorn/no-unnecessary-array-flat-depth": "error",
83
+ "unicorn/no-unnecessary-array-splice-count": "error",
84
+ "unicorn/no-unnecessary-slice-end": "error",
85
+ "unicorn/no-unnecessary-await": "error",
86
+ "unicorn/no-unnecessary-polyfills": "error",
87
+ "unicorn/no-unreadable-array-destructuring": "error",
88
+ "unicorn/no-unreadable-iife": "error",
89
+ "unicorn/no-unused-properties": "error",
90
+ "unicorn/no-useless-collection-argument": "error",
91
+ "unicorn/no-useless-error-capture-stack-trace": "error",
92
+ "unicorn/no-useless-fallback-in-spread": "error",
93
+ "unicorn/no-useless-length-check": "error",
94
+ "unicorn/no-useless-promise-resolve-reject": "error",
95
+ "unicorn/no-useless-spread": "error",
96
+ "unicorn/no-useless-switch-case": "error",
97
97
  /** Disabled since it does not work properly with TypeScript. */
98
98
  "unicorn/no-useless-undefined": "off",
99
- "unicorn/no-zero-fractions": "warn",
99
+ "unicorn/no-zero-fractions": "error",
100
100
  "unicorn/number-literal-case": "off", // eslint-config-prettier
101
- "unicorn/numeric-separators-style": "warn",
102
- "unicorn/prefer-add-event-listener": "warn",
103
- "unicorn/prefer-array-find": "warn",
104
- "unicorn/prefer-array-flat": "warn",
105
- "unicorn/prefer-array-flat-map": "warn",
106
- "unicorn/prefer-array-index-of": "warn",
107
- "unicorn/prefer-array-some": "warn",
108
- "unicorn/prefer-at": "warn",
109
- "unicorn/prefer-bigint-literals": "warn",
110
- "unicorn/prefer-blob-reading-methods": "warn",
111
- "unicorn/prefer-class-fields": "warn",
112
- "unicorn/prefer-classlist-toggle": "warn",
113
- "unicorn/prefer-code-point": "warn",
114
- "unicorn/prefer-date-now": "warn",
115
- "unicorn/prefer-default-parameters": "warn",
116
- "unicorn/prefer-dom-node-append": "warn",
117
- "unicorn/prefer-dom-node-dataset": "warn",
118
- "unicorn/prefer-dom-node-remove": "warn",
119
- "unicorn/prefer-dom-node-text-content": "warn",
120
- "unicorn/prefer-event-target": "warn",
121
- "unicorn/prefer-export-from": "warn",
122
- "unicorn/prefer-global-this": "warn",
123
- "unicorn/prefer-import-meta-properties": "warn",
124
- "unicorn/prefer-includes": "warn",
101
+ "unicorn/numeric-separators-style": "error",
102
+ "unicorn/prefer-add-event-listener": "error",
103
+ "unicorn/prefer-array-find": "error",
104
+ "unicorn/prefer-array-flat": "error",
105
+ "unicorn/prefer-array-flat-map": "error",
106
+ "unicorn/prefer-array-index-of": "error",
107
+ "unicorn/prefer-array-some": "error",
108
+ "unicorn/prefer-at": "error",
109
+ "unicorn/prefer-bigint-literals": "error",
110
+ "unicorn/prefer-blob-reading-methods": "error",
111
+ "unicorn/prefer-class-fields": "error",
112
+ "unicorn/prefer-classlist-toggle": "error",
113
+ "unicorn/prefer-code-point": "error",
114
+ "unicorn/prefer-date-now": "error",
115
+ "unicorn/prefer-default-parameters": "error",
116
+ "unicorn/prefer-dom-node-append": "error",
117
+ "unicorn/prefer-dom-node-dataset": "error",
118
+ "unicorn/prefer-dom-node-remove": "error",
119
+ "unicorn/prefer-dom-node-text-content": "error",
120
+ "unicorn/prefer-event-target": "error",
121
+ "unicorn/prefer-export-from": "error",
122
+ "unicorn/prefer-global-this": "error",
123
+ "unicorn/prefer-import-meta-properties": "error",
124
+ "unicorn/prefer-includes": "error",
125
125
  /** Disabled because the rule is not compatible with TypeScript. */
126
126
  "unicorn/prefer-json-parse-buffer": "off",
127
- "unicorn/prefer-keyboard-event-key": "warn",
128
- "unicorn/prefer-logical-operator-over-ternary": "warn",
129
- "unicorn/prefer-math-min-max": "warn",
130
- "unicorn/prefer-math-trunc": "warn",
131
- "unicorn/prefer-modern-dom-apis": "warn",
132
- "unicorn/prefer-modern-math-apis": "warn",
133
- "unicorn/prefer-module": "warn",
134
- "unicorn/prefer-native-coercion-functions": "warn",
135
- "unicorn/prefer-negative-index": "warn",
136
- "unicorn/prefer-node-protocol": "warn",
137
- "unicorn/prefer-number-properties": "warn",
138
- "unicorn/prefer-object-from-entries": "warn",
139
- "unicorn/prefer-optional-catch-binding": "warn",
140
- "unicorn/prefer-prototype-methods": "warn",
141
- "unicorn/prefer-query-selector": "warn",
142
- "unicorn/prefer-reflect-apply": "warn",
143
- "unicorn/prefer-regexp-test": "warn",
144
- "unicorn/prefer-response-static-json": "warn",
145
- "unicorn/prefer-set-has": "warn",
146
- "unicorn/prefer-set-size": "warn",
147
- "unicorn/prefer-single-call": "warn",
148
- "unicorn/prefer-spread": "warn",
149
- "unicorn/prefer-string-raw": "warn",
150
- "unicorn/prefer-string-replace-all": "warn",
151
- "unicorn/prefer-string-slice": "warn",
152
- "unicorn/prefer-string-starts-ends-with": "warn",
153
- "unicorn/prefer-string-trim-start-end": "warn",
154
- "unicorn/prefer-structured-clone": "warn",
155
- "unicorn/prefer-switch": "warn",
156
- "unicorn/prefer-ternary": "warn",
157
- "unicorn/prefer-top-level-await": "warn",
158
- "unicorn/prefer-type-error": "warn",
127
+ "unicorn/prefer-keyboard-event-key": "error",
128
+ "unicorn/prefer-logical-operator-over-ternary": "error",
129
+ "unicorn/prefer-math-min-max": "error",
130
+ "unicorn/prefer-math-trunc": "error",
131
+ "unicorn/prefer-modern-dom-apis": "error",
132
+ "unicorn/prefer-modern-math-apis": "error",
133
+ "unicorn/prefer-module": "error",
134
+ "unicorn/prefer-native-coercion-functions": "error",
135
+ "unicorn/prefer-negative-index": "error",
136
+ "unicorn/prefer-node-protocol": "error",
137
+ "unicorn/prefer-number-properties": "error",
138
+ "unicorn/prefer-object-from-entries": "error",
139
+ "unicorn/prefer-optional-catch-binding": "error",
140
+ "unicorn/prefer-prototype-methods": "error",
141
+ "unicorn/prefer-query-selector": "error",
142
+ "unicorn/prefer-reflect-apply": "error",
143
+ "unicorn/prefer-regexp-test": "error",
144
+ "unicorn/prefer-response-static-json": "error",
145
+ "unicorn/prefer-set-has": "error",
146
+ "unicorn/prefer-set-size": "error",
147
+ "unicorn/prefer-single-call": "error",
148
+ "unicorn/prefer-spread": "error",
149
+ "unicorn/prefer-string-raw": "error",
150
+ "unicorn/prefer-string-replace-all": "error",
151
+ "unicorn/prefer-string-slice": "error",
152
+ "unicorn/prefer-string-starts-ends-with": "error",
153
+ "unicorn/prefer-string-trim-start-end": "error",
154
+ "unicorn/prefer-structured-clone": "error",
155
+ "unicorn/prefer-switch": "error",
156
+ "unicorn/prefer-ternary": "error",
157
+ "unicorn/prefer-top-level-await": "error",
158
+ "unicorn/prefer-type-error": "error",
159
159
  /** Disabled since it is common to use the variable name of "i". */
160
160
  "unicorn/prevent-abbreviations": "off",
161
- "unicorn/relative-url-style": "warn",
162
- "unicorn/require-array-join-separator": "warn",
163
- "unicorn/require-module-attributes": "warn",
164
- "unicorn/require-module-specifiers": "warn",
165
- "unicorn/require-number-to-fixed-digits-argument": "warn",
161
+ "unicorn/relative-url-style": "error",
162
+ "unicorn/require-array-join-separator": "error",
163
+ "unicorn/require-module-attributes": "error",
164
+ "unicorn/require-module-specifiers": "error",
165
+ "unicorn/require-number-to-fixed-digits-argument": "error",
166
166
  /** Disabled since it is not recommended by the plugin authors. */
167
167
  "unicorn/require-post-message-target-origin": "off",
168
168
  /** Disabled since string content enforcement is too project-specific. */
169
169
  "unicorn/string-content": "off",
170
- "unicorn/switch-case-braces": "warn",
170
+ "unicorn/switch-case-braces": "error",
171
171
  /**
172
172
  * Even though this rule is in `eslint-config-prettier`, it is not actually handled by Prettier.
173
173
  */
174
- "unicorn/template-indent": "warn",
175
- "unicorn/text-encoding-identifier-case": "warn",
176
- "unicorn/throw-new-error": "warn",
174
+ "unicorn/template-indent": "error",
175
+ "unicorn/text-encoding-identifier-case": "error",
176
+ "unicorn/throw-new-error": "error",
177
177
  },
178
178
  });
@@ -11,27 +11,27 @@ export const completeConfigESLintPlugin = defineConfig({
11
11
  "eslint-plugin": ESLintPluginESLintPlugin,
12
12
  },
13
13
  rules: {
14
- "eslint-plugin/consistent-output": "warn",
15
- "eslint-plugin/fixer-return": "warn",
16
- "eslint-plugin/meta-property-ordering": "warn",
17
- "eslint-plugin/no-deprecated-context-methods": "warn",
18
- "eslint-plugin/no-deprecated-report-api": "warn",
19
- "eslint-plugin/no-identical-tests": "warn",
20
- "eslint-plugin/no-meta-replaced-by": "warn",
21
- "eslint-plugin/no-meta-schema-default": "warn",
22
- "eslint-plugin/no-missing-message-ids": "warn",
23
- "eslint-plugin/no-missing-placeholders": "warn",
24
- "eslint-plugin/no-only-tests": "warn",
25
- "eslint-plugin/no-property-in-node": "warn",
26
- "eslint-plugin/no-unused-message-ids": "warn",
27
- "eslint-plugin/no-unused-placeholders": "warn",
28
- "eslint-plugin/no-useless-token-range": "warn",
29
- "eslint-plugin/prefer-message-ids": "warn",
30
- "eslint-plugin/prefer-object-rule": "warn",
31
- "eslint-plugin/prefer-output-null": "warn",
32
- "eslint-plugin/prefer-placeholders": "warn",
33
- "eslint-plugin/prefer-replace-text": "warn",
34
- "eslint-plugin/report-message-format": "warn",
14
+ "eslint-plugin/consistent-output": "error",
15
+ "eslint-plugin/fixer-return": "error",
16
+ "eslint-plugin/meta-property-ordering": "error",
17
+ "eslint-plugin/no-deprecated-context-methods": "error",
18
+ "eslint-plugin/no-deprecated-report-api": "error",
19
+ "eslint-plugin/no-identical-tests": "error",
20
+ "eslint-plugin/no-meta-replaced-by": "error",
21
+ "eslint-plugin/no-meta-schema-default": "error",
22
+ "eslint-plugin/no-missing-message-ids": "error",
23
+ "eslint-plugin/no-missing-placeholders": "error",
24
+ "eslint-plugin/no-only-tests": "error",
25
+ "eslint-plugin/no-property-in-node": "error",
26
+ "eslint-plugin/no-unused-message-ids": "error",
27
+ "eslint-plugin/no-unused-placeholders": "error",
28
+ "eslint-plugin/no-useless-token-range": "error",
29
+ "eslint-plugin/prefer-message-ids": "error",
30
+ "eslint-plugin/prefer-object-rule": "error",
31
+ "eslint-plugin/prefer-output-null": "error",
32
+ "eslint-plugin/prefer-placeholders": "error",
33
+ "eslint-plugin/prefer-replace-text": "error",
34
+ "eslint-plugin/report-message-format": "error",
35
35
  /**
36
36
  * TODO: Enable this rule.
37
37
  *
@@ -44,20 +44,20 @@ export const completeConfigESLintPlugin = defineConfig({
44
44
  * @see https://github.com/eslint-community/eslint-plugin-eslint-plugin/pull/495
45
45
  */
46
46
  "eslint-plugin/require-meta-docs-description": [
47
- "warn",
47
+ "error",
48
48
  {
49
49
  pattern: "^(Enforce|Require|Disallow)",
50
50
  },
51
51
  ],
52
- "eslint-plugin/require-meta-docs-recommended": "warn",
52
+ "eslint-plugin/require-meta-docs-recommended": "error",
53
53
  /** Disabled since this is automatically handled by the `createRule` helper function. */
54
54
  "eslint-plugin/require-meta-docs-url": "off",
55
- "eslint-plugin/require-meta-fixable": "warn",
56
- "eslint-plugin/require-meta-has-suggestions": "warn",
57
- "eslint-plugin/require-meta-schema": "warn",
58
- "eslint-plugin/require-meta-schema-description": "warn",
59
- "eslint-plugin/require-meta-type": "warn",
60
- "eslint-plugin/test-case-property-ordering": "warn",
61
- "eslint-plugin/test-case-shorthand-strings": "warn",
55
+ "eslint-plugin/require-meta-fixable": "error",
56
+ "eslint-plugin/require-meta-has-suggestions": "error",
57
+ "eslint-plugin/require-meta-schema": "error",
58
+ "eslint-plugin/require-meta-schema-description": "error",
59
+ "eslint-plugin/require-meta-type": "error",
60
+ "eslint-plugin/test-case-property-ordering": "error",
61
+ "eslint-plugin/test-case-shorthand-strings": "error",
62
62
  },
63
63
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-config-complete",
3
- "version": "3.2.4",
3
+ "version": "4.0.0",
4
4
  "description": "A sharable ESLint config for TypeScript projects.",
5
5
  "keywords": [
6
6
  "eslint",