From 2b13874dae14585b38051f849904d56a81448c2e Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Mon, 19 May 2025 21:52:33 -0400 Subject: [PATCH] Revert "one down" This reverts commit 9f6c4cf84838de8d8cb93e7217de37871839ac8b. --- .../3-transform/client/visitors/shared/component.js | 6 +++--- packages/svelte/src/compiler/utils/builders.js | 12 +++--------- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/component.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/component.js index d8de3fc729..6d3d8a68e6 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/component.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/component.js @@ -261,10 +261,10 @@ export function build_component(node, component_name, context, anchor = context. let expression = /** @type {Expression} */ (context.visit(attribute.expression)); if (attribute.metadata.expression.has_state) { - push_prop(b.get(b.call('$.attachment'), [b.return(expression)], true)); - } else { - push_prop(b.prop('init', b.call('$.attachment'), expression, true)); + expression = b.arrow([b.id('$$node')], b.call(expression, b.id('$$node'))); } + + push_prop(b.prop('get', b.call('$.attachment'), expression, true)); } } diff --git a/packages/svelte/src/compiler/utils/builders.js b/packages/svelte/src/compiler/utils/builders.js index 05090b1b39..736738d19f 100644 --- a/packages/svelte/src/compiler/utils/builders.js +++ b/packages/svelte/src/compiler/utils/builders.js @@ -231,18 +231,12 @@ export function function_declaration(id, params, body) { } /** - * @param {ESTree.Expression | string} name + * @param {string} name * @param {ESTree.Statement[]} body - * @param {boolean} computed * @returns {ESTree.Property & { value: ESTree.FunctionExpression}}} */ -export function get(name, body, computed = false) { - return prop( - 'get', - typeof name === 'string' ? key(name) : name, - function_builder(null, [], block(body)), - computed - ); +export function get(name, body) { + return prop('get', key(name), function_builder(null, [], block(body))); } /**