@neralabs/rerail-pack-javascript 0.1.2 → 0.1.4
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/README.md +416 -3
- package/licenses/eslint/UPSTREAM.md +28 -3
- package/licenses/eslint-plugin-unicorn/UPSTREAM.md +39 -2
- package/pack.json +43 -3
- package/package.json +1 -1
- package/rules/eslint-arrow-body-style.json +1 -1
- package/rules/eslint-capitalized-comments.json +1 -1
- package/rules/eslint-curly.json +1 -0
- package/rules/eslint-default-case-last.json +1 -1
- package/rules/eslint-default-case.json +1 -1
- package/rules/eslint-eqeqeq.json +1 -1
- package/rules/eslint-func-style.json +1 -1
- package/rules/eslint-guard-for-in.json +1 -1
- package/rules/eslint-no-bitwise.json +1 -1
- package/rules/eslint-no-caller.json +2 -2
- package/rules/eslint-no-case-declarations.json +2 -2
- package/rules/eslint-no-compare-neg-zero.json +2 -2
- package/rules/eslint-no-cond-assign.json +1 -1
- package/rules/eslint-no-console.json +1 -1
- package/rules/eslint-no-continue.json +2 -2
- package/rules/eslint-no-debugger.json +1 -1
- package/rules/eslint-no-delete-var.json +2 -2
- package/rules/eslint-no-div-regex.json +1 -1
- package/rules/eslint-no-dupe-keys.json +3 -7
- package/rules/eslint-no-duplicate-case.json +2 -2
- package/rules/eslint-no-empty-pattern.json +1 -1
- package/rules/eslint-no-empty-static-block.json +2 -2
- package/rules/eslint-no-empty.json +2 -2
- package/rules/eslint-no-eq-null.json +1 -1
- package/rules/eslint-no-extend-native.json +1 -1
- package/rules/eslint-no-inline-comments.json +1 -1
- package/rules/eslint-no-iterator.json +1 -1
- package/rules/eslint-no-labels.json +1 -0
- package/rules/eslint-no-loss-of-precision.json +1 -1
- package/rules/eslint-no-multi-str.json +2 -2
- package/rules/eslint-no-negated-condition.json +2 -2
- package/rules/eslint-no-nested-ternary.json +1 -1
- package/rules/eslint-no-new-wrappers.json +1 -1
- package/rules/eslint-no-new.json +2 -2
- package/rules/eslint-no-nonoctal-decimal-escape.json +2 -2
- package/rules/eslint-no-object-constructor.json +1 -0
- package/rules/eslint-no-octal-escape.json +1 -1
- package/rules/eslint-no-octal.json +2 -2
- package/rules/eslint-no-plusplus.json +1 -1
- package/rules/eslint-no-proto.json +1 -1
- package/rules/eslint-no-prototype-builtins.json +3 -3
- package/rules/eslint-no-return-assign.json +1 -1
- package/rules/eslint-no-script-url.json +1 -1
- package/rules/eslint-no-self-compare.json +2 -2
- package/rules/eslint-no-sequences.json +1 -0
- package/rules/eslint-no-setter-return.json +1 -1
- package/rules/eslint-no-sparse-arrays.json +1 -1
- package/rules/eslint-no-template-curly-in-string.json +2 -2
- package/rules/eslint-no-ternary.json +1 -1
- package/rules/eslint-no-unneeded-ternary.json +1 -1
- package/rules/eslint-no-unsafe-finally.json +7 -7
- package/rules/eslint-no-unsafe-negation.json +1 -1
- package/rules/eslint-no-unused-labels.json +1 -0
- package/rules/eslint-no-unused-private-class-members.json +83 -0
- package/rules/eslint-no-useless-call.json +1 -1
- package/rules/eslint-no-useless-catch.json +1 -1
- package/rules/eslint-no-useless-concat.json +1 -1
- package/rules/eslint-no-void.json +1 -1
- package/rules/eslint-no-warning-comments.json +1 -1
- package/rules/eslint-no-with.json +7 -4
- package/rules/eslint-operator-assignment.json +1 -1
- package/rules/eslint-prefer-numeric-literals.json +1 -1
- package/rules/eslint-prefer-spread.json +1 -1
- package/rules/eslint-prefer-template.json +2 -2
- package/rules/eslint-radix.json +2 -2
- package/rules/eslint-sort-imports.json +1 -1
- package/rules/eslint-sort-keys.json +1 -1
- package/rules/eslint-sort-vars.json +1 -1
- package/rules/eslint-use-isnan.json +3 -3
- package/rules/eslint-valid-typeof.json +1 -1
- package/rules/eslint-yoda.json +1 -1
package/pack.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"format": "rerail.rule-pack/v1",
|
|
3
3
|
"id": "javascript",
|
|
4
|
-
"name": "JavaScript",
|
|
4
|
+
"name": "JavaScript and TypeScript (ESLint core)",
|
|
5
5
|
"category": "language",
|
|
6
|
-
"covers": "
|
|
7
|
-
"reason": "matches JavaScript",
|
|
6
|
+
"covers": "71 ESLint core rules ported to Rerail, 24 of them on and 47 off until turned on, each scored against ESLint's own recorded findings on its test cases.",
|
|
7
|
+
"reason": "matches JavaScript or TypeScript source",
|
|
8
8
|
"match": {
|
|
9
9
|
"any": [
|
|
10
10
|
{
|
|
@@ -76,6 +76,13 @@
|
|
|
76
76
|
"group": "ESLint",
|
|
77
77
|
"on": false
|
|
78
78
|
},
|
|
79
|
+
{
|
|
80
|
+
"id": "eslint-curly",
|
|
81
|
+
"document": "rules/eslint-curly.json",
|
|
82
|
+
"title": "ESLint curly: Enforce consistent brace style for all control statements",
|
|
83
|
+
"group": "ESLint",
|
|
84
|
+
"on": false
|
|
85
|
+
},
|
|
79
86
|
{
|
|
80
87
|
"id": "eslint-default-case",
|
|
81
88
|
"document": "rules/eslint-default-case.json",
|
|
@@ -234,6 +241,13 @@
|
|
|
234
241
|
"group": "ESLint",
|
|
235
242
|
"on": false
|
|
236
243
|
},
|
|
244
|
+
{
|
|
245
|
+
"id": "eslint-no-labels",
|
|
246
|
+
"document": "rules/eslint-no-labels.json",
|
|
247
|
+
"title": "ESLint no-labels: Disallow labeled statements",
|
|
248
|
+
"group": "ESLint",
|
|
249
|
+
"on": false
|
|
250
|
+
},
|
|
237
251
|
{
|
|
238
252
|
"id": "eslint-no-loss-of-precision",
|
|
239
253
|
"document": "rules/eslint-no-loss-of-precision.json",
|
|
@@ -281,6 +295,13 @@
|
|
|
281
295
|
"title": "ESLint no-nonoctal-decimal-escape: Disallow \\8 and \\9 escape sequences in string literals",
|
|
282
296
|
"group": "ESLint"
|
|
283
297
|
},
|
|
298
|
+
{
|
|
299
|
+
"id": "eslint-no-object-constructor",
|
|
300
|
+
"document": "rules/eslint-no-object-constructor.json",
|
|
301
|
+
"title": "ESLint no-object-constructor: Disallow calls to the Object constructor without an argument",
|
|
302
|
+
"group": "ESLint",
|
|
303
|
+
"on": false
|
|
304
|
+
},
|
|
284
305
|
{
|
|
285
306
|
"id": "eslint-no-octal",
|
|
286
307
|
"document": "rules/eslint-no-octal.json",
|
|
@@ -335,6 +356,13 @@
|
|
|
335
356
|
"group": "ESLint",
|
|
336
357
|
"on": false
|
|
337
358
|
},
|
|
359
|
+
{
|
|
360
|
+
"id": "eslint-no-sequences",
|
|
361
|
+
"document": "rules/eslint-no-sequences.json",
|
|
362
|
+
"title": "ESLint no-sequences: Disallow comma operators",
|
|
363
|
+
"group": "ESLint",
|
|
364
|
+
"on": false
|
|
365
|
+
},
|
|
338
366
|
{
|
|
339
367
|
"id": "eslint-no-setter-return",
|
|
340
368
|
"document": "rules/eslint-no-setter-return.json",
|
|
@@ -380,6 +408,18 @@
|
|
|
380
408
|
"title": "ESLint no-unsafe-negation: Disallow negating the left operand of relational operators",
|
|
381
409
|
"group": "ESLint"
|
|
382
410
|
},
|
|
411
|
+
{
|
|
412
|
+
"id": "eslint-no-unused-labels",
|
|
413
|
+
"document": "rules/eslint-no-unused-labels.json",
|
|
414
|
+
"title": "ESLint no-unused-labels: Disallow unused labels",
|
|
415
|
+
"group": "ESLint"
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
"id": "eslint-no-unused-private-class-members",
|
|
419
|
+
"document": "rules/eslint-no-unused-private-class-members.json",
|
|
420
|
+
"title": "ESLint no-unused-private-class-members: Disallow unused private class members",
|
|
421
|
+
"group": "ESLint"
|
|
422
|
+
},
|
|
383
423
|
{
|
|
384
424
|
"id": "eslint-no-useless-call",
|
|
385
425
|
"document": "rules/eslint-no-useless-call.json",
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"format":"rerail.policy/v1","id":"eslint-arrow-body-style","revision":4,"mode":"steer","description":"Port of ESLint's `arrow-body-style` rule (default options: as-needed). Flags an arrow block body that only returns a value. Fixes when ESLint's comment and ASI guards allow and the rewrite is a template of whole nodes. Options are declared in the `options` define (the rule's defaults); a variant is a config patch.","scope":{"include":["**/*"],"exclude":[]},"clauses":[{"id":"options","define":{"options":{"option":{"type":"string","nullable":true,"default":null},"requireReturnForObjectLiteral":{"type":"boolean","nullable":true,"default":null}}}},{"id":"shared","define":{"language":"typescript","utils":{"already-parenthesized":{"has":{"stopBy":"neighbor","kind":"return_statement","has":{"stopBy":"neighbor","kind":"parenthesized_expression"}}},"arg":{"has":{"stopBy":"neighbor","kind":"return_statement","has":{"stopBy":"neighbor","matches":"return-value","pattern":"$ARG"}}},"arrow-block":{"kind":"statement_block","inside":{"kind":"arrow_function","stopBy":"neighbor"}},"arrow-expression-body":{"not":{"any":[{"kind":"comment"},{"kind":"statement_block"}]},"follows":{"regex":"^=>$","stopBy":"end"},"inside":{"kind":"arrow_function","stopBy":"neighbor"}},"bare-return":{"has":{"stopBy":"neighbor","kind":"return_statement","not":{"has":{"stopBy":"neighbor","matches":"return-value"}}}},"block-statement":{"all":[{"not":{"kind":"comment"}},{"not":{"regex":"^[{}]$"}}]},"first-child":{"not":{"follows":{"regex":"[\\s\\S]"}}},"for-init":{"inside":{"stopBy":"end","follows":{"regex":"^\\($"},"inside":{"kind":"for_statement","stopBy":"neighbor"}}},"hazard-after":{"any":[{"precedes":{"stopBy":{"not":{"kind":"comment"}},"not":{"kind":"comment"},"regex":"^[(\\[/`+-]"}},{"all":[{"not":{"precedes":{"stopBy":"end","not":{"kind":"comment"}}}},{"inside":{"stopBy":"neighbor","matches":"hazard-after"}}]}]},"leads-with-paren-object":{"any":[{"kind":"parenthesized_expression","has":{"stopBy":"neighbor","follows":{"regex":"^\\($"},"matches":"starts-with-object"}},{"has":{"stopBy":"neighbor","all":[{"matches":"first-child"},{"matches":"leads-with-paren-object"}]}}]},"needs-parens":{"any":[{"matches":"object-first"},{"has":{"stopBy":"neighbor","kind":"return_statement","has":{"stopBy":"neighbor","kind":"sequence_expression"}}},{"all":[{"inside":{"kind":"arrow_function","stopBy":"neighbor","has":{"stopBy":"end","kind":"binary_expression","has":{"stopBy":"neighbor","regex":"^in$"}}}},{"inside":{"kind":"arrow_function","stopBy":"neighbor","matches":"for-init"}}]}]},"no-comments":{"all":[{"not":{"has":{"kind":"comment"}}},{"not":{"has":{"kind":"return_statement","has":{"kind":"comment"}}}}]},"object-first":{"has":{"stopBy":"neighbor","kind":"return_statement","has":{"stopBy":"neighbor","matches":"return-value","regex":"^\\{"}}},"return-value":{"not":{"any":[{"kind":"comment"},{"regex":"^(?:return|;)$"}]}},"single-return":{"all":[{"has":{"stopBy":"neighbor","kind":"return_statement","pattern":"$RET"}},{"not":{"has":{"stopBy":"neighbor","all":[{"matches":"block-statement"},{"not":{"kind":"return_statement"}}]}}},{"not":{"has":{"stopBy":"neighbor","kind":"return_statement","precedes":{"kind":"return_statement","stopBy":"end"}}}}]},"starts-with-object":{"any":[{"kind":"object"},{"has":{"stopBy":"neighbor","all":[{"matches":"first-child"},{"matches":"starts-with-object"}]}}]},"unparen":{"any":[{"not":{"kind":"parenthesized_expression"},"pattern":"$INNER"},{"kind":"parenthesized_expression","has":{"not":{"any":[{"kind":"comment"},{"regex":"^[()]$"}]},"matches":"unparen"}}]},"unparen-object":{"any":[{"kind":"object"},{"kind":"parenthesized_expression","has":{"stopBy":"neighbor","matches":"unparen-object"}}]},"r1":{"not":{"has":{"has":{"matches":"unparen-object","stopBy":"neighbor"},"kind":"return_statement","stopBy":"neighbor"}}},"r2":{"has":{"not":{"any":[{"kind":"comment"},{"regex":"^[()]$"}]},"pattern":"$X","stopBy":"neighbor"},"kind":"parenthesized_expression","regex":"^\\(\\{[\\s\\S]*\\S\\)$"},"r3":{"not":{"all":[{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"}]}},"r4":{"any":[{"not":{"matches":"needs-parens"}},{"matches":"already-parenthesized"}]},"r5":{"has":{"matches":"block-statement","stopBy":"neighbor"}}}}},{"id":"unexpectedObjectBlock-fix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"matches":"object-first"},{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"},{"matches":"r4"}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; parenthesize the returned value and move it immediately after the `=>`.","fix":"$ARG","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedObjectBlock-fix-parens","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"matches":"object-first"},{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"},{"matches":"needs-parens"},{"not":{"matches":"already-parenthesized"}}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; parenthesize the returned value and move it immediately after the `=>`.","fix":"($ARG)","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedObjectBlock-nofix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"matches":"object-first"},{"matches":"r3"}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; parenthesize the returned value and move it immediately after the `=>`.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedSingleBlock-fix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"not":{"matches":"object-first"}},{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"},{"matches":"r4"}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; move the returned value immediately after the `=>`.","fix":"$ARG","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedSingleBlock-fix-parens","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"not":{"matches":"object-first"}},{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"},{"matches":"needs-parens"},{"not":{"matches":"already-parenthesized"}}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; move the returned value immediately after the `=>`.","fix":"($ARG)","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedSingleBlock-nofix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"not":{"matches":"object-first"}},{"matches":"r3"}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; move the returned value immediately after the `=>`.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"expectedBlock-fix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-expression-body"},{"$option":"option","cases":{"as-needed":[{"matches":"unparen-object"}]},"default":[],"spread":true},{"not":{"matches":"leads-with-paren-object"}},{"matches":"unparen"},{"pattern":"$B"}]},"when":{"option":{"option":{"in":["always","as-needed"]}}}}},"violation":{"anchor":"capture.INNER","code":"arrow-body-style","message":"Expected block statement surrounding arrow body.","fix":"{return $B}","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"expectedBlock-fix-object","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-expression-body"},{"$option":"option","cases":{"as-needed":[{"matches":"unparen-object"}]},"default":[],"spread":true},{"matches":"r2"},{"matches":"unparen"}]},"when":{"option":{"option":{"in":["always","as-needed"]}}}}},"violation":{"anchor":"capture.INNER","code":"arrow-body-style","message":"Expected block statement surrounding arrow body.","fix":"{return $X}","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"expectedBlock-nofix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-expression-body"},{"$option":"option","cases":{"as-needed":[{"matches":"unparen-object"}]},"default":[],"spread":true},{"matches":"leads-with-paren-object"},{"not":{"matches":"r2"}},{"matches":"unparen"}]},"when":{"option":{"option":{"in":["always","as-needed"]}}}}},"violation":{"anchor":"capture.INNER","code":"arrow-body-style","message":"Expected block statement surrounding arrow body.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedEmptyBlock","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"not":{"matches":"r5"}}]},"when":{"option":{"option":"never"}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; put a value of `undefined` immediately after the `=>`.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedOtherBlock","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"r5"},{"not":{"matches":"single-return"}}]},"when":{"option":{"option":"never"}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}}]}
|
|
1
|
+
{"format":"rerail.policy/v1","id":"eslint-arrow-body-style","revision":4,"mode":"steer","description":"Drop the braces and return from an arrow function whose body only returns a value; write the value directly after the arrow.","scope":{"include":["**/*"],"exclude":[]},"clauses":[{"id":"options","define":{"options":{"option":{"type":"string","nullable":true,"default":null},"requireReturnForObjectLiteral":{"type":"boolean","nullable":true,"default":null}}}},{"id":"shared","define":{"language":"typescript","utils":{"already-parenthesized":{"has":{"stopBy":"neighbor","kind":"return_statement","has":{"stopBy":"neighbor","kind":"parenthesized_expression"}}},"arg":{"has":{"stopBy":"neighbor","kind":"return_statement","has":{"stopBy":"neighbor","matches":"return-value","pattern":"$ARG"}}},"arrow-block":{"kind":"statement_block","inside":{"kind":"arrow_function","stopBy":"neighbor"}},"arrow-expression-body":{"not":{"any":[{"kind":"comment"},{"kind":"statement_block"}]},"follows":{"regex":"^=>$","stopBy":"end"},"inside":{"kind":"arrow_function","stopBy":"neighbor"}},"bare-return":{"has":{"stopBy":"neighbor","kind":"return_statement","not":{"has":{"stopBy":"neighbor","matches":"return-value"}}}},"block-statement":{"all":[{"not":{"kind":"comment"}},{"not":{"regex":"^[{}]$"}}]},"first-child":{"not":{"follows":{"regex":"[\\s\\S]"}}},"for-init":{"inside":{"stopBy":"end","follows":{"regex":"^\\($"},"inside":{"kind":"for_statement","stopBy":"neighbor"}}},"hazard-after":{"any":[{"precedes":{"stopBy":{"not":{"kind":"comment"}},"not":{"kind":"comment"},"regex":"^[(\\[/`+-]"}},{"all":[{"not":{"precedes":{"stopBy":"end","not":{"kind":"comment"}}}},{"inside":{"stopBy":"neighbor","matches":"hazard-after"}}]}]},"leads-with-paren-object":{"any":[{"kind":"parenthesized_expression","has":{"stopBy":"neighbor","follows":{"regex":"^\\($"},"matches":"starts-with-object"}},{"has":{"stopBy":"neighbor","all":[{"matches":"first-child"},{"matches":"leads-with-paren-object"}]}}]},"needs-parens":{"any":[{"matches":"object-first"},{"has":{"stopBy":"neighbor","kind":"return_statement","has":{"stopBy":"neighbor","kind":"sequence_expression"}}},{"all":[{"inside":{"kind":"arrow_function","stopBy":"neighbor","has":{"stopBy":"end","kind":"binary_expression","has":{"stopBy":"neighbor","regex":"^in$"}}}},{"inside":{"kind":"arrow_function","stopBy":"neighbor","matches":"for-init"}}]}]},"no-comments":{"all":[{"not":{"has":{"kind":"comment"}}},{"not":{"has":{"kind":"return_statement","has":{"kind":"comment"}}}}]},"object-first":{"has":{"stopBy":"neighbor","kind":"return_statement","has":{"stopBy":"neighbor","matches":"return-value","regex":"^\\{"}}},"return-value":{"not":{"any":[{"kind":"comment"},{"regex":"^(?:return|;)$"}]}},"single-return":{"all":[{"has":{"stopBy":"neighbor","kind":"return_statement","pattern":"$RET"}},{"not":{"has":{"stopBy":"neighbor","all":[{"matches":"block-statement"},{"not":{"kind":"return_statement"}}]}}},{"not":{"has":{"stopBy":"neighbor","kind":"return_statement","precedes":{"kind":"return_statement","stopBy":"end"}}}}]},"starts-with-object":{"any":[{"kind":"object"},{"has":{"stopBy":"neighbor","all":[{"matches":"first-child"},{"matches":"starts-with-object"}]}}]},"unparen":{"any":[{"not":{"kind":"parenthesized_expression"},"pattern":"$INNER"},{"kind":"parenthesized_expression","has":{"not":{"any":[{"kind":"comment"},{"regex":"^[()]$"}]},"matches":"unparen"}}]},"unparen-object":{"any":[{"kind":"object"},{"kind":"parenthesized_expression","has":{"stopBy":"neighbor","matches":"unparen-object"}}]},"r1":{"not":{"has":{"has":{"matches":"unparen-object","stopBy":"neighbor"},"kind":"return_statement","stopBy":"neighbor"}}},"r2":{"has":{"not":{"any":[{"kind":"comment"},{"regex":"^[()]$"}]},"pattern":"$X","stopBy":"neighbor"},"kind":"parenthesized_expression","regex":"^\\(\\{[\\s\\S]*\\S\\)$"},"r3":{"not":{"all":[{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"}]}},"r4":{"any":[{"not":{"matches":"needs-parens"}},{"matches":"already-parenthesized"}]},"r5":{"has":{"matches":"block-statement","stopBy":"neighbor"}}}}},{"id":"unexpectedObjectBlock-fix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"matches":"object-first"},{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"},{"matches":"r4"}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; parenthesize the returned value and move it immediately after the `=>`.","fix":"$ARG","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedObjectBlock-fix-parens","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"matches":"object-first"},{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"},{"matches":"needs-parens"},{"not":{"matches":"already-parenthesized"}}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; parenthesize the returned value and move it immediately after the `=>`.","fix":"($ARG)","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedObjectBlock-nofix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"matches":"object-first"},{"matches":"r3"}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; parenthesize the returned value and move it immediately after the `=>`.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedSingleBlock-fix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"not":{"matches":"object-first"}},{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"},{"matches":"r4"}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; move the returned value immediately after the `=>`.","fix":"$ARG","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedSingleBlock-fix-parens","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"not":{"matches":"object-first"}},{"not":{"matches":"bare-return"}},{"matches":"no-comments"},{"not":{"matches":"hazard-after"}},{"matches":"arg"},{"matches":"needs-parens"},{"not":{"matches":"already-parenthesized"}}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; move the returned value immediately after the `=>`.","fix":"($ARG)","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedSingleBlock-nofix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"single-return"},{"$option":"requireReturnForObjectLiteral","cases":{"true":[{"matches":"r1"}]},"default":[],"spread":true},{"not":{"matches":"object-first"}},{"matches":"r3"}]},"when":{"option":{"option":{"in":[null,"never","as-needed"]}}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; move the returned value immediately after the `=>`.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"expectedBlock-fix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-expression-body"},{"$option":"option","cases":{"as-needed":[{"matches":"unparen-object"}]},"default":[],"spread":true},{"not":{"matches":"leads-with-paren-object"}},{"matches":"unparen"},{"pattern":"$B"}]},"when":{"option":{"option":{"in":["always","as-needed"]}}}}},"violation":{"anchor":"capture.INNER","code":"arrow-body-style","message":"Expected block statement surrounding arrow body.","fix":"{return $B}","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"expectedBlock-fix-object","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-expression-body"},{"$option":"option","cases":{"as-needed":[{"matches":"unparen-object"}]},"default":[],"spread":true},{"matches":"r2"},{"matches":"unparen"}]},"when":{"option":{"option":{"in":["always","as-needed"]}}}}},"violation":{"anchor":"capture.INNER","code":"arrow-body-style","message":"Expected block statement surrounding arrow body.","fix":"{return $X}","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"expectedBlock-nofix","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-expression-body"},{"$option":"option","cases":{"as-needed":[{"matches":"unparen-object"}]},"default":[],"spread":true},{"matches":"leads-with-paren-object"},{"not":{"matches":"r2"}},{"matches":"unparen"}]},"when":{"option":{"option":{"in":["always","as-needed"]}}}}},"violation":{"anchor":"capture.INNER","code":"arrow-body-style","message":"Expected block statement surrounding arrow body.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedEmptyBlock","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"not":{"matches":"r5"}}]},"when":{"option":{"option":"never"}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body; put a value of `undefined` immediately after the `=>`.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}},{"id":"unexpectedOtherBlock","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"arrow-block"},{"matches":"r5"},{"not":{"matches":"single-return"}}]},"when":{"option":{"option":"never"}}}},"violation":{"anchor":"witness.span","code":"arrow-body-style","message":"Unexpected block statement surrounding arrow body.","suppress":{"eslint":{"rules":["arrow-body-style"]},"oxlint":{"rules":["arrow-body-style"]},"biome":{"rules":["lint/style/useConsistentArrowReturn"]}}}}]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"format":"rerail.policy/v1","id":"eslint-capitalized-comments","revision":5,"mode":"steer","description":"
|
|
1
|
+
{"format":"rerail.policy/v1","id":"eslint-capitalized-comments","revision":5,"mode":"steer","description":"Start every comment with a capital letter; directive comments and comments starting with a URL are skipped.","scope":{"include":["**/*"],"exclude":[]},"clauses":[{"id":"options","define":{"options":{"option":{"type":"string","nullable":true,"default":null},"ignoreInlineComments":{"type":"boolean","nullable":true,"default":null},"ignoreConsecutiveComments":{"type":"boolean","nullable":true,"default":null},"ignorePattern":{"type":"string","nullable":true,"default":null},"block.ignorePattern":{"type":"string","nullable":true,"default":null},"line.ignorePattern":{"type":"string","nullable":true,"default":null}}}},{"id":"shared","define":{"language":"typescript","utils":{"r1":{"all":[{"layout":{"before":{"breaks":{"eq":0},"comments":true,"to":"token"}}},{"layout":{"after":{"breaks":{"eq":0},"comments":true,"to":"token"}}}]}}}},{"id":"comment-case","forbid":{"ast":{"language":"typescript","rule":{"all":[{"kind":"comment"},{"regex":{"$option":"option","cases":{"never":"^(?://|/\\*)[\\s*]*(?<L>\\p{Lu})"},"default":"^(?://|/\\*)[\\s*]*(?<L>\\p{Ll})"}},{"not":{"regex":"^(?://|/\\*)\\s*(?:eslint|jshint\\s+|jslint\\s+|istanbul\\s+|globals?\\s+|exported\\s+|jscs)"}},{"not":{"regex":"^(?://|/\\*)[\\s*]*(?:[^:/?#\\s*]\\**)+:\\**/\\**/\\**[^?#*]"}},{"$option":"ignorePattern","cases":{"match":[],"Match":[],"foo|bar":[],"Foo|Bar":[],"ignored?":[]},"default":{"$option":"ignoreInlineComments","cases":{"true":[{"not":{"$option":"ignoreInlineComments","cases":{"true":{"matches":"r1"}},"default":{"follows":{"kind":"comment"}}}}]},"default":{"$option":"ignoreConsecutiveComments","cases":{"true":[{"not":{"$option":"ignoreInlineComments","cases":{"true":{"matches":"r1"}},"default":{"follows":{"kind":"comment"}}}}]},"default":[]}},"spread":true},{"$option":"ignorePattern","cases":{"match":[{"not":{"all":[{"regex":"^//"},{"regex":"^(?://|/\\*)[\\s*]*(?:match)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"match":[{"not":{"all":[{"regex":"^/\\*"},{"regex":"^(?://|/\\*)[\\s*]*(?:match)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"Match":[{"not":{"all":[{"regex":"^//"},{"regex":"^(?://|/\\*)[\\s*]*(?:Match)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"Match":[{"not":{"all":[{"regex":"^/\\*"},{"regex":"^(?://|/\\*)[\\s*]*(?:Match)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"foo|bar":[{"not":{"all":[{"regex":"^//"},{"regex":"^(?://|/\\*)[\\s*]*(?:foo|bar)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"foo|bar":[{"not":{"all":[{"regex":"^/\\*"},{"regex":"^(?://|/\\*)[\\s*]*(?:foo|bar)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"Foo|Bar":[{"not":{"all":[{"regex":"^//"},{"regex":"^(?://|/\\*)[\\s*]*(?:Foo|Bar)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"Foo|Bar":[{"not":{"all":[{"regex":"^/\\*"},{"regex":"^(?://|/\\*)[\\s*]*(?:Foo|Bar)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"ignored?":[{"not":{"all":[{"regex":"^//"},{"regex":"^(?://|/\\*)[\\s*]*(?:ignored?)"}]}}]},"default":[],"spread":true},{"$option":"ignorePattern","cases":{"ignored?":[{"not":{"all":[{"regex":"^/\\*"},{"regex":"^(?://|/\\*)[\\s*]*(?:ignored?)"}]}}]},"default":[],"spread":true},{"$option":"block.ignorePattern","cases":{"blockCommentIgnorePattern":[{"not":{"all":[{"regex":"^//"},{"regex":"^(?://|/\\*)[\\s*]*(?:lineCommentIgnorePattern)"}]}}]},"default":[],"spread":true},{"$option":"block.ignorePattern","cases":{"blockCommentIgnorePattern":[{"not":{"all":[{"regex":"^/\\*"},{"regex":"^(?://|/\\*)[\\s*]*(?:blockCommentIgnorePattern)"}]}}]},"default":[],"spread":true}]},"transform":{"C":{"convert":{"source":"$L","toCase":{"$option":"option","cases":{"never":"lowerCase"},"default":"upperCase"}}}}}},"violation":{"anchor":"witness.span","code":"capitalized-comments","message":{"$option":"option","cases":{"never":"Comments should not begin with an uppercase character."},"default":"Comments should not begin with a lowercase character."},"fix":{"template":"$C","range":"capture.L"},"suppress":{"eslint":{"rules":["capitalized-comments"]},"oxlint":{"rules":["capitalized-comments"]}}}}]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"format":"rerail.policy/v1","id":"eslint-curly","revision":2,"mode":"steer","description":"Wrap every if, else and loop body in braces, even a single statement; unbraced bodies invite bugs when lines are added.","scope":{"include":["**/*"],"exclude":[]},"clauses":[{"id":"options","define":{"options":{"option":{"type":"string","nullable":true,"default":null},"option2":{"type":"string","nullable":true,"default":null}}}},{"id":"shared","define":{"language":"typescript","utils":{"before-else":{"any":[{"precedes":{"kind":"else_clause"}},{"inside":{"any":[{"kind":"for_statement"},{"kind":"for_in_statement"},{"kind":"while_statement"},{"kind":"labeled_statement"},{"kind":"with_statement"}],"stopBy":"neighbor","matches":"before-else"}},{"inside":{"kind":"else_clause","stopBy":"neighbor","inside":{"kind":"if_statement","stopBy":"neighbor","matches":"before-else"}}}]},"braces-necessary":{"all":[{"matches":"one-statement-block"},{"any":[{"has":{"stopBy":"neighbor","any":[{"any":[{"kind":"lexical_declaration"},{"kind":"function_declaration"},{"kind":"generator_function_declaration"},{"kind":"class_declaration"}]},{"matches":"using-declaration"}]}},{"all":[{"has":{"stopBy":"neighbor","matches":"unsafe-if"}},{"matches":"before-else"}]}]}]},"chain-requires-block":{"kind":"if_statement","any":[{"has":{"stopBy":"neighbor","all":[{"matches":"if-body"},{"matches":"requires-block"}]}},{"has":{"stopBy":"neighbor","kind":"else_clause","has":{"stopBy":"neighbor","any":[{"all":[{"matches":"else-body"},{"matches":"requires-block"}]},{"matches":"chain-requires-block"}]}}}]},"chain-top-requires-block":{"kind":"if_statement","any":[{"all":[{"not":{"matches":"r15"}},{"matches":"chain-requires-block"}]},{"inside":{"stopBy":"neighbor","matches":"r10"}}]},"collapsed":{"any":[{"kind":"empty_statement"},{"all":[{"layout":{"before":{"to":"token","breaks":{"eq":0}}}},{"matches":"one-liner"}]}]},"do-body":{"all":[{"inside":{"kind":"do_statement","stopBy":"neighbor"}},{"follows":{"stopBy":{"not":{"kind":"comment"}},"all":[{"not":{"kind":"comment"}},{"regex":"^do$"}]}}]},"else-body":{"all":[{"not":{"kind":"comment"}},{"matches":"r15"},{"follows":{"stopBy":{"not":{"kind":"comment"}},"all":[{"not":{"kind":"comment"}},{"regex":"^else$"}]}},{"not":{"kind":"if_statement"}}]},"for-body":{"all":[{"inside":{"kind":"for_statement","stopBy":"neighbor"}},{"matches":"r7"}]},"for-in-body":{"all":[{"inside":{"kind":"for_in_statement","stopBy":"neighbor","has":{"regex":"^in$"}}},{"matches":"r7"}]},"for-of-body":{"all":[{"inside":{"kind":"for_in_statement","stopBy":"neighbor","has":{"regex":"^of$"}}},{"matches":"r7"}]},"hazard-next":{"any":[{"precedes":{"stopBy":{"not":{"kind":"comment"}},"all":[{"not":{"kind":"comment"}},{"regex":"^[(\\[/`+\\-]"}]}},{"not":{"matches":"r8"},"inside":{"stopBy":"neighbor","matches":"hazard-next"}}]},"if-body":{"all":[{"inside":{"kind":"if_statement","stopBy":"neighbor"}},{"matches":"r9"}]},"in-chain-requiring-block":{"inside":{"stopBy":"neighbor","any":[{"matches":"r12"},{"matches":"r10"}]}},"one-liner":{"any":[{"layout":{"span":{"eq":0}}},{"all":[{"has":{"regex":"^;$","not":{"matches":"r8"}}},{"not":{"has":{"all":[{"not":{"kind":"comment"}},{"not":{"regex":"^;$"}},{"layout":{"span":{"min":1}}}]}}},{"not":{"has":{"all":[{"not":{"kind":"comment"}},{"not":{"regex":"^;$"}},{"follows":{"stopBy":"end","not":{"kind":"comment"}}},{"matches":"r13"}]}}}]}]},"one-statement-block":{"kind":"statement_block","has":{"stopBy":"neighbor","matches":"statement"},"not":{"has":{"stopBy":"neighbor","all":[{"matches":"statement"},{"precedes":{"stopBy":"end","matches":"statement"}}]}}},"requires-block":{"all":[{"kind":"statement_block"},{"any":[{"not":{"matches":"one-statement-block"}},{"matches":"braces-necessary"}]}]},"statement":{"all":[{"not":{"kind":"comment"}},{"not":{"regex":"^[{}]$"}}]},"unsafe-if":{"any":[{"kind":"if_statement","not":{"has":{"kind":"else_clause"}}},{"kind":"if_statement","has":{"kind":"else_clause","has":{"matches":"unsafe-if"}}},{"any":[{"kind":"for_statement"},{"kind":"for_in_statement"},{"kind":"while_statement"},{"kind":"labeled_statement"},{"kind":"with_statement"}],"has":{"matches":"unsafe-if"}}]},"using-declaration":{"kind":"expression_statement","has":{"stopBy":"neighbor","any":[{"matches":"r11"},{"kind":"await_expression","has":{"stopBy":"neighbor","matches":"r11"}}]}},"while-body":{"all":[{"inside":{"kind":"while_statement","stopBy":"neighbor"}},{"matches":"r9"}]},"r1":{"all":[{"matches":"one-statement-block"},{"any":[{"has":{"kind":"comment","precedes":{"matches":"statement","stopBy":"end"},"stopBy":"neighbor"}},{"has":{"all":[{"matches":"statement"},{"not":{"matches":"one-liner"}}],"stopBy":"neighbor"}}]}]},"r2":{"any":[{"regex":"(?s);(?:\\s|//[^\\n]*\\n|/\\*.*?\\*/)*\\}$"},{"all":[{"not":{"matches":"r8"}},{"not":{"inside":{"stopBy":"end","matches":"r8"}}}]},{"all":[{"pattern":"$UBQ"},{"has":{"all":[{"not":{"inside":{"any":[{"kind":"function_expression"},{"kind":"arrow_function"},{"kind":"generator_function"},{"kind":"method_definition"}],"stopBy":"neighbor"}}},{"not":{"inside":{"not":{"pattern":"$UBQ"},"precedes":{"stopBy":"end","matches":"r14"},"stopBy":{"pattern":"$UBQ"}}}}],"kind":"statement_block","not":{"precedes":{"stopBy":"end","matches":"r14"}},"stopBy":"end"}}]},{"all":[{"has":{"any":[{"matches":"r13"},{"layout":{"after":{"breaks":{"min":1},"to":"token"}}}],"regex":"^\\}$"}},{"not":{"has":{"all":[{"not":{"kind":"comment"}},{"not":{"regex":"^\\}$"}},{"not":{"precedes":{"all":[{"not":{"kind":"comment"}},{"not":{"regex":"^\\}$"}}],"stopBy":"end"}}},{"regex":"(?:\\+\\+|--)$"}]}}},{"not":{"matches":"hazard-next"}}]}]},"r3":{"all":[{"not":{"kind":"statement_block"}},{"not":{"kind":"empty_statement"}},{"not":{"matches":"one-liner"}}]},"r4":{"all":[{"not":{"kind":"statement_block"}},{"not":{"matches":"collapsed"}}]},"r5":{"any":[{"matches":"requires-block"},{"matches":"r3"},{"matches":"r1"}]},"r6":{"any":[{"all":[{"matches":"r2"},{"pattern":"$UBF"}]},{"pattern":"$UBN"}]},"r7":{"follows":{"all":[{"not":{"kind":"comment"}},{"regex":"^\\)$"}],"stopBy":{"not":{"kind":"comment"}}}},"r8":{"precedes":{"not":{"kind":"comment"},"stopBy":"end"}},"r9":{"follows":{"all":[{"not":{"kind":"comment"}},{"kind":"parenthesized_expression"}],"stopBy":{"not":{"kind":"comment"}}}},"r10":{"inside":{"stopBy":"neighbor","matches":"r12"},"kind":"else_clause"},"r11":{"has":{"regex":"^using$","stopBy":"neighbor"},"kind":"assignment_expression"},"r12":{"kind":"if_statement","matches":"chain-top-requires-block"},"r13":{"layout":{"before":{"breaks":{"min":1},"to":"token"}}},"r14":{"not":{"any":[{"kind":"comment"},{"regex":"^\\}$"}]}},"r15":{"inside":{"kind":"else_clause","stopBy":"neighbor"}}}}},{"id":"if-missing","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"if-body"},{"not":{"kind":"comment"}},{"not":{"kind":"statement_block"}},{"$option":"option","cases":{"multi":[{"$option":"option","cases":{"multi":{"$option":"option2","cases":{"consistent":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}},"default":{"matches":"requires-block"}}},"default":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}}],"multi-line":[{"$option":"option","cases":{"multi":{"$option":"option2","cases":{"consistent":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}},"default":{"matches":"requires-block"}}},"default":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}}],"multi-or-nest":[{"$option":"option","cases":{"multi":{"$option":"option2","cases":{"consistent":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}},"default":{"matches":"requires-block"}}},"default":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}}]},"default":[],"spread":true},{"pattern":"$BODY"}]}}},"violation":{"anchor":"witness.span","code":"curly","message":"Expected { after 'if' condition.","fix":"{$BODY}","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"if-unexpected","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"if-body"},{"matches":"one-statement-block"},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}}]},"default":[]}},"default":[{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}}],"spread":true},{"$option":"option2","cases":{"consistent":[{"not":{"matches":"in-chain-requiring-block"}}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"not":{"matches":"r5"}}]}},"default":[],"spread":true},{"matches":"r6"}]},"transform":{"IN":{"replace":{"source":"$UBF","replace":"(?s)^\\{(.*)\\}$","by":"${1}"}},"ORIG":{"replace":{"source":"$UBN","replace":"(?s)^(.*)$","by":"${1}"}}},"when":{"option":{"option":{"in":["multi","multi-or-nest"]}}}}},"violation":{"anchor":"witness.span","code":"curly","message":"Unnecessary { after 'if' condition.","fix":"$IN$ORIG","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"else-missing","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"else-body"},{"not":{"kind":"comment"}},{"not":{"kind":"statement_block"}},{"$option":"option","cases":{"multi":[{"$option":"option","cases":{"multi":{"$option":"option2","cases":{"consistent":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}},"default":{"matches":"requires-block"}}},"default":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}}],"multi-line":[{"$option":"option","cases":{"multi":{"$option":"option2","cases":{"consistent":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}},"default":{"matches":"requires-block"}}},"default":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}}],"multi-or-nest":[{"$option":"option","cases":{"multi":{"$option":"option2","cases":{"consistent":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}},"default":{"matches":"requires-block"}}},"default":{"any":[{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":{"matches":"r5"}},"default":{"matches":"requires-block"}}},"default":{"matches":"requires-block"}},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}]},"default":[]}},"default":[{"$option":"option2","cases":{"consistent":{"matches":"in-chain-requiring-block"}},"default":{"matches":"r4"}}],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r3"}]}},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"matches":"r1"}]}},"default":[],"spread":true}]}}]},"default":[],"spread":true},{"pattern":"$BODY"}]}}},"violation":{"anchor":"witness.span","code":"curly","message":"Expected { after 'else'.","fix":"{$BODY}","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"else-unexpected","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"else-body"},{"matches":"one-statement-block"},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}}]},"default":[]}},"default":[{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}}],"spread":true},{"$option":"option2","cases":{"consistent":[{"not":{"matches":"in-chain-requiring-block"}}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-or-nest":{"$option":"option2","cases":{"consistent":[]},"default":[{"not":{"matches":"r5"}}]}},"default":[],"spread":true},{"matches":"r6"}]},"transform":{"IN":{"replace":{"source":"$UBF","replace":"(?s)^\\{(.*)\\}$","by":"${1}"}},"ORIG":{"replace":{"source":"$UBN","replace":"(?s)^(.*)$","by":"${1}"}}},"when":{"option":{"option":{"in":["multi","multi-or-nest"]}}}}},"violation":{"anchor":"witness.span","code":"curly","message":"Unnecessary { after 'else'.","fix":"$IN$ORIG","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"while-missing","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"while-body"},{"not":{"kind":"comment"}},{"not":{"kind":"statement_block"}},{"$option":"option","cases":{"multi":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-line":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-or-nest":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}]},"default":[],"spread":true},{"pattern":"$BODY"}]}}},"violation":{"anchor":"witness.span","code":"curly","message":"Expected { after 'while' condition.","fix":"{$BODY}","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"while-unexpected","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"while-body"},{"matches":"one-statement-block"},{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}},{"matches":"r6"}]},"transform":{"IN":{"replace":{"source":"$UBF","replace":"(?s)^\\{(.*)\\}$","by":"${1}"}},"ORIG":{"replace":{"source":"$UBN","replace":"(?s)^(.*)$","by":"${1}"}}},"when":{"option":{"option":{"in":["multi","multi-or-nest"]}}}}},"violation":{"anchor":"witness.span","code":"curly","message":"Unnecessary { after 'while' condition.","fix":"$IN$ORIG","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"do-missing","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"do-body"},{"not":{"kind":"comment"}},{"not":{"kind":"statement_block"}},{"$option":"option","cases":{"multi":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-line":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-or-nest":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}]},"default":[],"spread":true},{"pattern":"$BODY"}]}}},"violation":{"anchor":"witness.span","code":"curly","message":"Expected { after 'do'.","fix":"{$BODY}","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"do-unexpected","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"do-body"},{"matches":"one-statement-block"},{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}},{"any":[{"all":[{"matches":"r2"},{"pattern":"$UBF"},{"any":[{"inside":{"stopBy":"neighbor","kind":"do_statement","regex":"^do\\{\\s*[\\w$\\\\]","pattern":"$DOADJ"}},{"kind":"statement_block"}]}]},{"pattern":"$UBN"}]}]},"transform":{"IN":{"replace":{"source":"$UBF","replace":"(?s)^\\{(.*)\\}$","by":"${1}"}},"ORIG":{"replace":{"source":"$UBN","replace":"(?s)^(.*)$","by":"${1}"}},"SP":{"replace":{"source":"$DOADJ","replace":"(?s)^.*$","by":" "}}},"when":{"option":{"option":{"in":["multi","multi-or-nest"]}}}}},"violation":{"anchor":"witness.span","code":"curly","message":"Unnecessary { after 'do'.","fix":"$SP$IN$ORIG","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"for-missing","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"for-body"},{"not":{"kind":"comment"}},{"not":{"kind":"statement_block"}},{"$option":"option","cases":{"multi":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-line":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-or-nest":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}]},"default":[],"spread":true},{"pattern":"$BODY"}]}}},"violation":{"anchor":"witness.span","code":"curly","message":"Expected { after 'for' condition.","fix":"{$BODY}","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"for-unexpected","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"for-body"},{"matches":"one-statement-block"},{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}},{"matches":"r6"}]},"transform":{"IN":{"replace":{"source":"$UBF","replace":"(?s)^\\{(.*)\\}$","by":"${1}"}},"ORIG":{"replace":{"source":"$UBN","replace":"(?s)^(.*)$","by":"${1}"}}},"when":{"option":{"option":{"in":["multi","multi-or-nest"]}}}}},"violation":{"anchor":"witness.span","code":"curly","message":"Unnecessary { after 'for' condition.","fix":"$IN$ORIG","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"for-in-missing","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"for-in-body"},{"not":{"kind":"comment"}},{"not":{"kind":"statement_block"}},{"$option":"option","cases":{"multi":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-line":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-or-nest":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}]},"default":[],"spread":true},{"pattern":"$BODY"}]}}},"violation":{"anchor":"witness.span","code":"curly","message":"Expected { after 'for-in'.","fix":"{$BODY}","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"for-in-unexpected","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"for-in-body"},{"matches":"one-statement-block"},{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}},{"matches":"r6"}]},"transform":{"IN":{"replace":{"source":"$UBF","replace":"(?s)^\\{(.*)\\}$","by":"${1}"}},"ORIG":{"replace":{"source":"$UBN","replace":"(?s)^(.*)$","by":"${1}"}}},"when":{"option":{"option":{"in":["multi","multi-or-nest"]}}}}},"violation":{"anchor":"witness.span","code":"curly","message":"Unnecessary { after 'for-in'.","fix":"$IN$ORIG","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"for-of-missing","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"for-of-body"},{"not":{"kind":"comment"}},{"not":{"kind":"statement_block"}},{"$option":"option","cases":{"multi":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-line":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}],"multi-or-nest":[{"$option":"option","cases":{"multi":{"matches":"requires-block"}},"default":{"any":[{"matches":"requires-block"},{"$option":"option","cases":{"multi-line":[{"matches":"r4"}]},"default":[],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r3"}],"spread":true},{"$option":"option","cases":{"multi-line":[]},"default":[{"matches":"r1"}],"spread":true}]}}]},"default":[],"spread":true},{"pattern":"$BODY"}]}}},"violation":{"anchor":"witness.span","code":"curly","message":"Expected { after 'for-of'.","fix":"{$BODY}","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}},{"id":"for-of-unexpected","forbid":{"ast":{"language":"typescript","rule":{"all":[{"matches":"for-of-body"},{"matches":"one-statement-block"},{"not":{"$option":"option","cases":{"multi-or-nest":{"matches":"r5"}},"default":{"matches":"requires-block"}}},{"matches":"r6"}]},"transform":{"IN":{"replace":{"source":"$UBF","replace":"(?s)^\\{(.*)\\}$","by":"${1}"}},"ORIG":{"replace":{"source":"$UBN","replace":"(?s)^(.*)$","by":"${1}"}}},"when":{"option":{"option":{"in":["multi","multi-or-nest"]}}}}},"violation":{"anchor":"witness.span","code":"curly","message":"Unnecessary { after 'for-of'.","fix":"$IN$ORIG","suppress":{"eslint":{"rules":["curly"]},"oxlint":{"rules":["curly"]},"biome":{"rules":["lint/style/useBlockStatements"]}}}}]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"id": "eslint-default-case-last",
|
|
4
4
|
"revision": 3,
|
|
5
5
|
"mode": "steer",
|
|
6
|
-
"description": "
|
|
6
|
+
"description": "Put the default clause last in a switch statement; a default in the middle is easy to misread.",
|
|
7
7
|
"scope": {
|
|
8
8
|
"include": [
|
|
9
9
|
"**/*"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"format":"rerail.policy/v1","id":"eslint-default-case","revision":4,"mode":"steer","description":"
|
|
1
|
+
{"format":"rerail.policy/v1","id":"eslint-default-case","revision":4,"mode":"steer","description":"Add a default case to every switch, or a trailing \"no default\" comment when omitting it is deliberate.","scope":{"include":["**/*"],"exclude":[]},"clauses":[{"id":"options","define":{"options":{"commentPattern":{"type":"string","nullable":true,"default":null}}}},{"id":"missing-default","forbid":{"ast":{"language":"typescript","rule":{"all":[{"kind":"switch_statement"},{"has":{"stopBy":"neighbor","kind":"switch_body","all":[{"has":{"stopBy":"neighbor","kind":"switch_case"}},{"not":{"has":{"stopBy":"neighbor","kind":"switch_default"}}},{"not":{"any":[{"has":{"stopBy":"neighbor","all":[{"kind":"comment","regex":{"$option":"commentPattern","cases":{".?":"(?s)^(?://|/\\*)\\s*","default case omitted":"(?s)^(?://|/\\*)\\s*.*default case omitted","^skip default":"(?s)^(?://|/\\*)\\s*skip default","default":"(?s)^(?://|/\\*)\\s*.*default","skipped default case":"(?s)^(?://|/\\*)\\s*.*skipped default case","default omitted":"(?s)^(?://|/\\*)\\s*.*default omitted"},"default":"(?i)^(?://|/\\*)\\s*no default\\s*(?:\\*/)?$"}},{"precedes":{"stopBy":"neighbor","regex":"^\\}$"}}]}},{"has":{"stopBy":"neighbor","kind":"switch_case","precedes":{"stopBy":"neighbor","regex":"^\\}$"},"has":{"stopBy":"neighbor","all":[{"kind":"comment","regex":{"$option":"commentPattern","cases":{".?":"(?s)^(?://|/\\*)\\s*","default case omitted":"(?s)^(?://|/\\*)\\s*.*default case omitted","^skip default":"(?s)^(?://|/\\*)\\s*skip default","default":"(?s)^(?://|/\\*)\\s*.*default","skipped default case":"(?s)^(?://|/\\*)\\s*.*skipped default case","default omitted":"(?s)^(?://|/\\*)\\s*.*default omitted"},"default":"(?i)^(?://|/\\*)\\s*no default\\s*(?:\\*/)?$"}},{"not":{"precedes":{"stopBy":"neighbor","regex":"[\\s\\S]"}}}]}}}]}}]}}]}}},"violation":{"anchor":"witness.span","code":"default-case","message":"Add a default case to this switch, or a `// no default` comment if leaving it out is deliberate.","suppress":{"eslint":{"rules":["default-case"]},"oxlint":{"rules":["default-case"]},"biome":{"rules":["lint/style/useDefaultSwitchClause"]}}}}]}
|
package/rules/eslint-eqeqeq.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"id": "eslint-eqeqeq",
|
|
4
4
|
"revision": 4,
|
|
5
5
|
"mode": "steer",
|
|
6
|
-
"description": "
|
|
6
|
+
"description": "Use === and !== instead of == and !=; loose equality applies surprising type coercion.",
|
|
7
7
|
"scope": {
|
|
8
8
|
"include": [
|
|
9
9
|
"**/*.ts",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"format":"rerail.policy/v1","id":"eslint-func-style","revision":3,"mode":"steer","description":"
|
|
1
|
+
{"format":"rerail.policy/v1","id":"eslint-func-style","revision":3,"mode":"steer","description":"Use function expressions assigned to variables instead of function declarations, except for default exports and TypeScript overloads.","scope":{"include":["**/*"],"exclude":[]},"clauses":[{"id":"options","define":{"options":{"option":{"type":"string","nullable":true,"default":null},"overrides.namedExports":{"type":"string","nullable":true,"default":null},"allowArrowFunctions":{"type":"boolean","nullable":true,"default":null},"allowTypeAnnotation":{"type":"boolean","nullable":true,"default":null}}}},{"id":"function-declaration","forbid":{"ast":{"language":"typescript","utils":{"fn-decl":{"any":[{"kind":"function_declaration"},{"kind":"generator_function_declaration"}]},"export-default":{"inside":{"kind":"export_statement","has":{"regex":"^default$","stopBy":"neighbor"},"stopBy":"neighbor"}},"signature-n":{"kind":"function_signature","has":{"kind":"identifier","pattern":"$N","stopBy":"neighbor"}},"overloaded":{"any":[{"precedes":{"stopBy":"end","matches":"signature-n"}},{"follows":{"stopBy":"end","matches":"signature-n"}},{"inside":{"kind":"export_statement","any":[{"precedes":{"stopBy":"end","kind":"export_statement","has":{"matches":"signature-n","stopBy":"neighbor"}}},{"follows":{"stopBy":"end","kind":"export_statement","has":{"matches":"signature-n","stopBy":"neighbor"}}}],"stopBy":"neighbor"}},{"inside":{"kind":"switch_case","inside":{"kind":"switch_body","has":{"kind":"switch_case","has":{"matches":"signature-n","stopBy":"neighbor"},"stopBy":"neighbor"},"stopBy":"neighbor"},"stopBy":"neighbor"}}]},"exported":{"inside":{"kind":"export_statement","stopBy":"neighbor"}}},"rule":{"matches":"fn-decl","all":[{"any":[{"$option":"overrides.namedExports","cases":{"expression":{"$option":"option","cases":{"expression":[]},"default":[{"$option":"option","cases":{"declaration":{"matches":"exported"}},"default":{"all":[{"not":{"matches":"export-default"}},{"$option":"overrides.namedExports","cases":{"declaration":[{"not":{"matches":"exported"}}],"ignore":[{"not":{"matches":"exported"}}]},"default":[],"spread":true}]}}]}},"default":[{"$option":"option","cases":{"declaration":{"matches":"exported"}},"default":{"all":[{"not":{"matches":"export-default"}},{"$option":"overrides.namedExports","cases":{"declaration":[{"not":{"matches":"exported"}}],"ignore":[{"not":{"matches":"exported"}}]},"default":[],"spread":true}]}}],"spread":true},{"$option":"overrides.namedExports","cases":{"expression":{"$option":"option","cases":{"expression":[{"all":[{"not":{"matches":"export-default"}},{"not":{"matches":"exported"}}]}]},"default":[]}},"default":[],"spread":true},{"$option":"overrides.namedExports","cases":{"expression":{"$option":"option","cases":{"expression":[{"matches":"exported"}]},"default":[]}},"default":[],"spread":true}]},{"has":{"kind":"identifier","pattern":"$N","stopBy":"neighbor"}},{"not":{"matches":"overloaded"}}]},"when":{"option":{"$option":"option","cases":{"declaration":{"$option":"overrides.namedExports","cases":{"expression":{"option":{"not":{"in":[]}}}},"default":{"option":{"in":[]}}}},"default":{"option":{"not":{"in":[]}}}}}}},"violation":{"anchor":"witness.span","code":"func-style","message":"Expected a function expression.","suppress":{"eslint":{"rules":["func-style"]},"oxlint":{"rules":["func-style"]}}}},{"id":"function-expression-declarator","forbid":{"ast":{"language":"typescript","utils":{"checked-fn":{"any":[{"kind":"parenthesized_expression","has":{"matches":"checked-fn","stopBy":"neighbor"}},{"kind":"function_expression"},{"kind":"generator_function"}]},"checked-arrow":{"any":[{"kind":"parenthesized_expression","has":{"matches":"checked-arrow","stopBy":"neighbor"}},{"kind":"arrow_function","not":{"has":{"stopBy":{"any":[{"kind":"function_declaration"},{"kind":"generator_function_declaration"},{"kind":"function_expression"},{"kind":"generator_function"},{"kind":"arrow_function"},{"kind":"method_definition"}]},"any":[{"kind":"this"},{"kind":"super"}]}}}]},"declarator-exported":{"inside":{"any":[{"kind":"lexical_declaration"},{"kind":"variable_declaration"}],"inside":{"kind":"export_statement","stopBy":"neighbor"},"stopBy":"neighbor"}}},"rule":{"kind":"variable_declarator","all":[{"$option":"allowArrowFunctions","cases":{"true":{"$option":"overrides.namedExports","cases":{"expression":[],"ignore":[]},"default":[{"any":[{"$option":"overrides.namedExports","cases":{"declaration":{"$option":"option","cases":{"declaration":[]},"default":[{"$option":"overrides.namedExports","cases":{"expression":{"not":{"matches":"declarator-exported"}},"declaration":{"matches":"declarator-exported"},"ignore":{"not":{"matches":"declarator-exported"}}},"default":{"kind":"variable_declarator"}}]}},"default":[{"$option":"overrides.namedExports","cases":{"expression":{"not":{"matches":"declarator-exported"}},"declaration":{"matches":"declarator-exported"},"ignore":{"not":{"matches":"declarator-exported"}}},"default":{"kind":"variable_declarator"}}],"spread":true},{"$option":"overrides.namedExports","cases":{"declaration":{"$option":"option","cases":{"declaration":[{"not":{"matches":"declarator-exported"}}]},"default":[]}},"default":[],"spread":true},{"$option":"overrides.namedExports","cases":{"declaration":{"$option":"option","cases":{"declaration":[{"matches":"declarator-exported"}]},"default":[]}},"default":[],"spread":true}]}]}},"default":[{"any":[{"$option":"overrides.namedExports","cases":{"declaration":{"$option":"option","cases":{"declaration":[]},"default":[{"$option":"overrides.namedExports","cases":{"expression":{"not":{"matches":"declarator-exported"}},"declaration":{"matches":"declarator-exported"},"ignore":{"not":{"matches":"declarator-exported"}}},"default":{"kind":"variable_declarator"}}]}},"default":[{"$option":"overrides.namedExports","cases":{"expression":{"not":{"matches":"declarator-exported"}},"declaration":{"matches":"declarator-exported"},"ignore":{"not":{"matches":"declarator-exported"}}},"default":{"kind":"variable_declarator"}}],"spread":true},{"$option":"overrides.namedExports","cases":{"declaration":{"$option":"option","cases":{"declaration":[{"not":{"matches":"declarator-exported"}}]},"default":[]}},"default":[],"spread":true},{"$option":"overrides.namedExports","cases":{"declaration":{"$option":"option","cases":{"declaration":[{"matches":"declarator-exported"}]},"default":[]}},"default":[],"spread":true}]}],"spread":true},{"$option":"allowArrowFunctions","cases":{"true":{"$option":"overrides.namedExports","cases":{"expression":[],"ignore":[]},"default":[{"has":{"any":[{"matches":"checked-fn"},{"$option":"allowArrowFunctions","cases":{"true":[]},"default":[{"matches":"checked-arrow"}],"spread":true}],"stopBy":"neighbor"}}]}},"default":[{"has":{"any":[{"matches":"checked-fn"},{"$option":"allowArrowFunctions","cases":{"true":[]},"default":[{"matches":"checked-arrow"}],"spread":true}],"stopBy":"neighbor"}}],"spread":true},{"$option":"allowTypeAnnotation","cases":{"true":[{"not":{"has":{"kind":"type_annotation","stopBy":"neighbor"}}}]},"default":[],"spread":true},{"$option":"allowArrowFunctions","cases":{"true":{"$option":"overrides.namedExports","cases":{"expression":[{"any":[{"not":{"matches":"declarator-exported"}}]}],"ignore":[{"any":[{"not":{"matches":"declarator-exported"}}]}]},"default":[]}},"default":[],"spread":true},{"$option":"allowArrowFunctions","cases":{"true":{"$option":"overrides.namedExports","cases":{"expression":[{"has":{"any":[{"matches":"checked-fn"}],"stopBy":"neighbor"}}],"ignore":[{"has":{"any":[{"matches":"checked-fn"}],"stopBy":"neighbor"}}]},"default":[]}},"default":[],"spread":true}]},"when":{"option":{"$option":"overrides.namedExports","cases":{"declaration":{"option":{"not":{"in":[]}}}},"default":{"$option":"option","cases":{"declaration":{"option":{"not":{"in":[]}}}},"default":{"option":{"in":[]}}}}}}},"violation":{"anchor":"witness.span","code":"func-style","message":"Expected a function declaration.","suppress":{"eslint":{"rules":["func-style"]},"oxlint":{"rules":["func-style"]}}}}]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"id": "eslint-guard-for-in",
|
|
4
4
|
"revision": 3,
|
|
5
5
|
"mode": "steer",
|
|
6
|
-
"description": "
|
|
6
|
+
"description": "Guard the body of every for-in loop with an if check; for-in also iterates inherited properties from the prototype chain.",
|
|
7
7
|
"scope": {
|
|
8
8
|
"include": [
|
|
9
9
|
"**/*"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"format":"rerail.policy/v1","id":"eslint-no-bitwise","revision":4,"mode":"steer","description":"
|
|
1
|
+
{"format":"rerail.policy/v1","id":"eslint-no-bitwise","revision":4,"mode":"steer","description":"Avoid bitwise operators; they are rare in application code and usually a typo for a logical operator.","scope":{"include":["**/*"],"exclude":[]},"clauses":[{"id":"options","define":{"options":{"allow":{"type":"array","items":"string","nullable":true,"default":null},"int32Hint":{"type":"boolean","nullable":true,"default":null}}}},{"id":"bitwise-operator","forbid":{"ast":{"language":"typescript","rule":{"$option":"int32Hint","cases":{"true":{"all":[{"any":[{"kind":"binary_expression"},{"kind":"augmented_assignment_expression"},{"kind":"unary_expression"}],"has":{"pattern":"$$OP","regex":"^(\\^|\\||\\&|<<|>>|>>>|\\^=|\\|=|\\&=|<<=|>>=|>>>=|\\~)$","stopBy":"neighbor"}},{"not":{"all":[{"kind":"binary_expression"},{"has":{"regex":"^\\|$","stopBy":"neighbor"}},{"has":{"kind":"number","regex":"^(0[xXoObB])?0*(\\.0*)?([eE][+-]?[0-9]+)?$","stopBy":"neighbor","not":{"precedes":{"regex":"[\\s\\S]","stopBy":"neighbor"}}}}]}}]}},"default":{"any":[{"kind":"binary_expression"},{"kind":"augmented_assignment_expression"},{"kind":"unary_expression"}],"has":{"pattern":"$$OP","regex":{"$option":"allow","cases":{"[\"~\"]":"^(\\^|\\||\\&|<<|>>|>>>|\\^=|\\|=|\\&=|<<=|>>=|>>>=)$","[\"~\",\"<<\"]":"^(\\^|\\||\\&|>>|>>>|\\^=|\\|=|\\&=|<<=|>>=|>>>=)$","[\"|\"]":"^(\\^|\\&|<<|>>|>>>|\\^=|\\|=|\\&=|<<=|>>=|>>>=|\\~)$"},"default":"^(\\^|\\||\\&|<<|>>|>>>|\\^=|\\|=|\\&=|<<=|>>=|>>>=|\\~)$"},"stopBy":"neighbor"}}}}},"violation":{"anchor":"witness.span","code":"no-bitwise","message":"Replace '$OP' with the logical or arithmetic operator you meant.","suppress":{"eslint":{"rules":["no-bitwise"]},"oxlint":{"rules":["no-bitwise"]},"biome":{"rules":["lint/suspicious/noBitwiseOperators"]}}}}]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"id": "eslint-no-caller",
|
|
4
4
|
"revision": 2,
|
|
5
5
|
"mode": "steer",
|
|
6
|
-
"description": "
|
|
6
|
+
"description": "Don't use arguments.callee or arguments.caller; they are deprecated and throw in strict mode.",
|
|
7
7
|
"scope": {
|
|
8
8
|
"include": [
|
|
9
9
|
"**/*"
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"violation": {
|
|
45
45
|
"anchor": "witness.span",
|
|
46
46
|
"code": "no-caller",
|
|
47
|
-
"message": "
|
|
47
|
+
"message": "Replace arguments.$PROP with a reference to the function by name or an explicit parameter.",
|
|
48
48
|
"suppress": {
|
|
49
49
|
"eslint": {
|
|
50
50
|
"rules": [
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"id": "eslint-no-case-declarations",
|
|
4
4
|
"revision": 3,
|
|
5
5
|
"mode": "steer",
|
|
6
|
-
"description": "
|
|
6
|
+
"description": "Wrap let, const, function and class declarations inside a switch case in braces; otherwise they leak into the whole switch.",
|
|
7
7
|
"scope": {
|
|
8
8
|
"include": [
|
|
9
9
|
"**/*"
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"violation": {
|
|
78
78
|
"anchor": "witness.span",
|
|
79
79
|
"code": "no-case-declarations",
|
|
80
|
-
"message": "
|
|
80
|
+
"message": "Wrap this case's body in braces so the declaration stays scoped to it.",
|
|
81
81
|
"suppress": {
|
|
82
82
|
"eslint": {
|
|
83
83
|
"rules": [
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"id": "eslint-no-compare-neg-zero",
|
|
4
4
|
"revision": 3,
|
|
5
5
|
"mode": "steer",
|
|
6
|
-
"description": "
|
|
6
|
+
"description": "Don't compare against -0 with equality or relational operators; they treat -0 and 0 as equal, so use Object.is instead.",
|
|
7
7
|
"scope": {
|
|
8
8
|
"include": [
|
|
9
9
|
"**/*.ts",
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"violation": {
|
|
86
86
|
"anchor": "witness.span",
|
|
87
87
|
"code": "no-compare-neg-zero",
|
|
88
|
-
"message": "
|
|
88
|
+
"message": "Replace this '$$OP' comparison with Object.is(value, -0), or compare against 0.",
|
|
89
89
|
"suppress": {
|
|
90
90
|
"eslint": {
|
|
91
91
|
"rules": [
|