// Copyright 2021 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only export async function canvasToArrayBuffer( canvas: HTMLCanvasElement ): Promise { const blob: Blob = await new Promise((resolve, reject) => { canvas.toBlob(result => { if (result) { resolve(result); } else { reject(new Error("Couldn't convert the canvas to a Blob")); } }, 'image/webp'); }); return blob.arrayBuffer(); }