20 lines
555 B
JavaScript
20 lines
555 B
JavaScript
import {getStreamAsArrayBuffer} from './array-buffer.js';
|
|
|
|
export async function getStreamAsBuffer(stream, options) {
|
|
if (!('Buffer' in globalThis)) {
|
|
throw new Error('getStreamAsBuffer() is only supported in Node.js');
|
|
}
|
|
|
|
try {
|
|
return arrayBufferToNodeBuffer(await getStreamAsArrayBuffer(stream, options));
|
|
} catch (error) {
|
|
if (error.bufferedData !== undefined) {
|
|
error.bufferedData = arrayBufferToNodeBuffer(error.bufferedData);
|
|
}
|
|
|
|
throw error;
|
|
}
|
|
}
|
|
|
|
const arrayBufferToNodeBuffer = arrayBuffer => globalThis.Buffer.from(arrayBuffer);
|