@yume-chan/stream-extra 2.0.1 → 2.5.3
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.md +6 -0
- package/esm/consumable/index.d.ts +5 -0
- package/esm/consumable/index.d.ts.map +1 -0
- package/esm/consumable/index.js +5 -0
- package/esm/consumable/index.js.map +1 -0
- package/esm/consumable/readable.d.ts +20 -0
- package/esm/consumable/readable.d.ts.map +1 -0
- package/esm/consumable/readable.js +47 -0
- package/esm/consumable/readable.js.map +1 -0
- package/esm/consumable/wrap-byte-readable.d.ts +6 -0
- package/esm/consumable/wrap-byte-readable.d.ts.map +1 -0
- package/esm/consumable/wrap-byte-readable.js +23 -0
- package/esm/consumable/wrap-byte-readable.js.map +1 -0
- package/esm/consumable/wrap-writable.d.ts +6 -0
- package/esm/consumable/wrap-writable.d.ts.map +1 -0
- package/esm/consumable/wrap-writable.js +18 -0
- package/esm/consumable/wrap-writable.js.map +1 -0
- package/esm/consumable/writable.d.ts +14 -0
- package/esm/consumable/writable.d.ts.map +1 -0
- package/esm/{maybe-consumable-ns.js → consumable/writable.js} +10 -16
- package/esm/consumable/writable.js.map +1 -0
- package/esm/consumable.d.ts +13 -33
- package/esm/consumable.d.ts.map +1 -1
- package/esm/consumable.js +5 -83
- package/esm/consumable.js.map +1 -1
- package/esm/maybe-consumable/index.d.ts +5 -0
- package/esm/maybe-consumable/index.d.ts.map +1 -0
- package/esm/maybe-consumable/index.js +4 -0
- package/esm/maybe-consumable/index.js.map +1 -0
- package/esm/maybe-consumable/utils.d.ts +5 -0
- package/esm/maybe-consumable/utils.d.ts.map +1 -0
- package/esm/maybe-consumable/utils.js +13 -0
- package/esm/maybe-consumable/utils.js.map +1 -0
- package/esm/maybe-consumable/wrap-writable.d.ts +6 -0
- package/esm/maybe-consumable/wrap-writable.d.ts.map +1 -0
- package/esm/maybe-consumable/wrap-writable.js +19 -0
- package/esm/maybe-consumable/wrap-writable.js.map +1 -0
- package/esm/maybe-consumable/writable.d.ts +13 -0
- package/esm/maybe-consumable/writable.d.ts.map +1 -0
- package/esm/maybe-consumable/writable.js +34 -0
- package/esm/maybe-consumable/writable.js.map +1 -0
- package/esm/maybe-consumable.d.ts +1 -1
- package/esm/maybe-consumable.d.ts.map +1 -1
- package/esm/maybe-consumable.js +1 -1
- package/esm/maybe-consumable.js.map +1 -1
- package/esm/try-close.d.ts +7 -5
- package/esm/try-close.d.ts.map +1 -1
- package/esm/try-close.js +6 -2
- package/esm/try-close.js.map +1 -1
- package/esm/types.d.ts +1 -1
- package/esm/types.d.ts.map +1 -1
- package/package.json +7 -7
- package/src/consumable/index.ts +4 -0
- package/src/consumable/readable.ts +80 -0
- package/src/consumable/wrap-byte-readable.ts +33 -0
- package/src/consumable/wrap-writable.ts +21 -0
- package/src/consumable/writable.ts +72 -0
- package/src/consumable.ts +23 -150
- package/src/maybe-consumable/index.ts +4 -0
- package/src/maybe-consumable/utils.ts +17 -0
- package/src/maybe-consumable/wrap-writable.ts +23 -0
- package/src/{maybe-consumable-ns.ts → maybe-consumable/writable.ts} +13 -23
- package/src/maybe-consumable.ts +1 -1
- package/src/try-close.ts +16 -16
- package/src/types.ts +1 -1
- package/tsconfig.build.tsbuildinfo +1 -1
- package/esm/maybe-consumable-ns.d.ts +0 -16
- package/esm/maybe-consumable-ns.d.ts.map +0 -1
- package/esm/maybe-consumable-ns.js.map +0 -1
package/esm/try-close.d.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import type { BufferedReadableStream } from "./buffered.js";
|
|
2
|
-
import type {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
export declare function tryClose(
|
|
2
|
+
import type { ReadableStream, ReadableStreamDefaultReader } from "./stream.js";
|
|
3
|
+
export declare function tryClose(value: {
|
|
4
|
+
close(): PromiseLike<void>;
|
|
5
|
+
}): Promise<boolean>;
|
|
6
|
+
export declare function tryClose(value: {
|
|
7
|
+
close(): void;
|
|
8
|
+
}): boolean;
|
|
7
9
|
export declare function tryCancel(stream: ReadableStream<unknown>): Promise<boolean>;
|
|
8
10
|
export declare function tryCancel(stream: BufferedReadableStream): Promise<boolean>;
|
|
9
11
|
export declare function tryCancel(reader: ReadableStreamDefaultReader<unknown>): Promise<boolean>;
|
package/esm/try-close.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"try-close.d.ts","sourceRoot":"","sources":["../src/try-close.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"try-close.d.ts","sourceRoot":"","sources":["../src/try-close.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAE/E,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAC5B,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;CAC9B,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AACrB,wBAAgB,QAAQ,CAAC,KAAK,EAAE;IAAE,KAAK,IAAI,IAAI,CAAA;CAAE,GAAG,OAAO,CAAC;AAgB5D,wBAAsB,SAAS,CAC3B,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC,CAAC;AACpB,wBAAsB,SAAS,CAC3B,MAAM,EAAE,sBAAsB,GAC/B,OAAO,CAAC,OAAO,CAAC,CAAC;AACpB,wBAAsB,SAAS,CAC3B,MAAM,EAAE,2BAA2B,CAAC,OAAO,CAAC,GAC7C,OAAO,CAAC,OAAO,CAAC,CAAC"}
|
package/esm/try-close.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
import { isPromiseLike } from "@yume-chan/async";
|
|
2
|
+
export function tryClose(value) {
|
|
2
3
|
try {
|
|
3
|
-
|
|
4
|
+
const result = value.close();
|
|
5
|
+
if (isPromiseLike(result)) {
|
|
6
|
+
return result.then(() => true, () => false);
|
|
7
|
+
}
|
|
4
8
|
return true;
|
|
5
9
|
}
|
|
6
10
|
catch {
|
package/esm/try-close.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"try-close.js","sourceRoot":"","sources":["../src/try-close.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"try-close.js","sourceRoot":"","sources":["../src/try-close.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AASjD,MAAM,UAAU,QAAQ,CAAC,KAA0C;IAC/D,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,OAAO,MAAM,CAAC,IAAI,CACd,GAAG,EAAE,CAAC,IAAI,EACV,GAAG,EAAE,CAAC,KAAK,CACd,CAAC;QACN,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AAWD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAE/B;IACG,IAAI,CAAC;QACD,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC"}
|
package/esm/types.d.ts
CHANGED
|
@@ -268,7 +268,7 @@ export declare class ReadableStreamBYOBReader {
|
|
|
268
268
|
* @public
|
|
269
269
|
*/
|
|
270
270
|
export declare interface ReadableStreamBYOBReaderReadOptions {
|
|
271
|
-
min?: number;
|
|
271
|
+
min?: number | undefined;
|
|
272
272
|
}
|
|
273
273
|
/**
|
|
274
274
|
* A result returned by {@link ReadableStreamBYOBReader.read}.
|
package/esm/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yume-chan/stream-extra",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.3",
|
|
4
4
|
"description": "Extensions to Web Streams API",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"stream",
|
|
@@ -26,15 +26,15 @@
|
|
|
26
26
|
"types": "esm/index.d.ts",
|
|
27
27
|
"sideEffects": false,
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@yume-chan/async": "^4.
|
|
30
|
-
"@yume-chan/struct": "^2.
|
|
29
|
+
"@yume-chan/async": "^4.1.3",
|
|
30
|
+
"@yume-chan/struct": "^2.3.2"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@types/node": "^
|
|
34
|
-
"prettier": "^3.
|
|
35
|
-
"typescript": "^5.
|
|
36
|
-
"@yume-chan/test-runner": "^1.0.0",
|
|
33
|
+
"@types/node": "^24.3.1",
|
|
34
|
+
"prettier": "^3.6.2",
|
|
35
|
+
"typescript": "^5.9.2",
|
|
37
36
|
"@yume-chan/eslint-config": "^1.0.0",
|
|
37
|
+
"@yume-chan/test-runner": "^1.0.0",
|
|
38
38
|
"@yume-chan/tsconfig": "^1.0.0"
|
|
39
39
|
},
|
|
40
40
|
"scripts": {
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { Consumable } from "../consumable.js";
|
|
2
|
+
import type { QueuingStrategy } from "../stream.js";
|
|
3
|
+
import { ReadableStream } from "../stream.js";
|
|
4
|
+
|
|
5
|
+
export interface ConsumableReadableStreamController<T> {
|
|
6
|
+
enqueue(chunk: T): Promise<void>;
|
|
7
|
+
close(): void;
|
|
8
|
+
error(reason: unknown): void;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export interface ConsumableReadableStreamSource<T> {
|
|
12
|
+
start?(
|
|
13
|
+
controller: ConsumableReadableStreamController<T>,
|
|
14
|
+
): void | PromiseLike<void>;
|
|
15
|
+
pull?(
|
|
16
|
+
controller: ConsumableReadableStreamController<T>,
|
|
17
|
+
): void | PromiseLike<void>;
|
|
18
|
+
cancel?(reason: unknown): void | PromiseLike<void>;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export class ConsumableReadableStream<T> extends ReadableStream<Consumable<T>> {
|
|
22
|
+
static async enqueue<T>(
|
|
23
|
+
controller: { enqueue: (chunk: Consumable<T>) => void },
|
|
24
|
+
chunk: T,
|
|
25
|
+
) {
|
|
26
|
+
const output = new Consumable(chunk);
|
|
27
|
+
controller.enqueue(output);
|
|
28
|
+
await output.consumed;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
constructor(
|
|
32
|
+
source: ConsumableReadableStreamSource<T>,
|
|
33
|
+
strategy?: QueuingStrategy<T>,
|
|
34
|
+
) {
|
|
35
|
+
let wrappedController!: ConsumableReadableStreamController<T>;
|
|
36
|
+
|
|
37
|
+
let wrappedStrategy: QueuingStrategy<Consumable<T>> | undefined;
|
|
38
|
+
if (strategy) {
|
|
39
|
+
wrappedStrategy = {};
|
|
40
|
+
if ("highWaterMark" in strategy) {
|
|
41
|
+
wrappedStrategy.highWaterMark = strategy.highWaterMark;
|
|
42
|
+
}
|
|
43
|
+
if ("size" in strategy) {
|
|
44
|
+
wrappedStrategy.size = (chunk) => {
|
|
45
|
+
return strategy.size!(chunk.value);
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
super(
|
|
51
|
+
{
|
|
52
|
+
start(controller) {
|
|
53
|
+
wrappedController = {
|
|
54
|
+
enqueue(chunk) {
|
|
55
|
+
return ConsumableReadableStream.enqueue(
|
|
56
|
+
controller,
|
|
57
|
+
chunk,
|
|
58
|
+
);
|
|
59
|
+
},
|
|
60
|
+
close() {
|
|
61
|
+
controller.close();
|
|
62
|
+
},
|
|
63
|
+
error(reason) {
|
|
64
|
+
controller.error(reason);
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
return source.start?.(wrappedController);
|
|
69
|
+
},
|
|
70
|
+
pull() {
|
|
71
|
+
return source.pull?.(wrappedController);
|
|
72
|
+
},
|
|
73
|
+
cancel(reason) {
|
|
74
|
+
return source.cancel?.(reason);
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
wrappedStrategy,
|
|
78
|
+
);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Consumable } from "../consumable.js";
|
|
2
|
+
import { ReadableStream } from "../stream.js";
|
|
3
|
+
|
|
4
|
+
import { ConsumableReadableStream } from "./readable.js";
|
|
5
|
+
|
|
6
|
+
export class ConsumableWrapByteReadableStream extends ReadableStream<
|
|
7
|
+
Consumable<Uint8Array>
|
|
8
|
+
> {
|
|
9
|
+
constructor(
|
|
10
|
+
stream: ReadableStream<Uint8Array>,
|
|
11
|
+
chunkSize: number,
|
|
12
|
+
min?: number,
|
|
13
|
+
) {
|
|
14
|
+
const reader = stream.getReader({ mode: "byob" });
|
|
15
|
+
let array = new Uint8Array(chunkSize);
|
|
16
|
+
super({
|
|
17
|
+
async pull(controller) {
|
|
18
|
+
const { done, value } = await reader.read(array, { min });
|
|
19
|
+
if (done) {
|
|
20
|
+
controller.close();
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
await ConsumableReadableStream.enqueue(controller, value);
|
|
25
|
+
|
|
26
|
+
array = new Uint8Array(value.buffer);
|
|
27
|
+
},
|
|
28
|
+
cancel(reason) {
|
|
29
|
+
return reader.cancel(reason);
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { Consumable } from "../consumable.js";
|
|
2
|
+
import { WritableStream } from "../stream.js";
|
|
3
|
+
|
|
4
|
+
export class ConsumableWrapWritableStream<in T> extends WritableStream<
|
|
5
|
+
Consumable<T>
|
|
6
|
+
> {
|
|
7
|
+
constructor(stream: WritableStream<T>) {
|
|
8
|
+
const writer = stream.getWriter();
|
|
9
|
+
super({
|
|
10
|
+
write(chunk) {
|
|
11
|
+
return chunk.tryConsume((chunk) => writer.write(chunk));
|
|
12
|
+
},
|
|
13
|
+
abort(reason) {
|
|
14
|
+
return writer.abort(reason);
|
|
15
|
+
},
|
|
16
|
+
close() {
|
|
17
|
+
return writer.close();
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { Consumable } from "../consumable.js";
|
|
2
|
+
import type {
|
|
3
|
+
QueuingStrategy,
|
|
4
|
+
WritableStreamDefaultController,
|
|
5
|
+
WritableStreamDefaultWriter,
|
|
6
|
+
} from "../stream.js";
|
|
7
|
+
import { WritableStream } from "../stream.js";
|
|
8
|
+
|
|
9
|
+
export interface ConsumableWritableStreamSink<in T> {
|
|
10
|
+
start?(
|
|
11
|
+
controller: WritableStreamDefaultController,
|
|
12
|
+
): void | PromiseLike<void>;
|
|
13
|
+
write?(
|
|
14
|
+
chunk: T,
|
|
15
|
+
controller: WritableStreamDefaultController,
|
|
16
|
+
): void | PromiseLike<void>;
|
|
17
|
+
abort?(reason: unknown): void | PromiseLike<void>;
|
|
18
|
+
close?(): void | PromiseLike<void>;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export class ConsumableWritableStream<in T> extends WritableStream<
|
|
22
|
+
Consumable<T>
|
|
23
|
+
> {
|
|
24
|
+
static async write<T>(
|
|
25
|
+
writer: WritableStreamDefaultWriter<Consumable<T>>,
|
|
26
|
+
value: T,
|
|
27
|
+
) {
|
|
28
|
+
const consumable = new Consumable(value);
|
|
29
|
+
await writer.write(consumable);
|
|
30
|
+
await consumable.consumed;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
constructor(
|
|
34
|
+
sink: ConsumableWritableStreamSink<T>,
|
|
35
|
+
strategy?: QueuingStrategy<T>,
|
|
36
|
+
) {
|
|
37
|
+
let wrappedStrategy: QueuingStrategy<Consumable<T>> | undefined;
|
|
38
|
+
if (strategy) {
|
|
39
|
+
wrappedStrategy = {};
|
|
40
|
+
if ("highWaterMark" in strategy) {
|
|
41
|
+
wrappedStrategy.highWaterMark = strategy.highWaterMark;
|
|
42
|
+
}
|
|
43
|
+
if ("size" in strategy) {
|
|
44
|
+
wrappedStrategy.size = (chunk) => {
|
|
45
|
+
return strategy.size!(
|
|
46
|
+
chunk instanceof Consumable ? chunk.value : chunk,
|
|
47
|
+
);
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
super(
|
|
53
|
+
{
|
|
54
|
+
start(controller) {
|
|
55
|
+
return sink.start?.(controller);
|
|
56
|
+
},
|
|
57
|
+
write(chunk, controller) {
|
|
58
|
+
return chunk.tryConsume((chunk) =>
|
|
59
|
+
sink.write?.(chunk, controller),
|
|
60
|
+
);
|
|
61
|
+
},
|
|
62
|
+
abort(reason) {
|
|
63
|
+
return sink.abort?.(reason);
|
|
64
|
+
},
|
|
65
|
+
close() {
|
|
66
|
+
return sink.close?.();
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
wrappedStrategy,
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
}
|
package/src/consumable.ts
CHANGED
|
@@ -1,133 +1,24 @@
|
|
|
1
1
|
import { PromiseResolver, isPromiseLike } from "@yume-chan/async";
|
|
2
2
|
|
|
3
3
|
import type {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
} from "./
|
|
4
|
+
ConsumableReadableStreamController,
|
|
5
|
+
ConsumableReadableStreamSource,
|
|
6
|
+
ConsumableWritableStreamSink,
|
|
7
|
+
} from "./consumable/index.js";
|
|
8
8
|
import {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
ConsumableReadableStream,
|
|
10
|
+
ConsumableWrapByteReadableStream,
|
|
11
|
+
ConsumableWrapWritableStream,
|
|
12
|
+
ConsumableWritableStream,
|
|
13
|
+
} from "./consumable/index.js";
|
|
12
14
|
import type { Task } from "./task.js";
|
|
13
15
|
import { createTask } from "./task.js";
|
|
14
16
|
|
|
15
|
-
// Workaround https://github.com/evanw/esbuild/issues/3923
|
|
16
|
-
class WritableStream<in T> extends NativeWritableStream<Consumable<T>> {
|
|
17
|
-
static async write<T>(
|
|
18
|
-
writer: WritableStreamDefaultWriter<Consumable<T>>,
|
|
19
|
-
value: T,
|
|
20
|
-
) {
|
|
21
|
-
const consumable = new Consumable(value);
|
|
22
|
-
await writer.write(consumable);
|
|
23
|
-
await consumable.consumed;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
constructor(
|
|
27
|
-
sink: Consumable.WritableStreamSink<T>,
|
|
28
|
-
strategy?: QueuingStrategy<T>,
|
|
29
|
-
) {
|
|
30
|
-
let wrappedStrategy: QueuingStrategy<Consumable<T>> | undefined;
|
|
31
|
-
if (strategy) {
|
|
32
|
-
wrappedStrategy = {};
|
|
33
|
-
if ("highWaterMark" in strategy) {
|
|
34
|
-
wrappedStrategy.highWaterMark = strategy.highWaterMark;
|
|
35
|
-
}
|
|
36
|
-
if ("size" in strategy) {
|
|
37
|
-
wrappedStrategy.size = (chunk) => {
|
|
38
|
-
return strategy.size!(
|
|
39
|
-
chunk instanceof Consumable ? chunk.value : chunk,
|
|
40
|
-
);
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
super(
|
|
46
|
-
{
|
|
47
|
-
start(controller) {
|
|
48
|
-
return sink.start?.(controller);
|
|
49
|
-
},
|
|
50
|
-
async write(chunk, controller) {
|
|
51
|
-
await chunk.tryConsume((chunk) =>
|
|
52
|
-
sink.write?.(chunk, controller),
|
|
53
|
-
);
|
|
54
|
-
},
|
|
55
|
-
abort(reason) {
|
|
56
|
-
return sink.abort?.(reason);
|
|
57
|
-
},
|
|
58
|
-
close() {
|
|
59
|
-
return sink.close?.();
|
|
60
|
-
},
|
|
61
|
-
},
|
|
62
|
-
wrappedStrategy,
|
|
63
|
-
);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
class ReadableStream<T> extends NativeReadableStream<Consumable<T>> {
|
|
68
|
-
static async enqueue<T>(
|
|
69
|
-
controller: { enqueue: (chunk: Consumable<T>) => void },
|
|
70
|
-
chunk: T,
|
|
71
|
-
) {
|
|
72
|
-
const output = new Consumable(chunk);
|
|
73
|
-
controller.enqueue(output);
|
|
74
|
-
await output.consumed;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
constructor(
|
|
78
|
-
source: Consumable.ReadableStreamSource<T>,
|
|
79
|
-
strategy?: QueuingStrategy<T>,
|
|
80
|
-
) {
|
|
81
|
-
let wrappedController:
|
|
82
|
-
| Consumable.ReadableStreamController<T>
|
|
83
|
-
| undefined;
|
|
84
|
-
|
|
85
|
-
let wrappedStrategy: QueuingStrategy<Consumable<T>> | undefined;
|
|
86
|
-
if (strategy) {
|
|
87
|
-
wrappedStrategy = {};
|
|
88
|
-
if ("highWaterMark" in strategy) {
|
|
89
|
-
wrappedStrategy.highWaterMark = strategy.highWaterMark;
|
|
90
|
-
}
|
|
91
|
-
if ("size" in strategy) {
|
|
92
|
-
wrappedStrategy.size = (chunk) => {
|
|
93
|
-
return strategy.size!(chunk.value);
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
super(
|
|
99
|
-
{
|
|
100
|
-
async start(controller) {
|
|
101
|
-
wrappedController = {
|
|
102
|
-
async enqueue(chunk) {
|
|
103
|
-
await ReadableStream.enqueue(controller, chunk);
|
|
104
|
-
},
|
|
105
|
-
close() {
|
|
106
|
-
controller.close();
|
|
107
|
-
},
|
|
108
|
-
error(reason) {
|
|
109
|
-
controller.error(reason);
|
|
110
|
-
},
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
await source.start?.(wrappedController);
|
|
114
|
-
},
|
|
115
|
-
async pull() {
|
|
116
|
-
await source.pull?.(wrappedController!);
|
|
117
|
-
},
|
|
118
|
-
async cancel(reason) {
|
|
119
|
-
await source.cancel?.(reason);
|
|
120
|
-
},
|
|
121
|
-
},
|
|
122
|
-
wrappedStrategy,
|
|
123
|
-
);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
|
|
127
17
|
export class Consumable<T> {
|
|
128
|
-
static readonly WritableStream =
|
|
129
|
-
|
|
130
|
-
static readonly ReadableStream =
|
|
18
|
+
static readonly WritableStream = ConsumableWritableStream;
|
|
19
|
+
static readonly WrapWritableStream = ConsumableWrapWritableStream;
|
|
20
|
+
static readonly ReadableStream = ConsumableReadableStream;
|
|
21
|
+
static readonly WrapByteReadableStream = ConsumableWrapByteReadableStream;
|
|
131
22
|
|
|
132
23
|
readonly #task: Task;
|
|
133
24
|
readonly #resolver: PromiseResolver<void>;
|
|
@@ -176,35 +67,17 @@ export class Consumable<T> {
|
|
|
176
67
|
}
|
|
177
68
|
|
|
178
69
|
export namespace Consumable {
|
|
179
|
-
export
|
|
180
|
-
|
|
181
|
-
controller: WritableStreamDefaultController,
|
|
182
|
-
): void | PromiseLike<void>;
|
|
183
|
-
write?(
|
|
184
|
-
chunk: T,
|
|
185
|
-
controller: WritableStreamDefaultController,
|
|
186
|
-
): void | PromiseLike<void>;
|
|
187
|
-
abort?(reason: unknown): void | PromiseLike<void>;
|
|
188
|
-
close?(): void | PromiseLike<void>;
|
|
189
|
-
}
|
|
70
|
+
export type WritableStreamSink<T> = ConsumableWritableStreamSink<T>;
|
|
71
|
+
export type WritableStream<in T> = typeof ConsumableWritableStream<T>;
|
|
190
72
|
|
|
191
|
-
export type
|
|
73
|
+
export type WrapWritableStream<in T> =
|
|
74
|
+
typeof ConsumableWrapWritableStream<T>;
|
|
192
75
|
|
|
193
|
-
export
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
export interface ReadableStreamSource<T> {
|
|
200
|
-
start?(
|
|
201
|
-
controller: ReadableStreamController<T>,
|
|
202
|
-
): void | PromiseLike<void>;
|
|
203
|
-
pull?(
|
|
204
|
-
controller: ReadableStreamController<T>,
|
|
205
|
-
): void | PromiseLike<void>;
|
|
206
|
-
cancel?(reason: unknown): void | PromiseLike<void>;
|
|
207
|
-
}
|
|
76
|
+
export type ReadableStreamController<T> =
|
|
77
|
+
ConsumableReadableStreamController<T>;
|
|
78
|
+
export type ReadableStreamSource<T> = ConsumableReadableStreamSource<T>;
|
|
79
|
+
export type ReadableStream<T> = typeof ConsumableReadableStream<T>;
|
|
208
80
|
|
|
209
|
-
export type
|
|
81
|
+
export type WrapByteReadableStream =
|
|
82
|
+
typeof ConsumableWrapByteReadableStream;
|
|
210
83
|
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from "./utils.js";
|
|
2
|
+
export { MaybeConsumableWrapWritableStream as WrapWritableStream } from "./wrap-writable.js";
|
|
3
|
+
export { MaybeConsumableWritableStream as WritableStream } from "./writable.js";
|
|
4
|
+
export type { MaybeConsumableWritableStreamSink as WritableStreamSink } from "./writable.js";
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Consumable } from "../consumable.js";
|
|
2
|
+
import type { MaybeConsumable } from "../maybe-consumable.js";
|
|
3
|
+
|
|
4
|
+
export function getValue<T>(value: MaybeConsumable<T>): T {
|
|
5
|
+
return value instanceof Consumable ? value.value : value;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export function tryConsume<T, R>(
|
|
9
|
+
value: T,
|
|
10
|
+
callback: (value: T extends Consumable<infer U> ? U : T) => R,
|
|
11
|
+
): R {
|
|
12
|
+
if (value instanceof Consumable) {
|
|
13
|
+
return value.tryConsume(callback);
|
|
14
|
+
} else {
|
|
15
|
+
return callback(value as never);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { MaybeConsumable } from "../maybe-consumable.js";
|
|
2
|
+
import { WritableStream } from "../stream.js";
|
|
3
|
+
|
|
4
|
+
import { tryConsume } from "./utils.js";
|
|
5
|
+
|
|
6
|
+
export class MaybeConsumableWrapWritableStream<T> extends WritableStream<
|
|
7
|
+
MaybeConsumable<T>
|
|
8
|
+
> {
|
|
9
|
+
constructor(stream: WritableStream<T>) {
|
|
10
|
+
const writer = stream.getWriter();
|
|
11
|
+
super({
|
|
12
|
+
write(chunk) {
|
|
13
|
+
return tryConsume(chunk, (chunk) => writer.write(chunk as T));
|
|
14
|
+
},
|
|
15
|
+
abort(reason) {
|
|
16
|
+
return writer.abort(reason);
|
|
17
|
+
},
|
|
18
|
+
close() {
|
|
19
|
+
return writer.close();
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -1,27 +1,14 @@
|
|
|
1
|
-
import { Consumable } from "
|
|
2
|
-
import type { MaybeConsumable } from "
|
|
1
|
+
import { Consumable } from "../consumable.js";
|
|
2
|
+
import type { MaybeConsumable } from "../maybe-consumable.js";
|
|
3
3
|
import type {
|
|
4
4
|
QueuingStrategy,
|
|
5
5
|
WritableStreamDefaultController,
|
|
6
|
-
} from "
|
|
7
|
-
import { WritableStream
|
|
6
|
+
} from "../stream.js";
|
|
7
|
+
import { WritableStream } from "../stream.js";
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
return value instanceof Consumable ? value.value : value;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export function tryConsume<T, R>(
|
|
14
|
-
value: T,
|
|
15
|
-
callback: (value: T extends Consumable<infer U> ? U : T) => R,
|
|
16
|
-
): R {
|
|
17
|
-
if (value instanceof Consumable) {
|
|
18
|
-
return value.tryConsume(callback);
|
|
19
|
-
} else {
|
|
20
|
-
return callback(value as never);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
9
|
+
import { tryConsume } from "./utils.js";
|
|
23
10
|
|
|
24
|
-
export interface
|
|
11
|
+
export interface MaybeConsumableWritableStreamSink<in T> {
|
|
25
12
|
start?(
|
|
26
13
|
controller: WritableStreamDefaultController,
|
|
27
14
|
): void | PromiseLike<void>;
|
|
@@ -33,10 +20,13 @@ export interface WritableStreamSink<in T> {
|
|
|
33
20
|
close?(): void | PromiseLike<void>;
|
|
34
21
|
}
|
|
35
22
|
|
|
36
|
-
export class
|
|
23
|
+
export class MaybeConsumableWritableStream<in T> extends WritableStream<
|
|
37
24
|
MaybeConsumable<T>
|
|
38
25
|
> {
|
|
39
|
-
constructor(
|
|
26
|
+
constructor(
|
|
27
|
+
sink: MaybeConsumableWritableStreamSink<T>,
|
|
28
|
+
strategy?: QueuingStrategy<T>,
|
|
29
|
+
) {
|
|
40
30
|
let wrappedStrategy: QueuingStrategy<MaybeConsumable<T>> | undefined;
|
|
41
31
|
if (strategy) {
|
|
42
32
|
wrappedStrategy = {};
|
|
@@ -57,8 +47,8 @@ export class WritableStream<in T> extends NativeWritableStream<
|
|
|
57
47
|
start(controller) {
|
|
58
48
|
return sink.start?.(controller);
|
|
59
49
|
},
|
|
60
|
-
|
|
61
|
-
|
|
50
|
+
write(chunk, controller) {
|
|
51
|
+
return tryConsume(chunk, (chunk) =>
|
|
62
52
|
sink.write?.(chunk as T, controller),
|
|
63
53
|
);
|
|
64
54
|
},
|
package/src/maybe-consumable.ts
CHANGED