@loaders.gl/polyfills 4.0.0-beta.2 → 4.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/buffer/btoa.node.d.ts.map +1 -0
- package/dist/buffer/btoa.node.js.map +1 -0
- package/dist/buffer/to-array-buffer.node.d.ts.map +1 -0
- package/dist/buffer/to-array-buffer.node.js.map +1 -0
- package/dist/crypto/node-hash.d.ts +28 -0
- package/dist/crypto/node-hash.d.ts.map +1 -0
- package/dist/crypto/node-hash.js +56 -0
- package/dist/crypto/node-hash.js.map +1 -0
- package/dist/dist.dev.js +43 -0
- package/dist/{node/fetch/utils/decode-data-uri.node.d.ts → fetch/decode-data-uri.d.ts} +1 -1
- package/dist/fetch/decode-data-uri.d.ts.map +1 -0
- package/dist/{esm/node/fetch/utils/decode-data-uri.node.js → fetch/decode-data-uri.js} +3 -3
- package/dist/fetch/decode-data-uri.js.map +1 -0
- package/dist/{node/fetch/fetch.node.d.ts → fetch/fetch-polyfill.d.ts} +2 -2
- package/dist/fetch/fetch-polyfill.d.ts.map +1 -0
- package/dist/{esm/node/fetch/fetch.node.js → fetch/fetch-polyfill.js} +4 -4
- package/dist/fetch/fetch-polyfill.js.map +1 -0
- package/dist/{node/fetch/headers.node.d.ts → fetch/headers-polyfill.d.ts} +1 -1
- package/dist/{node/fetch/headers.node.d.ts.map → fetch/headers-polyfill.d.ts.map} +1 -1
- package/dist/{esm/node/fetch/headers.node.js → fetch/headers-polyfill.js} +3 -4
- package/dist/fetch/headers-polyfill.js.map +1 -0
- package/dist/{node/fetch/response.node.d.ts → fetch/response-polyfill.d.ts} +2 -2
- package/dist/{node/fetch/response.node.d.ts.map → fetch/response-polyfill.d.ts.map} +1 -1
- package/dist/{esm/node/fetch/response.node.js → fetch/response-polyfill.js} +14 -15
- package/dist/fetch/response-polyfill.js.map +1 -0
- package/dist/file/blob-stream-controller.d.ts.map +1 -0
- package/dist/{esm/node/file → file}/blob-stream-controller.js +3 -4
- package/dist/file/blob-stream-controller.js.map +1 -0
- package/dist/file/blob-stream.d.ts.map +1 -0
- package/dist/{esm/node/file → file}/blob-stream.js +3 -4
- package/dist/file/blob-stream.js.map +1 -0
- package/dist/file/blob.d.ts.map +1 -0
- package/dist/{esm/node/file → file}/blob.js +4 -5
- package/dist/file/blob.js.map +1 -0
- package/dist/file/file-reader.d.ts.map +1 -0
- package/dist/file/file-reader.js +59 -0
- package/dist/file/file-reader.js.map +1 -0
- package/dist/{node/file → file}/file.d.ts +1 -2
- package/dist/file/file.d.ts.map +1 -0
- package/dist/{esm/node/file → file}/file.js +4 -6
- package/dist/file/file.js.map +1 -0
- package/dist/file/install-blob-polyfills.d.ts +9 -0
- package/dist/file/install-blob-polyfills.d.ts.map +1 -0
- package/dist/file/install-blob-polyfills.js +9 -0
- package/dist/file/install-blob-polyfills.js.map +1 -0
- package/dist/file/install-file-polyfills.d.ts +3 -0
- package/dist/file/install-file-polyfills.d.ts.map +1 -0
- package/dist/file/install-file-polyfills.js +13 -0
- package/dist/file/install-file-polyfills.js.map +1 -0
- package/dist/file/readable-stream.d.ts.map +1 -0
- package/dist/{esm/node/file → file}/readable-stream.js +1 -1
- package/dist/file/readable-stream.js.map +1 -0
- package/dist/filesystems/fetch-node.d.ts +8 -0
- package/dist/filesystems/fetch-node.d.ts.map +1 -0
- package/dist/filesystems/fetch-node.js +77 -0
- package/dist/filesystems/fetch-node.js.map +1 -0
- package/dist/filesystems/node-file.d.ts +13 -0
- package/dist/filesystems/node-file.d.ts.map +1 -0
- package/dist/filesystems/node-file.js +72 -0
- package/dist/filesystems/node-file.js.map +1 -0
- package/dist/filesystems/node-filesystem.d.ts +11 -31
- package/dist/filesystems/node-filesystem.d.ts.map +1 -1
- package/dist/filesystems/node-filesystem.js +40 -0
- package/dist/filesystems/node-filesystem.js.map +1 -0
- package/dist/{node/fetch/utils → filesystems}/stream-utils.node.d.ts +8 -1
- package/dist/filesystems/stream-utils.node.d.ts.map +1 -0
- package/dist/{esm/node/fetch/utils → filesystems}/stream-utils.node.js +24 -2
- package/dist/filesystems/stream-utils.node.js.map +1 -0
- package/dist/images/encode-image.node.d.ts.map +1 -0
- package/dist/{esm/node/images → images}/encode-image.node.js +1 -1
- package/dist/images/encode-image.node.js.map +1 -0
- package/dist/images/parse-image.node.d.ts.map +1 -0
- package/dist/images/parse-image.node.js.map +1 -0
- package/dist/index.browser.d.ts +1 -0
- package/dist/index.browser.d.ts.map +1 -1
- package/dist/index.browser.js +6 -0
- package/dist/index.browser.js.map +1 -0
- package/dist/index.cjs +33 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +56 -0
- package/dist/index.js.map +1 -0
- package/dist/libs/encoding-indexes-asian.js +2 -0
- package/dist/libs/encoding-indexes-asian.js.map +1 -0
- package/dist/streams/make-node-stream.d.ts +11 -0
- package/dist/streams/make-node-stream.d.ts.map +1 -0
- package/dist/streams/make-node-stream.js +56 -0
- package/dist/streams/make-node-stream.js.map +1 -0
- package/dist/text-encoder/encoding-indexes.d.ts.map +1 -0
- package/dist/{esm/lib → text-encoder}/encoding-indexes.js.map +1 -1
- package/dist/{lib/encoding.d.ts → text-encoder/text-encoder.d.ts} +1 -1
- package/dist/text-encoder/text-encoder.d.ts.map +1 -0
- package/dist/{esm/lib/encoding.js → text-encoder/text-encoder.js} +7 -7
- package/dist/text-encoder/text-encoder.js.map +1 -0
- package/dist/utils/assert.js +6 -0
- package/dist/utils/assert.js.map +1 -0
- package/dist/utils/is-browser.d.ts +2 -0
- package/dist/utils/is-browser.d.ts.map +1 -0
- package/dist/utils/is-browser.js +2 -0
- package/dist/utils/is-browser.js.map +1 -0
- package/package.json +16 -6
- package/src/crypto/node-hash.ts +71 -0
- package/src/{node/fetch/fetch.node.ts → fetch/fetch-polyfill.ts} +3 -3
- package/src/{node/fetch/response.node.ts → fetch/response-polyfill.ts} +6 -6
- package/src/{node/file → file}/file.ts +1 -2
- package/src/file/install-blob-polyfills.ts +13 -0
- package/src/file/install-file-polyfills.ts +20 -0
- package/src/{node/file → file}/readable-stream.ts +1 -1
- package/src/filesystems/fetch-node.ts +96 -0
- package/src/filesystems/node-file.ts +137 -0
- package/src/filesystems/node-filesystem.ts +26 -61
- package/src/{node/fetch/utils → filesystems}/stream-utils.node.ts +42 -3
- package/src/index.browser.ts +4 -8
- package/src/index.ts +56 -46
- package/src/streams/make-node-stream.ts +74 -0
- package/src/{lib/encoding.ts → text-encoder/text-encoder.ts} +7 -7
- package/src/utils/is-browser.ts +6 -0
- package/dist/bundle.d.ts +0 -2
- package/dist/bundle.d.ts.map +0 -1
- package/dist/dist.min.js +0 -63
- package/dist/es5/bundle.js +0 -6
- package/dist/es5/bundle.js.map +0 -1
- package/dist/es5/filesystems/node-filesystem.js +0 -214
- package/dist/es5/filesystems/node-filesystem.js.map +0 -1
- package/dist/es5/index.browser.js +0 -15
- package/dist/es5/index.browser.js.map +0 -1
- package/dist/es5/index.js +0 -82
- package/dist/es5/index.js.map +0 -1
- package/dist/es5/lib/encoding-indexes.js +0 -37
- package/dist/es5/lib/encoding-indexes.js.map +0 -1
- package/dist/es5/lib/encoding.js +0 -1214
- package/dist/es5/lib/encoding.js.map +0 -1
- package/dist/es5/libs/encoding-indexes-asian.js +0 -13
- package/dist/es5/node/buffer/btoa.node.js +0 -14
- package/dist/es5/node/buffer/btoa.node.js.map +0 -1
- package/dist/es5/node/buffer/to-array-buffer.node.js +0 -14
- package/dist/es5/node/buffer/to-array-buffer.node.js.map +0 -1
- package/dist/es5/node/fetch/fetch.node.js +0 -193
- package/dist/es5/node/fetch/fetch.node.js.map +0 -1
- package/dist/es5/node/fetch/headers.node.js +0 -151
- package/dist/es5/node/fetch/headers.node.js.map +0 -1
- package/dist/es5/node/fetch/response.node.js +0 -182
- package/dist/es5/node/fetch/response.node.js.map +0 -1
- package/dist/es5/node/fetch/utils/decode-data-uri.node.js +0 -58
- package/dist/es5/node/fetch/utils/decode-data-uri.node.js.map +0 -1
- package/dist/es5/node/fetch/utils/stream-utils.node.js +0 -92
- package/dist/es5/node/fetch/utils/stream-utils.node.js.map +0 -1
- package/dist/es5/node/file/blob-stream-controller.js +0 -90
- package/dist/es5/node/file/blob-stream-controller.js.map +0 -1
- package/dist/es5/node/file/blob-stream.js +0 -64
- package/dist/es5/node/file/blob-stream.js.map +0 -1
- package/dist/es5/node/file/blob.js +0 -212
- package/dist/es5/node/file/blob.js.map +0 -1
- package/dist/es5/node/file/file-reader.js +0 -153
- package/dist/es5/node/file/file-reader.js.map +0 -1
- package/dist/es5/node/file/file.js +0 -44
- package/dist/es5/node/file/file.js.map +0 -1
- package/dist/es5/node/file/install-file-polyfills.js +0 -22
- package/dist/es5/node/file/install-file-polyfills.js.map +0 -1
- package/dist/es5/node/file/readable-stream.js +0 -27
- package/dist/es5/node/file/readable-stream.js.map +0 -1
- package/dist/es5/node/images/encode-image.node.js +0 -30
- package/dist/es5/node/images/encode-image.node.js.map +0 -1
- package/dist/es5/node/images/parse-image.node.js +0 -64
- package/dist/es5/node/images/parse-image.node.js.map +0 -1
- package/dist/es5/promise/all-settled.js +0 -28
- package/dist/es5/promise/all-settled.js.map +0 -1
- package/dist/es5/utils/assert.js +0 -12
- package/dist/es5/utils/assert.js.map +0 -1
- package/dist/es5/utils/globals.js +0 -18
- package/dist/es5/utils/globals.js.map +0 -1
- package/dist/esm/bundle.js +0 -4
- package/dist/esm/bundle.js.map +0 -1
- package/dist/esm/filesystems/node-filesystem.js +0 -56
- package/dist/esm/filesystems/node-filesystem.js.map +0 -1
- package/dist/esm/index.browser.js +0 -7
- package/dist/esm/index.browser.js.map +0 -1
- package/dist/esm/index.js +0 -51
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/lib/encoding.js.map +0 -1
- package/dist/esm/libs/encoding-indexes-asian.js +0 -13
- package/dist/esm/node/buffer/btoa.node.js.map +0 -1
- package/dist/esm/node/buffer/to-array-buffer.node.js.map +0 -1
- package/dist/esm/node/fetch/fetch.node.js.map +0 -1
- package/dist/esm/node/fetch/headers.node.js.map +0 -1
- package/dist/esm/node/fetch/response.node.js.map +0 -1
- package/dist/esm/node/fetch/utils/decode-data-uri.node.js.map +0 -1
- package/dist/esm/node/fetch/utils/stream-utils.node.js.map +0 -1
- package/dist/esm/node/file/blob-stream-controller.js.map +0 -1
- package/dist/esm/node/file/blob-stream.js.map +0 -1
- package/dist/esm/node/file/blob.js.map +0 -1
- package/dist/esm/node/file/file-reader.js +0 -60
- package/dist/esm/node/file/file-reader.js.map +0 -1
- package/dist/esm/node/file/file.js.map +0 -1
- package/dist/esm/node/file/install-file-polyfills.js +0 -16
- package/dist/esm/node/file/install-file-polyfills.js.map +0 -1
- package/dist/esm/node/file/readable-stream.js.map +0 -1
- package/dist/esm/node/images/encode-image.node.js.map +0 -1
- package/dist/esm/node/images/parse-image.node.js.map +0 -1
- package/dist/esm/promise/all-settled.js +0 -19
- package/dist/esm/promise/all-settled.js.map +0 -1
- package/dist/esm/utils/assert.js +0 -6
- package/dist/esm/utils/assert.js.map +0 -1
- package/dist/esm/utils/globals.js +0 -9
- package/dist/esm/utils/globals.js.map +0 -1
- package/dist/lib/encoding-indexes.d.ts.map +0 -1
- package/dist/lib/encoding.d.ts.map +0 -1
- package/dist/node/buffer/btoa.node.d.ts.map +0 -1
- package/dist/node/buffer/to-array-buffer.node.d.ts.map +0 -1
- package/dist/node/fetch/fetch.node.d.ts.map +0 -1
- package/dist/node/fetch/utils/decode-data-uri.node.d.ts.map +0 -1
- package/dist/node/fetch/utils/stream-utils.node.d.ts.map +0 -1
- package/dist/node/file/blob-stream-controller.d.ts.map +0 -1
- package/dist/node/file/blob-stream.d.ts.map +0 -1
- package/dist/node/file/blob.d.ts.map +0 -1
- package/dist/node/file/file-reader.d.ts.map +0 -1
- package/dist/node/file/file.d.ts.map +0 -1
- package/dist/node/file/install-file-polyfills.d.ts +0 -2
- package/dist/node/file/install-file-polyfills.d.ts.map +0 -1
- package/dist/node/file/readable-stream.d.ts.map +0 -1
- package/dist/node/images/encode-image.node.d.ts.map +0 -1
- package/dist/node/images/parse-image.node.d.ts.map +0 -1
- package/dist/promise/all-settled.d.ts +0 -10
- package/dist/promise/all-settled.d.ts.map +0 -1
- package/dist/utils/globals.d.ts +0 -4
- package/dist/utils/globals.d.ts.map +0 -1
- package/src/bundle.ts +0 -4
- package/src/node/file/install-file-polyfills.ts +0 -27
- package/src/promise/all-settled.ts +0 -21
- package/src/utils/globals.ts +0 -37
- /package/dist/{node/buffer → buffer}/btoa.node.d.ts +0 -0
- /package/dist/{esm/node/buffer → buffer}/btoa.node.js +0 -0
- /package/dist/{node/buffer → buffer}/to-array-buffer.node.d.ts +0 -0
- /package/dist/{esm/node/buffer → buffer}/to-array-buffer.node.js +0 -0
- /package/dist/{node/file → file}/blob-stream-controller.d.ts +0 -0
- /package/dist/{node/file → file}/blob-stream.d.ts +0 -0
- /package/dist/{node/file → file}/blob.d.ts +0 -0
- /package/dist/{node/file → file}/file-reader.d.ts +0 -0
- /package/dist/{node/file → file}/readable-stream.d.ts +0 -0
- /package/dist/{node/images → images}/encode-image.node.d.ts +0 -0
- /package/dist/{node/images → images}/parse-image.node.d.ts +0 -0
- /package/dist/{esm/node/images → images}/parse-image.node.js +0 -0
- /package/dist/{lib → text-encoder}/encoding-indexes.d.ts +0 -0
- /package/dist/{esm/lib → text-encoder}/encoding-indexes.js +0 -0
- /package/src/{node/buffer → buffer}/btoa.node.ts +0 -0
- /package/src/{node/buffer → buffer}/to-array-buffer.node.ts +0 -0
- /package/src/{node/fetch/utils/decode-data-uri.node.ts → fetch/decode-data-uri.ts} +0 -0
- /package/src/{node/fetch/headers.node.ts → fetch/headers-polyfill.ts} +0 -0
- /package/src/{node/file → file}/blob-stream-controller.ts +0 -0
- /package/src/{node/file → file}/blob-stream.ts +0 -0
- /package/src/{node/file → file}/blob.ts +0 -0
- /package/src/{node/file → file}/file-reader.ts +0 -0
- /package/src/{node/images → images}/encode-image.node.ts +0 -0
- /package/src/{node/images → images}/parse-image.node.ts +0 -0
- /package/src/{lib → text-encoder}/encoding-indexes.ts +0 -0
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.decodeDataUri = decodeDataUri;
|
|
8
|
-
exports.toArrayBuffer = toArrayBuffer;
|
|
9
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
10
|
-
var isArrayBuffer = function isArrayBuffer(x) {
|
|
11
|
-
return x && x instanceof ArrayBuffer;
|
|
12
|
-
};
|
|
13
|
-
var isBuffer = function isBuffer(x) {
|
|
14
|
-
return x && x instanceof Buffer;
|
|
15
|
-
};
|
|
16
|
-
function decodeDataUri(uri) {
|
|
17
|
-
var dataIndex = uri.indexOf(',');
|
|
18
|
-
var buffer;
|
|
19
|
-
var mimeType;
|
|
20
|
-
if (uri.slice(dataIndex - 7, dataIndex) === ';base64') {
|
|
21
|
-
buffer = Buffer.from(uri.slice(dataIndex + 1), 'base64');
|
|
22
|
-
mimeType = uri.slice(5, dataIndex - 7).trim();
|
|
23
|
-
} else {
|
|
24
|
-
buffer = Buffer.from(decodeURIComponent(uri.slice(dataIndex + 1)));
|
|
25
|
-
mimeType = uri.slice(5, dataIndex).trim();
|
|
26
|
-
}
|
|
27
|
-
if (!mimeType) {
|
|
28
|
-
mimeType = 'text/plain;charset=US-ASCII';
|
|
29
|
-
} else if (mimeType.startsWith(';')) {
|
|
30
|
-
mimeType = "text/plain".concat(mimeType);
|
|
31
|
-
}
|
|
32
|
-
return {
|
|
33
|
-
arrayBuffer: toArrayBuffer(buffer),
|
|
34
|
-
mimeType: mimeType
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
function toArrayBuffer(data) {
|
|
38
|
-
if (isArrayBuffer(data)) {
|
|
39
|
-
return data;
|
|
40
|
-
}
|
|
41
|
-
if (isBuffer(data)) {
|
|
42
|
-
var typedArray = new Uint8Array(data);
|
|
43
|
-
return typedArray.buffer;
|
|
44
|
-
}
|
|
45
|
-
if (ArrayBuffer.isView(data)) {
|
|
46
|
-
return data.buffer;
|
|
47
|
-
}
|
|
48
|
-
if (typeof data === 'string') {
|
|
49
|
-
var text = data;
|
|
50
|
-
var uint8Array = new TextEncoder().encode(text);
|
|
51
|
-
return uint8Array.buffer;
|
|
52
|
-
}
|
|
53
|
-
if (data && (0, _typeof2.default)(data) === 'object' && data._toArrayBuffer) {
|
|
54
|
-
return data._toArrayBuffer();
|
|
55
|
-
}
|
|
56
|
-
throw new Error("toArrayBuffer(".concat(JSON.stringify(data, null, 2).slice(10), ")"));
|
|
57
|
-
}
|
|
58
|
-
//# sourceMappingURL=decode-data-uri.node.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decode-data-uri.node.js","names":["isArrayBuffer","x","ArrayBuffer","isBuffer","Buffer","decodeDataUri","uri","dataIndex","indexOf","buffer","mimeType","slice","from","trim","decodeURIComponent","startsWith","concat","arrayBuffer","toArrayBuffer","data","typedArray","Uint8Array","isView","text","uint8Array","TextEncoder","encode","_typeof2","default","_toArrayBuffer","Error","JSON","stringify"],"sources":["../../../../../src/node/fetch/utils/decode-data-uri.node.ts"],"sourcesContent":["// Based on binary-gltf-utils under MIT license: Copyright (c) 2016-17 Karl Cheng\n\nconst isArrayBuffer = (x) => x && x instanceof ArrayBuffer;\nconst isBuffer = (x) => x && x instanceof Buffer;\n\n/**\n * Parses a data URI into a buffer, as well as retrieving its declared MIME type.\n *\n * @param {string} uri - a data URI (assumed to be valid)\n * @returns {Object} { buffer, mimeType }\n */\nexport function decodeDataUri(uri: string): {arrayBuffer: ArrayBuffer; mimeType: string} {\n const dataIndex = uri.indexOf(',');\n\n let buffer;\n let mimeType;\n if (uri.slice(dataIndex - 7, dataIndex) === ';base64') {\n buffer = Buffer.from(uri.slice(dataIndex + 1), 'base64');\n mimeType = uri.slice(5, dataIndex - 7).trim();\n } else {\n buffer = Buffer.from(decodeURIComponent(uri.slice(dataIndex + 1)));\n mimeType = uri.slice(5, dataIndex).trim();\n }\n\n if (!mimeType) {\n mimeType = 'text/plain;charset=US-ASCII';\n } else if (mimeType.startsWith(';')) {\n mimeType = `text/plain${mimeType}`;\n }\n\n return {arrayBuffer: toArrayBuffer(buffer), mimeType};\n}\n\n/**\n * @param data\n * @todo Duplicate of core\n */\nexport function toArrayBuffer(data: unknown): ArrayBuffer {\n if (isArrayBuffer(data)) {\n return data as ArrayBuffer;\n }\n\n // TODO - per docs we should just be able to call buffer.buffer, but there are issues\n if (isBuffer(data)) {\n // @ts-expect-error\n const typedArray = new Uint8Array(data);\n return typedArray.buffer;\n }\n\n // Careful - Node Buffers will look like ArrayBuffers (keep after isBuffer)\n if (ArrayBuffer.isView(data)) {\n return data.buffer;\n }\n\n if (typeof data === 'string') {\n const text = data;\n const uint8Array = new TextEncoder().encode(text);\n return uint8Array.buffer;\n }\n\n // HACK to support Blob polyfill\n // @ts-expect-error\n if (data && typeof data === 'object' && data._toArrayBuffer) {\n // @ts-expect-error\n return data._toArrayBuffer();\n }\n\n throw new Error(`toArrayBuffer(${JSON.stringify(data, null, 2).slice(10)})`);\n}\n"],"mappings":";;;;;;;;;AAEA,IAAMA,aAAa,GAAG,SAAhBA,aAAaA,CAAIC,CAAC;EAAA,OAAKA,CAAC,IAAIA,CAAC,YAAYC,WAAW;AAAA;AAC1D,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAIF,CAAC;EAAA,OAAKA,CAAC,IAAIA,CAAC,YAAYG,MAAM;AAAA;AAQzC,SAASC,aAAaA,CAACC,GAAW,EAAgD;EACvF,IAAMC,SAAS,GAAGD,GAAG,CAACE,OAAO,CAAC,GAAG,CAAC;EAElC,IAAIC,MAAM;EACV,IAAIC,QAAQ;EACZ,IAAIJ,GAAG,CAACK,KAAK,CAACJ,SAAS,GAAG,CAAC,EAAEA,SAAS,CAAC,KAAK,SAAS,EAAE;IACrDE,MAAM,GAAGL,MAAM,CAACQ,IAAI,CAACN,GAAG,CAACK,KAAK,CAACJ,SAAS,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC;IACxDG,QAAQ,GAAGJ,GAAG,CAACK,KAAK,CAAC,CAAC,EAAEJ,SAAS,GAAG,CAAC,CAAC,CAACM,IAAI,CAAC,CAAC;EAC/C,CAAC,MAAM;IACLJ,MAAM,GAAGL,MAAM,CAACQ,IAAI,CAACE,kBAAkB,CAACR,GAAG,CAACK,KAAK,CAACJ,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;IAClEG,QAAQ,GAAGJ,GAAG,CAACK,KAAK,CAAC,CAAC,EAAEJ,SAAS,CAAC,CAACM,IAAI,CAAC,CAAC;EAC3C;EAEA,IAAI,CAACH,QAAQ,EAAE;IACbA,QAAQ,GAAG,6BAA6B;EAC1C,CAAC,MAAM,IAAIA,QAAQ,CAACK,UAAU,CAAC,GAAG,CAAC,EAAE;IACnCL,QAAQ,gBAAAM,MAAA,CAAgBN,QAAQ,CAAE;EACpC;EAEA,OAAO;IAACO,WAAW,EAAEC,aAAa,CAACT,MAAM,CAAC;IAAEC,QAAQ,EAARA;EAAQ,CAAC;AACvD;AAMO,SAASQ,aAAaA,CAACC,IAAa,EAAe;EACxD,IAAInB,aAAa,CAACmB,IAAI,CAAC,EAAE;IACvB,OAAOA,IAAI;EACb;EAGA,IAAIhB,QAAQ,CAACgB,IAAI,CAAC,EAAE;IAElB,IAAMC,UAAU,GAAG,IAAIC,UAAU,CAACF,IAAI,CAAC;IACvC,OAAOC,UAAU,CAACX,MAAM;EAC1B;EAGA,IAAIP,WAAW,CAACoB,MAAM,CAACH,IAAI,CAAC,EAAE;IAC5B,OAAOA,IAAI,CAACV,MAAM;EACpB;EAEA,IAAI,OAAOU,IAAI,KAAK,QAAQ,EAAE;IAC5B,IAAMI,IAAI,GAAGJ,IAAI;IACjB,IAAMK,UAAU,GAAG,IAAIC,WAAW,CAAC,CAAC,CAACC,MAAM,CAACH,IAAI,CAAC;IACjD,OAAOC,UAAU,CAACf,MAAM;EAC1B;EAIA,IAAIU,IAAI,IAAI,IAAAQ,QAAA,CAAAC,OAAA,EAAOT,IAAI,MAAK,QAAQ,IAAIA,IAAI,CAACU,cAAc,EAAE;IAE3D,OAAOV,IAAI,CAACU,cAAc,CAAC,CAAC;EAC9B;EAEA,MAAM,IAAIC,KAAK,kBAAAd,MAAA,CAAkBe,IAAI,CAACC,SAAS,CAACb,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAACR,KAAK,CAAC,EAAE,CAAC,MAAG,CAAC;AAC9E"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.concatenateArrayBuffers = concatenateArrayBuffers;
|
|
8
|
-
exports.concatenateReadStream = concatenateReadStream;
|
|
9
|
-
exports.decompressReadStream = decompressReadStream;
|
|
10
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
|
-
var _zlib = _interopRequireDefault(require("zlib"));
|
|
13
|
-
var _decodeDataUri = require("./decode-data-uri.node");
|
|
14
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
15
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
16
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
17
|
-
function decompressReadStream(readStream, headers) {
|
|
18
|
-
switch (headers.get('content-encoding')) {
|
|
19
|
-
case 'br':
|
|
20
|
-
return readStream.pipe(_zlib.default.createBrotliDecompress());
|
|
21
|
-
case 'gzip':
|
|
22
|
-
return readStream.pipe(_zlib.default.createGunzip());
|
|
23
|
-
case 'deflate':
|
|
24
|
-
return readStream.pipe(_zlib.default.createDeflate());
|
|
25
|
-
default:
|
|
26
|
-
return readStream;
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
function concatenateReadStream(_x) {
|
|
30
|
-
return _concatenateReadStream.apply(this, arguments);
|
|
31
|
-
}
|
|
32
|
-
function _concatenateReadStream() {
|
|
33
|
-
_concatenateReadStream = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(readStream) {
|
|
34
|
-
var arrayBufferChunks;
|
|
35
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
36
|
-
while (1) switch (_context.prev = _context.next) {
|
|
37
|
-
case 0:
|
|
38
|
-
arrayBufferChunks = [];
|
|
39
|
-
_context.next = 3;
|
|
40
|
-
return new Promise(function (resolve, reject) {
|
|
41
|
-
readStream.on('error', function (error) {
|
|
42
|
-
return reject(error);
|
|
43
|
-
});
|
|
44
|
-
readStream.on('readable', function () {
|
|
45
|
-
return readStream.read();
|
|
46
|
-
});
|
|
47
|
-
readStream.on('data', function (chunk) {
|
|
48
|
-
if (typeof chunk === 'string') {
|
|
49
|
-
reject(new Error('Read stream not binary'));
|
|
50
|
-
}
|
|
51
|
-
arrayBufferChunks.push((0, _decodeDataUri.toArrayBuffer)(chunk));
|
|
52
|
-
});
|
|
53
|
-
readStream.on('end', function () {
|
|
54
|
-
var arrayBuffer = concatenateArrayBuffers(arrayBufferChunks);
|
|
55
|
-
resolve(arrayBuffer);
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
case 3:
|
|
59
|
-
return _context.abrupt("return", _context.sent);
|
|
60
|
-
case 4:
|
|
61
|
-
case "end":
|
|
62
|
-
return _context.stop();
|
|
63
|
-
}
|
|
64
|
-
}, _callee);
|
|
65
|
-
}));
|
|
66
|
-
return _concatenateReadStream.apply(this, arguments);
|
|
67
|
-
}
|
|
68
|
-
function concatenateArrayBuffers(sources) {
|
|
69
|
-
var sourceArrays = sources.map(function (source2) {
|
|
70
|
-
return source2 instanceof ArrayBuffer ? new Uint8Array(source2) : source2;
|
|
71
|
-
});
|
|
72
|
-
var byteLength = sourceArrays.reduce(function (length, typedArray) {
|
|
73
|
-
return length + typedArray.byteLength;
|
|
74
|
-
}, 0);
|
|
75
|
-
var result = new Uint8Array(byteLength);
|
|
76
|
-
var offset = 0;
|
|
77
|
-
var _iterator = _createForOfIteratorHelper(sourceArrays),
|
|
78
|
-
_step;
|
|
79
|
-
try {
|
|
80
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
81
|
-
var sourceArray = _step.value;
|
|
82
|
-
result.set(sourceArray, offset);
|
|
83
|
-
offset += sourceArray.byteLength;
|
|
84
|
-
}
|
|
85
|
-
} catch (err) {
|
|
86
|
-
_iterator.e(err);
|
|
87
|
-
} finally {
|
|
88
|
-
_iterator.f();
|
|
89
|
-
}
|
|
90
|
-
return result.buffer;
|
|
91
|
-
}
|
|
92
|
-
//# sourceMappingURL=stream-utils.node.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stream-utils.node.js","names":["_zlib","_interopRequireDefault","require","_decodeDataUri","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","decompressReadStream","readStream","headers","get","pipe","zlib","createBrotliDecompress","createGunzip","createDeflate","concatenateReadStream","_x","_concatenateReadStream","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","arrayBufferChunks","wrap","_callee$","_context","prev","Promise","resolve","reject","on","error","read","chunk","Error","push","toArrayBuffer","arrayBuffer","concatenateArrayBuffers","abrupt","sent","stop","sources","sourceArrays","map","source2","ArrayBuffer","Uint8Array","byteLength","reduce","typedArray","result","offset","_iterator","_step","sourceArray","set","buffer"],"sources":["../../../../../src/node/fetch/utils/stream-utils.node.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport zlib from 'zlib';\n\nimport {toArrayBuffer} from './decode-data-uri.node';\n\n/**\n *\n */\nexport function decompressReadStream(readStream, headers) {\n switch (headers.get('content-encoding')) {\n case 'br':\n return readStream.pipe(zlib.createBrotliDecompress());\n case 'gzip':\n return readStream.pipe(zlib.createGunzip());\n case 'deflate':\n return readStream.pipe(zlib.createDeflate());\n default:\n // No compression or an unknown one, just return it as is\n return readStream;\n }\n}\n\n/**\n *\n * @param readStream\n * @returns\n */\nexport async function concatenateReadStream(readStream): Promise<ArrayBuffer> {\n const arrayBufferChunks: ArrayBuffer[] = [];\n\n return await new Promise((resolve, reject) => {\n readStream.on('error', (error) => reject(error));\n\n // Once the readable callback has been added, stream switches to \"flowing mode\"\n // In Node 10 (but not 12 and 14) this causes `data` and `end` to never be called unless we read data here\n readStream.on('readable', () => readStream.read());\n\n readStream.on('data', (chunk) => {\n if (typeof chunk === 'string') {\n reject(new Error('Read stream not binary'));\n }\n arrayBufferChunks.push(toArrayBuffer(chunk));\n });\n\n readStream.on('end', () => {\n const arrayBuffer = concatenateArrayBuffers(arrayBufferChunks);\n resolve(arrayBuffer);\n });\n });\n}\n\n/**\n * Concatenate a sequence of ArrayBuffers\n * @return A concatenated ArrayBuffer\n * @note duplicates loader-utils since polyfills should be independent\n */\nexport function concatenateArrayBuffers(sources: (ArrayBuffer | Uint8Array)[]): ArrayBuffer {\n // Make sure all inputs are wrapped in typed arrays\n const sourceArrays = sources.map((source2) =>\n source2 instanceof ArrayBuffer ? new Uint8Array(source2) : source2\n );\n\n // Get length of all inputs\n const byteLength = sourceArrays.reduce((length, typedArray) => length + typedArray.byteLength, 0);\n\n // Allocate array with space for all inputs\n const result = new Uint8Array(byteLength);\n\n // Copy the subarrays\n let offset = 0;\n for (const sourceArray of sourceArrays) {\n result.set(sourceArray, offset);\n offset += sourceArray.byteLength;\n }\n\n // We work with ArrayBuffers, discard the typed array wrapper\n return result.buffer;\n}\n"],"mappings":"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"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.BlobStreamController = void 0;
|
|
8
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
var BlobStreamController = function () {
|
|
14
|
-
function BlobStreamController(chunks) {
|
|
15
|
-
(0, _classCallCheck2.default)(this, BlobStreamController);
|
|
16
|
-
(0, _defineProperty2.default)(this, "chunks", void 0);
|
|
17
|
-
(0, _defineProperty2.default)(this, "isWorking", false);
|
|
18
|
-
(0, _defineProperty2.default)(this, "isCancelled", false);
|
|
19
|
-
this.chunks = chunks;
|
|
20
|
-
}
|
|
21
|
-
(0, _createClass2.default)(BlobStreamController, [{
|
|
22
|
-
key: "start",
|
|
23
|
-
value: function start(controller) {
|
|
24
|
-
this.work(controller);
|
|
25
|
-
}
|
|
26
|
-
}, {
|
|
27
|
-
key: "work",
|
|
28
|
-
value: function () {
|
|
29
|
-
var _work = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(controller) {
|
|
30
|
-
var chunks, next;
|
|
31
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
32
|
-
while (1) switch (_context.prev = _context.next) {
|
|
33
|
-
case 0:
|
|
34
|
-
chunks = this.chunks;
|
|
35
|
-
this.isWorking = true;
|
|
36
|
-
case 2:
|
|
37
|
-
if (!(!this.isCancelled && (controller.desiredSize || 0) > 0)) {
|
|
38
|
-
_context.next = 15;
|
|
39
|
-
break;
|
|
40
|
-
}
|
|
41
|
-
next = void 0;
|
|
42
|
-
_context.prev = 4;
|
|
43
|
-
next = chunks.next();
|
|
44
|
-
_context.next = 12;
|
|
45
|
-
break;
|
|
46
|
-
case 8:
|
|
47
|
-
_context.prev = 8;
|
|
48
|
-
_context.t0 = _context["catch"](4);
|
|
49
|
-
controller.error(_context.t0);
|
|
50
|
-
return _context.abrupt("break", 15);
|
|
51
|
-
case 12:
|
|
52
|
-
if (next) {
|
|
53
|
-
if (!next.done && !this.isCancelled) {
|
|
54
|
-
controller.enqueue(next.value);
|
|
55
|
-
} else {
|
|
56
|
-
controller.close();
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
_context.next = 2;
|
|
60
|
-
break;
|
|
61
|
-
case 15:
|
|
62
|
-
this.isWorking = false;
|
|
63
|
-
case 16:
|
|
64
|
-
case "end":
|
|
65
|
-
return _context.stop();
|
|
66
|
-
}
|
|
67
|
-
}, _callee, this, [[4, 8]]);
|
|
68
|
-
}));
|
|
69
|
-
function work(_x) {
|
|
70
|
-
return _work.apply(this, arguments);
|
|
71
|
-
}
|
|
72
|
-
return work;
|
|
73
|
-
}()
|
|
74
|
-
}, {
|
|
75
|
-
key: "pull",
|
|
76
|
-
value: function pull(controller) {
|
|
77
|
-
if (!this.isWorking) {
|
|
78
|
-
this.work(controller);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}, {
|
|
82
|
-
key: "cancel",
|
|
83
|
-
value: function cancel() {
|
|
84
|
-
this.isCancelled = true;
|
|
85
|
-
}
|
|
86
|
-
}]);
|
|
87
|
-
return BlobStreamController;
|
|
88
|
-
}();
|
|
89
|
-
exports.BlobStreamController = BlobStreamController;
|
|
90
|
-
//# sourceMappingURL=blob-stream-controller.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blob-stream-controller.js","names":["BlobStreamController","chunks","_classCallCheck2","default","_defineProperty2","_createClass2","key","value","start","controller","work","_work","_asyncToGenerator2","_regenerator","mark","_callee","next","wrap","_callee$","_context","prev","isWorking","isCancelled","desiredSize","t0","error","abrupt","done","enqueue","close","stop","_x","apply","arguments","pull","cancel","exports"],"sources":["../../../../src/node/file/blob-stream-controller.ts"],"sourcesContent":["/**\n * Forked from @gozala's web-blob under MIT license\n * @see https://github.com/Gozala/web-blob\n */\nexport class BlobStreamController {\n private chunks: Iterator<Uint8Array>;\n private isWorking: boolean = false;\n private isCancelled: boolean = false;\n\n /**\n * @param chunks\n */\n constructor(chunks: Iterator<Uint8Array>) {\n this.chunks = chunks;\n }\n\n /**\n * @param controller\n */\n start(controller: ReadableStreamDefaultController) {\n this.work(controller); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n\n /**\n *\n * @param controller\n */\n async work(controller: ReadableStreamDefaultController) {\n const {chunks} = this;\n\n this.isWorking = true;\n while (!this.isCancelled && (controller.desiredSize || 0) > 0) {\n let next: {done?: boolean; value?: Uint8Array} | undefined;\n try {\n next = chunks.next();\n } catch (error) {\n controller.error(error);\n break;\n }\n\n if (next) {\n if (!next.done && !this.isCancelled) {\n controller.enqueue(next.value);\n } else {\n controller.close();\n }\n }\n }\n\n this.isWorking = false;\n }\n\n /**\n *\n * @param {ReadableStreamDefaultController} controller\n */\n pull(controller) {\n if (!this.isWorking) {\n this.work(controller); // eslint-disable-line @typescript-eslint/no-floating-promises\n }\n }\n cancel() {\n this.isCancelled = true;\n }\n}\n"],"mappings":";;;;;;;;;;;;IAIaA,oBAAoB;EAQ/B,SAAAA,qBAAYC,MAA4B,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA,QAAAH,oBAAA;IAAA,IAAAI,gBAAA,CAAAD,OAAA;IAAA,IAAAC,gBAAA,CAAAD,OAAA,qBANb,KAAK;IAAA,IAAAC,gBAAA,CAAAD,OAAA,uBACH,KAAK;IAMlC,IAAI,CAACF,MAAM,GAAGA,MAAM;EACtB;EAAC,IAAAI,aAAA,CAAAF,OAAA,EAAAH,oBAAA;IAAAM,GAAA;IAAAC,KAAA,EAKD,SAAAC,MAAMC,UAA2C,EAAE;MACjD,IAAI,CAACC,IAAI,CAACD,UAAU,CAAC;IACvB;EAAC;IAAAH,GAAA;IAAAC,KAAA;MAAA,IAAAI,KAAA,OAAAC,kBAAA,CAAAT,OAAA,EAAAU,YAAA,CAAAV,OAAA,CAAAW,IAAA,CAMD,SAAAC,QAAWN,UAA2C;QAAA,IAAAR,MAAA,EAAAe,IAAA;QAAA,OAAAH,YAAA,CAAAV,OAAA,CAAAc,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAH,IAAA;YAAA;cAC7Cf,MAAM,GAAI,IAAI,CAAdA,MAAM;cAEb,IAAI,CAACoB,SAAS,GAAG,IAAI;YAAC;cAAA,MACf,CAAC,IAAI,CAACC,WAAW,IAAI,CAACb,UAAU,CAACc,WAAW,IAAI,CAAC,IAAI,CAAC;gBAAAJ,QAAA,CAAAH,IAAA;gBAAA;cAAA;cACvDA,IAAsD;cAAAG,QAAA,CAAAC,IAAA;cAExDJ,IAAI,GAAGf,MAAM,CAACe,IAAI,CAAC,CAAC;cAACG,QAAA,CAAAH,IAAA;cAAA;YAAA;cAAAG,QAAA,CAAAC,IAAA;cAAAD,QAAA,CAAAK,EAAA,GAAAL,QAAA;cAErBV,UAAU,CAACgB,KAAK,CAAAN,QAAA,CAAAK,EAAM,CAAC;cAAC,OAAAL,QAAA,CAAAO,MAAA;YAAA;cAI1B,IAAIV,IAAI,EAAE;gBACR,IAAI,CAACA,IAAI,CAACW,IAAI,IAAI,CAAC,IAAI,CAACL,WAAW,EAAE;kBACnCb,UAAU,CAACmB,OAAO,CAACZ,IAAI,CAACT,KAAK,CAAC;gBAChC,CAAC,MAAM;kBACLE,UAAU,CAACoB,KAAK,CAAC,CAAC;gBACpB;cACF;cAACV,QAAA,CAAAH,IAAA;cAAA;YAAA;cAGH,IAAI,CAACK,SAAS,GAAG,KAAK;YAAC;YAAA;cAAA,OAAAF,QAAA,CAAAW,IAAA;UAAA;QAAA,GAAAf,OAAA;MAAA,CACxB;MAAA,SAAAL,KAAAqB,EAAA;QAAA,OAAApB,KAAA,CAAAqB,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAAvB,IAAA;IAAA;EAAA;IAAAJ,GAAA;IAAAC,KAAA,EAMD,SAAA2B,KAAKzB,UAAU,EAAE;MACf,IAAI,CAAC,IAAI,CAACY,SAAS,EAAE;QACnB,IAAI,CAACX,IAAI,CAACD,UAAU,CAAC;MACvB;IACF;EAAC;IAAAH,GAAA;IAAAC,KAAA,EACD,SAAA4B,OAAA,EAAS;MACP,IAAI,CAACb,WAAW,GAAG,IAAI;IACzB;EAAC;EAAA,OAAAtB,oBAAA;AAAA;AAAAoC,OAAA,CAAApC,oBAAA,GAAAA,oBAAA"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.BlobStream = void 0;
|
|
8
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
14
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
15
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
-
var _wrapAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapAsyncGenerator"));
|
|
17
|
-
var _awaitAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/awaitAsyncGenerator"));
|
|
18
|
-
var _asyncGeneratorDelegate2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncGeneratorDelegate"));
|
|
19
|
-
var _readableStream = require("./readable-stream");
|
|
20
|
-
var _blobStreamController = require("./blob-stream-controller");
|
|
21
|
-
var _Symbol$asyncIterator;
|
|
22
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
23
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
24
|
-
function _asyncIterator(iterable) { var method, async, sync, retry = 2; for ("undefined" != typeof Symbol && (async = Symbol.asyncIterator, sync = Symbol.iterator); retry--;) { if (async && null != (method = iterable[async])) return method.call(iterable); if (sync && null != (method = iterable[sync])) return new AsyncFromSyncIterator(method.call(iterable)); async = "@@asyncIterator", sync = "@@iterator"; } throw new TypeError("Object is not async iterable"); }
|
|
25
|
-
function AsyncFromSyncIterator(s) { function AsyncFromSyncIteratorContinuation(r) { if (Object(r) !== r) return Promise.reject(new TypeError(r + " is not an object.")); var done = r.done; return Promise.resolve(r.value).then(function (value) { return { value: value, done: done }; }); } return AsyncFromSyncIterator = function AsyncFromSyncIterator(s) { this.s = s, this.n = s.next; }, AsyncFromSyncIterator.prototype = { s: null, n: null, next: function next() { return AsyncFromSyncIteratorContinuation(this.n.apply(this.s, arguments)); }, return: function _return(value) { var ret = this.s.return; return void 0 === ret ? Promise.resolve({ value: value, done: !0 }) : AsyncFromSyncIteratorContinuation(ret.apply(this.s, arguments)); }, throw: function _throw(value) { var thr = this.s.return; return void 0 === thr ? Promise.reject(value) : AsyncFromSyncIteratorContinuation(thr.apply(this.s, arguments)); } }, new AsyncFromSyncIterator(s); }
|
|
26
|
-
_Symbol$asyncIterator = Symbol.asyncIterator;
|
|
27
|
-
var BlobStream = function (_ReadableStreamPolyfi) {
|
|
28
|
-
(0, _inherits2.default)(BlobStream, _ReadableStreamPolyfi);
|
|
29
|
-
var _super = _createSuper(BlobStream);
|
|
30
|
-
function BlobStream(chunks) {
|
|
31
|
-
var _this2;
|
|
32
|
-
(0, _classCallCheck2.default)(this, BlobStream);
|
|
33
|
-
_this2 = _super.call(this, new _blobStreamController.BlobStreamController(chunks.values()), {
|
|
34
|
-
type: 'bytes'
|
|
35
|
-
});
|
|
36
|
-
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "_chunks", void 0);
|
|
37
|
-
_this2._chunks = chunks;
|
|
38
|
-
return _this2;
|
|
39
|
-
}
|
|
40
|
-
(0, _createClass2.default)(BlobStream, [{
|
|
41
|
-
key: _Symbol$asyncIterator,
|
|
42
|
-
value: function value(_options) {
|
|
43
|
-
var _this = this;
|
|
44
|
-
return (0, _wrapAsyncGenerator2.default)(_regenerator.default.mark(function _callee() {
|
|
45
|
-
var reader;
|
|
46
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
47
|
-
while (1) switch (_context.prev = _context.next) {
|
|
48
|
-
case 0:
|
|
49
|
-
reader = _this.getReader();
|
|
50
|
-
return _context.delegateYield((0, _asyncGeneratorDelegate2.default)(_asyncIterator(_this._chunks), _awaitAsyncGenerator2.default), "t0", 2);
|
|
51
|
-
case 2:
|
|
52
|
-
reader.releaseLock();
|
|
53
|
-
case 3:
|
|
54
|
-
case "end":
|
|
55
|
-
return _context.stop();
|
|
56
|
-
}
|
|
57
|
-
}, _callee);
|
|
58
|
-
}))();
|
|
59
|
-
}
|
|
60
|
-
}]);
|
|
61
|
-
return BlobStream;
|
|
62
|
-
}(_readableStream.ReadableStreamPolyfill);
|
|
63
|
-
exports.BlobStream = BlobStream;
|
|
64
|
-
//# sourceMappingURL=blob-stream.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blob-stream.js","names":["_readableStream","require","_blobStreamController","_Symbol$asyncIterator","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","_asyncIterator","iterable","method","async","sync","retry","Symbol","asyncIterator","iterator","AsyncFromSyncIterator","TypeError","s","AsyncFromSyncIteratorContinuation","r","Object","Promise","reject","done","resolve","value","then","n","next","return","_return","ret","throw","_throw","thr","BlobStream","_ReadableStreamPolyfi","_inherits2","_super","chunks","_this2","_classCallCheck2","BlobStreamController","values","type","_defineProperty2","_assertThisInitialized2","_chunks","_createClass2","key","_options","_this","_wrapAsyncGenerator2","_regenerator","mark","_callee","reader","wrap","_callee$","_context","prev","getReader","delegateYield","_asyncGeneratorDelegate2","_awaitAsyncGenerator2","releaseLock","stop","ReadableStreamPolyfill","exports"],"sources":["../../../../src/node/file/blob-stream.ts"],"sourcesContent":["/**\n * Forked from @gozala's web-blob under MIT license\n * @see https://github.com/Gozala/web-blob\n */\nimport {ReadableStreamPolyfill} from './readable-stream';\nimport {BlobStreamController} from './blob-stream-controller';\n\n/**\n * Blob stream is a `ReadableStream` extension optimized to have minimal\n * overhead when consumed as `AsyncIterable<Uint8Array>`.\n * extends {ReadableStream<Uint8Array>}\n * implements {AsyncIterable<Uint8Array>}\n */\n// @ts-ignore\nexport class BlobStream<T> extends ReadableStreamPolyfill<T> {\n private readonly _chunks: Uint8Array[];\n /**\n * @param chunks\n */\n constructor(chunks) {\n // @ts-ignore\n super(new BlobStreamController(chunks.values()), {type: 'bytes'});\n /** @private */\n this._chunks = chunks;\n }\n\n /**\n * @property [_options.preventCancel]\n */\n // @ts-ignore\n async *[Symbol.asyncIterator](_options?: {preventCancel?: boolean}): AsyncIterable<Uint8Array> {\n const reader = this.getReader();\n yield* this._chunks;\n reader.releaseLock();\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,212 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.BlobPolyfill = void 0;
|
|
8
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
12
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
|
-
var _blobStream = require("./blob-stream");
|
|
15
|
-
var _Symbol$toStringTag;
|
|
16
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
17
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
18
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
19
|
-
_Symbol$toStringTag = Symbol.toStringTag;
|
|
20
|
-
var BlobPolyfill = function () {
|
|
21
|
-
function BlobPolyfill() {
|
|
22
|
-
var init = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
23
|
-
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
24
|
-
(0, _classCallCheck2.default)(this, BlobPolyfill);
|
|
25
|
-
(0, _defineProperty2.default)(this, "type", void 0);
|
|
26
|
-
(0, _defineProperty2.default)(this, "size", void 0);
|
|
27
|
-
(0, _defineProperty2.default)(this, "parts", void 0);
|
|
28
|
-
this.parts = [];
|
|
29
|
-
this.size = 0;
|
|
30
|
-
var _iterator = _createForOfIteratorHelper(init),
|
|
31
|
-
_step;
|
|
32
|
-
try {
|
|
33
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
34
|
-
var part = _step.value;
|
|
35
|
-
if (typeof part === 'string') {
|
|
36
|
-
var bytes = new TextEncoder().encode(part);
|
|
37
|
-
this.parts.push(bytes);
|
|
38
|
-
this.size += bytes.byteLength;
|
|
39
|
-
} else if (part instanceof BlobPolyfill) {
|
|
40
|
-
var _this$parts;
|
|
41
|
-
this.size += part.size;
|
|
42
|
-
(_this$parts = this.parts).push.apply(_this$parts, (0, _toConsumableArray2.default)(part.parts));
|
|
43
|
-
} else if (part instanceof ArrayBuffer) {
|
|
44
|
-
this.parts.push(new Uint8Array(part));
|
|
45
|
-
this.size += part.byteLength;
|
|
46
|
-
} else if (part instanceof Uint8Array) {
|
|
47
|
-
this.parts.push(part);
|
|
48
|
-
this.size += part.byteLength;
|
|
49
|
-
} else if (ArrayBuffer.isView(part)) {
|
|
50
|
-
var buffer = part.buffer,
|
|
51
|
-
byteOffset = part.byteOffset,
|
|
52
|
-
byteLength = part.byteLength;
|
|
53
|
-
this.parts.push(new Uint8Array(buffer, byteOffset, byteLength));
|
|
54
|
-
this.size += byteLength;
|
|
55
|
-
} else {
|
|
56
|
-
var _bytes = new TextEncoder().encode(String(part));
|
|
57
|
-
this.parts.push(_bytes);
|
|
58
|
-
this.size += _bytes.byteLength;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
} catch (err) {
|
|
62
|
-
_iterator.e(err);
|
|
63
|
-
} finally {
|
|
64
|
-
_iterator.f();
|
|
65
|
-
}
|
|
66
|
-
this.type = readType(options.type);
|
|
67
|
-
}
|
|
68
|
-
(0, _createClass2.default)(BlobPolyfill, [{
|
|
69
|
-
key: "slice",
|
|
70
|
-
value: function slice() {
|
|
71
|
-
var start = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
72
|
-
var end = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this.size;
|
|
73
|
-
var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
|
|
74
|
-
var size = this.size,
|
|
75
|
-
parts = this.parts;
|
|
76
|
-
var offset = start < 0 ? Math.max(size + start, 0) : Math.min(start, size);
|
|
77
|
-
var limit = end < 0 ? Math.max(size + end, 0) : Math.min(end, size);
|
|
78
|
-
var span = Math.max(limit - offset, 0);
|
|
79
|
-
var blob = new BlobPolyfill([], {
|
|
80
|
-
type: type
|
|
81
|
-
});
|
|
82
|
-
if (span === 0) {
|
|
83
|
-
return blob;
|
|
84
|
-
}
|
|
85
|
-
var blobSize = 0;
|
|
86
|
-
var blobParts = [];
|
|
87
|
-
var _iterator2 = _createForOfIteratorHelper(parts),
|
|
88
|
-
_step2;
|
|
89
|
-
try {
|
|
90
|
-
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
91
|
-
var part = _step2.value;
|
|
92
|
-
var byteLength = part.byteLength;
|
|
93
|
-
if (offset > 0 && byteLength <= offset) {
|
|
94
|
-
offset -= byteLength;
|
|
95
|
-
limit -= byteLength;
|
|
96
|
-
} else {
|
|
97
|
-
var chunk = part.subarray(offset, Math.min(byteLength, limit));
|
|
98
|
-
blobParts.push(chunk);
|
|
99
|
-
blobSize += chunk.byteLength;
|
|
100
|
-
offset = 0;
|
|
101
|
-
if (blobSize >= span) {
|
|
102
|
-
break;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
} catch (err) {
|
|
107
|
-
_iterator2.e(err);
|
|
108
|
-
} finally {
|
|
109
|
-
_iterator2.f();
|
|
110
|
-
}
|
|
111
|
-
blob.parts = blobParts;
|
|
112
|
-
blob.size = blobSize;
|
|
113
|
-
return blob;
|
|
114
|
-
}
|
|
115
|
-
}, {
|
|
116
|
-
key: "arrayBuffer",
|
|
117
|
-
value: function () {
|
|
118
|
-
var _arrayBuffer = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee() {
|
|
119
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
120
|
-
while (1) switch (_context.prev = _context.next) {
|
|
121
|
-
case 0:
|
|
122
|
-
return _context.abrupt("return", this._toArrayBuffer());
|
|
123
|
-
case 1:
|
|
124
|
-
case "end":
|
|
125
|
-
return _context.stop();
|
|
126
|
-
}
|
|
127
|
-
}, _callee, this);
|
|
128
|
-
}));
|
|
129
|
-
function arrayBuffer() {
|
|
130
|
-
return _arrayBuffer.apply(this, arguments);
|
|
131
|
-
}
|
|
132
|
-
return arrayBuffer;
|
|
133
|
-
}()
|
|
134
|
-
}, {
|
|
135
|
-
key: "text",
|
|
136
|
-
value: function () {
|
|
137
|
-
var _text = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2() {
|
|
138
|
-
var decoder, text, _iterator3, _step3, part;
|
|
139
|
-
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
140
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
141
|
-
case 0:
|
|
142
|
-
decoder = new TextDecoder();
|
|
143
|
-
text = '';
|
|
144
|
-
_iterator3 = _createForOfIteratorHelper(this.parts);
|
|
145
|
-
try {
|
|
146
|
-
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
147
|
-
part = _step3.value;
|
|
148
|
-
text += decoder.decode(part);
|
|
149
|
-
}
|
|
150
|
-
} catch (err) {
|
|
151
|
-
_iterator3.e(err);
|
|
152
|
-
} finally {
|
|
153
|
-
_iterator3.f();
|
|
154
|
-
}
|
|
155
|
-
return _context2.abrupt("return", text);
|
|
156
|
-
case 5:
|
|
157
|
-
case "end":
|
|
158
|
-
return _context2.stop();
|
|
159
|
-
}
|
|
160
|
-
}, _callee2, this);
|
|
161
|
-
}));
|
|
162
|
-
function text() {
|
|
163
|
-
return _text.apply(this, arguments);
|
|
164
|
-
}
|
|
165
|
-
return text;
|
|
166
|
-
}()
|
|
167
|
-
}, {
|
|
168
|
-
key: "stream",
|
|
169
|
-
value: function stream() {
|
|
170
|
-
return new _blobStream.BlobStream(this.parts);
|
|
171
|
-
}
|
|
172
|
-
}, {
|
|
173
|
-
key: "toString",
|
|
174
|
-
value: function toString() {
|
|
175
|
-
return '[object Blob]';
|
|
176
|
-
}
|
|
177
|
-
}, {
|
|
178
|
-
key: _Symbol$toStringTag,
|
|
179
|
-
get: function get() {
|
|
180
|
-
return 'Blob';
|
|
181
|
-
}
|
|
182
|
-
}, {
|
|
183
|
-
key: "_toArrayBuffer",
|
|
184
|
-
value: function _toArrayBuffer() {
|
|
185
|
-
var buffer = new ArrayBuffer(this.size);
|
|
186
|
-
var bytes = new Uint8Array(buffer);
|
|
187
|
-
var offset = 0;
|
|
188
|
-
var _iterator4 = _createForOfIteratorHelper(this.parts),
|
|
189
|
-
_step4;
|
|
190
|
-
try {
|
|
191
|
-
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
192
|
-
var part = _step4.value;
|
|
193
|
-
bytes.set(part, offset);
|
|
194
|
-
offset += part.byteLength;
|
|
195
|
-
}
|
|
196
|
-
} catch (err) {
|
|
197
|
-
_iterator4.e(err);
|
|
198
|
-
} finally {
|
|
199
|
-
_iterator4.f();
|
|
200
|
-
}
|
|
201
|
-
return buffer;
|
|
202
|
-
}
|
|
203
|
-
}]);
|
|
204
|
-
return BlobPolyfill;
|
|
205
|
-
}();
|
|
206
|
-
exports.BlobPolyfill = BlobPolyfill;
|
|
207
|
-
function readType() {
|
|
208
|
-
var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
209
|
-
var type = String(input).toLowerCase();
|
|
210
|
-
return /[^\u0020-\u007E]/.test(type) ? '' : type;
|
|
211
|
-
}
|
|
212
|
-
//# sourceMappingURL=blob.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"blob.js","names":["_blobStream","require","_Symbol$toStringTag","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","toStringTag","BlobPolyfill","init","arguments","undefined","options","_classCallCheck2","default","_defineProperty2","parts","size","_iterator","_step","part","bytes","TextEncoder","encode","push","byteLength","_this$parts","apply","_toConsumableArray2","ArrayBuffer","Uint8Array","isView","buffer","byteOffset","String","type","readType","_createClass2","key","start","end","offset","Math","max","min","limit","span","blob","blobSize","blobParts","_iterator2","_step2","chunk","subarray","_arrayBuffer","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","abrupt","_toArrayBuffer","stop","arrayBuffer","_text","_callee2","decoder","text","_iterator3","_step3","_callee2$","_context2","TextDecoder","decode","stream","BlobStream","get","_iterator4","_step4","set","exports","input","toLowerCase"],"sources":["../../../../src/node/file/blob.ts"],"sourcesContent":["// Forked from @gozala's web-blob under MIT license https://github.com/Gozala/web-blob\nimport {BlobStream} from './blob-stream';\n\n/**\n * Forked from @gozala's web-blob under MIT license\n * @see https://github.com/Gozala/web-blob\n */\nexport class BlobPolyfill {\n // implements Blob {\n /** The MIME type of the data contained in the Blob. If type is unknown, string is empty. */\n readonly type: string;\n /** The size, in bytes, of the data contained in the Blob object. */\n size: number;\n private parts: Uint8Array[];\n /**\n * @param [init]\n * @param [options]\n */\n constructor(init: BlobPart[] = [], options: BlobPropertyBag = {}) {\n this.parts = [];\n\n this.size = 0;\n for (const part of init) {\n if (typeof part === 'string') {\n const bytes = new TextEncoder().encode(part);\n this.parts.push(bytes);\n this.size += bytes.byteLength;\n } else if (part instanceof BlobPolyfill) {\n this.size += part.size;\n // @ts-ignore - `parts` is marked private so TS will complain about\n // accessing it.\n this.parts.push(...part.parts);\n } else if (part instanceof ArrayBuffer) {\n this.parts.push(new Uint8Array(part));\n this.size += part.byteLength;\n } else if (part instanceof Uint8Array) {\n this.parts.push(part);\n this.size += part.byteLength;\n } else if (ArrayBuffer.isView(part)) {\n const {buffer, byteOffset, byteLength} = part;\n this.parts.push(new Uint8Array(buffer, byteOffset, byteLength));\n this.size += byteLength;\n } else {\n const bytes = new TextEncoder().encode(String(part));\n this.parts.push(bytes);\n this.size += bytes.byteLength;\n }\n }\n\n /** @private */\n this.type = readType(options.type);\n }\n\n /**\n * Returns a new Blob object containing the data in the specified range of\n * bytes of the blob on which it's called.\n * @param start=0 - An index into the Blob indicating the first\n * byte to include in the new Blob. If you specify a negative value, it's\n * treated as an offset from the end of the Blob toward the beginning. For\n * example, `-10` would be the 10th from last byte in the Blob. The default\n * value is `0`. If you specify a value for start that is larger than the\n * size of the source Blob, the returned Blob has size 0 and contains no\n * data.\n * @param end - An index into the `Blob` indicating the first byte\n * that will *not* be included in the new `Blob` (i.e. the byte exactly at\n * this index is not included). If you specify a negative value, it's treated\n * as an offset from the end of the Blob toward the beginning. For example,\n * `-10` would be the 10th from last byte in the `Blob`. The default value is\n * size.\n * @param type - The content type to assign to the new Blob;\n * this will be the value of its type property. The default value is an empty\n * string.\n */\n slice(start: number = 0, end: number = this.size, type: string = ''): Blob {\n const {size, parts: parts} = this;\n let offset = start < 0 ? Math.max(size + start, 0) : Math.min(start, size);\n\n let limit = end < 0 ? Math.max(size + end, 0) : Math.min(end, size);\n const span = Math.max(limit - offset, 0);\n const blob = new BlobPolyfill([], {type});\n\n if (span === 0) {\n // @ts-ignore\n return blob;\n }\n\n let blobSize = 0;\n const blobParts: Uint8Array[] = [];\n for (const part of parts) {\n const {byteLength} = part;\n if (offset > 0 && byteLength <= offset) {\n offset -= byteLength;\n limit -= byteLength;\n } else {\n const chunk = part.subarray(offset, Math.min(byteLength, limit));\n blobParts.push(chunk);\n blobSize += chunk.byteLength;\n // no longer need to take that into account\n offset = 0;\n\n // don't add the overflow to new blobParts\n if (blobSize >= span) {\n break;\n }\n }\n }\n\n blob.parts = blobParts;\n blob.size = blobSize;\n\n // @ts-ignore\n return blob;\n }\n\n /**\n * Returns a promise that resolves with an ArrayBuffer containing the entire\n * contents of the Blob as binary data.\n */\n // eslint-disable-next-line require-await\n async arrayBuffer(): Promise<ArrayBuffer> {\n return this._toArrayBuffer();\n }\n\n /**\n * Returns a promise that resolves with a USVString containing the entire\n * contents of the Blob interpreted as UTF-8 text.\n */\n // eslint-disable-next-line require-await\n async text(): Promise<string> {\n const decoder = new TextDecoder();\n let text = '';\n for (const part of this.parts) {\n text += decoder.decode(part);\n }\n return text;\n }\n\n /**\n */\n // @ts-ignore\n stream(): BlobStream<any> {\n return new BlobStream<any>(this.parts);\n }\n\n /**\n * @returns {string}\n */\n toString() {\n return '[object Blob]';\n }\n\n get [Symbol.toStringTag]() {\n return 'Blob';\n }\n\n _toArrayBuffer(): ArrayBuffer {\n const buffer = new ArrayBuffer(this.size);\n const bytes = new Uint8Array(buffer);\n let offset = 0;\n for (const part of this.parts) {\n bytes.set(part, offset);\n offset += part.byteLength;\n }\n return buffer;\n }\n}\n\n/**\n */\nfunction readType(input: string = ''): string {\n const type = String(input).toLowerCase();\n return /[^\\u0020-\\u007E]/.test(type) ? '' : type;\n}\n"],"mappings":"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"}
|