@eslinted/defaults 12.9.0 → 12.10.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.
Files changed (92) hide show
  1. package/dist/ignores/global.js +0 -2
  2. package/dist/ignores/global.js.map +1 -1
  3. package/dist/index.d.ts +60 -512
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/rules/index.d.ts +60 -325
  6. package/dist/rules/index.d.ts.map +1 -1
  7. package/dist/rules/scopes/css/enable.d.ts +2 -7
  8. package/dist/rules/scopes/css/enable.d.ts.map +1 -1
  9. package/dist/rules/scopes/css/enable.js +3 -19
  10. package/dist/rules/scopes/css/enable.js.map +1 -1
  11. package/dist/rules/scopes/css/index.d.ts +2 -7
  12. package/dist/rules/scopes/css/index.d.ts.map +1 -1
  13. package/dist/rules/scopes/enable.d.ts +35 -184
  14. package/dist/rules/scopes/enable.d.ts.map +1 -1
  15. package/dist/rules/scopes/enable.js +68 -326
  16. package/dist/rules/scopes/enable.js.map +1 -1
  17. package/dist/rules/scopes/enable.style.d.ts +18 -116
  18. package/dist/rules/scopes/enable.style.d.ts.map +1 -1
  19. package/dist/rules/scopes/enable.style.js +31 -204
  20. package/dist/rules/scopes/enable.style.js.map +1 -1
  21. package/dist/rules/scopes/html/index.d.ts +5 -18
  22. package/dist/rules/scopes/html/index.d.ts.map +1 -1
  23. package/dist/rules/scopes/html/plugin/index.d.ts +5 -18
  24. package/dist/rules/scopes/html/plugin/index.d.ts.map +1 -1
  25. package/dist/rules/scopes/html/plugin/index.js +7 -63
  26. package/dist/rules/scopes/html/plugin/index.js.map +1 -1
  27. package/dist/rules/scopes/index.d.ts +53 -300
  28. package/dist/rules/scopes/index.d.ts.map +1 -1
  29. package/dist/rules/scopes/json/enable.js +2 -7
  30. package/dist/rules/scopes/json/enable.js.map +1 -1
  31. package/dist/rules/scopes/json/plugin/extension.js +7 -12
  32. package/dist/rules/scopes/json/plugin/extension.js.map +1 -1
  33. package/dist/rules/scopes/json/plugin/index.js +2 -9
  34. package/dist/rules/scopes/json/plugin/index.js.map +1 -1
  35. package/dist/rules/scopes/jsonc/plugin/index.js +1 -2
  36. package/dist/rules/scopes/jsonc/plugin/index.js.map +1 -1
  37. package/dist/rules/scopes/jsoncc/plugin/index.js +1 -2
  38. package/dist/rules/scopes/jsoncc/plugin/index.js.map +1 -1
  39. package/dist/rules/scopes/mocha/chai/expect.js +1 -5
  40. package/dist/rules/scopes/mocha/chai/expect.js.map +1 -1
  41. package/dist/rules/scopes/mocha/chai/index.js +1 -2
  42. package/dist/rules/scopes/mocha/chai/index.js.map +1 -1
  43. package/dist/rules/scopes/mocha/disable.js +2 -3
  44. package/dist/rules/scopes/mocha/disable.js.map +1 -1
  45. package/dist/rules/scopes/mocha/enable.js +2 -13
  46. package/dist/rules/scopes/mocha/enable.js.map +1 -1
  47. package/dist/rules/scopes/svelte/disable.js +6 -9
  48. package/dist/rules/scopes/svelte/disable.js.map +1 -1
  49. package/dist/rules/scopes/svelte/enable.js +14 -37
  50. package/dist/rules/scopes/svelte/enable.js.map +1 -1
  51. package/dist/rules/scopes/svelte/extension/disable.js +2 -3
  52. package/dist/rules/scopes/svelte/extension/disable.js.map +1 -1
  53. package/dist/rules/scopes/svelte/extension/index.js +2 -3
  54. package/dist/rules/scopes/svelte/extension/index.js.map +1 -1
  55. package/dist/rules/scopes/ts/disable.js +4 -5
  56. package/dist/rules/scopes/ts/disable.js.map +1 -1
  57. package/dist/rules/scopes/ts/enable.d.ts +3 -3
  58. package/dist/rules/scopes/ts/enable.d.ts.map +1 -1
  59. package/dist/rules/scopes/ts/enable.js +11 -37
  60. package/dist/rules/scopes/ts/enable.js.map +1 -1
  61. package/dist/rules/scopes/ts/extension/disable.js +1 -18
  62. package/dist/rules/scopes/ts/extension/disable.js.map +1 -1
  63. package/dist/rules/scopes/ts/extension/index.js +1 -22
  64. package/dist/rules/scopes/ts/extension/index.js.map +1 -1
  65. package/dist/rules/scopes/yml/plugin/extension.js +8 -9
  66. package/dist/rules/scopes/yml/plugin/extension.js.map +1 -1
  67. package/dist/rules/scopes/yml/plugin/index.js +9 -28
  68. package/dist/rules/scopes/yml/plugin/index.js.map +1 -1
  69. package/dist/settings/registry/manifests/css.js +1 -3
  70. package/dist/settings/registry/manifests/css.js.map +1 -1
  71. package/dist/settings/registry/manifests/html.js +1 -2
  72. package/dist/settings/registry/manifests/html.js.map +1 -1
  73. package/dist/settings/registry/manifests/js.js +2 -6
  74. package/dist/settings/registry/manifests/js.js.map +1 -1
  75. package/dist/settings/registry/manifests/json.js +2 -2
  76. package/dist/settings/registry/manifests/json.js.map +1 -1
  77. package/dist/settings/registry/manifests/jsonc.js +2 -6
  78. package/dist/settings/registry/manifests/jsonc.js.map +1 -1
  79. package/dist/settings/registry/manifests/jsoncc.js +2 -6
  80. package/dist/settings/registry/manifests/jsoncc.js.map +1 -1
  81. package/dist/settings/registry/manifests/mocha.js +2 -6
  82. package/dist/settings/registry/manifests/mocha.js.map +1 -1
  83. package/dist/settings/registry/manifests/ts.js +7 -20
  84. package/dist/settings/registry/manifests/ts.js.map +1 -1
  85. package/dist/settings/registry/manifests/yml.js +1 -4
  86. package/dist/settings/registry/manifests/yml.js.map +1 -1
  87. package/package.json +1 -1
  88. package/src/rules/scopes/css/enable.ts +2 -13
  89. package/src/rules/scopes/enable.style.ts +51 -177
  90. package/src/rules/scopes/enable.ts +141 -316
  91. package/src/rules/scopes/html/plugin/index.ts +18 -40
  92. package/tsconfig.json +2 -2
