@yume-chan/stream-extra 0.0.22 → 0.0.24
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/CHANGELOG.json +36 -0
- package/CHANGELOG.md +19 -1
- package/LICENSE +1 -1
- package/esm/concat.d.ts +4 -3
- package/esm/concat.d.ts.map +1 -1
- package/esm/concat.js +6 -4
- package/esm/concat.js.map +1 -1
- package/esm/consumable.d.ts +31 -43
- package/esm/consumable.d.ts.map +1 -1
- package/esm/consumable.js +96 -144
- package/esm/consumable.js.map +1 -1
- package/esm/distribution.d.ts +3 -2
- package/esm/distribution.d.ts.map +1 -1
- package/esm/distribution.js +22 -18
- package/esm/distribution.js.map +1 -1
- package/esm/encoding.d.ts +21 -0
- package/esm/encoding.d.ts.map +1 -0
- package/esm/encoding.js +4 -0
- package/esm/encoding.js.map +1 -0
- package/esm/index.d.ts +3 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +3 -1
- package/esm/index.js.map +1 -1
- package/esm/maybe-consumable.d.ts +21 -0
- package/esm/maybe-consumable.d.ts.map +1 -0
- package/esm/maybe-consumable.js +62 -0
- package/esm/maybe-consumable.js.map +1 -0
- package/esm/pipe-from.d.ts +1 -1
- package/esm/pipe-from.d.ts.map +1 -1
- package/esm/stream.d.ts +9 -10
- package/esm/stream.d.ts.map +1 -1
- package/esm/stream.js +6 -12
- package/esm/stream.js.map +1 -1
- package/esm/struct-deserialize.d.ts +1 -1
- package/esm/struct-deserialize.d.ts.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/task.d.ts +5 -0
- package/esm/task.d.ts.map +1 -0
- package/esm/task.js +9 -0
- package/esm/task.js.map +1 -0
- package/esm/types.d.ts +778 -0
- package/esm/types.d.ts.map +1 -0
- package/esm/types.js +3 -0
- package/esm/types.js.map +1 -0
- package/esm/wrap-writable.d.ts +1 -1
- package/esm/wrap-writable.d.ts.map +1 -1
- package/esm/wrap-writable.js +12 -12
- package/esm/wrap-writable.js.map +1 -1
- package/package.json +9 -12
- package/src/concat.ts +6 -4
- package/src/consumable.ts +145 -233
- package/src/distribution.ts +30 -20
- package/src/encoding.ts +39 -0
- package/src/index.ts +3 -1
- package/src/maybe-consumable.ts +101 -0
- package/src/stream.ts +20 -25
- package/src/struct-deserialize.ts +2 -2
- package/src/struct-serialize.ts +1 -1
- package/src/task.ts +21 -0
- package/src/types.ts +881 -0
- package/src/wrap-writable.ts +12 -12
- package/tsconfig.build.tsbuildinfo +1 -1
- package/esm/decode-utf8.d.ts +0 -5
- package/esm/decode-utf8.d.ts.map +0 -1
- package/esm/decode-utf8.js +0 -12
- package/esm/decode-utf8.js.map +0 -1
- package/src/decode-utf8.ts +0 -13
package/CHANGELOG.json
CHANGED
|
@@ -1,6 +1,42 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yume-chan/stream-extra",
|
|
3
3
|
"entries": [
|
|
4
|
+
{
|
|
5
|
+
"version": "0.0.24",
|
|
6
|
+
"tag": "@yume-chan/stream-extra_v0.0.24",
|
|
7
|
+
"date": "Tue, 18 Jun 2024 02:49:43 GMT",
|
|
8
|
+
"comments": {
|
|
9
|
+
"none": [
|
|
10
|
+
{
|
|
11
|
+
"comment": "Add `MaybeConsumable` type. It's also a namespace containing related types."
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"comment": "Re-export global `TextDecoderStream` to replace `DecodeUtf8Stream` which doesn't work correctly in stream mode"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"comment": "Move `Consumable` related types to the `Consumable` namespace. In future, more types will be moved to namespaces."
|
|
18
|
+
}
|
|
19
|
+
]
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"version": "0.0.23",
|
|
24
|
+
"tag": "@yume-chan/stream-extra_v0.0.23",
|
|
25
|
+
"date": "Thu, 21 Mar 2024 03:15:10 GMT",
|
|
26
|
+
"comments": {
|
|
27
|
+
"none": [
|
|
28
|
+
{
|
|
29
|
+
"comment": "Fix `ConsumableWritableStream.write` calls `chunk.consume` twice. (doesn't cause any issue)"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"comment": "Fix `WrapWritableStream` might close the inner stream twice. (and throw an error)"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"comment": "Remove web-streams-polyfill dependency. The runtime must have global stream implementations (or you can add a polyfill yourself)."
|
|
36
|
+
}
|
|
37
|
+
]
|
|
38
|
+
}
|
|
39
|
+
},
|
|
4
40
|
{
|
|
5
41
|
"version": "0.0.22",
|
|
6
42
|
"tag": "@yume-chan/stream-extra_v0.0.22",
|
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,24 @@
|
|
|
1
1
|
# Change Log - @yume-chan/stream-extra
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Tue, 18 Jun 2024 02:49:43 GMT and should not be manually modified.
|
|
4
|
+
|
|
5
|
+
## 0.0.24
|
|
6
|
+
Tue, 18 Jun 2024 02:49:43 GMT
|
|
7
|
+
|
|
8
|
+
### Updates
|
|
9
|
+
|
|
10
|
+
- Add `MaybeConsumable` type. It's also a namespace containing related types.
|
|
11
|
+
- Re-export global `TextDecoderStream` to replace `DecodeUtf8Stream` which doesn't work correctly in stream mode
|
|
12
|
+
- Move `Consumable` related types to the `Consumable` namespace. In future, more types will be moved to namespaces.
|
|
13
|
+
|
|
14
|
+
## 0.0.23
|
|
15
|
+
Thu, 21 Mar 2024 03:15:10 GMT
|
|
16
|
+
|
|
17
|
+
### Updates
|
|
18
|
+
|
|
19
|
+
- Fix `ConsumableWritableStream.write` calls `chunk.consume` twice. (doesn't cause any issue)
|
|
20
|
+
- Fix `WrapWritableStream` might close the inner stream twice. (and throw an error)
|
|
21
|
+
- Remove web-streams-polyfill dependency. The runtime must have global stream implementations (or you can add a polyfill yourself).
|
|
4
22
|
|
|
5
23
|
## 0.0.22
|
|
6
24
|
Wed, 13 Dec 2023 05:57:27 GMT
|
package/LICENSE
CHANGED
package/esm/concat.d.ts
CHANGED
|
@@ -22,9 +22,10 @@ export interface ConcatBufferReadableStream extends ReadableStream<Uint8Array>,
|
|
|
22
22
|
* A `TransformStream` that concatenates `Uint8Array`s.
|
|
23
23
|
*
|
|
24
24
|
* If you want to decode the result as string,
|
|
25
|
-
* prefer `.pipeThrough(new
|
|
26
|
-
* than `.pipeThough(new ConcatBufferStream()).pipeThrough(new
|
|
27
|
-
* because
|
|
25
|
+
* prefer `.pipeThrough(new TextDecoderStream()).pipeThrough(new ConcatStringStream())`,
|
|
26
|
+
* than `.pipeThough(new ConcatBufferStream()).pipeThrough(new TextDecoderStream())`,
|
|
27
|
+
* because of JavaScript engine optimizations,
|
|
28
|
+
* concatenating strings is faster than concatenating `Uint8Array`s.
|
|
28
29
|
*/
|
|
29
30
|
export declare class ConcatBufferStream {
|
|
30
31
|
#private;
|
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":"AAIA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7D,MAAM,WAAW,0BACb,SAAQ,cAAc,CAAC,MAAM,CAAC,EAC1B,OAAO,CAAC,MAAM,CAAC;CAAG;AAO1B;;;;;;;;GAQG;AACH,qBAAa,kBAAkB;;IAoB3B,IAAI,QAAQ,IAAI,cAAc,CAAC,MAAM,CAAC,CAErC;IAQD,IAAI,QAAQ,IAAI,0BAA0B,CAEzC;;CAkBJ;AAED,MAAM,WAAW,0BACb,SAAQ,cAAc,CAAC,UAAU,CAAC,EAC9B,OAAO,CAAC,UAAU,CAAC;CAAG;AAE9B;;;;;;;;GAQG;AACH,qBAAa,kBAAkB;;IA0C3B,IAAI,QAAQ,IAAI,cAAc,CAAC,UAAU,CAAC,CAEzC;IAQD,IAAI,QAAQ,IAAI,0BAA0B,CAEzC;;CAkBJ"}
|
package/esm/concat.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PromiseResolver } from "@yume-chan/async";
|
|
2
|
+
import { EMPTY_UINT8_ARRAY } from "@yume-chan/struct";
|
|
2
3
|
import { ReadableStream, WritableStream } from "./stream.js";
|
|
3
4
|
// `TransformStream` only calls its `source.flush` method when its `readable` is being read.
|
|
4
5
|
// If the user want to use the `Promise` interface, the `flush` method will never be called,
|
|
@@ -61,9 +62,10 @@ export class ConcatStringStream {
|
|
|
61
62
|
* A `TransformStream` that concatenates `Uint8Array`s.
|
|
62
63
|
*
|
|
63
64
|
* If you want to decode the result as string,
|
|
64
|
-
* prefer `.pipeThrough(new
|
|
65
|
-
* than `.pipeThough(new ConcatBufferStream()).pipeThrough(new
|
|
66
|
-
* because
|
|
65
|
+
* prefer `.pipeThrough(new TextDecoderStream()).pipeThrough(new ConcatStringStream())`,
|
|
66
|
+
* than `.pipeThough(new ConcatBufferStream()).pipeThrough(new TextDecoderStream())`,
|
|
67
|
+
* because of JavaScript engine optimizations,
|
|
68
|
+
* concatenating strings is faster than concatenating `Uint8Array`s.
|
|
67
69
|
*/
|
|
68
70
|
export class ConcatBufferStream {
|
|
69
71
|
#segments = [];
|
|
@@ -77,7 +79,7 @@ export class ConcatBufferStream {
|
|
|
77
79
|
let offset = 0;
|
|
78
80
|
switch (this.#segments.length) {
|
|
79
81
|
case 0:
|
|
80
|
-
result =
|
|
82
|
+
result = EMPTY_UINT8_ARRAY;
|
|
81
83
|
break;
|
|
82
84
|
case 1:
|
|
83
85
|
result = this.#segments[0];
|
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;
|
|
1
|
+
{"version":3,"file":"concat.js","sourceRoot":"","sources":["../src/concat.ts"],"names":[],"mappings":"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"}
|
package/esm/consumable.d.ts
CHANGED
|
@@ -1,52 +1,40 @@
|
|
|
1
1
|
import type { QueuingStrategy, WritableStreamDefaultController, WritableStreamDefaultWriter } from "./stream.js";
|
|
2
|
-
import { ReadableStream
|
|
2
|
+
import { ReadableStream as NativeReadableStream, WritableStream as NativeWritableStream } from "./stream.js";
|
|
3
3
|
export declare class Consumable<T> {
|
|
4
4
|
#private;
|
|
5
5
|
readonly value: T;
|
|
6
6
|
readonly consumed: Promise<void>;
|
|
7
7
|
constructor(value: T);
|
|
8
8
|
consume(): void;
|
|
9
|
-
error(error:
|
|
10
|
-
tryConsume<U>(callback: (value: T) => U):
|
|
11
|
-
}
|
|
12
|
-
export declare
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
constructor(sink: ConsumableWritableStreamSink<T>, strategy?: QueuingStrategy<T>);
|
|
40
|
-
}
|
|
41
|
-
export interface ConsumableTransformer<I, O> {
|
|
42
|
-
start?(controller: ConsumableReadableStreamController<O>): void | PromiseLike<void>;
|
|
43
|
-
transform?(chunk: I, controller: ConsumableReadableStreamController<O>): void | PromiseLike<void>;
|
|
44
|
-
flush?(controller: ConsumableReadableStreamController<O>): void | PromiseLike<void>;
|
|
45
|
-
}
|
|
46
|
-
export declare class ConsumableTransformStream<I, O> extends TransformStream<Consumable<I>, Consumable<O>> {
|
|
47
|
-
constructor(transformer: ConsumableTransformer<I, O>);
|
|
48
|
-
}
|
|
49
|
-
export declare class ConsumableInspectStream<T> extends TransformStream<Consumable<T>, Consumable<T>> {
|
|
50
|
-
constructor(callback: (value: T) => void);
|
|
9
|
+
error(error: unknown): void;
|
|
10
|
+
tryConsume<U>(callback: (value: T) => U): U;
|
|
11
|
+
}
|
|
12
|
+
export declare namespace Consumable {
|
|
13
|
+
interface WritableStreamSink<in T> {
|
|
14
|
+
start?(controller: WritableStreamDefaultController): void | PromiseLike<void>;
|
|
15
|
+
write?(chunk: T, controller: WritableStreamDefaultController): void | PromiseLike<void>;
|
|
16
|
+
abort?(reason: unknown): void | PromiseLike<void>;
|
|
17
|
+
close?(): void | PromiseLike<void>;
|
|
18
|
+
}
|
|
19
|
+
class WritableStream<in T> extends NativeWritableStream<Consumable<T>> {
|
|
20
|
+
static write<T>(writer: WritableStreamDefaultWriter<Consumable<T>>, value: T): Promise<void>;
|
|
21
|
+
constructor(sink: WritableStreamSink<T>, strategy?: QueuingStrategy<T>);
|
|
22
|
+
}
|
|
23
|
+
interface ReadableStreamController<T> {
|
|
24
|
+
enqueue(chunk: T): Promise<void>;
|
|
25
|
+
close(): void;
|
|
26
|
+
error(reason: unknown): void;
|
|
27
|
+
}
|
|
28
|
+
interface ReadableStreamSource<T> {
|
|
29
|
+
start?(controller: ReadableStreamController<T>): void | PromiseLike<void>;
|
|
30
|
+
pull?(controller: ReadableStreamController<T>): void | PromiseLike<void>;
|
|
31
|
+
cancel?(reason: unknown): void | PromiseLike<void>;
|
|
32
|
+
}
|
|
33
|
+
class ReadableStream<T> extends NativeReadableStream<Consumable<T>> {
|
|
34
|
+
static enqueue<T>(controller: {
|
|
35
|
+
enqueue: (chunk: Consumable<T>) => void;
|
|
36
|
+
}, chunk: T): Promise<void>;
|
|
37
|
+
constructor(source: ReadableStreamSource<T>, strategy?: QueuingStrategy<T>);
|
|
38
|
+
}
|
|
51
39
|
}
|
|
52
40
|
//# sourceMappingURL=consumable.d.ts.map
|
package/esm/consumable.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consumable.d.ts","sourceRoot":"","sources":["../src/consumable.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,eAAe,EACf,+BAA+B,EAC/B,2BAA2B,EAC9B,MAAM,aAAa,CAAC;AACrB,OAAO,
|
|
1
|
+
{"version":3,"file":"consumable.d.ts","sourceRoot":"","sources":["../src/consumable.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,eAAe,EACf,+BAA+B,EAC/B,2BAA2B,EAC9B,MAAM,aAAa,CAAC;AACrB,OAAO,EACH,cAAc,IAAI,oBAAoB,EACtC,cAAc,IAAI,oBAAoB,EACzC,MAAM,aAAa,CAAC;AAQrB,qBAAa,UAAU,CAAC,CAAC;;IAIrB,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;gBAErB,KAAK,EAAE,CAAC;IAOpB,OAAO;IAIP,KAAK,CAAC,KAAK,EAAE,OAAO;IAIpB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC;CAuB1C;AAED,yBAAiB,UAAU,CAAC;IACxB,UAAiB,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACpC,KAAK,CAAC,CACF,UAAU,EAAE,+BAA+B,GAC5C,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,KAAK,CAAC,CACF,KAAK,EAAE,CAAC,EACR,UAAU,EAAE,+BAA+B,GAC5C,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAClD,KAAK,CAAC,IAAI,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;KACtC;IAED,MAAa,cAAc,CAAC,EAAE,CAAC,CAAC,CAAE,SAAQ,oBAAoB,CAC1D,UAAU,CAAC,CAAC,CAAC,CAChB;eACgB,KAAK,CAAC,CAAC,EAChB,MAAM,EAAE,2BAA2B,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAClD,KAAK,EAAE,CAAC;oBAQR,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC3B,QAAQ,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;KAqCpC;IAED,UAAiB,wBAAwB,CAAC,CAAC;QACvC,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACjC,KAAK,IAAI,IAAI,CAAC;QACd,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;KAChC;IAED,UAAiB,oBAAoB,CAAC,CAAC;QACnC,KAAK,CAAC,CACF,UAAU,EAAE,wBAAwB,CAAC,CAAC,CAAC,GACxC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,CACD,UAAU,EAAE,wBAAwB,CAAC,CAAC,CAAC,GACxC,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAC5B,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;KACtD;IAED,MAAa,cAAc,CAAC,CAAC,CAAE,SAAQ,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;eACzD,OAAO,CAAC,CAAC,EAClB,UAAU,EAAE;YAAE,OAAO,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;SAAE,EACvD,KAAK,EAAE,CAAC;oBAQR,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC,EAC/B,QAAQ,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;KA4CpC;CACJ"}
|
package/esm/consumable.js
CHANGED
|
@@ -1,13 +1,9 @@
|
|
|
1
1
|
import { PromiseResolver } from "@yume-chan/async";
|
|
2
|
-
import { ReadableStream
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
run(callback) {
|
|
8
|
-
return callback();
|
|
9
|
-
},
|
|
10
|
-
}));
|
|
2
|
+
import { ReadableStream as NativeReadableStream, WritableStream as NativeWritableStream, } from "./stream.js";
|
|
3
|
+
import { createTask } from "./task.js";
|
|
4
|
+
function isPromiseLike(value) {
|
|
5
|
+
return typeof value === "object" && value !== null && "then" in value;
|
|
6
|
+
}
|
|
11
7
|
export class Consumable {
|
|
12
8
|
#task;
|
|
13
9
|
#resolver;
|
|
@@ -25,11 +21,21 @@ export class Consumable {
|
|
|
25
21
|
error(error) {
|
|
26
22
|
this.#resolver.reject(error);
|
|
27
23
|
}
|
|
28
|
-
|
|
24
|
+
tryConsume(callback) {
|
|
29
25
|
try {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
26
|
+
let result = this.#task.run(() => callback(this.value));
|
|
27
|
+
if (isPromiseLike(result)) {
|
|
28
|
+
result = result.then((value) => {
|
|
29
|
+
this.#resolver.resolve();
|
|
30
|
+
return value;
|
|
31
|
+
}, (e) => {
|
|
32
|
+
this.#resolver.reject(e);
|
|
33
|
+
throw e;
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
this.#resolver.resolve();
|
|
38
|
+
}
|
|
33
39
|
return result;
|
|
34
40
|
}
|
|
35
41
|
catch (e) {
|
|
@@ -38,141 +44,87 @@ export class Consumable {
|
|
|
38
44
|
}
|
|
39
45
|
}
|
|
40
46
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
chunk.consume();
|
|
61
|
-
},
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
export class ConsumableReadableStream extends ReadableStream {
|
|
66
|
-
constructor(source, strategy) {
|
|
67
|
-
let wrappedController;
|
|
68
|
-
let wrappedStrategy;
|
|
69
|
-
if (strategy) {
|
|
70
|
-
wrappedStrategy = {};
|
|
71
|
-
if ("highWaterMark" in strategy) {
|
|
72
|
-
wrappedStrategy.highWaterMark = strategy.highWaterMark;
|
|
73
|
-
}
|
|
74
|
-
if ("size" in strategy) {
|
|
75
|
-
wrappedStrategy.size = (chunk) => {
|
|
76
|
-
return strategy.size(chunk.value);
|
|
77
|
-
};
|
|
47
|
+
(function (Consumable) {
|
|
48
|
+
class WritableStream extends NativeWritableStream {
|
|
49
|
+
static async write(writer, value) {
|
|
50
|
+
const consumable = new Consumable(value);
|
|
51
|
+
await writer.write(consumable);
|
|
52
|
+
await consumable.consumed;
|
|
53
|
+
}
|
|
54
|
+
constructor(sink, strategy) {
|
|
55
|
+
let wrappedStrategy;
|
|
56
|
+
if (strategy) {
|
|
57
|
+
wrappedStrategy = {};
|
|
58
|
+
if ("highWaterMark" in strategy) {
|
|
59
|
+
wrappedStrategy.highWaterMark = strategy.highWaterMark;
|
|
60
|
+
}
|
|
61
|
+
if ("size" in strategy) {
|
|
62
|
+
wrappedStrategy.size = (chunk) => {
|
|
63
|
+
return strategy.size(chunk instanceof Consumable ? chunk.value : chunk);
|
|
64
|
+
};
|
|
65
|
+
}
|
|
78
66
|
}
|
|
67
|
+
super({
|
|
68
|
+
start(controller) {
|
|
69
|
+
return sink.start?.(controller);
|
|
70
|
+
},
|
|
71
|
+
async write(chunk, controller) {
|
|
72
|
+
await chunk.tryConsume((chunk) => sink.write?.(chunk, controller));
|
|
73
|
+
},
|
|
74
|
+
abort(reason) {
|
|
75
|
+
return sink.abort?.(reason);
|
|
76
|
+
},
|
|
77
|
+
close() {
|
|
78
|
+
return sink.close?.();
|
|
79
|
+
},
|
|
80
|
+
}, wrappedStrategy);
|
|
79
81
|
}
|
|
80
|
-
super({
|
|
81
|
-
async start(controller) {
|
|
82
|
-
wrappedController = {
|
|
83
|
-
async enqueue(chunk) {
|
|
84
|
-
await enqueue(controller, chunk);
|
|
85
|
-
},
|
|
86
|
-
close() {
|
|
87
|
-
controller.close();
|
|
88
|
-
},
|
|
89
|
-
error(reason) {
|
|
90
|
-
controller.error(reason);
|
|
91
|
-
},
|
|
92
|
-
};
|
|
93
|
-
await source.start?.(wrappedController);
|
|
94
|
-
},
|
|
95
|
-
async pull() {
|
|
96
|
-
await source.pull?.(wrappedController);
|
|
97
|
-
},
|
|
98
|
-
async cancel(reason) {
|
|
99
|
-
await source.cancel?.(reason);
|
|
100
|
-
},
|
|
101
|
-
}, wrappedStrategy);
|
|
102
82
|
}
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
83
|
+
Consumable.WritableStream = WritableStream;
|
|
84
|
+
class ReadableStream extends NativeReadableStream {
|
|
85
|
+
static async enqueue(controller, chunk) {
|
|
86
|
+
const output = new Consumable(chunk);
|
|
87
|
+
controller.enqueue(output);
|
|
88
|
+
await output.consumed;
|
|
89
|
+
}
|
|
90
|
+
constructor(source, strategy) {
|
|
91
|
+
let wrappedController;
|
|
92
|
+
let wrappedStrategy;
|
|
93
|
+
if (strategy) {
|
|
94
|
+
wrappedStrategy = {};
|
|
95
|
+
if ("highWaterMark" in strategy) {
|
|
96
|
+
wrappedStrategy.highWaterMark = strategy.highWaterMark;
|
|
97
|
+
}
|
|
98
|
+
if ("size" in strategy) {
|
|
99
|
+
wrappedStrategy.size = (chunk) => {
|
|
100
|
+
return strategy.size(chunk.value);
|
|
101
|
+
};
|
|
102
|
+
}
|
|
121
103
|
}
|
|
104
|
+
super({
|
|
105
|
+
async start(controller) {
|
|
106
|
+
wrappedController = {
|
|
107
|
+
async enqueue(chunk) {
|
|
108
|
+
await ReadableStream.enqueue(controller, chunk);
|
|
109
|
+
},
|
|
110
|
+
close() {
|
|
111
|
+
controller.close();
|
|
112
|
+
},
|
|
113
|
+
error(reason) {
|
|
114
|
+
controller.error(reason);
|
|
115
|
+
},
|
|
116
|
+
};
|
|
117
|
+
await source.start?.(wrappedController);
|
|
118
|
+
},
|
|
119
|
+
async pull() {
|
|
120
|
+
await source.pull?.(wrappedController);
|
|
121
|
+
},
|
|
122
|
+
async cancel(reason) {
|
|
123
|
+
await source.cancel?.(reason);
|
|
124
|
+
},
|
|
125
|
+
}, wrappedStrategy);
|
|
122
126
|
}
|
|
123
|
-
super({
|
|
124
|
-
start(controller) {
|
|
125
|
-
return sink.start?.(controller);
|
|
126
|
-
},
|
|
127
|
-
async write(chunk, controller) {
|
|
128
|
-
await chunk.tryConsume((value) => sink.write?.(value, controller));
|
|
129
|
-
chunk.consume();
|
|
130
|
-
},
|
|
131
|
-
abort(reason) {
|
|
132
|
-
return sink.abort?.(reason);
|
|
133
|
-
},
|
|
134
|
-
close() {
|
|
135
|
-
return sink.close?.();
|
|
136
|
-
},
|
|
137
|
-
}, wrappedStrategy);
|
|
138
127
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
constructor(transformer) {
|
|
142
|
-
let wrappedController;
|
|
143
|
-
super({
|
|
144
|
-
async start(controller) {
|
|
145
|
-
wrappedController = {
|
|
146
|
-
async enqueue(chunk) {
|
|
147
|
-
await enqueue(controller, chunk);
|
|
148
|
-
},
|
|
149
|
-
close() {
|
|
150
|
-
controller.terminate();
|
|
151
|
-
},
|
|
152
|
-
error(reason) {
|
|
153
|
-
controller.error(reason);
|
|
154
|
-
},
|
|
155
|
-
};
|
|
156
|
-
await transformer.start?.(wrappedController);
|
|
157
|
-
},
|
|
158
|
-
async transform(chunk) {
|
|
159
|
-
await chunk.tryConsume((value) => transformer.transform?.(value, wrappedController));
|
|
160
|
-
chunk.consume();
|
|
161
|
-
},
|
|
162
|
-
async flush() {
|
|
163
|
-
await transformer.flush?.(wrappedController);
|
|
164
|
-
},
|
|
165
|
-
});
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
export class ConsumableInspectStream extends TransformStream {
|
|
169
|
-
constructor(callback) {
|
|
170
|
-
super({
|
|
171
|
-
transform(chunk, controller) {
|
|
172
|
-
callback(chunk.value);
|
|
173
|
-
controller.enqueue(chunk);
|
|
174
|
-
},
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
|
-
}
|
|
128
|
+
Consumable.ReadableStream = ReadableStream;
|
|
129
|
+
})(Consumable || (Consumable = {}));
|
|
178
130
|
//# sourceMappingURL=consumable.js.map
|
package/esm/consumable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"consumable.js","sourceRoot":"","sources":["../src/consumable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOnD,OAAO,
|
|
1
|
+
{"version":3,"file":"consumable.js","sourceRoot":"","sources":["../src/consumable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAOnD,OAAO,EACH,cAAc,IAAI,oBAAoB,EACtC,cAAc,IAAI,oBAAoB,GACzC,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,SAAS,aAAa,CAAC,KAAc;IACjC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK,CAAC;AAC1E,CAAC;AAED,MAAM,OAAO,UAAU;IACV,KAAK,CAAO;IACZ,SAAS,CAAwB;IAEjC,KAAK,CAAI;IACT,QAAQ,CAAgB;IAEjC,YAAY,KAAQ;QAChB,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,IAAI,eAAe,EAAQ,CAAC;QAC7C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IAC3C,CAAC;IAED,OAAO;QACH,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,KAAc;QAChB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,UAAU,CAAI,QAAyB;QACnC,IAAI,CAAC;YACD,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACxD,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxB,MAAM,GAAG,MAAM,CAAC,IAAI,CAChB,CAAC,KAAK,EAAE,EAAE;oBACN,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;oBACzB,OAAO,KAAK,CAAC;gBACjB,CAAC,EACD,CAAC,CAAC,EAAE,EAAE;oBACF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACzB,MAAM,CAAC,CAAC;gBACZ,CAAC,CACC,CAAC;YACX,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC7B,CAAC;YACD,OAAO,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,CAAC,CAAC;QACZ,CAAC;IACL,CAAC;CACJ;AAED,WAAiB,UAAU;IAavB,MAAa,cAAqB,SAAQ,oBAEzC;QACG,MAAM,CAAC,KAAK,CAAC,KAAK,CACd,MAAkD,EAClD,KAAQ;YAER,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC/B,MAAM,UAAU,CAAC,QAAQ,CAAC;QAC9B,CAAC;QAED,YACI,IAA2B,EAC3B,QAA6B;YAE7B,IAAI,eAA2D,CAAC;YAChE,IAAI,QAAQ,EAAE,CAAC;gBACX,eAAe,GAAG,EAAE,CAAC;gBACrB,IAAI,eAAe,IAAI,QAAQ,EAAE,CAAC;oBAC9B,eAAe,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;gBAC3D,CAAC;gBACD,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;oBACrB,eAAe,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE;wBAC7B,OAAO,QAAQ,CAAC,IAAK,CACjB,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CACpD,CAAC;oBACN,CAAC,CAAC;gBACN,CAAC;YACL,CAAC;YAED,KAAK,CACD;gBACI,KAAK,CAAC,UAAU;oBACZ,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,UAAU,CAAC,CAAC;gBACpC,CAAC;gBACD,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU;oBACzB,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CAC7B,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,CAClC,CAAC;gBACN,CAAC;gBACD,KAAK,CAAC,MAAM;oBACR,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;gBAChC,CAAC;gBACD,KAAK;oBACD,OAAO,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC1B,CAAC;aACJ,EACD,eAAe,CAClB,CAAC;QACN,CAAC;KACJ;IAnDY,yBAAc,iBAmD1B,CAAA;IAkBD,MAAa,cAAkB,SAAQ,oBAAmC;QACtE,MAAM,CAAC,KAAK,CAAC,OAAO,CAChB,UAAuD,EACvD,KAAQ;YAER,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;YACrC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC3B,MAAM,MAAM,CAAC,QAAQ,CAAC;QAC1B,CAAC;QAED,YACI,MAA+B,EAC/B,QAA6B;YAE7B,IAAI,iBAA0D,CAAC;YAE/D,IAAI,eAA2D,CAAC;YAChE,IAAI,QAAQ,EAAE,CAAC;gBACX,eAAe,GAAG,EAAE,CAAC;gBACrB,IAAI,eAAe,IAAI,QAAQ,EAAE,CAAC;oBAC9B,eAAe,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;gBAC3D,CAAC;gBACD,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;oBACrB,eAAe,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE;wBAC7B,OAAO,QAAQ,CAAC,IAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACvC,CAAC,CAAC;gBACN,CAAC;YACL,CAAC;YAED,KAAK,CACD;gBACI,KAAK,CAAC,KAAK,CAAC,UAAU;oBAClB,iBAAiB,GAAG;wBAChB,KAAK,CAAC,OAAO,CAAC,KAAK;4BACf,MAAM,cAAc,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;wBACpD,CAAC;wBACD,KAAK;4BACD,UAAU,CAAC,KAAK,EAAE,CAAC;wBACvB,CAAC;wBACD,KAAK,CAAC,MAAM;4BACR,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;wBAC7B,CAAC;qBACJ,CAAC;oBAEF,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,iBAAiB,CAAC,CAAC;gBAC5C,CAAC;gBACD,KAAK,CAAC,IAAI;oBACN,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,iBAAkB,CAAC,CAAC;gBAC5C,CAAC;gBACD,KAAK,CAAC,MAAM,CAAC,MAAM;oBACf,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;gBAClC,CAAC;aACJ,EACD,eAAe,CAClB,CAAC;QACN,CAAC;KACJ;IAxDY,yBAAc,iBAwD1B,CAAA;AACL,CAAC,EA3IgB,UAAU,KAAV,UAAU,QA2I1B"}
|
package/esm/distribution.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MaybeConsumable } from "./maybe-consumable.js";
|
|
2
|
+
import { TransformStream } from "./stream.js";
|
|
2
3
|
/**
|
|
3
4
|
* Splits or combines buffers to specified size.
|
|
4
5
|
*/
|
|
@@ -15,7 +16,7 @@ export declare class BufferCombiner {
|
|
|
15
16
|
push(data: Uint8Array): Generator<Uint8Array, void, void>;
|
|
16
17
|
flush(): Uint8Array | undefined;
|
|
17
18
|
}
|
|
18
|
-
export declare class DistributionStream extends
|
|
19
|
+
export declare class DistributionStream extends TransformStream<MaybeConsumable<Uint8Array>, MaybeConsumable<Uint8Array>> {
|
|
19
20
|
constructor(size: number, combine?: boolean);
|
|
20
21
|
}
|
|
21
22
|
//# sourceMappingURL=distribution.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distribution.d.ts","sourceRoot":"","sources":["../src/distribution.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"distribution.d.ts","sourceRoot":"","sources":["../src/distribution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C;;GAEG;AACH,qBAAa,cAAc;;gBAMX,IAAI,EAAE,MAAM;IAOxB;;;;;;OAMG;IACF,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC;IA0C1D,KAAK,IAAI,UAAU,GAAG,SAAS;CAUlC;AAED,qBAAa,kBAAmB,SAAQ,eAAe,CACnD,eAAe,CAAC,UAAU,CAAC,EAC3B,eAAe,CAAC,UAAU,CAAC,CAC9B;gBACe,IAAI,EAAE,MAAM,EAAE,OAAO,UAAQ;CAqC5C"}
|