From fe2072e6e3fb2f54e9a17e5acc4c311d59a75986 Mon Sep 17 00:00:00 2001 From: ComputerGuy <63362464+Ocean-OS@users.noreply.github.com> Date: Sun, 1 Jun 2025 14:14:25 -0700 Subject: [PATCH] fix --- packages/svelte/src/internal/client/proxy.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/svelte/src/internal/client/proxy.js b/packages/svelte/src/internal/client/proxy.js index 33386777b7..2c31ae711f 100644 --- a/packages/svelte/src/internal/client/proxy.js +++ b/packages/svelte/src/internal/client/proxy.js @@ -38,7 +38,8 @@ export function proxy(value, path, path_preservation = PROXY_PRESERVE_PATH) { STATE_SYMBOL in value && PROXY_PATH_SYMBOL in value ) { - value[PROXY_PATH_SYMBOL] = (path_preservation & PROXY_CHANGE_PATH) === 0 ? '[$state proxy]' : path; + value[PROXY_PATH_SYMBOL] = + (path_preservation & PROXY_CHANGE_PATH) === 0 ? '[$state proxy]' : path; } // if non-proxyable, or is already a proxy, return `value` if (typeof value !== 'object' || value === null || STATE_SYMBOL in value) { @@ -232,6 +233,13 @@ export function proxy(value, path, path_preservation = PROXY_PRESERVE_PATH) { set(target, prop, value, receiver) { if (DEV && prop === PROXY_PATH_SYMBOL) { path = value; + // rename all child sources and child proxies + for (const [prop, source] of sources) { + tag_source(source, to_trace_name(prop)); + if (typeof source.v === 'object' && source.v !== null && PROXY_PATH_SYMBOL in source.v) { + source.v[PROXY_PATH_SYMBOL] = to_trace_name(prop); + } + } } var s = sources.get(prop); var has = prop in target;