rename from_async_derived -> current_async_derived

pull/15844/head
Rich Harris 3 months ago
parent 983083fb82
commit d39e60bf0a

@ -22,7 +22,7 @@ import { get_next_sibling } from '../operations.js';
import { queue_micro_task } from '../task.js'; import { queue_micro_task } from '../task.js';
import * as e from '../../errors.js'; import * as e from '../../errors.js';
import { DEV } from 'esm-env'; import { DEV } from 'esm-env';
import { from_async_derived, set_from_async_derived } from '../../reactivity/deriveds.js'; import { current_async_effect, set_from_async_derived } from '../../reactivity/deriveds.js';
import { Batch } from '../../reactivity/batch.js'; import { Batch } from '../../reactivity/batch.js';
import { internal_set, source } from '../../reactivity/sources.js'; import { internal_set, source } from '../../reactivity/sources.js';
import { tag } from '../../dev/tracing.js'; import { tag } from '../../dev/tracing.js';
@ -397,7 +397,7 @@ export function capture(track = true) {
var previous_component_context = component_context; var previous_component_context = component_context;
if (DEV && !track) { if (DEV && !track) {
var was_from_async_derived = from_async_derived; var previous_async_effect = current_async_effect;
} }
return function restore() { return function restore() {
@ -408,7 +408,7 @@ export function capture(track = true) {
} }
if (DEV) { if (DEV) {
set_from_async_derived(track ? null : was_from_async_derived); set_from_async_derived(track ? null : previous_async_effect);
} }
// prevent the active effect from outstaying its welcome // prevent the active effect from outstaying its welcome

@ -36,11 +36,11 @@ import { UNINITIALIZED } from '../../../constants.js';
import { current_batch } from './batch.js'; import { current_batch } from './batch.js';
/** @type {Effect | null} */ /** @type {Effect | null} */
export let from_async_derived = null; export let current_async_effect = null;
/** @param {Effect | null} v */ /** @param {Effect | null} v */
export function set_from_async_derived(v) { export function set_from_async_derived(v) {
from_async_derived = v; current_async_effect = v;
} }
export const recent_async_deriveds = new Set(); export const recent_async_deriveds = new Set();
@ -115,7 +115,7 @@ export function async_derived(fn, location) {
var should_suspend = !active_reaction; var should_suspend = !active_reaction;
render_effect(() => { render_effect(() => {
if (DEV) from_async_derived = active_effect; if (DEV) current_async_effect = active_effect;
try { try {
var p = fn(); var p = fn();
@ -123,7 +123,7 @@ export function async_derived(fn, location) {
p = Promise.reject(error); p = Promise.reject(error);
} }
if (DEV) from_async_derived = null; if (DEV) current_async_effect = null;
promise = promise =
prev === null prev === null
@ -150,7 +150,7 @@ export function async_derived(fn, location) {
const handler = (value, error = undefined) => { const handler = (value, error = undefined) => {
prev = null; prev = null;
from_async_derived = null; current_async_effect = null;
if (!pending) batch.restore(); if (!pending) batch.restore();

@ -33,7 +33,7 @@ import { internal_set, old_values } from './reactivity/sources.js';
import { import {
destroy_derived_effects, destroy_derived_effects,
execute_derived, execute_derived,
from_async_derived, current_async_effect,
recent_async_deriveds, recent_async_deriveds,
update_derived update_derived
} from './reactivity/deriveds.js'; } from './reactivity/deriveds.js';
@ -869,9 +869,10 @@ export function get(signal) {
} }
if (DEV) { if (DEV) {
if (from_async_derived) { if (current_async_effect) {
var tracking = (from_async_derived.f & REACTION_IS_UPDATING) !== 0; var tracking = (current_async_effect.f & REACTION_IS_UPDATING) !== 0;
var was_read = from_async_derived.deps !== null && from_async_derived.deps.includes(signal); var was_read =
current_async_effect.deps !== null && current_async_effect.deps.includes(signal);
if (!tracking && !was_read) { if (!tracking && !was_read) {
w.await_reactivity_loss(/** @type {string} */ (signal.label)); w.await_reactivity_loss(/** @type {string} */ (signal.label));

Loading…
Cancel
Save