Skip to content

Commit 6cf01f5

Browse files
committed
wip: feedback
1 parent e245485 commit 6cf01f5

File tree

3 files changed

+18
-5
lines changed

3 files changed

+18
-5
lines changed

src/rules/prefer-reactive-destructuring.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,8 @@ export default createRule("prefer-reactive-destructuring", {
4141
loc: node.loc,
4242
messageId: "useDestructuring",
4343
suggest:
44-
// Don't show suggestions for entries like $: info = foo.bar.info, the destructuring
45-
// just looks too gross and complicates the rule too much
46-
right.object.type === "MemberExpression"
44+
// Don't show suggestions for complex right-hand values, too tricky to get it right
45+
right.object.type !== "Identifier" || right.computed
4746
? []
4847
: [
4948
{

tests/fixtures/rules/prefer-reactive-destructuring/invalid/test01-errors.json

+14-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
{
88
"desc": "Use destructuring to get finer-grained redraws",
99
"messageId": "suggestDestructuring",
10-
"output": "<!-- prettier-ignore -->\n<script>\n $: ({ info } = foo)\n $: bar = foo.something\n $: baz = foo.bar.baz\n</script>\n"
10+
"output": "<!-- prettier-ignore -->\n<script>\n $: ({ info } = foo)\n $: bar = foo.something\n $: baz = foo.bar.baz\n $: qux = foo[bar]\n $: dux = foo.baz().bar\n</script>\n"
1111
}
1212
]
1313
},
@@ -19,7 +19,7 @@
1919
{
2020
"desc": "Use destructuring to get finer-grained redraws",
2121
"messageId": "suggestDestructuring",
22-
"output": "<!-- prettier-ignore -->\n<script>\n $: info = foo.info\n $: ({ something: bar } = foo)\n $: baz = foo.bar.baz\n</script>\n"
22+
"output": "<!-- prettier-ignore -->\n<script>\n $: info = foo.info\n $: ({ something: bar } = foo)\n $: baz = foo.bar.baz\n $: qux = foo[bar]\n $: dux = foo.baz().bar\n</script>\n"
2323
}
2424
]
2525
},
@@ -28,5 +28,17 @@
2828
"line": 5,
2929
"column": 8,
3030
"suggestions": null
31+
},
32+
{
33+
"message": "Prefer destructuring in reactive statements",
34+
"line": 6,
35+
"column": 8,
36+
"suggestions": null
37+
},
38+
{
39+
"message": "Prefer destructuring in reactive statements",
40+
"line": 7,
41+
"column": 8,
42+
"suggestions": null
3143
}
3244
]

tests/fixtures/rules/prefer-reactive-destructuring/invalid/test01-input.svelte

+2
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,6 @@
33
$: info = foo.info
44
$: bar = foo.something
55
$: baz = foo.bar.baz
6+
$: qux = foo[bar]
7+
$: dux = foo.baz().bar
68
</script>

0 commit comments

Comments
 (0)