diff --git a/Build/lib/fetch-text-by-line.ts b/Build/lib/fetch-text-by-line.ts index aa8e080d..8ce2dcd8 100644 --- a/Build/lib/fetch-text-by-line.ts +++ b/Build/lib/fetch-text-by-line.ts @@ -11,9 +11,14 @@ const decoder = new TextDecoder('utf-8'); async function *createTextLineAsyncIterableFromStreamSource(stream: ReadableStream): AsyncIterable { let buf = ''; - // @ts-expect-error -- ReadableStream should be AsyncIterable - for await (const chunk of stream) { - const chunkStr = decoder.decode(chunk).replaceAll('\r\n', '\n'); + const reader = stream.getReader(); + + while (true) { + const res = await reader.read(); + if (res.done) { + break; + } + const chunkStr = decoder.decode(res.value).replaceAll('\r\n', '\n'); for (let i = 0, len = chunkStr.length; i < len; i++) { const char = chunkStr[i]; if (char === '\n') {