@libp2p/utils 6.7.2 → 7.0.0-049bfa0fa

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 (160) hide show
  1. package/README.md +16 -1
  2. package/dist/index.min.js +7 -1
  3. package/dist/index.min.js.map +4 -4
  4. package/dist/src/abstract-message-stream.d.ts +129 -0
  5. package/dist/src/abstract-message-stream.d.ts.map +1 -0
  6. package/dist/src/abstract-message-stream.js +393 -0
  7. package/dist/src/abstract-message-stream.js.map +1 -0
  8. package/dist/src/abstract-multiaddr-connection.d.ts +26 -0
  9. package/dist/src/abstract-multiaddr-connection.d.ts.map +1 -0
  10. package/dist/src/abstract-multiaddr-connection.js +66 -0
  11. package/dist/src/abstract-multiaddr-connection.js.map +1 -0
  12. package/dist/src/abstract-stream-muxer.d.ts +53 -0
  13. package/dist/src/abstract-stream-muxer.d.ts.map +1 -0
  14. package/dist/src/abstract-stream-muxer.js +169 -0
  15. package/dist/src/abstract-stream-muxer.js.map +1 -0
  16. package/dist/src/abstract-stream.d.ts +14 -130
  17. package/dist/src/abstract-stream.d.ts.map +1 -1
  18. package/dist/src/abstract-stream.js +39 -321
  19. package/dist/src/abstract-stream.js.map +1 -1
  20. package/dist/src/errors.d.ts +8 -0
  21. package/dist/src/errors.d.ts.map +1 -1
  22. package/dist/src/errors.js +8 -0
  23. package/dist/src/errors.js.map +1 -1
  24. package/dist/src/get-thin-waist-addresses.browser.d.ts +1 -1
  25. package/dist/src/get-thin-waist-addresses.browser.d.ts.map +1 -1
  26. package/dist/src/get-thin-waist-addresses.browser.js +4 -3
  27. package/dist/src/get-thin-waist-addresses.browser.js.map +1 -1
  28. package/dist/src/get-thin-waist-addresses.d.ts +1 -1
  29. package/dist/src/get-thin-waist-addresses.d.ts.map +1 -1
  30. package/dist/src/get-thin-waist-addresses.js +7 -9
  31. package/dist/src/get-thin-waist-addresses.js.map +1 -1
  32. package/dist/src/index.d.ts +31 -1
  33. package/dist/src/index.d.ts.map +1 -1
  34. package/dist/src/index.js +31 -1
  35. package/dist/src/index.js.map +1 -1
  36. package/dist/src/length-prefixed-decoder.d.ts +37 -0
  37. package/dist/src/length-prefixed-decoder.d.ts.map +1 -0
  38. package/dist/src/length-prefixed-decoder.js +64 -0
  39. package/dist/src/length-prefixed-decoder.js.map +1 -0
  40. package/dist/src/message-queue.d.ts +61 -0
  41. package/dist/src/message-queue.d.ts.map +1 -0
  42. package/dist/src/message-queue.js +93 -0
  43. package/dist/src/message-queue.js.map +1 -0
  44. package/dist/src/mock-muxer.d.ts +57 -0
  45. package/dist/src/mock-muxer.d.ts.map +1 -0
  46. package/dist/src/mock-muxer.js +204 -0
  47. package/dist/src/mock-muxer.js.map +1 -0
  48. package/dist/src/mock-stream.d.ts +31 -0
  49. package/dist/src/mock-stream.d.ts.map +1 -0
  50. package/dist/src/mock-stream.js +69 -0
  51. package/dist/src/mock-stream.js.map +1 -0
  52. package/dist/src/multiaddr/get-net-config.d.ts +55 -0
  53. package/dist/src/multiaddr/get-net-config.d.ts.map +1 -0
  54. package/dist/src/multiaddr/get-net-config.js +54 -0
  55. package/dist/src/multiaddr/get-net-config.js.map +1 -0
  56. package/dist/src/multiaddr/index.d.ts +7 -0
  57. package/dist/src/multiaddr/index.d.ts.map +1 -0
  58. package/dist/src/multiaddr/index.js +7 -0
  59. package/dist/src/multiaddr/index.js.map +1 -0
  60. package/dist/src/multiaddr/is-global-unicast.d.ts.map +1 -1
  61. package/dist/src/multiaddr/is-global-unicast.js +8 -9
  62. package/dist/src/multiaddr/is-global-unicast.js.map +1 -1
  63. package/dist/src/multiaddr/is-link-local.d.ts.map +1 -1
  64. package/dist/src/multiaddr/is-link-local.js +11 -16
  65. package/dist/src/multiaddr/is-link-local.js.map +1 -1
  66. package/dist/src/multiaddr/is-loopback.d.ts.map +1 -1
  67. package/dist/src/multiaddr/is-loopback.js +12 -5
  68. package/dist/src/multiaddr/is-loopback.js.map +1 -1
  69. package/dist/src/multiaddr/is-network-address.d.ts.map +1 -1
  70. package/dist/src/multiaddr/is-network-address.js +4 -16
  71. package/dist/src/multiaddr/is-network-address.js.map +1 -1
  72. package/dist/src/multiaddr/is-private.d.ts.map +1 -1
  73. package/dist/src/multiaddr/is-private.js +9 -10
  74. package/dist/src/multiaddr/is-private.js.map +1 -1
  75. package/dist/src/multiaddr/utils.d.ts +5 -0
  76. package/dist/src/multiaddr/utils.d.ts.map +1 -0
  77. package/dist/src/multiaddr/utils.js +32 -0
  78. package/dist/src/multiaddr/utils.js.map +1 -0
  79. package/dist/src/multiaddr-connection-pair.d.ts +25 -0
  80. package/dist/src/multiaddr-connection-pair.d.ts.map +1 -0
  81. package/dist/src/multiaddr-connection-pair.js +103 -0
  82. package/dist/src/multiaddr-connection-pair.js.map +1 -0
  83. package/dist/src/queue/index.d.ts +3 -6
  84. package/dist/src/queue/index.d.ts.map +1 -1
  85. package/dist/src/queue/index.js +20 -4
  86. package/dist/src/queue/index.js.map +1 -1
  87. package/dist/src/rate-limiter.d.ts +1 -15
  88. package/dist/src/rate-limiter.d.ts.map +1 -1
  89. package/dist/src/rate-limiter.js +1 -14
  90. package/dist/src/rate-limiter.js.map +1 -1
  91. package/dist/src/stream-pair.d.ts +42 -0
  92. package/dist/src/stream-pair.d.ts.map +1 -0
  93. package/dist/src/stream-pair.js +40 -0
  94. package/dist/src/stream-pair.js.map +1 -0
  95. package/dist/src/stream-utils.d.ts +191 -0
  96. package/dist/src/stream-utils.d.ts.map +1 -0
  97. package/dist/src/stream-utils.js +370 -0
  98. package/dist/src/stream-utils.js.map +1 -0
  99. package/package.json +15 -162
  100. package/src/abstract-message-stream.ts +553 -0
  101. package/src/abstract-multiaddr-connection.ts +93 -0
  102. package/src/abstract-stream-muxer.ts +239 -0
  103. package/src/abstract-stream.ts +51 -464
  104. package/src/errors.ts +10 -0
  105. package/src/get-thin-waist-addresses.browser.ts +5 -4
  106. package/src/get-thin-waist-addresses.ts +8 -12
  107. package/src/index.ts +31 -1
  108. package/src/length-prefixed-decoder.ts +98 -0
  109. package/src/message-queue.ts +156 -0
  110. package/src/mock-muxer.ts +304 -0
  111. package/src/mock-stream.ts +101 -0
  112. package/src/multiaddr/get-net-config.ts +112 -0
  113. package/src/multiaddr/index.ts +6 -0
  114. package/src/multiaddr/is-global-unicast.ts +8 -11
  115. package/src/multiaddr/is-link-local.ts +11 -20
  116. package/src/multiaddr/is-loopback.ts +12 -7
  117. package/src/multiaddr/is-network-address.ts +4 -19
  118. package/src/multiaddr/is-private.ts +9 -14
  119. package/src/multiaddr/utils.ts +46 -0
  120. package/src/multiaddr-connection-pair.ts +147 -0
  121. package/src/queue/index.ts +24 -11
  122. package/src/rate-limiter.ts +3 -30
  123. package/src/stream-pair.ts +90 -0
  124. package/src/stream-utils.ts +865 -0
  125. package/dist/src/abort-options.d.ts +0 -7
  126. package/dist/src/abort-options.d.ts.map +0 -1
  127. package/dist/src/abort-options.js +0 -14
  128. package/dist/src/abort-options.js.map +0 -1
  129. package/dist/src/array-equals.d.ts +0 -24
  130. package/dist/src/array-equals.d.ts.map +0 -1
  131. package/dist/src/array-equals.js +0 -31
  132. package/dist/src/array-equals.js.map +0 -1
  133. package/dist/src/close-source.d.ts +0 -4
  134. package/dist/src/close-source.d.ts.map +0 -1
  135. package/dist/src/close-source.js +0 -11
  136. package/dist/src/close-source.js.map +0 -1
  137. package/dist/src/close.d.ts +0 -21
  138. package/dist/src/close.d.ts.map +0 -1
  139. package/dist/src/close.js +0 -49
  140. package/dist/src/close.js.map +0 -1
  141. package/dist/src/merge-options.d.ts +0 -7
  142. package/dist/src/merge-options.d.ts.map +0 -1
  143. package/dist/src/merge-options.js +0 -128
  144. package/dist/src/merge-options.js.map +0 -1
  145. package/dist/src/multiaddr/is-ip-based.d.ts +0 -6
  146. package/dist/src/multiaddr/is-ip-based.d.ts.map +0 -1
  147. package/dist/src/multiaddr/is-ip-based.js +0 -18
  148. package/dist/src/multiaddr/is-ip-based.js.map +0 -1
  149. package/dist/src/stream-to-ma-conn.d.ts +0 -23
  150. package/dist/src/stream-to-ma-conn.d.ts.map +0 -1
  151. package/dist/src/stream-to-ma-conn.js +0 -75
  152. package/dist/src/stream-to-ma-conn.js.map +0 -1
  153. package/dist/typedoc-urls.json +0 -147
  154. package/src/abort-options.ts +0 -20
  155. package/src/array-equals.ts +0 -34
  156. package/src/close-source.ts +0 -14
  157. package/src/close.ts +0 -65
  158. package/src/merge-options.ts +0 -161
  159. package/src/multiaddr/is-ip-based.ts +0 -21
  160. package/src/stream-to-ma-conn.ts +0 -106
