diff --git a/src/compiler/compile/render_dom/index.ts b/src/compiler/compile/render_dom/index.ts index 18b91a7631..4009c6bddf 100644 --- a/src/compiler/compile/render_dom/index.ts +++ b/src/compiler/compile/render_dom/index.ts @@ -71,7 +71,7 @@ export default function dom( } const uses_props = component.var_lookup.has('$$props'); - const uses_rest = component.var_lookup.has('$$rest'); + const uses_rest = component.var_lookup.has('$$restProps'); const $$props = uses_props || uses_rest ? `$$new_props` : `$$props`; const props = component.vars.filter(variable => !variable.module && variable.export_name); const writable_props = props.filter(variable => variable.writable); @@ -80,7 +80,7 @@ export default function dom( const compute_rest = x`@compute_rest_props($$props, ${omit_props_names.name})`; const rest = uses_rest ? b` const ${omit_props_names.name} = [${props.map(prop => `"${prop.export_name}"`).join(',')}]; - let $$rest = ${compute_rest}; + let $$restProps = ${compute_rest}; ` : null; const set = (uses_props || uses_rest || writable_props.length > 0 || component.slots.size > 0) @@ -88,7 +88,7 @@ export default function dom( ${$$props} => { ${uses_props && renderer.invalidate('$$props', x`$$props = @assign(@assign({}, $$props), @exclude_internal_props($$new_props))`)} ${uses_rest && !uses_props && x`$$props = @assign(@assign({}, $$props), @exclude_internal_props($$new_props))`} - ${uses_rest && renderer.invalidate('$$rest', x`$$rest = ${compute_rest}`)} + ${uses_rest && renderer.invalidate('$$restProps', x`$$restProps = ${compute_rest}`)} ${writable_props.map(prop => b`if ('${prop.export_name}' in ${$$props}) ${renderer.invalidate(prop.name, x`${prop.name} = ${$$props}.${prop.export_name}`)};` )} @@ -351,7 +351,7 @@ export default function dom( component.reactive_declarations.forEach(d => { const dependencies = Array.from(d.dependencies); - const uses_rest_or_props = !!dependencies.find(n => n === '$$props' || n === '$$rest'); + const uses_rest_or_props = !!dependencies.find(n => n === '$$props' || n === '$$restProps'); const writable = dependencies.filter(n => { const variable = component.var_lookup.get(n); diff --git a/src/compiler/compile/render_ssr/index.ts b/src/compiler/compile/render_ssr/index.ts index f2a1fdac18..c87fe3bdd9 100644 --- a/src/compiler/compile/render_ssr/index.ts +++ b/src/compiler/compile/render_ssr/index.ts @@ -31,9 +31,9 @@ export default function ssr( { code: null, map: null } : component.stylesheet.render(options.filename, true); - const uses_rest = component.var_lookup.has('$$rest'); + const uses_rest = component.var_lookup.has('$$restProps'); const props = component.vars.filter(variable => !variable.module && variable.export_name); - const rest = uses_rest ? b`let $$rest = @compute_rest_props($$props, [${props.map(prop => `"${prop.export_name}"`).join(',')}]);` : null; + const rest = uses_rest ? b`let $$restProps = @compute_rest_props($$props, [${props.map(prop => `"${prop.export_name}"`).join(',')}]);` : null; const reactive_stores = component.vars.filter(variable => variable.name[0] === '$' && variable.name[1] !== '$'); const reactive_store_values = reactive_stores diff --git a/src/compiler/compile/utils/reserved_keywords.ts b/src/compiler/compile/utils/reserved_keywords.ts index fb9799b1d7..00f3a3b87b 100644 --- a/src/compiler/compile/utils/reserved_keywords.ts +++ b/src/compiler/compile/utils/reserved_keywords.ts @@ -1,4 +1,4 @@ -export const reserved_keywords = new Set(["$$props", "$$rest"]); +export const reserved_keywords = new Set(["$$props", "$$restProps"]); export function is_reserved_keyword(name) { return reserved_keywords.has(name); diff --git a/test/runtime/samples/$$rest-without-props/App.svelte b/test/runtime/samples/$$rest-without-props/App.svelte index f441a911d8..d8e04d5904 100644 --- a/test/runtime/samples/$$rest-without-props/App.svelte +++ b/test/runtime/samples/$$rest-without-props/App.svelte @@ -3,10 +3,10 @@ export function b() {} export let c = 1; - $: length = Object.keys($$rest).length; - $: values = Object.values($$rest); + $: length = Object.keys($$restProps).length; + $: values = Object.values($$restProps);