@matter/general 0.16.0-alpha.0-20251003-dc6d5523d → 0.16.0-alpha.0-20251004-92135c7df

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.
Files changed (115) hide show
  1. package/dist/cjs/codec/DnsCodec.d.ts +28 -4
  2. package/dist/cjs/codec/DnsCodec.d.ts.map +1 -1
  3. package/dist/cjs/codec/DnsCodec.js +24 -3
  4. package/dist/cjs/codec/DnsCodec.js.map +2 -2
  5. package/dist/cjs/net/mock/MockNetwork.d.ts +1 -5
  6. package/dist/cjs/net/mock/MockNetwork.d.ts.map +1 -1
  7. package/dist/cjs/net/mock/MockRouter.d.ts +2 -5
  8. package/dist/cjs/net/mock/MockRouter.d.ts.map +1 -1
  9. package/dist/cjs/net/mock/MockRouter.js +8 -1
  10. package/dist/cjs/net/mock/MockRouter.js.map +1 -1
  11. package/dist/cjs/net/mock/MockUdpChannel.d.ts +2 -1
  12. package/dist/cjs/net/mock/MockUdpChannel.d.ts.map +1 -1
  13. package/dist/cjs/net/mock/MockUdpChannel.js +3 -2
  14. package/dist/cjs/net/mock/MockUdpChannel.js.map +1 -1
  15. package/dist/cjs/net/mock/NetworkSimulator.d.ts +1 -5
  16. package/dist/cjs/net/mock/NetworkSimulator.d.ts.map +1 -1
  17. package/dist/cjs/util/Abort.d.ts +39 -0
  18. package/dist/cjs/util/Abort.d.ts.map +1 -0
  19. package/dist/cjs/util/Abort.js +77 -0
  20. package/dist/cjs/util/Abort.js.map +6 -0
  21. package/dist/cjs/util/Bytes.d.ts +3 -1
  22. package/dist/cjs/util/Bytes.d.ts.map +1 -1
  23. package/dist/cjs/util/Bytes.js +11 -0
  24. package/dist/cjs/util/Bytes.js.map +1 -1
  25. package/dist/cjs/util/Cancelable.d.ts +0 -44
  26. package/dist/cjs/util/Cancelable.d.ts.map +1 -1
  27. package/dist/cjs/util/Cancelable.js +0 -141
  28. package/dist/cjs/util/Cancelable.js.map +2 -2
  29. package/dist/cjs/util/DataReadQueue.d.ts +1 -2
  30. package/dist/cjs/util/DataReadQueue.d.ts.map +1 -1
  31. package/dist/cjs/util/DataReadQueue.js +5 -5
  32. package/dist/cjs/util/DataReadQueue.js.map +1 -1
  33. package/dist/cjs/util/Promises.d.ts +35 -0
  34. package/dist/cjs/util/Promises.d.ts.map +1 -1
  35. package/dist/cjs/util/Promises.js +84 -0
  36. package/dist/cjs/util/Promises.js.map +1 -1
  37. package/dist/cjs/util/Set.d.ts.map +1 -1
  38. package/dist/cjs/util/Set.js +3 -1
  39. package/dist/cjs/util/Set.js.map +1 -1
  40. package/dist/cjs/util/Streams.d.ts +37 -0
  41. package/dist/cjs/util/Streams.d.ts.map +1 -0
  42. package/dist/cjs/util/Streams.js +114 -0
  43. package/dist/cjs/util/Streams.js.map +6 -0
  44. package/dist/cjs/util/index.d.ts +2 -1
  45. package/dist/cjs/util/index.d.ts.map +1 -1
  46. package/dist/cjs/util/index.js +2 -1
  47. package/dist/cjs/util/index.js.map +1 -1
  48. package/dist/esm/codec/DnsCodec.d.ts +28 -4
  49. package/dist/esm/codec/DnsCodec.d.ts.map +1 -1
  50. package/dist/esm/codec/DnsCodec.js +24 -3
  51. package/dist/esm/codec/DnsCodec.js.map +2 -2
  52. package/dist/esm/net/mock/MockNetwork.d.ts +1 -5
  53. package/dist/esm/net/mock/MockNetwork.d.ts.map +1 -1
  54. package/dist/esm/net/mock/MockRouter.d.ts +2 -5
  55. package/dist/esm/net/mock/MockRouter.d.ts.map +1 -1
  56. package/dist/esm/net/mock/MockRouter.js +8 -1
  57. package/dist/esm/net/mock/MockRouter.js.map +1 -1
  58. package/dist/esm/net/mock/MockUdpChannel.d.ts +2 -1
  59. package/dist/esm/net/mock/MockUdpChannel.d.ts.map +1 -1
  60. package/dist/esm/net/mock/MockUdpChannel.js +3 -2
  61. package/dist/esm/net/mock/MockUdpChannel.js.map +1 -1
  62. package/dist/esm/net/mock/NetworkSimulator.d.ts +1 -5
  63. package/dist/esm/net/mock/NetworkSimulator.d.ts.map +1 -1
  64. package/dist/esm/util/Abort.d.ts +39 -0
  65. package/dist/esm/util/Abort.d.ts.map +1 -0
  66. package/dist/esm/util/Abort.js +57 -0
  67. package/dist/esm/util/Abort.js.map +6 -0
  68. package/dist/esm/util/Bytes.d.ts +3 -1
  69. package/dist/esm/util/Bytes.d.ts.map +1 -1
  70. package/dist/esm/util/Bytes.js +11 -0
  71. package/dist/esm/util/Bytes.js.map +1 -1
  72. package/dist/esm/util/Cancelable.d.ts +0 -44
  73. package/dist/esm/util/Cancelable.d.ts.map +1 -1
  74. package/dist/esm/util/Cancelable.js +1 -142
  75. package/dist/esm/util/Cancelable.js.map +2 -2
  76. package/dist/esm/util/DataReadQueue.d.ts +1 -2
  77. package/dist/esm/util/DataReadQueue.d.ts.map +1 -1
  78. package/dist/esm/util/DataReadQueue.js +1 -1
  79. package/dist/esm/util/DataReadQueue.js.map +1 -1
  80. package/dist/esm/util/Promises.d.ts +35 -0
  81. package/dist/esm/util/Promises.d.ts.map +1 -1
  82. package/dist/esm/util/Promises.js +84 -0
  83. package/dist/esm/util/Promises.js.map +1 -1
  84. package/dist/esm/util/Set.d.ts.map +1 -1
  85. package/dist/esm/util/Set.js +3 -1
  86. package/dist/esm/util/Set.js.map +1 -1
  87. package/dist/esm/util/Streams.d.ts +37 -0
  88. package/dist/esm/util/Streams.d.ts.map +1 -0
  89. package/dist/esm/util/Streams.js +94 -0
  90. package/dist/esm/util/Streams.js.map +6 -0
  91. package/dist/esm/util/index.d.ts +2 -1
  92. package/dist/esm/util/index.d.ts.map +1 -1
  93. package/dist/esm/util/index.js +2 -1
  94. package/dist/esm/util/index.js.map +1 -1
  95. package/package.json +2 -2
  96. package/src/codec/DnsCodec.ts +44 -5
  97. package/src/net/mock/MockRouter.ts +10 -1
  98. package/src/net/mock/MockUdpChannel.ts +7 -2
  99. package/src/util/Abort.ts +93 -0
  100. package/src/util/Bytes.ts +15 -1
  101. package/src/util/Cancelable.ts +1 -224
  102. package/src/util/DataReadQueue.ts +2 -2
  103. package/src/util/Promises.ts +113 -0
  104. package/src/util/Set.ts +3 -1
  105. package/src/util/Streams.ts +130 -0
  106. package/src/util/index.ts +2 -1
  107. package/dist/cjs/util/Stream.d.ts +0 -16
  108. package/dist/cjs/util/Stream.d.ts.map +0 -1
  109. package/dist/cjs/util/Stream.js +0 -38
  110. package/dist/cjs/util/Stream.js.map +0 -6
  111. package/dist/esm/util/Stream.d.ts +0 -16
  112. package/dist/esm/util/Stream.d.ts.map +0 -1
  113. package/dist/esm/util/Stream.js +0 -18
  114. package/dist/esm/util/Stream.js.map +0 -6
  115. package/src/util/Stream.ts +0 -19
