@graphrefly/graphrefly 0.12.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/{chunk-NULSP7U4.js → chunk-2ZICUAUJ.js} +4 -4
- package/dist/{chunk-BRPCN2HJ.js → chunk-4APC3AFN.js} +3 -3
- package/dist/{chunk-VQWLA6XQ.js → chunk-CRACCCJY.js} +3 -3
- package/dist/{chunk-JYRHO63K.js → chunk-GKRKDYNT.js} +17 -17
- package/dist/chunk-GKRKDYNT.js.map +1 -0
- package/dist/{chunk-4F2ZFD5L.js → chunk-H243FWYP.js} +50 -51
- package/dist/chunk-H243FWYP.js.map +1 -0
- package/dist/{chunk-X732W3QA.js → chunk-QVYZD65U.js} +2 -2
- package/dist/{chunk-6OLNYOGU.js → chunk-XQ4UMAU7.js} +2 -2
- package/dist/{chunk-XWMTVV2D.js → chunk-YW6LFCFS.js} +5 -5
- package/dist/{chunk-IXTW3BIO.js → chunk-ZHTHUX5D.js} +3 -3
- package/dist/compat/nestjs/index.cjs +48 -49
- package/dist/compat/nestjs/index.cjs.map +1 -1
- package/dist/compat/nestjs/index.d.cts +4 -4
- package/dist/compat/nestjs/index.d.ts +4 -4
- package/dist/compat/nestjs/index.js +7 -7
- package/dist/core/index.cjs +50 -51
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.cts +2 -2
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.js +5 -5
- package/dist/extra/index.cjs +48 -49
- package/dist/extra/index.cjs.map +1 -1
- package/dist/extra/index.d.cts +4 -4
- package/dist/extra/index.d.ts +4 -4
- package/dist/extra/index.js +3 -3
- package/dist/graph/index.cjs +40 -37
- package/dist/graph/index.cjs.map +1 -1
- package/dist/graph/index.d.cts +3 -3
- package/dist/graph/index.d.ts +3 -3
- package/dist/graph/index.js +4 -4
- package/dist/{graph-DXT95WZ3.d.ts → graph-BXIK5Dq5.d.ts} +1 -1
- package/dist/{graph-BE10ujU9.d.cts → graph-BhADtuFU.d.cts} +1 -1
- package/dist/{index-QfbXNW1N.d.cts → index-BNB0KjKe.d.ts} +24 -21
- package/dist/{index-C0_7g9sj.d.ts → index-BkToATim.d.ts} +1 -1
- package/dist/{index-CiAqgfFg.d.ts → index-CKyYg4IP.d.ts} +3 -3
- package/dist/{index-CCvzN5GB.d.cts → index-DANO9Gg7.d.cts} +2 -2
- package/dist/{index-CthwPnHQ.d.cts → index-DBhLjWSV.d.cts} +3 -3
- package/dist/{index-Dzdm20sx.d.ts → index-DKIyo4Bq.d.cts} +24 -21
- package/dist/{index-53cDGX7F.d.ts → index-DSp5R3Xq.d.ts} +3 -3
- package/dist/{index-aBZ2RoP0.d.cts → index-Dqemj9q0.d.cts} +3 -3
- package/dist/{index-nRulwTr-.d.cts → index-Wa8jXne6.d.cts} +1 -1
- package/dist/{index-B10Q0sQB.d.ts → index-fYObbpUw.d.ts} +2 -2
- package/dist/index.cjs +443 -68
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +369 -66
- package/dist/index.d.ts +369 -66
- package/dist/index.js +397 -22
- package/dist/index.js.map +1 -1
- package/dist/{meta-BcuDhtwu.d.cts → meta-CrZUQAJ6.d.cts} +1 -1
- package/dist/{meta-BcuDhtwu.d.ts → meta-CrZUQAJ6.d.ts} +1 -1
- package/dist/patterns/reactive-layout/index.cjs +53 -50
- package/dist/patterns/reactive-layout/index.cjs.map +1 -1
- package/dist/patterns/reactive-layout/index.d.cts +3 -3
- package/dist/patterns/reactive-layout/index.d.ts +3 -3
- package/dist/patterns/reactive-layout/index.js +4 -4
- package/dist/{reactive-log-OULQssZg.d.cts → reactive-log-ChbpUrY2.d.cts} +2 -2
- package/dist/{reactive-log-Cu0VdqkT.d.ts → reactive-log-DV--7BWd.d.ts} +2 -2
- package/package.json +3 -1
- package/dist/chunk-4F2ZFD5L.js.map +0 -1
- package/dist/chunk-JYRHO63K.js.map +0 -1
- /package/dist/{chunk-NULSP7U4.js.map → chunk-2ZICUAUJ.js.map} +0 -0
- /package/dist/{chunk-BRPCN2HJ.js.map → chunk-4APC3AFN.js.map} +0 -0
- /package/dist/{chunk-VQWLA6XQ.js.map → chunk-CRACCCJY.js.map} +0 -0
- /package/dist/{chunk-X732W3QA.js.map → chunk-QVYZD65U.js.map} +0 -0
- /package/dist/{chunk-6OLNYOGU.js.map → chunk-XQ4UMAU7.js.map} +0 -0
- /package/dist/{chunk-XWMTVV2D.js.map → chunk-YW6LFCFS.js.map} +0 -0
- /package/dist/{chunk-IXTW3BIO.js.map → chunk-ZHTHUX5D.js.map} +0 -0
package/dist/core/index.d.cts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { A as Actor, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, m as Messages, N as Node, b as NodeActions, n as NodeDescribeKind, c as NodeFn, o as NodeGuard, a as NodeOptions, p as NodeSink, q as NodeStatus, r as NodeTransportOptions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, S as SubscribeHints, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from '../meta-
|
|
2
|
-
export { B as BridgeOptions, D as DEFAULT_DOWN, a as
|
|
1
|
+
export { A as Actor, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, m as Messages, N as Node, b as NodeActions, n as NodeDescribeKind, c as NodeFn, o as NodeGuard, a as NodeOptions, p as NodeSink, q as NodeStatus, r as NodeTransportOptions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, S as SubscribeHints, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from '../meta-CrZUQAJ6.cjs';
|
|
2
|
+
export { B as BridgeOptions, D as DEFAULT_DOWN, a as DownStrategy, b as DynGet, c as DynamicNodeFn, d as DynamicNodeImpl, e as DynamicNodeOptions, P as PipeOperator, R as ResettableTimer, f as batch, g as bridge, h as derived, j as downWithBatch, k as dynamicNode, l as effect, m as isBatching, n as monotonicNs, p as partitionForBatch, o as pipe, q as producer, s as state, w as wallClockNs } from '../index-DKIyo4Bq.cjs';
|
package/dist/core/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { A as Actor, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, m as Messages, N as Node, b as NodeActions, n as NodeDescribeKind, c as NodeFn, o as NodeGuard, a as NodeOptions, p as NodeSink, q as NodeStatus, r as NodeTransportOptions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, S as SubscribeHints, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from '../meta-
|
|
2
|
-
export { B as BridgeOptions, D as DEFAULT_DOWN, a as
|
|
1
|
+
export { A as Actor, C as CLEANUP_RESULT, d as COMPLETE, e as CleanupResult, D as DATA, f as DEFAULT_ACTOR, g as DIRTY, h as DescribeDetail, i as DescribeField, j as DescribeNodeOutput, E as ERROR, G as GuardAction, k as GuardDenied, l as GuardDeniedDetails, H as HashFn, I as INVALIDATE, M as Message, m as Messages, N as Node, b as NodeActions, n as NodeDescribeKind, c as NodeFn, o as NodeGuard, a as NodeOptions, p as NodeSink, q as NodeStatus, r as NodeTransportOptions, s as NodeVersionInfo, O as OnMessageHandler, P as PAUSE, t as PolicyAllow, u as PolicyDeny, v as PolicyRuleData, R as RESOLVED, w as RESUME, S as SubscribeHints, T as TEARDOWN, V as V0, x as V1, y as VersioningLevel, z as VersioningOptions, B as accessHintForGuard, F as advanceVersion, J as cleanupResult, K as createVersioning, L as defaultHash, Q as describeNode, U as isKnownMessageType, W as isPhase2Message, X as isTerminalMessage, Y as isV1, Z as knownMessageTypes, _ as messageTier, $ as metaSnapshot, a0 as node, a1 as normalizeActor, a2 as policy, a3 as policyFromRules, a4 as propagatesToMeta, a5 as resolveDescribeFields } from '../meta-CrZUQAJ6.js';
|
|
2
|
+
export { B as BridgeOptions, D as DEFAULT_DOWN, a as DownStrategy, b as DynGet, c as DynamicNodeFn, d as DynamicNodeImpl, e as DynamicNodeOptions, P as PipeOperator, R as ResettableTimer, f as batch, g as bridge, h as derived, j as downWithBatch, k as dynamicNode, l as effect, m as isBatching, n as monotonicNs, p as partitionForBatch, o as pipe, q as producer, s as state, w as wallClockNs } from '../index-BNB0KjKe.js';
|
package/dist/core/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DEFAULT_DOWN,
|
|
3
3
|
bridge
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-YW6LFCFS.js";
|
|
5
5
|
import {
|
|
6
6
|
ResettableTimer
|
|
7
7
|
} from "../chunk-WZ2Z2CRV.js";
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
describeNode,
|
|
10
10
|
metaSnapshot,
|
|
11
11
|
resolveDescribeFields
|
|
12
|
-
} from "../chunk-
|
|
12
|
+
} from "../chunk-XQ4UMAU7.js";
|
|
13
13
|
import {
|
|
14
14
|
CLEANUP_RESULT,
|
|
15
15
|
COMPLETE,
|
|
@@ -31,9 +31,9 @@ import {
|
|
|
31
31
|
createVersioning,
|
|
32
32
|
defaultHash,
|
|
33
33
|
derived,
|
|
34
|
+
downWithBatch,
|
|
34
35
|
dynamicNode,
|
|
35
36
|
effect,
|
|
36
|
-
emitWithBatch,
|
|
37
37
|
isBatching,
|
|
38
38
|
isKnownMessageType,
|
|
39
39
|
isPhase2Message,
|
|
@@ -52,7 +52,7 @@ import {
|
|
|
52
52
|
propagatesToMeta,
|
|
53
53
|
state,
|
|
54
54
|
wallClockNs
|
|
55
|
-
} from "../chunk-
|
|
55
|
+
} from "../chunk-H243FWYP.js";
|
|
56
56
|
export {
|
|
57
57
|
CLEANUP_RESULT,
|
|
58
58
|
COMPLETE,
|
|
@@ -78,9 +78,9 @@ export {
|
|
|
78
78
|
defaultHash,
|
|
79
79
|
derived,
|
|
80
80
|
describeNode,
|
|
81
|
+
downWithBatch,
|
|
81
82
|
dynamicNode,
|
|
82
83
|
effect,
|
|
83
|
-
emitWithBatch,
|
|
84
84
|
isBatching,
|
|
85
85
|
isKnownMessageType,
|
|
86
86
|
isPhase2Message,
|
package/dist/extra/index.cjs
CHANGED
|
@@ -267,8 +267,7 @@ function drainPending() {
|
|
|
267
267
|
if (ownsFlush) {
|
|
268
268
|
flushInProgress = true;
|
|
269
269
|
}
|
|
270
|
-
|
|
271
|
-
let hasError = false;
|
|
270
|
+
const errors = [];
|
|
272
271
|
try {
|
|
273
272
|
let iterations = 0;
|
|
274
273
|
while (pendingPhase2.length > 0 || pendingPhase3.length > 0) {
|
|
@@ -286,10 +285,7 @@ function drainPending() {
|
|
|
286
285
|
try {
|
|
287
286
|
run();
|
|
288
287
|
} catch (e) {
|
|
289
|
-
|
|
290
|
-
firstError = e;
|
|
291
|
-
hasError = true;
|
|
292
|
-
}
|
|
288
|
+
errors.push(e);
|
|
293
289
|
}
|
|
294
290
|
}
|
|
295
291
|
}
|
|
@@ -307,10 +303,7 @@ function drainPending() {
|
|
|
307
303
|
try {
|
|
308
304
|
run();
|
|
309
305
|
} catch (e) {
|
|
310
|
-
|
|
311
|
-
firstError = e;
|
|
312
|
-
hasError = true;
|
|
313
|
-
}
|
|
306
|
+
errors.push(e);
|
|
314
307
|
}
|
|
315
308
|
}
|
|
316
309
|
}
|
|
@@ -320,8 +313,11 @@ function drainPending() {
|
|
|
320
313
|
flushInProgress = false;
|
|
321
314
|
}
|
|
322
315
|
}
|
|
323
|
-
if (
|
|
324
|
-
throw
|
|
316
|
+
if (errors.length === 1) {
|
|
317
|
+
throw errors[0];
|
|
318
|
+
}
|
|
319
|
+
if (errors.length > 1) {
|
|
320
|
+
throw new AggregateError(errors, "batch drain: multiple callbacks threw");
|
|
325
321
|
}
|
|
326
322
|
}
|
|
327
323
|
function partitionForBatch(messages) {
|
|
@@ -339,12 +335,12 @@ function partitionForBatch(messages) {
|
|
|
339
335
|
}
|
|
340
336
|
return { immediate, deferred, terminal };
|
|
341
337
|
}
|
|
342
|
-
function
|
|
338
|
+
function downWithBatch(sink, messages, phase = 2, options) {
|
|
343
339
|
if (messages.length === 0) {
|
|
344
340
|
return;
|
|
345
341
|
}
|
|
346
342
|
if (options?.strategy === "sequential") {
|
|
347
|
-
|
|
343
|
+
_downSequential(sink, messages, phase);
|
|
348
344
|
return;
|
|
349
345
|
}
|
|
350
346
|
const queue = phase === 3 ? pendingPhase3 : pendingPhase2;
|
|
@@ -352,61 +348,61 @@ function emitWithBatch(emit, messages, phase = 2, options) {
|
|
|
352
348
|
const t = messages[0][0];
|
|
353
349
|
if (t === DATA || t === RESOLVED) {
|
|
354
350
|
if (isBatching()) {
|
|
355
|
-
queue.push(() =>
|
|
351
|
+
queue.push(() => sink(messages));
|
|
356
352
|
} else {
|
|
357
|
-
|
|
353
|
+
sink(messages);
|
|
358
354
|
}
|
|
359
355
|
} else if (isTerminalMessage(t)) {
|
|
360
356
|
if (isBatching()) {
|
|
361
|
-
queue.push(() =>
|
|
357
|
+
queue.push(() => sink(messages));
|
|
362
358
|
} else {
|
|
363
|
-
|
|
359
|
+
sink(messages);
|
|
364
360
|
}
|
|
365
361
|
} else {
|
|
366
|
-
|
|
362
|
+
sink(messages);
|
|
367
363
|
}
|
|
368
364
|
return;
|
|
369
365
|
}
|
|
370
366
|
const { immediate, deferred, terminal } = partitionForBatch(messages);
|
|
371
367
|
if (immediate.length > 0) {
|
|
372
|
-
|
|
368
|
+
sink(immediate);
|
|
373
369
|
}
|
|
374
370
|
if (isBatching()) {
|
|
375
371
|
if (deferred.length > 0) {
|
|
376
|
-
queue.push(() =>
|
|
372
|
+
queue.push(() => sink(deferred));
|
|
377
373
|
}
|
|
378
374
|
if (terminal.length > 0) {
|
|
379
|
-
queue.push(() =>
|
|
375
|
+
queue.push(() => sink(terminal));
|
|
380
376
|
}
|
|
381
377
|
} else {
|
|
382
378
|
if (deferred.length > 0) {
|
|
383
|
-
|
|
379
|
+
sink(deferred);
|
|
384
380
|
}
|
|
385
381
|
if (terminal.length > 0) {
|
|
386
|
-
|
|
382
|
+
sink(terminal);
|
|
387
383
|
}
|
|
388
384
|
}
|
|
389
385
|
}
|
|
390
|
-
function
|
|
386
|
+
function _downSequential(sink, messages, phase = 2) {
|
|
391
387
|
const dataQueue = phase === 3 ? pendingPhase3 : pendingPhase2;
|
|
392
388
|
for (const msg of messages) {
|
|
393
389
|
const tier = messageTier(msg[0]);
|
|
394
390
|
if (tier === 2) {
|
|
395
391
|
if (isBatching()) {
|
|
396
392
|
const m = msg;
|
|
397
|
-
dataQueue.push(() =>
|
|
393
|
+
dataQueue.push(() => sink([m]));
|
|
398
394
|
} else {
|
|
399
|
-
|
|
395
|
+
sink([msg]);
|
|
400
396
|
}
|
|
401
397
|
} else if (tier >= 3) {
|
|
402
398
|
if (isBatching()) {
|
|
403
399
|
const m = msg;
|
|
404
|
-
pendingPhase3.push(() =>
|
|
400
|
+
pendingPhase3.push(() => sink([m]));
|
|
405
401
|
} else {
|
|
406
|
-
|
|
402
|
+
sink([msg]);
|
|
407
403
|
}
|
|
408
404
|
} else {
|
|
409
|
-
|
|
405
|
+
sink([msg]);
|
|
410
406
|
}
|
|
411
407
|
}
|
|
412
408
|
}
|
|
@@ -624,7 +620,7 @@ var NodeImpl = class {
|
|
|
624
620
|
_singleDepSinks = /* @__PURE__ */ new WeakSet();
|
|
625
621
|
_upstreamUnsubs = [];
|
|
626
622
|
_actions;
|
|
627
|
-
|
|
623
|
+
_boundDownToSinks;
|
|
628
624
|
_inspectorHook;
|
|
629
625
|
_versioning;
|
|
630
626
|
_hashFn;
|
|
@@ -671,7 +667,7 @@ var NodeImpl = class {
|
|
|
671
667
|
},
|
|
672
668
|
emit(value) {
|
|
673
669
|
self._manualEmitUsed = true;
|
|
674
|
-
self.
|
|
670
|
+
self._downAutoValue(value);
|
|
675
671
|
},
|
|
676
672
|
up(messages) {
|
|
677
673
|
self._upInternal(messages);
|
|
@@ -679,7 +675,7 @@ var NodeImpl = class {
|
|
|
679
675
|
};
|
|
680
676
|
this.down = this.down.bind(this);
|
|
681
677
|
this.up = this.up.bind(this);
|
|
682
|
-
this.
|
|
678
|
+
this._boundDownToSinks = this._downToSinks.bind(this);
|
|
683
679
|
}
|
|
684
680
|
get name() {
|
|
685
681
|
return this._registryName ?? this._optsName;
|
|
@@ -785,12 +781,12 @@ var NodeImpl = class {
|
|
|
785
781
|
if (sinkMessages[i][0] !== DIRTY) filtered.push(sinkMessages[i]);
|
|
786
782
|
}
|
|
787
783
|
if (filtered.length > 0) {
|
|
788
|
-
|
|
784
|
+
downWithBatch(this._boundDownToSinks, filtered);
|
|
789
785
|
}
|
|
790
786
|
return;
|
|
791
787
|
}
|
|
792
788
|
}
|
|
793
|
-
|
|
789
|
+
downWithBatch(this._boundDownToSinks, sinkMessages);
|
|
794
790
|
}
|
|
795
791
|
subscribe(sink, hints) {
|
|
796
792
|
if (hints?.actor != null && this._guard != null) {
|
|
@@ -877,7 +873,7 @@ var NodeImpl = class {
|
|
|
877
873
|
this._disconnectUpstream();
|
|
878
874
|
}
|
|
879
875
|
// --- Private methods (prototype, _ prefix) ---
|
|
880
|
-
|
|
876
|
+
_downToSinks(messages) {
|
|
881
877
|
if (this._sinks == null) return;
|
|
882
878
|
if (typeof this._sinks === "function") {
|
|
883
879
|
this._sinks(messages);
|
|
@@ -892,6 +888,9 @@ var NodeImpl = class {
|
|
|
892
888
|
for (const m of messages) {
|
|
893
889
|
const t = m[0];
|
|
894
890
|
if (t === DATA) {
|
|
891
|
+
if (m.length < 2) {
|
|
892
|
+
continue;
|
|
893
|
+
}
|
|
895
894
|
this._cached = m[1];
|
|
896
895
|
if (this._versioning != null) {
|
|
897
896
|
advanceVersion(this._versioning, m[1], this._hashFn);
|
|
@@ -939,7 +938,7 @@ var NodeImpl = class {
|
|
|
939
938
|
_canSkipDirty() {
|
|
940
939
|
return this._sinkCount === 1 && this._singleDepSinkCount === 1;
|
|
941
940
|
}
|
|
942
|
-
|
|
941
|
+
_downAutoValue(value) {
|
|
943
942
|
const wasDirty = this._status === "dirty";
|
|
944
943
|
let unchanged;
|
|
945
944
|
try {
|
|
@@ -992,7 +991,7 @@ var NodeImpl = class {
|
|
|
992
991
|
this._cleanup = out.cleanup;
|
|
993
992
|
if (this._manualEmitUsed) return;
|
|
994
993
|
if ("value" in out) {
|
|
995
|
-
this.
|
|
994
|
+
this._downAutoValue(out.value);
|
|
996
995
|
}
|
|
997
996
|
return;
|
|
998
997
|
}
|
|
@@ -1002,7 +1001,7 @@ var NodeImpl = class {
|
|
|
1002
1001
|
}
|
|
1003
1002
|
if (this._manualEmitUsed) return;
|
|
1004
1003
|
if (out === void 0) return;
|
|
1005
|
-
this.
|
|
1004
|
+
this._downAutoValue(out);
|
|
1006
1005
|
} catch (err) {
|
|
1007
1006
|
const errMsg = err instanceof Error ? err.message : String(err);
|
|
1008
1007
|
const wrapped = new Error(`Node "${this.name}": fn threw: ${errMsg}`, { cause: err });
|
|
@@ -5151,7 +5150,7 @@ var DynamicNodeImpl = class {
|
|
|
5151
5150
|
_singleDepSinks = /* @__PURE__ */ new WeakSet();
|
|
5152
5151
|
// Actions object (for onMessage handler)
|
|
5153
5152
|
_actions;
|
|
5154
|
-
|
|
5153
|
+
_boundDownToSinks;
|
|
5155
5154
|
// Mutable state
|
|
5156
5155
|
_cached = NO_VALUE;
|
|
5157
5156
|
_status = "disconnected";
|
|
@@ -5198,7 +5197,7 @@ var DynamicNodeImpl = class {
|
|
|
5198
5197
|
self._downInternal(messages);
|
|
5199
5198
|
},
|
|
5200
5199
|
emit(value) {
|
|
5201
|
-
self.
|
|
5200
|
+
self._downAutoValue(value);
|
|
5202
5201
|
},
|
|
5203
5202
|
up(messages) {
|
|
5204
5203
|
for (const dep of self._deps) {
|
|
@@ -5206,7 +5205,7 @@ var DynamicNodeImpl = class {
|
|
|
5206
5205
|
}
|
|
5207
5206
|
}
|
|
5208
5207
|
};
|
|
5209
|
-
this.
|
|
5208
|
+
this._boundDownToSinks = this._downToSinks.bind(this);
|
|
5210
5209
|
}
|
|
5211
5210
|
get name() {
|
|
5212
5211
|
return this._registryName ?? this._optsName;
|
|
@@ -5286,12 +5285,12 @@ var DynamicNodeImpl = class {
|
|
|
5286
5285
|
if (sinkMessages[i][0] !== DIRTY) filtered.push(sinkMessages[i]);
|
|
5287
5286
|
}
|
|
5288
5287
|
if (filtered.length > 0) {
|
|
5289
|
-
|
|
5288
|
+
downWithBatch(this._boundDownToSinks, filtered);
|
|
5290
5289
|
}
|
|
5291
5290
|
return;
|
|
5292
5291
|
}
|
|
5293
5292
|
}
|
|
5294
|
-
|
|
5293
|
+
downWithBatch(this._boundDownToSinks, sinkMessages);
|
|
5295
5294
|
}
|
|
5296
5295
|
_canSkipDirty() {
|
|
5297
5296
|
return this._sinkCount === 1 && this._singleDepSinkCount === 1;
|
|
@@ -5367,7 +5366,7 @@ var DynamicNodeImpl = class {
|
|
|
5367
5366
|
this._disconnect();
|
|
5368
5367
|
}
|
|
5369
5368
|
// --- Private methods ---
|
|
5370
|
-
|
|
5369
|
+
_downToSinks(messages) {
|
|
5371
5370
|
if (this._sinks == null) return;
|
|
5372
5371
|
if (typeof this._sinks === "function") {
|
|
5373
5372
|
this._sinks(messages);
|
|
@@ -5421,7 +5420,7 @@ var DynamicNodeImpl = class {
|
|
|
5421
5420
|
}
|
|
5422
5421
|
}
|
|
5423
5422
|
}
|
|
5424
|
-
|
|
5423
|
+
_downAutoValue(value) {
|
|
5425
5424
|
const wasDirty = this._status === "dirty";
|
|
5426
5425
|
let unchanged;
|
|
5427
5426
|
try {
|
|
@@ -5481,7 +5480,7 @@ var DynamicNodeImpl = class {
|
|
|
5481
5480
|
const result = this._fn(get);
|
|
5482
5481
|
this._rewire(trackedDeps);
|
|
5483
5482
|
if (result === void 0) return;
|
|
5484
|
-
this.
|
|
5483
|
+
this._downAutoValue(result);
|
|
5485
5484
|
} catch (err) {
|
|
5486
5485
|
this._downInternal([[ERROR, err]]);
|
|
5487
5486
|
}
|
|
@@ -5545,14 +5544,14 @@ var DynamicNodeImpl = class {
|
|
|
5545
5544
|
this._dirtyBits.add(index);
|
|
5546
5545
|
this._settledBits.delete(index);
|
|
5547
5546
|
if (this._dirtyBits.size === 1) {
|
|
5548
|
-
|
|
5547
|
+
downWithBatch(this._boundDownToSinks, [[DIRTY]]);
|
|
5549
5548
|
}
|
|
5550
5549
|
continue;
|
|
5551
5550
|
}
|
|
5552
5551
|
if (t === DATA || t === RESOLVED) {
|
|
5553
5552
|
if (!this._dirtyBits.has(index)) {
|
|
5554
5553
|
this._dirtyBits.add(index);
|
|
5555
|
-
|
|
5554
|
+
downWithBatch(this._boundDownToSinks, [[DIRTY]]);
|
|
5556
5555
|
}
|
|
5557
5556
|
this._settledBits.add(index);
|
|
5558
5557
|
if (this._allDirtySettled()) {
|