@matter/general 0.16.0-alpha.0-20251205-dfb1e1556 → 0.16.0-alpha.0-20251207-37e501b18
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/MatterError.js +2 -2
- package/dist/cjs/MatterError.js.map +1 -1
- package/dist/cjs/codec/DerTypes.d.ts.map +1 -1
- package/dist/cjs/codec/DerTypes.js +2 -1
- package/dist/cjs/codec/DerTypes.js.map +1 -1
- package/dist/cjs/environment/Environment.d.ts +4 -1
- package/dist/cjs/environment/Environment.d.ts.map +1 -1
- package/dist/cjs/environment/Environment.js +83 -3
- package/dist/cjs/environment/Environment.js.map +1 -1
- package/dist/cjs/environment/RuntimeService.d.ts +3 -44
- package/dist/cjs/environment/RuntimeService.d.ts.map +1 -1
- package/dist/cjs/environment/RuntimeService.js +65 -10
- package/dist/cjs/environment/RuntimeService.js.map +2 -2
- package/dist/cjs/environment/Worker.d.ts +56 -0
- package/dist/cjs/environment/Worker.d.ts.map +1 -0
- package/dist/cjs/environment/Worker.js +44 -0
- package/dist/cjs/environment/Worker.js.map +6 -0
- package/dist/cjs/environment/index.d.ts +1 -0
- package/dist/cjs/environment/index.d.ts.map +1 -1
- package/dist/cjs/environment/index.js +1 -0
- package/dist/cjs/environment/index.js.map +1 -1
- package/dist/cjs/log/Diagnostic.d.ts +11 -1
- package/dist/cjs/log/Diagnostic.d.ts.map +1 -1
- package/dist/cjs/log/Diagnostic.js +3 -0
- package/dist/cjs/log/Diagnostic.js.map +1 -1
- package/dist/cjs/log/DiagnosticPresentation.d.ts +4 -0
- package/dist/cjs/log/DiagnosticPresentation.d.ts.map +1 -1
- package/dist/cjs/log/DiagnosticPresentation.js +3 -2
- package/dist/cjs/log/DiagnosticPresentation.js.map +1 -1
- package/dist/cjs/log/DiagnosticSource.d.ts +1 -1
- package/dist/cjs/log/DiagnosticSource.d.ts.map +1 -1
- package/dist/cjs/log/DiagnosticSource.js +5 -1
- package/dist/cjs/log/DiagnosticSource.js.map +1 -1
- package/dist/cjs/log/LogFormat.js +2 -2
- package/dist/cjs/log/LogFormat.js.map +1 -1
- package/dist/cjs/net/Channel.d.ts +1 -1
- package/dist/cjs/net/Channel.d.ts.map +1 -1
- package/dist/cjs/net/Channel.js +1 -1
- package/dist/cjs/net/Channel.js.map +1 -1
- package/dist/cjs/net/mock/MockUdpChannel.d.ts +1 -1
- package/dist/cjs/net/mock/MockUdpChannel.d.ts.map +1 -1
- package/dist/cjs/net/mock/NetworkSimulator.d.ts.map +1 -1
- package/dist/cjs/net/mock/NetworkSimulator.js +2 -1
- package/dist/cjs/net/mock/NetworkSimulator.js.map +1 -1
- package/dist/cjs/net/udp/UdpChannel.d.ts +5 -1
- package/dist/cjs/net/udp/UdpChannel.d.ts.map +1 -1
- package/dist/cjs/net/udp/UdpMulticastServer.d.ts +4 -6
- package/dist/cjs/net/udp/UdpMulticastServer.d.ts.map +1 -1
- package/dist/cjs/net/udp/UdpMulticastServer.js +114 -37
- package/dist/cjs/net/udp/UdpMulticastServer.js.map +1 -1
- package/dist/cjs/time/StandardTime.d.ts +38 -0
- package/dist/cjs/time/StandardTime.d.ts.map +1 -0
- package/dist/cjs/time/StandardTime.js +172 -0
- package/dist/cjs/time/StandardTime.js.map +6 -0
- package/dist/cjs/time/Time.d.ts +4 -23
- package/dist/cjs/time/Time.d.ts.map +1 -1
- package/dist/cjs/time/Time.js +12 -88
- package/dist/cjs/time/Time.js.map +1 -1
- package/dist/cjs/time/Timestamp.d.ts +5 -0
- package/dist/cjs/time/Timestamp.d.ts.map +1 -1
- package/dist/cjs/time/Timestamp.js +4 -0
- package/dist/cjs/time/Timestamp.js.map +1 -1
- package/dist/cjs/time/index.d.ts +1 -0
- package/dist/cjs/time/index.d.ts.map +1 -1
- package/dist/cjs/time/index.js +1 -0
- package/dist/cjs/time/index.js.map +1 -1
- package/dist/cjs/transaction/Transaction.d.ts +12 -4
- package/dist/cjs/transaction/Transaction.d.ts.map +1 -1
- package/dist/cjs/transaction/Transaction.js +4 -4
- package/dist/cjs/transaction/Transaction.js.map +1 -1
- package/dist/cjs/transaction/Tx.d.ts +2 -1
- package/dist/cjs/transaction/Tx.d.ts.map +1 -1
- package/dist/cjs/transaction/Tx.js +92 -6
- package/dist/cjs/transaction/Tx.js.map +1 -1
- package/dist/cjs/util/Abort.js +1 -1
- package/dist/cjs/util/Abort.js.map +1 -1
- package/dist/cjs/util/Construction.d.ts +2 -1
- package/dist/cjs/util/Construction.d.ts.map +1 -1
- package/dist/cjs/util/Construction.js +60 -16
- package/dist/cjs/util/Construction.js.map +2 -2
- package/dist/cjs/util/DataReadQueue.d.ts +1 -5
- package/dist/cjs/util/DataReadQueue.d.ts.map +1 -1
- package/dist/cjs/util/DataReadQueue.js +12 -11
- package/dist/cjs/util/DataReadQueue.js.map +1 -1
- package/dist/cjs/util/FormattedText.d.ts +1 -1
- package/dist/cjs/util/FormattedText.d.ts.map +1 -1
- package/dist/cjs/util/FormattedText.js +1 -3
- package/dist/cjs/util/FormattedText.js.map +1 -1
- package/dist/cjs/util/Lifetime.d.ts +97 -0
- package/dist/cjs/util/Lifetime.d.ts.map +1 -0
- package/dist/cjs/util/Lifetime.js +166 -0
- package/dist/cjs/util/Lifetime.js.map +6 -0
- package/dist/cjs/util/Multiplex.js +2 -2
- package/dist/cjs/util/Multiplex.js.map +1 -1
- package/dist/cjs/util/Observable.d.ts +27 -26
- package/dist/cjs/util/Observable.d.ts.map +1 -1
- package/dist/cjs/util/Observable.js +76 -35
- package/dist/cjs/util/Observable.js.map +2 -2
- package/dist/cjs/util/String.d.ts +5 -29
- package/dist/cjs/util/String.d.ts.map +1 -1
- package/dist/cjs/util/String.js +16 -158
- package/dist/cjs/util/String.js.map +2 -2
- package/dist/cjs/util/identifier-case.d.ts +19 -0
- package/dist/cjs/util/identifier-case.d.ts.map +1 -0
- package/dist/cjs/util/identifier-case.js +99 -0
- package/dist/cjs/util/identifier-case.js.map +6 -0
- package/dist/cjs/util/index.d.ts +3 -0
- package/dist/cjs/util/index.d.ts.map +1 -1
- package/dist/cjs/util/index.js +3 -0
- package/dist/cjs/util/index.js.map +1 -1
- package/dist/cjs/util/serialize.d.ts +25 -0
- package/dist/cjs/util/serialize.d.ts.map +1 -0
- package/dist/cjs/util/serialize.js +116 -0
- package/dist/cjs/util/serialize.js.map +6 -0
- package/dist/esm/MatterError.js +1 -1
- package/dist/esm/codec/DerTypes.d.ts.map +1 -1
- package/dist/esm/codec/DerTypes.js +2 -1
- package/dist/esm/codec/DerTypes.js.map +1 -1
- package/dist/esm/environment/Environment.d.ts +4 -1
- package/dist/esm/environment/Environment.d.ts.map +1 -1
- package/dist/esm/environment/Environment.js +83 -3
- package/dist/esm/environment/Environment.js.map +1 -1
- package/dist/esm/environment/RuntimeService.d.ts +3 -44
- package/dist/esm/environment/RuntimeService.d.ts.map +1 -1
- package/dist/esm/environment/RuntimeService.js +65 -10
- package/dist/esm/environment/RuntimeService.js.map +2 -2
- package/dist/esm/environment/Worker.d.ts +56 -0
- package/dist/esm/environment/Worker.d.ts.map +1 -0
- package/dist/esm/environment/Worker.js +24 -0
- package/dist/esm/environment/Worker.js.map +6 -0
- package/dist/esm/environment/index.d.ts +1 -0
- package/dist/esm/environment/index.d.ts.map +1 -1
- package/dist/esm/environment/index.js +1 -0
- package/dist/esm/environment/index.js.map +1 -1
- package/dist/esm/log/Diagnostic.d.ts +11 -1
- package/dist/esm/log/Diagnostic.d.ts.map +1 -1
- package/dist/esm/log/Diagnostic.js +3 -0
- package/dist/esm/log/Diagnostic.js.map +1 -1
- package/dist/esm/log/DiagnosticPresentation.d.ts +4 -0
- package/dist/esm/log/DiagnosticPresentation.d.ts.map +1 -1
- package/dist/esm/log/DiagnosticPresentation.js +3 -2
- package/dist/esm/log/DiagnosticPresentation.js.map +1 -1
- package/dist/esm/log/DiagnosticSource.d.ts +1 -1
- package/dist/esm/log/DiagnosticSource.d.ts.map +1 -1
- package/dist/esm/log/DiagnosticSource.js +5 -1
- package/dist/esm/log/DiagnosticSource.js.map +1 -1
- package/dist/esm/log/LogFormat.js +1 -1
- package/dist/esm/log/LogFormat.js.map +1 -1
- package/dist/esm/net/Channel.d.ts +1 -1
- package/dist/esm/net/Channel.d.ts.map +1 -1
- package/dist/esm/net/Channel.js +1 -1
- package/dist/esm/net/Channel.js.map +1 -1
- package/dist/esm/net/mock/MockUdpChannel.d.ts +1 -1
- package/dist/esm/net/mock/MockUdpChannel.d.ts.map +1 -1
- package/dist/esm/net/mock/NetworkSimulator.d.ts.map +1 -1
- package/dist/esm/net/mock/NetworkSimulator.js +2 -1
- package/dist/esm/net/mock/NetworkSimulator.js.map +1 -1
- package/dist/esm/net/udp/UdpChannel.d.ts +5 -1
- package/dist/esm/net/udp/UdpChannel.d.ts.map +1 -1
- package/dist/esm/net/udp/UdpMulticastServer.d.ts +4 -6
- package/dist/esm/net/udp/UdpMulticastServer.d.ts.map +1 -1
- package/dist/esm/net/udp/UdpMulticastServer.js +114 -37
- package/dist/esm/net/udp/UdpMulticastServer.js.map +1 -1
- package/dist/esm/time/StandardTime.d.ts +38 -0
- package/dist/esm/time/StandardTime.d.ts.map +1 -0
- package/dist/esm/time/StandardTime.js +152 -0
- package/dist/esm/time/StandardTime.js.map +6 -0
- package/dist/esm/time/Time.d.ts +4 -23
- package/dist/esm/time/Time.d.ts.map +1 -1
- package/dist/esm/time/Time.js +12 -88
- package/dist/esm/time/Time.js.map +1 -1
- package/dist/esm/time/Timestamp.d.ts +5 -0
- package/dist/esm/time/Timestamp.d.ts.map +1 -1
- package/dist/esm/time/Timestamp.js +4 -0
- package/dist/esm/time/Timestamp.js.map +1 -1
- package/dist/esm/time/index.d.ts +1 -0
- package/dist/esm/time/index.d.ts.map +1 -1
- package/dist/esm/time/index.js +1 -0
- package/dist/esm/time/index.js.map +1 -1
- package/dist/esm/transaction/Transaction.d.ts +12 -4
- package/dist/esm/transaction/Transaction.d.ts.map +1 -1
- package/dist/esm/transaction/Transaction.js +4 -4
- package/dist/esm/transaction/Transaction.js.map +1 -1
- package/dist/esm/transaction/Tx.d.ts +2 -1
- package/dist/esm/transaction/Tx.d.ts.map +1 -1
- package/dist/esm/transaction/Tx.js +92 -6
- package/dist/esm/transaction/Tx.js.map +1 -1
- package/dist/esm/util/Abort.js +1 -1
- package/dist/esm/util/Abort.js.map +1 -1
- package/dist/esm/util/Construction.d.ts +2 -1
- package/dist/esm/util/Construction.d.ts.map +1 -1
- package/dist/esm/util/Construction.js +60 -16
- package/dist/esm/util/Construction.js.map +2 -2
- package/dist/esm/util/DataReadQueue.d.ts +1 -5
- package/dist/esm/util/DataReadQueue.d.ts.map +1 -1
- package/dist/esm/util/DataReadQueue.js +12 -11
- package/dist/esm/util/DataReadQueue.js.map +1 -1
- package/dist/esm/util/FormattedText.d.ts +1 -1
- package/dist/esm/util/FormattedText.d.ts.map +1 -1
- package/dist/esm/util/FormattedText.js +2 -4
- package/dist/esm/util/FormattedText.js.map +1 -1
- package/dist/esm/util/Lifetime.d.ts +97 -0
- package/dist/esm/util/Lifetime.d.ts.map +1 -0
- package/dist/esm/util/Lifetime.js +146 -0
- package/dist/esm/util/Lifetime.js.map +6 -0
- package/dist/esm/util/Multiplex.js +2 -2
- package/dist/esm/util/Multiplex.js.map +1 -1
- package/dist/esm/util/Observable.d.ts +27 -26
- package/dist/esm/util/Observable.d.ts.map +1 -1
- package/dist/esm/util/Observable.js +76 -35
- package/dist/esm/util/Observable.js.map +2 -2
- package/dist/esm/util/String.d.ts +5 -29
- package/dist/esm/util/String.d.ts.map +1 -1
- package/dist/esm/util/String.js +16 -158
- package/dist/esm/util/String.js.map +2 -2
- package/dist/esm/util/identifier-case.d.ts +19 -0
- package/dist/esm/util/identifier-case.d.ts.map +1 -0
- package/dist/esm/util/identifier-case.js +79 -0
- package/dist/esm/util/identifier-case.js.map +6 -0
- package/dist/esm/util/index.d.ts +3 -0
- package/dist/esm/util/index.d.ts.map +1 -1
- package/dist/esm/util/index.js +3 -0
- package/dist/esm/util/index.js.map +1 -1
- package/dist/esm/util/serialize.d.ts +25 -0
- package/dist/esm/util/serialize.d.ts.map +1 -0
- package/dist/esm/util/serialize.js +96 -0
- package/dist/esm/util/serialize.js.map +6 -0
- package/package.json +2 -2
- package/src/MatterError.ts +1 -1
- package/src/codec/DerTypes.ts +2 -1
- package/src/environment/Environment.ts +29 -4
- package/src/environment/RuntimeService.ts +19 -55
- package/src/environment/Worker.ts +75 -0
- package/src/environment/index.ts +1 -0
- package/src/log/Diagnostic.ts +15 -1
- package/src/log/DiagnosticPresentation.ts +7 -2
- package/src/log/DiagnosticSource.ts +5 -1
- package/src/log/LogFormat.ts +1 -1
- package/src/net/Channel.ts +2 -2
- package/src/net/mock/MockUdpChannel.ts +1 -1
- package/src/net/mock/NetworkSimulator.ts +2 -1
- package/src/net/udp/UdpChannel.ts +6 -1
- package/src/net/udp/UdpMulticastServer.ts +72 -34
- package/src/time/StandardTime.ts +122 -0
- package/src/time/Time.ts +13 -105
- package/src/time/Timestamp.ts +8 -0
- package/src/time/index.ts +1 -0
- package/src/transaction/Transaction.ts +19 -6
- package/src/transaction/Tx.ts +49 -2
- package/src/util/Abort.ts +1 -1
- package/src/util/Construction.ts +76 -18
- package/src/util/DataReadQueue.ts +14 -12
- package/src/util/FormattedText.ts +1 -1
- package/src/util/Lifetime.ts +284 -0
- package/src/util/Multiplex.ts +2 -2
- package/src/util/Observable.ts +132 -53
- package/src/util/String.ts +14 -215
- package/src/util/identifier-case.ts +101 -0
- package/src/util/index.ts +3 -0
- package/src/util/serialize.ts +129 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Diagnostic } from "#log/Diagnostic.js";
|
|
7
|
+
import "#time/StandardTime.js";
|
|
8
|
+
import { Timestamp } from "#time/Timestamp.js";
|
|
9
|
+
/**
|
|
10
|
+
* A "lifetime" represents the existence of an entity or ongoing task.
|
|
11
|
+
*
|
|
12
|
+
* This serves as a mechanism for tracking granular information about process state for diagnostic purposes. A lifetime
|
|
13
|
+
* is present in diagnostic reports until disposed.
|
|
14
|
+
*
|
|
15
|
+
* Lifetimes are hierarchical. Create sublifetimes using join().
|
|
16
|
+
*/
|
|
17
|
+
export interface Lifetime extends Disposable, Diagnostic, Lifetime.Owner {
|
|
18
|
+
/**
|
|
19
|
+
* The name of the lifetime used for diagnostic presentation.
|
|
20
|
+
*
|
|
21
|
+
* Any diagnostic (so, any value) may serve as a name.
|
|
22
|
+
*/
|
|
23
|
+
name: unknown;
|
|
24
|
+
/**
|
|
25
|
+
* The time at which the lifetime began.
|
|
26
|
+
*/
|
|
27
|
+
readonly startedAt: Timestamp;
|
|
28
|
+
/**
|
|
29
|
+
* A "span" is a sub-lifetime created via {@link join}.
|
|
30
|
+
*/
|
|
31
|
+
readonly spans: Set<Lifetime>;
|
|
32
|
+
/**
|
|
33
|
+
* Arbitrary details presented as a dictionary with {@link name}.
|
|
34
|
+
*/
|
|
35
|
+
readonly details: Record<string, unknown>;
|
|
36
|
+
/**
|
|
37
|
+
* The inverse of {@link isClosing}.
|
|
38
|
+
*/
|
|
39
|
+
readonly isOpen: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Set when the lifetime begins closing (via {@link closing}) or {@link isClosed} is true.
|
|
42
|
+
*/
|
|
43
|
+
readonly isClosing: boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Set when the lifetime has exited.
|
|
46
|
+
*/
|
|
47
|
+
readonly isClosed: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* The lifetime enclosing this lifetime.
|
|
50
|
+
*
|
|
51
|
+
* Only the process lifetime should have no owner. This field is writable so you can move ownership of a lifetime.
|
|
52
|
+
*/
|
|
53
|
+
owner?: Lifetime;
|
|
54
|
+
/**
|
|
55
|
+
* Mark this lifetime as closing.
|
|
56
|
+
*
|
|
57
|
+
* Creates a sublifetime specifically for closing this lifetime. This supports the common pattern of tracking the
|
|
58
|
+
* close process associated with an active lifetime.
|
|
59
|
+
*
|
|
60
|
+
* Calling repeatedly returns the same sublifetime. Disposing the returned lifetime disposes this lifetime.
|
|
61
|
+
*/
|
|
62
|
+
closing(): Lifetime;
|
|
63
|
+
}
|
|
64
|
+
export declare function Lifetime(...name: unknown[]): Lifetime;
|
|
65
|
+
export declare namespace Lifetime {
|
|
66
|
+
/**
|
|
67
|
+
* The lifetime of the system process.
|
|
68
|
+
*
|
|
69
|
+
* This is effectively a "global" lifetime. It parents all other lifetimes.
|
|
70
|
+
*/
|
|
71
|
+
const process: Lifetime.Owner;
|
|
72
|
+
/**
|
|
73
|
+
* Obtain a lifetime not attached to {@link process} for testing purposes.
|
|
74
|
+
*/
|
|
75
|
+
const mock: Lifetime;
|
|
76
|
+
/**
|
|
77
|
+
* An object associated with a lifetime.
|
|
78
|
+
*/
|
|
79
|
+
interface Owner {
|
|
80
|
+
/**
|
|
81
|
+
* Create or move a sublifetime.
|
|
82
|
+
*/
|
|
83
|
+
join(...name: unknown[]): Lifetime;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* A lifetime subject that exists for a portion of a larger timespan.
|
|
87
|
+
*/
|
|
88
|
+
interface Contributor {
|
|
89
|
+
[owner]: Owner;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Determine the lifetime of the owner of a component.
|
|
93
|
+
*/
|
|
94
|
+
function of(subject?: {}): Owner;
|
|
95
|
+
const owner: unique symbol;
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=Lifetime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Lifetime.d.ts","sourceRoot":"","sources":["../../../src/util/Lifetime.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAKhD,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C;;;;;;;GAOG;AACH,MAAM,WAAW,QAAS,SAAQ,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,KAAK;IACpE;;;;OAIG;IACH,IAAI,EAAE,OAAO,CAAC;IAEd;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE3B;;;;OAIG;IACH,KAAK,CAAC,EAAE,QAAQ,CAAC;IAEjB;;;;;;;OAOG;IACH,OAAO,IAAI,QAAQ,CAAC;CACvB;AAED,wBAAgB,QAAQ,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,YAE1C;AA4JD,yBAAiB,QAAQ,CAAC;IACtB;;;;OAIG;IACI,MAAM,OAAO,EAAE,QAAQ,CAAC,KAA+C,CAAC;IAE/E;;OAEG;IACY,MAAM,IAAI,EAAE,QAAQ,CAAC;IAEpC;;OAEG;IACH,UAAiB,KAAK;QAClB;;WAEG;QACH,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;KACtC;IAED;;OAEG;IACH,UAAiB,WAAW;QACxB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;KAClB;IAED;;OAEG;IACH,SAAgB,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,SAE9B;IAEM,MAAM,KAAK,eAAkB,CAAC;CACxC"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2022-2025 Matter.js Authors
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Diagnostic } from "#log/Diagnostic.js";
|
|
7
|
+
import { DiagnosticPresentation } from "#log/DiagnosticPresentation.js";
|
|
8
|
+
import { DiagnosticSource } from "#log/DiagnosticSource.js";
|
|
9
|
+
import { InternalError } from "#MatterError.js";
|
|
10
|
+
import { Duration } from "#time/Duration.js";
|
|
11
|
+
import "#time/StandardTime.js";
|
|
12
|
+
import { Time } from "#time/Time.js";
|
|
13
|
+
import { Timestamp } from "#time/Timestamp.js";
|
|
14
|
+
function Lifetime(...name) {
|
|
15
|
+
return Lifetime.process.join(...name);
|
|
16
|
+
}
|
|
17
|
+
class LifetimeImplementation {
|
|
18
|
+
#name;
|
|
19
|
+
#owner;
|
|
20
|
+
#startedAt;
|
|
21
|
+
#details;
|
|
22
|
+
#spans;
|
|
23
|
+
#closing;
|
|
24
|
+
#isClosed = false;
|
|
25
|
+
constructor(name, owner) {
|
|
26
|
+
this.#name = name.length > 1 ? name : name[0];
|
|
27
|
+
this.#startedAt = Time.nowMs;
|
|
28
|
+
this.#owner = owner;
|
|
29
|
+
if (owner) {
|
|
30
|
+
owner.spans.add(this);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
get spans() {
|
|
34
|
+
if (!this.#spans) {
|
|
35
|
+
this.#spans = /* @__PURE__ */ new Set();
|
|
36
|
+
}
|
|
37
|
+
return this.#spans;
|
|
38
|
+
}
|
|
39
|
+
get name() {
|
|
40
|
+
return this.#name;
|
|
41
|
+
}
|
|
42
|
+
set name(name) {
|
|
43
|
+
this.#name = name;
|
|
44
|
+
}
|
|
45
|
+
get startedAt() {
|
|
46
|
+
return this.#startedAt;
|
|
47
|
+
}
|
|
48
|
+
get details() {
|
|
49
|
+
return this.#details ?? {};
|
|
50
|
+
}
|
|
51
|
+
get owner() {
|
|
52
|
+
return this.#owner;
|
|
53
|
+
}
|
|
54
|
+
set owner(owner) {
|
|
55
|
+
if (!this.#owner) {
|
|
56
|
+
throw new InternalError("Cannot move ownership of root lifetime");
|
|
57
|
+
}
|
|
58
|
+
if (this.#owner === owner) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
removeSpan(this.owner, this);
|
|
62
|
+
this.#owner = owner;
|
|
63
|
+
this.#owner?.spans.add(this);
|
|
64
|
+
}
|
|
65
|
+
join(...name) {
|
|
66
|
+
return new LifetimeImplementation(name, this);
|
|
67
|
+
}
|
|
68
|
+
closing() {
|
|
69
|
+
if (!this.#closing) {
|
|
70
|
+
this.#closing = this.join("closing");
|
|
71
|
+
const disposeClosing = this.#closing[Symbol.dispose].bind(this.#closing);
|
|
72
|
+
this.#closing[Symbol.dispose] = () => {
|
|
73
|
+
disposeClosing();
|
|
74
|
+
this[Symbol.dispose]();
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
return this.#closing;
|
|
78
|
+
}
|
|
79
|
+
get isOpen() {
|
|
80
|
+
return this.#closing === void 0 && !this.#isClosed;
|
|
81
|
+
}
|
|
82
|
+
get isClosing() {
|
|
83
|
+
return this.#closing !== void 0 || this.#isClosed;
|
|
84
|
+
}
|
|
85
|
+
get isClosed() {
|
|
86
|
+
return this.#isClosed;
|
|
87
|
+
}
|
|
88
|
+
get [DiagnosticPresentation.value]() {
|
|
89
|
+
if (!this.#owner) {
|
|
90
|
+
return Diagnostic.node("\u{1F6E0}", "Lifetimes", {
|
|
91
|
+
children: this.spans
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
const header = [this.#name];
|
|
95
|
+
if (this.isClosed) {
|
|
96
|
+
header.push(Diagnostic.weak("(zombie)"));
|
|
97
|
+
}
|
|
98
|
+
const details = {
|
|
99
|
+
up: Duration.format(Timestamp.delta(this.startedAt, Time.nowMs)),
|
|
100
|
+
...this.#details
|
|
101
|
+
};
|
|
102
|
+
header.push(Diagnostic.dict(details));
|
|
103
|
+
const result = [header];
|
|
104
|
+
if (this.#spans?.size) {
|
|
105
|
+
result.push(Diagnostic.list(this.spans));
|
|
106
|
+
}
|
|
107
|
+
return result;
|
|
108
|
+
}
|
|
109
|
+
[Symbol.dispose]() {
|
|
110
|
+
if (!this.#owner) {
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
this.#isClosed = true;
|
|
114
|
+
if (this.#spans?.size) {
|
|
115
|
+
return;
|
|
116
|
+
}
|
|
117
|
+
removeSpan(this.#owner, this);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
function removeSpan(owner, span) {
|
|
121
|
+
if (!owner) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
owner.spans.delete(span);
|
|
125
|
+
if (owner.isClosed && !owner.spans?.size) {
|
|
126
|
+
owner[Symbol.dispose]();
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
((Lifetime2) => {
|
|
130
|
+
Lifetime2.process = new LifetimeImplementation(["process"]);
|
|
131
|
+
function of(subject) {
|
|
132
|
+
return subject?.[Lifetime2.owner] ?? Lifetime2.process;
|
|
133
|
+
}
|
|
134
|
+
Lifetime2.of = of;
|
|
135
|
+
Lifetime2.owner = Symbol("owner");
|
|
136
|
+
})(Lifetime || (Lifetime = {}));
|
|
137
|
+
Object.defineProperty(Lifetime, "mock", {
|
|
138
|
+
get() {
|
|
139
|
+
return new LifetimeImplementation(["mock"]);
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
DiagnosticSource.add(Lifetime.process);
|
|
143
|
+
export {
|
|
144
|
+
Lifetime
|
|
145
|
+
};
|
|
146
|
+
//# sourceMappingURL=Lifetime.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/util/Lifetime.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["Lifetime"]
|
|
6
|
+
}
|
|
@@ -16,9 +16,9 @@ class BasicMultiplex {
|
|
|
16
16
|
}
|
|
17
17
|
const entry = {
|
|
18
18
|
done: Promise.resolve(worker).catch((e) => {
|
|
19
|
-
let message = "
|
|
19
|
+
let message = "Error";
|
|
20
20
|
if (description) {
|
|
21
|
-
message = `${message}
|
|
21
|
+
message = `${message} ${description}`;
|
|
22
22
|
}
|
|
23
23
|
logger.error(`${message}:`, e);
|
|
24
24
|
}).finally(() => this.#workers.delete(entry)),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/util/Multiplex.ts"],
|
|
4
|
-
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,cAAc;AACvB,SAAS,4BAA4B;AACrC,SAAS,oBAAoB;AAC7B,SAAS,gBAAgB;AAEzB,MAAM,SAAS,OAAO,IAAI,WAAW;AAmB9B,MAAM,eAA4C;AAAA,EACrD,WAAW,IAAI,SAAsB;AAAA,EAErC,IAAI,QAA+B,aAAsB;AACrD,QAAI,CAAC,aAAa,GAAG,MAAM,GAAG;AAC1B;AAAA,IACJ;AAEA,UAAM,QAAQ;AAAA,MACV,MAAM,QAAQ,QAAQ,MAAM,EACvB,MAAM,OAAK;AACR,YAAI,UAAU;AACd,YAAI,aAAa;AACb,oBAAU,GAAG,OAAO,
|
|
4
|
+
"mappings": "AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,SAAS,cAAc;AACvB,SAAS,4BAA4B;AACrC,SAAS,oBAAoB;AAC7B,SAAS,gBAAgB;AAEzB,MAAM,SAAS,OAAO,IAAI,WAAW;AAmB9B,MAAM,eAA4C;AAAA,EACrD,WAAW,IAAI,SAAsB;AAAA,EAErC,IAAI,QAA+B,aAAsB;AACrD,QAAI,CAAC,aAAa,GAAG,MAAM,GAAG;AAC1B;AAAA,IACJ;AAEA,UAAM,QAAQ;AAAA,MACV,MAAM,QAAQ,QAAQ,MAAM,EACvB,MAAM,OAAK;AACR,YAAI,UAAU;AACd,YAAI,aAAa;AACb,oBAAU,GAAG,OAAO,IAAI,WAAW;AAAA,QACvC;AACA,eAAO,MAAM,GAAG,OAAO,KAAK,CAAC;AAAA,MACjC,CAAC,EACA,QAAQ,MAAM,KAAK,SAAS,OAAO,KAAK,CAAC;AAAA,MAC9C;AAAA,IACJ;AAEA,SAAK,SAAS,IAAI,KAAK;AAAA,EAC3B;AAAA,EAEA,MAAM,QAAQ;AACV,WAAO,KAAK,SAAS,MAAM;AACvB,YAAM,qBAAqB,WAAW,CAAC,GAAG,KAAK,QAAQ,EAAE,IAAI,WAAS,MAAM,IAAI,CAAC;AAAA,IACrF;AAAA,EACJ;AAAA,EAEA,KACI,aACA,YACgC;AAChC,WAAO,KAAK,MAAM,EAAE,KAAK,aAAa,UAAU;AAAA,EACpD;AAAA,EAEA,CAAC,OAAO,YAAY,IAAI,KAAK,MAAM,KAAK,IAAI;AAChD;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -21,9 +21,11 @@ import { MaybePromise } from "./Promises.js";
|
|
|
21
21
|
* @param payload a list of arguments to be emitted
|
|
22
22
|
*/
|
|
23
23
|
export interface Observer<T extends any[] = any[], R = void> {
|
|
24
|
-
(...payload: T):
|
|
24
|
+
(...payload: T): R | undefined;
|
|
25
25
|
[observant]?: boolean;
|
|
26
26
|
}
|
|
27
|
+
export interface AsyncObserver<T extends any[] = any[], R = void> extends Observer<T, MaybePromise<R>> {
|
|
28
|
+
}
|
|
27
29
|
/**
|
|
28
30
|
* A discrete event that may be monitored via callback. Could call it "event" but that could be confused with Matter
|
|
29
31
|
* cluster events and/or DOM events.
|
|
@@ -90,6 +92,10 @@ export interface Observable<T extends any[] = any[], R = void> extends AsyncIter
|
|
|
90
92
|
* Creates a promise that resolves when next emitted.
|
|
91
93
|
*/
|
|
92
94
|
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T[0]) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>;
|
|
95
|
+
/**
|
|
96
|
+
* A diagnostic aid; set this to produce detailed logs of emission.
|
|
97
|
+
*/
|
|
98
|
+
traceAs: string | undefined;
|
|
93
99
|
/**
|
|
94
100
|
* Observable supports standard "for await (const value of observable").
|
|
95
101
|
*
|
|
@@ -148,6 +154,7 @@ export type ObserverPromiseHandler = (promise: Promise<unknown>, observer: Obser
|
|
|
148
154
|
export declare class BasicObservable<T extends any[] = any[], R = void> implements Observable<T, R> {
|
|
149
155
|
#private;
|
|
150
156
|
constructor(handleError?: ObserverErrorHandler, asyncConfig?: ObserverPromiseHandler | boolean);
|
|
157
|
+
set traceAs(name: string | undefined);
|
|
151
158
|
[Symbol.dispose](): void;
|
|
152
159
|
set handleError(handleError: ObserverErrorHandler);
|
|
153
160
|
get handleError(): ObserverErrorHandler;
|
|
@@ -223,9 +230,9 @@ export declare class EventEmitter {
|
|
|
223
230
|
emit<This, N extends EventEmitter.NamesOf<This>>(this: This, name: N, ...payload: EventEmitter.PayloadOf<This, N>): void;
|
|
224
231
|
addListener<This, N extends EventEmitter.NamesOf<This>>(this: This, name: N, handler: EventEmitter.ObserverOf<This, N>): void;
|
|
225
232
|
removeListener<This, N extends EventEmitter.NamesOf<This>>(this: This, name: N, handler: EventEmitter.ObserverOf<This, N>): void;
|
|
226
|
-
addEvent(name: string, event?:
|
|
227
|
-
getEvent(name: string):
|
|
228
|
-
hasEvent(name: string, onlyIfInitialized?: boolean): boolean |
|
|
233
|
+
addEvent(name: string, event?: AsyncObservable): void;
|
|
234
|
+
getEvent(name: string): AsyncObservable<any[], void>;
|
|
235
|
+
hasEvent(name: string, onlyIfInitialized?: boolean): boolean | AsyncObservable<any[], void> | undefined;
|
|
229
236
|
get eventNames(): string[];
|
|
230
237
|
[Symbol.dispose](): void;
|
|
231
238
|
}
|
|
@@ -273,14 +280,8 @@ export declare class ObservableProxy extends BasicObservable {
|
|
|
273
280
|
export declare class ObserverGroup {
|
|
274
281
|
#private;
|
|
275
282
|
constructor(target?: {});
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
*
|
|
279
|
-
* @param observable the observable to observe
|
|
280
|
-
* @param observer the observer function
|
|
281
|
-
* @param target optional "this" to bind the observer
|
|
282
|
-
*/
|
|
283
|
-
on<T extends any[], R>(observable: Observable<T, R> | AsyncObservable<T, R>, observer: Observer<ObserverGroup.VarArgs<NoInfer<T>>, NoInfer<R>>, target?: {} | undefined): void;
|
|
283
|
+
on<T extends any[], R>(observable: Observable<T, R>, observer: Observer<ObserverGroup.VarArgs<NoInfer<T>>, NoInfer<R>>, target?: {}): void;
|
|
284
|
+
on<T extends any[], R>(observable: AsyncObservable<T, R>, observer: AsyncObserver<ObserverGroup.VarArgs<NoInfer<T>>, NoInfer<R>>, target?: {}): void;
|
|
284
285
|
/**
|
|
285
286
|
* Remove a single observer.
|
|
286
287
|
*
|
|
@@ -304,26 +305,26 @@ export declare namespace ObserverGroup {
|
|
|
304
305
|
/**
|
|
305
306
|
* An {@link Observable} that emits an algorithmically-reduced number of events.
|
|
306
307
|
*/
|
|
307
|
-
export declare class QuietObservable<T extends any[] = any[]> extends BasicObservable<T> implements QuietObservable.State<T> {
|
|
308
|
+
export declare class QuietObservable<T extends any[] = any[], R extends MaybePromise<void> = void> extends BasicObservable<T, R> implements QuietObservable.State<T, R> {
|
|
308
309
|
#private;
|
|
309
|
-
constructor(config?: QuietObservable.Configuration<T>);
|
|
310
|
-
get config(): QuietObservable.Configuration<T>;
|
|
311
|
-
set config(config: QuietObservable.Configuration<T>);
|
|
310
|
+
constructor(config?: QuietObservable.Configuration<T, R>);
|
|
311
|
+
get config(): QuietObservable.Configuration<T, R>;
|
|
312
|
+
set config(config: QuietObservable.Configuration<T, R>);
|
|
312
313
|
get emitAutomatically(): boolean;
|
|
313
314
|
set emitAutomatically(value: boolean);
|
|
314
315
|
get suppressionEnabled(): boolean;
|
|
315
316
|
set suppressionEnabled(value: boolean);
|
|
316
317
|
get minimumEmitInterval(): Duration;
|
|
317
318
|
set minimumEmitInterval(value: Duration);
|
|
318
|
-
get source(): Observable<T> | undefined;
|
|
319
|
-
set source(source: Observable<T> | undefined);
|
|
320
|
-
get sink(): Observable<T> | undefined;
|
|
321
|
-
set sink(sink: Observable<T> | undefined);
|
|
319
|
+
get source(): Observable<T, R> | undefined;
|
|
320
|
+
set source(source: Observable<T, R> | undefined);
|
|
321
|
+
get sink(): Observable<T, R> | undefined;
|
|
322
|
+
set sink(sink: Observable<T, R> | undefined);
|
|
322
323
|
get shouldEmit(): QuietObservable.EmitPredicate<T> | undefined;
|
|
323
324
|
set shouldEmit(shouldEmit: QuietObservable.EmitPredicate<T> | undefined);
|
|
324
325
|
get isObserved(): boolean;
|
|
325
|
-
isObservedBy(observer: Observer<T>): boolean;
|
|
326
|
-
emit(...payload: T):
|
|
326
|
+
isObservedBy(observer: Observer<T, R>): boolean;
|
|
327
|
+
emit(...payload: T): R | undefined;
|
|
327
328
|
/**
|
|
328
329
|
* Emit immediately, regardless of suppression configuration.
|
|
329
330
|
*/
|
|
@@ -335,7 +336,7 @@ export declare class QuietObservable<T extends any[] = any[]> extends BasicObser
|
|
|
335
336
|
[Symbol.dispose](): void;
|
|
336
337
|
}
|
|
337
338
|
export declare namespace QuietObservable {
|
|
338
|
-
interface State<T extends any[] = any[]> {
|
|
339
|
+
interface State<T extends any[] = any[], R extends MaybePromise<void> = void> {
|
|
339
340
|
/**
|
|
340
341
|
* If true this observable will emit within the suppression constraints. If false it will only emit after calls
|
|
341
342
|
* to {@link emitSoon} or {@link emitNow}.
|
|
@@ -352,11 +353,11 @@ export declare namespace QuietObservable {
|
|
|
352
353
|
/**
|
|
353
354
|
* An input observable this observable will automatically observe to produce events.
|
|
354
355
|
*/
|
|
355
|
-
source?: Observable<T>;
|
|
356
|
+
source?: Observable<T, R>;
|
|
356
357
|
/**
|
|
357
358
|
* An output observable this observable will automatically emit to whenever it emits.
|
|
358
359
|
*/
|
|
359
|
-
sink?: Observable<T>;
|
|
360
|
+
sink?: Observable<T, R>;
|
|
360
361
|
/**
|
|
361
362
|
* A predicate that determine whether a payload should emit.
|
|
362
363
|
*/
|
|
@@ -389,7 +390,7 @@ export declare namespace QuietObservable {
|
|
|
389
390
|
interface EmitPredicate<T extends any[] = any[]> {
|
|
390
391
|
(...payload: T): EmitDirective;
|
|
391
392
|
}
|
|
392
|
-
interface Configuration<T extends any[] = any[]> extends Partial<State<T>> {
|
|
393
|
+
interface Configuration<T extends any[] = any[], R extends MaybePromise<void> = void> extends Partial<State<T, R>> {
|
|
393
394
|
}
|
|
394
395
|
const defaults: State;
|
|
395
396
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Observable.d.ts","sourceRoot":"","sources":["../../../src/util/Observable.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Observable.d.ts","sourceRoot":"","sources":["../../../src/util/Observable.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright 2022-2025 Matter.js Authors
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
|
+
import { Diagnostic } from "#log/Diagnostic.js";
|
|
6
7
|
import { Time } from "#time/Time.js";
|
|
7
8
|
import { Instant, Millis, Seconds } from "#time/TimeUnit.js";
|
|
8
9
|
import { ImplementationError } from "../MatterError.js";
|
|
@@ -21,6 +22,7 @@ class BasicObservable {
|
|
|
21
22
|
#handlePromise;
|
|
22
23
|
#observers;
|
|
23
24
|
#once;
|
|
25
|
+
#instrumentAs;
|
|
24
26
|
#joinIteration;
|
|
25
27
|
#removeIterator;
|
|
26
28
|
#stopIteration;
|
|
@@ -32,6 +34,9 @@ class BasicObservable {
|
|
|
32
34
|
this.isAsync = asyncConfig ?? false;
|
|
33
35
|
}
|
|
34
36
|
}
|
|
37
|
+
set traceAs(name) {
|
|
38
|
+
this.#instrumentAs = name;
|
|
39
|
+
}
|
|
35
40
|
[Symbol.dispose]() {
|
|
36
41
|
this.#observers = this.#once = void 0;
|
|
37
42
|
this.#stopIteration?.();
|
|
@@ -98,44 +103,80 @@ class BasicObservable {
|
|
|
98
103
|
if (!this.#observers) {
|
|
99
104
|
return;
|
|
100
105
|
}
|
|
101
|
-
const
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
106
|
+
const observers = [...this.#observers];
|
|
107
|
+
let nextObserver = 0;
|
|
108
|
+
const next = () => {
|
|
109
|
+
const observer = observers[nextObserver];
|
|
110
|
+
if (this.#once?.has(observer)) {
|
|
111
|
+
this.#once.delete(observer);
|
|
112
|
+
this.#observers?.delete(observer);
|
|
105
113
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
114
|
+
if (this.#instrumentAs) {
|
|
115
|
+
logger.debug(
|
|
116
|
+
Diagnostic.strong(this.#instrumentAs),
|
|
117
|
+
`invoking #${nextObserver++}`,
|
|
118
|
+
Diagnostic.strong(observer.name || "(anon)")
|
|
119
|
+
);
|
|
120
|
+
}
|
|
121
|
+
return observer;
|
|
122
|
+
};
|
|
123
|
+
let log, done;
|
|
124
|
+
if (this.#instrumentAs) {
|
|
125
|
+
logger.debug(Diagnostic.strong(this.#instrumentAs), "emitting");
|
|
126
|
+
log = (observer) => {
|
|
127
|
+
logger.debug(
|
|
128
|
+
Diagnostic.strong(this.#instrumentAs),
|
|
129
|
+
`invoking #${nextObserver++}`,
|
|
130
|
+
Diagnostic.strong(observer.name || "(anon)")
|
|
131
|
+
);
|
|
132
|
+
};
|
|
133
|
+
done = () => {
|
|
134
|
+
logger.debug(Diagnostic.strong(this.#instrumentAs), "emission complete");
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
for (; nextObserver < observers.length; nextObserver++) {
|
|
138
|
+
let result;
|
|
139
|
+
let observer = next();
|
|
140
|
+
try {
|
|
141
|
+
log?.(observer);
|
|
142
|
+
result = observer(...payload);
|
|
143
|
+
} catch (e) {
|
|
144
|
+
this.#handleError(asError(e), observer);
|
|
145
|
+
}
|
|
146
|
+
if (result === void 0) {
|
|
147
|
+
continue;
|
|
148
|
+
}
|
|
149
|
+
if (MaybePromise.is(result)) {
|
|
150
|
+
const emitAsync = async () => {
|
|
151
|
+
while (true) {
|
|
152
|
+
if (MaybePromise.is(result)) {
|
|
153
|
+
try {
|
|
154
|
+
result = await result;
|
|
155
|
+
} catch (e) {
|
|
156
|
+
this.#handleError(asError(e), observer);
|
|
127
157
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
158
|
+
}
|
|
159
|
+
if (result !== void 0) {
|
|
160
|
+
return result;
|
|
161
|
+
}
|
|
162
|
+
nextObserver++;
|
|
163
|
+
if (nextObserver >= observers.length) {
|
|
164
|
+
break;
|
|
165
|
+
}
|
|
166
|
+
observer = next();
|
|
167
|
+
try {
|
|
168
|
+
result = observer(...payload);
|
|
169
|
+
} catch (e) {
|
|
170
|
+
this.#handleError(asError(e), observer);
|
|
171
|
+
}
|
|
133
172
|
}
|
|
134
|
-
|
|
135
|
-
|
|
173
|
+
done?.();
|
|
174
|
+
};
|
|
175
|
+
return emitAsync();
|
|
136
176
|
}
|
|
137
|
-
|
|
138
|
-
|
|
177
|
+
done?.();
|
|
178
|
+
return result;
|
|
179
|
+
}
|
|
139
180
|
}
|
|
140
181
|
on(observer) {
|
|
141
182
|
if (!this.#observers) {
|
|
@@ -611,7 +652,7 @@ class QuietObservable extends BasicObservable {
|
|
|
611
652
|
this.#deferredPayload = void 0;
|
|
612
653
|
this.#lastEmitAt = now ?? Time.nowMs;
|
|
613
654
|
this.#stop();
|
|
614
|
-
super.emit(...payload);
|
|
655
|
+
return super.emit(...payload);
|
|
615
656
|
}
|
|
616
657
|
#start(now) {
|
|
617
658
|
if (this.#emitTimer || this.#deferredPayload === void 0) {
|