fix: allow for non optional chain call expression in render (#11578)

pull/11583/head
Paolo Ricciuti 1 year ago committed by GitHub
parent 61238d0fd3
commit 81517a506c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -0,0 +1,5 @@
---
"svelte": patch
---
fix: allow for non optional chain call expression in render

@ -587,9 +587,7 @@ function special(parser) {
if ( if (
expression.type !== 'CallExpression' && expression.type !== 'CallExpression' &&
(expression.type !== 'ChainExpression' || (expression.type !== 'ChainExpression' || expression.expression.type !== 'CallExpression')
expression.expression.type !== 'CallExpression' ||
!expression.expression.optional)
) { ) {
e.render_tag_invalid_expression(expression); e.render_tag_invalid_expression(expression);
} }

@ -10,6 +10,10 @@ export default test({
<hr> <hr>
<p>foo</p> <p>foo</p>
<hr> <hr>
<p>foo</p>
<hr>
<p>foo</p>
<hr>
<p>bar</p> <p>bar</p>
<hr> <hr>
<hr> <hr>
@ -35,6 +39,10 @@ export default test({
<p>foo</p> <p>foo</p>
<hr> <hr>
<p>foo</p> <p>foo</p>
<hr>
<p>foo</p>
<hr>
<p>foo</p>
<button>toggle</button> <button>toggle</button>
` `
); );

@ -12,6 +12,10 @@
<hr> <hr>
{@render snippets.foo()} {@render snippets.foo()}
<hr> <hr>
{@render snippets?.foo()}
<hr>
{@render snippets?.foo?.()}
<hr>
{@render snippets.foo?.()} {@render snippets.foo?.()}
<hr> <hr>
{@render (optional ?? snippets.bar)()} {@render (optional ?? snippets.bar)()}

Loading…
Cancel
Save