From 8d02009cccc238371ded08c6fe7d3c741f48c441 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Thu, 20 Mar 2025 21:59:26 -0400 Subject: [PATCH] Apply suggestions from code review --- .../client/visitors/AssignmentExpression.js | 3 +-- .../phases/3-transform/client/visitors/ClassBody.js | 6 +----- .../3-transform/client/visitors/shared/declarations.js | 2 +- .../svelte/src/internal/client/reactivity/sources.js | 10 ++++------ 4 files changed, 7 insertions(+), 14 deletions(-) diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/AssignmentExpression.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/AssignmentExpression.js index 1fd794672f..5ff9945fa6 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/AssignmentExpression.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/AssignmentExpression.js @@ -75,8 +75,7 @@ function build_assignment(operator, left, right, context) { context.state.in_constructor ? '$.simple_set' : '$.set', left, value, - needs_proxy && b.true, - dev && needs_proxy && b.true + needs_proxy && b.true ); } } diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/ClassBody.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/ClassBody.js index 803d95044f..a1306834f0 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/ClassBody.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/ClassBody.js @@ -159,11 +159,7 @@ export function ClassBody(node, context) { 'set', definition.key, [value], - [ - b.stmt( - b.call('$.set', member, value, field.kind === 'state' && b.true, dev && b.true) - ) - ] + [b.stmt(b.call('$.set', member, value, field.kind === 'state' && b.true))] ) ); } diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/declarations.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/declarations.js index 57e40a9536..77e9831e11 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/declarations.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/shared/declarations.js @@ -26,7 +26,7 @@ export function add_state_transformers(context) { context.state.transform[name] = { read: binding.declaration_kind === 'var' ? (node) => b.call('$.safe_get', node) : get_value, assign: (node, value, proxy = false) => { - let call = b.call('$.set', node, value, proxy && b.true, dev && proxy && b.true); + let call = b.call('$.set', node, value, proxy && b.true); if (context.state.scope.get(`$${node.name}`)?.kind === 'store_sub') { call = b.call('$.store_unsub', call, b.literal(`$${node.name}`), b.id('$$stores')); diff --git a/packages/svelte/src/internal/client/reactivity/sources.js b/packages/svelte/src/internal/client/reactivity/sources.js index 5abafa0ebd..dcee1f12cd 100644 --- a/packages/svelte/src/internal/client/reactivity/sources.js +++ b/packages/svelte/src/internal/client/reactivity/sources.js @@ -183,10 +183,9 @@ export function mutate(source, value) { * @param {Source} source * @param {V} value * @param {boolean} [should_proxy] - * @param {boolean} [needs_previous] * @returns {V} */ -export function set(source, value, should_proxy = false, needs_previous = false) { +export function set(source, value, should_proxy = false) { if ( active_reaction !== null && !untracking && @@ -200,7 +199,7 @@ export function set(source, value, should_proxy = false, needs_previous = false) } let new_value = should_proxy - ? needs_previous + ? DEV ? proxy(value, source.o, null, source) : proxy(value, source.o) : value; @@ -213,12 +212,11 @@ export function set(source, value, should_proxy = false, needs_previous = false) * @param {Source} source * @param {V} value * @param {boolean} [should_proxy] - * @param {boolean} [needs_previous] * @returns {V} */ -export function simple_set(source, value, should_proxy = false, needs_previous = false) { +export function simple_set(source, value, should_proxy = false) { let new_value = should_proxy - ? needs_previous + ? DEV ? proxy(value, source.o, null, source) : proxy(value, source.o) : value;