@libp2p/utils 7.0.2 → 7.0.3-72a7ea10a

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.
@@ -50,7 +50,11 @@ export declare abstract class AbstractMessageStream<Timeline extends MessageStre
50
50
  protected readonly readBuffer: Uint8ArrayList;
51
51
  protected readonly writeBuffer: Uint8ArrayList;
52
52
  protected sendingData: boolean;
53
+ private onDrainPromise?;
53
54
  constructor(init: MessageStreamInit);
55
+ get readBufferLength(): number;
56
+ get writeBufferLength(): number;
57
+ onDrain(options?: AbortOptions): Promise<void>;
54
58
  [Symbol.asyncIterator](): AsyncGenerator<Uint8Array | Uint8ArrayList>;
55
59
  isReadable(): boolean;
56
60
  send(data: Uint8Array | Uint8ArrayList): boolean;
@@ -62,6 +66,7 @@ export declare abstract class AbstractMessageStream<Timeline extends MessageStre
62
66
  pause(): void;
63
67
  resume(): void;
64
68
  push(data: Uint8Array | Uint8ArrayList): void;
69
+ unshift(data: Uint8Array | Uint8ArrayList): void;
65
70
  /**
66
71
  * When an extending class reads data from it's implementation-specific source,
67
72
  * call this method to allow the stream consumer to read the data.
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-message-stream.d.ts","sourceRoot":"","sources":["../../src/abstract-message-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract-message-stream.d.ts","sourceRoot":"","sources":["../../src/abstract-message-stream.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import { StreamResetError, TypedEventEmitter, StreamMessageEvent, StreamBufferError, StreamResetEvent, StreamAbortEvent, StreamCloseEvent, StreamStateError } from '@libp2p/interface';
2
2
  import { pushable } from 'it-pushable';
3
+ import { raceSignal } from 'race-signal';
3
4
  import { Uint8ArrayList } from 'uint8arraylist';
5
+ import { StreamClosedError } from "./errors.js";
4
6
  const DEFAULT_MAX_READ_BUFFER_LENGTH = Math.pow(2, 20) * 4; // 4MB
5
7
  export class AbstractMessageStream extends TypedEventEmitter {
6
8
  status;
@@ -24,6 +26,7 @@ export class AbstractMessageStream extends TypedEventEmitter {
24
26
  readBuffer;
25
27
  writeBuffer;
26
28
  sendingData;
29
+ onDrainPromise;
27
30
  constructor(init) {
28
31
  super();
29
32
  this.status = 'open';
@@ -52,8 +55,28 @@ export class AbstractMessageStream extends TypedEventEmitter {
52
55
  this.writableNeedsDrain = false;
53
56
  this.processSendQueue();
54
57
  }
58
+ this.onDrainPromise?.resolve();
55
59
  };
56
60
  this.addEventListener('drain', continueSendingOnDrain);
61
+ const rejectOnDrainOnClose = (evt) => {
62
+ this.onDrainPromise?.reject(evt.error ?? new StreamClosedError());
63
+ };
64
+ this.addEventListener('close', rejectOnDrainOnClose);
65
+ }
66
+ get readBufferLength() {
67
+ return this.readBuffer.byteLength;
68
+ }
69
+ get writeBufferLength() {
70
+ return this.writeBuffer.byteLength;
71
+ }
72
+ async onDrain(options) {
73
+ if (this.writableNeedsDrain !== true) {
74
+ return Promise.resolve();
75
+ }
76
+ if (this.onDrainPromise == null) {
77
+ this.onDrainPromise = Promise.withResolvers();
78
+ }
79
+ return raceSignal(this.onDrainPromise.promise, options?.signal);
57
80
  }
58
81
  async *[Symbol.asyncIterator]() {
59
82
  if (this.readStatus !== 'readable' && this.readStatus !== 'paused') {
@@ -164,6 +187,24 @@ export class AbstractMessageStream extends TypedEventEmitter {
164
187
  this.dispatchReadBuffer();
165
188
  }, 0);
166
189
  }
190
+ unshift(data) {
191
+ if (this.readStatus === 'closed' || this.readStatus === 'closing') {
192
+ throw new StreamStateError(`Cannot push data onto a stream that is ${this.readStatus}`);
193
+ }
194
+ if (data.byteLength === 0) {
195
+ return;
196
+ }
197
+ this.readBuffer.prepend(data);
198
+ if (this.readStatus === 'paused' || this.listenerCount('message') === 0) {
199
+ // abort if the read buffer is too large
200
+ this.checkReadBufferLength();
201
+ return;
202
+ }
203
+ // TODO: use a microtask instead?
204
+ setTimeout(() => {
205
+ this.dispatchReadBuffer();
206
+ }, 0);
207
+ }
167
208
  /**
168
209
  * When an extending class reads data from it's implementation-specific source,
169
210
  * call this method to allow the stream consumer to read the data.
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-message-stream.js","sourceRoot":"","sources":["../../src/abstract-message-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract-message-stream.js","sourceRoot":"","sources":["../../src/abstract-message-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACtL,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAI/C,MAAM,8BAA8B,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA,CAAC,MAAM;AAiCjE,MAAM,OAAgB,qBAAsF,SAAQ,iBAAsC;IACjJ,MAAM,CAAqB;IAClB,QAAQ,CAAU;IAC3B,iBAAiB,CAAQ;IACzB,mBAAmB,CAAQ;IAC3B,oBAAoB,CAAS;IACpB,GAAG,CAAQ;IACpB,SAAS,CAAwB;IACjC,cAAc,CAAS;IAEvB,UAAU,CAAyB;IACnC,WAAW,CAA0B;IACrC,gBAAgB,CAAyB;IACzC,iBAAiB,CAA0B;IAE3C,kBAAkB,CAAS;IAElC;;;;OAIG;IACgB,UAAU,CAAgB;IAC1B,WAAW,CAAgB;IACpC,WAAW,CAAS;IAEtB,cAAc,CAA6B;IAEnD,YAAa,IAAuB;QAClC,KAAK,EAAE,CAAA;QAEP,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QACpB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,UAAU,CAAA;QAC7C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,IAAI,OAAO,CAAA;QAC1D,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,IAAI,8BAA8B,CAAA;QACrF,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,oBAAoB,CAAA;QACrD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAA;QACzC,IAAI,CAAC,UAAU,GAAG,IAAI,cAAc,EAAE,CAAA;QACtC,IAAI,CAAC,WAAW,GAAG,IAAI,cAAc,EAAE,CAAA;QAEvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,IAAI,CAAC,gBAAgB,GAAG,UAAU,CAAA;QAClC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAA;QAC7B,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAA;QACnC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;QACxB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAA;QAE/B,qEAAqE;QACrE,IAAI,CAAC,QAAQ,GAAG;YACd,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE;SACjB,CAAA;QAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAExD,MAAM,sBAAsB,GAAG,GAAS,EAAE;YACxC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC5B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAA;gBAC7D,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAA;gBAC/B,IAAI,CAAC,gBAAgB,EAAE,CAAA;YACzB,CAAC;YAED,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAA;QAChC,CAAC,CAAA;QACD,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAA;QAEtD,MAAM,oBAAoB,GAAG,CAAC,GAAqB,EAAQ,EAAE;YAC3D,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,IAAI,iBAAiB,EAAE,CAAC,CAAA;QACnE,CAAC,CAAA;QACD,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IACtD,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,CAAA;IACnC,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,OAAO,CAAE,OAAsB;QACnC,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACrC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;QAC1B,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,aAAa,EAAE,CAAA;QAC/C,CAAC;QAED,OAAO,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IACjE,CAAC;IAED,KAAK,CAAC,CAAE,CAAC,MAAM,CAAC,aAAa,CAAC;QAC5B,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnE,OAAM;QACR,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,EAA+B,CAAA;QAEtD,MAAM,oCAAoC,GAAG,CAAC,GAAuB,EAAQ,EAAE;YAC7E,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACvB,CAAC,CAAA;QACD,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,oCAAoC,CAAC,CAAA;QAEtE,MAAM,kCAAkC,GAAG,CAAC,GAAqB,EAAQ,EAAE;YACzE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACvB,CAAC,CAAA;QACD,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,kCAAkC,CAAC,CAAA;QAElE,MAAM,6CAA6C,GAAG,GAAS,EAAE;YAC/D,MAAM,CAAC,GAAG,EAAE,CAAA;QACd,CAAC,CAAA;QACD,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,6CAA6C,CAAC,CAAA;QAExF,IAAI,CAAC;YACH,KAAM,CAAC,CAAC,MAAM,CAAA;QAChB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,oCAAoC,CAAC,CAAA;YACzE,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,kCAAkC,CAAC,CAAA;YACrE,IAAI,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,6CAA6C,CAAC,CAAA;QAC7F,CAAC;IACH,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,MAAM,KAAK,MAAM,CAAA;IAC/B,CAAC;IAED,IAAI,CAAE,IAAiC;QACrC,IAAI,IAAI,CAAC,WAAW,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpE,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;QACpF,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iCAAiC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QAClE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAE7B,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAA;IAChC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAE,GAAU;QACf,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACrF,OAAM;QACR,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAA;QAE5C,IAAI,CAAC,MAAM,GAAG,SAAS,CAAA;QAEvB,yBAAyB;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QACrD,CAAC;QAED,yBAAyB;QACzB,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;YACrD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAChC,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAA;QAC3B,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAA;QAEjC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;QAC1B,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAA;QAChC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAEhC,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;QACrB,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,qCAAqC,EAAE,GAAG,CAAC,CAAA;QACtD,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/C,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClE,MAAM,IAAI,gBAAgB,CAAC,8CAA8C,CAAC,CAAA;QAC5E,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YACjC,OAAM;QACR,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;QAC1B,IAAI,CAAC,SAAS,EAAE,CAAA;IAClB,CAAC;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClE,MAAM,IAAI,gBAAgB,CAAC,+CAA+C,CAAC,CAAA;QAC7E,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACnC,OAAM;QACR,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAC5B,sDAAsD;QACtD,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,UAAU,EAAE,CAAA;IACnB,CAAC;IAED,IAAI,CAAE,IAAiC;QACrC,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClE,MAAM,IAAI,gBAAgB,CAAC,0CAA0C,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QACzF,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAM;QACR,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAE5B,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACxE,wCAAwC;YACxC,IAAI,CAAC,qBAAqB,EAAE,CAAA;YAE5B,OAAM;QACR,CAAC;QAED,iCAAiC;QACjC,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC3B,CAAC,EAAE,CAAC,CAAC,CAAA;IACP,CAAC;IAED,OAAO,CAAE,IAAiC;QACxC,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClE,MAAM,IAAI,gBAAgB,CAAC,0CAA0C,IAAI,CAAC,UAAU,EAAE,CAAC,CAAA;QACzF,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAM;QACR,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAE7B,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACxE,wCAAwC;YACxC,IAAI,CAAC,qBAAqB,EAAE,CAAA;YAE5B,OAAM;QACR,CAAC;QAED,iCAAiC;QACjC,UAAU,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,kBAAkB,EAAE,CAAA;QAC3B,CAAC,EAAE,CAAC,CAAC,CAAA;IACP,CAAC;IAED;;;OAGG;IACH,MAAM,CAAE,IAAiC;QACvC,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YAC1B,kCAAkC;YAClC,OAAM;QACR,CAAC;QAED,iDAAiD;QACjD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YAClE,IAAI,CAAC,GAAG,CAAC,gCAAgC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;YAC3D,OAAM;QACR,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,kBAAkB,EAAE,CAAA;IAC3B,CAAC;IAID,gBAAgB,CAAE,GAAG,IAAW;QAC9B,yDAAyD;QACzD,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAExC,2EAA2E;QAC3E,WAAW;QACX,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAC5D,oEAAoE;YACpE,uEAAuE;YACvE,sEAAsE;YACtE,cAAc,CAAC,GAAG,EAAE;gBAClB,IAAI,CAAC,kBAAkB,EAAE,CAAA;YAC3B,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;QAExB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAA;QACrB,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAA;QAC3B,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAA;QACjC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAA;QAChC,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QAEhC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;QAC5B,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,gBAAgB,EAAE,CAAA;QAClC,IAAI,CAAC,aAAa,CAAC,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/C,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAE,GAAW;QAC5B,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;QAE5B,IAAI,IAAI,CAAC,UAAU,KAAK,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YACvE,IAAI,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAA;YAC9E,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;QAC5B,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,KAAK,QAAQ,EAAE,CAAC;YACvC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAA;QAClC,CAAC;QAED,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YACxC,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAA;QACnC,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAA;QAC7B,CAAC;QAED,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACjB,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACxD,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAChC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAA;gBACtB,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAA;gBAC3B,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAA;gBACjC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAA;gBAChC,IAAI,CAAC,aAAa,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAM;QACR,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;QAEvC,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAA;QAEjC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAA;QAE1C,IAAI,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC,iBAAiB,EAAE,CAAA;QAC1B,CAAC;IACH,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAEtC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAA;QAEhC,qEAAqE;QACrE,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;YACrD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IAES,gBAAgB;QACxB,2CAA2C;QAC3C,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAA;YAChE,IAAI,CAAC,sBAAsB,EAAE,CAAA;YAE7B,OAAO,KAAK,CAAA;QACd,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAA;YAC/D,OAAO,IAAI,CAAA;QACb,CAAC;QAED,sCAAsC;QACtC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAA;YACnE,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QAEvB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4CAA4C,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;QAEzF,IAAI,CAAC;YACH,IAAI,WAAW,GAAG,IAAI,CAAA;YACtB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAA;YAC9C,IAAI,SAAS,GAAG,CAAC,CAAA;YAEjB,mEAAmE;YACnE,yCAAyC;YACzC,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;gBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;gBAErG,yEAAyE;gBACzE,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;oBACd,WAAW,GAAG,KAAK,CAAA;oBACnB,MAAK;gBACP,CAAC;gBAED,kCAAkC;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;gBAE/C,4DAA4D;gBAC5D,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAA;gBAE3C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;gBAE3C,sEAAsE;gBACtE,kCAAkC;gBAClC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;gBACxC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAA;gBACpC,SAAS,IAAI,UAAU,CAAC,SAAS,CAAA;gBAEjC,IAAI,UAAU,CAAC,SAAS,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;oBACjD,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;oBACtC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;gBACpC,CAAC;gBAED,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,MAAK;gBACP,CAAC;YACH,CAAC;YAED,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wGAAwG,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAA;gBAC5K,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;gBAC9B,IAAI,CAAC,sBAAsB,EAAE,CAAA;YAC/B,CAAC;YAED,4EAA4E;YAC5E,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;YAChC,CAAC;YAED,OAAO,WAAW,CAAA;QACpB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;QAC1B,CAAC;IACH,CAAC;IAES,kBAAkB;QAC1B,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAA;gBAC9F,OAAM;YACR,CAAC;YAED,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAA;gBAC9E,OAAM;YACR,CAAC;YAED,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAA;gBAC5D,OAAM;YACR,CAAC;YAED,yDAAyD;YACzD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBAClE,IAAI,CAAC,GAAG,CAAC,kDAAkD,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;gBACzG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;gBACnD,OAAM;YACR,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAA;YACrC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;YAEvC,IAAI,CAAC,aAAa,CAAC,IAAI,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAA;QACjD,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,KAAK,CAAC,IAAI,IAAI,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;gBAC5E,IAAI,CAAC,GAAG,CAAC,oFAAoF,CAAC,CAAA;gBAC9F,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAA;YAC5B,CAAC;YAED,oEAAoE;YACpE,IAAI,CAAC,qBAAqB,EAAE,CAAA;QAC9B,CAAC;IACH,CAAC;IAEO,qBAAqB;QAC3B,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC1D,IAAI,CAAC,KAAK,CAAC,IAAI,iBAAiB,CAAC,yBAAyB,IAAI,CAAC,UAAU,CAAC,UAAU,sBAAsB,IAAI,CAAC,mBAAmB,oBAAoB,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;QAC3K,CAAC;IACH,CAAC;IAEO,sBAAsB;QAC5B,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,EAAE,CAAC;YACtC,OAAM;QACR,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC5D,IAAI,CAAC,KAAK,CAAC,IAAI,iBAAiB,CAAC,0BAA0B,IAAI,CAAC,WAAW,CAAC,UAAU,sBAAsB,IAAI,CAAC,oBAAoB,qBAAqB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QAChL,CAAC;IACH,CAAC;IAEM,iBAAiB;QACtB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAA;IAChC,CAAC;IAEM,YAAY;QACjB,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC;CAqCF"}
@@ -21,4 +21,8 @@ export declare class MaxEarlyStreamsError extends Error {
21
21
  static name: string;
22
22
  name: string;
23
23
  }
24
+ export declare class StreamClosedError extends Error {
25
+ static name: string;
26
+ name: string;
27
+ }
24
28
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,iBAAiB,EAAE,OAAO,CAAA;gBAEb,OAAO,oBAAwB,EAAE,KAAK,EAAE,iBAAiB;CAQvE;AAED,qBAAa,cAAe,SAAQ,KAAK;IACvC,MAAM,CAAC,IAAI,SAAmB;gBAEjB,OAAO,GAAE,MAA6B;CAIpD;AAED,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,MAAM,CAAC,IAAI,SAAuB;IAClC,IAAI,SAAuB;CAC5B;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,MAAM,CAAC,IAAI,SAAyB;IACpC,IAAI,SAAyB;CAC9B"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE1D;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,iBAAiB,EAAE,OAAO,CAAA;gBAEb,OAAO,oBAAwB,EAAE,KAAK,EAAE,iBAAiB;CAQvE;AAED,qBAAa,cAAe,SAAQ,KAAK;IACvC,MAAM,CAAC,IAAI,SAAmB;gBAEjB,OAAO,GAAE,MAA6B;CAIpD;AAED,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,MAAM,CAAC,IAAI,SAAuB;IAClC,IAAI,SAAuB;CAC5B;AAED,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,MAAM,CAAC,IAAI,SAAyB;IACpC,IAAI,SAAyB;CAC9B;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,MAAM,CAAC,IAAI,SAAsB;IACjC,IAAI,SAAsB;CAC3B"}
@@ -30,4 +30,8 @@ export class MaxEarlyStreamsError extends Error {
30
30
  static name = 'MaxEarlyStreamsError';
31
31
  name = 'MaxEarlyStreamsError';
32
32
  }
33
+ export class StreamClosedError extends Error {
34
+ static name = 'StreamClosedError';
35
+ name = 'StreamClosedError';
36
+ }
33
37
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,eAAe,CAAQ;IACvB,YAAY,CAAQ;IACpB,cAAc,CAAQ;IACtB,iBAAiB,CAAS;IAE1B,YAAa,OAAO,GAAG,qBAAqB,EAAE,KAAwB;QACpE,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;QAC5B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAA;QAC5C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;QACtC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAA;QAC1C,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAA;IAClD,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAA;IAE9B,YAAa,UAAkB,oBAAoB;QACjD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;IAC9B,CAAC;;AAGH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAC3C,MAAM,CAAC,IAAI,GAAG,oBAAoB,CAAA;IAClC,IAAI,GAAG,oBAAoB,CAAA;;AAG7B,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAC7C,MAAM,CAAC,IAAI,GAAG,sBAAsB,CAAA;IACpC,IAAI,GAAG,sBAAsB,CAAA"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,eAAe,CAAQ;IACvB,YAAY,CAAQ;IACpB,cAAc,CAAQ;IACtB,iBAAiB,CAAS;IAE1B,YAAa,OAAO,GAAG,qBAAqB,EAAE,KAAwB;QACpE,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;QAC5B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAA;QAC5C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAA;QACtC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAA;QAC1C,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAA;IAClD,CAAC;CACF;AAED,MAAM,OAAO,cAAe,SAAQ,KAAK;IACvC,MAAM,CAAC,IAAI,GAAG,gBAAgB,CAAA;IAE9B,YAAa,UAAkB,oBAAoB;QACjD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,gBAAgB,CAAA;IAC9B,CAAC;;AAGH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAC3C,MAAM,CAAC,IAAI,GAAG,oBAAoB,CAAA;IAClC,IAAI,GAAG,oBAAoB,CAAA;;AAG7B,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAC7C,MAAM,CAAC,IAAI,GAAG,sBAAsB,CAAA;IACpC,IAAI,GAAG,sBAAsB,CAAA;;AAG/B,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C,MAAM,CAAC,IAAI,GAAG,mBAAmB,CAAA;IACjC,IAAI,GAAG,mBAAmB,CAAA"}
@@ -42,7 +42,7 @@ function isMultiaddrConnection(obj) {
42
42
  }
43
43
  function isEOF(obj) {
44
44
  if (isStream(obj)) {
45
- return obj.readStatus === 'closing' || obj.readStatus === 'closed';
45
+ return obj.remoteWriteStatus !== 'writable' && obj.readBufferLength === 0;
46
46
  }
47
47
  if (isMultiaddrConnection(obj)) {
48
48
  return obj.status !== 'open';
@@ -1 +1 @@
1
- {"version":3,"file":"stream-utils.js","sourceRoot":"","sources":["../../src/stream-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stream-utils.js","sourceRoot":"","sources":["../../src/stream-utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@libp2p/utils",
3
- "version": "7.0.2",
3
+ "version": "7.0.3-72a7ea10a",
4
4
  "description": "Package to aggregate shared logic and dependencies for the libp2p ecosystem",
5
5
  "license": "Apache-2.0 OR MIT",
6
6
  "homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/utils#readme",
@@ -46,9 +46,9 @@
46
46
  "dependencies": {
47
47
  "@chainsafe/is-ip": "^2.1.0",
48
48
  "@chainsafe/netmask": "^2.0.0",
49
- "@libp2p/crypto": "^5.1.10",
50
- "@libp2p/interface": "^3.0.0",
51
- "@libp2p/logger": "^6.0.2",
49
+ "@libp2p/crypto": "5.1.11-72a7ea10a",
50
+ "@libp2p/interface": "3.0.1-72a7ea10a",
51
+ "@libp2p/logger": "6.0.3-72a7ea10a",
52
52
  "@multiformats/multiaddr": "^13.0.1",
53
53
  "@sindresorhus/fnv1a": "^3.1.0",
54
54
  "any-signal": "^4.1.1",
@@ -69,7 +69,7 @@
69
69
  "uint8arrays": "^5.1.0"
70
70
  },
71
71
  "devDependencies": {
72
- "@libp2p/peer-id": "^6.0.1",
72
+ "@libp2p/peer-id": "6.0.2-72a7ea10a",
73
73
  "@types/netmask": "^2.0.5",
74
74
  "aegir": "^47.0.22",
75
75
  "benchmark": "^2.1.4",
@@ -1,6 +1,8 @@
1
1
  import { StreamResetError, TypedEventEmitter, StreamMessageEvent, StreamBufferError, StreamResetEvent, StreamAbortEvent, StreamCloseEvent, StreamStateError } from '@libp2p/interface'
2
2
  import { pushable } from 'it-pushable'
3
+ import { raceSignal } from 'race-signal'
3
4
  import { Uint8ArrayList } from 'uint8arraylist'
5
+ import { StreamClosedError } from './errors.ts'
4
6
  import type { MessageStreamEvents, MessageStreamStatus, MessageStream, AbortOptions, MessageStreamTimeline, MessageStreamDirection, EventHandler, StreamOptions, MessageStreamReadStatus, MessageStreamWriteStatus } from '@libp2p/interface'
5
7
  import type { Logger } from '@libp2p/logger'
6
8
 
@@ -63,6 +65,8 @@ export abstract class AbstractMessageStream<Timeline extends MessageStreamTimeli
63
65
  protected readonly writeBuffer: Uint8ArrayList
64
66
  protected sendingData: boolean
65
67
 
68
+ private onDrainPromise?: PromiseWithResolvers<void>
69
+
66
70
  constructor (init: MessageStreamInit) {
67
71
  super()
68
72
 
@@ -96,8 +100,35 @@ export abstract class AbstractMessageStream<Timeline extends MessageStreamTimeli
96
100
  this.writableNeedsDrain = false
97
101
  this.processSendQueue()
98
102
  }
103
+
104
+ this.onDrainPromise?.resolve()
99
105
  }
100
106
  this.addEventListener('drain', continueSendingOnDrain)
107
+
108
+ const rejectOnDrainOnClose = (evt: StreamCloseEvent): void => {
109
+ this.onDrainPromise?.reject(evt.error ?? new StreamClosedError())
110
+ }
111
+ this.addEventListener('close', rejectOnDrainOnClose)
112
+ }
113
+
114
+ get readBufferLength (): number {
115
+ return this.readBuffer.byteLength
116
+ }
117
+
118
+ get writeBufferLength (): number {
119
+ return this.writeBuffer.byteLength
120
+ }
121
+
122
+ async onDrain (options?: AbortOptions): Promise<void> {
123
+ if (this.writableNeedsDrain !== true) {
124
+ return Promise.resolve()
125
+ }
126
+
127
+ if (this.onDrainPromise == null) {
128
+ this.onDrainPromise = Promise.withResolvers()
129
+ }
130
+
131
+ return raceSignal(this.onDrainPromise.promise, options?.signal)
101
132
  }
102
133
 
103
134
  async * [Symbol.asyncIterator] (): AsyncGenerator<Uint8Array | Uint8ArrayList> {
@@ -238,6 +269,30 @@ export abstract class AbstractMessageStream<Timeline extends MessageStreamTimeli
238
269
  }, 0)
239
270
  }
240
271
 
272
+ unshift (data: Uint8Array | Uint8ArrayList): void {
273
+ if (this.readStatus === 'closed' || this.readStatus === 'closing') {
274
+ throw new StreamStateError(`Cannot push data onto a stream that is ${this.readStatus}`)
275
+ }
276
+
277
+ if (data.byteLength === 0) {
278
+ return
279
+ }
280
+
281
+ this.readBuffer.prepend(data)
282
+
283
+ if (this.readStatus === 'paused' || this.listenerCount('message') === 0) {
284
+ // abort if the read buffer is too large
285
+ this.checkReadBufferLength()
286
+
287
+ return
288
+ }
289
+
290
+ // TODO: use a microtask instead?
291
+ setTimeout(() => {
292
+ this.dispatchReadBuffer()
293
+ }, 0)
294
+ }
295
+
241
296
  /**
242
297
  * When an extending class reads data from it's implementation-specific source,
243
298
  * call this method to allow the stream consumer to read the data.
package/src/errors.ts CHANGED
@@ -37,3 +37,8 @@ export class MaxEarlyStreamsError extends Error {
37
37
  static name = 'MaxEarlyStreamsError'
38
38
  name = 'MaxEarlyStreamsError'
39
39
  }
40
+
41
+ export class StreamClosedError extends Error {
42
+ static name = 'StreamClosedError'
43
+ name = 'StreamClosedError'
44
+ }
@@ -96,7 +96,7 @@ function isMultiaddrConnection (obj?: any): obj is MultiaddrConnection {
96
96
 
97
97
  function isEOF (obj?: any): boolean {
98
98
  if (isStream(obj)) {
99
- return obj.readStatus === 'closing' || obj.readStatus === 'closed'
99
+ return obj.remoteWriteStatus !== 'writable' && obj.readBufferLength === 0
100
100
  }
101
101
 
102
102
  if (isMultiaddrConnection(obj)) {
@@ -1,123 +0,0 @@
1
- {
2
- "AbstractMessageStream": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.AbstractMessageStream.html",
3
- "AbstractMultiaddrConnection": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.AbstractMultiaddrConnection.html",
4
- "AbstractStream": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.AbstractStream.html",
5
- "AbstractStreamMuxer": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.AbstractStreamMuxer.html",
6
- "AdaptiveTimeout": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.AdaptiveTimeout.html",
7
- "BloomFilter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.BloomFilter.html",
8
- "CuckooFilter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.CuckooFilter.html",
9
- "InvalidDataLengthError": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.InvalidDataLengthError.html",
10
- "InvalidDataLengthLengthError": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.InvalidDataLengthLengthError.html",
11
- "InvalidMessageLengthError": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.InvalidMessageLengthError.html",
12
- "LengthPrefixedDecoder": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.LengthPrefixedDecoder.html",
13
- "MaxEarlyStreamsError": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.MaxEarlyStreamsError.html",
14
- "MemoryStorage": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.MemoryStorage.html",
15
- "MockStream": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.MockStream.html",
16
- "MovingAverage": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.MovingAverage.html",
17
- "PeerQueue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.PeerQueue.html",
18
- "PriorityQueue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.PriorityQueue.html",
19
- "Queue": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.Queue.html",
20
- "QueueFullError": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.QueueFullError.html",
21
- "RateLimiter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.RateLimiter.html",
22
- "RateLimitError": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.RateLimitError.html",
23
- "ScalableCuckooFilter": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.ScalableCuckooFilter.html",
24
- "UnexpectedEOFError": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.UnexpectedEOFError.html",
25
- "UnwrappedError": "https://libp2p.github.io/js-libp2p/classes/_libp2p_utils.UnwrappedError.html",
26
- "AbstractMultiaddrConnectionInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.AbstractMultiaddrConnectionInit.html",
27
- "AbstractStreamInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.AbstractStreamInit.html",
28
- "AbstractStreamMuxerInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.AbstractStreamMuxerInit.html",
29
- "AdaptiveTimeoutInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.AdaptiveTimeoutInit.html",
30
- "AdaptiveTimeoutSignal": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.AdaptiveTimeoutSignal.html",
31
- "BloomFilterOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.BloomFilterOptions.html",
32
- "Bucket": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.Bucket.html",
33
- "ByteStream": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ByteStream.html",
34
- "ByteStreamOpts": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ByteStreamOpts.html",
35
- "Comparator": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.Comparator.html",
36
- "CreateTrackedListInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.CreateTrackedListInit.html",
37
- "CreateTrackedMapInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.CreateTrackedMapInit.html",
38
- "CuckooFilterInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.CuckooFilterInit.html",
39
- "DebouncedFunction": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.DebouncedFunction.html",
40
- "DNS4NetConfig": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.DNS4NetConfig.html",
41
- "DNS6NetConfig": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.DNS6NetConfig.html",
42
- "DNSAddrNetConfig": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.DNSAddrNetConfig.html",
43
- "DNSNetConfig": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.DNSNetConfig.html",
44
- "Filter": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.Filter.html",
45
- "Fingerprint": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.Fingerprint.html",
46
- "GetKeySecDurationOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.GetKeySecDurationOptions.html",
47
- "GetTimeoutSignalOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.GetTimeoutSignalOptions.html",
48
- "Hash": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.Hash.html",
49
- "IP4NetConfig": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.IP4NetConfig.html",
50
- "IP6NetConfig": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.IP6NetConfig.html",
51
- "Job": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.Job.html",
52
- "JobMatcher": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.JobMatcher.html",
53
- "JobRecipient": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.JobRecipient.html",
54
- "JobTimeline": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.JobTimeline.html",
55
- "LengthPrefixedDecoderInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.LengthPrefixedDecoderInit.html",
56
- "LengthPrefixedStream": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.LengthPrefixedStream.html",
57
- "LengthPrefixedStreamOpts": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.LengthPrefixedStreamOpts.html",
58
- "MessageStreamInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.MessageStreamInit.html",
59
- "MockMultiaddrConnectionInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.MockMultiaddrConnectionInit.html",
60
- "MockMuxedStreamInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.MockMuxedStreamInit.html",
61
- "MultiaddrConnectionPairOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.MultiaddrConnectionPairOptions.html",
62
- "PeerQueueJobOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.PeerQueueJobOptions.html",
63
- "PriorityQueueJobOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.PriorityQueueJobOptions.html",
64
- "ProtobufDecoder": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ProtobufDecoder.html",
65
- "ProtobufEncoder": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ProtobufEncoder.html",
66
- "ProtobufMessageStream": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ProtobufMessageStream.html",
67
- "ProtobufStream": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ProtobufStream.html",
68
- "ProtobufStreamOpts": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ProtobufStreamOpts.html",
69
- "QueueEvents": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.QueueEvents.html",
70
- "QueueInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.QueueInit.html",
71
- "QueueJobFailure": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.QueueJobFailure.html",
72
- "QueueJobSuccess": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.QueueJobSuccess.html",
73
- "RateLimiterInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.RateLimiterInit.html",
74
- "RateLimiterResult": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.RateLimiterResult.html",
75
- "RateRecord": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.RateRecord.html",
76
- "ReadBytesOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ReadBytesOptions.html",
77
- "RepeatingTask": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.RepeatingTask.html",
78
- "RepeatingTaskOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.RepeatingTaskOptions.html",
79
- "RunFunction": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.RunFunction.html",
80
- "ScalableCuckooFilterInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.ScalableCuckooFilterInit.html",
81
- "SendResult": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.SendResult.html",
82
- "StreamPairOptions": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.StreamPairOptions.html",
83
- "TrackedMapInit": "https://libp2p.github.io/js-libp2p/interfaces/_libp2p_utils.TrackedMapInit.html",
84
- "JobStatus": "https://libp2p.github.io/js-libp2p/types/_libp2p_utils.JobStatus.html",
85
- "NetConfig": "https://libp2p.github.io/js-libp2p/types/_libp2p_utils.NetConfig.html",
86
- "PipeInput": "https://libp2p.github.io/js-libp2p/types/_libp2p_utils.PipeInput.html",
87
- "DEFAULT_FAILURE_MULTIPLIER": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.DEFAULT_FAILURE_MULTIPLIER.html",
88
- "DEFAULT_INTERVAL": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.DEFAULT_INTERVAL.html",
89
- "DEFAULT_MAX_TIMEOUT": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.DEFAULT_MAX_TIMEOUT.html",
90
- "DEFAULT_MIN_TIMEOUT": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.DEFAULT_MIN_TIMEOUT.html",
91
- "DEFAULT_TIMEOUT_MULTIPLIER": "https://libp2p.github.io/js-libp2p/variables/_libp2p_utils.DEFAULT_TIMEOUT_MULTIPLIER.html",
92
- "byteStream": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.byteStream.html",
93
- "createBloomFilter": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.createBloomFilter.html",
94
- "createCuckooFilter": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.createCuckooFilter.html",
95
- "createScalableCuckooFilter": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.createScalableCuckooFilter.html",
96
- "debounce": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.debounce.html",
97
- "echo": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.echo.html",
98
- "echoStream": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.echoStream.html",
99
- "getNetConfig": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.getNetConfig.html",
100
- "getThinWaistAddresses": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.getThinWaistAddresses.html",
101
- "ipPortToMultiaddr": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.ipPortToMultiaddr.html",
102
- "isAsyncGenerator": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isAsyncGenerator.html",
103
- "isGenerator": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isGenerator.html",
104
- "isGlobalUnicast": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isGlobalUnicast.html",
105
- "isGlobalUnicastIp": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isGlobalUnicastIp.html",
106
- "isLinkLocal": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isLinkLocal.html",
107
- "isLinkLocalIp": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isLinkLocalIp.html",
108
- "isLoopback": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isLoopback.html",
109
- "isNetworkAddress": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isNetworkAddress.html",
110
- "isPrivate": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isPrivate.html",
111
- "isPrivateIp": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isPrivateIp.html",
112
- "isPromise": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.isPromise.html",
113
- "lpStream": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.lpStream.html",
114
- "messageStreamToDuplex": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.messageStreamToDuplex.html",
115
- "mockMuxer": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.mockMuxer.html",
116
- "multiaddrConnectionPair": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.multiaddrConnectionPair.html",
117
- "pbStream": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.pbStream.html",
118
- "pipe": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.pipe.html",
119
- "repeatingTask": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.repeatingTask.html",
120
- "streamPair": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.streamPair.html",
121
- "trackedList": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.trackedList.html",
122
- "trackedMap": "https://libp2p.github.io/js-libp2p/functions/_libp2p_utils.trackedMap.html"
123
- }