Pinafore-Web-Client-Frontend/tests/blobUtils.js

16 lines
433 B
JavaScript
Raw Normal View History

2018-03-03 02:54:38 +01:00
export function base64StringToBlob (base64, type) {
function binaryStringToArrayBuffer (binary) {
2019-08-03 22:49:37 +02:00
const length = binary.length
const buf = new ArrayBuffer(length)
const arr = new Uint8Array(buf)
2018-03-03 02:54:38 +01:00
let i = -1
while (++i < length) {
arr[i] = binary.charCodeAt(i)
}
return buf
}
2019-08-03 22:49:37 +02:00
const parts = [binaryStringToArrayBuffer(atob(base64))]
2022-11-18 18:32:31 +01:00
return type ? new Blob(parts, { type }) : new Blob(parts)
2018-03-03 02:54:38 +01:00
}