@loaders.gl/core 3.1.0-beta.7 → 3.1.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.
Files changed (116) hide show
  1. package/dist/bundle.js +5 -3380
  2. package/dist/dist.min.js +3423 -0
  3. package/dist/es5/bundle.js +1 -1
  4. package/dist/es5/bundle.js.map +1 -1
  5. package/dist/es5/index.js +56 -72
  6. package/dist/es5/index.js.map +1 -1
  7. package/dist/es5/iterators/batch-iterators/timed-batch-iterator.js +119 -14
  8. package/dist/es5/iterators/batch-iterators/timed-batch-iterator.js.map +1 -1
  9. package/dist/es5/iterators/make-iterator/make-array-buffer-iterator.js +53 -17
  10. package/dist/es5/iterators/make-iterator/make-array-buffer-iterator.js.map +1 -1
  11. package/dist/es5/iterators/make-iterator/make-blob-iterator.js +53 -12
  12. package/dist/es5/iterators/make-iterator/make-blob-iterator.js.map +1 -1
  13. package/dist/es5/iterators/make-iterator/make-iterator.js +1 -1
  14. package/dist/es5/iterators/make-iterator/make-iterator.js.map +1 -1
  15. package/dist/es5/iterators/make-iterator/make-stream-iterator.js +161 -24
  16. package/dist/es5/iterators/make-iterator/make-stream-iterator.js.map +1 -1
  17. package/dist/es5/iterators/make-iterator/make-string-iterator.js +41 -13
  18. package/dist/es5/iterators/make-iterator/make-string-iterator.js.map +1 -1
  19. package/dist/es5/iterators/make-stream/make-dom-stream.js +71 -26
  20. package/dist/es5/iterators/make-stream/make-dom-stream.js.map +1 -1
  21. package/dist/es5/iterators/make-stream/make-node-stream.js +189 -56
  22. package/dist/es5/iterators/make-stream/make-node-stream.js.map +1 -1
  23. package/dist/es5/javascript-utils/is-type.js +58 -18
  24. package/dist/es5/javascript-utils/is-type.js.map +1 -1
  25. package/dist/es5/lib/api/encode.js +242 -46
  26. package/dist/es5/lib/api/encode.js.map +1 -1
  27. package/dist/es5/lib/api/load-in-batches.js +52 -9
  28. package/dist/es5/lib/api/load-in-batches.js.map +1 -1
  29. package/dist/es5/lib/api/load.js +60 -15
  30. package/dist/es5/lib/api/load.js.map +1 -1
  31. package/dist/es5/lib/api/parse-in-batches.js +333 -81
  32. package/dist/es5/lib/api/parse-in-batches.js.map +1 -1
  33. package/dist/es5/lib/api/parse-sync.js +15 -11
  34. package/dist/es5/lib/api/parse-sync.js.map +1 -1
  35. package/dist/es5/lib/api/parse.js +142 -50
  36. package/dist/es5/lib/api/parse.js.map +1 -1
  37. package/dist/es5/lib/api/register-loaders.js +30 -8
  38. package/dist/es5/lib/api/register-loaders.js.map +1 -1
  39. package/dist/es5/lib/api/save.js +37 -4
  40. package/dist/es5/lib/api/save.js.map +1 -1
  41. package/dist/es5/lib/api/select-loader.js +209 -74
  42. package/dist/es5/lib/api/select-loader.js.map +1 -1
  43. package/dist/es5/lib/fetch/fetch-error-message.js +55 -13
  44. package/dist/es5/lib/fetch/fetch-error-message.js.map +1 -1
  45. package/dist/es5/lib/fetch/fetch-file.js +47 -10
  46. package/dist/es5/lib/fetch/fetch-file.js.map +1 -1
  47. package/dist/es5/lib/fetch/read-array-buffer.js +80 -19
  48. package/dist/es5/lib/fetch/read-array-buffer.js.map +1 -1
  49. package/dist/es5/lib/fetch/read-file.js +3 -2
  50. package/dist/es5/lib/fetch/read-file.js.map +1 -1
  51. package/dist/es5/lib/fetch/write-file.js +38 -9
  52. package/dist/es5/lib/fetch/write-file.js.map +1 -1
  53. package/dist/es5/lib/filesystems/browser-filesystem.js +266 -77
  54. package/dist/es5/lib/filesystems/browser-filesystem.js.map +1 -1
  55. package/dist/es5/lib/filesystems/read-array-buffer.js +43 -6
  56. package/dist/es5/lib/filesystems/read-array-buffer.js.map +1 -1
  57. package/dist/es5/lib/init.js +1 -1
  58. package/dist/es5/lib/init.js.map +1 -1
  59. package/dist/es5/lib/loader-utils/check-errors.js +50 -12
  60. package/dist/es5/lib/loader-utils/check-errors.js.map +1 -1
  61. package/dist/es5/lib/loader-utils/get-data.js +238 -71
  62. package/dist/es5/lib/loader-utils/get-data.js.map +1 -1
  63. package/dist/es5/lib/loader-utils/loader-context.js +19 -8
  64. package/dist/es5/lib/loader-utils/loader-context.js.map +1 -1
  65. package/dist/es5/lib/loader-utils/loggers.js +81 -36
  66. package/dist/es5/lib/loader-utils/loggers.js.map +1 -1
  67. package/dist/es5/lib/loader-utils/normalize-loader.js +13 -7
  68. package/dist/es5/lib/loader-utils/normalize-loader.js.map +1 -1
  69. package/dist/es5/lib/loader-utils/option-defaults.js +2 -2
  70. package/dist/es5/lib/loader-utils/option-defaults.js.map +1 -1
  71. package/dist/es5/lib/loader-utils/option-utils.js +85 -51
  72. package/dist/es5/lib/loader-utils/option-utils.js.map +1 -1
  73. package/dist/es5/lib/progress/fetch-progress.js +150 -49
  74. package/dist/es5/lib/progress/fetch-progress.js.map +1 -1
  75. package/dist/es5/lib/utils/mime-type-utils.js +4 -4
  76. package/dist/es5/lib/utils/mime-type-utils.js.map +1 -1
  77. package/dist/es5/lib/utils/resource-utils.js +4 -4
  78. package/dist/es5/lib/utils/resource-utils.js.map +1 -1
  79. package/dist/es5/lib/utils/response-utils.js +215 -88
  80. package/dist/es5/lib/utils/response-utils.js.map +1 -1
  81. package/dist/es5/null-loader.js +137 -10
  82. package/dist/es5/null-loader.js.map +1 -1
  83. package/dist/esm/index.js +1 -3
  84. package/dist/esm/index.js.map +1 -1
  85. package/dist/esm/iterators/make-stream/make-dom-stream.js +1 -1
  86. package/dist/esm/iterators/make-stream/make-dom-stream.js.map +1 -1
  87. package/dist/esm/iterators/make-stream/make-node-stream.js +1 -4
  88. package/dist/esm/iterators/make-stream/make-node-stream.js.map +1 -1
  89. package/dist/esm/lib/init.js +1 -1
  90. package/dist/esm/lib/init.js.map +1 -1
  91. package/dist/esm/null-loader.js +1 -1
  92. package/dist/esm/null-loader.js.map +1 -1
  93. package/dist/index.d.ts +1 -3
  94. package/dist/index.d.ts.map +1 -1
  95. package/dist/index.js +3 -7
  96. package/dist/iterators/make-stream/make-dom-stream.d.ts +8 -3
  97. package/dist/iterators/make-stream/make-dom-stream.d.ts.map +1 -1
  98. package/dist/iterators/make-stream/make-dom-stream.js +9 -4
  99. package/dist/iterators/make-stream/make-node-stream.d.ts +2 -3
  100. package/dist/iterators/make-stream/make-node-stream.d.ts.map +1 -1
  101. package/dist/iterators/make-stream/make-node-stream.js +3 -5
  102. package/dist/lib/fetch/fetch-file.js +1 -1
  103. package/dist/lib/fetch/read-file.d.ts +1 -1
  104. package/dist/lib/fetch/read-file.d.ts.map +1 -1
  105. package/package.json +8 -9
  106. package/src/index.ts +1 -3
  107. package/src/iterators/make-stream/make-dom-stream.ts +9 -4
  108. package/src/iterators/make-stream/make-node-stream.ts +2 -7
  109. package/dist/es5/iterators/make-stream/make-stream.js +0 -19
  110. package/dist/es5/iterators/make-stream/make-stream.js.map +0 -1
  111. package/dist/esm/iterators/make-stream/make-stream.js +0 -7
  112. package/dist/esm/iterators/make-stream/make-stream.js.map +0 -1
  113. package/dist/iterators/make-stream/make-stream.d.ts +0 -9
  114. package/dist/iterators/make-stream/make-stream.d.ts.map +0 -1
  115. package/dist/iterators/make-stream/make-stream.js +0 -16
  116. package/src/iterators/make-stream/make-stream.ts +0 -19
