diff --git a/src/compiler/compile/render_dom/wrappers/shared/add_const_tags.js b/src/compiler/compile/render_dom/wrappers/shared/add_const_tags.js index 446900f016..337334d989 100644 --- a/src/compiler/compile/render_dom/wrappers/shared/add_const_tags.js +++ b/src/compiler/compile/render_dom/wrappers/shared/add_const_tags.js @@ -7,26 +7,37 @@ import Expression from '../../../nodes/shared/Expression.js'; * @param {string} ctx */ export function add_const_tags(block, const_tags, ctx) { - const const_tags_props = []; - const_tags.forEach((const_tag, i) => { - const name = `#constants_${i}`; - const_tags_props.push(b `const ${name} = ${const_tag.expression.manipulate(block, ctx)}`); + const const_tags_props = []; + const_tags.forEach((const_tag, i) => { + const name = `#constants_${i}`; + const_tags_props.push(b`const ${name} = ${const_tag.expression.manipulate(block, ctx)}`); - /** @param {string} name */ - const to_ctx = (name) => block.renderer.context_lookup.has(name) - ? x `${ctx}[${block.renderer.context_lookup.get(name).index}]` - : ( /** @type {import('code-red').Node} */({ type: 'Identifier', name })); - const_tag.contexts.forEach((context) => { - if (context.type === 'DestructuredVariable') { - const_tags_props.push(b `${ctx}[${block.renderer.context_lookup.get(context.key.name).index}] = ${context.default_modifier(context.modifier({ type: 'Identifier', name }), to_ctx)}`); - } - else { - const expression = new Expression(block.renderer.component, const_tag, const_tag.scope, context.key); - const_tags_props.push(b `const ${context.property_name} = ${expression.manipulate(block, ctx)}`); - } - }); - }); - return const_tags_props; + /** @param {string} name */ + const to_ctx = (name) => + block.renderer.context_lookup.has(name) + ? x`${ctx}[${block.renderer.context_lookup.get(name).index}]` + : /** @type {import('code-red').Node} */ ({ type: 'Identifier', name }); + const_tag.contexts.forEach((context) => { + if (context.type === 'DestructuredVariable') { + const_tags_props.push( + b`${ctx}[${ + block.renderer.context_lookup.get(context.key.name).index + }] = ${context.default_modifier(context.modifier({ type: 'Identifier', name }), to_ctx)}` + ); + } else { + const expression = new Expression( + block.renderer.component, + const_tag, + const_tag.scope, + context.key + ); + const_tags_props.push( + b`const ${context.property_name} = ${expression.manipulate(block, ctx)}` + ); + } + }); + }); + return const_tags_props; } /** @@ -34,15 +45,10 @@ export function add_const_tags(block, const_tags, ctx) { * @param {import('../../../nodes/ConstTag.js').default[]} const_tags */ export function add_const_tags_context(renderer, const_tags) { - const_tags.forEach((const_tag) => { - const_tag.contexts.forEach((context) => { - if (context.type !== 'DestructuredVariable') - return; - renderer.add_to_context(context.key.name, true); - }); - }); + const_tags.forEach((const_tag) => { + const_tag.contexts.forEach((context) => { + if (context.type !== 'DestructuredVariable') return; + renderer.add_to_context(context.key.name, true); + }); + }); } - - - -