pull/15844/head
Rich Harris 3 months ago
parent 2fd762863a
commit 5694c0692e

@ -462,16 +462,16 @@ function setup_select_synchronization(value_binding, context) {
/** /**
* @param {AST.ClassDirective[]} class_directives * @param {AST.ClassDirective[]} class_directives
* @param {ComponentContext} context
* @param {MemoizedExpression[]} async_expressions * @param {MemoizedExpression[]} async_expressions
* @param {MemoizedExpression[]} expressions * @param {MemoizedExpression[]} expressions
* @param {ComponentContext} context
* @return {ObjectExpression | Identifier} * @return {ObjectExpression | Identifier}
*/ */
export function build_class_directives_object( export function build_class_directives_object(
class_directives, class_directives,
async_expressions, context,
expressions, async_expressions = context.state.async_expressions,
context expressions = context.state.expressions
) { ) {
let properties = []; let properties = [];
let has_call_or_state = false; let has_call_or_state = false;
@ -493,16 +493,16 @@ export function build_class_directives_object(
/** /**
* @param {AST.StyleDirective[]} style_directives * @param {AST.StyleDirective[]} style_directives
* @param {ComponentContext} context
* @param {MemoizedExpression[]} async_expressions * @param {MemoizedExpression[]} async_expressions
* @param {MemoizedExpression[]} expressions * @param {MemoizedExpression[]} expressions
* @param {ComponentContext} context
* @return {ObjectExpression | ArrayExpression}} * @return {ObjectExpression | ArrayExpression}}
*/ */
export function build_style_directives_object( export function build_style_directives_object(
style_directives, style_directives,
async_expressions, context,
expressions, async_expressions = context.state.async_expressions,
context expressions = context.state.expressions
) { ) {
let normal_properties = []; let normal_properties = [];
let important_properties = []; let important_properties = [];

@ -72,7 +72,7 @@ export function build_attribute_effect(
b.prop( b.prop(
'init', 'init',
b.array([b.id('$.CLASS')]), b.array([b.id('$.CLASS')]),
build_class_directives_object(class_directives, async_expressions, expressions, context) build_class_directives_object(class_directives, context, async_expressions, expressions)
) )
); );
} }
@ -82,7 +82,7 @@ export function build_attribute_effect(
b.prop( b.prop(
'init', 'init',
b.array([b.id('$.STYLE')]), b.array([b.id('$.STYLE')]),
build_style_directives_object(style_directives, async_expressions, expressions, context) build_style_directives_object(style_directives, context, async_expressions, expressions)
) )
); );
} }
@ -180,12 +180,7 @@ export function build_set_class(element, node_id, attribute, class_directives, c
let next; let next;
if (class_directives.length) { if (class_directives.length) {
next = build_class_directives_object( next = build_class_directives_object(class_directives, context);
class_directives,
context.state.async_expressions,
context.state.expressions,
context
);
has_state ||= class_directives.some((d) => d.metadata.expression.has_state); has_state ||= class_directives.some((d) => d.metadata.expression.has_state);
if (has_state) { if (has_state) {
@ -258,12 +253,7 @@ export function build_set_style(node_id, attribute, style_directives, context) {
let next; let next;
if (style_directives.length) { if (style_directives.length) {
next = build_style_directives_object( next = build_style_directives_object(style_directives, context);
style_directives,
context.state.async_expressions,
context.state.expressions,
context
);
has_state ||= style_directives.some((d) => d.metadata.expression.has_state); has_state ||= style_directives.some((d) => d.metadata.expression.has_state);
if (has_state) { if (has_state) {

Loading…
Cancel
Save