@bananapus/nana-sdk-core 2.41.0 → 2.41.2
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/dist/cjs/review/heldWrite.d.ts +8 -5
- package/dist/cjs/review/heldWrite.d.ts.map +1 -1
- package/dist/cjs/review/heldWrite.js +64 -19
- package/dist/cjs/review/heldWrite.js.map +1 -1
- package/dist/cjs/review/tabState.d.ts +2 -0
- package/dist/cjs/review/tabState.d.ts.map +1 -1
- package/dist/cjs/review/tabState.js +2 -0
- package/dist/cjs/review/tabState.js.map +1 -1
- package/dist/cjs/review/writeHold.d.ts.map +1 -1
- package/dist/cjs/review/writeHold.js +10 -3
- package/dist/cjs/review/writeHold.js.map +1 -1
- package/dist/cjs/review/writeRecovery.d.ts.map +1 -1
- package/dist/cjs/review/writeRecovery.js +2 -0
- package/dist/cjs/review/writeRecovery.js.map +1 -1
- package/dist/esm/review/heldWrite.d.ts +8 -5
- package/dist/esm/review/heldWrite.d.ts.map +1 -1
- package/dist/esm/review/heldWrite.js +65 -20
- package/dist/esm/review/heldWrite.js.map +1 -1
- package/dist/esm/review/tabState.d.ts +2 -0
- package/dist/esm/review/tabState.d.ts.map +1 -1
- package/dist/esm/review/tabState.js +2 -0
- package/dist/esm/review/tabState.js.map +1 -1
- package/dist/esm/review/writeHold.d.ts.map +1 -1
- package/dist/esm/review/writeHold.js +10 -3
- package/dist/esm/review/writeHold.js.map +1 -1
- package/dist/esm/review/writeRecovery.d.ts.map +1 -1
- package/dist/esm/review/writeRecovery.js +2 -0
- package/dist/esm/review/writeRecovery.js.map +1 -1
- package/package.json +1 -1
|
@@ -47,10 +47,12 @@ export declare const HELD_POLL_MS = 30000;
|
|
|
47
47
|
* (an authenticated settlement or an exit) or `signal` aborts: never on its
|
|
48
48
|
* own reading of a receipt, a replacement or an expiry. The hold decides.
|
|
49
49
|
*/
|
|
50
|
-
export declare function followHeldWrite(handle: WriteHoldHandle, client: WriteHoldClient, { signal, pollMs, fastMs, }: {
|
|
50
|
+
export declare function followHeldWrite(handle: WriteHoldHandle, client: WriteHoldClient, { signal, pollMs, fastMs, onRead, }: {
|
|
51
51
|
signal: AbortSignal;
|
|
52
52
|
pollMs?: number;
|
|
53
53
|
fastMs?: number;
|
|
54
|
+
/** Each read of the hold as it starts, while it holds the call's lock. */
|
|
55
|
+
onRead?: (read: Promise<unknown>) => void;
|
|
54
56
|
}): Promise<WriteHoldState | null>;
|
|
55
57
|
/**
|
|
56
58
|
* Whether `next` would hide an exit `shown` offers without the chain having
|
|
@@ -62,10 +64,11 @@ export declare function hidesShownExit(shown: WriteHoldState | null | undefined,
|
|
|
62
64
|
export declare function settledLine(settled: WriteHoldSettled): string;
|
|
63
65
|
/**
|
|
64
66
|
* One held write's view, framework-free: its phase and line, the watch
|
|
65
|
-
* (the hold's own events, and a checked read on start,
|
|
66
|
-
* poll while held), a shared follower for its hash, its
|
|
67
|
-
* the adoption of a previous deploy's record. Every app
|
|
68
|
-
* (useHeldWrite in React), so the same action behaves the
|
|
67
|
+
* (the hold's own events, and a checked read on start, after each send, on
|
|
68
|
+
* focus and every poll while held), a shared follower for its hash, its
|
|
69
|
+
* exit, its send and the adoption of a previous deploy's record. Every app
|
|
70
|
+
* binds the same one (useHeldWrite in React), so the same action behaves the
|
|
71
|
+
* same everywhere.
|
|
69
72
|
*
|
|
70
73
|
* - A read the chain didn't check never hides an exit already shown.
|
|
71
74
|
* - Once confirming, a write never goes back to awaiting.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heldWrite.d.ts","sourceRoot":"","sources":["../../../src/review/heldWrite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"heldWrite.d.ts","sourceRoot":"","sources":["../../../src/review/heldWrite.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,7 +37,7 @@ function pause(ms, signal) {
|
|
|
37
37
|
* (an authenticated settlement or an exit) or `signal` aborts: never on its
|
|
38
38
|
* own reading of a receipt, a replacement or an expiry. The hold decides.
|
|
39
39
|
*/
|
|
40
|
-
async function followHeldWrite(handle, client, { signal, pollMs, fastMs = FAST_MS, }) {
|
|
40
|
+
async function followHeldWrite(handle, client, { signal, pollMs, fastMs = FAST_MS, onRead, }) {
|
|
41
41
|
const now = handle.peek();
|
|
42
42
|
if (now.status !== "clear" &&
|
|
43
43
|
now.record.safe &&
|
|
@@ -53,7 +53,9 @@ async function followHeldWrite(handle, client, { signal, pollMs, fastMs = FAST_M
|
|
|
53
53
|
.catch(() => null);
|
|
54
54
|
}
|
|
55
55
|
for (let look = 0; !signal.aborted; look += 1) {
|
|
56
|
-
const
|
|
56
|
+
const read = handle.state(client).catch(() => null);
|
|
57
|
+
onRead?.(read);
|
|
58
|
+
const state = await read;
|
|
57
59
|
if (state?.status === "clear")
|
|
58
60
|
return state;
|
|
59
61
|
await pause(look < FAST_LOOKS ? fastMs : pollOf(pollMs), signal);
|
|
@@ -69,20 +71,26 @@ function followShared(reservation, handle, client, pollMs) {
|
|
|
69
71
|
// A follower stopped by its last view, still ending, is never rejoined.
|
|
70
72
|
if (!shared || shared.stop.signal.aborted) {
|
|
71
73
|
const stop = new AbortController();
|
|
74
|
+
const reads = new Set();
|
|
72
75
|
const ended = followHeldWrite(handle, client, {
|
|
73
76
|
signal: stop.signal,
|
|
74
77
|
pollMs,
|
|
78
|
+
onRead(read) {
|
|
79
|
+
reads.add(read);
|
|
80
|
+
void read.finally(() => reads.delete(read));
|
|
81
|
+
},
|
|
75
82
|
}).finally(() => {
|
|
76
83
|
if (followers.get(reservation)?.stop === stop)
|
|
77
84
|
followers.delete(reservation);
|
|
78
85
|
});
|
|
79
|
-
shared = { views: 0, stop, ended };
|
|
86
|
+
shared = { views: 0, stop, ended, reads };
|
|
80
87
|
followers.set(reservation, shared);
|
|
81
88
|
}
|
|
82
89
|
shared.views += 1;
|
|
83
90
|
const joined = shared;
|
|
84
91
|
return {
|
|
85
92
|
ended: joined.ended,
|
|
93
|
+
reads: joined.reads,
|
|
86
94
|
leave() {
|
|
87
95
|
joined.views -= 1;
|
|
88
96
|
if (joined.views === 0)
|
|
@@ -113,10 +121,11 @@ function settledLine(settled) {
|
|
|
113
121
|
}
|
|
114
122
|
/**
|
|
115
123
|
* One held write's view, framework-free: its phase and line, the watch
|
|
116
|
-
* (the hold's own events, and a checked read on start,
|
|
117
|
-
* poll while held), a shared follower for its hash, its
|
|
118
|
-
* the adoption of a previous deploy's record. Every app
|
|
119
|
-
* (useHeldWrite in React), so the same action behaves the
|
|
124
|
+
* (the hold's own events, and a checked read on start, after each send, on
|
|
125
|
+
* focus and every poll while held), a shared follower for its hash, its
|
|
126
|
+
* exit, its send and the adoption of a previous deploy's record. Every app
|
|
127
|
+
* binds the same one (useHeldWrite in React), so the same action behaves the
|
|
128
|
+
* same everywhere.
|
|
120
129
|
*
|
|
121
130
|
* - A read the chain didn't check never hides an exit already shown.
|
|
122
131
|
* - Once confirming, a write never goes back to awaiting.
|
|
@@ -138,6 +147,8 @@ function createHeldWriteView(handle, options) {
|
|
|
138
147
|
let observed;
|
|
139
148
|
let wasHeld = false;
|
|
140
149
|
let exitedHere;
|
|
150
|
+
/** The reservation this view's own send withdrew before the wallet: never another window's release. */
|
|
151
|
+
let withdrawn;
|
|
141
152
|
/**
|
|
142
153
|
* The user's exit asking the hold, shared by every concurrent call: a
|
|
143
154
|
* release seen meanwhile waits for its answer.
|
|
@@ -168,7 +179,7 @@ function createHeldWriteView(handle, options) {
|
|
|
168
179
|
return;
|
|
169
180
|
stopFollowing();
|
|
170
181
|
const shared = followShared(reservation, handle, client, options.pollMs);
|
|
171
|
-
const mine = { reservation, leave: shared.leave };
|
|
182
|
+
const mine = { reservation, leave: shared.leave, reads: shared.reads };
|
|
172
183
|
following = mine;
|
|
173
184
|
const at = epoch;
|
|
174
185
|
void shared.ended.then((end) => {
|
|
@@ -183,7 +194,9 @@ function createHeldWriteView(handle, options) {
|
|
|
183
194
|
/**
|
|
184
195
|
* Tell the app of a settlement it saw held, once, while live. Only once its
|
|
185
196
|
* callback ran is it done, and a success acknowledged: a lifecycle change
|
|
186
|
-
* before then leaves it to the next start.
|
|
197
|
+
* before then leaves it to the next start. A view without `onSettled` (a
|
|
198
|
+
* watcher) tells no one, so it never acknowledges a success: the gate
|
|
199
|
+
* keeps it, shown as `succeeded`, until the user acts.
|
|
187
200
|
*/
|
|
188
201
|
function deliver(settled, key) {
|
|
189
202
|
undelivered.set(key, settled);
|
|
@@ -195,7 +208,8 @@ function createHeldWriteView(handle, options) {
|
|
|
195
208
|
return;
|
|
196
209
|
delivered.add(key);
|
|
197
210
|
undelivered.delete(key);
|
|
198
|
-
|
|
211
|
+
const shown = !!options.onSettled;
|
|
212
|
+
if (shown && "hash" in settled)
|
|
199
213
|
told.add(settled.hash.toLowerCase());
|
|
200
214
|
// A send under way never saw it: it blocks that send, acknowledged or not.
|
|
201
215
|
if (settled.result === "success")
|
|
@@ -204,7 +218,8 @@ function createHeldWriteView(handle, options) {
|
|
|
204
218
|
options.onSettled?.(settled, receipt);
|
|
205
219
|
present();
|
|
206
220
|
// Told: the hold marks it acknowledged, so no later visit asks again.
|
|
207
|
-
if (
|
|
221
|
+
if (shown &&
|
|
222
|
+
"hash" in settled &&
|
|
208
223
|
settled.result === "success" &&
|
|
209
224
|
!settled.acknowledged)
|
|
210
225
|
void handle.acknowledge(settled).catch(() => null);
|
|
@@ -255,9 +270,11 @@ function createHeldWriteView(handle, options) {
|
|
|
255
270
|
phase: "awaiting",
|
|
256
271
|
line: safeService_js_1.SAFE_PROPOSAL_AWAITING,
|
|
257
272
|
};
|
|
258
|
-
// A direct write: confirming,
|
|
273
|
+
// A direct write: confirming, pending or mined with its result unread,
|
|
274
|
+
// until it has waited a while.
|
|
259
275
|
const since = Number(record.submittedAt ?? record.firstSeenAt);
|
|
260
|
-
const line = next.line === messages_js_1.WRITE_HOLD_PENDING_LINE
|
|
276
|
+
const line = (next.line === messages_js_1.WRITE_HOLD_PENDING_LINE ||
|
|
277
|
+
next.line === messages_js_1.WRITE_HOLD_MINED_LINE) &&
|
|
261
278
|
!(Date.now() - since >= CONFIRMING_MS)
|
|
262
279
|
? messages_js_1.HELD_CONFIRMING_LINE
|
|
263
280
|
: next.line;
|
|
@@ -290,7 +307,7 @@ function createHeldWriteView(handle, options) {
|
|
|
290
307
|
releasedBy: undefined,
|
|
291
308
|
});
|
|
292
309
|
}
|
|
293
|
-
else if (mine) {
|
|
310
|
+
else if (mine && withdrawn !== observed) {
|
|
294
311
|
const by = exitedHere === observed ? "user" : "other-tab";
|
|
295
312
|
set({
|
|
296
313
|
phase: "released",
|
|
@@ -322,6 +339,7 @@ function createHeldWriteView(handle, options) {
|
|
|
322
339
|
wasHeld = false;
|
|
323
340
|
observed = undefined;
|
|
324
341
|
exitedHere = undefined;
|
|
342
|
+
withdrawn = undefined;
|
|
325
343
|
collect();
|
|
326
344
|
present();
|
|
327
345
|
return;
|
|
@@ -330,6 +348,7 @@ function createHeldWriteView(handle, options) {
|
|
|
330
348
|
if (observed !== reservation) {
|
|
331
349
|
observed = reservation;
|
|
332
350
|
exitedHere = undefined;
|
|
351
|
+
withdrawn = undefined;
|
|
333
352
|
}
|
|
334
353
|
wasHeld = true;
|
|
335
354
|
seen.add(reservation);
|
|
@@ -391,11 +410,20 @@ function createHeldWriteView(handle, options) {
|
|
|
391
410
|
releasedBy: undefined,
|
|
392
411
|
});
|
|
393
412
|
}
|
|
413
|
+
/** This view's reads under way: its own send waits for them, never refused as busy. */
|
|
414
|
+
const reading = new Set();
|
|
394
415
|
/** The gated answer, now. */
|
|
395
416
|
async function check() {
|
|
396
417
|
const at = epoch;
|
|
397
|
-
const
|
|
398
|
-
|
|
418
|
+
const before = observed;
|
|
419
|
+
const read = handle.state(client).catch(() => null);
|
|
420
|
+
reading.add(read);
|
|
421
|
+
const next = await read.finally(() => reading.delete(read));
|
|
422
|
+
// A clear read begun before this view saw its reservation says nothing of it.
|
|
423
|
+
const stale = next?.status === "clear" &&
|
|
424
|
+
observed !== before &&
|
|
425
|
+
next.reservation !== observed;
|
|
426
|
+
if (at === epoch && !stale)
|
|
399
427
|
apply(next);
|
|
400
428
|
return view;
|
|
401
429
|
}
|
|
@@ -460,9 +488,12 @@ function createHeldWriteView(handle, options) {
|
|
|
460
488
|
deliver(settled, key);
|
|
461
489
|
const unsubscribe = handle.subscribe(apply);
|
|
462
490
|
// An adoption a stopped lifecycle left unfinished runs again here.
|
|
463
|
-
|
|
491
|
+
// Its first read is this view's from now: a send made at once waits for it.
|
|
492
|
+
const first = adopt()
|
|
464
493
|
.then((done) => (done || !running ? done : adopt()))
|
|
465
494
|
.then(() => (running ? check() : view));
|
|
495
|
+
reading.add(first);
|
|
496
|
+
void first.finally(() => reading.delete(first));
|
|
466
497
|
const timer = setInterval(() => {
|
|
467
498
|
const held = view.phase === "awaiting" ||
|
|
468
499
|
view.phase === "confirming" ||
|
|
@@ -520,14 +551,26 @@ function createHeldWriteView(handle, options) {
|
|
|
520
551
|
try {
|
|
521
552
|
if (!(await adopt()))
|
|
522
553
|
throw new Error("Saved transactions are still being checked. Try again in a moment.");
|
|
554
|
+
// This view's own reads, and its follower's, end first: only another
|
|
555
|
+
// writer's lock refuses the send as busy.
|
|
556
|
+
const own = () => [...reading, ...(following?.reads ?? [])];
|
|
557
|
+
for (let reads = own(); reads.length; reads = own())
|
|
558
|
+
await Promise.all(reads);
|
|
523
559
|
guard();
|
|
524
560
|
// The send's own check may find one too: it says so before the wallet.
|
|
525
|
-
|
|
561
|
+
// Its own listener: unsubscribing it leaves a started view's in place.
|
|
562
|
+
const unsubscribe = handle.subscribe((state) => apply(state));
|
|
526
563
|
try {
|
|
527
564
|
const hash = await handle.send(client, async (gate) => {
|
|
528
565
|
guard();
|
|
566
|
+
// Nothing reached the wallet: the reservation it withdraws is this view's own.
|
|
567
|
+
const withdraw = () => {
|
|
568
|
+
withdrawn = observed;
|
|
569
|
+
gate.onRejected();
|
|
570
|
+
};
|
|
529
571
|
return run({
|
|
530
572
|
...gate,
|
|
573
|
+
onRejected: withdraw,
|
|
531
574
|
// Asked again at the reservation itself, after any lock retries.
|
|
532
575
|
async beforeSend(actualCall) {
|
|
533
576
|
guard();
|
|
@@ -536,7 +579,7 @@ function createHeldWriteView(handle, options) {
|
|
|
536
579
|
guard();
|
|
537
580
|
}
|
|
538
581
|
catch (error) {
|
|
539
|
-
|
|
582
|
+
withdraw();
|
|
540
583
|
throw error;
|
|
541
584
|
}
|
|
542
585
|
},
|
|
@@ -544,6 +587,8 @@ function createHeldWriteView(handle, options) {
|
|
|
544
587
|
});
|
|
545
588
|
unsubscribe();
|
|
546
589
|
apply(handle.peek());
|
|
590
|
+
// The chain asked once more after the send, as a start asks before it.
|
|
591
|
+
void check();
|
|
547
592
|
return hash;
|
|
548
593
|
}
|
|
549
594
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heldWrite.js","sourceRoot":"","sources":["../../../src/review/heldWrite.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"heldWrite.js","sourceRoot":"","sources":["../../../src/review/heldWrite.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,8 @@ export declare const TAB: {
|
|
|
11
11
|
readonly queues: symbol;
|
|
12
12
|
/** What each tab memory last saw in durable storage. */
|
|
13
13
|
readonly seen: symbol;
|
|
14
|
+
/** Every write hold controller's subscribers, by the tab memory their storage shares. */
|
|
15
|
+
readonly listeners: symbol;
|
|
14
16
|
/** The stop of every write hold controller with a follower or listener running. */
|
|
15
17
|
readonly holds: symbol;
|
|
16
18
|
/** The stop of every running Safe Relayr watch. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabState.d.ts","sourceRoot":"","sources":["../../../src/review/tabState.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,GAAG;IACd,2DAA2D;;IAE3D,+CAA+C;;IAE/C,wDAAwD;;IAExD,mFAAmF;;IAEnF,mDAAmD;;IAEnD,mDAAmD;;CAE3C,CAAC;AAEX,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAG1D"}
|
|
1
|
+
{"version":3,"file":"tabState.d.ts","sourceRoot":"","sources":["../../../src/review/tabState.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,GAAG;IACd,2DAA2D;;IAE3D,+CAA+C;;IAE/C,wDAAwD;;IAExD,yFAAyF;;IAEzF,mFAAmF;;IAEnF,mDAAmD;;IAEnD,mDAAmD;;CAE3C,CAAC;AAEX,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,CAG1D"}
|
|
@@ -15,6 +15,8 @@ exports.TAB = {
|
|
|
15
15
|
queues: Symbol.for("nana-sdk:write-lock-queues"),
|
|
16
16
|
/** What each tab memory last saw in durable storage. */
|
|
17
17
|
seen: Symbol.for("nana-sdk:held-writes-seen"),
|
|
18
|
+
/** Every write hold controller's subscribers, by the tab memory their storage shares. */
|
|
19
|
+
listeners: Symbol.for("nana-sdk:write-hold-listeners"),
|
|
18
20
|
/** The stop of every write hold controller with a follower or listener running. */
|
|
19
21
|
holds: Symbol.for("nana-sdk:write-hold-stops"),
|
|
20
22
|
/** The stop of every running Safe Relayr watch. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tabState.js","sourceRoot":"","sources":["../../../src/review/tabState.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"tabState.js","sourceRoot":"","sources":["../../../src/review/tabState.ts"],"names":[],"mappings":";;;AAwBA,8BAGC;AA3BD;;;;;GAKG;AACU,QAAA,GAAG,GAAG;IACjB,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAC1C,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC;IAChD,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC;IAC7C,yFAAyF;IACzF,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC;IACtD,mFAAmF;IACnF,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC;IAC9C,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC;IACnD,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC;CAC3C,CAAC;AAEX,oEAAoE;AACpE,SAAgB,SAAS,CAAI,GAAW,EAAE,IAAa;IACrD,MAAM,GAAG,GAAG,UAAqC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAM,CAAC;AACpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeHold.d.ts","sourceRoot":"","sources":["../../../src/review/writeHold.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,GAAG,EACR,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,MAAM,CAAC;AACd,OAAO,EAOL,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,EAYL,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EACjC,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"writeHold.d.ts","sourceRoot":"","sources":["../../../src/review/writeHold.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,GAAG,EACR,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,MAAM,CAAC;AACd,OAAO,EAOL,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EACxB,MAAM,mBAAmB,CAAC;AAgB3B,OAAO,EAYL,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAC/B,KAAK,2BAA2B,EACjC,MAAM,oBAAoB,CAAC;AA8C5B,wFAAwF;AACxF,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,GAAG,CAAC;IACV,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,0FAA0F;AAC1F,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,YAAY,EACV,UAAU,GACV,gBAAgB,GAChB,YAAY,GACZ,gBAAgB,GAChB,qBAAqB,GACrB,uBAAuB,GACvB,SAAS,CACZ,CAAC;AAEF,wDAAwD;AACxD,MAAM,MAAM,gBAAgB;AAC1B,4FAA4F;AAC1F;IAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAC;IAAC,IAAI,EAAE,GAAG,CAAC;IAAC,YAAY,CAAC,EAAE,IAAI,CAAA;CAAE;AAClE,wDAAwD;GACtD;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,CAAC;AAE1B,KAAK,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,IAAI;IACnC,MAAM,EAAE,CAAC,CAAC;IACV,2EAA2E;IAC3E,MAAM,EAAE,2BAA2B,CAAC;IACpC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,KAAK,CAAC;AAEV;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAM,MAAM,cAAc,GAAG,gBAAgB,GAAG;IAC9C,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,KAAK,gBAAgB,GACjB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAAE,GAC/C,IAAI,CAAC,oBAAoB,EAAE;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,KAAK,CAAA;CAAE,CAAC,GACtD,IAAI,CAAC,cAAc,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,GACvC,IAAI,CACF,gBAAgB,EAChB;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAC3D,GACD,IAAI,CAAC,gBAAgB,EAAE;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GACrE,IAAI,CAAC,eAAe,EAAE;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GACpE,IAAI,CAAC,eAAe,EAAE;IAAE,IAAI,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GACpE,IAAI,CAAC,YAAY,EAAE;IAAE,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GACnE,IAAI,CACF,cAAc,EACd;IAAE,aAAa,CAAC,EAAE,GAAG,CAAC;IAAC,MAAM,CAAC,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,KAAK,CAAA;CAAE,CACxD,CAAC;AAaN,6BAA6B;AAC7B,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,gBAAgB,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,2EAA2E;AAC3E,qBAAa,cAAe,SAAQ,KAAK;IAE3B,QAAQ,CAAC,KAAK,EAAE,cAAc;IAD1C,QAAQ,CAAC,IAAI,oBAAoB;gBACZ,KAAK,EAAE,cAAc;CAG3C;AAED,wEAAwE;AACxE,qBAAa,mBAAoB,SAAQ,KAAK;IAEhC,QAAQ,CAAC,KAAK,EAAE,OAAO;IADnC,QAAQ,CAAC,IAAI,yBAAyB;gBACjB,KAAK,EAAE,OAAO;CAGpC;AAED;;;;GAIG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IAEtC,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB;IAD/C,QAAQ,CAAC,IAAI,+BAA+B;gBACvB,OAAO,CAAC,EAAE,gBAAgB,YAAA;CAGhD;AAED,qEAAqE;AACrE,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,IAAI,wBAAwB;;CAItC;AAED,sFAAsF;AACtF,MAAM,MAAM,aAAa,GAAG;IAC1B;;;;;OAKG;IACH,UAAU,CAAC,UAAU,CAAC,EAAE,0BAA0B,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,wFAAwF;IACxF,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC/D,+FAA+F;IAC/F,UAAU,IAAI,IAAI,CAAC;CACpB,CAAC;AAEF,KAAK,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AA8I1C;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,sFAAsF;IACtF,MAAM,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;iBAwyCE,0BAA0B,gBAG7B;QACD,MAAM,CAAC,EAAE,CACL,MAAM,GACN;YAAE,IAAI,EAAE,0BAA0B,CAAC,MAAM,CAAC,CAAA;SAAE,GAC5C;YAAE,KAAK,EAAE;gBAAE,EAAE,EAAE,OAAO,CAAC;gBAAC,QAAQ,EAAE,GAAG,CAAA;aAAE,CAAA;SAAE,CAC5C,EAAE,CAAC;KACL;;sBA0hBW,eAAe,WACd;YAAE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;SAAE,GAC1D,OAAO,CAAC,cAAc,CAAC;aAGf,CAAC,UACF,eAAe,OAClB,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,GACvC,OAAO,CAAC,CAAC,CAAC;uBAMD,cAAc,mBACP;YAAE,aAAa,EAAE,IAAI,CAAA;SAAE,UAChC,eAAe,GACtB,OAAO,CAAC;YAAE,QAAQ,EAAE,OAAO,CAAC;YAAC,KAAK,EAAE,cAAc,CAAA;SAAE,CAAC;;;;;;;;;wBAvtBjB,GAAG;mBAAS,MAAM;;;oBA3F7C,MAAM,GAAG,MAAM;wBACX,MAAM,GAAG,MAAM;wBACf,MAAM;0BACJ,MAAM;mBACb,GAAG;mBACH;gBAAE,UAAU,EAAE,GAAG,CAAA;aAAE;;uBAGW,SAAS,GAAG,YAAY;;QAhSjE;;;WAGG;4BACiB,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,MAAM,IAAI;QAwYhE;;;WAGG;qCAGM,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,GAC5B,qBAAqB,GAAG,SAAS;QAapC,yEAAyE;kCAC/C,MAAM,GAAG,gBAAgB,GAAG,SAAS;QAM/D;;;;;WAKG;6BACwB;YACzB,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAC;YAC7B,IAAI,EAAE,GAAG,CAAC;SACX,GAAG,OAAO,CAAC,cAAc,CAAC;;iCA2rBK;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;;;;;0BAlD3D,eAAe,WACd;gBAAE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;aAAE,GAC1D,OAAO,CAAC,cAAc,CAAC;iBAGf,CAAC,UACF,eAAe,OAClB,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,GACvC,OAAO,CAAC,CAAC,CAAC;2BAMD,cAAc,mBACP;gBAAE,aAAa,EAAE,IAAI,CAAA;aAAE,UAChC,eAAe,GACtB,OAAO,CAAC;gBAAE,QAAQ,EAAE,OAAO,CAAC;gBAAC,KAAK,EAAE,cAAc,CAAA;aAAE,CAAC;;;;;;;;;4BAvtBjB,GAAG;uBAAS,MAAM;;;wBA3F7C,MAAM,GAAG,MAAM;4BACX,MAAM,GAAG,MAAM;4BACf,MAAM;8BACJ,MAAM;uBACb,GAAG;uBACH;oBAAE,UAAU,EAAE,GAAG,CAAA;iBAAE;;2BAGW,SAAS,GAAG,YAAY;;YAhSjE;;;eAGG;gCACiB,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,MAAM,IAAI;YAwYhE;;;eAGG;yCAGM,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,GAC5B,qBAAqB,GAAG,SAAS;YAapC,yEAAyE;sCAC/C,MAAM,GAAG,gBAAgB,GAAG,SAAS;YAM/D;;;;;eAKG;iCACwB;gBACzB,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAC;gBAC7B,IAAI,EAAE,GAAG,CAAC;aACX,GAAG,OAAO,CAAC,cAAc,CAAC;;;IAgtB7B,gDAAgD;;IAEhD,oEAAoE;;IAEpE,qEAAqE;;EAGxE;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;AAC3D,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC"}
|
|
@@ -20,6 +20,8 @@ function sentIsCall(sent, hash, record) {
|
|
|
20
20
|
}
|
|
21
21
|
/** The stop of every controller with a follower or tab listener running, for the test-only reset. */
|
|
22
22
|
const liveHolds = (0, tabState_js_1.tabShared)(tabState_js_1.TAB.holds, () => new Set());
|
|
23
|
+
/** This tab's subscribers by the tab memory of their storage: a change through any handle reaches them all. */
|
|
24
|
+
const tabListeners = (0, tabState_js_1.tabShared)(tabState_js_1.TAB.listeners, () => new WeakMap());
|
|
23
25
|
/**
|
|
24
26
|
* A state read without the chain (peek, a replay, another tab's change, a
|
|
25
27
|
* send's progress): its status and line, never the exit. Only the gate in
|
|
@@ -225,7 +227,13 @@ function createWriteHold(options = {}) {
|
|
|
225
227
|
};
|
|
226
228
|
const interval = options.settle?.intervalMs ?? SETTLE_POLL_MS;
|
|
227
229
|
const attempts = options.settle?.attempts ?? SETTLE_POLL_ATTEMPTS;
|
|
228
|
-
|
|
230
|
+
// Every controller over this tab's storage shares one registry, so a
|
|
231
|
+
// receipt or settlement on any handle reaches every view at once.
|
|
232
|
+
const scope = storage[tabState_js_1.TAB.memory] ?? storage;
|
|
233
|
+
let shared = tabListeners.get(scope);
|
|
234
|
+
if (!shared)
|
|
235
|
+
tabListeners.set(scope, (shared = { listeners: new Map(), latest: new Map() }));
|
|
236
|
+
const { listeners, latest } = shared;
|
|
229
237
|
const peekers = new Map();
|
|
230
238
|
const timers = new Map();
|
|
231
239
|
let onStorage;
|
|
@@ -240,8 +248,7 @@ function createWriteHold(options = {}) {
|
|
|
240
248
|
? { ...rest, notice: messages_js_1.WRITE_HOLD_IN_TAB_LINE }
|
|
241
249
|
: rest;
|
|
242
250
|
}
|
|
243
|
-
/**
|
|
244
|
-
const latest = new Map();
|
|
251
|
+
/** Tell every subscriber of `key` in this tab; the latest is replayed to a late one. */
|
|
245
252
|
function emit(key, state) {
|
|
246
253
|
latest.set(key, state);
|
|
247
254
|
for (const listener of listeners.get(key) ?? [])
|