@@ -18,8 +18,6 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var Cancelable_exports = {};
20
20
  __export(Cancelable_exports, {
21
- Cancelable: () => Cancelable,
22
- CancelableAsyncIterator: () => CancelableAsyncIterator,
23
21
  CancelablePromise: () => CancelablePromise
24
22
  });
25
23
  module.exports = __toCommonJS(Cancelable_exports);
@@ -137,143 +135,4 @@ class CancelablePromise {
137
135
  return this.#logger;
138
136
  }
139
137
  }
140
- class CancelableAsyncIterator {
141
- // The result of the final iteration
142
- #settled;
143
- // The input next implementation
144
- #next;
145
- // We race against this promise to detect cancelation during next()
146
- #canceled;
147
- // Rejects #canceled
148
- #reject;
149
- /**
150
- * Create a new instance.
151
- *
152
- * @param next the function that produces results
153
- * @param onCancel if provided this will overwrite {@link onCancel}
154
- */
155
- constructor(next, onCancel) {
156
- this.#next = next;
157
- this.#canceled = new Promise((_resolve, reject) => this.#reject = reject);
158
- if (onCancel !== void 0) {
159
- this.onCancel = onCancel;
160
- }
161
- }
162
- next(...[value]) {
163
- if (this.#settled) {
164
- return Promise.resolve({ done: true });
165
- }
166
- const next = value === void 0 ? this.#next() : this.#next(value);
167
- next.catch((reason) => {
168
- if (this.#settled) {
169
- CancelablePromise.logger.warn(`Cancelable async iterator rejected after return:`, reason);
170
- }
171
- });
172
- return Promise.race([next, this.#canceled]).then(
173
- (result) => {
174
- if (result.done) {
175
- this.#settled = true;
176
- }
177
- return result;
178
- },
179
- (reason) => {
180
- this.#settled = true;
181
- throw reason;
182
- }
183
- );
184
- }
185
- cancel(reason) {
186
- if (this.#settled) {
187
- return;
188
- }
189
- try {
190
- this.onCancel(reason);
191
- } catch (e) {
192
- this.#reject(e);
193
- }
194
- }
195
- /**
196
- * Handle cancelation.
197
- *
198
- * If the underlying operation supports cancelation then it is better to use that. Otherwise throwing
199
- * {@link reason} (the default behavior) will reject the current (or next) iteration regardless of the state of the
200
- * underyling operation.
201
- *
202
- * @param reason the reason provided to {@link cancel}
203
- */
204
- onCancel(reason) {
205
- throw reason;
206
- }
207
- static is(value) {
208
- return typeof value === "object" && value !== null && Symbol.asyncIterator in value && typeof value[Symbol.asyncIterator] === "function" && "cancel" in value && typeof value["cancel"] === "function";
209
- }
210
- }
211
- function Cancelable(executor) {
212
- return function cancelable(...args) {
213
- let delegates;
214
- return new CancelablePromise(
215
- (resolve, reject) => {
216
- try {
217
- const result = executor.call(this, cancelable2, ...args);
218
- if (import_Promises.MaybePromise.is(result)) {
219
- result.then(resolve, reject);
220
- return;
221
- }
222
- resolve(result);
223
- } catch (e) {
224
- reject(e);
225
- }
226
- function cancelable2(value) {
227
- if (CancelablePromise.is(value)) {
228
- const undelegate = addDelegate((reason) => value.cancel(reason));
229
- return value.finally(undelegate);
230
- }
231
- if (CancelableAsyncIterator.is(value)) {
232
- const undelegate = addDelegate((reason) => value.cancel(reason));
233
- const next = value.next.bind(value);
234
- value.next = () => {
235
- return next().then(
236
- (result) => {
237
- if (result.done) {
238
- undelegate();
239
- }
240
- return result;
241
- },
242
- (reason) => {
243
- undelegate();
244
- throw reason;
245
- }
246
- );
247
- };
248
- return value;
249
- }
250
- if (import_Promises.MaybePromise.is(value)) {
251
- const { promise, rejecter } = (0, import_Promises.createPromise)();
252
- const undelegate = addDelegate((reason) => rejecter(reason));
253
- return Promise.race([promise, value]).finally(() => undelegate);
254
- }
255
- return value;
256
- }
257
- },
258
- // Our "onCancel" that delegates to any registered delegators or simply rethrows if no delegation is active
259
- (reason) => {
260
- if (!delegates?.size) {
261
- throw reason;
262
- }
263
- for (const delegate of delegates) {
264
- delegate(reason);
265
- }
266
- }
267
- );
268
- function addDelegate(delegate) {
269
- if (!delegates) {
270
- delegates = /* @__PURE__ */ new Set();
271
- }
272
- delegates.add(delegate);
273
- return () => {
274
- delegates?.delete(delegate);
275
- };
276
- }
277
- };
278
- }
279
138
  //# sourceMappingURL=Cancelable.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/util/Cancelable.ts"],
4
- "mappings": "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",
5
- "names": ["cancelable"]
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,yBAA8B;AAC9B,mBAAiC;AACjC,sBAA6B;AAT7B;AAAA;AAAA;AAAA;AAAA;AA0BO,MAAM,kBAA8D;AAAA,EACvE;AAAA,EACA;AAAA,EACA,aAAa;AAAA;AAAA,EAGb,OAAO,UAA4B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYnC,YACI,UACA,UACF;AACE,QAAI,aAAa,QAAW;AACxB,WAAK,WAAW;AAAA,IACpB;AAEA,SAAK,WAAW,IAAI,QAAQ,CAAC,SAAS,WAAW;AAC7C,WAAK,UAAU,CAAC,WAAiB;AAC7B,aAAK,aAAa;AAClB,mBAAO,sBAAQ,MAAM,CAAC;AAAA,MAC1B;AAEA;AAAA,QACI,CAAC,UAA8B;AAC3B,cAAI,KAAK,YAAY;AACjB;AAAA,UACJ;AAEA,eAAK,aAAa;AAClB,kBAAQ,KAAK;AAAA,QACjB;AAAA,QAEA,CAAC,WAAiB;AACd,cAAI,KAAK,YAAY;AACjB,8BAAkB,OAAO,KAAK,6CAA6C,MAAM;AACjF;AAAA,UACJ;AAEA,eAAK,QAAQ,MAAM;AAAA,QACvB;AAAA,MACJ;AAAA,IACJ,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAKA,OAAO,SAAkB,IAAI,iCAAc,GAAG;AAC1C,QAAI,KAAK,YAAY;AACjB;AAAA,IACJ;AAEA,QAAI;AACA,WAAK,aAAS,sBAAQ,MAAM,CAAC;AAAA,IACjC,SAAS,GAAG;AACR,WAAK,QAAQ,CAAC;AAAA,IAClB;AAAA,EACJ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASU,SAAS,QAAe;AAC9B,UAAM;AAAA,EACV;AAAA,EAEA,KACI,aACA,YACsC;AACtC,UAAM,SAAS,KAAK,SAAS,KAAK,aAAa,UAAU;AACzD,WAAO,SAAS,KAAK,OAAO,KAAK,IAAI;AACrC,WAAO;AAAA,EACX;AAAA,EAEA,MACI,YAC8B;AAC9B,WAAO,KAAK,KAAK,QAAW,UAAU;AAAA,EAC1C;AAAA,EAEA,QAAQ,WAAuD;AAC3D,UAAM,UAAU,CAAC,WAAgB;AAC7B,kBAAY;AACZ,aAAO;AAAA,IACX;AACA,WAAO,KAAK,KAAK,SAAS,OAAO;AAAA,EACrC;AAAA,EAEA,KAAK,OAAO,WAAW,IAAI;AACvB,WAAO,KAAK,SAAS,OAAO,WAAW;AAAA,EAC3C;AAAA,EAEA,OAAO,GAAM,OAAuD;AAChE,WAAO,6BAAa,GAAG,KAAK,KAAK,OAAQ,MAA+B,WAAW;AAAA,EACvF;AAAA,EAEA,OAAO,QAAW,OAAgC;AAC9C,UAAM,SAAS,QAAQ,QAAQ,KAAK;AACpC,WAAO,SAAS,MAAM;AAAA,IAAC;AACvB,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,OAAO,OAAoC;AAC9C,UAAM,SAAS,QAAQ,WAAO,sBAAQ,KAAK,CAAC;AAC5C,WAAO,SAAS,MAAM;AAAA,IAAC;AACvB,WAAO;AAAA,EACX;AAAA,EAEA,WAAW,OAAO,QAA0B;AACxC,SAAK,UAAU;AAAA,EACnB;AAAA,EAEA,WAAW,SAAS;AAChB,WAAO,KAAK;AAAA,EAChB;AACJ;",
5
+ "names": []
6
6
  }
