|
|
@ -324,14 +324,16 @@ export function mark_reactions(signal, status, schedule_async = true) {
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var should_schedule = (flags & DIRTY) === 0 && (schedule_async || (flags & ASYNC) === 0);
|
|
|
|
|
|
|
|
|
|
|
|
// don't set a DIRTY reaction to MAYBE_DIRTY
|
|
|
|
// don't set a DIRTY reaction to MAYBE_DIRTY
|
|
|
|
if ((flags & DIRTY) === 0 && (schedule_async || (flags & ASYNC) === 0)) {
|
|
|
|
if (should_schedule) {
|
|
|
|
set_signal_status(reaction, status);
|
|
|
|
set_signal_status(reaction, status);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if ((flags & DERIVED) !== 0) {
|
|
|
|
if ((flags & DERIVED) !== 0) {
|
|
|
|
mark_reactions(/** @type {Derived} */ (reaction), MAYBE_DIRTY);
|
|
|
|
mark_reactions(/** @type {Derived} */ (reaction), MAYBE_DIRTY);
|
|
|
|
} else if ((flags & DIRTY) === 0 && (schedule_async || (flags & ASYNC) === 0)) {
|
|
|
|
} else if (should_schedule) {
|
|
|
|
schedule_effect(/** @type {Effect} */ (reaction));
|
|
|
|
schedule_effect(/** @type {Effect} */ (reaction));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|