@@ -1,26 +1,63 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.fetchFile = fetchFile;
7
9
 
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
+
8
14
  var _loaderUtils = require("@loaders.gl/loader-utils");
9
15
 
10
16
  var _responseUtils = require("../utils/response-utils");
11
17
 
12
- async function fetchFile(url, options) {
13
- if (typeof url === 'string') {
14
- url = (0, _loaderUtils.resolvePath)(url);
15
- let fetchOptions = options;
18
+ function fetchFile(_x, _x2) {
19
+ return _fetchFile.apply(this, arguments);
20
+ }
21
+
22
+ function _fetchFile() {
23
+ _fetchFile = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(url, options) {
24
+ var fetchOptions;
25
+ return _regenerator.default.wrap(function _callee$(_context) {
26
+ while (1) {
27
+ switch (_context.prev = _context.next) {
28
+ case 0:
29
+ if (!(typeof url === 'string')) {
30
+ _context.next = 7;
31
+ break;
32
+ }
33
+
34
+ url = (0, _loaderUtils.resolvePath)(url);
35
+ fetchOptions = options;
36
+
37
+ if (options !== null && options !== void 0 && options.fetch && typeof (options === null || options === void 0 ? void 0 : options.fetch) !== 'function') {
38
+ fetchOptions = options.fetch;
39
+ }
40
+
41
+ _context.next = 6;
42
+ return fetch(url, fetchOptions);
43
+
44
+ case 6:
45
+ return _context.abrupt("return", _context.sent);
16
46
 
17
- if (options !== null && options !== void 0 && options.fetch && typeof (options === null || options === void 0 ? void 0 : options.fetch) !== 'function') {
18
- fetchOptions = options.fetch;
19
- }
47
+ case 7:
48
+ _context.next = 9;
49
+ return (0, _responseUtils.makeResponse)(url);
20
50
 
21
- return await fetch(url, fetchOptions);
22
- }
51
+ case 9:
52
+ return _context.abrupt("return", _context.sent);
23
53
 
24
- return await (0, _responseUtils.makeResponse)(url);
54
+ case 10:
55
+ case "end":
56
+ return _context.stop();
57
+ }
58
+ }
59
+ }, _callee);
60
+ }));
61
+ return _fetchFile.apply(this, arguments);
25
62
  }