@@ -6,8 +6,7 @@
6
6
  * SPDX-License-Identifier: Apache-2.0
7
7
  */
8
8
  import { Duration } from "#time/Duration.js";
9
- import { Stream } from "./Stream.js";
10
- export declare class DataReadQueue<T> implements Stream<T> {
9
+ export declare class DataReadQueue<T> {
11
10
  #private;
12
11
  read(timeout?: Duration): Promise<T>;
13
12
  write(data: T): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"DataReadQueue.d.ts","sourceRoot":"","sources":["../../../src/util/DataReadQueue.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAK7C,OAAO,EAA4C,MAAM,EAAE,MAAM,aAAa,CAAC;AAE/E,qBAAa,aAAa,CAAC,CAAC,CAAE,YAAW,MAAM,CAAC,CAAC,CAAC;;IAKxC,IAAI,CAAC,OAAO,WAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAsBvC,KAAK,CAAC,IAAI,EAAE,CAAC;IAInB,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,CAAC;IAYZ,KAAK;CAOR"}
1
+ {"version":3,"file":"DataReadQueue.d.ts","sourceRoot":"","sources":["../../../src/util/DataReadQueue.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAO7C,qBAAa,aAAa,CAAC,CAAC;;IAKlB,IAAI,CAAC,OAAO,WAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IAsBvC,KAAK,CAAC,IAAI,EAAE,CAAC;IAInB,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,CAAC;IAYZ,KAAK;CAOR"}
@@ -26,7 +26,7 @@ var import_TimeUnit = require("#time/TimeUnit.js");
26
26
  var import_MatterError = require("../MatterError.js");
27
27
  var import_Time = require("../time/Time.js");
28
28
  var import_Promises = require("./Promises.js");
29
- var import_Stream = require("./Stream.js");
29
+ var import_Streams = require("./Streams.js");
30
30
  /**
31
31
  * Promise-based blocking queue.
32
32
  *
@@ -40,7 +40,7 @@ class DataReadQueue {
40
40
  #closed = false;
41
41
  async read(timeout = import_TimeUnit.Minutes.one) {
42
42
  const { promise, resolver, rejecter } = (0, import_Promises.createPromise)();
43
- if (this.#closed) throw new import_Stream.EndOfStreamError();
43
+ if (this.#closed) throw new import_Streams.EndOfStreamError();
44
44
  const data = this.#queue.shift();
45
45
  if (data !== void 0) {
46
46
  return data;
@@ -53,7 +53,7 @@ class DataReadQueue {
53
53
  "Queue timeout",
54
54
  timeout,
55
55
  () => rejecter(
56
- new import_Stream.NoResponseTimeoutError(
56
+ new import_Streams.NoResponseTimeoutError(
57
57
  `Expected response data missing within timeout of ${import_Duration.Duration.format(timeout)}`
58
58
  )
59
59
  )
@@ -71,7 +71,7 @@ class DataReadQueue {
71
71
  * Same as write but doesn't require the await required to satisfy {@link Stream#write}.
72
72
  */
73
73
  push(data) {
74
- if (this.#closed) throw new import_Stream.EndOfStreamError();
74
+ if (this.#closed) throw new import_Streams.EndOfStreamError();
75
75
  if (this.#pendingRead !== void 0) {
76
76
  this.#pendingRead.timeoutTimer?.stop();
77
77
  const pendingRead = this.#pendingRead;
@@ -86,7 +86,7 @@ class DataReadQueue {
86
86
  this.#closed = true;
87
87
  if (this.#pendingRead === void 0) return;
88
88
  this.#pendingRead.timeoutTimer?.stop();
89
- this.#pendingRead.rejecter(new import_Stream.EndOfStreamError());
89
+ this.#pendingRead.rejecter(new import_Streams.EndOfStreamError());
90
90
  }
91
91
  }
92
92
  //# sourceMappingURL=DataReadQueue.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/util/DataReadQueue.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,sBAAyB;AACzB,sBAAwB;AACxB,yBAAgC;AAChC,kBAA4B;AAC5B,sBAA8B;AAC9B,oBAAiE;AAbjE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAeO,MAAM,cAAsC;AAAA,EACtC,SAAS,IAAI,MAAS;AAAA,EAC/B;AAAA,EACA,UAAU;AAAA,EAEV,MAAM,KAAK,UAAU,wBAAQ,KAAiB;AAC1C,UAAM,EAAE,SAAS,UAAU,SAAS,QAAI,+BAAiB;AACzD,QAAI,KAAK,QAAS,OAAM,IAAI,+BAAiB;AAC7C,UAAM,OAAO,KAAK,OAAO,MAAM;AAC/B,QAAI,SAAS,QAAW;AACpB,aAAO;AAAA,IACX;AACA,QAAI,KAAK,iBAAiB,OAAW,OAAM,IAAI,mCAAgB,oCAAoC;AACnG,SAAK,eAAe;AAAA,MAChB;AAAA,MACA;AAAA,MACA,cAAc,iBAAK;AAAA,QAAS;AAAA,QAAiB;AAAA,QAAS,MAClD;AAAA,UACI,IAAI;AAAA,YACA,oDAAoD,yBAAS,OAAO,OAAO,CAAC;AAAA,UAChF;AAAA,QACJ;AAAA,MACJ,EAAE,MAAM;AAAA,IACZ;AACA,WAAO;AAAA,EACX;AAAA,EAEA,MAAM,MAAM,MAAS;AACjB,SAAK,KAAK,IAAI;AAAA,EAClB;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,KAAK,OAAO;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA,EAKA,KAAK,MAAS;AACV,QAAI,KAAK,QAAS,OAAM,IAAI,+BAAiB;AAC7C,QAAI,KAAK,iBAAiB,QAAW;AACjC,WAAK,aAAa,cAAc,KAAK;AACrC,YAAM,cAAc,KAAK;AACzB,WAAK,eAAe;AACpB,kBAAY,SAAS,IAAI;AACzB;AAAA,IACJ;AACA,SAAK,OAAO,KAAK,IAAI;AAAA,EACzB;AAAA,EAEA,QAAQ;AACJ,QAAI,KAAK,QAAS;AAClB,SAAK,UAAU;AACf,QAAI,KAAK,iBAAiB,OAAW;AACrC,SAAK,aAAa,cAAc,KAAK;AACrC,SAAK,aAAa,SAAS,IAAI,+BAAiB,CAAC;AAAA,EACrD;AACJ;",
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAQA,sBAAyB;AACzB,sBAAwB;AACxB,yBAAgC;AAChC,kBAA4B;AAC5B,sBAA8B;AAC9B,qBAAyD;AAbzD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAeO,MAAM,cAAiB;AAAA,EACjB,SAAS,IAAI,MAAS;AAAA,EAC/B;AAAA,EACA,UAAU;AAAA,EAEV,MAAM,KAAK,UAAU,wBAAQ,KAAiB;AAC1C,UAAM,EAAE,SAAS,UAAU,SAAS,QAAI,+BAAiB;AACzD,QAAI,KAAK,QAAS,OAAM,IAAI,gCAAiB;AAC7C,UAAM,OAAO,KAAK,OAAO,MAAM;AAC/B,QAAI,SAAS,QAAW;AACpB,aAAO;AAAA,IACX;AACA,QAAI,KAAK,iBAAiB,OAAW,OAAM,IAAI,mCAAgB,oCAAoC;AACnG,SAAK,eAAe;AAAA,MAChB;AAAA,MACA;AAAA,MACA,cAAc,iBAAK;AAAA,QAAS;AAAA,QAAiB;AAAA,QAAS,MAClD;AAAA,UACI,IAAI;AAAA,YACA,oDAAoD,yBAAS,OAAO,OAAO,CAAC;AAAA,UAChF;AAAA,QACJ;AAAA,MACJ,EAAE,MAAM;AAAA,IACZ;AACA,WAAO;AAAA,EACX;AAAA,EAEA,MAAM,MAAM,MAAS;AACjB,SAAK,KAAK,IAAI;AAAA,EAClB;AAAA,EAEA,IAAI,OAAO;AACP,WAAO,KAAK,OAAO;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA,EAKA,KAAK,MAAS;AACV,QAAI,KAAK,QAAS,OAAM,IAAI,gCAAiB;AAC7C,QAAI,KAAK,iBAAiB,QAAW;AACjC,WAAK,aAAa,cAAc,KAAK;AACrC,YAAM,cAAc,KAAK;AACzB,WAAK,eAAe;AACpB,kBAAY,SAAS,IAAI;AACzB;AAAA,IACJ;AACA,SAAK,OAAO,KAAK,IAAI;AAAA,EACzB;AAAA,EAEA,QAAQ;AACJ,QAAI,KAAK,QAAS;AAClB,SAAK,UAAU;AACf,QAAI,KAAK,iBAAiB,OAAW;AACrC,SAAK,aAAa,cAAc,KAAK;AACrC,SAAK,aAAa,SAAS,IAAI,gCAAiB,CAAC;AAAA,EACrD;AACJ;",
5
5
  "names": []
6
6
  }
@@ -65,4 +65,39 @@ export declare const MaybePromise: {
65
65
  finally<T>(producer: MaybePromise<T> | (() => MaybePromise<T>), onfinally?: (() => MaybePromise<void>) | null): MaybePromise<T>;
66
66
  [Symbol.toStringTag]: string;
67
67
  };
68
+ /**
69
+ * A recurring promise.
70
+ *
71
+ * A gate is duck-compatible with {@link Promise} and includes resolution methods on its public API.
72
+ *
73
+ * As an extension to normal promise semantics, a gate may be "opened" or "closed". {@link open} provides multi-
74
+ * resolution so that future awaits return a new value. {@link close} returns the promise to an unsettled state so that
75
+ * future awaits block.
76
+ *
77
+ * This is useful for basic synchronization of two tightly coupled ongoing tasks.
78
+ */
79
+ export declare class Gate<T = void> implements Promise<T> {
80
+ #private;
81
+ constructor();
82
+ /**
83
+ * Move to resolved state with the specified value.
84
+ */
85
+ open(value: T): void;
86
+ /**
87
+ * Move to unresolved state.
88
+ */
89
+ close(): void;
90
+ /**
91
+ * Perform normal promise resolution. Ignored if promise is already settled.
92
+ */
93
+ resolve(value: T): void;
94
+ /**
95
+ * Perform normal promise rejection. Ignored if promise is already settled.
96
+ */
97
+ reject(cause: any): void;
98
+ then<TResult1 = T, TResult2 = never>(resolve?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null, reject?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null): Promise<TResult1 | TResult2>;
99
+ catch<TResult = never>(reject?: ((reason: any) => TResult | PromiseLike<TResult>) | null): Promise<T | TResult>;
100
+ finally(then?: (() => void) | null): Promise<T>;
101
+ [Symbol.toStringTag]: string;
102
+ }
68
103
  //# sourceMappingURL=Promises.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Promises.d.ts","sourceRoot":"","sources":["../../../src/util/Promises.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,OAAO,EAAiB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGhE;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,KAAK;IAChC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;CACpC,CAiBA;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAsBvF;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;CAAG;AAExD;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAC/B,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,MAAM,CAAC,EAAE,eAAe,GAAG,CAAC,MAAM,IAAI,CAAC,GACxC,OAAO,CAAC,CAAC,CAAC,CAmDZ;AAED;;;;GAIG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAE5D,eAAO,MAAM,YAAY;IACrB;;OAEG;OACA,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC;IAUtD;;;OAGG;SACE,CAAC,EAAE,EAAE,UAAU,EAAE,oBACR,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC,CAAC,YACzC,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,WACxC,CAAC,CAAC,KAAK,EAAE,GAAG,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,GACnD,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC;IAsCxB;;OAEG;UACG,CAAC,EAAE,OAAO,oBACF,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC,CAAC,eACtC,CAAC,CAAC,MAAM,EAAE,GAAG,KAAK,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI;IAKhE;;OAEG;YACK,CAAC,YACK,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC,CAAC,cACvC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,GAC9C,YAAY,CAAC,CAAC,CAAC;;CA4DrB,CAAC"}
1
+ {"version":3,"file":"Promises.d.ts","sourceRoot":"","sources":["../../../src/util/Promises.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var Promises_exports = {};
20
20
  __export(Promises_exports, {
21
+ Gate: () => Gate,
21
22
  MaybePromise: () => MaybePromise,
22
23
  PromiseTimeoutError: () => PromiseTimeoutError,
23
24
  anyPromise: () => anyPromise,
@@ -200,5 +201,88 @@ const MaybePromise = {
200
201
  },
201
202
  [Symbol.toStringTag]: "MaybePromise"
202
203
  };
204
+ class Gate {
205
+ #promise;
206
+ #resolve;
207
+ #reject;
208
+ #resolvedAs;
209
+ #isResolved = false;
210
+ #isRejected = false;
211
+ constructor() {
212
+ let resolve;
213
+ let reject;
214
+ this.#promise = new Promise((res, rej) => {
215
+ resolve = res;
216
+ reject = rej;
217
+ });
218
+ this.#resolve = resolve;
219
+ this.#reject = reject;
220
+ }
221
+ /**
222
+ * Move to resolved state with the specified value.
223
+ */
224
+ open(value) {
225
+ if (this.#isResolved) {
226
+ if (this.#resolvedAs === value) {
227
+ return;
228
+ }
229
+ this.#resolvedAs = value;
230
+ this.#promise = Promise.resolve(value);
231
+ return;
232
+ }
233
+ if (this.#isRejected) {
234
+ this.#resolvedAs = value;
235
+ this.#isResolved = true;
236
+ this.#isRejected = false;
237
+ this.#promise = Promise.resolve(value);
238
+ return;
239
+ }
240
+ this.resolve(value);
241
+ }
242
+ /**
243
+ * Move to unresolved state.
244
+ */
245
+ close() {
246
+ if (!this.#isResolved && !this.#isRejected) {
247
+ return;
248
+ }
249
+ this.#isResolved = this.#isRejected = false;
250
+ this.#promise = new Promise((resolve, reject) => {
251
+ this.#resolve = resolve;
252
+ this.#reject = reject;
253
+ });
254
+ }
255
+ /**
256
+ * Perform normal promise resolution. Ignored if promise is already settled.
257
+ */
258
+ resolve(value) {
259
+ if (this.#isResolved || this.#isRejected) {
260
+ return;
261
+ }
262
+ this.#resolvedAs = value;
263
+ this.#isResolved = true;
264
+ this.#resolve(value);
265
+ }
266
+ /**
267
+ * Perform normal promise rejection. Ignored if promise is already settled.
268
+ */
269
+ reject(cause) {
270
+ if (this.#isResolved || this.#isRejected) {
271
+ return;
272
+ }
273
+ this.#isRejected = true;
274
+ this.#reject(cause);
275
+ }
276
+ then(resolve, reject) {
277
+ return this.#promise.then(resolve, reject);
278
+ }
279
+ catch(reject) {
280
+ return this.#promise.catch(reject);
281
+ }
282
+ finally(then) {
283
+ return this.#promise.finally(then);
284
+ }
285
+ [Symbol.toStringTag] = Promise.prototype[Symbol.toStringTag];
286
+ }
203
287
  MaybePromise.toString = () => "MaybePromise";
204
288
  //# sourceMappingURL=Promises.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/util/Promises.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Set.d.ts","sourceRoot":"","sources":["../../../src/util/Set.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC3B,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,MAAM,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAChD,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC;IACtB,IAAI,IAAI,IAAI,MAAM,CAAC;IACnB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IACpC,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,SAAS,GAAG,CAAC,GAAG,SAAS,CAAC;IACjE,MAAM,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,SAAS,GAAG,CAAC,EAAE,CAAC;CAC5D;AAED;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC;IACnC,GAAG,CAAC,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC;IAC/B,KAAK,IAAI,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC;IAC5B,IAAI,KAAK,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7B,IAAI,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAClC;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC;IACzB;;OAEG;IACH,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAE7D;;OAEG;IACH,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACpD;AAED;;;;GAIG;AACH,qBAAa,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAE,YAAW,YAAY,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;;gBAWnG,GAAG,YAAY,EAAE,IAAI,EAAE;IAMnC,CAAC,MAAM,CAAC,QAAQ,CAAC;IAIjB,IAAI,IAAI,WAEP;IAED,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;IAI7B,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,SAAS;IAQhD,MAAM,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,SAAS;IAUlD,GAAG,CAAC,IAAI,EAAE,CAAC;IAIX,GAAG,CAAC,IAAI,EAAE,IAAI;IA4Bd,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAuB5C;;;;OAIG;IACH,KAAK,CAAC,IAAI,SAAS,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAYzF,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO;IACxB,MAAM,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO;IAmC/D,KAAK;IAIL,IAAI,KAAK,0BAKR;IAED,IAAI,OAAO,0BAKV;IAED,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,GACG,CAAC;CAExC;AAED;;;;;;GAMG;AACH,qBAAa,eAAe,CAAC,CAAC,EAAE,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,CACxG,YAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;;IAQvB;;;;;;OAMG;gBACS,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAMhD,KAAK,IAAI,IAAI;IAIb,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO;IAQ1B,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,IAAI;IAS1F,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS;IAO7B,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO;IAIvB,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAgB9B,IAAI,IAAI,WAEP;IAED,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIjC,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAQzB,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC;IAQvB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAU5C,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS;CAChC;AAED,yBAAiB,eAAe,CAAC;IAC7B,MAAa,qBAAsB,SAAQ,mBAAmB;KAAG;CACpE"}
1
+ {"version":3,"file":"Set.d.ts","sourceRoot":"","sources":["../../../src/util/Set.ts"],"names":[],"mappings":"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"}
@@ -155,7 +155,9 @@ class BasicSet {
155
155
  return true;
156
156
  }
157
157
  clear() {
158
- this.#entries.clear();
158
+ for (const entry of [...this]) {
159
+ this.delete(entry);
160
+ }
159
161
  }
160
162
  get added() {
161
163
  if (this.#added === void 0) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/util/Set.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["value", "MapOfIndexedSet"]
6
6
  }
@@ -0,0 +1,37 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2025 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { MatterError, TimeoutError } from "#MatterError.js";
7
+ /**
8
+ * Generic error thrown when a stream closes in a context where we expected a value.
9
+ */
10
+ export declare class EndOfStreamError extends MatterError {
11
+ constructor(message?: string);
12
+ }
13
+ /**
14
+ * Timeout specific to cases where we were expecting a value.
15
+ */
16
+ export declare class NoResponseTimeoutError extends TimeoutError {
17
+ }
18
+ /**
19
+ * A generic iterator type that accepts both async and normal iterators.
20
+ */
21
+ export type MaybeAsyncIterable<T> = Iterable<T, void, void> | AsyncIterable<T, void, void>;
22
+ export declare namespace Stream {
23
+ /**
24
+ * Ponyfill for standard ReadableStream.from().
25
+ *
26
+ * If defined, we use the native implementation. Otherwise we create the stream ourselves.
27
+ */
28
+ function from<T>(iterable: MaybeAsyncIterable<T>): ReadableStream<T>;
29
+ /**
30
+ * Ponyfill for standard ReadableStream#[Symbol.asyncIterator].
31
+ *
32
+ * If defined, we use the native implementation. Otherwise we create the iterator ourselves. Currently only
33
+ * necessary on Safari.
34
+ */
35
+ function iterable<T>(stream: ReadableStream<T>): AsyncGenerator<T, void, void>;
36
+ }
37
+ //# sourceMappingURL=Streams.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Streams.d.ts","sourceRoot":"","sources":["../../../src/util/Streams.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG5D;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;gBACjC,OAAO,SAA6B;CAGnD;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,YAAY;CAAG;AAE3D;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE3F,yBAAiB,MAAM,CAAC;IACpB;;;;OAIG;IACH,SAAgB,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAM1E;IAED;;;;;OAKG;IACH,SAAuB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAmB3F;CACJ"}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var Streams_exports = {};
20
+ __export(Streams_exports, {
21
+ EndOfStreamError: () => EndOfStreamError,
22
+ NoResponseTimeoutError: () => NoResponseTimeoutError,
23
+ Stream: () => Stream
24
+ });
25
+ module.exports = __toCommonJS(Streams_exports);
26
+ var import_MatterError = require("#MatterError.js");
27
+ var import_Promises = require("./Promises.js");
28
+ /**
29
+ * @license
30
+ * Copyright 2022-2025 Matter.js Authors
31
+ * SPDX-License-Identifier: Apache-2.0
32
+ */
33
+ class EndOfStreamError extends import_MatterError.MatterError {
34
+ constructor(message = "Unexpected end of stream") {
35
+ super(message);
36
+ }
37
+ }
38
+ class NoResponseTimeoutError extends import_MatterError.TimeoutError {
39
+ }
40
+ var Stream;
41
+ ((Stream2) => {
42
+ function from(iterable2) {
43
+ if ("from" in ReadableStream) {
44
+ return ReadableStream.from(iterable2);
45
+ }
46
+ return AnyIterableReadableStream(iterable2);
47
+ }
48
+ Stream2.from = from;
49
+ async function* iterable(stream) {
50
+ if (Symbol.asyncIterator in stream) {
51
+ yield* stream;
52
+ return;
53
+ }
54
+ const reader = stream.getReader();
55
+ try {
56
+ while (true) {
57
+ const next = await reader.read();
58
+ if (next.done) {
59
+ return;
60
+ }
61
+ yield next.value;
62
+ }
63
+ } finally {
64
+ reader.releaseLock();
65
+ }
66
+ }
67
+ Stream2.iterable = iterable;
68
+ })(Stream || (Stream = {}));
69
+ function AnyIterableReadableStream(iterable) {
70
+ let iterator;
71
+ return new ReadableStream({
72
+ start() {
73
+ if (Symbol.asyncIterator in iterable) {
74
+ iterator = iterable[Symbol.asyncIterator]();
75
+ } else {
76
+ iterator = iterable[Symbol.iterator]();
77
+ }
78
+ },
79
+ async pull(controller) {
80
+ if (!iterator) {
81
+ controller.close();
82
+ return;
83
+ }
84
+ try {
85
+ let next = iterator.next();
86
+ if (import_Promises.MaybePromise.is(next)) {
87
+ next = await next;
88
+ }
89
+ if (next.done) {
90
+ controller.close();
91
+ return;
92
+ }
93
+ controller.enqueue(next.value);
94
+ } catch (e) {
95
+ controller.error(e);
96
+ return;
97
+ }
98
+ },
99
+ async cancel(reason) {
100
+ if (reason) {
101
+ if (iterator?.throw) {
102
+ await iterator.throw(reason);
103
+ return;
104
+ }
105
+ if (iterator?.return) {
106
+ await iterator.return();
107
+ }
108
+ throw reason;
109
+ }
110
+ await iterator?.return?.();
111
+ }
112
+ });
113
+ }
114
+ //# sourceMappingURL=Streams.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/util/Streams.ts"],
4
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,yBAA0C;AAC1C,sBAA6B;AAP7B;AAAA;AAAA;AAAA;AAAA;AAYO,MAAM,yBAAyB,+BAAY;AAAA,EAC9C,YAAY,UAAU,4BAA4B;AAC9C,UAAM,OAAO;AAAA,EACjB;AACJ;AAKO,MAAM,+BAA+B,gCAAa;AAAC;AAOnD,IAAU;AAAA,CAAV,CAAUA,YAAV;AAMI,WAAS,KAAQC,WAAoD;AACxE,QAAI,UAAU,gBAAgB;AAC1B,aAAQ,eAAgF,KAAKA,SAAQ;AAAA,IACzG;AAEA,WAAO,0BAA0BA,SAAQ;AAAA,EAC7C;AANO,EAAAD,QAAS;AAchB,kBAAuB,SAAY,QAA0D;AACzF,QAAI,OAAO,iBAAiB,QAAQ;AAChC,aAAO;AACP;AAAA,IACJ;AAEA,UAAM,SAAS,OAAO,UAAU;AAChC,QAAI;AACA,aAAO,MAAM;AACT,cAAM,OAAO,MAAM,OAAO,KAAK;AAC/B,YAAI,KAAK,MAAM;AACX;AAAA,QACJ;AAEA,cAAM,KAAK;AAAA,MACf;AAAA,IACJ,UAAE;AACE,aAAO,YAAY;AAAA,IACvB;AAAA,EACJ;AAnBA,EAAAA,QAAuB;AAAA,GApBV;AAgDjB,SAAS,0BAA6B,UAAoD;AACtF,MAAI;AAEJ,SAAO,IAAI,eAAe;AAAA,IACtB,QAAQ;AACJ,UAAI,OAAO,iBAAiB,UAAU;AAClC,mBAAW,SAAS,OAAO,aAAa,EAAE;AAAA,MAC9C,OAAO;AACH,mBAAW,SAAS,OAAO,QAAQ,EAAE;AAAA,MACzC;AAAA,IACJ;AAAA,IAEA,MAAM,KAAK,YAAY;AACnB,UAAI,CAAC,UAAU;AACX,mBAAW,MAAM;AACjB;AAAA,MACJ;AAEA,UAAI;AACA,YAAI,OAAO,SAAS,KAAK;AACzB,YAAI,6BAAa,GAAG,IAAI,GAAG;AACvB,iBAAO,MAAM;AAAA,QACjB;AAEA,YAAI,KAAK,MAAM;AACX,qBAAW,MAAM;AACjB;AAAA,QACJ;AAEA,mBAAW,QAAQ,KAAK,KAAK;AAAA,MACjC,SAAS,GAAG;AACR,mBAAW,MAAM,CAAC;AAClB;AAAA,MACJ;AAAA,IACJ;AAAA,IAEA,MAAM,OAAO,QAAQ;AACjB,UAAI,QAAQ;AACR,YAAI,UAAU,OAAO;AACjB,gBAAM,SAAS,MAAM,MAAM;AAC3B;AAAA,QACJ;AAEA,YAAI,UAAU,QAAQ;AAClB,gBAAM,SAAS,OAAO;AAAA,QAC1B;AAEA,cAAM;AAAA,MACV;AAEA,YAAM,UAAU,SAAS;AAAA,IAC7B;AAAA,EACJ,CAAC;AACL;",
5
+ "names": ["Stream", "iterable"]
6
+ }