eslint-plugin-wyrm 0.0.8 → 0.0.10
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/CHANGELOG.md +41 -0
- package/README.md +58 -26
- package/dist/_virtual/rolldown_runtime.mjs +11 -6
- package/dist/configs/index.mjs +2 -2
- package/dist/rules/de-morgan.d.mts +9 -0
- package/dist/rules/de-morgan.mjs +52 -0
- package/dist/rules/distribute-boolean-casts.d.mts +4 -2
- package/dist/rules/distribute-boolean-casts.mjs +1 -1
- package/dist/rules/duplicate-destructuring.d.mts +9 -0
- package/dist/rules/duplicate-destructuring.mjs +46 -0
- package/dist/rules/idiomatic-cast.d.mts +9 -0
- package/dist/rules/idiomatic-cast.mjs +54 -0
- package/dist/rules/index.d.mts +57 -25
- package/dist/rules/index.mjs +67 -3
- package/dist/rules/no-constant-template-expression.d.mts +5 -3
- package/dist/rules/no-constant-template-expression.mjs +44 -40
- package/dist/rules/no-convoluted-logical-expressions.d.mts +9 -0
- package/dist/rules/no-convoluted-logical-expressions.mjs +198 -0
- package/dist/rules/no-custom-url-parsing.d.mts +10 -0
- package/dist/rules/no-custom-url-parsing.mjs +60 -0
- package/dist/rules/no-disallowed-warning-comments.d.mts +9 -0
- package/dist/rules/no-disallowed-warning-comments.mjs +86 -0
- package/dist/rules/no-duplicated-return.d.mts +4 -2
- package/dist/rules/no-duplicated-return.mjs +20 -23
- package/dist/rules/no-else-break.d.mts +4 -2
- package/dist/rules/no-else-break.mjs +3 -2
- package/dist/rules/no-else-continue.d.mts +4 -2
- package/dist/rules/no-else-continue.mjs +3 -2
- package/dist/rules/no-else-return.d.mts +10 -0
- package/dist/rules/no-else-return.mjs +78 -0
- package/dist/rules/no-else-throw.d.mts +4 -2
- package/dist/rules/no-else-throw.mjs +3 -2
- package/dist/rules/no-empty-attribute.d.mts +11 -0
- package/dist/rules/no-empty-attribute.mjs +77 -0
- package/dist/rules/no-empty-comment.d.mts +5 -3
- package/dist/rules/no-empty-comment.mjs +0 -1
- package/dist/rules/no-empty-jsx-expression.d.mts +4 -2
- package/dist/rules/no-empty-jsx-expression.mjs +0 -1
- package/dist/rules/no-empty-literal-iteration.d.mts +9 -0
- package/dist/rules/no-empty-literal-iteration.mjs +98 -0
- package/dist/rules/no-extra-false-fallback.d.mts +4 -2
- package/dist/rules/no-extra-false-fallback.mjs +4 -2
- package/dist/rules/no-extra-nested-boolean-cast.d.mts +4 -2
- package/dist/rules/no-extra-nested-boolean-cast.mjs +5 -3
- package/dist/rules/no-first-last.d.mts +9 -0
- package/dist/rules/no-first-last.mjs +171 -0
- package/dist/rules/no-float-length-check.d.mts +9 -0
- package/dist/rules/no-float-length-check.mjs +41 -0
- package/dist/rules/no-huge-try-block.d.mts +13 -0
- package/dist/rules/no-huge-try-block.mjs +71 -0
- package/dist/rules/no-inline-jsdoc-tag.d.mts +11 -0
- package/dist/rules/no-inline-jsdoc-tag.mjs +155 -0
- package/dist/rules/no-invalid-date-literal.d.mts +4 -2
- package/dist/rules/no-jsx-statement.d.mts +4 -2
- package/dist/rules/no-mutable-literal-fill.d.mts +10 -0
- package/dist/rules/no-mutable-literal-fill.mjs +66 -0
- package/dist/rules/no-numbered-comments.d.mts +9 -0
- package/dist/rules/no-numbered-comments.mjs +36 -0
- package/dist/rules/no-obvious-any.d.mts +9 -0
- package/dist/rules/no-obvious-any.mjs +148 -0
- package/dist/rules/no-optional-type-guard-param.d.mts +5 -2
- package/dist/rules/no-optional-type-guard-param.mjs +29 -0
- package/dist/rules/no-out-of-order-comments.d.mts +9 -0
- package/dist/rules/no-out-of-order-comments.mjs +51 -0
- package/dist/rules/no-possibly-nullish-equality.d.mts +10 -0
- package/dist/rules/no-possibly-nullish-equality.mjs +115 -0
- package/dist/rules/no-redundant-function-declaration.d.mts +9 -0
- package/dist/rules/no-redundant-function-declaration.mjs +62 -0
- package/dist/rules/no-return-to-void.d.mts +3 -1
- package/dist/rules/no-return-to-void.mjs +10 -1
- package/dist/rules/no-self-object-assign.d.mts +9 -0
- package/dist/rules/no-self-object-assign.mjs +56 -0
- package/dist/rules/no-sloppy-length-check.d.mts +10 -0
- package/dist/rules/no-sloppy-length-check.mjs +249 -0
- package/dist/rules/no-suspicious-jsx-semicolon.d.mts +4 -2
- package/dist/rules/no-suspicious-jsx-semicolon.mjs +13 -0
- package/dist/rules/no-ternary-return.d.mts +5 -3
- package/dist/rules/no-ternary-return.mjs +2 -0
- package/dist/rules/no-unassigned-todo.d.mts +9 -0
- package/dist/rules/no-unassigned-todo.mjs +38 -0
- package/dist/rules/no-unbound-catch-error.d.mts +9 -0
- package/dist/rules/no-unbound-catch-error.mjs +30 -0
- package/dist/rules/no-unused-param-read.d.mts +9 -0
- package/dist/rules/no-unused-param-read.mjs +34 -0
- package/dist/rules/no-useless-computed-key.d.mts +9 -0
- package/dist/rules/no-useless-computed-key.mjs +39 -0
- package/dist/rules/no-useless-iife.d.mts +4 -2
- package/dist/rules/no-useless-iife.mjs +89 -9
- package/dist/rules/no-useless-logical-fallback.d.mts +3 -1
- package/dist/rules/no-useless-logical-fallback.mjs +16 -4
- package/dist/rules/no-useless-return-undefined.d.mts +3 -1
- package/dist/rules/no-useless-return-undefined.mjs +1 -0
- package/dist/rules/no-useless-use-strict.d.mts +9 -0
- package/dist/rules/no-useless-use-strict.mjs +61 -0
- package/dist/rules/no-useless-usememo.d.mts +9 -0
- package/dist/rules/no-useless-usememo.mjs +132 -0
- package/dist/rules/no-whitespace-property.d.mts +4 -2
- package/dist/rules/no-whitespace-property.mjs +3 -1
- package/dist/rules/optional-call-expression.d.mts +9 -0
- package/dist/rules/optional-call-expression.mjs +98 -0
- package/dist/rules/prefer-catch-method.d.mts +4 -2
- package/dist/rules/prefer-catch-method.mjs +3 -1
- package/dist/rules/prefer-early-return.d.mts +4 -2
- package/dist/rules/prefer-early-return.mjs +74 -21
- package/dist/rules/prefer-repeat.d.mts +4 -2
- package/dist/rules/primitive-valueof.d.mts +9 -0
- package/dist/rules/primitive-valueof.mjs +50 -0
- package/dist/rules/suspicious-map-length.d.mts +9 -0
- package/dist/rules/suspicious-map-length.mjs +47 -0
- package/dist/rules/unsafe-asserted-chain.d.mts +3 -1
- package/dist/rules/unsafe-asserted-chain.mjs +17 -10
- package/dist/rules/unused-object-assign.d.mts +9 -0
- package/dist/rules/unused-object-assign.mjs +39 -0
- package/dist/rules/useless-intermediary-variable.d.mts +9 -0
- package/dist/rules/useless-intermediary-variable.mjs +136 -0
- package/dist/utils/compareTokens.mjs +20 -0
- package/dist/utils/createRule.d.mts +4 -0
- package/dist/utils/negateExpression.mjs +29 -0
- package/package.json +20 -18
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,46 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.10](https://github.com/mchevestrier/eslint-plugin-wyrm/compare/eslint-plugin-wyrm-v0.0.9...eslint-plugin-wyrm-v0.0.10) (2026-01-31)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* add more rules ([8e6c2f7](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/8e6c2f708f284fc95b6e01f41721df9cac84e88c))
|
|
9
|
+
* add rule idiomatic-cast ([9ad2ac1](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/9ad2ac14413332c6a0b46be7e50d20937e97fe52))
|
|
10
|
+
* add rule no-float-length-check ([0ae7f64](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/0ae7f643766713692bbdf7e0b621c45f2d681444))
|
|
11
|
+
* add rule no-obvious-any ([81b490f](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/81b490f9a3be5532881b1576a12c3a96b482f777))
|
|
12
|
+
* add rule suspicious-map-length ([e014a51](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/e014a517e7e94580f2cb17fefc9731c6c343039a))
|
|
13
|
+
* add rule useless-intermediary-variable ([4689576](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/468957692bb13acdc353a291259978b044f5548f))
|
|
14
|
+
* add rules duplicate-destructuring & primitive-valueof ([cadbb5a](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/cadbb5a165da38239f2e2b66ce1aa55da155d383))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* add more tautologies ([9002744](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/900274405c0b9bc86106a7c7cab58c9a87495e02))
|
|
20
|
+
* add no-disallowed-warning-comments ([c7487e7](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/c7487e7396cb959225a8dba1f90651eaadb9e517))
|
|
21
|
+
* add no-else-return ([f878353](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/f878353e91e8171758cc37c75b40c063706a4f44))
|
|
22
|
+
* negated fallback ([68dc22a](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/68dc22ab962815b02cfa302684c7e490ae8c5f1e))
|
|
23
|
+
* **prefer-early-return:** negate expression ([b12f2e1](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/b12f2e1f4ad991dcfbb2e7625020e09ef4400543))
|
|
24
|
+
|
|
25
|
+
## [0.0.9](https://github.com/mchevestrier/eslint-plugin-wyrm/compare/eslint-plugin-wyrm-v0.0.8...eslint-plugin-wyrm-v0.0.9) (2025-11-30)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### Bug Fixes
|
|
29
|
+
|
|
30
|
+
* add no-convoluted-logical-expressions ([28586c1](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/28586c121b85d2f48dcfa0ef1c4707373f4f041b))
|
|
31
|
+
* add no-empty-attribute ([b22ff03](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/b22ff0368226d692e22977dce02061ac9afe9b6f))
|
|
32
|
+
* add no-empty-literal-iteration ([630c8ef](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/630c8ef4ac9cc50f2e381b38b6a64ef8001e3033))
|
|
33
|
+
* add no-first-last ([516a527](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/516a52739ae5d256973acf396e2d4d9f457f8e7f))
|
|
34
|
+
* add no-inline-jsdoc-tag ([f82a538](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/f82a538b29282743cdc5bde61fe3ff0683372088))
|
|
35
|
+
* add no-redundant-function-declaration ([8f4e20e](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/8f4e20eebd76d7cc97763a821b5968139e08b443))
|
|
36
|
+
* add no-sloppy-length-check ([676f230](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/676f2304ca497669375f16219d926bf3dcf6b4d3))
|
|
37
|
+
* add no-unassigned-todo ([42ba01a](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/42ba01a01fc4bef061d50a4b7454964fbd68ca48))
|
|
38
|
+
* add no-unused-param-read ([1f6c997](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/1f6c9972aa949da09a077a4f916749e25eef38bc))
|
|
39
|
+
* add no-useless-computed-key ([37e7b97](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/37e7b97d6151d8a24672f8365f76c6100b34212e))
|
|
40
|
+
* add no-useless-use-strict ([fbffbc2](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/fbffbc2545121f3d2bfb696105fa98b28d7c69c9))
|
|
41
|
+
* add no-useless-usememo ([349221d](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/349221d26e86a6c8f1bb3fc4b4f8e9ace98a7fa8))
|
|
42
|
+
* improve some rules ([73f3b99](https://github.com/mchevestrier/eslint-plugin-wyrm/commit/73f3b99284b0b66ccd7ff0a3ac0f529f4bd1ad93))
|
|
43
|
+
|
|
3
44
|
## [0.0.8](https://github.com/mchevestrier/eslint-plugin-wyrm/compare/eslint-plugin-wyrm-v0.0.7...eslint-plugin-wyrm-v0.0.8) (2025-11-16)
|
|
4
45
|
|
|
5
46
|
|
package/README.md
CHANGED
|
@@ -49,31 +49,63 @@ export default defineConfig([
|
|
|
49
49
|
💡 Manually fixable by [editor suggestions](https://eslint.org/docs/latest/use/core-concepts#rule-suggestions).\
|
|
50
50
|
💭 Requires [type information](https://typescript-eslint.io/linting/typed-linting).
|
|
51
51
|
|
|
52
|
-
| Name
|
|
53
|
-
|
|
|
54
|
-
| [
|
|
55
|
-
| [
|
|
56
|
-
| [
|
|
57
|
-
| [
|
|
58
|
-
| [no-
|
|
59
|
-
| [no-
|
|
60
|
-
| [no-
|
|
61
|
-
| [no-
|
|
62
|
-
| [no-
|
|
63
|
-
| [no-
|
|
64
|
-
| [no-
|
|
65
|
-
| [no-
|
|
66
|
-
| [no-
|
|
67
|
-
| [no-
|
|
68
|
-
| [no-
|
|
69
|
-
| [no-
|
|
70
|
-
| [no-
|
|
71
|
-
| [no-
|
|
72
|
-
| [no-
|
|
73
|
-
| [no-
|
|
74
|
-
| [
|
|
75
|
-
| [
|
|
76
|
-
| [
|
|
77
|
-
| [
|
|
52
|
+
| Name | Description | 💼 | 🔧 | 💡 | 💭 |
|
|
53
|
+
| :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :---------------------------------------------------------------------------- | :---------- | :-- | :-- | :-- |
|
|
54
|
+
| [de-morgan](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/de-morgan.md) | Enforce using De Morgan's law to simplify negated logical expressions | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
55
|
+
| [distribute-boolean-casts](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/distribute-boolean-casts.md) | Enforce that boolean casts are distributed over logical expressions | 🟪 ☑️ | 🔧 | | |
|
|
56
|
+
| [duplicate-destructuring](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/duplicate-destructuring.md) | Forbid duplicate keys in object destructuring patterns | 🟩 ✅ 🟪 ☑️ | | | |
|
|
57
|
+
| [idiomatic-cast](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/idiomatic-cast.md) | Enforce idiomatic ways to cast values | ☑️ | 🔧 | | 💭 |
|
|
58
|
+
| [no-constant-template-expression](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-constant-template-expression.md) | Disallow constant string expressions in template literals | ☑️ | | 💡 | 💭 |
|
|
59
|
+
| [no-convoluted-logical-expressions](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-convoluted-logical-expressions.md) | Forbid simplifiable logical expressions | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
60
|
+
| [no-custom-url-parsing](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-custom-url-parsing.md) | Forbid parsing or building URLs by hand | 🟪 ☑️ | | | |
|
|
61
|
+
| [no-disallowed-warning-comments](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-disallowed-warning-comments.md) | Forbid disallowed comments like FIXME, XXX, HACK | 🟪 ☑️ | | | |
|
|
62
|
+
| [no-duplicated-return](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-duplicated-return.md) | Forbid duplicated branches with early returns | 🟩 ✅ 🟪 ☑️ | | | |
|
|
63
|
+
| [no-else-break](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-else-break.md) | Forbid unnecessary `else` block after a `break` statement | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
64
|
+
| [no-else-continue](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-else-continue.md) | Forbid unnecessary `else` block after a `continue` statement | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
65
|
+
| [no-else-return](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-else-return.md) | Forbid unnecessary `else` block after a `return` statement | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
66
|
+
| [no-else-throw](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-else-throw.md) | Forbid unnecessary `else` block after a `throw` statement | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
67
|
+
| [no-empty-attribute](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-empty-attribute.md) | Forbid some empty JSX attributes | 🟪 ☑️ | | | |
|
|
68
|
+
| [no-empty-comment](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-empty-comment.md) | Forbid empty comments | 🟪 ☑️ | | | |
|
|
69
|
+
| [no-empty-jsx-expression](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-empty-jsx-expression.md) | Forbid empty JSX expression containers | 🟩 ✅ 🟪 ☑️ | | | |
|
|
70
|
+
| [no-empty-literal-iteration](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-empty-literal-iteration.md) | Forbid iterating over empty literals | 🟩 ✅ 🟪 ☑️ | | | |
|
|
71
|
+
| [no-extra-false-fallback](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-extra-false-fallback.md) | Forbid extra `?? false` in conditions and predicates | 🟪 ☑️ | | 💡 | |
|
|
72
|
+
| [no-extra-nested-boolean-cast](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-extra-nested-boolean-cast.md) | Forbid extra boolean casts in conditions and predicates | 🟪 ☑️ | | | |
|
|
73
|
+
| [no-first-last](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-first-last.md) | Forbid confusing naming for "first" or "last" | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
74
|
+
| [no-float-length-check](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-float-length-check.md) | Forbid comparing a length to a floating point number | 🟩 ✅ 🟪 ☑️ | | | |
|
|
75
|
+
| [no-huge-try-block](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-huge-try-block.md) | Forbid huge try/catch blocks | 🟪 ☑️ | | | |
|
|
76
|
+
| [no-inline-jsdoc-tag](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-inline-jsdoc-tag.md) | Forbid JSDoc tags in code comments | 🟪 ☑️ | | | |
|
|
77
|
+
| [no-invalid-date-literal](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-invalid-date-literal.md) | Disallow invalid date literals | 🟩 ✅ 🟪 ☑️ | | | |
|
|
78
|
+
| [no-jsx-statement](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-jsx-statement.md) | Forbid JSX expression statements | 🟩 ✅ 🟪 ☑️ | | | |
|
|
79
|
+
| [no-mutable-literal-fill](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-mutable-literal-fill.md) | Forbid using mutable literals to fill arrays | 🟩 ✅ 🟪 ☑️ | | | |
|
|
80
|
+
| [no-numbered-comments](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-numbered-comments.md) | Forbid numbered comments | | | | |
|
|
81
|
+
| [no-obvious-any](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-obvious-any.md) | Forbid using `any` when a stricter type can be trivially inferred | ☑️ | 🔧 | | 💭 |
|
|
82
|
+
| [no-optional-type-guard-param](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-optional-type-guard-param.md) | Forbid optional parameters in type guards | 🟩 ✅ 🟪 ☑️ | | | |
|
|
83
|
+
| [no-out-of-order-comments](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-out-of-order-comments.md) | Forbid out of order numbered comments | 🟩 ✅ 🟪 ☑️ | | | |
|
|
84
|
+
| [no-possibly-nullish-equality](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-possibly-nullish-equality.md) | Forbid checking the equality of possibly nullish values | ☑️ | 🔧 | | 💭 |
|
|
85
|
+
| [no-redundant-function-declaration](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-redundant-function-declaration.md) | Forbid redundant function declarations | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
86
|
+
| [no-return-to-void](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-return-to-void.md) | Forbid returning values in void-returning callbacks | ☑️ | | | 💭 |
|
|
87
|
+
| [no-self-object-assign](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-self-object-assign.md) | Forbid using `Object.assign()` with the same object as both target and source | 🟩 ✅ 🟪 ☑️ | | | |
|
|
88
|
+
| [no-sloppy-length-check](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-sloppy-length-check.md) | Forbid sloppy collection size checks | 🟩 ✅ 🟪 ☑️ | | | |
|
|
89
|
+
| [no-suspicious-jsx-semicolon](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-suspicious-jsx-semicolon.md) | Forbid suspicious semicolons in JSX | 🟩 ✅ 🟪 ☑️ | | | |
|
|
90
|
+
| [no-ternary-return](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-ternary-return.md) | Disallow ternary conditions in return statements | 🟪 ☑️ | 🔧 | | |
|
|
91
|
+
| [no-unassigned-todo](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-unassigned-todo.md) | Forbid unassigned TODO comments | 🟪 ☑️ | | | |
|
|
92
|
+
| [no-unbound-catch-error](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-unbound-catch-error.md) | Forbid `catch` clauses with unbound errors | 🟪 ☑️ | | | |
|
|
93
|
+
| [no-unused-param-read](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-unused-param-read.md) | Forbid referencing parameters marked as unused with a leading underscore | 🟪 ☑️ | | | |
|
|
94
|
+
| [no-useless-computed-key](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-useless-computed-key.md) | Forbid useless computed keys | 🟪 ☑️ | 🔧 | | |
|
|
95
|
+
| [no-useless-iife](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-useless-iife.md) | Forbid useless IIFEs | 🟩 ✅ 🟪 ☑️ | | 💡 | |
|
|
96
|
+
| [no-useless-logical-fallback](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-useless-logical-fallback.md) | Forbid useless fallback values for logical expressions | ✅ ☑️ | | 💡 | 💭 |
|
|
97
|
+
| [no-useless-return-undefined](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-useless-return-undefined.md) | Forbid returning `undefined` in void-returning callbacks | ☑️ | | | 💭 |
|
|
98
|
+
| [no-useless-use-strict](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-useless-use-strict.md) | Forbid useless "use strict" directives. | 🟪 ☑️ | | | |
|
|
99
|
+
| [no-useless-usememo](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-useless-usememo.md) | Forbid useless `useMemo()` | 🟪 ☑️ | | | |
|
|
100
|
+
| [no-whitespace-property](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/no-whitespace-property.md) | Forbid leading or trailing whitespace in object keys | 🟪 ☑️ | | | |
|
|
101
|
+
| [optional-call-expression](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/optional-call-expression.md) | Enforce using optional call expression syntax | 🟩 ✅ 🟪 ☑️ | 🔧 | | |
|
|
102
|
+
| [prefer-catch-method](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/prefer-catch-method.md) | Enforce usage of `Promise.prototype.catch()` when it improves readability | 🟩 ✅ 🟪 ☑️ | | 💡 | |
|
|
103
|
+
| [prefer-early-return](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/prefer-early-return.md) | Require early returns when possible | 🟪 ☑️ | 🔧 | | |
|
|
104
|
+
| [prefer-repeat](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/prefer-repeat.md) | Enforce usage of `String.prototype.repeat` | 🟩 ✅ 🟪 ☑️ | | 💡 | |
|
|
105
|
+
| [primitive-valueof](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/primitive-valueof.md) | Forbid calling `.valueOf()` on a primitive | ✅ ☑️ | 🔧 | | 💭 |
|
|
106
|
+
| [suspicious-map-length](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/suspicious-map-length.md) | Disallow suspicious use of `.map().length` | 🟩 ✅ 🟪 ☑️ | | 💡 | |
|
|
107
|
+
| [unsafe-asserted-chain](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/unsafe-asserted-chain.md) | Disallow unsafe type assertions on optional chained expressions | ☑️ | | | 💭 |
|
|
108
|
+
| [unused-object-assign](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/unused-object-assign.md) | Disallow unused `Object.assign()` expressions | 🟩 ✅ 🟪 ☑️ | | | |
|
|
109
|
+
| [useless-intermediary-variable](https://github.com/mchevestrier/eslint-plugin-wyrm/blob/master/packages/eslint-plugin-wyrm/docs/rules/useless-intermediary-variable.md) | Disallow unnecessary intermediary variables | 🟪 ☑️ | | 💡 | |
|
|
78
110
|
|
|
79
111
|
<!-- end auto-generated rules list -->
|
|
@@ -2,14 +2,19 @@ import { createRequire } from "node:module";
|
|
|
2
2
|
|
|
3
3
|
//#region rolldown:runtime
|
|
4
4
|
var __defProp = Object.defineProperty;
|
|
5
|
-
var
|
|
5
|
+
var __exportAll = (all, symbols) => {
|
|
6
6
|
let target = {};
|
|
7
|
-
for (var name in all)
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
for (var name in all) {
|
|
8
|
+
__defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
if (symbols) {
|
|
14
|
+
__defProp(target, Symbol.toStringTag, { value: "Module" });
|
|
15
|
+
}
|
|
11
16
|
return target;
|
|
12
17
|
};
|
|
13
18
|
|
|
14
19
|
//#endregion
|
|
15
|
-
export {
|
|
20
|
+
export { __exportAll };
|
package/dist/configs/index.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __exportAll } from "../_virtual/rolldown_runtime.mjs";
|
|
2
2
|
import { rules_exports } from "../rules/index.mjs";
|
|
3
3
|
import { plugin } from "../plugin.mjs";
|
|
4
4
|
|
|
5
5
|
//#region lib/configs/index.ts
|
|
6
|
-
var configs_exports = /* @__PURE__ */
|
|
6
|
+
var configs_exports = /* @__PURE__ */ __exportAll({
|
|
7
7
|
all: () => all,
|
|
8
8
|
recommended: () => recommended,
|
|
9
9
|
recommendedTypeChecked: () => recommendedTypeChecked,
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { WyrmPluginDocs } from "../utils/createRule.mjs";
|
|
2
|
+
import * as _typescript_eslint_utils_ts_eslint0 from "@typescript-eslint/utils/ts-eslint";
|
|
3
|
+
|
|
4
|
+
//#region lib/rules/de-morgan.d.ts
|
|
5
|
+
declare const _default: _typescript_eslint_utils_ts_eslint0.RuleModule<"deMorgan", [], WyrmPluginDocs, _typescript_eslint_utils_ts_eslint0.RuleListener> & {
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { _default };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { createRule } from "../utils/createRule.mjs";
|
|
2
|
+
import { isNegatableOperator, negateExpression } from "../utils/negateExpression.mjs";
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { AST_NODE_TYPES } from "@typescript-eslint/utils";
|
|
5
|
+
|
|
6
|
+
//#region lib/rules/de-morgan.ts
|
|
7
|
+
const { name } = path.parse(import.meta.filename);
|
|
8
|
+
var de_morgan_default = createRule({
|
|
9
|
+
name,
|
|
10
|
+
meta: {
|
|
11
|
+
type: "suggestion",
|
|
12
|
+
docs: {
|
|
13
|
+
description: "Enforce using De Morgan's law to simplify negated logical expressions",
|
|
14
|
+
recommended: true
|
|
15
|
+
},
|
|
16
|
+
fixable: "code",
|
|
17
|
+
schema: [],
|
|
18
|
+
messages: { deMorgan: "Use De Morgan's law to simplify this negated logical expression" }
|
|
19
|
+
},
|
|
20
|
+
defaultOptions: [],
|
|
21
|
+
create(context) {
|
|
22
|
+
return { UnaryExpression(node) {
|
|
23
|
+
if (node.operator !== "!") return;
|
|
24
|
+
if (node.parent.type === AST_NODE_TYPES.UnaryExpression && node.parent.operator === "!") return;
|
|
25
|
+
if (node.argument.type === AST_NODE_TYPES.BinaryExpression) {
|
|
26
|
+
if (!isNegatableOperator(node.argument.operator)) return;
|
|
27
|
+
const expr = node.argument;
|
|
28
|
+
context.report({
|
|
29
|
+
node,
|
|
30
|
+
messageId: "deMorgan",
|
|
31
|
+
fix(fixer) {
|
|
32
|
+
return fixer.replaceText(node, `(${negateExpression(expr, context)})`);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
if (node.argument.type === AST_NODE_TYPES.LogicalExpression) {
|
|
37
|
+
if (node.argument.operator === "??") return;
|
|
38
|
+
const expr = node.argument;
|
|
39
|
+
context.report({
|
|
40
|
+
node,
|
|
41
|
+
messageId: "deMorgan",
|
|
42
|
+
fix(fixer) {
|
|
43
|
+
return fixer.replaceText(node, `(${negateExpression(expr, context)})`);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
} };
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
//#endregion
|
|
52
|
+
export { de_morgan_default as default };
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { WyrmPluginDocs } from "../utils/createRule.mjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as _typescript_eslint_utils_ts_eslint1 from "@typescript-eslint/utils/ts-eslint";
|
|
3
3
|
|
|
4
4
|
//#region lib/rules/distribute-boolean-casts.d.ts
|
|
5
|
-
declare const _default:
|
|
5
|
+
declare const _default: _typescript_eslint_utils_ts_eslint1.RuleModule<"distributeBooleanCast", [], WyrmPluginDocs, _typescript_eslint_utils_ts_eslint1.RuleListener> & {
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
6
8
|
//#endregion
|
|
7
9
|
export { _default };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { WyrmPluginDocs } from "../utils/createRule.mjs";
|
|
2
|
+
import * as _typescript_eslint_utils_ts_eslint3 from "@typescript-eslint/utils/ts-eslint";
|
|
3
|
+
|
|
4
|
+
//#region lib/rules/duplicate-destructuring.d.ts
|
|
5
|
+
declare const _default: _typescript_eslint_utils_ts_eslint3.RuleModule<"duplicateKey", [], WyrmPluginDocs, _typescript_eslint_utils_ts_eslint3.RuleListener> & {
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { _default };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { createRule } from "../utils/createRule.mjs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { AST_NODE_TYPES } from "@typescript-eslint/utils";
|
|
4
|
+
|
|
5
|
+
//#region lib/rules/duplicate-destructuring.ts
|
|
6
|
+
const { name } = path.parse(import.meta.filename);
|
|
7
|
+
var duplicate_destructuring_default = createRule({
|
|
8
|
+
name,
|
|
9
|
+
meta: {
|
|
10
|
+
type: "problem",
|
|
11
|
+
docs: {
|
|
12
|
+
description: "Forbid duplicate keys in object destructuring patterns",
|
|
13
|
+
recommended: true
|
|
14
|
+
},
|
|
15
|
+
schema: [],
|
|
16
|
+
messages: { duplicateKey: "This property key appears several times in the destructuring pattern. Make sure this is expected." }
|
|
17
|
+
},
|
|
18
|
+
defaultOptions: [],
|
|
19
|
+
create(context) {
|
|
20
|
+
return { ObjectPattern(node) {
|
|
21
|
+
const seen = /* @__PURE__ */ new Map();
|
|
22
|
+
for (const prop of node.properties) {
|
|
23
|
+
if (prop.type === AST_NODE_TYPES.RestElement) continue;
|
|
24
|
+
const value = extractKeyValue(prop.key);
|
|
25
|
+
if (value === void 0) continue;
|
|
26
|
+
if (!seen.has(value)) {
|
|
27
|
+
seen.set(value, prop.key);
|
|
28
|
+
continue;
|
|
29
|
+
}
|
|
30
|
+
context.report({
|
|
31
|
+
node: prop.key,
|
|
32
|
+
messageId: "duplicateKey"
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
} };
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
function extractKeyValue(key) {
|
|
39
|
+
if (key.type === AST_NODE_TYPES.Identifier) return key.name;
|
|
40
|
+
if (key.type !== AST_NODE_TYPES.Literal) return;
|
|
41
|
+
if (key.value === null) return "null";
|
|
42
|
+
return key.value.toString();
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
//#endregion
|
|
46
|
+
export { duplicate_destructuring_default as default };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { WyrmPluginDocs } from "../utils/createRule.mjs";
|
|
2
|
+
import { ESLintUtils } from "@typescript-eslint/utils";
|
|
3
|
+
|
|
4
|
+
//#region lib/rules/idiomatic-cast.d.ts
|
|
5
|
+
declare const _default: ESLintUtils.RuleModule<"useToString", [], WyrmPluginDocs, ESLintUtils.RuleListener> & {
|
|
6
|
+
name: string;
|
|
7
|
+
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { _default };
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { createRule } from "../utils/createRule.mjs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { AST_NODE_TYPES, ESLintUtils } from "@typescript-eslint/utils";
|
|
4
|
+
import * as ts from "typescript";
|
|
5
|
+
|
|
6
|
+
//#region lib/rules/idiomatic-cast.ts
|
|
7
|
+
const { name } = path.parse(import.meta.filename);
|
|
8
|
+
var idiomatic_cast_default = createRule({
|
|
9
|
+
name,
|
|
10
|
+
meta: {
|
|
11
|
+
type: "suggestion",
|
|
12
|
+
docs: {
|
|
13
|
+
description: "Enforce idiomatic ways to cast values",
|
|
14
|
+
requiresTypeChecking: true,
|
|
15
|
+
strict: true
|
|
16
|
+
},
|
|
17
|
+
fixable: "code",
|
|
18
|
+
schema: [],
|
|
19
|
+
messages: { useToString: "Use the `.toString()` method to convert to a string." }
|
|
20
|
+
},
|
|
21
|
+
defaultOptions: [],
|
|
22
|
+
create(context) {
|
|
23
|
+
return { CallExpression(node) {
|
|
24
|
+
if (node.callee.type !== AST_NODE_TYPES.Identifier) return;
|
|
25
|
+
if (node.callee.name !== "String") return;
|
|
26
|
+
const [arg] = node.arguments;
|
|
27
|
+
if (!arg) return;
|
|
28
|
+
const argType = ESLintUtils.getParserServices(context).getTypeAtLocation(arg);
|
|
29
|
+
if (argType.isUnion()) return;
|
|
30
|
+
if (!hasToString(argType)) return;
|
|
31
|
+
context.report({
|
|
32
|
+
node,
|
|
33
|
+
messageId: "useToString",
|
|
34
|
+
fix(fixer) {
|
|
35
|
+
const argText = context.sourceCode.getText(arg);
|
|
36
|
+
const text = arg.type === AST_NODE_TYPES.Identifier ? `${argText}.toString()` : `(${argText}).toString()`;
|
|
37
|
+
return fixer.replaceText(node, text);
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
} };
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
function hasToString(argType) {
|
|
44
|
+
if (argType.flags & ts.TypeFlags.NumberLike) return true;
|
|
45
|
+
if (argType.flags & ts.TypeFlags.BooleanLike) return true;
|
|
46
|
+
if (argType.flags & ts.TypeFlags.BigIntLike) return true;
|
|
47
|
+
if (typeof argType.symbol === "undefined") return false;
|
|
48
|
+
if (argType.symbol.getName() === "BigInt") return true;
|
|
49
|
+
if (argType.symbol.getName() === "Date") return true;
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
//#endregion
|
|
54
|
+
export { idiomatic_cast_default as default };
|
package/dist/rules/index.d.mts
CHANGED
|
@@ -1,31 +1,63 @@
|
|
|
1
|
-
import { _default } from "./
|
|
2
|
-
import { _default as _default$1 } from "./
|
|
3
|
-
import { _default as _default$2 } from "./
|
|
4
|
-
import { _default as _default$3 } from "./
|
|
5
|
-
import { _default as _default$4 } from "./no-
|
|
6
|
-
import { _default as _default$5 } from "./no-
|
|
7
|
-
import { _default as _default$6 } from "./no-
|
|
8
|
-
import { _default as _default$7 } from "./no-
|
|
9
|
-
import { _default as _default$8 } from "./no-
|
|
10
|
-
import { _default as _default$9 } from "./no-
|
|
11
|
-
import { _default as _default$10 } from "./no-
|
|
12
|
-
import { _default as _default$11 } from "./no-
|
|
13
|
-
import { _default as _default$12 } from "./no-
|
|
14
|
-
import { _default as _default$13 } from "./no-
|
|
15
|
-
import { _default as _default$14 } from "./no-
|
|
16
|
-
import { _default as _default$15 } from "./no-
|
|
17
|
-
import { _default as _default$16 } from "./no-
|
|
18
|
-
import { _default as _default$17 } from "./no-
|
|
19
|
-
import { _default as _default$18 } from "./no-
|
|
20
|
-
import { _default as _default$19 } from "./no-
|
|
21
|
-
import { _default as _default$20 } from "./
|
|
22
|
-
import { _default as _default$21 } from "./
|
|
23
|
-
import { _default as _default$22 } from "./
|
|
24
|
-
import { _default as _default$23 } from "./
|
|
1
|
+
import { _default } from "./de-morgan.mjs";
|
|
2
|
+
import { _default as _default$1 } from "./distribute-boolean-casts.mjs";
|
|
3
|
+
import { _default as _default$2 } from "./duplicate-destructuring.mjs";
|
|
4
|
+
import { _default as _default$3 } from "./idiomatic-cast.mjs";
|
|
5
|
+
import { _default as _default$4 } from "./no-constant-template-expression.mjs";
|
|
6
|
+
import { _default as _default$5 } from "./no-convoluted-logical-expressions.mjs";
|
|
7
|
+
import { _default as _default$6 } from "./no-custom-url-parsing.mjs";
|
|
8
|
+
import { _default as _default$7 } from "./no-disallowed-warning-comments.mjs";
|
|
9
|
+
import { _default as _default$8 } from "./no-duplicated-return.mjs";
|
|
10
|
+
import { _default as _default$9 } from "./no-else-break.mjs";
|
|
11
|
+
import { _default as _default$10 } from "./no-else-continue.mjs";
|
|
12
|
+
import { _default as _default$11 } from "./no-else-return.mjs";
|
|
13
|
+
import { _default as _default$12 } from "./no-else-throw.mjs";
|
|
14
|
+
import { _default as _default$13 } from "./no-empty-attribute.mjs";
|
|
15
|
+
import { _default as _default$14 } from "./no-empty-comment.mjs";
|
|
16
|
+
import { _default as _default$15 } from "./no-empty-jsx-expression.mjs";
|
|
17
|
+
import { _default as _default$16 } from "./no-empty-literal-iteration.mjs";
|
|
18
|
+
import { _default as _default$17 } from "./no-extra-false-fallback.mjs";
|
|
19
|
+
import { _default as _default$18 } from "./no-extra-nested-boolean-cast.mjs";
|
|
20
|
+
import { _default as _default$19 } from "./no-first-last.mjs";
|
|
21
|
+
import { _default as _default$20 } from "./no-float-length-check.mjs";
|
|
22
|
+
import { _default as _default$21 } from "./no-huge-try-block.mjs";
|
|
23
|
+
import { _default as _default$22 } from "./no-inline-jsdoc-tag.mjs";
|
|
24
|
+
import { _default as _default$23 } from "./no-invalid-date-literal.mjs";
|
|
25
|
+
import { _default as _default$24 } from "./no-jsx-statement.mjs";
|
|
26
|
+
import { _default as _default$25 } from "./no-mutable-literal-fill.mjs";
|
|
27
|
+
import { _default as _default$26 } from "./no-numbered-comments.mjs";
|
|
28
|
+
import { _default as _default$27 } from "./no-obvious-any.mjs";
|
|
29
|
+
import { _default as _default$28 } from "./no-optional-type-guard-param.mjs";
|
|
30
|
+
import { _default as _default$29 } from "./no-out-of-order-comments.mjs";
|
|
31
|
+
import { _default as _default$30 } from "./no-possibly-nullish-equality.mjs";
|
|
32
|
+
import { _default as _default$31 } from "./no-redundant-function-declaration.mjs";
|
|
33
|
+
import { _default as _default$32 } from "./no-return-to-void.mjs";
|
|
34
|
+
import { _default as _default$33 } from "./no-self-object-assign.mjs";
|
|
35
|
+
import { _default as _default$34 } from "./no-sloppy-length-check.mjs";
|
|
36
|
+
import { _default as _default$35 } from "./no-suspicious-jsx-semicolon.mjs";
|
|
37
|
+
import { _default as _default$36 } from "./no-ternary-return.mjs";
|
|
38
|
+
import { _default as _default$37 } from "./no-unassigned-todo.mjs";
|
|
39
|
+
import { _default as _default$38 } from "./no-unbound-catch-error.mjs";
|
|
40
|
+
import { _default as _default$39 } from "./no-unused-param-read.mjs";
|
|
41
|
+
import { _default as _default$40 } from "./no-useless-computed-key.mjs";
|
|
42
|
+
import { _default as _default$41 } from "./no-useless-iife.mjs";
|
|
43
|
+
import { _default as _default$42 } from "./no-useless-logical-fallback.mjs";
|
|
44
|
+
import { _default as _default$43 } from "./no-useless-return-undefined.mjs";
|
|
45
|
+
import { _default as _default$44 } from "./no-useless-use-strict.mjs";
|
|
46
|
+
import { _default as _default$45 } from "./no-useless-usememo.mjs";
|
|
47
|
+
import { _default as _default$46 } from "./no-whitespace-property.mjs";
|
|
48
|
+
import { _default as _default$47 } from "./optional-call-expression.mjs";
|
|
49
|
+
import { _default as _default$48 } from "./prefer-catch-method.mjs";
|
|
50
|
+
import { _default as _default$49 } from "./prefer-early-return.mjs";
|
|
51
|
+
import { _default as _default$50 } from "./prefer-repeat.mjs";
|
|
52
|
+
import { _default as _default$51 } from "./primitive-valueof.mjs";
|
|
53
|
+
import { _default as _default$52 } from "./suspicious-map-length.mjs";
|
|
54
|
+
import { _default as _default$53 } from "./unsafe-asserted-chain.mjs";
|
|
55
|
+
import { _default as _default$54 } from "./unused-object-assign.mjs";
|
|
56
|
+
import { _default as _default$55 } from "./useless-intermediary-variable.mjs";
|
|
25
57
|
|
|
26
58
|
//#region lib/rules/index.d.ts
|
|
27
59
|
declare namespace index_d_exports {
|
|
28
|
-
export { _default as "distribute-boolean-casts", _default$
|
|
60
|
+
export { _default as "de-morgan", _default$1 as "distribute-boolean-casts", _default$2 as "duplicate-destructuring", _default$3 as "idiomatic-cast", _default$4 as "no-constant-template-expression", _default$5 as "no-convoluted-logical-expressions", _default$6 as "no-custom-url-parsing", _default$7 as "no-disallowed-warning-comments", _default$8 as "no-duplicated-return", _default$9 as "no-else-break", _default$10 as "no-else-continue", _default$11 as "no-else-return", _default$12 as "no-else-throw", _default$13 as "no-empty-attribute", _default$14 as "no-empty-comment", _default$15 as "no-empty-jsx-expression", _default$16 as "no-empty-literal-iteration", _default$17 as "no-extra-false-fallback", _default$18 as "no-extra-nested-boolean-cast", _default$19 as "no-first-last", _default$20 as "no-float-length-check", _default$21 as "no-huge-try-block", _default$22 as "no-inline-jsdoc-tag", _default$23 as "no-invalid-date-literal", _default$24 as "no-jsx-statement", _default$25 as "no-mutable-literal-fill", _default$26 as "no-numbered-comments", _default$27 as "no-obvious-any", _default$28 as "no-optional-type-guard-param", _default$29 as "no-out-of-order-comments", _default$30 as "no-possibly-nullish-equality", _default$31 as "no-redundant-function-declaration", _default$32 as "no-return-to-void", _default$33 as "no-self-object-assign", _default$34 as "no-sloppy-length-check", _default$35 as "no-suspicious-jsx-semicolon", _default$36 as "no-ternary-return", _default$37 as "no-unassigned-todo", _default$38 as "no-unbound-catch-error", _default$39 as "no-unused-param-read", _default$40 as "no-useless-computed-key", _default$41 as "no-useless-iife", _default$42 as "no-useless-logical-fallback", _default$43 as "no-useless-return-undefined", _default$44 as "no-useless-use-strict", _default$45 as "no-useless-usememo", _default$46 as "no-whitespace-property", _default$47 as "optional-call-expression", _default$48 as "prefer-catch-method", _default$49 as "prefer-early-return", _default$50 as "prefer-repeat", _default$51 as "primitive-valueof", _default$52 as "suspicious-map-length", _default$53 as "unsafe-asserted-chain", _default$54 as "unused-object-assign", _default$55 as "useless-intermediary-variable" };
|
|
29
61
|
}
|
|
30
62
|
//#endregion
|
|
31
63
|
export { index_d_exports };
|