Allows treating a browser readable stream as an async iterator.
import toIt from 'browser-readablestream-to-it'import all from 'it-all'const content = [0, 1, 2, 3, 4]const stream = new ReadableStream({ start(controller) { for (let i = 0; i < content.length; i++) { controller.enqueue(content[i]) } controller.close() }})const arr = await all(toIt(stream))console.info(arr) // 0, 1, 2, 3, 4 Copy
import toIt from 'browser-readablestream-to-it'import all from 'it-all'const content = [0, 1, 2, 3, 4]const stream = new ReadableStream({ start(controller) { for (let i = 0; i < content.length; i++) { controller.enqueue(content[i]) } controller.close() }})const arr = await all(toIt(stream))console.info(arr) // 0, 1, 2, 3, 4
By default a readable stream will have .cancel called on it once it has ended or reading has stopped prematurely.
To prevent this behaviour, pass preventCancel: true as an option:
preventCancel: true
const arr = await all(toIt(stream, { preventCancel: true }))console.info(arr) // 0, 1, 2, 3, 4 Copy
const arr = await all(toIt(stream, { preventCancel: true }))console.info(arr) // 0, 1, 2, 3, 4
Allows treating a browser readable stream as an async iterator.
Example
preventCancel
By default a readable stream will have .cancel called on it once it has ended or reading has stopped prematurely.
To prevent this behaviour, pass
preventCancel: true
as an option: