From 6539ad09da47437896e92d724b9f8788f5378306 Mon Sep 17 00:00:00 2001 From: Rich Harris Date: Mon, 4 Dec 2023 12:05:47 -0500 Subject: [PATCH] make readonly dev-only --- .../compiler/phases/3-transform/client/visitors/template.js | 4 +++- .../runtime-runes/samples/proxy-prop-readonly/_config.js | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/svelte/src/compiler/phases/3-transform/client/visitors/template.js b/packages/svelte/src/compiler/phases/3-transform/client/visitors/template.js index 5d31e9ef03..c5162df814 100644 --- a/packages/svelte/src/compiler/phases/3-transform/client/visitors/template.js +++ b/packages/svelte/src/compiler/phases/3-transform/client/visitors/template.js @@ -769,7 +769,9 @@ function serialize_inline_component(node, component_name, context) { if (attribute.metadata.dynamic) { // TODO create readonly deriveds outside the getters - push_prop(b.get(attribute.name, [b.return(b.call('$.readonly', value))])); + let arg = value; + if (context.state.options.dev) arg = b.call('$.readonly', arg); + push_prop(b.get(attribute.name, [b.return(arg)])); } else { push_prop(b.init(attribute.name, value)); } diff --git a/packages/svelte/tests/runtime-runes/samples/proxy-prop-readonly/_config.js b/packages/svelte/tests/runtime-runes/samples/proxy-prop-readonly/_config.js index ed96557beb..5e0eb0e2da 100644 --- a/packages/svelte/tests/runtime-runes/samples/proxy-prop-readonly/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/proxy-prop-readonly/_config.js @@ -3,6 +3,10 @@ import { test } from '../../test'; export default test({ html: ``, + compileOptions: { + dev: true + }, + async test({ assert, target }) { const btn = target.querySelector('button'); await btn?.click();