Skip to content

Commit 3d96ba5

Browse files
committed
fix: allow for non optional chain call expression in render
1 parent 61238d0 commit 3d96ba5

File tree

4 files changed

+18
-3
lines changed

4 files changed

+18
-3
lines changed

.changeset/gentle-trees-exercise.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"svelte": patch
3+
---
4+
5+
fix: allow for non optional chain call expression in render

packages/svelte/src/compiler/phases/1-parse/state/tag.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -587,9 +587,7 @@ function special(parser) {
587587

588588
if (
589589
expression.type !== 'CallExpression' &&
590-
(expression.type !== 'ChainExpression' ||
591-
expression.expression.type !== 'CallExpression' ||
592-
!expression.expression.optional)
590+
(expression.type !== 'ChainExpression' || expression.expression.type !== 'CallExpression')
593591
) {
594592
e.render_tag_invalid_expression(expression);
595593
}

packages/svelte/tests/runtime-runes/samples/snippet-expressions/_config.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ export default test({
1010
<hr>
1111
<p>foo</p>
1212
<hr>
13+
<p>foo</p>
14+
<hr>
15+
<p>foo</p>
16+
<hr>
1317
<p>bar</p>
1418
<hr>
1519
<hr>
@@ -35,6 +39,10 @@ export default test({
3539
<p>foo</p>
3640
<hr>
3741
<p>foo</p>
42+
<hr>
43+
<p>foo</p>
44+
<hr>
45+
<p>foo</p>
3846
<button>toggle</button>
3947
`
4048
);

packages/svelte/tests/runtime-runes/samples/snippet-expressions/child.svelte

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@
1212
<hr>
1313
{@render snippets.foo()}
1414
<hr>
15+
{@render snippets?.foo()}
16+
<hr>
17+
{@render snippets?.foo?.()}
18+
<hr>
1519
{@render snippets.foo?.()}
1620
<hr>
1721
{@render (optional ?? snippets.bar)()}

0 commit comments

Comments
 (0)