pinafore/tests/blobUtils.js

16 lines
433 B
JavaScript
Raw Normal View History

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