@loaders.gl/polyfills 3.3.0-alpha.1 → 3.3.0-alpha.11
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/dist.min.js +120 -33
- package/dist/es5/bundle.js +0 -1
- package/dist/es5/bundle.js.map +1 -1
- package/dist/es5/index.js +12 -33
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/encoding-indexes.js.map +1 -1
- package/dist/es5/lib/encoding.js +255 -135
- package/dist/es5/lib/encoding.js.map +1 -1
- package/dist/es5/node/buffer/btoa.node.js +0 -1
- package/dist/es5/node/buffer/btoa.node.js.map +1 -1
- package/dist/es5/node/buffer/to-array-buffer.node.js +0 -2
- package/dist/es5/node/buffer/to-array-buffer.node.js.map +1 -1
- package/dist/es5/node/fetch/fetch.node.js +2 -36
- package/dist/es5/node/fetch/fetch.node.js.map +1 -1
- package/dist/es5/node/fetch/headers.node.js +0 -21
- package/dist/es5/node/fetch/headers.node.js.map +1 -1
- package/dist/es5/node/fetch/response.node.js +10 -45
- package/dist/es5/node/fetch/response.node.js.map +1 -1
- package/dist/es5/node/fetch/utils/decode-data-uri.node.js +0 -8
- package/dist/es5/node/fetch/utils/decode-data-uri.node.js.map +1 -1
- package/dist/es5/node/fetch/utils/stream-utils.node.js +10 -40
- package/dist/es5/node/fetch/utils/stream-utils.node.js.map +1 -1
- package/dist/es5/node/file/blob-stream-controller.js +5 -19
- package/dist/es5/node/file/blob-stream-controller.js.map +1 -1
- package/dist/es5/node/file/blob-stream.js +5 -30
- package/dist/es5/node/file/blob-stream.js.map +1 -1
- package/dist/es5/node/file/blob.js +17 -50
- package/dist/es5/node/file/blob.js.map +1 -1
- package/dist/es5/node/file/file-reader.js +1 -28
- package/dist/es5/node/file/file-reader.js.map +1 -1
- package/dist/es5/node/file/file.js +0 -18
- package/dist/es5/node/file/file.js.map +1 -1
- package/dist/es5/node/file/install-file-polyfills.js +0 -7
- package/dist/es5/node/file/install-file-polyfills.js.map +1 -1
- package/dist/es5/node/file/readable-stream.js +2 -14
- package/dist/es5/node/file/readable-stream.js.map +1 -1
- package/dist/es5/node/images/encode-image.node.js +2 -6
- package/dist/es5/node/images/encode-image.node.js.map +1 -1
- package/dist/es5/node/images/parse-image.node.js +30 -27
- package/dist/es5/node/images/parse-image.node.js.map +1 -1
- package/dist/es5/promise/all-settled.js +2 -2
- package/dist/es5/promise/all-settled.js.map +1 -1
- package/dist/es5/utils/assert.js +0 -1
- package/dist/es5/utils/assert.js.map +1 -1
- package/dist/es5/utils/globals.js +3 -4
- package/dist/es5/utils/globals.js.map +1 -1
- package/dist/esm/bundle.js +1 -1
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/index.js +4 -8
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/encoding-indexes.js +2 -0
- package/dist/esm/lib/encoding-indexes.js.map +1 -1
- package/dist/esm/lib/encoding.js +256 -131
- package/dist/esm/lib/encoding.js.map +1 -1
- package/dist/esm/node/buffer/btoa.node.js +2 -0
- package/dist/esm/node/buffer/btoa.node.js.map +1 -1
- package/dist/esm/node/buffer/to-array-buffer.node.js +0 -1
- package/dist/esm/node/buffer/to-array-buffer.node.js.map +1 -1
- package/dist/esm/node/fetch/fetch.node.js +5 -17
- package/dist/esm/node/fetch/fetch.node.js.map +1 -1
- package/dist/esm/node/fetch/headers.node.js +2 -24
- package/dist/esm/node/fetch/headers.node.js.map +1 -1
- package/dist/esm/node/fetch/response.node.js +0 -17
- package/dist/esm/node/fetch/response.node.js.map +1 -1
- package/dist/esm/node/fetch/utils/decode-data-uri.node.js +3 -6
- package/dist/esm/node/fetch/utils/decode-data-uri.node.js.map +1 -1
- package/dist/esm/node/fetch/utils/stream-utils.node.js +4 -7
- package/dist/esm/node/fetch/utils/stream-utils.node.js.map +1 -1
- package/dist/esm/node/file/blob-stream-controller.js +0 -8
- package/dist/esm/node/file/blob-stream-controller.js.map +1 -1
- package/dist/esm/node/file/blob-stream.js +1 -5
- package/dist/esm/node/file/blob-stream.js.map +1 -1
- package/dist/esm/node/file/blob.js +12 -21
- package/dist/esm/node/file/blob.js.map +1 -1
- package/dist/esm/node/file/file-reader.js +1 -24
- package/dist/esm/node/file/file-reader.js.map +1 -1
- package/dist/esm/node/file/file.js +4 -9
- package/dist/esm/node/file/file.js.map +1 -1
- package/dist/esm/node/file/install-file-polyfills.js +0 -2
- package/dist/esm/node/file/install-file-polyfills.js.map +1 -1
- package/dist/esm/node/file/readable-stream.js +2 -0
- package/dist/esm/node/file/readable-stream.js.map +1 -1
- package/dist/esm/node/images/encode-image.node.js +4 -0
- package/dist/esm/node/images/encode-image.node.js.map +1 -1
- package/dist/esm/node/images/parse-image.node.js +25 -14
- package/dist/esm/node/images/parse-image.node.js.map +1 -1
- package/dist/esm/promise/all-settled.js +1 -0
- package/dist/esm/promise/all-settled.js.map +1 -1
- package/dist/esm/utils/assert.js.map +1 -1
- package/dist/esm/utils/globals.js +4 -1
- package/dist/esm/utils/globals.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -2
- package/dist/lib/encoding.js +1 -1
- package/dist/libs/encoding-indexes-asian.d.ts +1 -1
- package/dist/node/images/parse-image.node.d.ts +1 -1
- package/dist/node/images/parse-image.node.d.ts.map +1 -1
- package/dist/node/images/parse-image.node.js +26 -17
- package/package.json +2 -2
- package/src/index.ts +1 -0
- package/src/node/images/parse-image.node.ts +31 -19
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-image.node.d.ts","sourceRoot":"","sources":["../../../src/node/images/parse-image.node.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parse-image.node.d.ts","sourceRoot":"","sources":["../../../src/node/images/parse-image.node.ts"],"names":[],"mappings":"AAGA,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CAAC;AAEF,wBAAsB,cAAc,CAAC,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUjG"}
|
|
@@ -5,25 +5,34 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.parseImageNode = void 0;
|
|
7
7
|
const get_pixels_1 = __importDefault(require("get-pixels"));
|
|
8
|
-
const assert_1 = require("../../utils/assert");
|
|
9
|
-
const util_1 = __importDefault(require("util"));
|
|
10
8
|
async function parseImageNode(arrayBuffer, mimeType) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const getPixelsAsync = util_1.default.promisify(get_pixels_1.default);
|
|
9
|
+
if (!mimeType) {
|
|
10
|
+
throw new Error('MIMEType is required to parse image under Node.js');
|
|
11
|
+
}
|
|
15
12
|
const buffer = arrayBuffer instanceof Buffer ? arrayBuffer : Buffer.from(arrayBuffer);
|
|
16
13
|
const ndarray = await getPixelsAsync(buffer, mimeType);
|
|
17
|
-
|
|
18
|
-
const layers = ndarray.shape.length === 4 ? ndarray.shape.shift() : 1;
|
|
19
|
-
// extract width/height etc
|
|
20
|
-
return {
|
|
21
|
-
shape,
|
|
22
|
-
data: ndarray.data,
|
|
23
|
-
width: ndarray.shape[0],
|
|
24
|
-
height: ndarray.shape[1],
|
|
25
|
-
components: ndarray.shape[2],
|
|
26
|
-
layers
|
|
27
|
-
};
|
|
14
|
+
return ndarray;
|
|
28
15
|
}
|
|
29
16
|
exports.parseImageNode = parseImageNode;
|
|
17
|
+
// TODO - check if getPixels callback is asynchronous if provided with buffer input
|
|
18
|
+
// if not, parseImage can be a sync function
|
|
19
|
+
function getPixelsAsync(buffer, mimeType) {
|
|
20
|
+
return new Promise((resolve) => (0, get_pixels_1.default)(buffer, mimeType, (err, ndarray) => {
|
|
21
|
+
if (err) {
|
|
22
|
+
throw err;
|
|
23
|
+
}
|
|
24
|
+
const shape = [...ndarray.shape];
|
|
25
|
+
const layers = ndarray.shape.length === 4 ? ndarray.shape.shift() : 1;
|
|
26
|
+
const data = ndarray.data instanceof Buffer ? new Uint8Array(ndarray.data) : ndarray.data;
|
|
27
|
+
// extract width/height etc
|
|
28
|
+
resolve({
|
|
29
|
+
shape,
|
|
30
|
+
data,
|
|
31
|
+
width: ndarray.shape[0],
|
|
32
|
+
height: ndarray.shape[1],
|
|
33
|
+
components: ndarray.shape[2],
|
|
34
|
+
// TODO - error
|
|
35
|
+
layers: layers ? [layers] : []
|
|
36
|
+
});
|
|
37
|
+
}));
|
|
38
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loaders.gl/polyfills",
|
|
3
|
-
"version": "3.3.0-alpha.
|
|
3
|
+
"version": "3.3.0-alpha.11",
|
|
4
4
|
"description": "Polyfills for TextEncoder/TextDecoder",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -105,5 +105,5 @@
|
|
|
105
105
|
"through": "^2.3.8",
|
|
106
106
|
"web-streams-polyfill": "^3.0.0"
|
|
107
107
|
},
|
|
108
|
-
"gitHead": "
|
|
108
|
+
"gitHead": "1863a8875f63d578c0fdf5bdb3b7d6827f799db9"
|
|
109
109
|
}
|
package/src/index.ts
CHANGED
|
@@ -20,6 +20,7 @@ export {BlobPolyfill} from './node/file/blob';
|
|
|
20
20
|
export {FileReaderPolyfill} from './node/file/file-reader';
|
|
21
21
|
export {FilePolyfill} from './node/file/file';
|
|
22
22
|
export {installFilePolyfills} from './node/file/install-file-polyfills';
|
|
23
|
+
export {default as _fetchNode} from './node/fetch/fetch.node';
|
|
23
24
|
|
|
24
25
|
// POLYFILLS: TextEncoder, TextDecoder
|
|
25
26
|
// - Recent Node versions have these classes but virtually no encodings unless special build.
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import getPixels from 'get-pixels';
|
|
2
|
-
import {assert} from '../../utils/assert';
|
|
3
|
-
import util from 'util';
|
|
4
2
|
|
|
5
3
|
// Note: These types are also defined in @loaders.gl/images and need to be kept in sync
|
|
6
4
|
type NDArray = {
|
|
@@ -13,26 +11,40 @@ type NDArray = {
|
|
|
13
11
|
};
|
|
14
12
|
|
|
15
13
|
export async function parseImageNode(arrayBuffer: ArrayBuffer, mimeType: string): Promise<NDArray> {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
// if not, parseImage can be a sync function
|
|
20
|
-
const getPixelsAsync = util.promisify(getPixels);
|
|
14
|
+
if (!mimeType) {
|
|
15
|
+
throw new Error('MIMEType is required to parse image under Node.js');
|
|
16
|
+
}
|
|
21
17
|
|
|
22
18
|
const buffer = arrayBuffer instanceof Buffer ? arrayBuffer : Buffer.from(arrayBuffer);
|
|
23
19
|
|
|
24
20
|
const ndarray = await getPixelsAsync(buffer, mimeType);
|
|
25
21
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
22
|
+
return ndarray;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// TODO - check if getPixels callback is asynchronous if provided with buffer input
|
|
26
|
+
// if not, parseImage can be a sync function
|
|
27
|
+
function getPixelsAsync(buffer: Buffer, mimeType: string): Promise<NDArray> {
|
|
28
|
+
return new Promise<NDArray>((resolve) =>
|
|
29
|
+
getPixels(buffer, mimeType, (err, ndarray) => {
|
|
30
|
+
if (err) {
|
|
31
|
+
throw err;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const shape = [...ndarray.shape];
|
|
35
|
+
const layers = ndarray.shape.length === 4 ? ndarray.shape.shift() : 1;
|
|
36
|
+
const data = ndarray.data instanceof Buffer ? new Uint8Array(ndarray.data) : ndarray.data;
|
|
37
|
+
|
|
38
|
+
// extract width/height etc
|
|
39
|
+
resolve({
|
|
40
|
+
shape,
|
|
41
|
+
data,
|
|
42
|
+
width: ndarray.shape[0],
|
|
43
|
+
height: ndarray.shape[1],
|
|
44
|
+
components: ndarray.shape[2],
|
|
45
|
+
// TODO - error
|
|
46
|
+
layers: layers ? [layers] : []
|
|
47
|
+
});
|
|
48
|
+
})
|
|
49
|
+
);
|
|
38
50
|
}
|