@@ -0,0 +1,370 @@
1
+ import { StreamMessageEvent, StreamCloseEvent, InvalidParametersError } from '@libp2p/interface';
2
+ import { pipe as itPipe } from 'it-pipe';
3
+ import { pushable } from 'it-pushable';
4
+ import { pEvent } from 'p-event';
5
+ import { raceSignal } from 'race-signal';
6
+ import * as varint from 'uint8-varint';
7
+ import { Uint8ArrayList } from 'uint8arraylist';
8
+ import { UnexpectedEOFError } from './errors.js';
9
+ const DEFAULT_MAX_BUFFER_SIZE = 4_194_304;
10
+ export class UnwrappedError extends Error {
11
+ static name = 'UnwrappedError';
12
+ name = 'UnwrappedError';
13
+ }
14
+ /**
15
+ * The reported length of the next data message was not a positive integer
16
+ */
17
+ export class InvalidMessageLengthError extends Error {
18
+ name = 'InvalidMessageLengthError';
19
+ code = 'ERR_INVALID_MSG_LENGTH';
20
+ }
21
+ /**
22
+ * The reported length of the next data message was larger than the configured
23
+ * max allowable value
24
+ */
25
+ export class InvalidDataLengthError extends Error {
26
+ name = 'InvalidDataLengthError';
27
+ code = 'ERR_MSG_DATA_TOO_LONG';
28
+ }
29
+ /**
30
+ * The varint used to specify the length of the next data message contained more
31
+ * bytes than the configured max allowable value
32
+ */
33
+ export class InvalidDataLengthLengthError extends Error {
34
+ name = 'InvalidDataLengthLengthError';
35
+ code = 'ERR_MSG_LENGTH_TOO_LONG';
36
+ }
37
+ function isStream(obj) {
38
+ return typeof obj?.closeRead === 'function';
39
+ }
40
+ function isMultiaddrConnection(obj) {
41
+ return typeof obj?.close === 'function';
42
+ }
43
+ function isEOF(obj) {
44
+ if (isStream(obj)) {
45
+ return obj.readStatus === 'closing' || obj.readStatus === 'closed';
46
+ }
47
+ if (isMultiaddrConnection(obj)) {
48
+ return obj.status !== 'open';
49
+ }
50
+ return false;
51
+ }
52
+ function isValid(obj) {
53
+ return obj?.addEventListener != null && obj?.removeEventListener != null && obj?.send != null && obj?.push != null && obj?.log != null;
54
+ }
55
+ export function byteStream(stream, opts) {
56
+ const maxBufferSize = opts?.maxBufferSize ?? DEFAULT_MAX_BUFFER_SIZE;
57
+ const readBuffer = new Uint8ArrayList();
58
+ let hasBytes = Promise.withResolvers();
59
+ let unwrapped = false;
60
+ if (!isValid(stream)) {
61
+ throw new InvalidParametersError('Argument should be a Stream or a Multiaddr');
62
+ }
63
+ const byteStreamOnMessageListener = (evt) => {
64
+ readBuffer.append(evt.data);
65
+ if (readBuffer.byteLength > maxBufferSize) {
66
+ const readBufferSize = readBuffer.byteLength;
67
+ readBuffer.consume(readBuffer.byteLength);
68
+ hasBytes.reject(new Error(`Read buffer overflow - ${readBufferSize} > ${maxBufferSize}`));
69
+ }
70
+ hasBytes.resolve();
71
+ };
72
+ stream.addEventListener('message', byteStreamOnMessageListener);
73
+ const byteStreamOnCloseListener = (evt) => {
74
+ if (evt.error != null) {
75
+ hasBytes.reject(evt.error);
76
+ }
77
+ else {
78
+ hasBytes.resolve();
79
+ }
80
+ };
81
+ stream.addEventListener('close', byteStreamOnCloseListener);
82
+ const byteStreamOnRemoteCloseWrite = () => {
83
+ hasBytes.resolve();
84
+ };
85
+ stream.addEventListener('remoteCloseWrite', byteStreamOnRemoteCloseWrite);
86
+ const byteStream = {
87
+ readBuffer,
88
+ // @ts-expect-error options type prevents type inference
89
+ async read(options) {
90
+ if (unwrapped === true) {
91
+ throw new UnwrappedError('Stream was unwrapped');
92
+ }
93
+ if (isEOF(stream)) {
94
+ if (options?.bytes == null) {
95
+ return null;
96
+ }
97
+ if (readBuffer.byteLength < options.bytes) {
98
+ stream.log.error('closed after reading %d/%d bytes', readBuffer.byteLength, options.bytes);
99
+ throw new UnexpectedEOFError(`Unexpected EOF - stream closed after reading ${readBuffer.byteLength}/${options.bytes} bytes`);
100
+ }
101
+ }
102
+ const bytesToRead = options?.bytes ?? 1;
103
+ while (true) {
104
+ if (readBuffer.byteLength >= bytesToRead) {
105
+ // if we are about to exit the loop this promise will not be awaited
106
+ // so resolve it to prevent and unhandled promise rejections that may
107
+ // occur
108
+ hasBytes.resolve();
109
+ break;
110
+ }
111
+ await raceSignal(hasBytes.promise, options?.signal);
112
+ if (isEOF(stream)) {
113
+ if (readBuffer.byteLength === 0 && options?.bytes == null) {
114
+ return null;
115
+ }
116
+ break;
117
+ }
118
+ hasBytes = Promise.withResolvers();
119
+ }
120
+ const toRead = options?.bytes ?? readBuffer.byteLength;
121
+ if (readBuffer.byteLength < toRead) {
122
+ if (isEOF(stream)) {
123
+ stream.log.error('closed while reading %d/%d bytes', readBuffer.byteLength, toRead);
124
+ throw new UnexpectedEOFError(`Unexpected EOF - stream closed while reading ${readBuffer.byteLength}/${toRead} bytes`);
125
+ }
126
+ return byteStream.read(options);
127
+ }
128
+ const output = readBuffer.sublist(0, toRead);
129
+ readBuffer.consume(toRead);
130
+ return output;
131
+ },
132
+ async write(data, options) {
133
+ if (unwrapped === true) {
134
+ throw new UnwrappedError('Stream was unwrapped');
135
+ }
136
+ if (!stream.send(data)) {
137
+ await pEvent(stream, 'drain', {
138
+ signal: options?.signal,
139
+ rejectionEvents: ['close']
140
+ });
141
+ }
142
+ },
143
+ unwrap() {
144
+ // already unwrapped, just return the original stream
145
+ if (unwrapped) {
146
+ return stream;
147
+ }
148
+ // only unwrap once
149
+ unwrapped = true;
150
+ stream.removeEventListener('message', byteStreamOnMessageListener);
151
+ stream.removeEventListener('close', byteStreamOnCloseListener);
152
+ stream.removeEventListener('remoteCloseWrite', byteStreamOnRemoteCloseWrite);
153
+ // emit any unread data
154
+ if (readBuffer.byteLength > 0) {
155
+ stream.log('stream unwrapped with %d unread bytes', readBuffer.byteLength);
156
+ stream.push(readBuffer);
157
+ }
158
+ return stream;
159
+ }
160
+ };
161
+ return byteStream;
162
+ }
163
+ export function lpStream(stream, opts = {}) {
164
+ const bytes = byteStream(stream, opts);
165
+ if (opts.maxDataLength != null && opts.maxLengthLength == null) {
166
+ // if max data length is set but max length length is not, calculate the
167
+ // max length length needed to encode max data length
168
+ opts.maxLengthLength = varint.encodingLength(opts.maxDataLength);
169
+ }
170
+ const decodeLength = opts?.lengthDecoder ?? varint.decode;
171
+ const encodeLength = opts?.lengthEncoder ?? varint.encode;
172
+ const lpStream = {
173
+ async read(options) {
174
+ let dataLength = -1;
175
+ const lengthBuffer = new Uint8ArrayList();
176
+ while (true) {
177
+ // read one byte at a time until we can decode a varint
178
+ const buf = await bytes.read({
179
+ ...options,
180
+ bytes: 1
181
+ });
182
+ // the underlying resource closed gracefully
183
+ if (buf == null) {
184
+ break;
185
+ }
186
+ // append byte and try to decode
187
+ lengthBuffer.append(buf);
188
+ try {
189
+ dataLength = decodeLength(lengthBuffer);
190
+ }
191
+ catch (err) {
192
+ if (err instanceof RangeError) {
193
+ continue;
194
+ }
195
+ throw err;
196
+ }
197
+ if (dataLength < 0) {
198
+ throw new InvalidMessageLengthError('Invalid message length');
199
+ }
200
+ if (opts?.maxLengthLength != null && lengthBuffer.byteLength > opts.maxLengthLength) {
201
+ throw new InvalidDataLengthLengthError(`Message length length too long - ${lengthBuffer.byteLength} > ${opts.maxLengthLength}`);
202
+ }
203
+ if (dataLength > -1) {
204
+ break;
205
+ }
206
+ }
207
+ if (opts?.maxDataLength != null && dataLength > opts.maxDataLength) {
208
+ throw new InvalidDataLengthError(`Message length too long - ${dataLength} > ${opts.maxDataLength}`);
209
+ }
210
+ const buf = await bytes.read({
211
+ ...options,
212
+ bytes: dataLength
213
+ });
214
+ if (buf == null) {
215
+ stream.log.error('tried to read %d bytes but the stream closed', dataLength);
216
+ throw new UnexpectedEOFError(`Unexpected EOF - tried to read ${dataLength} bytes but the stream closed`);
217
+ }
218
+ if (buf.byteLength !== dataLength) {
219
+ stream.log.error('read %d/%d bytes before the stream closed', buf.byteLength, dataLength);
220
+ throw new UnexpectedEOFError(`Unexpected EOF - read ${buf.byteLength}/${dataLength} bytes before the stream closed`);
221
+ }
222
+ return buf;
223
+ },
224
+ async write(data, options) {
225
+ // encode, write
226
+ await bytes.write(new Uint8ArrayList(encodeLength(data.byteLength), data), options);
227
+ },
228
+ async writeV(data, options) {
229
+ const list = new Uint8ArrayList(...data.flatMap(buf => ([encodeLength(buf.byteLength), buf])));
230
+ // encode, write
231
+ await bytes.write(list, options);
232
+ },
233
+ unwrap() {
234
+ return bytes.unwrap();
235
+ }
236
+ };
237
+ return lpStream;
238
+ }
239
+ export function pbStream(stream, opts) {
240
+ const lp = lpStream(stream, opts);
241
+ const pbStream = {
242
+ read: async (proto, options) => {
243
+ // readLP, decode
244
+ const value = await lp.read(options);
245
+ return proto.decode(value);
246
+ },
247
+ write: async (message, proto, options) => {
248
+ // encode, writeLP
249
+ await lp.write(proto.encode(message), options);
250
+ },
251
+ writeV: async (messages, proto, options) => {
252
+ // encode, writeLP
253
+ await lp.writeV(messages.map(message => proto.encode(message)), options);
254
+ },
255
+ pb: (proto) => {
256
+ return {
257
+ read: async (options) => pbStream.read(proto, options),
258
+ write: async (d, options) => pbStream.write(d, proto, options),
259
+ writeV: async (d, options) => pbStream.writeV(d, proto, options),
260
+ unwrap: () => pbStream
261
+ };
262
+ },
263
+ unwrap: () => {
264
+ return lp.unwrap();
265
+ }
266
+ };
267
+ return pbStream;
268
+ }
269
+ export async function echo(stream, options) {
270
+ const log = stream.log.newScope('echo');
271
+ const start = Date.now();
272
+ let bytes = 0;
273
+ try {
274
+ for await (const buf of stream) {
275
+ bytes += buf.byteLength;
276
+ if (!stream.send(buf)) {
277
+ stream.pause();
278
+ await pEvent(stream, 'drain', {
279
+ rejectionEvents: [
280
+ 'close'
281
+ ],
282
+ ...options
283
+ });
284
+ stream.resume();
285
+ }
286
+ }
287
+ log('echoed %d bytes in %dms', bytes, Date.now() - start);
288
+ await stream.close(options);
289
+ }
290
+ catch (err) {
291
+ stream.abort(err);
292
+ }
293
+ }
294
+ function isMessageStream(obj) {
295
+ return obj?.addEventListener != null;
296
+ }
297
+ export function messageStreamToDuplex(stream) {
298
+ const source = pushable();
299
+ let onError;
300
+ const onMessage = (evt) => {
301
+ source.push(evt.data);
302
+ };
303
+ const onRemoteCloseWrite = () => {
304
+ source.end();
305
+ stream.removeEventListener('message', onMessage);
306
+ stream.removeEventListener('close', onClose);
307
+ stream.removeEventListener('remoteCloseWrite', onRemoteCloseWrite);
308
+ };
309
+ const onClose = (evt) => {
310
+ source.end(evt.error);
311
+ if (evt.error != null) {
312
+ onError?.reject(evt.error);
313
+ }
314
+ stream.removeEventListener('message', onMessage);
315
+ stream.removeEventListener('close', onClose);
316
+ stream.removeEventListener('remoteCloseWrite', onRemoteCloseWrite);
317
+ };
318
+ stream.addEventListener('message', onMessage);
319
+ stream.addEventListener('close', onClose, {
320
+ once: true
321
+ });
322
+ stream.addEventListener('remoteCloseWrite', onRemoteCloseWrite, {
323
+ once: true
324
+ });
325
+ return {
326
+ source,
327
+ async sink(source) {
328
+ async function* toGenerator() {
329
+ yield* source;
330
+ }
331
+ const gen = toGenerator();
332
+ while (true) {
333
+ onError = Promise.withResolvers();
334
+ const { done, value } = await Promise.race([
335
+ gen.next(),
336
+ onError.promise
337
+ ]);
338
+ if (stream.writeStatus === 'closing' || stream.writeStatus === 'closed') {
339
+ break;
340
+ }
341
+ if (value != null) {
342
+ if (!stream.send(value)) {
343
+ await Promise.race([
344
+ pEvent(stream, 'drain', {
345
+ rejectionEvents: [
346
+ 'close'
347
+ ]
348
+ })
349
+ ]);
350
+ }
351
+ }
352
+ if (done === true) {
353
+ break;
354
+ }
355
+ }
356
+ await stream.close();
357
+ }
358
+ };
359
+ }
360
+ export function pipe(...input) {
361
+ const sources = input.map(source => {
362
+ if (isMessageStream(source)) {
363
+ return messageStreamToDuplex(source);
364
+ }
365
+ return source;
366
+ });
367
+ // @ts-expect-error it-pipe types say args cannot be spread like this
368
+ return itPipe(...sources);
369
+ }
370
+ //# sourceMappingURL=stream-utils.js.map
@@ -0,0 +1 @@
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": "6.7.2",
3
+ "version": "7.0.0-049bfa0fa",
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",
@@ -17,22 +17,6 @@
17
17
  },
