@yume-chan/stream-extra 2.6.1 → 3.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/esm/buffered-transform.d.ts +2 -2
- package/esm/buffered-transform.d.ts.map +1 -1
- package/esm/buffered-transform.js +16 -16
- package/esm/buffered-transform.js.map +1 -1
- package/esm/buffered.d.ts +1 -1
- package/esm/buffered.d.ts.map +1 -1
- package/esm/buffered.js.map +1 -1
- package/esm/concat.d.ts +25 -16
- package/esm/concat.d.ts.map +1 -1
- package/esm/concat.js +124 -93
- package/esm/concat.js.map +1 -1
- package/esm/consumable/readable.d.ts +2 -2
- package/esm/consumable/readable.d.ts.map +1 -1
- package/esm/consumable/readable.js +1 -1
- package/esm/consumable/readable.js.map +1 -1
- package/esm/consumable/wrap-byte-readable.d.ts +5 -2
- package/esm/consumable/wrap-byte-readable.d.ts.map +1 -1
- package/esm/consumable/wrap-byte-readable.js +12 -6
- package/esm/consumable/wrap-byte-readable.js.map +1 -1
- package/esm/consumable/wrap-writable.d.ts +1 -1
- package/esm/consumable/wrap-writable.d.ts.map +1 -1
- package/esm/consumable/wrap-writable.js +1 -1
- package/esm/consumable/wrap-writable.js.map +1 -1
- package/esm/consumable/writable.d.ts +2 -2
- package/esm/consumable/writable.d.ts.map +1 -1
- package/esm/consumable/writable.js +1 -1
- package/esm/consumable/writable.js.map +1 -1
- package/esm/consumable.d.ts +4 -0
- package/esm/consumable.d.ts.map +1 -1
- package/esm/consumable.js +5 -0
- package/esm/consumable.js.map +1 -1
- package/esm/distribution.d.ts +1 -1
- package/esm/distribution.d.ts.map +1 -1
- package/esm/distribution.js +1 -1
- package/esm/distribution.js.map +1 -1
- package/esm/duplex.d.ts +2 -2
- package/esm/duplex.d.ts.map +1 -1
- package/esm/duplex.js +1 -1
- package/esm/duplex.js.map +1 -1
- package/esm/global/abort-signal.d.ts +87 -0
- package/esm/global/abort-signal.d.ts.map +1 -0
- package/esm/global/abort-signal.js +4 -0
- package/esm/global/abort-signal.js.map +1 -0
- package/esm/global/compression.d.ts +15 -0
- package/esm/global/compression.d.ts.map +1 -0
- package/esm/global/compression.js +4 -0
- package/esm/global/compression.js.map +1 -0
- package/esm/global/encoding.d.ts +25 -0
- package/esm/global/encoding.d.ts.map +1 -0
- package/esm/global/encoding.js +4 -0
- package/esm/global/encoding.js.map +1 -0
- package/esm/global/event.d.ts +191 -0
- package/esm/global/event.d.ts.map +1 -0
- package/esm/global/event.js +4 -0
- package/esm/global/event.js.map +1 -0
- package/esm/global/index.d.ts +7 -0
- package/esm/global/index.d.ts.map +1 -0
- package/esm/global/index.js +7 -0
- package/esm/global/index.js.map +1 -0
- package/esm/{types.d.ts → global/streams.d.ts} +136 -222
- package/esm/global/streams.d.ts.map +1 -0
- package/esm/{stream.js → global/streams.js} +16 -8
- package/esm/global/streams.js.map +1 -0
- package/esm/global/timer.d.ts +13 -0
- package/esm/global/timer.d.ts.map +1 -0
- package/esm/global/timer.js +4 -0
- package/esm/global/timer.js.map +1 -0
- package/esm/global/utils.d.ts +9 -0
- package/esm/global/utils.d.ts.map +1 -0
- package/esm/global/utils.js +5 -0
- package/esm/global/utils.js.map +1 -0
- package/esm/index.d.ts +2 -2
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -2
- package/esm/index.js.map +1 -1
- package/esm/inspect.d.ts +6 -2
- package/esm/inspect.d.ts.map +1 -1
- package/esm/inspect.js +10 -4
- package/esm/inspect.js.map +1 -1
- package/esm/maybe-consumable/wrap-writable.d.ts +1 -1
- package/esm/maybe-consumable/wrap-writable.d.ts.map +1 -1
- package/esm/maybe-consumable/wrap-writable.js +1 -1
- package/esm/maybe-consumable/wrap-writable.js.map +1 -1
- package/esm/maybe-consumable/writable.d.ts +2 -2
- package/esm/maybe-consumable/writable.d.ts.map +1 -1
- package/esm/maybe-consumable/writable.js +1 -1
- package/esm/maybe-consumable/writable.js.map +1 -1
- package/esm/pipe-from.d.ts +3 -3
- package/esm/pipe-from.d.ts.map +1 -1
- package/esm/pipe-from.js +1 -1
- package/esm/pipe-from.js.map +1 -1
- package/esm/push-readable.d.ts +2 -2
- package/esm/push-readable.d.ts.map +1 -1
- package/esm/push-readable.js +1 -1
- package/esm/push-readable.js.map +1 -1
- package/esm/split-string.d.ts +6 -2
- package/esm/split-string.d.ts.map +1 -1
- package/esm/split-string.js +28 -7
- package/esm/split-string.js.map +1 -1
- package/esm/struct-deserialize.js.map +1 -1
- package/esm/struct-serialize.d.ts +1 -1
- package/esm/struct-serialize.d.ts.map +1 -1
- package/esm/struct-serialize.js +1 -1
- package/esm/struct-serialize.js.map +1 -1
- package/esm/try-close.d.ts +3 -5
- package/esm/try-close.d.ts.map +1 -1
- package/esm/try-close.js.map +1 -1
- package/esm/wrap-readable.d.ts +2 -2
- package/esm/wrap-readable.d.ts.map +1 -1
- package/esm/wrap-readable.js +1 -1
- package/esm/wrap-readable.js.map +1 -1
- package/esm/wrap-writable.d.ts +2 -2
- package/esm/wrap-writable.d.ts.map +1 -1
- package/esm/wrap-writable.js +1 -1
- package/esm/wrap-writable.js.map +1 -1
- package/package.json +10 -10
- package/src/buffered-transform.ts +24 -25
- package/src/buffered.ts +4 -1
- package/src/concat.ts +161 -118
- package/src/consumable/readable.ts +2 -2
- package/src/consumable/wrap-byte-readable.ts +20 -7
- package/src/consumable/wrap-writable.ts +1 -1
- package/src/consumable/writable.ts +2 -2
- package/src/consumable.ts +8 -0
- package/src/distribution.ts +1 -1
- package/src/duplex.ts +2 -2
- package/src/global/abort-signal.ts +129 -0
- package/src/global/compression.ts +28 -0
- package/src/global/encoding.ts +36 -0
- package/src/global/event.ts +220 -0
- package/src/global/index.ts +6 -0
- package/src/{types.ts → global/streams.ts} +266 -244
- package/src/global/timer.ts +18 -0
- package/src/global/utils.ts +14 -0
- package/src/index.ts +2 -2
- package/src/inspect.ts +18 -4
- package/src/maybe-consumable/wrap-writable.ts +1 -1
- package/src/maybe-consumable/writable.ts +3 -3
- package/src/pipe-from.ts +2 -2
- package/src/push-readable.ts +2 -2
- package/src/split-string.ts +41 -7
- package/src/struct-deserialize.ts +1 -1
- package/src/struct-serialize.ts +1 -1
- package/src/try-close.ts +0 -12
- package/src/wrap-readable.ts +2 -2
- package/src/wrap-writable.ts +5 -2
- package/tsconfig.build.json +1 -6
- package/CHANGELOG.md +0 -102
- package/esm/encoding.d.ts +0 -21
- package/esm/encoding.d.ts.map +0 -1
- package/esm/encoding.js +0 -4
- package/esm/encoding.js.map +0 -1
- package/esm/stream.d.ts +0 -25
- package/esm/stream.d.ts.map +0 -1
- package/esm/stream.js.map +0 -1
- package/esm/types.d.ts.map +0 -1
- package/esm/types.js +0 -3
- package/esm/types.js.map +0 -1
- package/src/encoding.ts +0 -39
- package/src/stream.ts +0 -106
- package/tsconfig.build.tsbuildinfo +0 -1
package/LICENSE
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { MaybePromiseLike } from "@yume-chan/async";
|
|
2
2
|
import { BufferedReadableStream } from "./buffered.js";
|
|
3
|
-
import type { ReadableWritablePair } from "./
|
|
4
|
-
import { ReadableStream, WritableStream } from "./
|
|
3
|
+
import type { ReadableWritablePair } from "./global/index.js";
|
|
4
|
+
import { ReadableStream, WritableStream } from "./global/index.js";
|
|
5
5
|
export declare class BufferedTransformStream<T> implements ReadableWritablePair<T, Uint8Array> {
|
|
6
6
|
#private;
|
|
7
7
|
get readable(): ReadableStream<T>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffered-transform.d.ts","sourceRoot":"","sources":["../src/buffered-transform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"buffered-transform.d.ts","sourceRoot":"","sources":["../src/buffered-transform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EACR,oBAAoB,EAEvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKnE,qBAAa,uBAAuB,CAAC,CAAC,CAAE,YAAW,oBAAoB,CACnE,CAAC,EACD,UAAU,CACb;;IAEG,IAAI,QAAQ,sBAEX;IAGD,IAAI,QAAQ,gDAEX;gBAGG,SAAS,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,gBAAgB,CAAC,CAAC,CAAC;CAmDzE"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { StructEmptyError } from "@yume-chan/struct";
|
|
2
2
|
import { BufferedReadableStream } from "./buffered.js";
|
|
3
|
+
import { ReadableStream, WritableStream } from "./global/index.js";
|
|
3
4
|
import { PushReadableStream } from "./push-readable.js";
|
|
4
|
-
import { ReadableStream, WritableStream } from "./stream.js";
|
|
5
5
|
// TODO: BufferedTransformStream: find better implementation
|
|
6
6
|
export class BufferedTransformStream {
|
|
7
7
|
#readable;
|
|
@@ -15,10 +15,24 @@ export class BufferedTransformStream {
|
|
|
15
15
|
constructor(transform) {
|
|
16
16
|
// Convert incoming chunks to a `BufferedReadableStream`
|
|
17
17
|
let bufferedStreamController;
|
|
18
|
-
let writableStreamController;
|
|
19
18
|
const buffered = new BufferedReadableStream(new PushReadableStream((controller) => {
|
|
20
19
|
bufferedStreamController = controller;
|
|
21
20
|
}));
|
|
21
|
+
let writableStreamController;
|
|
22
|
+
this.#writable = new WritableStream({
|
|
23
|
+
start(controller) {
|
|
24
|
+
writableStreamController = controller;
|
|
25
|
+
},
|
|
26
|
+
async write(chunk) {
|
|
27
|
+
await bufferedStreamController.enqueue(chunk);
|
|
28
|
+
},
|
|
29
|
+
abort() {
|
|
30
|
+
bufferedStreamController.close();
|
|
31
|
+
},
|
|
32
|
+
close() {
|
|
33
|
+
bufferedStreamController.close();
|
|
34
|
+
},
|
|
35
|
+
});
|
|
22
36
|
this.#readable = new ReadableStream({
|
|
23
37
|
async pull(controller) {
|
|
24
38
|
try {
|
|
@@ -44,20 +58,6 @@ export class BufferedTransformStream {
|
|
|
44
58
|
return writableStreamController.error(reason);
|
|
45
59
|
},
|
|
46
60
|
});
|
|
47
|
-
this.#writable = new WritableStream({
|
|
48
|
-
start(controller) {
|
|
49
|
-
writableStreamController = controller;
|
|
50
|
-
},
|
|
51
|
-
async write(chunk) {
|
|
52
|
-
await bufferedStreamController.enqueue(chunk);
|
|
53
|
-
},
|
|
54
|
-
abort() {
|
|
55
|
-
bufferedStreamController.close();
|
|
56
|
-
},
|
|
57
|
-
close() {
|
|
58
|
-
bufferedStreamController.close();
|
|
59
|
-
},
|
|
60
|
-
});
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
63
|
//# sourceMappingURL=buffered-transform.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffered-transform.js","sourceRoot":"","sources":["../src/buffered-transform.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"buffered-transform.js","sourceRoot":"","sources":["../src/buffered-transform.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAKvD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,4DAA4D;AAC5D,MAAM,OAAO,uBAAuB;IAIhC,SAAS,CAAoB;IAC7B,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,SAAS,CAA6B;IACtC,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,YACI,SAAkE;QAElE,wDAAwD;QACxD,IAAI,wBAAmE,CAAC;QACxE,MAAM,QAAQ,GAAG,IAAI,sBAAsB,CACvC,IAAI,kBAAkB,CAAa,CAAC,UAAU,EAAE,EAAE;YAC9C,wBAAwB,GAAG,UAAU,CAAC;QAC1C,CAAC,CAAC,CACL,CAAC;QAEF,IAAI,wBAA0D,CAAC;QAC/D,IAAI,CAAC,SAAS,GAAG,IAAI,cAAc,CAAC;YAChC,KAAK,CAAC,UAAU;gBACZ,wBAAwB,GAAG,UAAU,CAAC;YAC1C,CAAC;YACD,KAAK,CAAC,KAAK,CAAC,KAAK;gBACb,MAAM,wBAAwB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAClD,CAAC;YACD,KAAK;gBACD,wBAAwB,CAAC,KAAK,EAAE,CAAC;YACrC,CAAC;YACD,KAAK;gBACD,wBAAwB,CAAC,KAAK,EAAE,CAAC;YACrC,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,GAAG,IAAI,cAAc,CAAI;YACnC,KAAK,CAAC,IAAI,CAAC,UAAU;gBACjB,IAAI,CAAC;oBACD,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;oBACxC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9B,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACT,4CAA4C;oBAC5C,wEAAwE;oBACxE,kDAAkD;oBAClD,IAAI,CAAC,YAAY,gBAAgB,EAAE,CAAC;wBAChC,UAAU,CAAC,KAAK,EAAE,CAAC;wBACnB,OAAO;oBACX,CAAC;oBACD,MAAM,CAAC,CAAC;gBACZ,CAAC;YACL,CAAC;YACD,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;gBACf,oDAAoD;gBACpD,qDAAqD;gBACrD,+DAA+D;gBAC/D,qCAAqC;gBACrC,OAAO,wBAAwB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAClD,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;CACJ"}
|
package/esm/buffered.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { MaybePromiseLike } from "@yume-chan/async";
|
|
2
2
|
import type { AsyncExactReadable } from "@yume-chan/struct";
|
|
3
|
-
import type { ReadableStream, ReadableStreamDefaultReader } from "./
|
|
3
|
+
import type { ReadableStream, ReadableStreamDefaultReader } from "./global/index.js";
|
|
4
4
|
export declare class BufferedReadableStream implements AsyncExactReadable {
|
|
5
5
|
#private;
|
|
6
6
|
get position(): number;
|
package/esm/buffered.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffered.d.ts","sourceRoot":"","sources":["../src/buffered.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"buffered.d.ts","sourceRoot":"","sources":["../src/buffered.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,KAAK,EACR,cAAc,EACd,2BAA2B,EAC9B,MAAM,mBAAmB,CAAC;AAI3B,qBAAa,sBAAuB,YAAW,kBAAkB;;IAQ7D,IAAI,QAAQ,WAEX;IAED,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACtD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,CAAC;gBAEvD,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;IAgD9C,cAAc,CACV,MAAM,EAAE,MAAM,GACf,QAAQ,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;IA0CrD,WAAW,kGA8BR;IAEH;;;;OAIG;IACH,OAAO,IAAI,cAAc,CAAC,UAAU,CAAC;IA4B/B,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO;CAGhC"}
|
package/esm/buffered.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffered.js","sourceRoot":"","sources":["../src/buffered.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"buffered.js","sourceRoot":"","sources":["../src/buffered.ts"],"names":[],"mappings":"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"}
|
package/esm/concat.d.ts
CHANGED
|
@@ -1,36 +1,45 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import type { ReadableWritablePair } from "./global/index.js";
|
|
2
|
+
import { ReadableStream, WritableStream } from "./global/index.js";
|
|
3
|
+
export declare class AccumulateStream<Input, Output, Accumulated = Output> implements ReadableWritablePair<Output, Input> {
|
|
4
|
+
#private;
|
|
5
|
+
get writable(): WritableStream<Input>;
|
|
6
|
+
get readable(): ReadableStream<Output> & Omit<Promise<Output>, typeof Symbol.toStringTag>;
|
|
7
|
+
constructor(initial: Accumulated, write: (chunk: Input, current: Accumulated) => Accumulated, finalize: (current: Accumulated) => Output);
|
|
3
8
|
}
|
|
4
9
|
/**
|
|
5
10
|
* A `TransformStream` that concatenates strings.
|
|
6
11
|
*
|
|
7
|
-
* Its `readable` is also a
|
|
12
|
+
* Its `readable` is also a Promise-like, that can be `await`ed to get the result.
|
|
8
13
|
*
|
|
9
14
|
* ```ts
|
|
10
15
|
* const result: string = await readable.pipeThrough(new ConcatStringStream());
|
|
11
16
|
* ```
|
|
12
17
|
*/
|
|
13
|
-
export declare class ConcatStringStream {
|
|
14
|
-
#private;
|
|
15
|
-
get writable(): WritableStream<string>;
|
|
16
|
-
get readable(): ConcatStringReadableStream;
|
|
18
|
+
export declare class ConcatStringStream extends AccumulateStream<string, string> {
|
|
17
19
|
constructor();
|
|
18
20
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
+
/**
|
|
22
|
+
* Concatenate all chunks into a single `Uint8Array`.
|
|
23
|
+
*
|
|
24
|
+
* If there is only one chunk, it will be returned directly.
|
|
25
|
+
* @param chunks An array of `Uint8Array`s to concatenate
|
|
26
|
+
* @returns An `Uint8Array` containing all chunks. If there is only one chunk, it will be returned directly.
|
|
27
|
+
*/
|
|
28
|
+
export declare function concatUint8Arrays(chunks: readonly Uint8Array[]): Uint8Array;
|
|
29
|
+
export declare function toUint8Array(buffer: ArrayBufferLike | ArrayBufferView<ArrayBufferLike>): Uint8Array;
|
|
30
|
+
export declare function concatBuffers(buffers: readonly (ArrayBufferLike | ArrayBufferView<ArrayBufferLike>)[]): Uint8Array;
|
|
21
31
|
/**
|
|
22
32
|
* A `TransformStream` that concatenates `Uint8Array`s.
|
|
23
33
|
*
|
|
24
|
-
*
|
|
34
|
+
* Its `readable` is also a Promise-like, that can be `await`ed to get the result.
|
|
35
|
+
*
|
|
36
|
+
* To convert a `ReadableStream<Uint8Array>` to a string,
|
|
25
37
|
* prefer `.pipeThrough(new TextDecoderStream()).pipeThrough(new ConcatStringStream())`,
|
|
26
|
-
*
|
|
27
|
-
*
|
|
38
|
+
* to `.pipeThrough(new ConcatBufferStream()).pipeThrough(new TextDecoderStream())`.
|
|
39
|
+
* Because of JavaScript engine optimizations,
|
|
28
40
|
* concatenating strings is faster than concatenating `Uint8Array`s.
|
|
29
41
|
*/
|
|
30
|
-
export declare class ConcatBufferStream {
|
|
31
|
-
#private;
|
|
32
|
-
get writable(): WritableStream<Uint8Array>;
|
|
33
|
-
get readable(): ConcatBufferReadableStream;
|
|
42
|
+
export declare class ConcatBufferStream extends AccumulateStream<Uint8Array, Uint8Array, Uint8Array[]> {
|
|
34
43
|
constructor();
|
|
35
44
|
}
|
|
36
45
|
//# sourceMappingURL=concat.d.ts.map
|
package/esm/concat.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concat.d.ts","sourceRoot":"","sources":["../src/concat.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"concat.d.ts","sourceRoot":"","sources":["../src/concat.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMnE,qBAAa,gBAAgB,CACzB,KAAK,EACL,MAAM,EACN,WAAW,GAAG,MAAM,CACtB,YAAW,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC;;IA8B5C,IAAI,QAAQ,0BAEX;IAkBD,IAAI,QAAQ,8EAEX;gBAGG,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,KAAK,WAAW,EAC1D,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,MAAM;CAmBjD;AAED;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,SAAQ,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC;;CASvE;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,GAAG,UAAU,CAgB3E;AAED,wBAAgB,YAAY,CACxB,MAAM,EAAE,eAAe,GAAG,eAAe,CAAC,eAAe,CAAC,GAC3D,UAAU,CAYZ;AAED,wBAAgB,aAAa,CACzB,OAAO,EAAE,SAAS,CAAC,eAAe,GAAG,eAAe,CAAC,eAAe,CAAC,CAAC,EAAE,GACzE,UAAU,CAgBZ;AAED;;;;;;;;;;GAUG;AACH,qBAAa,kBAAmB,SAAQ,gBAAgB,CACpD,UAAU,EACV,UAAU,EACV,UAAU,EAAE,CACf;;CAgBA"}
|
package/esm/concat.js
CHANGED
|
@@ -1,129 +1,160 @@
|
|
|
1
1
|
import { PromiseResolver } from "@yume-chan/async";
|
|
2
2
|
import { EmptyUint8Array } from "@yume-chan/struct";
|
|
3
|
-
import { ReadableStream, WritableStream } from "./
|
|
3
|
+
import { ReadableStream, WritableStream } from "./global/index.js";
|
|
4
4
|
// `TransformStream` only calls its `source.flush` method when its `readable` is being read.
|
|
5
|
-
// If the user
|
|
5
|
+
// If the user wants to use the `Promise` interface, the `flush` method will never be called,
|
|
6
6
|
// so the `PromiseResolver` will never be resolved.
|
|
7
7
|
// Thus we need to implement our own `TransformStream` using a `WritableStream` and a `ReadableStream`.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
*
|
|
13
|
-
* ```ts
|
|
14
|
-
* const result: string = await readable.pipeThrough(new ConcatStringStream());
|
|
15
|
-
* ```
|
|
16
|
-
*/
|
|
17
|
-
export class ConcatStringStream {
|
|
18
|
-
// PERF: rope (concat strings) is faster than `[].join('')`
|
|
19
|
-
#result = "";
|
|
8
|
+
export class AccumulateStream {
|
|
9
|
+
#current;
|
|
10
|
+
#write;
|
|
11
|
+
#finalize;
|
|
20
12
|
#resolver = new PromiseResolver();
|
|
21
13
|
#writable = new WritableStream({
|
|
22
14
|
write: (chunk) => {
|
|
23
|
-
|
|
15
|
+
try {
|
|
16
|
+
this.#current = this.#write(chunk, this.#current);
|
|
17
|
+
}
|
|
18
|
+
catch (e) {
|
|
19
|
+
this.#resolver.reject(e);
|
|
20
|
+
throw e;
|
|
21
|
+
}
|
|
24
22
|
},
|
|
25
23
|
close: () => {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
try {
|
|
25
|
+
const output = this.#finalize(this.#current);
|
|
26
|
+
this.#resolver.resolve(output);
|
|
27
|
+
}
|
|
28
|
+
catch (e) {
|
|
29
|
+
this.#resolver.reject(e);
|
|
30
|
+
throw e;
|
|
31
|
+
}
|
|
29
32
|
},
|
|
30
33
|
abort: (reason) => {
|
|
31
34
|
this.#resolver.reject(reason);
|
|
32
|
-
this.#readableController.error(reason);
|
|
33
35
|
},
|
|
34
36
|
});
|
|
35
37
|
get writable() {
|
|
36
38
|
return this.#writable;
|
|
37
39
|
}
|
|
38
|
-
#readableController;
|
|
39
40
|
#readable = new ReadableStream({
|
|
40
|
-
|
|
41
|
-
|
|
41
|
+
pull: async (controller) => {
|
|
42
|
+
const output = await this.#resolver.promise;
|
|
43
|
+
controller.enqueue(output);
|
|
44
|
+
controller.close();
|
|
42
45
|
},
|
|
43
|
-
|
|
46
|
+
// Ignore `abort` event since the user might use the `Promise` interface.
|
|
47
|
+
},
|
|
48
|
+
// `highWaterMark: 0` makes the `pull` method
|
|
49
|
+
// only be called when the `ReadableStream` is being read.
|
|
50
|
+
// If the user only uses the `Promise` interface,
|
|
51
|
+
// it's unnecessary to run the `pull` method.
|
|
52
|
+
{ highWaterMark: 0 });
|
|
44
53
|
get readable() {
|
|
45
54
|
return this.#readable;
|
|
46
55
|
}
|
|
56
|
+
constructor(initial, write, finalize) {
|
|
57
|
+
this.#current = initial;
|
|
58
|
+
this.#write = write;
|
|
59
|
+
this.#finalize = finalize;
|
|
60
|
+
// biome-ignore lint/suspicious/noThenProperty: This object is intentionally thenable
|
|
61
|
+
this.#readable.then = (onfulfilled, onrejected) => {
|
|
62
|
+
return this.#resolver.promise.then(onfulfilled, onrejected);
|
|
63
|
+
};
|
|
64
|
+
// biome-ignore lint/suspicious/noThenProperty: This object is intentionally thenable
|
|
65
|
+
this.#readable.catch = (onrejected) => {
|
|
66
|
+
return this.#resolver.promise.catch(onrejected);
|
|
67
|
+
};
|
|
68
|
+
// biome-ignore lint/suspicious/noThenProperty: This object is intentionally thenable
|
|
69
|
+
this.#readable.finally = (onfinally) => {
|
|
70
|
+
return this.#resolver.promise.finally(onfinally);
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* A `TransformStream` that concatenates strings.
|
|
76
|
+
*
|
|
77
|
+
* Its `readable` is also a Promise-like, that can be `await`ed to get the result.
|
|
78
|
+
*
|
|
79
|
+
* ```ts
|
|
80
|
+
* const result: string = await readable.pipeThrough(new ConcatStringStream());
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
export class ConcatStringStream extends AccumulateStream {
|
|
47
84
|
constructor() {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
get: () => this.#resolver.promise.then.bind(this.#resolver.promise),
|
|
51
|
-
},
|
|
52
|
-
catch: {
|
|
53
|
-
get: () => this.#resolver.promise.catch.bind(this.#resolver.promise),
|
|
54
|
-
},
|
|
55
|
-
finally: {
|
|
56
|
-
get: () => this.#resolver.promise.finally.bind(this.#resolver.promise),
|
|
57
|
-
},
|
|
58
|
-
});
|
|
85
|
+
// PERF: rope (concat strings) is faster than `[].join('')`
|
|
86
|
+
super("", (chunk, current) => current + chunk, (output) => output);
|
|
59
87
|
}
|
|
60
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* Concatenate all chunks into a single `Uint8Array`.
|
|
91
|
+
*
|
|
92
|
+
* If there is only one chunk, it will be returned directly.
|
|
93
|
+
* @param chunks An array of `Uint8Array`s to concatenate
|
|
94
|
+
* @returns An `Uint8Array` containing all chunks. If there is only one chunk, it will be returned directly.
|
|
95
|
+
*/
|
|
96
|
+
export function concatUint8Arrays(chunks) {
|
|
97
|
+
switch (chunks.length) {
|
|
98
|
+
case 0:
|
|
99
|
+
return EmptyUint8Array;
|
|
100
|
+
case 1:
|
|
101
|
+
return chunks[0];
|
|
102
|
+
}
|
|
103
|
+
const length = chunks.reduce((a, b) => a + b.length, 0);
|
|
104
|
+
const output = new Uint8Array(length);
|
|
105
|
+
let offset = 0;
|
|
106
|
+
for (const chunk of chunks) {
|
|
107
|
+
output.set(chunk, offset);
|
|
108
|
+
offset += chunk.length;
|
|
109
|
+
}
|
|
110
|
+
return output;
|
|
111
|
+
}
|
|
112
|
+
export function toUint8Array(buffer) {
|
|
113
|
+
if (buffer instanceof Uint8Array) {
|
|
114
|
+
return buffer;
|
|
115
|
+
}
|
|
116
|
+
if (ArrayBuffer.isView(buffer)) {
|
|
117
|
+
return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);
|
|
118
|
+
}
|
|
119
|
+
return new Uint8Array(buffer);
|
|
120
|
+
}
|
|
121
|
+
export function concatBuffers(buffers) {
|
|
122
|
+
switch (buffers.length) {
|
|
123
|
+
case 0:
|
|
124
|
+
return EmptyUint8Array;
|
|
125
|
+
case 1:
|
|
126
|
+
return toUint8Array(buffers[0]);
|
|
127
|
+
}
|
|
128
|
+
const length = buffers.reduce((a, b) => a + b.byteLength, 0);
|
|
129
|
+
const output = new Uint8Array(length);
|
|
130
|
+
let offset = 0;
|
|
131
|
+
for (const buffer of buffers) {
|
|
132
|
+
output.set(toUint8Array(buffer), offset);
|
|
133
|
+
offset += buffer.byteLength;
|
|
134
|
+
}
|
|
135
|
+
return output;
|
|
136
|
+
}
|
|
61
137
|
/**
|
|
62
138
|
* A `TransformStream` that concatenates `Uint8Array`s.
|
|
63
139
|
*
|
|
64
|
-
*
|
|
140
|
+
* Its `readable` is also a Promise-like, that can be `await`ed to get the result.
|
|
141
|
+
*
|
|
142
|
+
* To convert a `ReadableStream<Uint8Array>` to a string,
|
|
65
143
|
* prefer `.pipeThrough(new TextDecoderStream()).pipeThrough(new ConcatStringStream())`,
|
|
66
|
-
*
|
|
67
|
-
*
|
|
144
|
+
* to `.pipeThrough(new ConcatBufferStream()).pipeThrough(new TextDecoderStream())`.
|
|
145
|
+
* Because of JavaScript engine optimizations,
|
|
68
146
|
* concatenating strings is faster than concatenating `Uint8Array`s.
|
|
69
147
|
*/
|
|
70
|
-
export class ConcatBufferStream {
|
|
71
|
-
#segments = [];
|
|
72
|
-
#resolver = new PromiseResolver();
|
|
73
|
-
#writable = new WritableStream({
|
|
74
|
-
write: (chunk) => {
|
|
75
|
-
this.#segments.push(chunk);
|
|
76
|
-
},
|
|
77
|
-
close: () => {
|
|
78
|
-
let result;
|
|
79
|
-
let offset = 0;
|
|
80
|
-
switch (this.#segments.length) {
|
|
81
|
-
case 0:
|
|
82
|
-
result = EmptyUint8Array;
|
|
83
|
-
break;
|
|
84
|
-
case 1:
|
|
85
|
-
result = this.#segments[0];
|
|
86
|
-
break;
|
|
87
|
-
default:
|
|
88
|
-
result = new Uint8Array(this.#segments.reduce((prev, item) => prev + item.length, 0));
|
|
89
|
-
for (const segment of this.#segments) {
|
|
90
|
-
result.set(segment, offset);
|
|
91
|
-
offset += segment.length;
|
|
92
|
-
}
|
|
93
|
-
break;
|
|
94
|
-
}
|
|
95
|
-
this.#resolver.resolve(result);
|
|
96
|
-
this.#readableController.enqueue(result);
|
|
97
|
-
this.#readableController.close();
|
|
98
|
-
},
|
|
99
|
-
abort: (reason) => {
|
|
100
|
-
this.#resolver.reject(reason);
|
|
101
|
-
this.#readableController.error(reason);
|
|
102
|
-
},
|
|
103
|
-
});
|
|
104
|
-
get writable() {
|
|
105
|
-
return this.#writable;
|
|
106
|
-
}
|
|
107
|
-
#readableController;
|
|
108
|
-
#readable = new ReadableStream({
|
|
109
|
-
start: (controller) => {
|
|
110
|
-
this.#readableController = controller;
|
|
111
|
-
},
|
|
112
|
-
});
|
|
113
|
-
get readable() {
|
|
114
|
-
return this.#readable;
|
|
115
|
-
}
|
|
148
|
+
export class ConcatBufferStream extends AccumulateStream {
|
|
116
149
|
constructor() {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
get: () => this.#resolver.promise.finally.bind(this.#resolver.promise),
|
|
126
|
-
},
|
|
150
|
+
super([], (chunk, current) => {
|
|
151
|
+
current.push(chunk);
|
|
152
|
+
return current;
|
|
153
|
+
}, (current) => {
|
|
154
|
+
const result = concatUint8Arrays(current);
|
|
155
|
+
// `current` is no longer needed. Clear it to free memory.
|
|
156
|
+
current.length = 0;
|
|
157
|
+
return result;
|
|
127
158
|
});
|
|
128
159
|
}
|
|
129
160
|
}
|
package/esm/concat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concat.js","sourceRoot":"","sources":["../src/concat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"concat.js","sourceRoot":"","sources":["../src/concat.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Consumable } from "../consumable.js";
|
|
2
|
-
import type { QueuingStrategy } from "../
|
|
3
|
-
import { ReadableStream } from "../
|
|
2
|
+
import type { QueuingStrategy } from "../global/index.js";
|
|
3
|
+
import { ReadableStream } from "../global/index.js";
|
|
4
4
|
export interface ConsumableReadableStreamController<T> {
|
|
5
5
|
enqueue(chunk: T): Promise<void>;
|
|
6
6
|
close(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readable.d.ts","sourceRoot":"","sources":["../../src/consumable/readable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"readable.d.ts","sourceRoot":"","sources":["../../src/consumable/readable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,WAAW,kCAAkC,CAAC,CAAC;IACjD,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,KAAK,IAAI,IAAI,CAAC;IACd,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,8BAA8B,CAAC,CAAC;IAC7C,KAAK,CAAC,CACF,UAAU,EAAE,kCAAkC,CAAC,CAAC,CAAC,GAClD,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC5B,IAAI,CAAC,CACD,UAAU,EAAE,kCAAkC,CAAC,CAAC,CAAC,GAClD,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC5B,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;CACtD;AAED,qBAAa,wBAAwB,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;WAC7D,OAAO,CAAC,CAAC,EAClB,UAAU,EAAE;QAAE,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;KAAE,EACvD,KAAK,EAAE,CAAC;gBAQR,MAAM,EAAE,8BAA8B,CAAC,CAAC,CAAC,EACzC,QAAQ,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;CA+CpC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Consumable } from "../consumable.js";
|
|
2
|
-
import { ReadableStream } from "../
|
|
2
|
+
import { ReadableStream } from "../global/index.js";
|
|
3
3
|
export class ConsumableReadableStream extends ReadableStream {
|
|
4
4
|
static async enqueue(controller, chunk) {
|
|
5
5
|
const output = new Consumable(chunk);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readable.js","sourceRoot":"","sources":["../../src/consumable/readable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"readable.js","sourceRoot":"","sources":["../../src/consumable/readable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAkBpD,MAAM,OAAO,wBAA4B,SAAQ,cAA6B;IAC1E,MAAM,CAAC,KAAK,CAAC,OAAO,CAChB,UAAuD,EACvD,KAAQ;QAER,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,MAAM,CAAC,QAAQ,CAAC;IAC1B,CAAC;IAED,YACI,MAAyC,EACzC,QAA6B;QAE7B,IAAI,iBAAyD,CAAC;QAE9D,IAAI,eAA2D,CAAC;QAChE,IAAI,QAAQ,EAAE,CAAC;YACX,eAAe,GAAG,EAAE,CAAC;YACrB,IAAI,eAAe,IAAI,QAAQ,EAAE,CAAC;gBAC9B,eAAe,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;YAC3D,CAAC;YACD,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;gBACrB,eAAe,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE;oBAC7B,OAAO,QAAQ,CAAC,IAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACvC,CAAC,CAAC;YACN,CAAC;QACL,CAAC;QAED,KAAK,CACD;YACI,KAAK,CAAC,UAAU;gBACZ,iBAAiB,GAAG;oBAChB,OAAO,CAAC,KAAK;wBACT,OAAO,wBAAwB,CAAC,OAAO,CACnC,UAAU,EACV,KAAK,CACR,CAAC;oBACN,CAAC;oBACD,KAAK;wBACD,UAAU,CAAC,KAAK,EAAE,CAAC;oBACvB,CAAC;oBACD,KAAK,CAAC,MAAM;wBACR,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAC7B,CAAC;iBACJ,CAAC;gBAEF,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC,iBAAiB,CAAC,CAAC;YAC7C,CAAC;YACD,IAAI;gBACA,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,iBAAiB,CAAC,CAAC;YAC5C,CAAC;YACD,MAAM,CAAC,MAAM;gBACT,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;SACJ,EACD,eAAe,CAClB,CAAC;IACN,CAAC;CACJ"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import type { Consumable } from "../consumable.js";
|
|
2
|
-
import { ReadableStream } from "../
|
|
2
|
+
import { ReadableStream } from "../global/index.js";
|
|
3
3
|
export declare class ConsumableWrapByteReadableStream extends ReadableStream<Consumable<Uint8Array>> {
|
|
4
|
-
constructor(stream: ReadableStream<Uint8Array>, chunkSize: number,
|
|
4
|
+
constructor(stream: ReadableStream<Uint8Array>, chunkSize: number, options?: {
|
|
5
|
+
min?: number | undefined;
|
|
6
|
+
onRead?: ((size: number) => void) | undefined;
|
|
7
|
+
});
|
|
5
8
|
}
|
|
6
9
|
//# sourceMappingURL=wrap-byte-readable.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrap-byte-readable.d.ts","sourceRoot":"","sources":["../../src/consumable/wrap-byte-readable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"wrap-byte-readable.d.ts","sourceRoot":"","sources":["../../src/consumable/wrap-byte-readable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAIpD,qBAAa,gCAAiC,SAAQ,cAAc,CAChE,UAAU,CAAC,UAAU,CAAC,CACzB;gBAEO,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAClC,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE;QACN,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QACzB,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;KACjD;CA+BR"}
|
|
@@ -1,18 +1,24 @@
|
|
|
1
|
-
import { ReadableStream } from "../
|
|
1
|
+
import { ReadableStream } from "../global/index.js";
|
|
2
2
|
import { ConsumableReadableStream } from "./readable.js";
|
|
3
3
|
export class ConsumableWrapByteReadableStream extends ReadableStream {
|
|
4
|
-
constructor(stream, chunkSize,
|
|
4
|
+
constructor(stream, chunkSize, options) {
|
|
5
5
|
const reader = stream.getReader({ mode: "byob" });
|
|
6
|
-
let
|
|
6
|
+
let buffer = new ArrayBuffer(chunkSize);
|
|
7
7
|
super({
|
|
8
8
|
async pull(controller) {
|
|
9
|
-
const { done, value } = await reader.read(
|
|
9
|
+
const { done, value } = await reader.read(new Uint8Array(buffer), {
|
|
10
|
+
min: options?.min,
|
|
11
|
+
});
|
|
12
|
+
// `value` might be defined even when `done` is true
|
|
13
|
+
if (value) {
|
|
14
|
+
await ConsumableReadableStream.enqueue(controller, value);
|
|
15
|
+
options?.onRead?.(value.byteLength);
|
|
16
|
+
}
|
|
10
17
|
if (done) {
|
|
11
18
|
controller.close();
|
|
12
19
|
return;
|
|
13
20
|
}
|
|
14
|
-
|
|
15
|
-
array = new Uint8Array(value.buffer);
|
|
21
|
+
buffer = value.buffer;
|
|
16
22
|
},
|
|
17
23
|
cancel(reason) {
|
|
18
24
|
return reader.cancel(reason);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrap-byte-readable.js","sourceRoot":"","sources":["../../src/consumable/wrap-byte-readable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"wrap-byte-readable.js","sourceRoot":"","sources":["../../src/consumable/wrap-byte-readable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAEzD,MAAM,OAAO,gCAAiC,SAAQ,cAErD;IACG,YACI,MAAkC,EAClC,SAAiB,EACjB,OAGC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAClD,IAAI,MAAM,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC;QACxC,KAAK,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,UAAU;gBACjB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CACrC,IAAI,UAAU,CAAC,MAAM,CAAC,EACtB;oBACI,GAAG,EAAE,OAAO,EAAE,GAAG;iBACpB,CACJ,CAAC;gBAEF,oDAAoD;gBACpD,IAAI,KAAK,EAAE,CAAC;oBACR,MAAM,wBAAwB,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBAC1D,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACxC,CAAC;gBAED,IAAI,IAAI,EAAE,CAAC;oBACP,UAAU,CAAC,KAAK,EAAE,CAAC;oBACnB,OAAO;gBACX,CAAC;gBAED,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC1B,CAAC;YACD,MAAM,CAAC,MAAM;gBACT,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACjC,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;CACJ"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Consumable } from "../consumable.js";
|
|
2
|
-
import { WritableStream } from "../
|
|
2
|
+
import { WritableStream } from "../global/index.js";
|
|
3
3
|
export declare class ConsumableWrapWritableStream<in T> extends WritableStream<Consumable<T>> {
|
|
4
4
|
constructor(stream: WritableStream<T>);
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrap-writable.d.ts","sourceRoot":"","sources":["../../src/consumable/wrap-writable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"wrap-writable.d.ts","sourceRoot":"","sources":["../../src/consumable/wrap-writable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,qBAAa,4BAA4B,CAAC,EAAE,CAAC,CAAC,CAAE,SAAQ,cAAc,CAClE,UAAU,CAAC,CAAC,CAAC,CAChB;gBACe,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;CAcxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrap-writable.js","sourceRoot":"","sources":["../../src/consumable/wrap-writable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"wrap-writable.js","sourceRoot":"","sources":["../../src/consumable/wrap-writable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,MAAM,OAAO,4BAAmC,SAAQ,cAEvD;IACG,YAAY,MAAyB;QACjC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAClC,KAAK,CAAC;YACF,KAAK,CAAC,KAAK;gBACP,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5D,CAAC;YACD,KAAK,CAAC,MAAM;gBACR,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAChC,CAAC;YACD,KAAK;gBACD,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC;YAC1B,CAAC;SACJ,CAAC,CAAC;IACP,CAAC;CACJ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Consumable } from "../consumable.js";
|
|
2
|
-
import type { QueuingStrategy, WritableStreamDefaultController, WritableStreamDefaultWriter } from "../
|
|
3
|
-
import { WritableStream } from "../
|
|
2
|
+
import type { QueuingStrategy, WritableStreamDefaultController, WritableStreamDefaultWriter } from "../global/index.js";
|
|
3
|
+
import { WritableStream } from "../global/index.js";
|
|
4
4
|
export interface ConsumableWritableStreamSink<in T> {
|
|
5
5
|
start?(controller: WritableStreamDefaultController): void | PromiseLike<void>;
|
|
6
6
|
write?(chunk: T, controller: WritableStreamDefaultController): void | PromiseLike<void>;
|