| import {getStreamContents} from './contents.js'; | |
| import {identity, noop, getContentsProp} from './utils.js'; | |
| export async function getStreamAsArray(stream, options) { | |
| return getStreamContents(stream, arrayMethods, options); | |
| } | |
| const initArray = () => ({contents: []}); | |
| const increment = () => 1; | |
| const addArrayChunk = (convertedChunk, {contents}) => { | |
| contents.push(convertedChunk); | |
| return contents; | |
| }; | |
| const arrayMethods = { | |
| init: initArray, | |
| convertChunk: { | |
| string: identity, | |
| buffer: identity, | |
| arrayBuffer: identity, | |
| dataView: identity, | |
| typedArray: identity, | |
| others: identity, | |
| }, | |
| getSize: increment, | |
| truncateChunk: noop, | |
| addChunk: addArrayChunk, | |
| getFinalChunk: noop, | |
| finalize: getContentsProp, | |
| }; | |