@dxos/async 0.8.4-main.5acf9ea → 0.8.4-main.5ad4a44

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.
@@ -1 +1 @@
1
- {"inputs":{"src/callback.ts":{"bytes":1595,"imports":[],"format":"esm"},"src/chain.ts":{"bytes":1619,"imports":[],"format":"esm"},"src/cleanup.ts":{"bytes":6540,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/debounce.ts":{"bytes":4306,"imports":[],"format":"esm"},"src/errors.ts":{"bytes":2911,"imports":[],"format":"esm"},"src/timeout.ts":{"bytes":8042,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"src/callback.ts","kind":"import-statement","original":"./callback"},{"path":"src/errors.ts","kind":"import-statement","original":"./errors"}],"format":"esm"},"src/event-emitter.ts":{"bytes":4155,"imports":[{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"}],"format":"esm"},"src/events.ts":{"bytes":39504,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true}],"format":"esm"},"src/mutex.ts":{"bytes":12647,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"src/trigger.ts":{"bytes":14081,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"./errors"},{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"}],"format":"esm"},"src/observable.ts":{"bytes":17950,"imports":[{"path":"zen-observable","kind":"import-statement","external":true},{"path":"zen-push","kind":"import-statement","external":true},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"}],"format":"esm"},"src/observable-value.ts":{"bytes":6465,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/track-leaks.ts":{"bytes":8414,"imports":[{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/task-scheduling.ts":{"bytes":15492,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/track-leaks.ts","kind":"import-statement","original":"./track-leaks"},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"}],"format":"esm"},"src/persistent-lifecycle.ts":{"bytes":12777,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/mutex.ts","kind":"import-statement","original":"./mutex"},{"path":"src/task-scheduling.ts","kind":"import-statement","original":"./task-scheduling"},{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"}],"format":"esm"},"src/push-iterable.ts":{"bytes":5922,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"}],"format":"esm"},"src/stream-to-array.ts":{"bytes":4935,"imports":[],"format":"esm"},"src/test-stream.ts":{"bytes":5038,"imports":[{"path":"@dxos/node-std/stream","kind":"import-statement","external":true},{"path":"src/events.ts","kind":"import-statement","original":"./events"},{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"}],"format":"esm"},"src/testing.ts":{"bytes":8388,"imports":[{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"}],"format":"esm"},"src/timer.ts":{"bytes":5937,"imports":[{"path":"src/events.ts","kind":"import-statement","original":"./events"}],"format":"esm"},"src/update-scheduler.ts":{"bytes":9812,"imports":[{"path":"src/task-scheduling.ts","kind":"import-statement","original":"./task-scheduling"}],"format":"esm"},"src/index.ts":{"bytes":2335,"imports":[{"path":"src/callback.ts","kind":"import-statement","original":"./callback"},{"path":"src/chain.ts","kind":"import-statement","original":"./chain"},{"path":"src/cleanup.ts","kind":"import-statement","original":"./cleanup"},{"path":"src/debounce.ts","kind":"import-statement","original":"./debounce"},{"path":"src/errors.ts","kind":"import-statement","original":"./errors"},{"path":"src/event-emitter.ts","kind":"import-statement","original":"./event-emitter"},{"path":"src/events.ts","kind":"import-statement","original":"./events"},{"path":"src/mutex.ts","kind":"import-statement","original":"./mutex"},{"path":"src/observable.ts","kind":"import-statement","original":"./observable"},{"path":"src/observable-value.ts","kind":"import-statement","original":"./observable-value"},{"path":"src/persistent-lifecycle.ts","kind":"import-statement","original":"./persistent-lifecycle"},{"path":"src/push-iterable.ts","kind":"import-statement","original":"./push-iterable"},{"path":"src/stream-to-array.ts","kind":"import-statement","original":"./stream-to-array"},{"path":"src/task-scheduling.ts","kind":"import-statement","original":"./task-scheduling"},{"path":"src/test-stream.ts","kind":"import-statement","original":"./test-stream"},{"path":"src/testing.ts","kind":"import-statement","original":"./testing"},{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"},{"path":"src/timer.ts","kind":"import-statement","original":"./timer"},{"path":"src/track-leaks.ts","kind":"import-statement","original":"./track-leaks"},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"},{"path":"src/update-scheduler.ts","kind":"import-statement","original":"./update-scheduler"}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":98361},"dist/lib/browser/index.mjs":{"imports":[{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"zen-observable","kind":"import-statement","external":true},{"path":"zen-push","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/node-std/stream","kind":"import-statement","external":true}],"exports":["CancellableObservableProvider","DeferredTask","Event","MulticastObservable","Mutex","MutexGuard","Observable","ObservableProvider","PersistentLifecycle","PushStream","SubscriptionList","SubscriptionSet","TestStream","TimeoutError","Timer","Trigger","TriggerState","UpdateScheduler","addEventListener","addListener","asyncReturn","asyncTimeout","chain","combine","debounce","debounceAndThrottle","dumpLeaks","interval","latch","makePushIterable","observableError","onEvent","promiseFromCallback","runInContext","runInContextAsync","scheduleExponentialBackoffTaskInterval","scheduleMicroTask","scheduleTask","scheduleTaskInterval","sleep","sleepWithContext","streamToArray","synchronized","throttle","timeout","toError","trackLeaks","trackResource","trigger","unrefTimeout","until","untilError","untilPromise","waitForCondition","waitForEvent"],"entryPoint":"src/index.ts","inputs":{"src/callback.ts":{"bytesInOutput":185},"src/index.ts":{"bytesInOutput":0},"src/chain.ts":{"bytesInOutput":216},"src/cleanup.ts":{"bytesInOutput":1059},"src/debounce.ts":{"bytesInOutput":557},"src/errors.ts":{"bytesInOutput":476},"src/timeout.ts":{"bytesInOutput":1486},"src/event-emitter.ts":{"bytesInOutput":697},"src/events.ts":{"bytesInOutput":8711},"src/mutex.ts":{"bytesInOutput":2444},"src/observable.ts":{"bytesInOutput":3699},"src/trigger.ts":{"bytesInOutput":2972},"src/observable-value.ts":{"bytesInOutput":967},"src/persistent-lifecycle.ts":{"bytesInOutput":3504},"src/task-scheduling.ts":{"bytesInOutput":3151},"src/track-leaks.ts":{"bytesInOutput":2136},"src/push-iterable.ts":{"bytesInOutput":1389},"src/stream-to-array.ts":{"bytesInOutput":967},"src/test-stream.ts":{"bytesInOutput":976},"src/testing.ts":{"bytesInOutput":1419},"src/timer.ts":{"bytesInOutput":1056},"src/update-scheduler.ts":{"bytesInOutput":1855}},"bytes":41409}}}
1
+ {"inputs":{"src/callback.ts":{"bytes":1595,"imports":[],"format":"esm"},"src/chain.ts":{"bytes":1619,"imports":[],"format":"esm"},"src/cleanup.ts":{"bytes":6971,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/debounce.ts":{"bytes":4306,"imports":[],"format":"esm"},"src/errors.ts":{"bytes":2911,"imports":[],"format":"esm"},"src/timeout.ts":{"bytes":8042,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"src/callback.ts","kind":"import-statement","original":"./callback"},{"path":"src/errors.ts","kind":"import-statement","original":"./errors"}],"format":"esm"},"src/event-emitter.ts":{"bytes":4155,"imports":[{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"}],"format":"esm"},"src/events.ts":{"bytes":40162,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true}],"format":"esm"},"src/mutex.ts":{"bytes":13253,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true}],"format":"esm"},"src/trigger.ts":{"bytes":14642,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"src/errors.ts","kind":"import-statement","original":"./errors"},{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"}],"format":"esm"},"src/observable.ts":{"bytes":18467,"imports":[{"path":"zen-observable","kind":"import-statement","external":true},{"path":"zen-push","kind":"import-statement","external":true},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"}],"format":"esm"},"src/observable-value.ts":{"bytes":7009,"imports":[{"path":"@dxos/util","kind":"import-statement","external":true}],"format":"esm"},"src/track-leaks.ts":{"bytes":8414,"imports":[{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true}],"format":"esm"},"src/task-scheduling.ts":{"bytes":16083,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"src/track-leaks.ts","kind":"import-statement","original":"./track-leaks"},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"}],"format":"esm"},"src/persistent-lifecycle.ts":{"bytes":13334,"imports":[{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"src/mutex.ts","kind":"import-statement","original":"./mutex"},{"path":"src/task-scheduling.ts","kind":"import-statement","original":"./task-scheduling"},{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"}],"format":"esm"},"src/push-iterable.ts":{"bytes":5922,"imports":[{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"}],"format":"esm"},"src/stream-to-array.ts":{"bytes":4935,"imports":[],"format":"esm"},"src/test-stream.ts":{"bytes":5467,"imports":[{"path":"@dxos/node-std/stream","kind":"import-statement","external":true},{"path":"src/events.ts","kind":"import-statement","original":"./events"},{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"}],"format":"esm"},"src/testing.ts":{"bytes":8388,"imports":[{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"}],"format":"esm"},"src/timer.ts":{"bytes":6448,"imports":[{"path":"src/events.ts","kind":"import-statement","original":"./events"}],"format":"esm"},"src/update-scheduler.ts":{"bytes":10390,"imports":[{"path":"src/task-scheduling.ts","kind":"import-statement","original":"./task-scheduling"}],"format":"esm"},"src/index.ts":{"bytes":2335,"imports":[{"path":"src/callback.ts","kind":"import-statement","original":"./callback"},{"path":"src/chain.ts","kind":"import-statement","original":"./chain"},{"path":"src/cleanup.ts","kind":"import-statement","original":"./cleanup"},{"path":"src/debounce.ts","kind":"import-statement","original":"./debounce"},{"path":"src/errors.ts","kind":"import-statement","original":"./errors"},{"path":"src/event-emitter.ts","kind":"import-statement","original":"./event-emitter"},{"path":"src/events.ts","kind":"import-statement","original":"./events"},{"path":"src/mutex.ts","kind":"import-statement","original":"./mutex"},{"path":"src/observable.ts","kind":"import-statement","original":"./observable"},{"path":"src/observable-value.ts","kind":"import-statement","original":"./observable-value"},{"path":"src/persistent-lifecycle.ts","kind":"import-statement","original":"./persistent-lifecycle"},{"path":"src/push-iterable.ts","kind":"import-statement","original":"./push-iterable"},{"path":"src/stream-to-array.ts","kind":"import-statement","original":"./stream-to-array"},{"path":"src/task-scheduling.ts","kind":"import-statement","original":"./task-scheduling"},{"path":"src/test-stream.ts","kind":"import-statement","original":"./test-stream"},{"path":"src/testing.ts","kind":"import-statement","original":"./testing"},{"path":"src/timeout.ts","kind":"import-statement","original":"./timeout"},{"path":"src/timer.ts","kind":"import-statement","original":"./timer"},{"path":"src/track-leaks.ts","kind":"import-statement","original":"./track-leaks"},{"path":"src/trigger.ts","kind":"import-statement","original":"./trigger"},{"path":"src/update-scheduler.ts","kind":"import-statement","original":"./update-scheduler"}],"format":"esm"}},"outputs":{"dist/lib/browser/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":99944},"dist/lib/browser/index.mjs":{"imports":[{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"zen-observable","kind":"import-statement","external":true},{"path":"zen-push","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/util","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/context","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/debug","kind":"import-statement","external":true},{"path":"@dxos/log","kind":"import-statement","external":true},{"path":"@dxos/invariant","kind":"import-statement","external":true},{"path":"@dxos/node-std/stream","kind":"import-statement","external":true}],"exports":["CancellableObservableProvider","DeferredTask","Event","MulticastObservable","Mutex","MutexGuard","Observable","ObservableProvider","PersistentLifecycle","PushStream","SubscriptionList","SubscriptionSet","TestStream","TimeoutError","Timer","Trigger","TriggerState","UpdateScheduler","addEventListener","addListener","asyncReturn","asyncTimeout","chain","combine","debounce","debounceAndThrottle","dumpLeaks","interval","latch","makePushIterable","observableError","onEvent","promiseFromCallback","runInContext","runInContextAsync","scheduleExponentialBackoffTaskInterval","scheduleMicroTask","scheduleTask","scheduleTaskInterval","sleep","sleepWithContext","streamToArray","synchronized","throttle","timeout","toError","trackLeaks","trackResource","trigger","unrefTimeout","until","untilError","untilPromise","waitForCondition","waitForEvent"],"entryPoint":"src/index.ts","inputs":{"src/callback.ts":{"bytesInOutput":185},"src/index.ts":{"bytesInOutput":0},"src/chain.ts":{"bytesInOutput":216},"src/cleanup.ts":{"bytesInOutput":1378},"src/debounce.ts":{"bytesInOutput":557},"src/errors.ts":{"bytesInOutput":476},"src/timeout.ts":{"bytesInOutput":1486},"src/event-emitter.ts":{"bytesInOutput":697},"src/events.ts":{"bytesInOutput":9261},"src/mutex.ts":{"bytesInOutput":2879},"src/observable.ts":{"bytesInOutput":4179},"src/trigger.ts":{"bytesInOutput":3465},"src/observable-value.ts":{"bytesInOutput":1402},"src/persistent-lifecycle.ts":{"bytesInOutput":3989},"src/task-scheduling.ts":{"bytesInOutput":3649},"src/track-leaks.ts":{"bytesInOutput":2136},"src/push-iterable.ts":{"bytesInOutput":1389},"src/stream-to-array.ts":{"bytesInOutput":967},"src/test-stream.ts":{"bytesInOutput":1261},"src/testing.ts":{"bytesInOutput":1419},"src/timer.ts":{"bytesInOutput":1501},"src/update-scheduler.ts":{"bytesInOutput":2410}},"bytes":46389}}}
@@ -22,6 +22,19 @@ var chain = (chain2) => async (elements) => {
22
22
 
23
23
  // src/cleanup.ts
24
24
  import { ComplexMap } from "@dxos/util";
25
+ function _define_property(obj, key, value) {
26
+ if (key in obj) {
27
+ Object.defineProperty(obj, key, {
28
+ value,
29
+ enumerable: true,
30
+ configurable: true,
31
+ writable: true
32
+ });
33
+ } else {
34
+ obj[key] = value;
35
+ }
36
+ return obj;
37
+ }
25
38
  var combine = (...cleanupFns) => {
26
39
  return () => {
27
40
  cleanupFns.flat().forEach((cleanupFn) => cleanupFn());
@@ -40,9 +53,6 @@ var addEventListener = (target, type, listener, options) => {
40
53
  return () => target.removeEventListener(type, listener, options);
41
54
  };
42
55
  var SubscriptionList = class {
43
- constructor() {
44
- this._cleanups = [];
45
- }
46
56
  add(cb) {
47
57
  this._cleanups.push(cb);
48
58
  return this;
@@ -51,11 +61,11 @@ var SubscriptionList = class {
51
61
  this._cleanups.forEach((cb) => cb());
52
62
  this._cleanups.length = 0;
53
63
  }
64
+ constructor() {
65
+ _define_property(this, "_cleanups", []);
66
+ }
54
67
  };
55
68
  var SubscriptionSet = class {
56
- constructor(keyProjection) {
57
- this._cleanupMap = new ComplexMap(keyProjection);
58
- }
59
69
  set(key, cb) {
60
70
  this._cleanupMap.set(key, cb);
61
71
  return this;
@@ -64,6 +74,10 @@ var SubscriptionSet = class {
64
74
  this._cleanupMap.forEach((cb) => cb());
65
75
  this._cleanupMap.clear();
66
76
  }
77
+ constructor(keyProjection) {
78
+ _define_property(this, "_cleanupMap", void 0);
79
+ this._cleanupMap = new ComplexMap(keyProjection);
80
+ }
67
81
  };
68
82
 
69
83
  // src/debounce.ts
@@ -190,13 +204,22 @@ var waitForEvent = (eventEmitter, eventName, test, timeout2, error) => {
190
204
 
191
205
  // src/events.ts
192
206
  import { Context } from "@dxos/context";
207
+ function _define_property2(obj, key, value) {
208
+ if (key in obj) {
209
+ Object.defineProperty(obj, key, {
210
+ value,
211
+ enumerable: true,
212
+ configurable: true,
213
+ writable: true
214
+ });
215
+ } else {
216
+ obj[key] = value;
217
+ }
218
+ return obj;
219
+ }
193
220
  var __dxlog_file = "/__w/dxos/dxos/packages/common/async/src/events.ts";
194
221
  var DO_NOT_ERROR_ON_ASYNC_CALLBACK = true;
195
222
  var Event = class _Event {
196
- constructor() {
197
- this._listeners = /* @__PURE__ */ new Set();
198
- this._effects = /* @__PURE__ */ new Set();
199
- }
200
223
  /**
201
224
  * Wrap objects that have on/off style event emitters.
202
225
  */
@@ -450,26 +473,12 @@ var Event = class _Event {
450
473
  handle.cleanup = void 0;
451
474
  }
452
475
  }
476
+ constructor() {
477
+ _define_property2(this, "_listeners", /* @__PURE__ */ new Set());
478
+ _define_property2(this, "_effects", /* @__PURE__ */ new Set());
479
+ }
453
480
  };
454
481
  var EventListener = class {
455
- constructor(event, listener, ctx, once, weak) {
456
- this.ctx = ctx;
457
- this.once = once;
458
- this.weak = weak;
459
- this._clearDispose = void 0;
460
- this._clearDispose = ctx.onDispose(() => {
461
- event._removeListener(this);
462
- });
463
- if (weak) {
464
- this.callback = new WeakRef(listener);
465
- weakListeners().registry?.register(listener, {
466
- event: new WeakRef(event),
467
- listener: this
468
- }, this);
469
- } else {
470
- this.callback = listener;
471
- }
472
- }
473
482
  derefCallback() {
474
483
  return this.weak ? this.callback.deref() : this.callback;
475
484
  }
@@ -499,6 +508,29 @@ var EventListener = class {
499
508
  this._clearDispose?.();
500
509
  weakListeners().registry?.unregister(this);
501
510
  }
511
+ constructor(event, listener, ctx, once, weak) {
512
+ _define_property2(this, "ctx", void 0);
513
+ _define_property2(this, "once", void 0);
514
+ _define_property2(this, "weak", void 0);
515
+ _define_property2(this, "callback", void 0);
516
+ _define_property2(this, "_clearDispose", void 0);
517
+ this.ctx = ctx;
518
+ this.once = once;
519
+ this.weak = weak;
520
+ this._clearDispose = void 0;
521
+ this._clearDispose = ctx.onDispose(() => {
522
+ event._removeListener(this);
523
+ });
524
+ if (weak) {
525
+ this.callback = new WeakRef(listener);
526
+ weakListeners().registry?.register(listener, {
527
+ event: new WeakRef(event),
528
+ listener: this
529
+ }, this);
530
+ } else {
531
+ this.callback = listener;
532
+ }
533
+ }
502
534
  };
503
535
  var weakListenersState = null;
504
536
  var FINALIZATION_REGISTRY_SUPPORTED = !!globalThis.FinalizationRegistry;
@@ -508,9 +540,9 @@ var weakListeners = () => {
508
540
  registry: void 0
509
541
  };
510
542
  }
511
- weakListenersState ??= new FinalizationRegistry(({ event, listener }) => {
543
+ weakListenersState ?? (weakListenersState = new FinalizationRegistry(({ event, listener }) => {
512
544
  event.deref()?._removeListener(listener);
513
- });
545
+ }));
514
546
  return {
515
547
  registry: weakListenersState
516
548
  };
@@ -519,12 +551,20 @@ var weakListeners = () => {
519
551
  // src/mutex.ts
520
552
  import "@dxos/util";
521
553
  import { warnAfterTimeout } from "@dxos/debug";
522
- var Mutex = class {
523
- constructor() {
524
- this._queue = Promise.resolve();
525
- this._queueLength = 0;
526
- this._tag = null;
554
+ function _define_property3(obj, key, value) {
555
+ if (key in obj) {
556
+ Object.defineProperty(obj, key, {
557
+ value,
558
+ enumerable: true,
559
+ configurable: true,
560
+ writable: true
561
+ });
562
+ } else {
563
+ obj[key] = value;
527
564
  }
565
+ return obj;
566
+ }
567
+ var Mutex = class {
528
568
  get tag() {
529
569
  return this._tag;
530
570
  }
@@ -568,11 +608,13 @@ var Mutex = class {
568
608
  guard.release();
569
609
  }
570
610
  }
611
+ constructor() {
612
+ _define_property3(this, "_queue", Promise.resolve());
613
+ _define_property3(this, "_queueLength", 0);
614
+ _define_property3(this, "_tag", null);
615
+ }
571
616
  };
572
617
  var MutexGuard = class {
573
- constructor(_release) {
574
- this._release = _release;
575
- }
576
618
  /**
577
619
  * Releases the lock.
578
620
  */
@@ -582,6 +624,10 @@ var MutexGuard = class {
582
624
  [Symbol.dispose]() {
583
625
  this.release();
584
626
  }
627
+ constructor(_release) {
628
+ _define_property3(this, "_release", void 0);
629
+ this._release = _release;
630
+ }
585
631
  };
586
632
  var classMutexSymbol = Symbol("class-mutex");
587
633
  var FORCE_DISABLE_WARNING = false;
@@ -589,7 +635,8 @@ var enableWarning = !FORCE_DISABLE_WARNING && globalThis.mochaExecutor;
589
635
  var synchronized = (target, propertyName, descriptor) => {
590
636
  const method = descriptor.value;
591
637
  descriptor.value = async function synchronizedMethod(...args) {
592
- const mutex = this[classMutexSymbol] ??= new Mutex();
638
+ var _classMutexSymbol;
639
+ const mutex = this[_classMutexSymbol = classMutexSymbol] ?? (this[_classMutexSymbol] = new Mutex());
593
640
  const tag = `${target.constructor.name}.${propertyName}`;
594
641
  let guard;
595
642
  if (!enableWarning) {
@@ -614,6 +661,19 @@ import PushStream from "zen-push";
614
661
 
615
662
  // src/trigger.ts
616
663
  import { invariant } from "@dxos/invariant";
664
+ function _define_property4(obj, key, value) {
665
+ if (key in obj) {
666
+ Object.defineProperty(obj, key, {
667
+ value,
668
+ enumerable: true,
669
+ configurable: true,
670
+ writable: true
671
+ });
672
+ } else {
673
+ obj[key] = value;
674
+ }
675
+ return obj;
676
+ }
617
677
  var __dxlog_file2 = "/__w/dxos/dxos/packages/common/async/src/trigger.ts";
618
678
  var trigger = (timeout2) => {
619
679
  let callback;
@@ -630,20 +690,13 @@ var trigger = (timeout2) => {
630
690
  resolver
631
691
  ];
632
692
  };
633
- var TriggerState = /* @__PURE__ */ function(TriggerState2) {
693
+ var TriggerState = /* @__PURE__ */ (function(TriggerState2) {
634
694
  TriggerState2["WAITING"] = "WAITING";
635
695
  TriggerState2["RESOLVED"] = "RESOLVED";
636
696
  TriggerState2["REJECTED"] = "REJECTED";
637
697
  return TriggerState2;
638
- }({});
698
+ })({});
639
699
  var Trigger = class {
640
- constructor(_options = {
641
- autoReset: false
642
- }) {
643
- this._options = _options;
644
- this._state = "WAITING";
645
- this.reset();
646
- }
647
700
  get state() {
648
701
  return this._state;
649
702
  }
@@ -700,6 +753,18 @@ var Trigger = class {
700
753
  }
701
754
  return this;
702
755
  }
756
+ constructor(_options = {
757
+ autoReset: false
758
+ }) {
759
+ _define_property4(this, "_options", void 0);
760
+ _define_property4(this, "_promise", void 0);
761
+ _define_property4(this, "_resolve", void 0);
762
+ _define_property4(this, "_reject", void 0);
763
+ _define_property4(this, "_state", void 0);
764
+ this._options = _options;
765
+ this._state = "WAITING";
766
+ this.reset();
767
+ }
703
768
  };
704
769
  var latch = ({ count = 1, timeout: timeout2 } = {}) => {
705
770
  invariant(count >= 0, void 0, {
@@ -749,24 +814,20 @@ var latch = ({ count = 1, timeout: timeout2 } = {}) => {
749
814
  };
750
815
 
751
816
  // src/observable.ts
752
- var MulticastObservable = class _MulticastObservable extends Observable {
753
- constructor(subscriber, _value) {
754
- super((observer) => this._subscribe(observer)), this._value = _value, this._observers = /* @__PURE__ */ new Set(), this._completed = new Trigger(), this._handlers = {
755
- next: (value) => {
756
- this._value = value;
757
- this._observers.forEach((observer) => observer.next?.(value));
758
- },
759
- error: (err) => {
760
- this._observers.forEach((observer) => observer.error?.(err));
761
- },
762
- complete: () => {
763
- this._completed.wake();
764
- this._observers.forEach((observer) => observer.complete?.());
765
- }
766
- };
767
- this._observable = typeof subscriber === "function" ? new Observable(subscriber) : subscriber;
768
- this._observable.subscribe(this._handlers);
817
+ function _define_property5(obj, key, value) {
818
+ if (key in obj) {
819
+ Object.defineProperty(obj, key, {
820
+ value,
821
+ enumerable: true,
822
+ configurable: true,
823
+ writable: true
824
+ });
825
+ } else {
826
+ obj[key] = value;
769
827
  }
828
+ return obj;
829
+ }
830
+ var MulticastObservable = class _MulticastObservable extends Observable {
770
831
  static from(value, initialValue) {
771
832
  if ("emit" in value) {
772
833
  return new _MulticastObservable((observer) => {
@@ -847,18 +908,42 @@ var MulticastObservable = class _MulticastObservable extends Observable {
847
908
  this._observers.delete(observer);
848
909
  };
849
910
  }
911
+ constructor(subscriber, _value) {
912
+ super((observer) => this._subscribe(observer)), _define_property5(this, "_value", void 0), _define_property5(this, "_observers", void 0), _define_property5(this, "_observable", void 0), _define_property5(this, "_completed", void 0), _define_property5(this, "_handlers", void 0), this._value = _value, this._observers = /* @__PURE__ */ new Set(), this._completed = new Trigger(), this._handlers = {
913
+ next: (value) => {
914
+ this._value = value;
915
+ this._observers.forEach((observer) => observer.next?.(value));
916
+ },
917
+ error: (err) => {
918
+ this._observers.forEach((observer) => observer.error?.(err));
919
+ },
920
+ complete: () => {
921
+ this._completed.wake();
922
+ this._observers.forEach((observer) => observer.complete?.());
923
+ }
924
+ };
925
+ this._observable = typeof subscriber === "function" ? new Observable(subscriber) : subscriber;
926
+ this._observable.subscribe(this._handlers);
927
+ }
850
928
  };
851
929
  var EMPTY_OBSERVABLE = MulticastObservable.of(null);
852
930
 
853
931
  // src/observable-value.ts
854
932
  import { createSetDispatch } from "@dxos/util";
855
- var ObservableProvider = class {
856
- constructor() {
857
- this._handlers = /* @__PURE__ */ new Set();
858
- this._proxy = createSetDispatch({
859
- handlers: this._handlers
933
+ function _define_property6(obj, key, value) {
934
+ if (key in obj) {
935
+ Object.defineProperty(obj, key, {
936
+ value,
937
+ enumerable: true,
938
+ configurable: true,
939
+ writable: true
860
940
  });
941
+ } else {
942
+ obj[key] = value;
861
943
  }
944
+ return obj;
945
+ }
946
+ var ObservableProvider = class {
862
947
  /**
863
948
  * Proxy used to dispatch callbacks to each subscription.
864
949
  */
@@ -877,11 +962,15 @@ var ObservableProvider = class {
877
962
  this._handlers.delete(handler);
878
963
  };
879
964
  }
965
+ constructor() {
966
+ _define_property6(this, "_handlers", /* @__PURE__ */ new Set());
967
+ _define_property6(this, "_proxy", createSetDispatch({
968
+ handlers: this._handlers
969
+ }));
970
+ _define_property6(this, "_value", void 0);
971
+ }
880
972
  };
881
973
  var CancellableObservableProvider = class extends ObservableProvider {
882
- constructor(_handleCancel) {
883
- super(), this._handleCancel = _handleCancel, this._cancelled = false;
884
- }
885
974
  get cancelled() {
886
975
  return this._cancelled;
887
976
  }
@@ -893,6 +982,9 @@ var CancellableObservableProvider = class extends ObservableProvider {
893
982
  await this._handleCancel?.();
894
983
  this.callback.onCancelled?.();
895
984
  }
985
+ constructor(_handleCancel) {
986
+ super(), _define_property6(this, "_handleCancel", void 0), _define_property6(this, "_cancelled", void 0), this._handleCancel = _handleCancel, this._cancelled = false;
987
+ }
896
988
  };
897
989
 
898
990
  // src/persistent-lifecycle.ts
@@ -989,14 +1081,20 @@ if (enabled) {
989
1081
  }
990
1082
 
991
1083
  // src/task-scheduling.ts
992
- var DeferredTask = class {
993
- constructor(_ctx, _callback) {
994
- this._ctx = _ctx;
995
- this._callback = _callback;
996
- this._scheduled = false;
997
- this._currentTask = null;
998
- this._nextTask = new Trigger();
1084
+ function _define_property7(obj, key, value) {
1085
+ if (key in obj) {
1086
+ Object.defineProperty(obj, key, {
1087
+ value,
1088
+ enumerable: true,
1089
+ configurable: true,
1090
+ writable: true
1091
+ });
1092
+ } else {
1093
+ obj[key] = value;
999
1094
  }
1095
+ return obj;
1096
+ }
1097
+ var DeferredTask = class {
1000
1098
  get scheduled() {
1001
1099
  return this._scheduled;
1002
1100
  }
@@ -1035,6 +1133,18 @@ var DeferredTask = class {
1035
1133
  async join() {
1036
1134
  await this._currentTask;
1037
1135
  }
1136
+ constructor(_ctx, _callback) {
1137
+ _define_property7(this, "_ctx", void 0);
1138
+ _define_property7(this, "_callback", void 0);
1139
+ _define_property7(this, "_scheduled", void 0);
1140
+ _define_property7(this, "_currentTask", void 0);
1141
+ _define_property7(this, "_nextTask", void 0);
1142
+ this._ctx = _ctx;
1143
+ this._callback = _callback;
1144
+ this._scheduled = false;
1145
+ this._currentTask = null;
1146
+ this._nextTask = new Trigger();
1147
+ }
1038
1148
  };
1039
1149
  var runInContext = (ctx, fn) => {
1040
1150
  try {
@@ -1115,6 +1225,19 @@ var scheduleExponentialBackoffTaskInterval = (ctx, task, initialInterval) => {
1115
1225
  };
1116
1226
 
1117
1227
  // src/persistent-lifecycle.ts
1228
+ function _define_property8(obj, key, value) {
1229
+ if (key in obj) {
1230
+ Object.defineProperty(obj, key, {
1231
+ value,
1232
+ enumerable: true,
1233
+ configurable: true,
1234
+ writable: true
1235
+ });
1236
+ } else {
1237
+ obj[key] = value;
1238
+ }
1239
+ return obj;
1240
+ }
1118
1241
  function _ts_decorate(decorators, target, key, desc) {
1119
1242
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1120
1243
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -1125,16 +1248,6 @@ var __dxlog_file4 = "/__w/dxos/dxos/packages/common/async/src/persistent-lifecyc
1125
1248
  var INIT_RESTART_DELAY = 100;
1126
1249
  var DEFAULT_MAX_RESTART_DELAY = 5e3;
1127
1250
  var PersistentLifecycle = class extends Resource {
1128
- constructor({ start, stop, onRestart, maxRestartDelay = DEFAULT_MAX_RESTART_DELAY }) {
1129
- super();
1130
- this._currentState = void 0;
1131
- this._restartTask = void 0;
1132
- this._restartAfter = 0;
1133
- this._start = start;
1134
- this._stop = stop;
1135
- this._onRestart = onRestart;
1136
- this._maxRestartDelay = maxRestartDelay;
1137
- }
1138
1251
  get state() {
1139
1252
  return this._currentState;
1140
1253
  }
@@ -1217,6 +1330,13 @@ var PersistentLifecycle = class extends Resource {
1217
1330
  }
1218
1331
  this._restartTask.schedule();
1219
1332
  }
1333
+ constructor({ start, stop, onRestart, maxRestartDelay = DEFAULT_MAX_RESTART_DELAY }) {
1334
+ super(), _define_property8(this, "_start", void 0), _define_property8(this, "_stop", void 0), _define_property8(this, "_onRestart", void 0), _define_property8(this, "_maxRestartDelay", void 0), _define_property8(this, "_currentState", void 0), _define_property8(this, "_restartTask", void 0), _define_property8(this, "_restartAfter", 0);
1335
+ this._start = start;
1336
+ this._stop = stop;
1337
+ this._onRestart = onRestart;
1338
+ this._maxRestartDelay = maxRestartDelay;
1339
+ }
1220
1340
  };
1221
1341
  _ts_decorate([
1222
1342
  synchronized
@@ -1335,12 +1455,20 @@ var streamToArray = (stream) => {
1335
1455
 
1336
1456
  // src/test-stream.ts
1337
1457
  import { Duplex } from "node:stream";
1338
- var TestStream = class extends Duplex {
1339
- constructor() {
1340
- super(...arguments);
1341
- this._received = Buffer.alloc(0);
1342
- this._onWrite = new Event();
1458
+ function _define_property9(obj, key, value) {
1459
+ if (key in obj) {
1460
+ Object.defineProperty(obj, key, {
1461
+ value,
1462
+ enumerable: true,
1463
+ configurable: true,
1464
+ writable: true
1465
+ });
1466
+ } else {
1467
+ obj[key] = value;
1343
1468
  }
1469
+ return obj;
1470
+ }
1471
+ var TestStream = class extends Duplex {
1344
1472
  static async assertConnectivity(stream1, stream2, { timeout: timeout2 = 200 } = {}) {
1345
1473
  stream1.push("ping");
1346
1474
  stream2.push("pong");
@@ -1367,6 +1495,9 @@ var TestStream = class extends Duplex {
1367
1495
  const dataBuffer = Buffer.isBuffer(data) ? data : Buffer.from(data);
1368
1496
  return asyncTimeout(this._onWrite.waitForCondition(() => this._received.equals(dataBuffer)), timeout2);
1369
1497
  }
1498
+ constructor(...args) {
1499
+ super(...args), _define_property9(this, "_received", Buffer.alloc(0)), _define_property9(this, "_onWrite", new Event());
1500
+ }
1370
1501
  };
1371
1502
 
1372
1503
  // src/testing.ts
@@ -1429,12 +1560,20 @@ var untilError = (cb) => {
1429
1560
  };
1430
1561
 
1431
1562
  // src/timer.ts
1432
- var Timer = class {
1433
- constructor(_callback) {
1434
- this._callback = _callback;
1435
- this._state = new Event();
1436
- this._count = 0;
1563
+ function _define_property10(obj, key, value) {
1564
+ if (key in obj) {
1565
+ Object.defineProperty(obj, key, {
1566
+ value,
1567
+ enumerable: true,
1568
+ configurable: true,
1569
+ writable: true
1570
+ });
1571
+ } else {
1572
+ obj[key] = value;
1437
1573
  }
1574
+ return obj;
1575
+ }
1576
+ var Timer = class {
1438
1577
  get state() {
1439
1578
  return this._state;
1440
1579
  }
@@ -1474,22 +1613,33 @@ var Timer = class {
1474
1613
  this._state.emit(false);
1475
1614
  return this;
1476
1615
  }
1616
+ constructor(_callback) {
1617
+ _define_property10(this, "_callback", void 0);
1618
+ _define_property10(this, "_state", void 0);
1619
+ _define_property10(this, "_timer", void 0);
1620
+ _define_property10(this, "_count", void 0);
1621
+ this._callback = _callback;
1622
+ this._state = new Event();
1623
+ this._count = 0;
1624
+ }
1477
1625
  };
1478
1626
 
1479
1627
  // src/update-scheduler.ts
1480
- var TIME_PERIOD = 1e3;
1481
- var UpdateScheduler = class {
1482
- constructor(_ctx, _callback, _params = {}) {
1483
- this._ctx = _ctx;
1484
- this._callback = _callback;
1485
- this._params = _params;
1486
- this._promise = null;
1487
- this._scheduled = false;
1488
- this._lastUpdateTime = -TIME_PERIOD;
1489
- _ctx.onDispose(async () => {
1490
- await this._promise;
1628
+ function _define_property11(obj, key, value) {
1629
+ if (key in obj) {
1630
+ Object.defineProperty(obj, key, {
1631
+ value,
1632
+ enumerable: true,
1633
+ configurable: true,
1634
+ writable: true
1491
1635
  });
1636
+ } else {
1637
+ obj[key] = value;
1492
1638
  }
1639
+ return obj;
1640
+ }
1641
+ var TIME_PERIOD = 1e3;
1642
+ var UpdateScheduler = class {
1493
1643
  trigger() {
1494
1644
  if (this._scheduled) {
1495
1645
  return;
@@ -1546,6 +1696,23 @@ var UpdateScheduler = class {
1546
1696
  this._promise = this._callback();
1547
1697
  await this._promise;
1548
1698
  }
1699
+ constructor(_ctx, _callback, _params = {}) {
1700
+ _define_property11(this, "_ctx", void 0);
1701
+ _define_property11(this, "_callback", void 0);
1702
+ _define_property11(this, "_params", void 0);
1703
+ _define_property11(this, "_promise", void 0);
1704
+ _define_property11(this, "_scheduled", void 0);
1705
+ _define_property11(this, "_lastUpdateTime", void 0);
1706
+ this._ctx = _ctx;
1707
+ this._callback = _callback;
1708
+ this._params = _params;
1709
+ this._promise = null;
1710
+ this._scheduled = false;
1711
+ this._lastUpdateTime = -TIME_PERIOD;
1712
+ _ctx.onDispose(async () => {
1713
+ await this._promise;
1714
+ });
1715
+ }
1549
1716
  };
1550
1717
  export {
1551
1718
  CancellableObservableProvider,