UNPKG

1.2 kBJavaScriptView Raw
1"use strict";
2var __importDefault = (this && this.__importDefault) || function (mod) {
3 return (mod && mod.__esModule) ? mod : { "default": mod };
4};
5Object.defineProperty(exports, "__esModule", { value: true });
6const typeson_js_1 = __importDefault(require("./typeson.js"));
7const { TypesonPromise, toStringTag } = typeson_js_1.default;
8const blob = {
9 blob: {
10 test(x) { return toStringTag(x) === 'Blob'; },
11 replace(b) {
12 return this.replaceAsync(b);
13 },
14 revive({ type, buffer }) {
15 return new Blob([buffer], { type });
16 },
17 replaceAsync(b) {
18 return new TypesonPromise((resolve, reject) => {
19 const reader = new FileReader();
20 reader.addEventListener('load', () => {
21 resolve({
22 type: b.type,
23 buffer: reader.result
24 });
25 });
26 reader.addEventListener('error', () => {
27 reject(reader.error);
28 });
29 reader.readAsArrayBuffer(b);
30 });
31 }
32 }
33};
34exports.default = blob;
35//# sourceMappingURL=blob.js.map
\No newline at end of file