export async function receiveStreamWithProgress()

in app/v4/src/utils/streamHttp.ts [34:49]


export async function receiveStreamWithProgress(stream: {
    [Symbol.asyncIterator](): AsyncIterableIterator<string | Buffer>;
}): Promise<number> {
    let bytesReceived = 0;
    const logInterval = 500;
    let nextLogTime = Date.now();
    for await (const chunk of stream) {
        if (Date.now() > nextLogTime) {
            nextLogTime = Date.now() + logInterval;
            console.log(`Progress: ${convertBToMb(bytesReceived)}mb`);
        }

        bytesReceived += chunk.length;
    }
    return bytesReceived;
}