@loaders.gl/core 4.0.0-alpha.23 → 4.0.0-alpha.24

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.
Files changed (57) hide show
  1. package/dist/dist.min.js +40 -100
  2. package/dist/es5/lib/init.js +1 -1
  3. package/dist/es5/null-loader.js +1 -1
  4. package/dist/esm/lib/init.js +1 -1
  5. package/dist/esm/null-loader.js +1 -1
  6. package/dist/null-worker-node.js +1 -1
  7. package/dist/null-worker.js +1 -1
  8. package/package.json +4 -7
  9. package/dist/bundle.js +0 -5
  10. package/dist/core-addons/write-file-browser.js +0 -60
  11. package/dist/index.js +0 -105
  12. package/dist/iterators/batch-iterators/timed-batch-iterator.js +0 -22
  13. package/dist/iterators/make-iterator/make-array-buffer-iterator.js +0 -27
  14. package/dist/iterators/make-iterator/make-blob-iterator.js +0 -21
  15. package/dist/iterators/make-iterator/make-iterator.js +0 -37
  16. package/dist/iterators/make-iterator/make-stream-iterator.js +0 -96
  17. package/dist/iterators/make-iterator/make-string-iterator.js +0 -24
  18. package/dist/iterators/make-stream/make-dom-stream.js +0 -47
  19. package/dist/iterators/make-stream/make-node-stream.js +0 -85
  20. package/dist/javascript-utils/is-type.js +0 -41
  21. package/dist/lib/api/encode-table.js +0 -54
  22. package/dist/lib/api/encode.js +0 -121
  23. package/dist/lib/api/load-in-batches.js +0 -40
  24. package/dist/lib/api/load.js +0 -43
  25. package/dist/lib/api/loader-options.js +0 -7
  26. package/dist/lib/api/parse-in-batches.js +0 -117
  27. package/dist/lib/api/parse-sync.js +0 -54
  28. package/dist/lib/api/parse.js +0 -87
  29. package/dist/lib/api/register-loaders.js +0 -35
  30. package/dist/lib/api/save.js +0 -15
  31. package/dist/lib/api/select-loader.js +0 -258
  32. package/dist/lib/common.js +0 -2
  33. package/dist/lib/fetch/fetch-error-message.js +0 -25
  34. package/dist/lib/fetch/fetch-file.js +0 -61
  35. package/dist/lib/fetch/fetch-file.node.js +0 -57
  36. package/dist/lib/fetch/read-array-buffer.js +0 -41
  37. package/dist/lib/fetch/read-file.js +0 -29
  38. package/dist/lib/fetch/write-file.js +0 -22
  39. package/dist/lib/filesystems/browser-filesystem.js +0 -127
  40. package/dist/lib/filesystems/read-array-buffer.js +0 -29
  41. package/dist/lib/init.js +0 -17
  42. package/dist/lib/loader-utils/check-errors.js +0 -46
  43. package/dist/lib/loader-utils/get-data.js +0 -130
  44. package/dist/lib/loader-utils/get-fetch-function.js +0 -31
  45. package/dist/lib/loader-utils/loader-context.js +0 -59
  46. package/dist/lib/loader-utils/loggers.js +0 -41
  47. package/dist/lib/loader-utils/normalize-loader.js +0 -52
  48. package/dist/lib/loader-utils/option-defaults.js +0 -44
  49. package/dist/lib/loader-utils/option-utils.js +0 -162
  50. package/dist/lib/progress/fetch-progress.js +0 -60
  51. package/dist/lib/utils/log.js +0 -6
  52. package/dist/lib/utils/mime-type-utils.js +0 -42
  53. package/dist/lib/utils/resource-utils.js +0 -90
  54. package/dist/lib/utils/response-utils.js +0 -115
  55. package/dist/lib/utils/url-utils.js +0 -14
  56. package/dist/null-loader.js +0 -51
  57. package/dist/workers/null-worker.js +0 -5
package/dist/dist.min.js CHANGED
@@ -1043,41 +1043,41 @@
1043
1043
  return Object.keys(this.stats).length;
1044
1044
  }
