@loaders.gl/core 4.0.0-alpha.21 → 4.0.0-alpha.23
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 +15 -18
- package/dist/es5/index.js +4 -12
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/iterators/make-stream/make-node-stream.js.map +1 -1
- package/dist/es5/lib/api/load-in-batches.js.map +1 -1
- package/dist/es5/lib/api/load.js.map +1 -1
- package/dist/es5/lib/api/parse-in-batches.js +11 -13
- package/dist/es5/lib/api/parse-in-batches.js.map +1 -1
- package/dist/es5/lib/api/parse-sync.js +2 -6
- package/dist/es5/lib/api/parse-sync.js.map +1 -1
- package/dist/es5/lib/api/parse.js +10 -12
- package/dist/es5/lib/api/parse.js.map +1 -1
- package/dist/es5/lib/api/save.js.map +1 -1
- package/dist/es5/lib/api/select-loader.js +5 -3
- package/dist/es5/lib/api/select-loader.js.map +1 -1
- package/dist/es5/lib/filesystems/browser-filesystem.js +2 -2
- package/dist/es5/lib/filesystems/browser-filesystem.js.map +1 -1
- package/dist/es5/lib/init.js +1 -1
- package/dist/es5/lib/init.js.map +1 -1
- package/dist/es5/lib/loader-utils/get-data.js.map +1 -1
- package/dist/es5/lib/loader-utils/loader-context.js +2 -2
- package/dist/es5/lib/loader-utils/loader-context.js.map +1 -1
- package/dist/es5/lib/loader-utils/loggers.js.map +1 -1
- package/dist/es5/lib/loader-utils/option-utils.js +3 -4
- package/dist/es5/lib/loader-utils/option-utils.js.map +1 -1
- package/dist/es5/lib/progress/fetch-progress.js +1 -1
- package/dist/es5/lib/progress/fetch-progress.js.map +1 -1
- package/dist/es5/null-loader.js +1 -1
- package/dist/es5/null-loader.js.map +1 -1
- package/dist/esm/index.js +2 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/iterators/make-stream/make-node-stream.js.map +1 -1
- package/dist/esm/lib/api/load-in-batches.js.map +1 -1
- package/dist/esm/lib/api/load.js.map +1 -1
- package/dist/esm/lib/api/parse-in-batches.js +3 -4
- package/dist/esm/lib/api/parse-in-batches.js.map +1 -1
- package/dist/esm/lib/api/parse-sync.js +2 -4
- package/dist/esm/lib/api/parse-sync.js.map +1 -1
- package/dist/esm/lib/api/parse.js +1 -2
- package/dist/esm/lib/api/parse.js.map +1 -1
- package/dist/esm/lib/api/save.js.map +1 -1
- package/dist/esm/lib/api/select-loader.js +5 -3
- package/dist/esm/lib/api/select-loader.js.map +1 -1
- package/dist/esm/lib/filesystems/browser-filesystem.js +1 -1
- package/dist/esm/lib/filesystems/browser-filesystem.js.map +1 -1
- package/dist/esm/lib/init.js +1 -1
- package/dist/esm/lib/init.js.map +1 -1
- package/dist/esm/lib/loader-utils/get-data.js.map +1 -1
- package/dist/esm/lib/loader-utils/loader-context.js +2 -2
- package/dist/esm/lib/loader-utils/loader-context.js.map +1 -1
- package/dist/esm/lib/loader-utils/loggers.js.map +1 -1
- package/dist/esm/lib/loader-utils/option-utils.js +2 -2
- package/dist/esm/lib/loader-utils/option-utils.js.map +1 -1
- package/dist/esm/lib/progress/fetch-progress.js +1 -1
- package/dist/esm/lib/progress/fetch-progress.js.map +1 -1
- package/dist/esm/null-loader.js +1 -1
- package/dist/esm/null-loader.js.map +1 -1
- package/dist/index.d.ts +3 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -5
- package/dist/iterators/make-stream/make-node-stream.d.ts.map +1 -1
- package/dist/iterators/make-stream/make-node-stream.js +5 -2
- package/dist/lib/api/load-in-batches.d.ts +2 -2
- package/dist/lib/api/load-in-batches.d.ts.map +1 -1
- package/dist/lib/api/load.d.ts +4 -2
- package/dist/lib/api/load.d.ts.map +1 -1
- package/dist/lib/api/parse-in-batches.d.ts +2 -2
- package/dist/lib/api/parse-in-batches.d.ts.map +1 -1
- package/dist/lib/api/parse-in-batches.js +1 -2
- package/dist/lib/api/parse-sync.d.ts +2 -2
- package/dist/lib/api/parse-sync.d.ts.map +1 -1
- package/dist/lib/api/parse-sync.js +2 -3
- package/dist/lib/api/parse.d.ts +4 -4
- package/dist/lib/api/parse.d.ts.map +1 -1
- package/dist/lib/api/parse.js +4 -2
- package/dist/lib/api/save.d.ts +2 -2
- package/dist/lib/api/save.d.ts.map +1 -1
- package/dist/lib/api/select-loader.d.ts.map +1 -1
- package/dist/lib/api/select-loader.js +8 -3
- package/dist/lib/filesystems/browser-filesystem.d.ts +4 -4
- package/dist/lib/filesystems/browser-filesystem.d.ts.map +1 -1
- package/dist/lib/filesystems/browser-filesystem.js +3 -2
- package/dist/lib/init.d.ts.map +1 -1
- package/dist/lib/init.js +1 -0
- package/dist/lib/loader-utils/get-data.d.ts.map +1 -1
- package/dist/lib/loader-utils/get-data.js +1 -0
- package/dist/lib/loader-utils/loader-context.d.ts +5 -2
- package/dist/lib/loader-utils/loader-context.d.ts.map +1 -1
- package/dist/lib/loader-utils/loader-context.js +3 -3
- package/dist/lib/loader-utils/loggers.d.ts +10 -8
- package/dist/lib/loader-utils/loggers.d.ts.map +1 -1
- package/dist/lib/loader-utils/option-utils.d.ts +1 -1
- package/dist/lib/loader-utils/option-utils.d.ts.map +1 -1
- package/dist/lib/loader-utils/option-utils.js +7 -5
- package/dist/lib/progress/fetch-progress.d.ts +1 -1
- package/dist/lib/progress/fetch-progress.d.ts.map +1 -1
- package/dist/lib/progress/fetch-progress.js +2 -1
- package/dist/null-worker-node.js +9 -4
- package/dist/null-worker.js +9 -4
- package/package.json +4 -4
- package/src/index.ts +4 -5
- package/src/iterators/make-stream/make-node-stream.ts +5 -2
- package/src/lib/api/load-in-batches.ts +4 -4
- package/src/lib/api/load.ts +22 -11
- package/src/lib/api/parse-in-batches.ts +7 -7
- package/src/lib/api/parse-sync.ts +6 -7
- package/src/lib/api/parse.ts +11 -7
- package/src/lib/api/save.ts +2 -2
- package/src/lib/api/select-loader.ts +24 -13
- package/src/lib/filesystems/browser-filesystem.ts +5 -5
- package/src/lib/init.ts +1 -0
- package/src/lib/loader-utils/get-data.ts +1 -0
- package/src/lib/loader-utils/loader-context.ts +8 -5
- package/src/lib/loader-utils/loggers.ts +10 -8
- package/src/lib/loader-utils/option-utils.ts +23 -14
- package/src/lib/progress/fetch-progress.ts +10 -2
- package/src/null-loader.ts +1 -1
- package/dist/es5/lib/filesystems/filesystem.js +0 -2
- package/dist/es5/lib/filesystems/filesystem.js.map +0 -1
- package/dist/esm/lib/filesystems/filesystem.js +0 -2
- package/dist/esm/lib/filesystems/filesystem.js.map +0 -1
- package/dist/lib/filesystems/filesystem.d.ts +0 -46
- package/dist/lib/filesystems/filesystem.d.ts.map +0 -1
- package/dist/lib/filesystems/filesystem.js +0 -2
- package/src/lib/filesystems/filesystem.ts +0 -49
package/dist/lib/api/save.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { Writer, WriterOptions } from '@loaders.gl/loader-utils';
|
|
2
|
-
export declare function save(data:
|
|
3
|
-
export declare function saveSync(data:
|
|
2
|
+
export declare function save(data: unknown, url: string, writer: Writer, options: WriterOptions): Promise<void>;
|
|
3
|
+
export declare function saveSync(data: unknown, url: string, writer: Writer, options: WriterOptions): void;
|
|
4
4
|
//# sourceMappingURL=save.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"save.d.ts","sourceRoot":"","sources":["../../../src/lib/api/save.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAIpE,wBAAsB,IAAI,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"save.d.ts","sourceRoot":"","sources":["../../../src/lib/api/save.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAIpE,wBAAsB,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,iBAG5F;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,QAG1F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"select-loader.d.ts","sourceRoot":"","sources":["../../../src/lib/api/select-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAE,aAAa,EAAE,MAAM,EAAC,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"select-loader.d.ts","sourceRoot":"","sources":["../../../src/lib/api/select-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAE,aAAa,EAAE,MAAM,EAAC,MAAM,0BAA0B,CAAC;AAgBnF;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,GAAG,MAAM,EAC5C,OAAO,GAAE,MAAM,EAAE,GAAG,MAAW,EAC/B,OAAO,CAAC,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAwBxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,WAAW,GAAG,MAAM,EAC5C,OAAO,GAAE,MAAM,EAAE,GAAG,MAAW,EAC/B,OAAO,CAAC,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE,aAAa,GACtB,MAAM,GAAG,IAAI,CAmCf"}
|
|
@@ -103,11 +103,15 @@ function selectLoaderInternal(data, loaders, options, context) {
|
|
|
103
103
|
loader = loader || findLoaderByMIMEType(loaders, type);
|
|
104
104
|
reason = reason || (loader ? `matched MIME type ${type}` : '');
|
|
105
105
|
// Look for loader via initial bytes (Note: not always accessible (e.g. Response, stream, async iterator)
|
|
106
|
+
// @ts-ignore Blob | Response
|
|
106
107
|
loader = loader || findLoaderByInitialBytes(loaders, data);
|
|
108
|
+
// @ts-ignore Blob | Response
|
|
107
109
|
reason = reason || (loader ? `matched initial data ${getFirstCharacters(data)}` : '');
|
|
108
110
|
// Look up loader by fallback mime type
|
|
109
|
-
|
|
110
|
-
|
|
111
|
+
if (options?.fallbackMimeType) {
|
|
112
|
+
loader = loader || findLoaderByMIMEType(loaders, options?.fallbackMimeType);
|
|
113
|
+
reason = reason || (loader ? `matched fallback MIME type ${type}` : '');
|
|
114
|
+
}
|
|
111
115
|
if (reason) {
|
|
112
116
|
log_1.log.log(1, `selectLoader selected ${loader?.name}: ${reason}.`);
|
|
113
117
|
}
|
|
@@ -132,6 +136,7 @@ function getNoValidLoaderMessage(data) {
|
|
|
132
136
|
message += url ? `${loader_utils_1.path.filename(url)}, ` : 'no url provided, ';
|
|
133
137
|
message += `MIME type: ${type ? `"${type}"` : 'not provided'}, `;
|
|
134
138
|
// First characters are only accessible when called on data (string or arrayBuffer).
|
|
139
|
+
// @ts-ignore Blob | Response
|
|
135
140
|
const firstCharacters = data ? getFirstCharacters(data) : '';
|
|
136
141
|
message += firstCharacters ? ` first bytes: "${firstCharacters}"` : 'first bytes: not available';
|
|
137
142
|
message += ')';
|
|
@@ -217,7 +222,7 @@ function testBinary(data, byteOffset, loader, test) {
|
|
|
217
222
|
}
|
|
218
223
|
switch (typeof test) {
|
|
219
224
|
case 'function':
|
|
220
|
-
return test(data
|
|
225
|
+
return test(data);
|
|
221
226
|
case 'string':
|
|
222
227
|
// Magic bytes check: If `test` is a string, check if binary data starts with that strings
|
|
223
228
|
const magic = getMagicString(data, byteOffset, test.length);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { FileSystem } from '
|
|
1
|
+
import type { FileSystem } from '@loaders.gl/loader-utils';
|
|
2
2
|
type BrowserFileSystemOptions = {
|
|
3
3
|
fetch?: typeof fetch;
|
|
4
4
|
};
|
|
@@ -6,7 +6,7 @@ type BrowserFileSystemOptions = {
|
|
|
6
6
|
* FileSystem adapter for a browser FileList.
|
|
7
7
|
* Holds a list of browser 'File' objects.
|
|
8
8
|
*/
|
|
9
|
-
export
|
|
9
|
+
export declare class BrowserFileSystem implements FileSystem {
|
|
10
10
|
private _fetch;
|
|
11
11
|
private files;
|
|
12
12
|
private lowerCaseFiles;
|
|
@@ -38,7 +38,7 @@ export default class BrowserFileSystem implements FileSystem {
|
|
|
38
38
|
* Just removes the file from the list
|
|
39
39
|
*/
|
|
40
40
|
unlink(path: string): Promise<void>;
|
|
41
|
-
open(pathname: string, flags:
|
|
41
|
+
open(pathname: string, flags: unknown, mode?: unknown): Promise<any>;
|
|
42
42
|
/**
|
|
43
43
|
* Read a range into a buffer
|
|
44
44
|
* @todo - handle position memory
|
|
@@ -52,7 +52,7 @@ export default class BrowserFileSystem implements FileSystem {
|
|
|
52
52
|
buffer: ArrayBuffer;
|
|
53
53
|
}>;
|
|
54
54
|
close(fd: number): Promise<void>;
|
|
55
|
-
_getFile(path:
|
|
55
|
+
_getFile(path: string, used: boolean): File;
|
|
56
56
|
}
|
|
57
57
|
export {};
|
|
58
58
|
//# sourceMappingURL=browser-filesystem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-filesystem.d.ts","sourceRoot":"","sources":["../../../src/lib/filesystems/browser-filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"browser-filesystem.d.ts","sourceRoot":"","sources":["../../../src/lib/filesystems/browser-filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AAEzD,KAAK,wBAAwB,GAAG;IAC9B,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,UAAU;IAClD,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,KAAK,CAAkC;IAC/C,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,SAAS,CAAqC;IAEtD;;;;OAIG;gBACS,KAAK,EAAE,QAAQ,GAAG,IAAI,EAAE,EAAE,OAAO,CAAC,EAAE,wBAAwB;IAexE;;;OAGG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC;IAkCnE;;;;OAIG;IACG,OAAO,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IASlD;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC;IAQnE;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASnC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAI1E;;;;;;;OAOG;IACG,IAAI,CACR,EAAE,EAAE,GAAG,EACP,MAAM,EAAE,WAAW,EACnB,MAAM,GAAE,MAAU,EAClB,MAAM,GAAE,MAA0B,EAClC,QAAQ,GAAE,MAAM,GAAG,IAAW,GAC7B,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAC,CAAC;IAQ9C,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAStC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI;CAQ5C"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BrowserFileSystem = void 0;
|
|
3
4
|
/**
|
|
4
5
|
* FileSystem adapter for a browser FileList.
|
|
5
6
|
* Holds a list of browser 'File' objects.
|
|
@@ -115,7 +116,7 @@ class BrowserFileSystem {
|
|
|
115
116
|
// PRIVATE
|
|
116
117
|
// Supports case independent paths, and file usage tracking
|
|
117
118
|
_getFile(path, used) {
|
|
118
|
-
// Prefer case match, but fall back to case
|
|
119
|
+
// Prefer case match, but fall back to case independent.
|
|
119
120
|
const file = this.files[path] || this.lowerCaseFiles[path];
|
|
120
121
|
if (file && used) {
|
|
121
122
|
this.usedFiles[path] = true;
|
|
@@ -123,4 +124,4 @@ class BrowserFileSystem {
|
|
|
123
124
|
return file;
|
|
124
125
|
}
|
|
125
126
|
}
|
|
126
|
-
exports.
|
|
127
|
+
exports.BrowserFileSystem = BrowserFileSystem;
|
package/dist/lib/init.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/lib/init.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/lib/init.ts"],"names":[],"mappings":";AAiBA,wBAAkC"}
|
package/dist/lib/init.js
CHANGED
|
@@ -7,6 +7,7 @@ const version = typeof __VERSION__ !== 'undefined' ? __VERSION__ : '';
|
|
|
7
7
|
// @ts-ignore
|
|
8
8
|
if (!globalThis.loaders) {
|
|
9
9
|
log_1.log.log(1, `loaders.gl ${version}`)();
|
|
10
|
+
// @ts-ignore TS2339: Property 'loaders' does not exist on type 'Window & typeof globalThis'.
|
|
10
11
|
globalThis.loaders = Object.assign(globalThis.loaders || {}, {
|
|
11
12
|
VERSION: version,
|
|
12
13
|
log: log_1.log
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-data.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,MAAM,EACN,aAAa,EACd,MAAM,0BAA0B,CAAC;AAiBlC,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,WAAW,GAAG,MAAM,CAyCtB;AAGD,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,CA4B/B;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"get-data.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/get-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,MAAM,EACN,aAAa,EACd,MAAM,0BAA0B,CAAC;AAiBlC,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,WAAW,GAAG,MAAM,CAyCtB;AAGD,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,CA4B/B;AAED,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CA0B7D;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAWxF"}
|
|
@@ -88,6 +88,7 @@ async function getAsyncIterableFromData(data, options) {
|
|
|
88
88
|
return (0, make_iterator_1.makeIterator)(data, options);
|
|
89
89
|
}
|
|
90
90
|
if ((0, is_type_1.isAsyncIterable)(data)) {
|
|
91
|
+
// @ts-ignore
|
|
91
92
|
return data[Symbol.asyncIterator]();
|
|
92
93
|
}
|
|
93
94
|
return getIterableFromData(data);
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { Loader, LoaderOptions, LoaderContext } from '@loaders.gl/loader-utils';
|
|
2
|
+
/** Properties for creating an updated context */
|
|
3
|
+
type LoaderContextProps = Omit<LoaderContext, 'fetch'> & Partial<Pick<LoaderContext, 'fetch'>>;
|
|
2
4
|
/**
|
|
3
5
|
* "sub" loaders invoked by other loaders get a "context" injected on `this`
|
|
4
6
|
* The context will inject core methods like `parse` and contain information
|
|
@@ -8,6 +10,7 @@ import type { Loader, LoaderOptions, LoaderContext } from '@loaders.gl/loader-ut
|
|
|
8
10
|
* @param options
|
|
9
11
|
* @param previousContext
|
|
10
12
|
*/
|
|
11
|
-
export declare function getLoaderContext(context:
|
|
12
|
-
export declare function getLoadersFromContext(loaders: Loader[] | Loader | undefined, context?: LoaderContext):
|
|
13
|
+
export declare function getLoaderContext(context: LoaderContextProps, options: LoaderOptions, parentContext: LoaderContext | null): LoaderContext;
|
|
14
|
+
export declare function getLoadersFromContext(loaders: Loader[] | Loader | undefined, context?: LoaderContext): Loader | Loader[] | undefined;
|
|
15
|
+
export {};
|
|
13
16
|
//# sourceMappingURL=loader-context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loader-context.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/loader-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAKnF
|
|
1
|
+
{"version":3,"file":"loader-context.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/loader-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAKnF,iDAAiD;AACjD,KAAK,kBAAkB,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;AAE/F;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,kBAAkB,EAC3B,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,aAAa,GAAG,IAAI,GAClC,aAAa,CA2Bf;AAGD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,EACtC,OAAO,CAAC,EAAE,aAAa,GACtB,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAiB/B"}
|
|
@@ -40,8 +40,8 @@ function getLoaderContext(context, options, parentContext) {
|
|
|
40
40
|
exports.getLoaderContext = getLoaderContext;
|
|
41
41
|
// eslint-disable-next-line complexity
|
|
42
42
|
function getLoadersFromContext(loaders, context) {
|
|
43
|
-
// A single non-array
|
|
44
|
-
if (
|
|
43
|
+
// A single loader (non-array) indicates no selection desired. Force select.
|
|
44
|
+
if (loaders && !Array.isArray(loaders)) {
|
|
45
45
|
return loaders;
|
|
46
46
|
}
|
|
47
47
|
// Create a merged list
|
|
@@ -54,6 +54,6 @@ function getLoadersFromContext(loaders, context) {
|
|
|
54
54
|
candidateLoaders = candidateLoaders ? [...candidateLoaders, ...contextLoaders] : contextLoaders;
|
|
55
55
|
}
|
|
56
56
|
// If no loaders, return null to look in globally registered loaders
|
|
57
|
-
return candidateLoaders && candidateLoaders.length ? candidateLoaders :
|
|
57
|
+
return candidateLoaders && candidateLoaders.length ? candidateLoaders : undefined;
|
|
58
58
|
}
|
|
59
59
|
exports.getLoadersFromContext = getLoadersFromContext;
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
import { Log } from '@probe.gl/log';
|
|
2
2
|
export declare const probeLog: Log;
|
|
3
|
+
type LogFunction = () => void;
|
|
3
4
|
export declare class NullLog {
|
|
4
|
-
log():
|
|
5
|
-
info():
|
|
6
|
-
warn():
|
|
7
|
-
error():
|
|
5
|
+
log(): LogFunction;
|
|
6
|
+
info(): LogFunction;
|
|
7
|
+
warn(): LogFunction;
|
|
8
|
+
error(): LogFunction;
|
|
8
9
|
}
|
|
9
10
|
export declare class ConsoleLog {
|
|
10
11
|
console: any;
|
|
11
12
|
constructor();
|
|
12
|
-
log(...args:
|
|
13
|
-
info(...args:
|
|
14
|
-
warn(...args:
|
|
15
|
-
error(...args:
|
|
13
|
+
log(...args: unknown[]): LogFunction;
|
|
14
|
+
info(...args: unknown[]): LogFunction;
|
|
15
|
+
warn(...args: unknown[]): LogFunction;
|
|
16
|
+
error(...args: unknown[]): LogFunction;
|
|
16
17
|
}
|
|
18
|
+
export {};
|
|
17
19
|
//# sourceMappingURL=loggers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loggers.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/loggers.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,eAAO,MAAM,QAAQ,KAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"loggers.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/loggers.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,eAAe,CAAC;AAElC,eAAO,MAAM,QAAQ,KAA8B,CAAC;AAEpD,KAAK,WAAW,GAAG,MAAM,IAAI,CAAC;AAG9B,qBAAa,OAAO;IAClB,GAAG,IAAI,WAAW;IAGlB,IAAI,IAAI,WAAW;IAGnB,IAAI,IAAI,WAAW;IAGnB,KAAK,IAAI,WAAW;CAGrB;AAGD,qBAAa,UAAU;IACrB,OAAO,MAAC;;IAKR,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGpC,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGrC,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;IAGrC,KAAK,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,WAAW;CAGvC"}
|
|
@@ -16,7 +16,7 @@ export declare function getGlobalLoaderState(): GlobalLoaderState;
|
|
|
16
16
|
* NOTE: This use case is not reliable but can help when testing new versions of loaders.gl with existing frameworks
|
|
17
17
|
* @returns global loader options merged with default loader options
|
|
18
18
|
*/
|
|
19
|
-
export declare
|
|
19
|
+
export declare function getGlobalLoaderOptions(): LoaderOptions;
|
|
20
20
|
/**
|
|
21
21
|
* Set global loader options
|
|
22
22
|
* @param options
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"option-utils.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAKpE;;GAEG;AACH,KAAK,iBAAiB,GAAG;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,iBAAiB,CASxD;AAED;;;;GAIG;AACH,
|
|
1
|
+
{"version":3,"file":"option-utils.d.ts","sourceRoot":"","sources":["../../../src/lib/loader-utils/option-utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAKpE;;GAEG;AACH,KAAK,iBAAiB,GAAG;IACvB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,iBAAiB,CASxD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,IAAI,aAAa,CAKtD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAK7D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,EAAE,EAClB,GAAG,CAAC,EAAE,MAAM,GACX,aAAa,CAMf"}
|
|
@@ -24,12 +24,12 @@ exports.getGlobalLoaderState = getGlobalLoaderState;
|
|
|
24
24
|
* NOTE: This use case is not reliable but can help when testing new versions of loaders.gl with existing frameworks
|
|
25
25
|
* @returns global loader options merged with default loader options
|
|
26
26
|
*/
|
|
27
|
-
|
|
27
|
+
function getGlobalLoaderOptions() {
|
|
28
28
|
const state = getGlobalLoaderState();
|
|
29
29
|
// Ensure all default loader options from this library are mentioned
|
|
30
30
|
state.globalOptions = state.globalOptions || { ...option_defaults_1.DEFAULT_LOADER_OPTIONS };
|
|
31
31
|
return state.globalOptions;
|
|
32
|
-
}
|
|
32
|
+
}
|
|
33
33
|
exports.getGlobalLoaderOptions = getGlobalLoaderOptions;
|
|
34
34
|
/**
|
|
35
35
|
* Set global loader options
|
|
@@ -37,7 +37,8 @@ exports.getGlobalLoaderOptions = getGlobalLoaderOptions;
|
|
|
37
37
|
*/
|
|
38
38
|
function setGlobalOptions(options) {
|
|
39
39
|
const state = getGlobalLoaderState();
|
|
40
|
-
const globalOptions =
|
|
40
|
+
const globalOptions = getGlobalLoaderOptions();
|
|
41
|
+
// @ts-expect-error First param looks incorrect
|
|
41
42
|
state.globalOptions = normalizeOptionsInternal(globalOptions, options);
|
|
42
43
|
}
|
|
43
44
|
exports.setGlobalOptions = setGlobalOptions;
|
|
@@ -66,11 +67,12 @@ function validateOptions(options, loaders) {
|
|
|
66
67
|
validateOptionsObject(options, null, option_defaults_1.DEFAULT_LOADER_OPTIONS, option_defaults_1.REMOVED_LOADER_OPTIONS, loaders);
|
|
67
68
|
for (const loader of loaders) {
|
|
68
69
|
// Get the scoped, loader specific options from the user supplied options
|
|
69
|
-
const idOptions = (options && options[loader.id]) || {};
|
|
70
|
+
const idOptions = ((options && options[loader.id]) || {});
|
|
70
71
|
// Get scoped, loader specific default and deprecated options from the selected loader
|
|
71
72
|
const loaderOptions = (loader.options && loader.options[loader.id]) || {};
|
|
72
73
|
const deprecatedOptions = (loader.deprecatedOptions && loader.deprecatedOptions[loader.id]) || {};
|
|
73
74
|
// Validate loader specific options
|
|
75
|
+
// @ts-ignore
|
|
74
76
|
validateOptionsObject(idOptions, loader.id, loaderOptions, deprecatedOptions, loaders);
|
|
75
77
|
}
|
|
76
78
|
}
|
|
@@ -121,7 +123,7 @@ function normalizeOptionsInternal(loader, options, url) {
|
|
|
121
123
|
if (mergedOptions.log === null) {
|
|
122
124
|
mergedOptions.log = new loggers_1.NullLog();
|
|
123
125
|
}
|
|
124
|
-
mergeNestedFields(mergedOptions,
|
|
126
|
+
mergeNestedFields(mergedOptions, getGlobalLoaderOptions());
|
|
125
127
|
mergeNestedFields(mergedOptions, options);
|
|
126
128
|
return mergedOptions;
|
|
127
129
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Intercepts the Response stream and creates a new Response
|
|
3
3
|
*/
|
|
4
|
-
export
|
|
4
|
+
export declare function fetchProgress(response: Response | Promise<Response>, onProgress: any, // TODO better callback types
|
|
5
5
|
onDone?: () => void, onError?: () => void): Promise<Response>;
|
|
6
6
|
//# sourceMappingURL=fetch-progress.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-progress.d.ts","sourceRoot":"","sources":["../../../src/lib/progress/fetch-progress.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"fetch-progress.d.ts","sourceRoot":"","sources":["../../../src/lib/progress/fetch-progress.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,EACtC,UAAU,EAAE,GAAG,EAAE,6BAA6B;AAC9C,MAAM,aAAW,EACjB,OAAO,aAAW,qBA+BnB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Forked from github AnthumChris/fetch-progress-indicators under MIT license
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.fetchProgress = void 0;
|
|
4
5
|
/**
|
|
5
6
|
* Intercepts the Response stream and creates a new Response
|
|
6
7
|
*/
|
|
@@ -34,7 +35,7 @@ onDone = () => { }, onError = () => { }) {
|
|
|
34
35
|
});
|
|
35
36
|
return new Response(progressStream);
|
|
36
37
|
}
|
|
37
|
-
exports.
|
|
38
|
+
exports.fetchProgress = fetchProgress;
|
|
38
39
|
// Forward to original streams controller
|
|
39
40
|
// TODO - this causes a crazy deep "async stack"... rewrite as async iterator?
|
|
40
41
|
// eslint-disable-next-line max-params
|
package/dist/null-worker-node.js
CHANGED
|
@@ -143,7 +143,7 @@ function createLoaderWorker(loader) {
|
|
|
143
143
|
arrayBuffer: input,
|
|
144
144
|
options,
|
|
145
145
|
context: __spreadProps(__spreadValues({}, context), {
|
|
146
|
-
|
|
146
|
+
_parse: parseOnMainThread
|
|
147
147
|
})
|
|
148
148
|
});
|
|
149
149
|
WorkerBody.postMessage("done", { result });
|
|
@@ -156,7 +156,7 @@ function createLoaderWorker(loader) {
|
|
|
156
156
|
}
|
|
157
157
|
};
|
|
158
158
|
}
|
|
159
|
-
function parseOnMainThread(arrayBuffer, options) {
|
|
159
|
+
function parseOnMainThread(arrayBuffer, loader, options, context) {
|
|
160
160
|
return new Promise((resolve, reject) => {
|
|
161
161
|
const id = requestId++;
|
|
162
162
|
const onMessage = (type, payload2) => {
|
|
@@ -180,7 +180,12 @@ function parseOnMainThread(arrayBuffer, options) {
|
|
|
180
180
|
WorkerBody.postMessage("process", payload);
|
|
181
181
|
});
|
|
182
182
|
}
|
|
183
|
-
async function parseData({
|
|
183
|
+
async function parseData({
|
|
184
|
+
loader,
|
|
185
|
+
arrayBuffer,
|
|
186
|
+
options,
|
|
187
|
+
context
|
|
188
|
+
}) {
|
|
184
189
|
let data;
|
|
185
190
|
let parser;
|
|
186
191
|
if (loader.parseSync || loader.parse) {
|
|
@@ -201,7 +206,7 @@ async function parseData({ loader, arrayBuffer, options, context }) {
|
|
|
201
206
|
}
|
|
202
207
|
|
|
203
208
|
// src/null-loader.ts
|
|
204
|
-
var VERSION = true ? "4.0.0-alpha.
|
|
209
|
+
var VERSION = true ? "4.0.0-alpha.23" : "latest";
|
|
205
210
|
var NullLoader = {
|
|
206
211
|
name: "Null loader",
|
|
207
212
|
id: "null",
|
package/dist/null-worker.js
CHANGED
|
@@ -125,7 +125,7 @@
|
|
|
125
125
|
options,
|
|
126
126
|
context: {
|
|
127
127
|
...context,
|
|
128
|
-
|
|
128
|
+
_parse: parseOnMainThread
|
|
129
129
|
}
|
|
130
130
|
});
|
|
131
131
|
WorkerBody.postMessage("done", { result });
|
|
@@ -138,7 +138,7 @@
|
|
|
138
138
|
}
|
|
139
139
|
};
|
|
140
140
|
}
|
|
141
|
-
function parseOnMainThread(arrayBuffer, options) {
|
|
141
|
+
function parseOnMainThread(arrayBuffer, loader, options, context) {
|
|
142
142
|
return new Promise((resolve, reject) => {
|
|
143
143
|
const id = requestId++;
|
|
144
144
|
const onMessage = (type, payload2) => {
|
|
@@ -162,7 +162,12 @@
|
|
|
162
162
|
WorkerBody.postMessage("process", payload);
|
|
163
163
|
});
|
|
164
164
|
}
|
|
165
|
-
async function parseData({
|
|
165
|
+
async function parseData({
|
|
166
|
+
loader,
|
|
167
|
+
arrayBuffer,
|
|
168
|
+
options,
|
|
169
|
+
context
|
|
170
|
+
}) {
|
|
166
171
|
let data;
|
|
167
172
|
let parser;
|
|
168
173
|
if (loader.parseSync || loader.parse) {
|
|
@@ -184,7 +189,7 @@
|
|
|
184
189
|
}
|
|
185
190
|
|
|
186
191
|
// src/null-loader.ts
|
|
187
|
-
var VERSION = true ? "4.0.0-alpha.
|
|
192
|
+
var VERSION = true ? "4.0.0-alpha.23" : "latest";
|
|
188
193
|
var NullLoader = {
|
|
189
194
|
name: "Null loader",
|
|
190
195
|
id: "null",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loaders.gl/core",
|
|
3
|
-
"version": "4.0.0-alpha.
|
|
3
|
+
"version": "4.0.0-alpha.23",
|
|
4
4
|
"description": "The core API for working with loaders.gl loaders and writers",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"publishConfig": {
|
|
@@ -47,9 +47,9 @@
|
|
|
47
47
|
},
|
|
48
48
|
"dependencies": {
|
|
49
49
|
"@babel/runtime": "^7.3.1",
|
|
50
|
-
"@loaders.gl/loader-utils": "4.0.0-alpha.
|
|
51
|
-
"@loaders.gl/worker-utils": "4.0.0-alpha.
|
|
50
|
+
"@loaders.gl/loader-utils": "4.0.0-alpha.23",
|
|
51
|
+
"@loaders.gl/worker-utils": "4.0.0-alpha.23",
|
|
52
52
|
"@probe.gl/log": "^4.0.2"
|
|
53
53
|
},
|
|
54
|
-
"gitHead": "
|
|
54
|
+
"gitHead": "e212f2a0c0e342f7cb65ce84fa2ff39f64b7d94b"
|
|
55
55
|
}
|
package/src/index.ts
CHANGED
|
@@ -11,8 +11,8 @@ export type {
|
|
|
11
11
|
DataType,
|
|
12
12
|
SyncDataType,
|
|
13
13
|
BatchableDataType,
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
FileSystem,
|
|
15
|
+
RandomAccessReadFileSystem
|
|
16
16
|
} from '@loaders.gl/loader-utils';
|
|
17
17
|
|
|
18
18
|
// FILE READING AND WRITING
|
|
@@ -53,9 +53,8 @@ export {NullWorkerLoader, NullLoader} from './null-loader';
|
|
|
53
53
|
export {JSONLoader} from '@loaders.gl/loader-utils';
|
|
54
54
|
|
|
55
55
|
// EXPERIMENTAL
|
|
56
|
-
export {
|
|
57
|
-
export {
|
|
58
|
-
export {FileSystem} from './lib/filesystems/filesystem';
|
|
56
|
+
export {fetchProgress as _fetchProgress} from './lib/progress/fetch-progress';
|
|
57
|
+
export {BrowserFileSystem as _BrowserFileSystem} from './lib/filesystems/browser-filesystem';
|
|
59
58
|
|
|
60
59
|
// FOR TESTING
|
|
61
60
|
export {_unregisterLoaders} from './lib/api/register-loaders';
|
|
@@ -13,9 +13,12 @@ export function makeStream<ArrayBuffer>(
|
|
|
13
13
|
source: Iterable<ArrayBuffer> | AsyncIterable<ArrayBuffer>,
|
|
14
14
|
options?: ReadableOptions
|
|
15
15
|
): ReadableType {
|
|
16
|
+
// @ts-ignore AsyncGenerator
|
|
16
17
|
const iterator = source[Symbol.asyncIterator]
|
|
17
|
-
?
|
|
18
|
-
|
|
18
|
+
? // @ts-ignore AsyncGenerator
|
|
19
|
+
source[Symbol.asyncIterator]()
|
|
20
|
+
: // @ts-ignore AsyncGenerator
|
|
21
|
+
source[Symbol.iterator]();
|
|
19
22
|
return new AsyncIterableReadable(iterator, options);
|
|
20
23
|
}
|
|
21
24
|
|
|
@@ -39,21 +39,21 @@ export function loadInBatches(
|
|
|
39
39
|
loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,
|
|
40
40
|
options?: LoaderOptions,
|
|
41
41
|
context?: LoaderContext
|
|
42
|
-
): Promise<AsyncIterable<
|
|
42
|
+
): Promise<AsyncIterable<unknown>>;
|
|
43
43
|
|
|
44
44
|
export function loadInBatches(
|
|
45
45
|
files: FileType[] | FileList,
|
|
46
46
|
loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,
|
|
47
47
|
options?: LoaderOptions,
|
|
48
48
|
context?: LoaderContext
|
|
49
|
-
): Promise<AsyncIterable<
|
|
49
|
+
): Promise<AsyncIterable<unknown>>[];
|
|
50
50
|
|
|
51
51
|
export function loadInBatches(
|
|
52
52
|
files: FileType | FileType[] | FileList,
|
|
53
53
|
loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,
|
|
54
54
|
options?: LoaderOptions,
|
|
55
55
|
context?: LoaderContext
|
|
56
|
-
) {
|
|
56
|
+
): Promise<AsyncIterable<unknown>> | Promise<AsyncIterable<unknown>>[] {
|
|
57
57
|
let loadersArray: LoaderWithParser | LoaderWithParser[] | undefined;
|
|
58
58
|
// Signature: load(url, options)
|
|
59
59
|
if (!Array.isArray(loaders) && !isLoaderObject(loaders)) {
|
|
@@ -86,7 +86,7 @@ async function loadOneFileInBatches(
|
|
|
86
86
|
loaders: LoaderWithParser | LoaderWithParser[],
|
|
87
87
|
options: LoaderOptions,
|
|
88
88
|
fetch: FetchLike
|
|
89
|
-
) {
|
|
89
|
+
): Promise<AsyncIterable<unknown>> {
|
|
90
90
|
if (typeof file === 'string') {
|
|
91
91
|
const url = file;
|
|
92
92
|
const response = await fetch(url);
|
package/src/lib/api/load.ts
CHANGED
|
@@ -18,34 +18,45 @@ import {parse} from './parse';
|
|
|
18
18
|
* @param context
|
|
19
19
|
*/
|
|
20
20
|
|
|
21
|
-
export async function load<
|
|
21
|
+
export async function load<
|
|
22
|
+
LoaderT extends Loader,
|
|
23
|
+
OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>
|
|
24
|
+
>(
|
|
22
25
|
url: string | DataType,
|
|
23
26
|
loader: LoaderT,
|
|
24
|
-
options?:
|
|
27
|
+
options?: OptionsT,
|
|
25
28
|
context?: LoaderContext
|
|
26
29
|
): Promise<LoaderReturnType<LoaderT>>;
|
|
27
30
|
|
|
28
|
-
export async function load
|
|
31
|
+
export async function load(
|
|
29
32
|
url: string | DataType,
|
|
30
|
-
loaders: Loader[]
|
|
31
|
-
options?:
|
|
33
|
+
loaders: Loader[],
|
|
34
|
+
options?: LoaderOptions,
|
|
32
35
|
context?: LoaderContext
|
|
33
|
-
): Promise<
|
|
36
|
+
): Promise<unknown>;
|
|
37
|
+
|
|
38
|
+
export async function load(
|
|
39
|
+
url: string | DataType,
|
|
40
|
+
loaders?: LoaderOptions,
|
|
41
|
+
context?: LoaderContext
|
|
42
|
+
): Promise<unknown>;
|
|
43
|
+
|
|
44
|
+
export async function load(url: string | DataType, loaders: LoaderOptions): Promise<any>;
|
|
34
45
|
|
|
35
46
|
// implementation signature
|
|
36
|
-
export async function load
|
|
47
|
+
export async function load(
|
|
37
48
|
url: string | DataType,
|
|
38
49
|
loaders?: Loader[] | LoaderOptions,
|
|
39
|
-
options?:
|
|
50
|
+
options?: LoaderOptions,
|
|
40
51
|
context?: LoaderContext
|
|
41
|
-
): Promise<
|
|
52
|
+
): Promise<unknown> {
|
|
42
53
|
let resolvedLoaders: Loader | Loader[];
|
|
43
|
-
let resolvedOptions:
|
|
54
|
+
let resolvedOptions: LoaderOptions | undefined;
|
|
44
55
|
|
|
45
56
|
// Signature: load(url, options)
|
|
46
57
|
if (!Array.isArray(loaders) && !isLoaderObject(loaders)) {
|
|
47
58
|
resolvedLoaders = [];
|
|
48
|
-
resolvedOptions = loaders as
|
|
59
|
+
resolvedOptions = loaders as LoaderOptions;
|
|
49
60
|
context = undefined; // context not supported in short signature
|
|
50
61
|
} else {
|
|
51
62
|
resolvedLoaders = loaders as Loader | Loader[];
|
|
@@ -4,7 +4,7 @@ import type {Batch} from '@loaders.gl/schema';
|
|
|
4
4
|
import type {Loader, LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';
|
|
5
5
|
import type {LoaderContext, BatchableDataType} from '@loaders.gl/loader-utils';
|
|
6
6
|
import type {LoaderBatchType, LoaderOptionsType} from '@loaders.gl/loader-utils';
|
|
7
|
-
import {
|
|
7
|
+
import {concatenateArrayBuffersAsync} from '@loaders.gl/loader-utils';
|
|
8
8
|
import {isLoaderObject} from '../loader-utils/normalize-loader';
|
|
9
9
|
import {normalizeOptions} from '../loader-utils/option-utils';
|
|
10
10
|
import {getLoaderContext} from '../loader-utils/loader-context';
|
|
@@ -36,7 +36,7 @@ export async function parseInBatches(
|
|
|
36
36
|
loaders: Loader[],
|
|
37
37
|
options?: LoaderOptions,
|
|
38
38
|
context?: LoaderContext
|
|
39
|
-
): Promise<AsyncIterable<
|
|
39
|
+
): Promise<AsyncIterable<unknown>>;
|
|
40
40
|
|
|
41
41
|
/**
|
|
42
42
|
* Parses `data` in batches by selecting a pre-registered loader
|
|
@@ -44,7 +44,7 @@ export async function parseInBatches(
|
|
|
44
44
|
export async function parseInBatches(
|
|
45
45
|
data: BatchableDataType,
|
|
46
46
|
options?: LoaderOptions
|
|
47
|
-
): Promise<AsyncIterable<
|
|
47
|
+
): Promise<AsyncIterable<unknown>>;
|
|
48
48
|
|
|
49
49
|
/**
|
|
50
50
|
* Parses `data` using a specified loader
|
|
@@ -59,8 +59,6 @@ export async function parseInBatches(
|
|
|
59
59
|
options?: LoaderOptions,
|
|
60
60
|
context?: LoaderContext
|
|
61
61
|
): Promise<AsyncIterable<unknown>> {
|
|
62
|
-
assert(!context || typeof context === 'object'); // parseInBatches no longer accepts final url
|
|
63
|
-
|
|
64
62
|
const loaderArray = Array.isArray(loaders) ? loaders : undefined;
|
|
65
63
|
|
|
66
64
|
// Signature: parseInBatches(data, options, url) - Uses registered loaders
|
|
@@ -88,7 +86,7 @@ export async function parseInBatches(
|
|
|
88
86
|
// Normalize options
|
|
89
87
|
options = normalizeOptions(options, loader, loaderArray, url);
|
|
90
88
|
context = getLoaderContext(
|
|
91
|
-
{url, parseInBatches, parse, loaders: loaderArray},
|
|
89
|
+
{url, _parseInBatches: parseInBatches, _parse: parse, loaders: loaderArray},
|
|
92
90
|
options,
|
|
93
91
|
context || null
|
|
94
92
|
);
|
|
@@ -123,7 +121,9 @@ async function parseWithLoaderInBatches(
|
|
|
123
121
|
bytesUsed: 0
|
|
124
122
|
};
|
|
125
123
|
|
|
126
|
-
async function* makeMetadataBatchIterator(
|
|
124
|
+
async function* makeMetadataBatchIterator(
|
|
125
|
+
iterator: Iterable<unknown> | AsyncIterable<unknown>
|
|
126
|
+
): AsyncIterable<unknown> {
|
|
127
127
|
yield metadataBatch;
|
|
128
128
|
yield* iterator;
|
|
129
129
|
}
|