26
63
  //# sourceMappingURL=fetch-file.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/fetch/fetch-file.ts"],"names":["fetchFile","url","options","fetchOptions","fetch"],"mappings":";;;;;;;AAAA;;AACA;;AAYO,eAAeA,SAAf,CACLC,GADK,EAELC,OAFK,EAGc;AACnB,MAAI,OAAOD,GAAP,KAAe,QAAnB,EAA6B;AAC3BA,IAAAA,GAAG,GAAG,8BAAYA,GAAZ,CAAN;AAEA,QAAIE,YAAyB,GAAGD,OAAhC;;AACA,QAAIA,OAAO,SAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAEE,KAAT,IAAkB,QAAOF,OAAP,aAAOA,OAAP,uBAAOA,OAAO,CAAEE,KAAhB,MAA0B,UAAhD,EAA4D;AAC1DD,MAAAA,YAAY,GAAGD,OAAO,CAACE,KAAvB;AACD;;AAED,WAAO,MAAMA,KAAK,CAACH,GAAD,EAAME,YAAN,CAAlB;AACD;;AAED,SAAO,MAAM,iCAAaF,GAAb,CAAb;AACD","sourcesContent":["import {resolvePath} from '@loaders.gl/loader-utils';\nimport {makeResponse} from '../utils/response-utils';\n// import {getErrorMessageFromResponse} from './fetch-error-message';\n\n/**\n * fetch compatible function\n * Reads file data from:\n * - http/http urls\n * - data urls\n * - File/Blob objects\n * Leverages `@loaders.gl/polyfills` for Node.js support\n * Respects pathPrefix and file aliases\n */\nexport async function fetchFile(\n url: string | Blob,\n options?: RequestInit & {fetch?: RequestInit | Function}\n): Promise<Response> {\n if (typeof url === 'string') {\n url = resolvePath(url);\n\n let fetchOptions: RequestInit = options as RequestInit;\n if (options?.fetch && typeof options?.fetch !== 'function') {\n fetchOptions = options.fetch;\n }\n\n return await fetch(url, fetchOptions);\n }\n\n return await makeResponse(url);\n}\n"],"file":"fetch-file.js"}
