fisker Cheung
fisker Cheung
I don't think we can do anything, we can't know the types.
If we want to disable auto-fix, I'd prefer to add an option `{fix: false}`, but still auto-fix by default.
Nice catch, another one. ```js {...(!foo ? {} : {bar: true})} ```
If it's ```js ({...(foo ? foo : {})}) ``` It will be caught by [prefer-logical-operator-over-ternary](https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/prefer-logical-operator-over-ternary.md), and fix to ```js ({...(foo ?? {})}) // or ({...(foo || {})}) ``` Then `no-useless-fallback-in-spread`...
Added `const object =` because object expression need be parenthesized, otherwise it will be invalid, add `const object =` makes it more like a real world case.
You can also try `import()` a module that `export const then = () = {}` to see what you got.
The rule name `await-thenable` from `typescript-eslint` seems a little confusing, it's like "the thenable should be `await`ed", how about `no-await-non-thenable`?
`no-invalid-await` is not good, since it's actually valid, just unnecessary.
Sorry for the long delay, overall looks good. But I'm not sure if we want check `==` cases. Can you fix tests?
`no-repeated-string`? Not all cases should recommend `String#repeat()`.