18
18
  "type": "module",
19
19
  "types": "./dist/src/index.d.ts",
20
- "typesVersions": {
21
- "*": {
22
- "*": [
23
- "*",
24
- "dist/*",
25
- "dist/src/*",
26
- "dist/src/*/index"
27
- ],
28
- "src/*": [
29
- "*",
30
- "dist/*",
31
- "dist/src/*",
32
- "dist/src/*/index"
33
- ]
34
- }
35
- },
36
20
  "files": [
37
21
  "src",
38
22
  "dist",
@@ -43,135 +27,6 @@
43
27
  ".": {
44
28
  "types": "./dist/src/index.d.ts",
45
29
  "import": "./dist/src/index.js"
46
- },
47
- "./abort-options": {
48
- "types": "./dist/src/abort-options.d.ts",
49
- "import": "./dist/src/abort-options.js"
50
- },
51
- "./abstract-stream": {
52
- "types": "./dist/src/abstract-stream.d.ts",
53
- "import": "./dist/src/abstract-stream.js"
54
- },
55
- "./adaptive-timeout": {
56
- "types": "./dist/src/adaptive-timeout.d.ts",
57
- "import": "./dist/src/adaptive-timeout.js"
58
- },
59
- "./array-equals": {
60
- "types": "./dist/src/array-equals.d.ts",
61
- "import": "./dist/src/array-equals.js"
62
- },
63
- "./close": {
64
- "types": "./dist/src/close.d.ts",
65
- "import": "./dist/src/close.js"
66
- },
67
- "./close-source": {
68
- "types": "./dist/src/close-source.d.ts",
69
- "import": "./dist/src/close-source.js"
70
- },
71
- "./debounce": {
72
- "types": "./dist/src/debounce.d.ts",
73
- "import": "./dist/src/debounce.js"
74
- },
75
- "./filters": {
76
- "types": "./dist/src/filters/index.d.ts",
77
- "import": "./dist/src/filters/index.js"
78
- },
79
- "./get-thin-waist-addresses": {
80
- "types": "./dist/src/get-thin-waist-addresses.d.ts",
81
- "browser": "./dist/src/get-thin-waist-addresses.browser.js",
82
- "import": "./dist/src/get-thin-waist-addresses.js"
83
- },
84
- "./global-unicast-ip": {
85
- "types": "./dist/src/global-unicast-ip.d.ts",
86
- "import": "./dist/src/global-unicast-ip.js"
87
- },
88
- "./ip-port-to-multiaddr": {
89
- "types": "./dist/src/ip-port-to-multiaddr.d.ts",
90
- "import": "./dist/src/ip-port-to-multiaddr.js"
91
- },
92
- "./is-async-generator": {
93
- "types": "./dist/src/is-async-generator.d.ts",
94
- "import": "./dist/src/is-async-generator.js"
95
- },
96
- "./is-generator": {
97
- "types": "./dist/src/is-generator.d.ts",
98
- "import": "./dist/src/is-generator.js"
99
- },
100
- "./is-promise": {
101
- "types": "./dist/src/is-promise.d.ts",
102
- "import": "./dist/src/is-promise.js"
103
- },
104
- "./link-local-ip": {
105
- "types": "./dist/src/link-local-ip.d.ts",
106
- "import": "./dist/src/link-local-ip.js"
107
- },
108
- "./merge-options": {
109
- "types": "./dist/src/merge-options.d.ts",
110
- "import": "./dist/src/merge-options.js"
111
- },
112
- "./moving-average": {
113
- "types": "./dist/src/moving-average.d.ts",
114
- "import": "./dist/src/moving-average.js"
115
- },
116
- "./multiaddr/is-global-unicast": {
117
- "types": "./dist/src/multiaddr/is-global-unicast.d.ts",
118
- "import": "./dist/src/multiaddr/is-global-unicast.js"
119
- },
120
- "./multiaddr/is-ip-based": {
121
- "types": "./dist/src/multiaddr/is-ip-based.d.ts",
122
- "import": "./dist/src/multiaddr/is-ip-based.js"
123
- },
124
- "./multiaddr/is-link-local": {
125
- "types": "./dist/src/multiaddr/is-link-local.d.ts",
126
- "import": "./dist/src/multiaddr/is-link-local.js"
127
- },
128
- "./multiaddr/is-loopback": {
129
- "types": "./dist/src/multiaddr/is-loopback.d.ts",
130
- "import": "./dist/src/multiaddr/is-loopback.js"
131
- },
132
- "./multiaddr/is-network-address": {
133
- "types": "./dist/src/multiaddr/is-network-address.d.ts",
134
- "import": "./dist/src/multiaddr/is-network-address.js"
135
- },
136
- "./multiaddr/is-private": {
137
- "types": "./dist/src/multiaddr/is-private.d.ts",
138
- "import": "./dist/src/multiaddr/is-private.js"
139
- },
140
- "./peer-queue": {
141
- "types": "./dist/src/peer-queue.d.ts",
142
- "import": "./dist/src/peer-queue.js"
143
- },
144
- "./priority-queue": {
145
- "types": "./dist/src/priority-queue.d.ts",
146
- "import": "./dist/src/priority-queue.js"
147
- },
148
- "./private-ip": {
149
- "types": "./dist/src/private-ip.d.ts",
150
- "import": "./dist/src/private-ip.js"
151
- },
152
- "./queue": {
153
- "types": "./dist/src/queue/index.d.ts",
154
- "import": "./dist/src/queue/index.js"
155
- },
156
- "./rate-limiter": {
157
- "types": "./dist/src/rate-limiter.d.ts",
158
- "import": "./dist/src/rate-limiter.js"
159
- },
160
- "./repeating-task": {
161
- "types": "./dist/src/repeating-task.d.ts",
162
- "import": "./dist/src/repeating-task.js"
163
- },
164
- "./stream-to-ma-conn": {
165
- "types": "./dist/src/stream-to-ma-conn.d.ts",
166
- "import": "./dist/src/stream-to-ma-conn.js"
167
- },
168
- "./tracked-list": {
169
- "types": "./dist/src/tracked-list.d.ts",
170
- "import": "./dist/src/tracked-list.js"
171
- },
172
- "./tracked-map": {
173
- "types": "./dist/src/tracked-map.d.ts",
174
- "import": "./dist/src/tracked-map.js"
175
30
  }
176
31
  },