1
+ {"version":3,"sources":["../../../../src/lib/fetch/fetch-file.ts"],"names":["fetchFile","url","options","fetchOptions","fetch"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;SAYsBA,S;;;;;yEAAf,iBACLC,GADK,EAELC,OAFK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAID,OAAOD,GAAP,KAAe,QAJd;AAAA;AAAA;AAAA;;AAKHA,YAAAA,GAAG,GAAG,8BAAYA,GAAZ,CAAN;AAEIE,YAAAA,YAPD,GAO6BD,OAP7B;;AAQH,gBAAIA,OAAO,SAAP,IAAAA,OAAO,WAAP,IAAAA,OAAO,CAAEE,KAAT,IAAkB,QAAOF,OAAP,aAAOA,OAAP,uBAAOA,OAAO,CAAEE,KAAhB,MAA0B,UAAhD,EAA4D;AAC1DD,cAAAA,YAAY,GAAGD,OAAO,CAACE,KAAvB;AACD;;AAVE;AAAA,mBAYUA,KAAK,CAACH,GAAD,EAAME,YAAN,CAZf;;AAAA;AAAA;;AAAA;AAAA;AAAA,mBAeQ,iCAAaF,GAAb,CAfR;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G","sourcesContent":["import {resolvePath} from '@loaders.gl/loader-utils';\nimport {makeResponse} from '../utils/response-utils';\n// import {getErrorMessageFromResponse} from './fetch-error-message';\n\n/**\n * fetch compatible function\n * Reads file data from:\n * - http/http urls\n * - data urls\n * - File/Blob objects\n * Leverages `@loaders.gl/polyfills` for Node.js support\n * Respects pathPrefix and file aliases\n */\nexport async function fetchFile(\n url: string | Blob,\n options?: RequestInit & {fetch?: RequestInit | Function}\n): Promise<Response> {\n if (typeof url === 'string') {\n url = resolvePath(url);\n\n let fetchOptions: RequestInit = options as RequestInit;\n if (options?.fetch && typeof options?.fetch !== 'function') {\n fetchOptions = options.fetch;\n }\n\n return await fetch(url, fetchOptions);\n }\n\n return await makeResponse(url);\n}\n"],"file":"fetch-file.js"}
@@ -1,39 +1,100 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.readArrayBuffer = readArrayBuffer;
7
9
  exports.readBlob = readBlob;
8
10
 
11
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
12
+
13
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
14
+
9
15
  var _loaderUtils = require("@loaders.gl/loader-utils");
10
16
 
11
- async function readArrayBuffer(file, start, length) {
12
- if (typeof file === 'number') {
13
- return await _loaderUtils.fs._readToArrayBuffer(file, start, length);
14
- }
17
+ function readArrayBuffer(_x, _x2, _x3) {
18
+ return _readArrayBuffer.apply(this, arguments);
19
+ }
20
+
21
+ function _readArrayBuffer() {
22
+ _readArrayBuffer = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(file, start, length) {
23
+ var slice;
24
+ return _regenerator.default.wrap(function _callee$(_context) {
25
+ while (1) {
26
+ switch (_context.prev = _context.next) {
27
+ case 0:
28
+ if (!(typeof file === 'number')) {
29
+ _context.next = 4;
30
+ break;
31
+ }
32
+
33
+ _context.next = 3;
34
+ return _loaderUtils.fs._readToArrayBuffer(file, start, length);
35
+
36
+ case 3:
37
+ return _context.abrupt("return", _context.sent);
15
38
 
16
- if (!(file instanceof Blob)) {
17
- file = new Blob([file]);
18
- }
39
+ case 4:
40
+ if (!(file instanceof Blob)) {
41
+ file = new Blob([file]);
42
+ }
19
43
 
20
- const slice = file.slice(start, start + length);
21
- return await readBlob(slice);
44
+ slice = file.slice(start, start + length);
45
+ _context.next = 8;
46
+ return readBlob(slice);
47
+
48
+ case 8:
49
+ return _context.abrupt("return", _context.sent);
50
+
51
+ case 9:
52
+ case "end":
53
+ return _context.stop();
54
+ }
55
+ }
56
+ }, _callee);
57
+ }));
58
+ return _readArrayBuffer.apply(this, arguments);
59
+ }
60
+
61
+ function readBlob(_x4) {
62
+ return _readBlob.apply(this, arguments);
22
63
  }
23
64
 
24
- async function readBlob(blob) {
25
- return await new Promise((resolve, reject) => {
26
- const fileReader = new FileReader();
65
+ function _readBlob() {
66
+ _readBlob = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(blob) {
67
+ return _regenerator.default.wrap(function _callee2$(_context2) {
68
+ while (1) {
69
+ switch (_context2.prev = _context2.next) {
70
+ case 0:
71
+ _context2.next = 2;
72
+ return new Promise(function (resolve, reject) {
73
+ var fileReader = new FileReader();
74
+
75
+ fileReader.onload = function (event) {
76
+ var _event$target;
77
+
78
+ return resolve(event === null || event === void 0 ? void 0 : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.result);
79
+ };
27
80
 
28
- fileReader.onload = event => {
29
- var _event$target;
81
+ fileReader.onerror = function (error) {
82
+ return reject(error);
83
+ };
30
84
 
31
- return resolve(event === null || event === void 0 ? void 0 : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.result);
32
- };
85
+ fileReader.readAsArrayBuffer(blob);
86
+ });
33
87
 
34
- fileReader.onerror = error => reject(error);
88
+ case 2:
89
+ return _context2.abrupt("return", _context2.sent);
35
90
 
36
- fileReader.readAsArrayBuffer(blob);
37
- });
91
+ case 3:
92
+ case "end":
93
+ return _context2.stop();
94
+ }
95
+ }
96
+ }, _callee2);
97
+ }));
98
+ return _readBlob.apply(this, arguments);
38
99
  }