1045
1045
  reset() {
1046
- for (const stat2 of Object.values(this.stats)) {
1047
- stat2.reset();
1046
+ for (const stat of Object.values(this.stats)) {
1047
+ stat.reset();
1048
1048
  }
1049
1049
  return this;
1050
1050
  }
1051
1051
  forEach(fn) {
1052
- for (const stat2 of Object.values(this.stats)) {
1053
- fn(stat2);
1052
+ for (const stat of Object.values(this.stats)) {
1053
+ fn(stat);
1054
1054
  }
1055
1055
  }
1056
1056
  getTable() {
1057
1057
  const table = {};
1058
- this.forEach((stat2) => {
1059
- table[stat2.name] = {
1060
- time: stat2.time || 0,
1061
- count: stat2.count || 0,
1062
- average: stat2.getAverageTime() || 0,
1063
- hz: stat2.getHz() || 0
1058
+ this.forEach((stat) => {
1059
+ table[stat.name] = {
1060
+ time: stat.time || 0,
1061
+ count: stat.count || 0,
1062
+ average: stat.getAverageTime() || 0,
1063
+ hz: stat.getHz() || 0
1064
1064
  };
1065
1065
  });
1066
1066
  return table;
1067
1067
  }
1068
1068
  _initializeStats() {
1069
1069
  let stats = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [];
1070
- stats.forEach((stat2) => this._getOrCreate(stat2));
1070
+ stats.forEach((stat) => this._getOrCreate(stat));
1071
1071
  }
1072
- _getOrCreate(stat2) {
1072
+ _getOrCreate(stat) {
1073
1073
  const {
1074
1074
  name,
1075
1075
  type
1076
- } = stat2;
1076
+ } = stat;
1077
1077
  let result = this.stats[name];
1078
1078
  if (!result) {
1079
- if (stat2 instanceof Stat) {
1080
- result = stat2;
1079
+ if (stat instanceof Stat) {
1080
+ result = stat;
1081
1081
  } else {
1082
1082
  result = new Stat(name, type);
1083
1083
  }
@@ -1301,18 +1301,6 @@
1301
1301
  }
1302
1302
  });
1303
1303
 
1304
- // ../loader-utils/src/lib/node/promisify.ts
1305
- function promisify2(fn) {
1306
- return (arg1, arg2) => new Promise((resolve2, reject) => fn(arg1, arg2, (error, callbackArgs) => error ? reject(error) : resolve2(callbackArgs)));
1307
- }
1308
- function promisify3(fn) {
1309
- return (arg1, arg2, arg3) => new Promise((resolve2, reject) => fn(arg1, arg2, arg3, (error, callbackArgs) => error ? reject(error) : resolve2(callbackArgs)));
1310
- }
1311
- var init_promisify = __esm({
1312
- "../loader-utils/src/lib/node/promisify.ts"() {
1313
- }
1314
- });
1315
-
1316
1304
  // ../loader-utils/src/lib/path-utils/get-cwd.ts
1317
1305
  function getCWD() {
1318
1306
  if (typeof process !== "undefined" && typeof process.cwd !== "undefined") {
@@ -1464,63 +1452,15 @@
1464
1452
  }
1465
1453
  });
1466
1454
 
1467
- // (disabled):fs
1468
- var require_fs = __commonJS({
1469
- "(disabled):fs"() {
1470
- }
1471
- });
1472
-
1473
- // ../loader-utils/src/lib/node/fs.ts
1474
- var fs_exports = {};
1475
- __export(fs_exports, {
1476
- _readToArrayBuffer: () => _readToArrayBuffer,
1477
- close: () => close,
1478
- createReadStream: () => createReadStream,
1479
- createWriteStream: () => createWriteStream,
1480
- fstat: () => fstat,
1481
- isSupported: () => isSupported,
1482
- open: () => open,
1483
- read: () => read,
1484
- readFile: () => readFile,
1485
- readFileSync: () => readFileSync,
1486
- readdir: () => readdir,
1487
- stat: () => stat,
1488
- statSync: () => statSync,
1489
- writeFile: () => writeFile,
1490
- writeFileSync: () => writeFileSync
1455
+ // ../loader-utils/src/lib/node/fs.browser.ts
1456
+ var fs_browser_exports = {};
1457
+ __export(fs_browser_exports, {
1458
+ isSupported: () => isSupported
1491
1459
  });
1492
- async function _readToArrayBuffer(fd, start, length) {
1493
- const buffer = Buffer.alloc(length);
1494
- const { bytesRead } = await read(fd, buffer, 0, length, start);
1495
- if (bytesRead !== length) {
1496
- throw new Error("fs.read failed");
1497
- }
1498
- return toArrayBuffer(buffer);
1499
- }
1500
- var import_fs, readdir, stat, statSync, readFile, readFileSync, writeFile, writeFileSync, open, close, read, fstat, createReadStream, createWriteStream, isSupported;
1501
- var init_fs = __esm({
1502
- "../loader-utils/src/lib/node/fs.ts"() {
1503
- import_fs = __toModule(require_fs());
1504
- init_buffer_browser();
1505
- init_promisify();
1506
- isSupported = Boolean(import_fs.default);
1507
- try {
1508
- readdir = promisify2(import_fs.default.readdir);
1509
- stat = promisify2(import_fs.default.stat);
1510
- statSync = import_fs.default.statSync;
1511
- readFile = import_fs.default.readFile;
1512
- readFileSync = import_fs.default.readFileSync;
1513
- writeFile = promisify3(import_fs.default.writeFile);
1514
- writeFileSync = import_fs.default.writeFileSync;
1515
- open = import_fs.default.open;
1516
- close = (fd) => new Promise((resolve2, reject) => import_fs.default.close(fd, (err) => err ? reject(err) : resolve2()));
1517
- read = import_fs.default.read;
1518
- fstat = import_fs.default.fstat;
1519
- createReadStream = import_fs.default.createReadStream;
1520
- createWriteStream = import_fs.default.createWriteStream;
1521
- isSupported = Boolean(import_fs.default);
1522
- } catch {
1523
- }
1460
+ var isSupported;
1461
+ var init_fs_browser = __esm({
1462
+ "../loader-utils/src/lib/node/fs.browser.ts"() {
1463
+ isSupported = false;
1524
1464
  }
1525
1465
  });
1526
1466
 
@@ -1539,7 +1479,7 @@
1539
1479
  init_json_loader();
1540
1480
  init_memory_conversion_utils();
1541
1481
  init_path();
1542
- init_fs();
1482
+ init_fs_browser();
1543
1483
  }
1544
1484
  });
1545
1485
 
@@ -1783,7 +1723,7 @@
1783
1723
  // src/lib/fetch/read-array-buffer.ts
1784
1724
  async function readArrayBuffer(file, start, length) {
1785
1725
  if (typeof file === "number") {
1786
- return await fs_exports._readToArrayBuffer(file, start, length);
1726
+ return await fs_browser_exports._readToArrayBuffer(file, start, length);
1787
1727
  }
1788
1728
  if (!(file instanceof Blob)) {
1789
1729
  file = new Blob([file]);
@@ -1806,10 +1746,10 @@
1806
1746
  });
1807
1747
 
1808
1748
  // src/lib/fetch/read-file.ts
1809
- function readFileSync2(url, options = {}) {
1749
+ function readFileSync(url, options = {}) {
1810
1750
  url = resolvePath(url);
1811
1751
  if (!isBrowser) {
1812
- const buffer = fs_exports.readFileSync(url, options);
1752
+ const buffer = fs_browser_exports.readFileSync(url, options);
1813
1753
  return typeof buffer !== "string" ? toArrayBuffer2(buffer) : buffer;
1814
1754
  }
1815
1755
  if (!options.nothrow) {
@@ -1825,17 +1765,17 @@
1825
1765
  });
1826
1766
 
1827
1767
  // src/lib/fetch/write-file.ts
1828
- async function writeFile2(filePath, arrayBufferOrString, options) {
1768
+ async function writeFile(filePath, arrayBufferOrString, options) {
1829
1769
  filePath = resolvePath(filePath);
1830
1770
  if (!isBrowser) {
1831
- await fs_exports.writeFile(filePath, toBuffer2(arrayBufferOrString), { flag: "w" });
1771
+ await fs_browser_exports.writeFile(filePath, toBuffer2(arrayBufferOrString), { flag: "w" });
1832
1772
  }
1833
1773
  assert(false);
1834
1774
  }
1835
- function writeFileSync2(filePath, arrayBufferOrString, options) {
1775
+ function writeFileSync(filePath, arrayBufferOrString, options) {
1836
1776
  filePath = resolvePath(filePath);
1837
1777
  if (!isBrowser) {
1838
- fs_exports.writeFileSync(filePath, toBuffer2(arrayBufferOrString), { flag: "w" });
1778
+ fs_browser_exports.writeFileSync(filePath, toBuffer2(arrayBufferOrString), { flag: "w" });
1839
1779
  }
1840
1780
  assert(false);
1841
1781
  }
@@ -3533,7 +3473,7 @@
3533
3473
  }
3534
3474
  if (!isBrowser && writer.encodeURLtoURL) {
3535
3475
  const tmpInputFilename = getTemporaryFilename("input");
3536
- await writeFile2(tmpInputFilename, data);
3476
+ await writeFile(tmpInputFilename, data);
3537
3477
  const tmpOutputFilename = getTemporaryFilename("output");
3538
3478
  const outputFilename = await encodeURLtoURL(tmpInputFilename, tmpOutputFilename, writer, options);
3539
3479
  const response = await fetchFile(outputFilename);
@@ -3595,11 +3535,11 @@
3595
3535
  // src/lib/api/save.ts
3596
3536
  async function save(data, url, writer, options) {
3597
3537
  const encodedData = await encode(data, writer, options);
3598
- return await writeFile2(url, encodedData);
3538
+ return await writeFile(url, encodedData);
3599
3539
  }
3600
3540
  function saveSync(data, url, writer, options) {
3601
3541
  const encodedData = encodeSync(data, writer, options);
3602
- return writeFileSync2(url, encodedData);
3542
+ return writeFileSync(url, encodedData);
3603
3543
  }
3604
3544
  var init_save = __esm({
3605
3545
  "src/lib/api/save.ts"() {
@@ -3704,12 +3644,12 @@
3704
3644
  const progressStream = new ReadableStream({
3705
3645
  async start(controller) {
3706
3646
  const reader = body.getReader();
3707
- await read2(controller, reader, 0, totalBytes, onProgress, onDone, onError);
3647
+ await read(controller, reader, 0, totalBytes, onProgress, onDone, onError);
3708
3648
  }
3709
3649
  });
3710
3650
  return new Response(progressStream);
3711
3651
  }
3712
- async function read2(controller, reader, loadedBytes, totalBytes, onProgress, onDone, onError) {
3652
+ async function read(controller, reader, loadedBytes, totalBytes, onProgress, onDone, onError) {
3713
3653
  try {
3714
3654
  const { done, value } = await reader.read();
3715
3655
  if (done) {
@@ -3721,7 +3661,7 @@
3721
3661
  const percent = Math.round(loadedBytes / totalBytes * 100);
3722
3662
  onProgress(percent, { loadedBytes, totalBytes });
3723
3663
  controller.enqueue(value);
3724
- await read2(controller, reader, loadedBytes, totalBytes, onProgress, onDone, onError);
3664
+ await read(controller, reader, loadedBytes, totalBytes, onProgress, onDone, onError);
3725
3665
  } catch (error) {
3726
3666
  controller.error(error);
3727
3667
  onError(error);
@@ -3862,7 +3802,7 @@
3862
3802
  parseInBatches: () => parseInBatches,
3863
3803
  parseSync: () => parseSync,
3864
3804
  readArrayBuffer: () => readArrayBuffer,
3865
- readFileSync: () => readFileSync2,
3805
+ readFileSync: () => readFileSync,
3866
3806
  registerLoaders: () => registerLoaders,
3867
3807
  resolvePath: () => resolvePath,
3868
3808
  save: () => save,
@@ -3873,8 +3813,8 @@
3873
3813
  setLoaderOptions: () => setGlobalOptions,
3874
3814
  setPathPrefix: () => setPathPrefix,
3875
3815
  window: () => window_,
3876
- writeFile: () => writeFile2,
3877
- writeFileSync: () => writeFileSync2
3816
+ writeFile: () => writeFile,
3817
+ writeFileSync: () => writeFileSync
3878
3818
  });
3879
3819
  var init_src3 = __esm({
3880
3820
  "src/index.ts"() {
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _log = require("./utils/log");
8
- var version = typeof "4.0.0-alpha.23" !== 'undefined' ? "4.0.0-alpha.23" : '';
8
+ var version = typeof "4.0.0-alpha.24" !== 'undefined' ? "4.0.0-alpha.24" : '';
9
9
  if (!globalThis.loaders) {
10
10
  _log.log.log(1, "loaders.gl ".concat(version))();
11
11
  globalThis.loaders = Object.assign(globalThis.loaders || {}, {
@@ -11,7 +11,7 @@ var _awaitAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpe
11
11
  var _wrapAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapAsyncGenerator"));
12
12
  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"); }
13
13
  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); }
14
- var VERSION = typeof "4.0.0-alpha.23" !== 'undefined' ? "4.0.0-alpha.23" : 'latest';
14
+ var VERSION = typeof "4.0.0-alpha.24" !== 'undefined' ? "4.0.0-alpha.24" : 'latest';
15
15
  var NullWorkerLoader = {
16
16
  name: 'Null loader',
17
17
  id: 'null',
@@ -1,5 +1,5 @@
1
1
  import { log } from './utils/log';
2
- const version = typeof "4.0.0-alpha.23" !== 'undefined' ? "4.0.0-alpha.23" : '';
2
+ const version = typeof "4.0.0-alpha.24" !== 'undefined' ? "4.0.0-alpha.24" : '';
3
3
  if (!globalThis.loaders) {
4
4
  log.log(1, "loaders.gl ".concat(version))();
5
5
  globalThis.loaders = Object.assign(globalThis.loaders || {}, {
@@ -1,4 +1,4 @@
1
- const VERSION = typeof "4.0.0-alpha.23" !== 'undefined' ? "4.0.0-alpha.23" : 'latest';
1
+ const VERSION = typeof "4.0.0-alpha.24" !== 'undefined' ? "4.0.0-alpha.24" : 'latest';
2
2
  export const NullWorkerLoader = {
3
3
  name: 'Null loader',
4
4
  id: 'null',
@@ -206,7 +206,7 @@ async function parseData({
206
206
  }
207
207
 
208
208
  // src/null-loader.ts
209
- var VERSION = true ? "4.0.0-alpha.23" : "latest";
209
+ var VERSION = true ? "4.0.0-alpha.24" : "latest";
210
210
  var NullLoader = {
211
211
  name: "Null loader",
212
212
  id: "null",
@@ -189,7 +189,7 @@
189
189
  }
190
190
 
191
191
  // src/null-loader.ts
192
- var VERSION = true ? "4.0.0-alpha.23" : "latest";
192
+ var VERSION = true ? "4.0.0-alpha.24" : "latest";
193
193
  var NullLoader = {
194
194
  name: "Null loader",
195
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.23",
3
+ "version": "4.0.0-alpha.24",
4
4
  "description": "The core API for working with loaders.gl loaders and writers",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -25,12 +25,9 @@
25
25
  "fs": false,
26
26
  "stream": false,
27
27
  "./src/lib/fetch/fetch-file.node.ts": false,
28
- "./dist/lib/fetch/fetch-file.node.js": false,
29
28
  "./dist/es5/lib/fetch/fetch-file.node.js": false,
30
29
  "./dist/esm/lib/fetch/fetch-file.node.js": false,
31
30
  "./src/iterators/make-stream/make-node-stream.ts": "./src/iterators/make-stream/make-dom-stream.ts",
32
- "./src/iterators/make-stream/make-node-stream.js": "./src/iterators/make-stream/make-dom-stream.js",
33
- "./dist/iterators/make-stream/make-node-stream.js": "./dist/iterators/make-stream/make-dom-stream.js",
34
31
  "./dist/es5/iterators/make-stream/make-node-stream.js": "./dist/es5/iterators/make-stream/make-dom-stream.js",
35
32
  "./dist/esm/iterators/make-stream/make-node-stream.js": "./dist/esm/iterators/make-stream/make-dom-stream.js"
36
33
  },
@@ -47,9 +44,9 @@
47
44
  },
48
45
  "dependencies": {
49
46
  "@babel/runtime": "^7.3.1",
50
- "@loaders.gl/loader-utils": "4.0.0-alpha.23",
51
- "@loaders.gl/worker-utils": "4.0.0-alpha.23",
47
+ "@loaders.gl/loader-utils": "4.0.0-alpha.24",
48
+ "@loaders.gl/worker-utils": "4.0.0-alpha.24",
52
49
  "@probe.gl/log": "^4.0.2"
53
50
  },
54
- "gitHead": "e212f2a0c0e342f7cb65ce84fa2ff39f64b7d94b"
51
+ "gitHead": "97a8990595c132fb14e3445a8768d9f4cb98ff05"
55
52
  }
package/dist/bundle.js DELETED
@@ -1,5 +0,0 @@
1
- "use strict";
2
- // @ts-nocheck
3
- const moduleExports = require('./index');
4
- globalThis.loaders = globalThis.loaders || {};
5
- module.exports = Object.assign(globalThis.loaders, moduleExports);
@@ -1,60 +0,0 @@
1
- "use strict";
2
- // A browser implementation of the Node.js `fs` module's `fs.writeFile` method.
3
- // NOTE: WAS COMMENTED OUT TO GET NODE 8 TESTS RUNNING
4
- /*
5
- /* global global *
6
- /* global Blob *
7
- import {isBrowser} from '@loaders.gl/core';
8
-
9
- // TODO hack - trick filesaver.js to skip loading under node
10
- const savedNavigatorExists = 'navigator' in global;
11
- const savedNavigator = global.navigator;
12
- if (!isBrowser) {
13
- global.navigator = {userAgent: 'MSIE 9.'};
14
- }
15
-
16
- // Need to use `require` to ensure our modification of global code above happens first
17
- const saveAs = require('filesaver.js');
18
-
19
- if (!isBrowser) {
20
- if (savedNavigatorExists) {
21
- global.navigator = savedNavigator;
22
- } else {
23
- delete global.navigator;
24
- }
25
- }
26
- // END hack
27
-
28
- /**
29
- * File system write function for the browser, similar to Node's fs.writeFile
30
- *
31
- * Saves a file by downloading it with the given file name.
32
- *
33
- * @param {String} file - file name
34
- * @param {String|Blob} data - data to be written to file
35
- * @param {String|Object} options -
36
- * @param {Function} callback - Standard node (err, data) callback
37
- * @return {Promise} - promise, can be used instead of callback
38
- *
39
- async export function writeFile(file, data, options, callback = () => {}) {
40
- // options is optional
41
- if (callback === undefined && typeof options === 'function') {
42
- options = undefined;
43
- callback = options;
44
- }
45
- if (typeof data === 'string') {
46
- data = new Blob(data);
47
- }
48
- return new Promise((resolve, reject) => {
49
- let result;
50
- try {
51
- result = saveAs(data, file, options);
52
- } catch (error) {
53
- reject(error);
54
- return callback(error, null);
55
- }
56
- resolve();
57
- return callback(null, result);
58
- });
59
- }
60
- */
package/dist/index.js DELETED
@@ -1,105 +0,0 @@
1
- "use strict";
2
- // loaders.gl, MIT license
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.makeNumberedLineIterator = exports.makeLineIterator = exports.makeTextEncoderIterator = exports.makeTextDecoderIterator = exports.concatenateArrayBuffersAsync = exports.forEach = exports.assert = exports.document = exports.global = exports.window = exports.self = exports.isWorker = exports.isBrowser = exports._unregisterLoaders = exports._BrowserFileSystem = exports._fetchProgress = exports.JSONLoader = exports.NullLoader = exports.NullWorkerLoader = exports.makeStream = exports.makeIterator = exports.RequestScheduler = exports.resolvePath = exports.getPathPrefix = exports.setPathPrefix = exports.saveSync = exports.save = exports.encodeURLtoURL = exports.encodeText = exports.encodeInBatches = exports.encodeSync = exports.encode = exports.encodeTableInBatches = exports.encodeTableAsText = exports.encodeTable = exports.loadInBatches = exports.load = exports.parseInBatches = exports.parseSync = exports.parse = exports.selectLoaderSync = exports.selectLoader = exports.registerLoaders = exports.getLoaderOptions = exports.setLoaderOptions = exports.writeFileSync = exports.writeFile = exports.readFileSync = exports.readArrayBuffer = exports.fetchFile = void 0;
5
- exports.isWritableStream = exports.isReadableStream = exports.isResponse = exports.isIterator = exports.isAsyncIterable = exports.isIterable = exports.isPromise = exports.isPureObject = void 0;
6
- // FILE READING AND WRITING
7
- var fetch_file_1 = require("./lib/fetch/fetch-file");
8
- Object.defineProperty(exports, "fetchFile", { enumerable: true, get: function () { return fetch_file_1.fetchFile; } });
9
- var read_array_buffer_1 = require("./lib/fetch/read-array-buffer");
10
- Object.defineProperty(exports, "readArrayBuffer", { enumerable: true, get: function () { return read_array_buffer_1.readArrayBuffer; } });
11
- var read_file_1 = require("./lib/fetch/read-file");
12
- Object.defineProperty(exports, "readFileSync", { enumerable: true, get: function () { return read_file_1.readFileSync; } });
13
- var write_file_1 = require("./lib/fetch/write-file");
14
- Object.defineProperty(exports, "writeFile", { enumerable: true, get: function () { return write_file_1.writeFile; } });
15
- Object.defineProperty(exports, "writeFileSync", { enumerable: true, get: function () { return write_file_1.writeFileSync; } });
16
- // CONFIGURATION
17
- var loader_options_1 = require("./lib/api/loader-options");
18
- Object.defineProperty(exports, "setLoaderOptions", { enumerable: true, get: function () { return loader_options_1.setLoaderOptions; } });
19
- Object.defineProperty(exports, "getLoaderOptions", { enumerable: true, get: function () { return loader_options_1.getLoaderOptions; } });
20
- var register_loaders_1 = require("./lib/api/register-loaders");
21
- Object.defineProperty(exports, "registerLoaders", { enumerable: true, get: function () { return register_loaders_1.registerLoaders; } });
22
- var select_loader_1 = require("./lib/api/select-loader");
23
- Object.defineProperty(exports, "selectLoader", { enumerable: true, get: function () { return select_loader_1.selectLoader; } });
24
- Object.defineProperty(exports, "selectLoaderSync", { enumerable: true, get: function () { return select_loader_1.selectLoaderSync; } });
25
- // LOADING (READING + PARSING)
26
- var parse_1 = require("./lib/api/parse");
27
- Object.defineProperty(exports, "parse", { enumerable: true, get: function () { return parse_1.parse; } });
28
- var parse_sync_1 = require("./lib/api/parse-sync");
29
- Object.defineProperty(exports, "parseSync", { enumerable: true, get: function () { return parse_sync_1.parseSync; } });
30
- var parse_in_batches_1 = require("./lib/api/parse-in-batches");
31
- Object.defineProperty(exports, "parseInBatches", { enumerable: true, get: function () { return parse_in_batches_1.parseInBatches; } });
32
- var load_1 = require("./lib/api/load");
33
- Object.defineProperty(exports, "load", { enumerable: true, get: function () { return load_1.load; } });
34
- var load_in_batches_1 = require("./lib/api/load-in-batches");
35
- Object.defineProperty(exports, "loadInBatches", { enumerable: true, get: function () { return load_in_batches_1.loadInBatches; } });
36
- // ENCODING (ENCODING AND WRITING)
37
- var encode_table_1 = require("./lib/api/encode-table");
38
- Object.defineProperty(exports, "encodeTable", { enumerable: true, get: function () { return encode_table_1.encodeTable; } });
39
- Object.defineProperty(exports, "encodeTableAsText", { enumerable: true, get: function () { return encode_table_1.encodeTableAsText; } });
40
- Object.defineProperty(exports, "encodeTableInBatches", { enumerable: true, get: function () { return encode_table_1.encodeTableInBatches; } });
41
- var encode_1 = require("./lib/api/encode");
42
- Object.defineProperty(exports, "encode", { enumerable: true, get: function () { return encode_1.encode; } });
43
- Object.defineProperty(exports, "encodeSync", { enumerable: true, get: function () { return encode_1.encodeSync; } });
44
- Object.defineProperty(exports, "encodeInBatches", { enumerable: true, get: function () { return encode_1.encodeInBatches; } });
45
- Object.defineProperty(exports, "encodeText", { enumerable: true, get: function () { return encode_1.encodeText; } });
46
- Object.defineProperty(exports, "encodeURLtoURL", { enumerable: true, get: function () { return encode_1.encodeURLtoURL; } });
47
- var save_1 = require("./lib/api/save");
48
- Object.defineProperty(exports, "save", { enumerable: true, get: function () { return save_1.save; } });
49
- Object.defineProperty(exports, "saveSync", { enumerable: true, get: function () { return save_1.saveSync; } });
50
- // CORE UTILS SHARED WITH LOADERS (RE-EXPORTED FROM LOADER-UTILS)
51
- var loader_utils_1 = require("@loaders.gl/loader-utils");
52
- Object.defineProperty(exports, "setPathPrefix", { enumerable: true, get: function () { return loader_utils_1.setPathPrefix; } });
53
- Object.defineProperty(exports, "getPathPrefix", { enumerable: true, get: function () { return loader_utils_1.getPathPrefix; } });
54
- Object.defineProperty(exports, "resolvePath", { enumerable: true, get: function () { return loader_utils_1.resolvePath; } });
55
- var loader_utils_2 = require("@loaders.gl/loader-utils");
56
- Object.defineProperty(exports, "RequestScheduler", { enumerable: true, get: function () { return loader_utils_2.RequestScheduler; } });
57
- // ITERATOR UTILS
58
- var make_iterator_1 = require("./iterators/make-iterator/make-iterator");
59
- Object.defineProperty(exports, "makeIterator", { enumerable: true, get: function () { return make_iterator_1.makeIterator; } });
60
- var make_node_stream_1 = require("./iterators/make-stream/make-node-stream");
61
- Object.defineProperty(exports, "makeStream", { enumerable: true, get: function () { return make_node_stream_1.makeStream; } });
62
- // CORE LOADERS
63
- var null_loader_1 = require("./null-loader");
64
- Object.defineProperty(exports, "NullWorkerLoader", { enumerable: true, get: function () { return null_loader_1.NullWorkerLoader; } });
65
- Object.defineProperty(exports, "NullLoader", { enumerable: true, get: function () { return null_loader_1.NullLoader; } });
66
- var loader_utils_3 = require("@loaders.gl/loader-utils");
67
- Object.defineProperty(exports, "JSONLoader", { enumerable: true, get: function () { return loader_utils_3.JSONLoader; } });
68
- // EXPERIMENTAL
69
- var fetch_progress_1 = require("./lib/progress/fetch-progress");
70
- Object.defineProperty(exports, "_fetchProgress", { enumerable: true, get: function () { return fetch_progress_1.fetchProgress; } });
71
- var browser_filesystem_1 = require("./lib/filesystems/browser-filesystem");
72
- Object.defineProperty(exports, "_BrowserFileSystem", { enumerable: true, get: function () { return browser_filesystem_1.BrowserFileSystem; } });
73
- // FOR TESTING
74
- var register_loaders_2 = require("./lib/api/register-loaders");
75
- Object.defineProperty(exports, "_unregisterLoaders", { enumerable: true, get: function () { return register_loaders_2._unregisterLoaders; } });
76
- //
77
- // TODO - MOVE TO LOADER-UTILS AND DEPRECATE IN CORE?
78
- //
79
- var loader_utils_4 = require("@loaders.gl/loader-utils");
80
- Object.defineProperty(exports, "isBrowser", { enumerable: true, get: function () { return loader_utils_4.isBrowser; } });
81
- Object.defineProperty(exports, "isWorker", { enumerable: true, get: function () { return loader_utils_4.isWorker; } });
82
- Object.defineProperty(exports, "self", { enumerable: true, get: function () { return loader_utils_4.self; } });
83
- Object.defineProperty(exports, "window", { enumerable: true, get: function () { return loader_utils_4.window; } });
84
- Object.defineProperty(exports, "global", { enumerable: true, get: function () { return loader_utils_4.global; } });
85
- Object.defineProperty(exports, "document", { enumerable: true, get: function () { return loader_utils_4.document; } });
86
- var loader_utils_5 = require("@loaders.gl/loader-utils");
87
- Object.defineProperty(exports, "assert", { enumerable: true, get: function () { return loader_utils_5.assert; } });
88
- var loader_utils_6 = require("@loaders.gl/loader-utils");
89
- Object.defineProperty(exports, "forEach", { enumerable: true, get: function () { return loader_utils_6.forEach; } });
90
- Object.defineProperty(exports, "concatenateArrayBuffersAsync", { enumerable: true, get: function () { return loader_utils_6.concatenateArrayBuffersAsync; } });
91
- var loader_utils_7 = require("@loaders.gl/loader-utils");
92
- Object.defineProperty(exports, "makeTextDecoderIterator", { enumerable: true, get: function () { return loader_utils_7.makeTextDecoderIterator; } });
93
- Object.defineProperty(exports, "makeTextEncoderIterator", { enumerable: true, get: function () { return loader_utils_7.makeTextEncoderIterator; } });
94
- Object.defineProperty(exports, "makeLineIterator", { enumerable: true, get: function () { return loader_utils_7.makeLineIterator; } });
95
- Object.defineProperty(exports, "makeNumberedLineIterator", { enumerable: true, get: function () { return loader_utils_7.makeNumberedLineIterator; } });
96
- // "JAVASCRIPT" UTILS - move to loader-utils?
97
- var is_type_1 = require("./javascript-utils/is-type");
98
- Object.defineProperty(exports, "isPureObject", { enumerable: true, get: function () { return is_type_1.isPureObject; } });
99
- Object.defineProperty(exports, "isPromise", { enumerable: true, get: function () { return is_type_1.isPromise; } });
100
- Object.defineProperty(exports, "isIterable", { enumerable: true, get: function () { return is_type_1.isIterable; } });
101
- Object.defineProperty(exports, "isAsyncIterable", { enumerable: true, get: function () { return is_type_1.isAsyncIterable; } });
102
- Object.defineProperty(exports, "isIterator", { enumerable: true, get: function () { return is_type_1.isIterator; } });
103
- Object.defineProperty(exports, "isResponse", { enumerable: true, get: function () { return is_type_1.isResponse; } });
104
- Object.defineProperty(exports, "isReadableStream", { enumerable: true, get: function () { return is_type_1.isReadableStream; } });
105
- Object.defineProperty(exports, "isWritableStream", { enumerable: true, get: function () { return is_type_1.isWritableStream; } });
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.timedBatchIterator = void 0;
4
- /**
5
- * "Debounces" batches and returns them in groups
6
- */
7
- async function* timedBatchIterator(batchIterator, timeout) {
8
- let start = Date.now();
9
- let batches = [];
10
- for await (const batch of batchIterator) {
11
- batches.push(batch);
12
- if (Date.now() - start > timeout) {
13
- yield batches;
14
- start = Date.now();
15
- batches = [];
16
- }
17
- }
18
- if (batches) {
19
- yield batches;
20
- }
21
- }
22
- exports.timedBatchIterator = timedBatchIterator;
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeArrayBufferIterator = void 0;
4
- const DEFAULT_CHUNK_SIZE = 256 * 1024;
5
- /**
6
- * Returns an iterator that breaks a big ArrayBuffer into chunks and yields them one-by-one
7
- * @param blob ArrayBuffer to iterate over
8
- * @param options
9
- * @param options.chunkSize
10
- */
11
- function* makeArrayBufferIterator(arrayBuffer, options = {}) {
12
- const { chunkSize = DEFAULT_CHUNK_SIZE } = options;
13
- let byteOffset = 0;
14
- while (byteOffset < arrayBuffer.byteLength) {
15
- // Create a chunk of the right size
16
- const chunkByteLength = Math.min(arrayBuffer.byteLength - byteOffset, chunkSize);
17
- const chunk = new ArrayBuffer(chunkByteLength);
18
- // Copy data from the big chunk
19
- const sourceArray = new Uint8Array(arrayBuffer, byteOffset, chunkByteLength);
20
- const chunkArray = new Uint8Array(chunk);
21
- chunkArray.set(sourceArray);
22
- // yield the chunk
23
- byteOffset += chunkByteLength;
24
- yield chunk;
25
- }
26
- }
27
- exports.makeArrayBufferIterator = makeArrayBufferIterator;
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeBlobIterator = void 0;
4
- const DEFAULT_CHUNK_SIZE = 1024 * 1024; // 1MB — biggest value that keeps UI responsive
5
- /**
6
- * Returns an iterator that breaks a big Blob into chunks and yields them one-by-one
7
- * @param blob Blob or File object
8
- * @param options
9
- * @param options.chunkSize
10
- */
11
- async function* makeBlobIterator(blob, options) {
12
- const chunkSize = options?.chunkSize || DEFAULT_CHUNK_SIZE;
13
- let offset = 0;
14
- while (offset < blob.size) {
15
- const end = offset + chunkSize;
16
- const chunk = await blob.slice(offset, end).arrayBuffer();
17
- offset = end;
18
- yield chunk;
19
- }
20
- }
21
- exports.makeBlobIterator = makeBlobIterator;
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeIterator = void 0;
4
- const make_string_iterator_1 = require("./make-string-iterator");
5
- const make_array_buffer_iterator_1 = require("./make-array-buffer-iterator");
6
- const make_blob_iterator_1 = require("./make-blob-iterator");
7
- const make_stream_iterator_1 = require("./make-stream-iterator");
8
- const is_type_1 = require("../../javascript-utils/is-type");
9
- /**
10
- * Returns an iterator that breaks its input into chunks and yields them one-by-one.
11
- * @param data
12
- * @param options
13
- * @returns
14
- * This function can e.g. be used to enable data sources that can only be read atomically
15
- * (such as `Blob` and `File` via `FileReader`) to still be parsed in batches.
16
- */
17
- function makeIterator(data, options) {
18
- if (typeof data === 'string') {
19
- // Note: Converts string chunks to binary
20
- return (0, make_string_iterator_1.makeStringIterator)(data, options);
21
- }
22
- if (data instanceof ArrayBuffer) {
23
- return (0, make_array_buffer_iterator_1.makeArrayBufferIterator)(data, options);
24
- }
25
- if ((0, is_type_1.isBlob)(data)) {
26
- return (0, make_blob_iterator_1.makeBlobIterator)(data, options);
27
- }
28
- if ((0, is_type_1.isReadableStream)(data)) {
29
- return (0, make_stream_iterator_1.makeStreamIterator)(data, options);
30
- }
31
- if ((0, is_type_1.isResponse)(data)) {
32
- const response = data;
33
- return (0, make_stream_iterator_1.makeStreamIterator)(response.body, options);
34
- }
35
- throw new Error('makeIterator');
36
- }
37
- exports.makeIterator = makeIterator;