chore: fix SSR compiler output (#16790)

* chore: fix SSR compiler output

* update snapshots
pull/16789/head
Rich Harris 2 days ago committed by GitHub
parent 88d7e05a2e
commit 39682e2435
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -191,7 +191,7 @@ export function server_component(analysis, options) {
b.let('$$inner_renderer'), b.let('$$inner_renderer'),
b.function_declaration( b.function_declaration(
b.id('$$render_inner'), b.id('$$render_inner'),
[b.id(' $$renderer')], [b.id('$$renderer')],
b.block(/** @type {Statement[]} */ (rest)) b.block(/** @type {Statement[]} */ (rest))
), ),
b.do_while( b.do_while(
@ -253,7 +253,7 @@ export function server_component(analysis, options) {
if (analysis.props_id) { if (analysis.props_id) {
// need to be placed on first line of the component for hydration // need to be placed on first line of the component for hydration
component_block.body.unshift( component_block.body.unshift(
b.const(analysis.props_id, b.call('$.props_id', b.id(' $$renderer'))) b.const(analysis.props_id, b.call('$.props_id', b.id('$$renderer')))
); );
} }
@ -315,7 +315,7 @@ export function server_component(analysis, options) {
const component_function = b.function_declaration( const component_function = b.function_declaration(
b.id(analysis.name), b.id(analysis.name),
should_inject_props ? [b.id(' $$renderer'), b.id('$$props')] : [b.id(' $$renderer')], should_inject_props ? [b.id('$$renderer'), b.id('$$props')] : [b.id('$$renderer')],
component_block component_block
); );

@ -13,7 +13,7 @@ export function AwaitBlock(node, context) {
let statement = b.stmt( let statement = b.stmt(
b.call( b.call(
'$.await', '$.await',
b.id(' $$renderer'), b.id('$$renderer'),
/** @type {Expression} */ (context.visit(node.expression)), /** @type {Expression} */ (context.visit(node.expression)),
b.thunk( b.thunk(
node.pending ? /** @type {BlockStatement} */ (context.visit(node.pending)) : b.block([]) node.pending ? /** @type {BlockStatement} */ (context.visit(node.pending)) : b.block([])

@ -68,7 +68,7 @@ export function RegularElement(node, context) {
b.stmt( b.stmt(
b.call( b.call(
'$.push_element', '$.push_element',
b.id(' $$renderer'), b.id('$$renderer'),
b.literal(node.name), b.literal(node.name),
b.literal(location.line), b.literal(location.line),
b.literal(location.column) b.literal(location.column)
@ -160,7 +160,7 @@ export function RegularElement(node, context) {
b.stmt( b.stmt(
b.call( b.call(
'$.simple_valueless_option', '$.simple_valueless_option',
b.id(' $$renderer'), b.id('$$renderer'),
b.thunk( b.thunk(
node.metadata.synthetic_value_node.expression, node.metadata.synthetic_value_node.expression,
node.metadata.synthetic_value_node.metadata.expression.has_await node.metadata.synthetic_value_node.metadata.expression.has_await
@ -175,9 +175,9 @@ export function RegularElement(node, context) {
b.stmt( b.stmt(
b.call( b.call(
'$.valueless_option', '$.valueless_option',
b.id(' $$renderer'), b.id('$$renderer'),
b.arrow( b.arrow(
[b.id(' $$renderer')], [b.id('$$renderer')],
b.block([...inner_state.init, ...build_template(inner_state.template)]) b.block([...inner_state.init, ...build_template(inner_state.template)])
) )
) )

@ -23,7 +23,7 @@ export function RenderTag(node, context) {
b.stmt( b.stmt(
(node.expression.type === 'CallExpression' ? b.call : b.maybe_call)( (node.expression.type === 'CallExpression' ? b.call : b.maybe_call)(
snippet_function, snippet_function,
b.id(' $$renderer'), b.id('$$renderer'),
...snippet_args ...snippet_args
) )
) )

@ -57,7 +57,7 @@ export function SlotElement(node, context) {
const slot = b.call( const slot = b.call(
'$.slot', '$.slot',
b.id(' $$renderer'), b.id('$$renderer'),
b.id('$$props'), b.id('$$props'),
name, name,
props_expression, props_expression,

@ -11,7 +11,7 @@ import * as b from '#compiler/builders';
export function SnippetBlock(node, context) { export function SnippetBlock(node, context) {
let fn = b.function_declaration( let fn = b.function_declaration(
node.expression, node.expression,
[b.id(' $$renderer'), ...node.parameters], [b.id('$$renderer'), ...node.parameters],
/** @type {BlockStatement} */ (context.visit(node.body)) /** @type {BlockStatement} */ (context.visit(node.body))
); );
@ -21,7 +21,7 @@ export function SnippetBlock(node, context) {
const statements = node.metadata.can_hoist ? context.state.hoisted : context.state.init; const statements = node.metadata.can_hoist ? context.state.hoisted : context.state.init;
if (dev) { if (dev) {
fn.body.body.unshift(b.stmt(b.call('$.validate_snippet_args', b.id(' $$renderer')))); fn.body.body.unshift(b.stmt(b.call('$.validate_snippet_args', b.id('$$renderer'))));
statements.push(b.stmt(b.call('$.prevent_snippet_stringification', fn.id))); statements.push(b.stmt(b.call('$.prevent_snippet_stringification', fn.id)));
} }

@ -24,7 +24,7 @@ export function SvelteBoundary(node, context) {
const pending = pending_attribute const pending = pending_attribute
? b.call( ? b.call(
build_attribute_value(pending_attribute.value, context, false, true), build_attribute_value(pending_attribute.value, context, false, true),
b.id(' $$renderer') b.id('$$renderer')
) )
: /** @type {BlockStatement} */ (context.visit(pending_snippet.body)); : /** @type {BlockStatement} */ (context.visit(pending_snippet.body));

@ -45,7 +45,7 @@ export function SvelteElement(node, context) {
b.stmt( b.stmt(
b.call( b.call(
'$.push_element', '$.push_element',
b.id(' $$renderer'), b.id('$$renderer'),
tag, tag,
b.literal(location.line), b.literal(location.line),
b.literal(location.column) b.literal(location.column)
@ -61,7 +61,7 @@ export function SvelteElement(node, context) {
b.stmt( b.stmt(
b.call( b.call(
'$.element', '$.element',
b.id(' $$renderer'), b.id('$$renderer'),
tag, tag,
attributes.body.length > 0 && b.thunk(attributes), attributes.body.length > 0 && b.thunk(attributes),
children.body.length > 0 && b.thunk(children) children.body.length > 0 && b.thunk(children)

@ -11,6 +11,6 @@ export function SvelteHead(node, context) {
const block = /** @type {BlockStatement} */ (context.visit(node.fragment)); const block = /** @type {BlockStatement} */ (context.visit(node.fragment));
context.state.template.push( context.state.template.push(
b.stmt(b.call('$.head', b.id(' $$renderer'), b.arrow([b.id(' $$renderer')], block))) b.stmt(b.call('$.head', b.id('$$renderer'), b.arrow([b.id('$$renderer')], block)))
); );
} }

@ -14,6 +14,6 @@ export function TitleElement(node, context) {
template.push(b.literal('</title>')); template.push(b.literal('</title>'));
context.state.init.push( context.state.init.push(
b.stmt(b.call('$.build_title', b.id(' $$renderer'), b.thunk(b.block(build_template(template))))) b.stmt(b.call('$.build_title', b.id('$$renderer'), b.thunk(b.block(build_template(template)))))
); );
} }

@ -215,7 +215,7 @@ export function build_inline_component(node, expression, context) {
if (block.body.length === 0) continue; if (block.body.length === 0) continue;
/** @type {Pattern[]} */ /** @type {Pattern[]} */
const params = [b.id(' $$renderer')]; const params = [b.id('$$renderer')];
if (lets[slot_name].length > 0) { if (lets[slot_name].length > 0) {
const pattern = b.object_pattern( const pattern = b.object_pattern(
@ -292,7 +292,7 @@ export function build_inline_component(node, expression, context) {
let statement = b.stmt( let statement = b.stmt(
(node.type === 'SvelteComponent' ? b.maybe_call : b.call)( (node.type === 'SvelteComponent' ? b.maybe_call : b.call)(
expression, expression,
b.id(' $$renderer'), b.id('$$renderer'),
props_expression props_expression
) )
); );
@ -308,7 +308,7 @@ export function build_inline_component(node, expression, context) {
statement = b.stmt( statement = b.stmt(
b.call( b.call(
'$.css_props', '$.css_props',
b.id(' $$renderer'), b.id('$$renderer'),
b.literal(context.state.namespace === 'svg' ? false : true), b.literal(context.state.namespace === 'svg' ? false : true),
b.object(custom_css_props), b.object(custom_css_props),
b.thunk(b.block([statement])), b.thunk(b.block([statement])),

@ -207,7 +207,7 @@ export function build_element_attributes(node, context) {
context.state.template.push( context.state.template.push(
b.call( b.call(
'$.maybe_selected', '$.maybe_selected',
b.id(' $$renderer'), b.id('$$renderer'),
b.member( b.member(
build_spread_object( build_spread_object(
node, node,
@ -264,7 +264,7 @@ export function build_element_attributes(node, context) {
context.state.template.push( context.state.template.push(
b.call( b.call(
'$.maybe_selected', '$.maybe_selected',
b.id(' $$renderer'), b.id('$$renderer'),
literal_value != null ? b.literal(/** @type {any} */ (literal_value)) : b.void0 literal_value != null ? b.literal(/** @type {any} */ (literal_value)) : b.void0
) )
); );
@ -296,7 +296,7 @@ export function build_element_attributes(node, context) {
} }
if (name === 'value' && node.name === 'option') { if (name === 'value' && node.name === 'option') {
context.state.template.push(b.call('$.maybe_selected', b.id(' $$renderer'), value)); context.state.template.push(b.call('$.maybe_selected', b.id('$$renderer'), value));
} }
} }
} }

@ -267,7 +267,7 @@ export function build_getter(node, state) {
* @returns {Statement} * @returns {Statement}
*/ */
export function call_child_renderer(body, async) { export function call_child_renderer(body, async) {
return b.stmt(b.call(' $$renderer.child', b.arrow([b.id(' $$renderer')], body, async))); return b.stmt(b.call(' $$renderer.child', b.arrow([b.id('$$renderer')], body, async)));
} }
/** /**
@ -277,7 +277,7 @@ export function call_child_renderer(body, async) {
*/ */
export function call_component_renderer(body, component_fn_id) { export function call_component_renderer(body, component_fn_id) {
return b.stmt( return b.stmt(
b.call(' $$renderer.component', b.arrow([b.id(' $$renderer')], body, false), component_fn_id) b.call(' $$renderer.component', b.arrow([b.id('$$renderer')], body, false), component_fn_id)
); );
} }

@ -1,8 +1,8 @@
import 'svelte/internal/flags/async'; import 'svelte/internal/flags/async';
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Async_each_fallback_hoisting( $$renderer) { export default function Async_each_fallback_hoisting($$renderer) {
$$renderer.child(async ( $$renderer) => { $$renderer.child(async ($$renderer) => {
const each_array = $.ensure_array_like(await Promise.resolve([])); const each_array = $.ensure_array_like(await Promise.resolve([]));
if (each_array.length !== 0) { if (each_array.length !== 0) {

@ -1,14 +1,14 @@
import 'svelte/internal/flags/async'; import 'svelte/internal/flags/async';
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Async_each_hoisting( $$renderer) { export default function Async_each_hoisting($$renderer) {
const first = Promise.resolve(1); const first = Promise.resolve(1);
const second = Promise.resolve(2); const second = Promise.resolve(2);
const third = Promise.resolve(3); const third = Promise.resolve(3);
$$renderer.push(`<!--[-->`); $$renderer.push(`<!--[-->`);
$$renderer.child(async ( $$renderer) => { $$renderer.child(async ($$renderer) => {
const each_array = $.ensure_array_like(await Promise.resolve([first, second, third])); const each_array = $.ensure_array_like(await Promise.resolve([first, second, third]));
for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) { for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {

@ -1,8 +1,8 @@
import 'svelte/internal/flags/async'; import 'svelte/internal/flags/async';
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Async_if_alternate_hoisting( $$renderer) { export default function Async_if_alternate_hoisting($$renderer) {
$$renderer.child(async ( $$renderer) => { $$renderer.child(async ($$renderer) => {
if (await Promise.resolve(false)) { if (await Promise.resolve(false)) {
$$renderer.push('<!--[-->'); $$renderer.push('<!--[-->');
$$renderer.push(async () => $.escape(await Promise.reject('no no no'))); $$renderer.push(async () => $.escape(await Promise.reject('no no no')));

@ -1,8 +1,8 @@
import 'svelte/internal/flags/async'; import 'svelte/internal/flags/async';
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Async_if_hoisting( $$renderer) { export default function Async_if_hoisting($$renderer) {
$$renderer.child(async ( $$renderer) => { $$renderer.child(async ($$renderer) => {
if (await Promise.resolve(true)) { if (await Promise.resolve(true)) {
$$renderer.push('<!--[-->'); $$renderer.push('<!--[-->');
$$renderer.push(async () => $.escape(await Promise.resolve('yes yes yes'))); $$renderer.push(async () => $.escape(await Promise.resolve('yes yes yes')));

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Await_block_scope( $$renderer) { export default function Await_block_scope($$renderer) {
let counter = { count: 0 }; let counter = { count: 0 };
const promise = Promise.resolve(counter); const promise = Promise.resolve(counter);
@ -9,6 +9,6 @@ export default function Await_block_scope( $$renderer) {
} }
$$renderer.push(`<button>clicks: ${$.escape(counter.count)}</button> `); $$renderer.push(`<button>clicks: ${$.escape(counter.count)}</button> `);
$.await( $$renderer, promise, () => {}, (counter) => {}); $.await($$renderer, promise, () => {}, (counter) => {});
$$renderer.push(`<!--]--> ${$.escape(counter.count)}`); $$renderer.push(`<!--]--> ${$.escape(counter.count)}`);
} }

@ -1,18 +1,18 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
import TextInput from './Child.svelte'; import TextInput from './Child.svelte';
function snippet( $$renderer) { function snippet($$renderer) {
$$renderer.push(`<!---->Something`); $$renderer.push(`<!---->Something`);
} }
export default function Bind_component_snippet( $$renderer) { export default function Bind_component_snippet($$renderer) {
let value = ''; let value = '';
const _snippet = snippet; const _snippet = snippet;
let $$settled = true; let $$settled = true;
let $$inner_renderer; let $$inner_renderer;
function $$render_inner( $$renderer) { function $$render_inner($$renderer) {
TextInput( $$renderer, { TextInput($$renderer, {
get value() { get value() {
return value; return value;
}, },

@ -1,5 +1,5 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Bind_this( $$renderer) { export default function Bind_this($$renderer) {
Foo( $$renderer, {}); Foo($$renderer, {});
} }

@ -1,7 +1,7 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Class_state_field_constructor_assignment( $$renderer, $$props) { export default function Class_state_field_constructor_assignment($$renderer, $$props) {
$$renderer.component(( $$renderer) => { $$renderer.component(($$renderer) => {
class Foo { class Foo {
a = 0; a = 0;
#b; #b;

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Delegated_locally_declared_shadowed( $$renderer) { export default function Delegated_locally_declared_shadowed($$renderer) {
$$renderer.push(`<!--[-->`); $$renderer.push(`<!--[-->`);
const each_array = $.ensure_array_like({ length: 1 }); const each_array = $.ensure_array_like({ length: 1 });

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Main( $$renderer) { export default function Main($$renderer) {
// needs to be a snapshot test because jsdom does auto-correct the attribute casing // needs to be a snapshot test because jsdom does auto-correct the attribute casing
let x = 'test'; let x = 'test';

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Each_index_non_null( $$renderer) { export default function Each_index_non_null($$renderer) {
$$renderer.push(`<!--[-->`); $$renderer.push(`<!--[-->`);
const each_array = $.ensure_array_like(Array(10)); const each_array = $.ensure_array_like(Array(10));

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Each_string_template( $$renderer) { export default function Each_string_template($$renderer) {
$$renderer.push(`<!--[-->`); $$renderer.push(`<!--[-->`);
const each_array = $.ensure_array_like(['foo', 'bar', 'baz']); const each_array = $.ensure_array_like(['foo', 'bar', 'baz']);

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Function_prop_no_getter( $$renderer) { export default function Function_prop_no_getter($$renderer) {
let count = 0; let count = 0;
function onmouseup() { function onmouseup() {
@ -9,12 +9,12 @@ export default function Function_prop_no_getter( $$renderer) {
const plusOne = (num) => num + 1; const plusOne = (num) => num + 1;
Button( $$renderer, { Button($$renderer, {
onmousedown: () => count += 1, onmousedown: () => count += 1,
onmouseup, onmouseup,
onmouseenter: () => count = plusOne(count), onmouseenter: () => count = plusOne(count),
children: ( $$renderer) => { children: ($$renderer) => {
$$renderer.push(`<!---->clicks: ${$.escape(count)}`); $$renderer.push(`<!---->clicks: ${$.escape(count)}`);
}, },

@ -1,5 +1,5 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Functional_templating( $$renderer) { export default function Functional_templating($$renderer) {
$$renderer.push(`<h1>hello</h1> <div class="potato"><p>child element</p> <p>another child element</p></div>`); $$renderer.push(`<h1>hello</h1> <div class="potato"><p>child element</p> <p>another child element</p></div>`);
} }

@ -1,5 +1,5 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Hello_world( $$renderer) { export default function Hello_world($$renderer) {
$$renderer.push(`<h1>hello world</h1>`); $$renderer.push(`<h1>hello world</h1>`);
} }

@ -1,5 +1,5 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Hmr( $$renderer) { export default function Hmr($$renderer) {
$$renderer.push(`<h1>hello world</h1>`); $$renderer.push(`<h1>hello world</h1>`);
} }

@ -1,4 +1,4 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
import { random } from './module.svelte'; import { random } from './module.svelte';
export default function Imports_in_modules( $$renderer) {} export default function Imports_in_modules($$renderer) {}

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Nullish_coallescence_omittance( $$renderer) { export default function Nullish_coallescence_omittance($$renderer) {
let name = 'world'; let name = 'world';
let count = 0; let count = 0;

@ -1,7 +1,7 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Props_identifier( $$renderer, $$props) { export default function Props_identifier($$renderer, $$props) {
$$renderer.component(( $$renderer) => { $$renderer.component(($$renderer) => {
let { $$slots, $$events, ...props } = $$props; let { $$slots, $$events, ...props } = $$props;
props.a; props.a;

@ -1,7 +1,7 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Purity( $$renderer) { export default function Purity($$renderer) {
$$renderer.push(`<p>0</p> <p>${$.escape(location.href)}</p> `); $$renderer.push(`<p>0</p> <p>${$.escape(location.href)}</p> `);
Child( $$renderer, { prop: encodeURIComponent('hello') }); Child($$renderer, { prop: encodeURIComponent('hello') });
$$renderer.push(`<!---->`); $$renderer.push(`<!---->`);
} }

@ -1,7 +1,7 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Skip_static_subtree( $$renderer, $$props) { export default function Skip_static_subtree($$renderer, $$props) {
let { title, content } = $$props; let { title, content } = $$props;
$$renderer.push(`<header><nav><a href="/">Home</a> <a href="/away">Away</a></nav></header> <main><h1>${$.escape(title)}</h1> <div class="static"><p>we don't need to traverse these nodes</p></div> <p>or</p> <p>these</p> <p>ones</p> ${$.html(content)} <p>these</p> <p>trailing</p> <p>nodes</p> <p>can</p> <p>be</p> <p>completely</p> <p>ignored</p></main> <cant-skip><custom-elements with="attributes"></custom-elements></cant-skip> <div><input autofocus/></div> <div><source muted/></div> <select><option value="a"${$.maybe_selected( $$renderer, 'a')}>a</option></select> <img src="..." alt="" loading="lazy"/> <div><img src="..." alt="" loading="lazy"/></div>`); $$renderer.push(`<header><nav><a href="/">Home</a> <a href="/away">Away</a></nav></header> <main><h1>${$.escape(title)}</h1> <div class="static"><p>we don't need to traverse these nodes</p></div> <p>or</p> <p>these</p> <p>ones</p> ${$.html(content)} <p>these</p> <p>trailing</p> <p>nodes</p> <p>can</p> <p>be</p> <p>completely</p> <p>ignored</p></main> <cant-skip><custom-elements with="attributes"></custom-elements></cant-skip> <div><input autofocus/></div> <div><source muted/></div> <select><option value="a"${$.maybe_selected($$renderer, 'a')}>a</option></select> <img src="..." alt="" loading="lazy"/> <div><img src="..." alt="" loading="lazy"/></div>`);
} }

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function State_proxy_literal( $$renderer) { export default function State_proxy_literal($$renderer) {
let str = ''; let str = '';
let tpl = ``; let tpl = ``;

@ -1,7 +1,7 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Svelte_element( $$renderer, $$props) { export default function Svelte_element($$renderer, $$props) {
let { tag = 'hr' } = $$props; let { tag = 'hr' } = $$props;
$.element( $$renderer, tag); $.element($$renderer, tag);
} }

@ -1,6 +1,6 @@
import * as $ from 'svelte/internal/server'; import * as $ from 'svelte/internal/server';
export default function Text_nodes_deriveds( $$renderer) { export default function Text_nodes_deriveds($$renderer) {
let count1 = 0; let count1 = 0;
let count2 = 0; let count2 = 0;

Loading…
Cancel
Save