39
100
  //# sourceMappingURL=read-array-buffer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/fetch/read-array-buffer.ts"],"names":["readArrayBuffer","file","start","length","fs","_readToArrayBuffer","Blob","slice","readBlob","blob","Promise","resolve","reject","fileReader","FileReader","onload","event","target","result","onerror","error","readAsArrayBuffer"],"mappings":";;;;;;;;AACA;;AASO,eAAeA,eAAf,CACLC,IADK,EAELC,KAFK,EAGLC,MAHK,EAIiB;AACtB,MAAI,OAAOF,IAAP,KAAgB,QAApB,EAA8B;AAC5B,WAAO,MAAMG,gBAAGC,kBAAH,CAAsBJ,IAAtB,EAA4BC,KAA5B,EAAmCC,MAAnC,CAAb;AACD;;AAED,MAAI,EAAEF,IAAI,YAAYK,IAAlB,CAAJ,EAA6B;AAC3BL,IAAAA,IAAI,GAAG,IAAIK,IAAJ,CAAS,CAACL,IAAD,CAAT,CAAP;AACD;;AACD,QAAMM,KAAK,GAAGN,IAAI,CAACM,KAAL,CAAWL,KAAX,EAAkBA,KAAK,GAAGC,MAA1B,CAAd;AACA,SAAO,MAAMK,QAAQ,CAACD,KAAD,CAArB;AACD;;AASM,eAAeC,QAAf,CAAwBC,IAAxB,EAA0D;AAC/D,SAAO,MAAM,IAAIC,OAAJ,CAAY,CAACC,OAAD,EAAUC,MAAV,KAAqB;AAC5C,UAAMC,UAAU,GAAG,IAAIC,UAAJ,EAAnB;;AACAD,IAAAA,UAAU,CAACE,MAAX,GAAqBC,KAAD;AAAA;;AAAA,aAClBL,OAAO,CAACK,KAAD,aAACA,KAAD,wCAACA,KAAK,CAAEC,MAAR,kDAAC,cAAeC,MAAhB,CADW;AAAA,KAApB;;AAGAL,IAAAA,UAAU,CAACM,OAAX,GAAsBC,KAAD,IAAsCR,MAAM,CAACQ,KAAD,CAAjE;;AACAP,IAAAA,UAAU,CAACQ,iBAAX,CAA6BZ,IAA7B;AACD,GAPY,CAAb;AAQD","sourcesContent":["//\nimport {fs} from '@loaders.gl/loader-utils';\n\n/**\n * Reads a chunk from a random access file\n * @param file\n * @param start\n * @param length\n * @returns\n */\nexport async function readArrayBuffer(\n file: Blob | ArrayBuffer | string | number,\n start: number,\n length: number\n): Promise<ArrayBuffer> {\n if (typeof file === 'number') {\n return await fs._readToArrayBuffer(file, start, length);\n }\n // TODO - we can do better for ArrayBuffer and string\n if (!(file instanceof Blob)) {\n file = new Blob([file]);\n }\n const slice = file.slice(start, start + length);\n return await readBlob(slice);\n}\n\n/**\n * Read a slice of a Blob or File, without loading the entire file into memory\n * The trick when reading File objects is to read successive \"slices\" of the File\n * Per spec https://w3c.github.io/FileAPI/, slicing a File only updates the start and end fields\n * Actually reading from file happens in `readAsArrayBuffer`\n * @param blob to read\n */\nexport async function readBlob(blob: Blob): Promise<ArrayBuffer> {\n return await new Promise((resolve, reject) => {\n const fileReader = new FileReader();\n fileReader.onload = (event: ProgressEvent<FileReader>) =>\n resolve(event?.target?.result as ArrayBuffer);\n // TODO - reject with a proper Error\n fileReader.onerror = (error: ProgressEvent<FileReader>) => reject(error);\n fileReader.readAsArrayBuffer(blob);\n });\n}\n"],"file":"read-array-buffer.js"}