@@ -1,12 +1,10 @@
1
1
  import {
2
2
  ID,
3
- OFF,
3
+ // OFF,
4
4
  ON,
5
- never,
6
5
  always,
7
6
  as_needed,
8
7
  consecutive,
9
- allow,
10
8
  all,
11
9
  multi,
12
10
  both,
@@ -20,33 +18,25 @@ export const Enable = {
20
18
  "array-callback-return": [
21
19
  ON,
22
20
  {
23
- allowImplicit: false,
24
- checkForEach: true,
25
- allowVoid: true,
21
+ // allowImplicit: false /* @default: false */,
22
+ checkForEach: true /* @default: false */,
23
+ allowVoid: true /* only works if checkForEach | @default: false */,
26
24
  },
27
25
  ],
28
26
  "constructor-super": ON /* tsc */,
29
27
  "for-direction": ON,
30
- "getter-return": [
31
- ON,
32
- {
33
- allowImplicit: false,
34
- },
35
- ] /* tsc */,
28
+ "getter-return": ON /* tsc */,
36
29
  "no-async-promise-executor": ON,
37
30
  "no-await-in-loop": ON,
38
31
  "no-class-assign": ON,
39
32
  "no-compare-neg-zero": ON,
40
- "no-cond-assign": [
41
- ON,
42
- always,
43
- ],
33
+ "no-cond-assign": ON,
44
34
  "no-const-assign": ON /* tsc */,
45
35
  "no-constant-binary-expression": ON,
46
36
  "no-constant-condition": [
47
37
  ON,
48
38
  {
49
- checkLoops: true,
39
+ checkLoops: all /* none === false | all === true | @default: allExceptWhileTrue */,
50
40
  },
51
41
  ] /* BUG: incorrect option description (claims "all" is ok): https://eslint.org/docs/latest/rules/no-constant-condition */,
52
42
  "no-constructor-return": ON,
@@ -60,50 +50,22 @@ export const Enable = {
60
50
  "no-duplicate-imports": [
61
51
  ON,
62
52
  {
63
- includeExports: true /* @default: false */,
64
- allowSeparateTypeImports: true /* @default: false */,
53
+ includeExports: true /* @default false */,
54
+ allowSeparateTypeImports: true /* @default false */,
65
55
  },
66
56
  ],
67
57
  "no-empty-character-class": ON,
68
- "no-empty-pattern": [
69
- ON,
70
- {
71
- allowObjectPatternsAsParameters: false,
72
- },
73
- ],
58
+ "no-empty-pattern": ON,
74
59
  "no-ex-assign": ON,
75
- "no-fallthrough": [
76
- ON,
77
- {
78
- allowEmptyCase: true,
79
- reportUnusedFallthroughComment: true,
80
- },
81
- ],
60
+ "no-fallthrough": ON,
82
61
  "no-func-assign": ON /* tsc */,
83
62
  "no-import-assign": ON /* tsc (except Object.assign()) */,
84
63
  "no-inner-declarations": [
85
64
  ON,
86
- both,
87
- {
88
- blockScopedFunctions: allow,
89
- },
90
- ],
91
- "no-invalid-regexp": [
92
- ON,
93
- {
94
- allowConstructorFlags: [],
95
- },
96
- ],
97
- "no-irregular-whitespace": [
98
- ON,
99
- {
100
- skipStrings: true,
101
- skipComments: true,
102
- skipRegExps: true,
103
- skipTemplates: true,
104
- skipJSXText: true,
105
- },
65
+ both /* both (function & var) | @default functions */,
106
66
  ],
67
+ "no-invalid-regexp": ON,
68
+ "no-irregular-whitespace": ON,
107
69
  "no-loss-of-precision": ON /* TS-capable, originally had TSLint rule but was deprecated */,
108
70
  "no-misleading-character-class": ON,
109
71
  "no-new-native-nonconstructor": ON,
@@ -111,16 +73,11 @@ export const Enable = {
111
73
  "no-promise-executor-return": [
112
74
  ON,
113
75
  {
114
- allowVoid: true,
76
+ allowVoid: true /* @default false */,
115
77
  },
116
78
  ],
117
79
  "no-prototype-builtins": ON,
118
- "no-self-assign": [
119
- ON,
120
- {
121
- props: true,
122
- },
123
- ],
80
+ "no-self-assign": ON,
124
81
  "no-self-compare": ON,
125
82
  "no-setter-return": ON /* tsc */,
126
83
  "no-sparse-arrays": ON,
@@ -131,68 +88,48 @@ export const Enable = {
131
88
  "no-unexpected-multiline": ON,
132
89
  "no-unmodified-loop-condition": ON,
133
90
  "no-unreachable": ON /* tsc */,
134
- "no-unreachable-loop": [
135
- ON,
136
- {
137
- ignore: [] /* WhileStatement, DoWhileStatement, ForStatement, ForInStatement, ForOfStatement */,
138
- },
139
- ],
91
+ "no-unreachable-loop": ON,
140
92
  "no-unsafe-finally": ON,
141
93
  "no-unsafe-negation": [
142
94
  ON,
143
95
  {
144
- enforceForOrderingRelations: true,
96
+ enforceForOrderingRelations: true /* @default false */,
145
97
  },
146
98
  ] /* tsc */,
147
99
  "no-unsafe-optional-chaining": [
148
100
  ON,
149
101
  {
150
- disallowArithmeticOperators: true,
102
+ disallowArithmeticOperators: true /* @default false */,
151
103
  },
152
104
  ],
153
105
  "no-unused-private-class-members": ON,
154
- "no-unused-vars": [
155
- ON,
156
- {
157
- vars: all,
158
- args: all,
159
- caughtErrors: all,
160
- ignoreRestSiblings: false,
161
- ignoreClassWithStaticInitBlock: false,
162
- reportUsedIgnorePattern: true,
163
- },
164
- ] /* TSLint */,
106
+ "no-unused-vars": ON /* TSLint */,
165
107
  "no-use-before-define": [
166
108
  ON,
167
109
  {
168
- functions: true,
169
- classes: true,
170
- variables: true,
171
- allowNamedExports: false,
172
- enums: true,
110
+ // functions: true,
111
+ // classes: true,
112
+ // variables: true,
113
+ // allowNamedExports: false,
114
+ // enums: true,
173
115
  typedefs: false /* changed 14.2.2 (still questionable) */,
174
- ignoreTypeReferences: true,
116
+ // ignoreTypeReferences: true,
175
117
  },
176
118
  ] /* TS-capable */,
177
119
  "no-useless-assignment": ON,
178
120
  "no-useless-backreference": ON,
179
- "require-atomic-updates": [
180
- ON,
181
- {
182
- allowProperties: false,
183
- },
184
- ],
121
+ "require-atomic-updates": ON,
185
122
  "use-isnan": [
186
123
  ON,
187
124
  {
188
- enforceForSwitchCase: true,
189
- enforceForIndexOf: true,
125
+ // enforceForSwitchCase: true,
126
+ enforceForIndexOf: true /* @default false */,
190
127
  },
191
128
  ],
192
129
  "valid-typeof": [
193
130
  ON,
194
131
  {
195
- requireStringLiterals: true,
132
+ requireStringLiterals: true /* @default false */,
196
133
  },
197
134
  ],
198
135
  // #endregion
@@ -202,98 +139,65 @@ export const Enable = {
202
139
  "accessor-pairs": [
203
140
  ON,
204
141
  {
205
- setWithoutGet: true,
206
- getWithoutSet: false,
207
- enforceForClassMembers: true,
208
- enforceForTSTypes: true,
209
- },
210
- ],
211
- "arrow-body-style": [
212
- ON,
213
- as_needed,
214
- {
215
- requireReturnForObjectLiteral: true,
142
+ // setWithoutGet: true,
143
+ // getWithoutSet: false,
144
+ // enforceForClassMembers: true,
145
+ enforceForTSTypes: true /* @default false */,
216
146
  },
217
147
  ],
148
+ "arrow-body-style": ON,
218
149
  "block-scoped-var": ON,
219
- camelcase: OFF /* preference */,
220
- "capitalized-comments": OFF /* preference */,
221
- "class-methods-use-this": OFF /* TS-capable; (preference) */,
222
- complexity: OFF /* preference */,
223
- "consistent-return": [
224
- ON,
225
- {
226
- treatUndefinedAsUnspecified: false,
227
- },
228
- ] /* tsc -- TSLint:OFF: tsconfig: noImplicitReturns */,
150
+ // camelcase: OFF /* preference */,
151
+ // "capitalized-comments": OFF /* preference */,
152
+ // "class-methods-use-this": OFF /* TS-capable; (preference) */,
153
+ // complexity: OFF /* preference */,
154
+ "consistent-return": ON /* tsc -- TSLint:OFF: tsconfig: noImplicitReturns */,
229
155
  "consistent-this": ON,
230
156
  curly: [
231
157
  ON,
232
- multi,
158
+ multi /* multi | multi-line | multi-or-nest | consistent | @default all */,
233
159
  ],
234
- "default-case": OFF /* preference: don't care */,
160
+ // "default-case": OFF /* preference: don't care */,
235
161
  "default-case-last": ON,
236
162
  "default-param-last": ON /* TS-capable */,
237
- "dot-notation": [
238
- ON,
239
- {
240
- allowKeywords: true,
241
- },
242
- ] /* TSLint */,
243
- eqeqeq: [
244
- ON,
245
- always,
246
- ],
247
- "func-name-matching": OFF /* preference */,
248
- "func-names": OFF /* preference */,
249
- "func-style": OFF /* TS-capable BUT preference */,
250
- "grouped-accessor-pairs": OFF /* preference -- BUG: requires adjacency, not as described in documentation */,
251
- "guard-for-in": OFF /* preference - not helpful because using for-in on non-literal objects is bad practice and this rule doesn't guard against that anyway, while adding a pointless check to known object literals */,
252
- "id-denylist": OFF /* preference */,
253
- "id-length": OFF /* preference */,
254
- "id-match": OFF /* preference */,
255
- "init-declarations": [
256
- ON,
257
- always,
258
- ] /* TS-capable */,
163
+ "dot-notation": ON /* TSLint */,
164
+ eqeqeq: ON,
165
+ // "func-name-matching": OFF /* preference */,
166
+ // "func-names": OFF /* preference */,
167
+ // "func-style": OFF /* TS-capable BUT preference */,
168
+ // "grouped-accessor-pairs": OFF /* preference -- BUG: requires adjacency, not as described in documentation */,
169
+ // "guard-for-in": OFF /* preference - not helpful because using for-in on non-literal objects is bad practice and this rule doesn't guard against that anyway, while adding a pointless check to known object literals */,
170
+ // "id-denylist": OFF /* preference */,
171
+ // "id-length": OFF /* preference */,
172
+ // "id-match": OFF /* preference */,
173
+ "init-declarations": ON /* TS-capable */,
259
174
  "logical-assignment-operators": [
260
175
  ON,
261
- always,
176
+ always /* never | @default always */,
262
177
  {
263
- enforceForIfStatements: true,
178
+ enforceForIfStatements: true /* @default false */,
264
179
  },
265
180
  ],
266
- "max-classes-per-file": OFF /* preference */,
267
- "max-depth": OFF /* preference */,
268
- "max-lines": OFF /* preference */,
269
- "max-lines-per-function": OFF /* preference */,
270
- "max-nested-callbacks": OFF /* preference */,
271
- "max-params": OFF /* TS-capable BUT preference -- TSLint:OFF: preference */,
272
- "max-statements": OFF /* preference */,
273
- "multiline-comment-style": OFF /* preference */,
274
- "new-cap": OFF /* preference -- breaks Scriptable */,
181
+ // "max-classes-per-file": OFF /* preference */,
182
+ // "max-depth": OFF /* preference */,
183
+ // "max-lines": OFF /* preference */,
184
+ // "max-lines-per-function": OFF /* preference */,
185
+ // "max-nested-callbacks": OFF /* preference */,
186
+ // "max-params": OFF /* TS-capable BUT preference -- TSLint:OFF: preference */,
187
+ // "max-statements": OFF /* preference */,
188
+ // "multiline-comment-style": OFF /* preference */,
189
+ // "new-cap": OFF /* preference -- breaks Scriptable */,
275
190
  "no-alert": ON,
276
191
  "no-array-constructor": ON /* TS-capable */,
277
- "no-bitwise": [
278
- ON,
279
- {
280
- allow: [],
281
- int32Hint: true,
282
- },
283
- ],
192
+ "no-bitwise": ON,
284
193
  "no-caller": ON,
285
194
  "no-case-declarations": ON,
286
- "no-console": OFF /* preference -- breaks Node.js console applications and Scriptable, and otherwise unnecessarily hampers browser test code */,
195
+ // "no-console": OFF /* preference -- breaks Node.js console applications and Scriptable, and otherwise unnecessarily hampers browser test code */,
287
196
  "no-continue": ON,
288
197
  "no-delete-var": ON,
289
198
  "no-div-regex": ON,
290
- "no-else-return": OFF /* preference */,
291
- "no-empty": [
292
- ON,
293
- {
294
- allowEmptyCatch: false,
295
- },
296
- ],
199
+ // "no-else-return": OFF /* preference */,
200
+ "no-empty": ON,
297
201
  "no-empty-function": [
298
202
  ON,
299
203
  {
@@ -303,71 +207,51 @@ export const Enable = {
303
207
  "protectedConstructors",
304
208
  "decoratedFunctions",
305
209
  "overrideMethods",
306
- ],
307
- }, /* functions, arrowFunctions, generatorFunctions, methods, generatorMethods, getters, setters, constructors, asyncFunctions, asyncMethods; TS-ONLY: privateConstructors, protectedConstructors, decoratedFunctions, overrideMethods */
210
+ ] /* (functions | `${arrow|generator|async|TS:decorated}Functions` | methods | `${generator|async|TS:override}Methods` | `${g|s}etters` | constructors | TS:`${private|protected}Constructors`)[] | @default [] */,
211
+ },
308
212
  ] /* TS-capable */,
309
213
  "no-empty-static-block": ON,
310
214
  "no-eq-null": ON,
311
- "no-eval": [
312
- ON,
313
- {
314
- allowIndirect: false,
315
- },
316
- ],
317
- "no-extend-native": [
318
- ON,
319
- {
320
- exceptions: [],
321
- },
322
- ],
215
+ "no-eval": ON,
216
+ "no-extend-native": ON,
323
217
  "no-extra-bind": ON,
324
218
  "no-extra-boolean-cast": [
325
219
  ON,
326
220
  {
327
- enforceForLogicalOperands: true,
221
+ enforceForLogicalOperands: true /* @default false */,
328
222
  },
329
223
  ],
330
224
  "no-extra-label": ON,
331
- "no-global-assign": [
332
- ON,
333
- {
334
- exceptions: [],
335
- },
336
- ],
225
+ "no-global-assign": ON,
337
226
  "no-implicit-coercion": [
338
227
  ON,
339
228
  {
340
- "boolean": true,
341
- number: true,
342
- string: true,
229
+ // "boolean": true,
230
+ // number: true,
231
+ // string: true,
343
232
  disallowTemplateShorthand: true,
344
- allow: [] /** "~" | "!!" | "+" | "- -" | "-" | "*" */,
233
+ // allow: [],
345
234
  },
346
235
  ],
347
- "no-implicit-globals": OFF /* investigate (breaks Scriptable? breaks Sveltekit?) */,
236
+ // "no-implicit-globals": OFF /* investigate (breaks Scriptable? breaks Sveltekit?) */,
348
237
  "no-implied-eval": ON /* TSLint */,
349
- "no-inline-comments": OFF /* preference */,
238
+ // "no-inline-comments": OFF /* preference */,
350
239
  "no-invalid-this": [
351
240
  ON,
352
241
  {
353
- capIsConstructor: false,
242
+ capIsConstructor: false /* @default true */,
354
243
  },
355
244
  ] /* TS-capable BUT tsc: TSLint:OFF: tsconfig: { strict, noImplicitThis } */,
356
245
  "no-iterator": ON,
357
246
  "no-label-var": ON,
358
247
  "no-lone-blocks": ON,
359
- "no-lonely-if": OFF /* preference */,
248
+ // "no-lonely-if": OFF /* preference */,
360
249
  "no-loop-func": ON /* TS-capable */,
361
- "no-magic-numbers": OFF /* TS-capable BUT preference - breaks TypeScript number literals, even with most liberal exceptions */,
362
- "no-multi-assign": [
363
- ON,
364
- {
365
- ignoreNonDeclaration: false,
366
- },
367
- ],
250
+ // "no-magic-numbers": OFF /* TS-capable BUT preference - breaks TypeScript number literals, even with most liberal exceptions */,
251
+ "no-multi-assign": ON,
368
252
  "no-multi-str": ON,
369
- "no-negated-condition": OFF /* preference */,
370
- "no-nested-ternary": OFF /* preference */,
253
+ // "no-negated-condition": OFF /* preference */,
254
+ // "no-nested-ternary": OFF /* preference */,
371
255
  "no-new": ON,
372
256
  "no-new-func": ON,
373
257
  "no-new-wrappers": ON,
@@ -378,199 +262,140 @@ export const Enable = {
378
262
  "no-param-reassign": [
379
263
  ON,
380
264
  {
381
- props: true,
382
- ignorePropertyModificationsFor: [],
383
- ignorePropertyModificationsForRegex: [],
265
+ props: true /* @default false */,
266
+ // ignorePropertyModificationsFor: [],
267
+ // ignorePropertyModificationsForRegex: [],
384
268
  },
385
269
  ],
386
270
  "no-plusplus": [
387
271
  ON,
388
272
  {
389
- allowForLoopAfterthoughts: true,
273
+ allowForLoopAfterthoughts: true /* @default false */,
390
274
  },
391
275
  ],
392
276
  "no-proto": ON,
393
- "no-redeclare": [
394
- ON,
395
- {
396
- builtinGlobals: true,
397
- },
398
- ] /* tsc -- TSLint:OFF: tsc (let, const, -var) */,
399
- "no-regex-spaces": OFF /* preference */,
400
- "no-restricted-exports": OFF /* preference */,
401
- "no-restricted-globals": OFF /* TS-capable BUT preference */,
402
- "no-restricted-imports": OFF /* preference -- TSLint:OFF */,
403
- "no-restricted-properties": OFF /* preference */,
404
- "no-restricted-syntax": OFF /* preference */,
405
- "no-return-assign": OFF /* "always" | "except-parens" (disallow assignments unless enclosed in parens) */,
277
+ // "no-redeclare": OFF /* tsc -- TSLint:OFF: tsc (let, const, -var) */,
278
+ // "no-regex-spaces": OFF /* preference */,
279
+ // "no-restricted-exports": OFF /* preference */,
280
+ // "no-restricted-globals": OFF /* TS-capable BUT preference */,
281
+ // "no-restricted-imports": OFF /* preference -- TSLint:OFF */,
282
+ // "no-restricted-properties": OFF /* preference */,
283
+ // "no-restricted-syntax": OFF /* preference */,
284
+ // "no-return-assign": OFF /* "always" | "except-parens" (disallow assignments unless enclosed in parens) */,
406
285
  "no-script-url": ON,
407
- "no-sequences": [
408
- ON,
409
- {
410
- allowInParentheses: true,
411
- },
412
- ],
413
- "no-shadow": OFF /* TS-capable BUT investigate */,
414
- "no-shadow-restricted-names": [
415
- ON,
416
- {
417
- reportGlobalThis: false,
418
- },
419
- ],
420
- "no-ternary": OFF /* preference */,
286
+ "no-sequences": ON,
287
+ // "no-shadow": OFF /* TS-capable BUT investigate */,
288
+ "no-shadow-restricted-names": ON,
289
+ // "no-ternary": OFF /* preference */,
421
290
  "no-throw-literal": ON /* TSLint */,
422
291
  "no-undef-init": ON,
423
- "no-undefined": OFF /* investigate (breaks Scriptable? breaks Sveltekit?) */,
424
- "no-underscore-dangle": OFF /* preference */,
425
- "no-unneeded-ternary": [
426
- ON,
427
- {
428
- defaultAssignment: false,
429
- },
430
- ],
292
+ // "no-undefined": OFF /* investigate (breaks Scriptable? breaks Sveltekit?) */,
293
+ // "no-underscore-dangle": OFF /* preference */,
294
+ "no-unneeded-ternary": ON,
431
295
  "no-unused-expressions": [
432
296
  ON,
433
297
  {
434
- allowShortCircuit: true,
435
- allowTernary: true,
436
- allowTaggedTemplates: true,
437
- enforceForJSX: false,
438
- ignoreDirectives: false,
298
+ allowShortCircuit: true /* @default false */,
299
+ allowTernary: true /* @default false */,
300
+ // allowTaggedTemplates: false,
301
+ // enforceForJSX: false,
302
+ // ignoreDirectives: false /* emcaVersion:3 only */,
439
303
  },
440
304
  ] /* TS-capable */,
441
305
  "no-unused-labels": ON,
442
306
  "no-useless-call": ON,
443
307
  "no-useless-catch": ON,
444
- "no-useless-computed-key": [
445
- ON,
446
- {
447
- enforceForClassMembers: true,
448
- },
449
- ],
308
+ "no-useless-computed-key": ON,
450
309
  "no-useless-concat": ON,
451
310
  "no-useless-constructor": ON /* TS-capable */,
452
311
  "no-useless-escape": [
453
312
  ON,
454
313
  {
455
- allowRegexCharacters: ["-"],
456
- },
457
- ],
458
- "no-useless-rename": [
459
- ON,
460
- {
461
- ignoreImport: false,
462
- ignoreExport: false,
463
- ignoreDestructuring: false,
314
+ allowRegexCharacters: ["-"] /* why isn't this the default behavior? */,
464
315
  },
465
316
  ],
317
+ "no-useless-rename": ON,
466
318
  "no-useless-return": ON,
467
319
  "no-var": ON /* TS-capable */,
468
320
  "no-void": [
469
321
  ON,
470
322
  {
471
- allowAsStatement: true,
323
+ allowAsStatement: true /* @default false */,
472
324
  },
473
325
  ],
474
- "no-warning-comments": OFF /* preference */,
326
+ // "no-warning-comments": OFF /* preference */,
475
327
  "no-with": ON,
476
- "object-shorthand": [
477
- ON,
478
- always,
479
- {
480
- avoidQuotes: true,
481
- ignoreConstructors: false,
482
- avoidExplicitReturnArrows: false,
483
- },
484
- ],
328
+ "object-shorthand": ON,
485
329
  "one-var": [
486
330
  ON,
487
331
  {
488
332
  "var": consecutive,
489
333
  let: consecutive,
490
334
  "const": consecutive,
335
+ using: consecutive,
336
+ awaitUsing: consecutive,
491
337
  separateRequires: true,
492
338
  },
493
339
  ],
494
- "operator-assignment": [
495
- ON,
496
- always,
497
- ],
498
- "prefer-arrow-callback": [
499
- ON,
500
- {
501
- allowNamedFunctions: false,
502
- allowUnboundThis: true,
503
- },
504
- ] /* TS-capable */,
340
+ "operator-assignment": ON,
341
+ "prefer-arrow-callback": ON /* TS-capable */,
505
342
  "prefer-const": [
506
343
  ON,
507
344
  {
508
- destructuring: all,
509
- ignoreReadBeforeAssign: false,
345
+ destructuring: all /* any | @default all */,
346
+ // ignoreReadBeforeAssign: false,
510
347
  },
511
348
  ],
512
349
  "prefer-destructuring": [
513
350
  ON,
514
351
  {
515
- VariableDeclarator: {
516
- array: true,
517
- object: true,
518
- },
352
+ // VariableDeclarator: {
353
+ // array: true,
354
+ // object: true,
355
+ // },
519
356
  AssignmentExpression: {
520
- array: false,
521
- object: false,
357
+ array: false /* @default true */,
358
+ object: false /* @default true */,
522
359
  },
523
360
  },
524
361
  {
525
- enforceForRenamedProperties: true,
362
+ enforceForRenamedProperties: true /* @default false */,
526
363
  },
527
364
  ] /* TSLint */,
528
365
  "prefer-exponentiation-operator": ON,
529
- "prefer-named-capture-group": OFF,
366
+ // "prefer-named-capture-group": OFF,
530
367
  "prefer-numeric-literals": ON,
531
368
  "prefer-object-has-own": ON,
532
369
  "prefer-object-spread": ON,
533
- "prefer-promise-reject-errors": [
534
- ON,
535
- {
536
- allowEmptyReject: false,
537
- },
538
- ],
370
+ "prefer-promise-reject-errors": ON,
539
371
  "prefer-regex-literals": [
540
372
  ON,
541
373
  {
542
- disallowRedundantWrapping: true,
374
+ disallowRedundantWrapping: true /* @default false */,
543
375
  },
544
376
  ] /* TSLint */,
545
377
  "prefer-rest-params": ON,
546
378
  "prefer-spread": ON,
547
- "prefer-template": OFF /* preference: performance */,
379
+ // "prefer-template": OFF /* preference: performance */,
548
380
  radix: [
549
381
  ON,
550
- as_needed,
382
+ as_needed /* as-needed | @default always */,
551
383
  ],
552
384
  "require-await": ON /* TSLint */,
553
385
  "require-unicode-regexp": ON,
554
386
  "require-yield": ON,
555
- "sort-imports": OFF /* preference */,
556
- "sort-keys": OFF /* preference */,
557
- "sort-vars": OFF /* preference */,
558
- strict: OFF /* preference */,
559
- "symbol-description": OFF /* preference */,
387
+ // "sort-imports": OFF /* preference */,
388
+ // "sort-keys": OFF /* preference */,
389
+ // "sort-vars": OFF /* preference */,
390
+ // strict: OFF /* preference */,
391
+ // "symbol-description": OFF /* preference */,
560
392
  "vars-on-top": ON,
561
- yoda: [
562
- ON,
563
- never,
564
- {
565
- exceptRange: false,
566
- onlyEquality: false,
567
- },
568
- ],
393
+ yoda: ON,
569
394
  // #endregion
570
395
 
571
396
  // #region FORMATTING
572
397
  // [ https://eslint.org/docs/latest/rules/#layout--formatting ]
573
- "unicode-bom": OFF /* preference: don't care */,
398
+ // "unicode-bom": OFF /* preference: don't care */,
574
399
  // #endregion
575
400
  } as const,
576
401
  };