177
32
  "scripts": {
@@ -191,38 +46,36 @@
191
46
  "dependencies": {
192
47
  "@chainsafe/is-ip": "^2.1.0",
193
48
  "@chainsafe/netmask": "^2.0.0",
194
- "@libp2p/crypto": "^5.1.8",
195
- "@libp2p/interface": "^2.11.0",
196
- "@libp2p/logger": "^5.2.0",
197
- "@multiformats/multiaddr": "^12.4.4",
49
+ "@libp2p/crypto": "5.1.9-049bfa0fa",
50
+ "@libp2p/interface": "3.0.0-049bfa0fa",
51
+ "@libp2p/logger": "6.0.0-049bfa0fa",
52
+ "@multiformats/multiaddr": "^13.0.1",
198
53
  "@sindresorhus/fnv1a": "^3.1.0",
199
54
  "any-signal": "^4.1.1",
55
+ "cborg": "^4.2.14",
200
56
  "delay": "^6.0.0",
201
- "get-iterator": "^2.0.1",
202
57
  "is-loopback-addr": "^2.0.2",
203
- "is-plain-obj": "^4.1.0",
204
- "it-foreach": "^2.1.3",
58
+ "it-length-prefixed": "^10.0.1",
205
59
  "it-pipe": "^3.0.1",
206
60
  "it-pushable": "^3.2.3",
207
61
  "it-stream-types": "^2.0.2",
208
62
  "main-event": "^1.0.1",
209
63
  "netmask": "^2.0.2",
210
64
  "p-defer": "^4.0.1",
211
- "race-event": "^1.3.0",
212
- "race-signal": "^1.1.3",
65
+ "p-event": "^6.0.1",
66
+ "race-signal": "^2.0.0",
67
+ "uint8-varint": "^2.0.4",
213
68
  "uint8arraylist": "^2.4.8",
214
69
  "uint8arrays": "^5.1.0"
215
70
  },
216
71
  "devDependencies": {
217
- "@libp2p/peer-id": "^5.1.9",
72
+ "@libp2p/peer-id": "6.0.0-049bfa0fa",
218
73
  "@types/netmask": "^2.0.5",
219
- "aegir": "^47.0.14",
74
+ "aegir": "^47.0.22",
220
75
  "benchmark": "^2.1.4",
221
- "delay": "^6.0.0",
222
- "it-all": "^3.0.8",
223
- "it-drain": "^3.0.9",
224
- "it-pair": "^2.0.6",
225
- "sinon": "^20.0.0",
76
+ "it-all": "^3.0.9",
77
+ "it-drain": "^3.0.10",
78
+ "sinon": "^21.0.0",
226
79
  "sinon-ts": "^2.0.0",
227
80
  "wherearewe": "^2.0.1"
228
81
  },