1
+ {"version":3,"sources":["../../../../src/lib/fetch/read-array-buffer.ts"],"names":["readArrayBuffer","file","start","length","fs","_readToArrayBuffer","Blob","slice","readBlob","blob","Promise","resolve","reject","fileReader","FileReader","onload","event","target","result","onerror","error","readAsArrayBuffer"],"mappings":";;;;;;;;;;;;;;AACA;;SASsBA,e;;;;;+EAAf,iBACLC,IADK,EAELC,KAFK,EAGLC,MAHK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKD,OAAOF,IAAP,KAAgB,QALf;AAAA;AAAA;AAAA;;AAAA;AAAA,mBAMUG,gBAAGC,kBAAH,CAAsBJ,IAAtB,EAA4BC,KAA5B,EAAmCC,MAAnC,CANV;;AAAA;AAAA;;AAAA;AASL,gBAAI,EAAEF,IAAI,YAAYK,IAAlB,CAAJ,EAA6B;AAC3BL,cAAAA,IAAI,GAAG,IAAIK,IAAJ,CAAS,CAACL,IAAD,CAAT,CAAP;AACD;;AACKM,YAAAA,KAZD,GAYSN,IAAI,CAACM,KAAL,CAAWL,KAAX,EAAkBA,KAAK,GAAGC,MAA1B,CAZT;AAAA;AAAA,mBAaQK,QAAQ,CAACD,KAAD,CAbhB;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;SAuBeC,Q;;;;;wEAAf,kBAAwBC,IAAxB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACQ,IAAIC,OAAJ,CAAY,UAACC,OAAD,EAAUC,MAAV,EAAqB;AAC5C,kBAAMC,UAAU,GAAG,IAAIC,UAAJ,EAAnB;;AACAD,cAAAA,UAAU,CAACE,MAAX,GAAoB,UAACC,KAAD;AAAA;;AAAA,uBAClBL,OAAO,CAACK,KAAD,aAACA,KAAD,wCAACA,KAAK,CAAEC,MAAR,kDAAC,cAAeC,MAAhB,CADW;AAAA,eAApB;;AAGAL,cAAAA,UAAU,CAACM,OAAX,GAAqB,UAACC,KAAD;AAAA,uBAAsCR,MAAM,CAACQ,KAAD,CAA5C;AAAA,eAArB;;AACAP,cAAAA,UAAU,CAACQ,iBAAX,CAA6BZ,IAA7B;AACD,aAPY,CADR;;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G","sourcesContent":["//\nimport {fs} from '@loaders.gl/loader-utils';\n\n/**\n * Reads a chunk from a random access file\n * @param file\n * @param start\n * @param length\n * @returns\n */\nexport async function readArrayBuffer(\n file: Blob | ArrayBuffer | string | number,\n start: number,\n length: number\n): Promise<ArrayBuffer> {\n if (typeof file === 'number') {\n return await fs._readToArrayBuffer(file, start, length);\n }\n // TODO - we can do better for ArrayBuffer and string\n if (!(file instanceof Blob)) {\n file = new Blob([file]);\n }\n const slice = file.slice(start, start + length);\n return await readBlob(slice);\n}\n\n/**\n * Read a slice of a Blob or File, without loading the entire file into memory\n * The trick when reading File objects is to read successive \"slices\" of the File\n * Per spec https://w3c.github.io/FileAPI/, slicing a File only updates the start and end fields\n * Actually reading from file happens in `readAsArrayBuffer`\n * @param blob to read\n */\nexport async function readBlob(blob: Blob): Promise<ArrayBuffer> {\n return await new Promise((resolve, reject) => {\n const fileReader = new FileReader();\n fileReader.onload = (event: ProgressEvent<FileReader>) =>\n resolve(event?.target?.result as ArrayBuffer);\n // TODO - reject with a proper Error\n fileReader.onerror = (error: ProgressEvent<FileReader>) => reject(error);\n fileReader.readAsArrayBuffer(blob);\n });\n}\n"],"file":"read-array-buffer.js"}
@@ -7,11 +7,12 @@ exports.readFileSync = readFileSync;
7
7
 
8
8
  var _loaderUtils = require("@loaders.gl/loader-utils");
9
9
 
