feat(smartduplex): improve backpressure handling and web/node stream interoperability

This commit is contained in:
2026-03-02 06:55:11 +00:00
parent 1262c48fe9
commit 2acf1972a2
23 changed files with 1416 additions and 511 deletions

View File

@@ -6,8 +6,11 @@ export class StreamIntake<T> extends plugins.stream.Readable {
const intakeStream = new StreamIntake<U>(options);
if (inputStream instanceof plugins.stream.Readable) {
inputStream.on('data', (chunk: U) => {
intakeStream.pushData(chunk);
inputStream.on('readable', () => {
let chunk: U;
while (null !== (chunk = inputStream.read() as U)) {
intakeStream.pushData(chunk);
}
});
inputStream.on('end', () => {