@worker-tools/json-stream
Version:
Utilities for working with streaming JSON in Worker Runtimes such as Cloudflare Workers, Deno Deploy and Service Workers.
26 lines • 821 B
JavaScript
// deno-lint-ignore-file no-explicit-any
import { jsonStringifyGenerator } from './json-stringify.js';
export class JSONStringifyStream extends TransformStream {
constructor() {
let first;
super({
start(controller) {
first = true;
controller.enqueue('[');
},
async transform(obj, controller) {
if (!first)
controller.enqueue(',');
else
first = false;
for await (const chunk of jsonStringifyGenerator(obj)) {
controller.enqueue(chunk);
}
},
flush(controller) {
controller.enqueue(']');
},
});
}
}
//# sourceMappingURL=json-stringify-stream.js.map