10
- function readFileSync(url, options = {}) {
10
+ function readFileSync(url) {
11
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
11
12
  url = (0, _loaderUtils.resolvePath)(url);
12
13
 
13
14
  if (!_loaderUtils.isBrowser) {
14
- const buffer = _loaderUtils.fs.readFileSync(url, options);
15
+ var buffer = _loaderUtils.fs.readFileSync(url, options);
15
16
 
16
17
  return typeof buffer !== 'string' ? (0, _loaderUtils.toArrayBuffer)(buffer) : buffer;
17
18
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/fetch/read-file.ts"],"names":["readFileSync","url","options","isBrowser","buffer","fs","nothrow"],"mappings":";;;;;;;AACA;;AASO,SAASA,YAAT,CAAsBC,GAAtB,EAAmCC,OAAe,GAAG,EAArD,EAAyD;AAC9DD,EAAAA,GAAG,GAAG,8BAAYA,GAAZ,CAAN;;AAOA,MAAI,CAACE,sBAAL,EAAgB;AACd,UAAMC,MAAM,GAAGC,gBAAGL,YAAH,CAAgBC,GAAhB,EAAqBC,OAArB,CAAf;;AACA,WAAO,OAAOE,MAAP,KAAkB,QAAlB,GAA6B,gCAAcA,MAAd,CAA7B,GAAqDA,MAA5D;AACD;;AAGD,MAAI,CAACF,OAAO,CAACI,OAAb,EAAsB;AAEpB,6BAAO,KAAP;AACD;;AAED,SAAO,IAAP;AACD","sourcesContent":["// File read\nimport {isBrowser, resolvePath, fs, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport {assert} from '@loaders.gl/loader-utils';\n\n// TODO - this is not tested\n// const isDataURL = (url) => url.startsWith('data:');\n\n/**\n * In a few cases (data URIs, node.js) \"files\" can be read synchronously\n */\nexport function readFileSync(url: string, options: object = {}) {\n url = resolvePath(url);\n\n // Only support this if we can also support sync data URL decoding in browser\n // if (isDataURL(url)) {\n // return decodeDataUri(url);\n // }\n\n if (!isBrowser) {\n const buffer = fs.readFileSync(url, options);\n return typeof buffer !== 'string' ? toArrayBuffer(buffer) : buffer;\n }\n\n // @ts-ignore\n if (!options.nothrow) {\n // throw new Error('Cant load URI synchronously');\n assert(false);\n }\n\n return null;\n}\n"],"file":"read-file.js"}
1
+ {"version":3,"sources":["../../../../src/lib/fetch/read-file.ts"],"names":["readFileSync","url","options","isBrowser","buffer","fs","nothrow"],"mappings":";;;;;;;AACA;;AASO,SAASA,YAAT,CAAsBC,GAAtB,EAAyD;AAAA,MAAtBC,OAAsB,uEAAJ,EAAI;AAC9DD,EAAAA,GAAG,GAAG,8BAAYA,GAAZ,CAAN;;AAOA,MAAI,CAACE,sBAAL,EAAgB;AACd,QAAMC,MAAM,GAAGC,gBAAGL,YAAH,CAAgBC,GAAhB,EAAqBC,OAArB,CAAf;;AACA,WAAO,OAAOE,MAAP,KAAkB,QAAlB,GAA6B,gCAAcA,MAAd,CAA7B,GAAqDA,MAA5D;AACD;;AAGD,MAAI,CAACF,OAAO,CAACI,OAAb,EAAsB;AAEpB,6BAAO,KAAP;AACD;;AAED,SAAO,IAAP;AACD","sourcesContent":["// File read\nimport {isBrowser, resolvePath, fs, toArrayBuffer} from '@loaders.gl/loader-utils';\nimport {assert} from '@loaders.gl/loader-utils';\n\n// TODO - this is not tested\n// const isDataURL = (url) => url.startsWith('data:');\n\n/**\n * In a few cases (data URIs, node.js) \"files\" can be read synchronously\n */\nexport function readFileSync(url: string, options: object = {}) {\n url = resolvePath(url);\n\n // Only support this if we can also support sync data URL decoding in browser\n // if (isDataURL(url)) {\n // return decodeDataUri(url);\n // }\n\n if (!isBrowser) {\n const buffer = fs.readFileSync(url, options);\n return typeof buffer !== 'string' ? toArrayBuffer(buffer) : buffer;\n }\n\n // @ts-ignore\n if (!options.nothrow) {\n // throw new Error('Cant load URI synchronously');\n assert(false);\n }\n\n return null;\n}\n"],"file":"read-file.js"}
@@ -1,23 +1,52 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.writeFile = writeFile;
7
9
  exports.writeFileSync = writeFileSync;
8
10
 
9
- var _loaderUtils = require("@loaders.gl/loader-utils");
11
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10
12
 
11
- async function writeFile(filePath, arrayBufferOrString, options) {
12
- filePath = (0, _loaderUtils.resolvePath)(filePath);
13
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
14
 
14
- if (!_loaderUtils.isBrowser) {
15
- await _loaderUtils.fs.writeFile(filePath, (0, _loaderUtils.toBuffer)(arrayBufferOrString), {
16
- flag: 'w'
17
- });
18
- }
15
+ var _loaderUtils = require("@loaders.gl/loader-utils");
19
16
 
20
- (0, _loaderUtils.assert)(false);
17
+ function writeFile(_x, _x2, _x3) {
18
+ return _writeFile.apply(this, arguments);
19
+ }
20
+
21
+ function _writeFile() {
22
+ _writeFile = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(filePath, arrayBufferOrString, options) {
23
+ return _regenerator.default.wrap(function _callee$(_context) {
24
+ while (1) {
25
+ switch (_context.prev = _context.next) {
26
+ case 0:
27
+ filePath = (0, _loaderUtils.resolvePath)(filePath);
28
+
29
+ if (_loaderUtils.isBrowser) {
30
+ _context.next = 4;
31
+ break;
32
+ }
33
+
34
+ _context.next = 4;
35
+ return _loaderUtils.fs.writeFile(filePath, (0, _loaderUtils.toBuffer)(arrayBufferOrString), {
36
+ flag: 'w'
37
+ });
38
+
39
+ case 4:
40
+ (0, _loaderUtils.assert)(false);
41
+
42
+ case 5:
43
+ case "end":
44
+ return _context.stop();
45
+ }
46
+ }
47
+ }, _callee);
48
+ }));
49
+ return _writeFile.apply(this, arguments);
21
50
  }
22
51
 
23
52
  function writeFileSync(filePath, arrayBufferOrString, options) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/fetch/write-file.ts"],"names":["writeFile","filePath","arrayBufferOrString","options","isBrowser","fs","flag","writeFileSync"],"mappings":";;;;;;;;AACA;;AAGO,eAAeA,SAAf,CACLC,QADK,EAELC,mBAFK,EAGLC,OAHK,EAIU;AACfF,EAAAA,QAAQ,GAAG,8BAAYA,QAAZ,CAAX;;AACA,MAAI,CAACG,sBAAL,EAAgB;AACd,UAAMC,gBAAGL,SAAH,CAAaC,QAAb,EAAuB,2BAASC,mBAAT,CAAvB,EAAsD;AAACI,MAAAA,IAAI,EAAE;AAAP,KAAtD,CAAN;AACD;;AACD,2BAAO,KAAP;AACD;;AAEM,SAASC,aAAT,CACLN,QADK,EAELC,mBAFK,EAGLC,OAHK,EAIC;AACNF,EAAAA,QAAQ,GAAG,8BAAYA,QAAZ,CAAX;;AACA,MAAI,CAACG,sBAAL,EAAgB;AACdC,oBAAGE,aAAH,CAAiBN,QAAjB,EAA2B,2BAASC,mBAAT,CAA3B,EAA0D;AAACI,MAAAA,IAAI,EAAE;AAAP,KAA1D;AACD;;AACD,2BAAO,KAAP;AACD","sourcesContent":["// file write\nimport {isBrowser, assert, resolvePath} from '@loaders.gl/loader-utils';\nimport {fs, toBuffer} from '@loaders.gl/loader-utils';\n\nexport async function writeFile(\n filePath: string,\n arrayBufferOrString: ArrayBuffer | string,\n options?\n): Promise<void> {\n filePath = resolvePath(filePath);\n if (!isBrowser) {\n await fs.writeFile(filePath, toBuffer(arrayBufferOrString), {flag: 'w'});\n }\n assert(false);\n}\n\nexport function writeFileSync(\n filePath: string,\n arrayBufferOrString: ArrayBuffer | string,\n options?\n): void {\n filePath = resolvePath(filePath);\n if (!isBrowser) {\n fs.writeFileSync(filePath, toBuffer(arrayBufferOrString), {flag: 'w'});\n }\n assert(false);\n}\n"],"file":"write-file.js"}
1
+ {"version":3,"sources":["../../../../src/lib/fetch/write-file.ts"],"names":["writeFile","filePath","arrayBufferOrString","options","isBrowser","fs","flag","writeFileSync"],"mappings":";;;;;;;;;;;;;;AACA;;SAGsBA,S;;;;;yEAAf,iBACLC,QADK,EAELC,mBAFK,EAGLC,OAHK;AAAA;AAAA;AAAA;AAAA;AAKLF,YAAAA,QAAQ,GAAG,8BAAYA,QAAZ,CAAX;;AALK,gBAMAG,sBANA;AAAA;AAAA;AAAA;;AAAA;AAAA,mBAOGC,gBAAGL,SAAH,CAAaC,QAAb,EAAuB,2BAASC,mBAAT,CAAvB,EAAsD;AAACI,cAAAA,IAAI,EAAE;AAAP,aAAtD,CAPH;;AAAA;AASL,qCAAO,KAAP;;AATK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,G;;;;AAYA,SAASC,aAAT,CACLN,QADK,EAELC,mBAFK,EAGLC,OAHK,EAIC;AACNF,EAAAA,QAAQ,GAAG,8BAAYA,QAAZ,CAAX;;AACA,MAAI,CAACG,sBAAL,EAAgB;AACdC,oBAAGE,aAAH,CAAiBN,QAAjB,EAA2B,2BAASC,mBAAT,CAA3B,EAA0D;AAACI,MAAAA,IAAI,EAAE;AAAP,KAA1D;AACD;;AACD,2BAAO,KAAP;AACD","sourcesContent":["// file write\nimport {isBrowser, assert, resolvePath} from '@loaders.gl/loader-utils';\nimport {fs, toBuffer} from '@loaders.gl/loader-utils';\n\nexport async function writeFile(\n filePath: string,\n arrayBufferOrString: ArrayBuffer | string,\n options?\n): Promise<void> {\n filePath = resolvePath(filePath);\n if (!isBrowser) {\n await fs.writeFile(filePath, toBuffer(arrayBufferOrString), {flag: 'w'});\n }\n assert(false);\n}\n\nexport function writeFileSync(\n filePath: string,\n arrayBufferOrString: ArrayBuffer | string,\n options?\n): void {\n filePath = resolvePath(filePath);\n if (!isBrowser) {\n fs.writeFileSync(filePath, toBuffer(arrayBufferOrString), {flag: 'w'});\n }\n assert(false);\n}\n"],"file":"write-file.js"}