| export function convertBlobToBase64(blob: Blob): Promise<string> { | |
| return new Promise((resolve, reject) => { | |
| const reader = new FileReader(); | |
| reader.addEventListener('load', function () { | |
| const { result } = reader; | |
| if (typeof result === 'string') { | |
| resolve(result); | |
| } | |
| }, false); | |
| reader.addEventListener('error', function () { | |
| reject('Error converting to base64'); | |
| }, false); | |
| reader.readAsDataURL(blob); | |
| }); | |
| } | |
| export function getBase64SizeInMB(base64String: string): number { | |
| const base64Data = base64String.split(',')[1] || base64String; | |
| const length = base64Data.length; | |
| const padding = (base64Data.match(/=/g) || []).length; | |
| const sizeInBytes = (length * 3) / 4 - padding; | |
| const sizeInMB = sizeInBytes / 1048576; | |
| return sizeInMB; | |
| } |