@loaders.gl/core 3.4.0-alpha.1 → 3.4.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dist.min.js +461 -248
- package/dist/es5/core-addons/write-file-browser.js +0 -2
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/iterators/batch-iterators/timed-batch-iterator.js +65 -67
- package/dist/es5/iterators/batch-iterators/timed-batch-iterator.js.map +1 -1
- package/dist/es5/iterators/make-iterator/make-array-buffer-iterator.js +13 -24
- package/dist/es5/iterators/make-iterator/make-array-buffer-iterator.js.map +1 -1
- package/dist/es5/iterators/make-iterator/make-blob-iterator.js +22 -25
- package/dist/es5/iterators/make-iterator/make-blob-iterator.js.map +1 -1
- package/dist/es5/iterators/make-iterator/make-iterator.js.map +1 -1
- package/dist/es5/iterators/make-iterator/make-stream-iterator.js +88 -93
- package/dist/es5/iterators/make-iterator/make-stream-iterator.js.map +1 -1
- package/dist/es5/iterators/make-iterator/make-string-iterator.js +20 -24
- package/dist/es5/iterators/make-iterator/make-string-iterator.js.map +1 -1
- package/dist/es5/iterators/make-stream/make-dom-stream.js +30 -34
- package/dist/es5/iterators/make-stream/make-dom-stream.js.map +1 -1
- package/dist/es5/iterators/make-stream/make-node-stream.js +88 -87
- package/dist/es5/iterators/make-stream/make-node-stream.js.map +1 -1
- package/dist/es5/javascript-utils/is-type.js +0 -3
- package/dist/es5/javascript-utils/is-type.js.map +1 -1
- package/dist/es5/lib/api/encode.js +157 -166
- package/dist/es5/lib/api/encode.js.map +1 -1
- package/dist/es5/lib/api/load-in-batches.js +25 -31
- package/dist/es5/lib/api/load-in-batches.js.map +1 -1
- package/dist/es5/lib/api/load.js +35 -38
- package/dist/es5/lib/api/load.js.map +1 -1
- package/dist/es5/lib/api/loader-options.js.map +1 -1
- package/dist/es5/lib/api/parse-in-batches.js +192 -207
- package/dist/es5/lib/api/parse-in-batches.js.map +1 -1
- package/dist/es5/lib/api/parse-sync.js +0 -7
- package/dist/es5/lib/api/parse-sync.js.map +1 -1
- package/dist/es5/lib/api/parse.js +99 -107
- package/dist/es5/lib/api/parse.js.map +1 -1
- package/dist/es5/lib/api/register-loaders.js +1 -3
- package/dist/es5/lib/api/register-loaders.js.map +1 -1
- package/dist/es5/lib/api/save.js +13 -15
- package/dist/es5/lib/api/save.js.map +1 -1
- package/dist/es5/lib/api/select-loader.js +41 -58
- package/dist/es5/lib/api/select-loader.js.map +1 -1
- package/dist/es5/lib/fetch/fetch-error-message.js +29 -31
- package/dist/es5/lib/fetch/fetch-error-message.js.map +1 -1
- package/dist/es5/lib/fetch/fetch-file.js +23 -25
- package/dist/es5/lib/fetch/fetch-file.js.map +1 -1
- package/dist/es5/lib/fetch/read-array-buffer.js +41 -45
- package/dist/es5/lib/fetch/read-array-buffer.js.map +1 -1
- package/dist/es5/lib/fetch/read-file.js +0 -3
- package/dist/es5/lib/fetch/read-file.js.map +1 -1
- package/dist/es5/lib/fetch/write-file.js +15 -17
- package/dist/es5/lib/fetch/write-file.js.map +1 -1
- package/dist/es5/lib/filesystems/browser-filesystem.js +107 -124
- package/dist/es5/lib/filesystems/browser-filesystem.js.map +1 -1
- package/dist/es5/lib/filesystems/read-array-buffer.js +19 -21
- package/dist/es5/lib/filesystems/read-array-buffer.js.map +1 -1
- package/dist/es5/lib/init.js +1 -3
- package/dist/es5/lib/init.js.map +1 -1
- package/dist/es5/lib/loader-utils/check-errors.js +24 -26
- package/dist/es5/lib/loader-utils/check-errors.js.map +1 -1
- package/dist/es5/lib/loader-utils/get-data.js +130 -145
- package/dist/es5/lib/loader-utils/get-data.js.map +1 -1
- package/dist/es5/lib/loader-utils/get-fetch-function.js +26 -0
- package/dist/es5/lib/loader-utils/get-fetch-function.js.map +1 -0
- package/dist/es5/lib/loader-utils/loader-context.js +2 -5
- package/dist/es5/lib/loader-utils/loader-context.js.map +1 -1
- package/dist/es5/lib/loader-utils/loggers.js +0 -2
- package/dist/es5/lib/loader-utils/loggers.js.map +1 -1
- package/dist/es5/lib/loader-utils/normalize-loader.js +0 -3
- package/dist/es5/lib/loader-utils/normalize-loader.js.map +1 -1
- package/dist/es5/lib/loader-utils/option-defaults.js +0 -2
- package/dist/es5/lib/loader-utils/option-defaults.js.map +1 -1
- package/dist/es5/lib/loader-utils/option-utils.js +21 -55
- package/dist/es5/lib/loader-utils/option-utils.js.map +1 -1
- package/dist/es5/lib/progress/fetch-progress.js +92 -98
- package/dist/es5/lib/progress/fetch-progress.js.map +1 -1
- package/dist/es5/lib/utils/log.js +0 -1
- package/dist/es5/lib/utils/log.js.map +1 -1
- package/dist/es5/lib/utils/mime-type-utils.js +0 -3
- package/dist/es5/lib/utils/mime-type-utils.js.map +1 -1
- package/dist/es5/lib/utils/resource-utils.js +0 -4
- package/dist/es5/lib/utils/resource-utils.js.map +1 -1
- package/dist/es5/lib/utils/response-utils.js +118 -131
- package/dist/es5/lib/utils/response-utils.js.map +1 -1
- package/dist/es5/null-loader.js +57 -63
- package/dist/es5/null-loader.js.map +1 -1
- package/dist/es5/workers/null-worker.js.map +1 -1
- package/dist/esm/bundle.js +0 -1
- package/dist/esm/bundle.js.map +1 -1
- package/dist/esm/index.js +0 -12
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/iterators/batch-iterators/timed-batch-iterator.js +0 -1
- package/dist/esm/iterators/batch-iterators/timed-batch-iterator.js.map +1 -1
- package/dist/esm/iterators/make-iterator/make-array-buffer-iterator.js +16 -17
- package/dist/esm/iterators/make-iterator/make-array-buffer-iterator.js.map +1 -1
- package/dist/esm/iterators/make-iterator/make-blob-iterator.js +0 -1
- package/dist/esm/iterators/make-iterator/make-blob-iterator.js.map +1 -1
- package/dist/esm/iterators/make-iterator/make-iterator.js +0 -1
- package/dist/esm/iterators/make-iterator/make-iterator.js.map +1 -1
- package/dist/esm/iterators/make-iterator/make-stream-iterator.js +0 -3
- package/dist/esm/iterators/make-iterator/make-stream-iterator.js.map +1 -1
- package/dist/esm/iterators/make-iterator/make-string-iterator.js +0 -2
- package/dist/esm/iterators/make-iterator/make-string-iterator.js.map +1 -1
- package/dist/esm/iterators/make-stream/make-dom-stream.js +1 -3
- package/dist/esm/iterators/make-stream/make-dom-stream.js.map +1 -1
- package/dist/esm/iterators/make-stream/make-node-stream.js +3 -2
- package/dist/esm/iterators/make-stream/make-node-stream.js.map +1 -1
- package/dist/esm/javascript-utils/is-type.js +0 -4
- package/dist/esm/javascript-utils/is-type.js.map +1 -1
- package/dist/esm/lib/api/encode.js +0 -9
- package/dist/esm/lib/api/encode.js.map +1 -1
- package/dist/esm/lib/api/load-in-batches.js +1 -5
- package/dist/esm/lib/api/load-in-batches.js.map +1 -1
- package/dist/esm/lib/api/load.js +1 -6
- package/dist/esm/lib/api/load.js.map +1 -1
- package/dist/esm/lib/api/parse-in-batches.js +2 -16
- package/dist/esm/lib/api/parse-in-batches.js.map +1 -1
- package/dist/esm/lib/api/parse-sync.js +0 -8
- package/dist/esm/lib/api/parse-sync.js.map +1 -1
- package/dist/esm/lib/api/parse.js +0 -12
- package/dist/esm/lib/api/parse.js.map +1 -1
- package/dist/esm/lib/api/register-loaders.js +0 -3
- package/dist/esm/lib/api/register-loaders.js.map +1 -1
- package/dist/esm/lib/api/save.js.map +1 -1
- package/dist/esm/lib/api/select-loader.js +0 -20
- package/dist/esm/lib/api/select-loader.js.map +1 -1
- package/dist/esm/lib/fetch/fetch-error-message.js.map +1 -1
- package/dist/esm/lib/fetch/fetch-file.js +0 -1
- package/dist/esm/lib/fetch/fetch-file.js.map +1 -1
- package/dist/esm/lib/fetch/read-array-buffer.js +0 -3
- package/dist/esm/lib/fetch/read-array-buffer.js.map +1 -1
- package/dist/esm/lib/fetch/read-file.js +0 -4
- package/dist/esm/lib/fetch/read-file.js.map +1 -1
- package/dist/esm/lib/fetch/write-file.js +0 -1
- package/dist/esm/lib/fetch/write-file.js.map +1 -1
- package/dist/esm/lib/filesystems/browser-filesystem.js +1 -11
- package/dist/esm/lib/filesystems/browser-filesystem.js.map +1 -1
- package/dist/esm/lib/filesystems/read-array-buffer.js +0 -2
- package/dist/esm/lib/filesystems/read-array-buffer.js.map +1 -1
- package/dist/esm/lib/init.js +1 -4
- package/dist/esm/lib/init.js.map +1 -1
- package/dist/esm/lib/loader-utils/check-errors.js +1 -2
- package/dist/esm/lib/loader-utils/check-errors.js.map +1 -1
- package/dist/esm/lib/loader-utils/get-data.js +0 -6
- package/dist/esm/lib/loader-utils/get-data.js.map +1 -1
- package/dist/esm/lib/loader-utils/get-fetch-function.js +18 -0
- package/dist/esm/lib/loader-utils/get-fetch-function.js.map +1 -0
- package/dist/esm/lib/loader-utils/loader-context.js +1 -5
- package/dist/esm/lib/loader-utils/loader-context.js.map +1 -1
- package/dist/esm/lib/loader-utils/loggers.js +0 -3
- package/dist/esm/lib/loader-utils/loggers.js.map +1 -1
- package/dist/esm/lib/loader-utils/normalize-loader.js +0 -3
- package/dist/esm/lib/loader-utils/normalize-loader.js.map +1 -1
- package/dist/esm/lib/loader-utils/option-defaults.js +0 -2
- package/dist/esm/lib/loader-utils/option-defaults.js.map +1 -1
- package/dist/esm/lib/loader-utils/option-utils.js +0 -32
- package/dist/esm/lib/loader-utils/option-utils.js.map +1 -1
- package/dist/esm/lib/progress/fetch-progress.js +2 -6
- package/dist/esm/lib/progress/fetch-progress.js.map +1 -1
- package/dist/esm/lib/utils/log.js +0 -1
- package/dist/esm/lib/utils/log.js.map +1 -1
- package/dist/esm/lib/utils/mime-type-utils.js +0 -4
- package/dist/esm/lib/utils/mime-type-utils.js.map +1 -1
- package/dist/esm/lib/utils/resource-utils.js +0 -4
- package/dist/esm/lib/utils/resource-utils.js.map +1 -1
- package/dist/esm/lib/utils/response-utils.js +1 -12
- package/dist/esm/lib/utils/response-utils.js.map +1 -1
- package/dist/esm/null-loader.js +1 -4
- package/dist/esm/null-loader.js.map +1 -1
- package/dist/iterators/make-stream/make-node-stream.d.ts +7 -2
- package/dist/iterators/make-stream/make-node-stream.d.ts.map +1 -1
- package/dist/iterators/make-stream/make-node-stream.js +28 -2
- package/dist/lib/api/encode.d.ts +5 -5
- package/dist/lib/api/encode.d.ts.map +1 -1
- package/dist/lib/api/encode.js +1 -0
- package/dist/lib/api/load-in-batches.js +2 -2
- package/dist/lib/api/load.d.ts.map +1 -1
- package/dist/lib/api/load.js +3 -2
- package/dist/lib/fetch/fetch-file.js +1 -1
- package/dist/lib/loader-utils/get-fetch-function.d.ts +9 -0
- package/dist/lib/loader-utils/get-fetch-function.d.ts.map +1 -0
- package/dist/lib/loader-utils/get-fetch-function.js +31 -0
- package/dist/lib/loader-utils/loader-context.js +2 -2
- package/dist/lib/loader-utils/option-utils.d.ts +5 -15
- package/dist/lib/loader-utils/option-utils.d.ts.map +1 -1
- package/dist/lib/loader-utils/option-utils.js +10 -31
- package/dist/lib/progress/fetch-progress.js +2 -2
- package/dist/null-worker.js +1 -1
- package/package.json +5 -5
- package/src/iterators/make-stream/make-node-stream.ts +8 -2
- package/src/lib/api/encode.ts +7 -6
- package/src/lib/api/load-in-batches.ts +1 -1
- package/src/lib/api/load.ts +3 -2
- package/src/lib/loader-utils/get-fetch-function.ts +38 -0
- package/src/lib/loader-utils/loader-context.ts +1 -1
- package/src/lib/loader-utils/option-utils.ts +17 -44
- package/src/lib/progress/fetch-progress.ts +2 -2
|
@@ -24,50 +24,45 @@ function _parse() {
|
|
|
24
24
|
_parse = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(data, loaders, options, context) {
|
|
25
25
|
var _getResourceUrlAndTyp, url, typedLoaders, candidateLoaders, loader;
|
|
26
26
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
27
|
-
while (1) {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return _context.abrupt("return", _context.sent);
|
|
67
|
-
case 19:
|
|
68
|
-
case "end":
|
|
69
|
-
return _context.stop();
|
|
70
|
-
}
|
|
27
|
+
while (1) switch (_context.prev = _context.next) {
|
|
28
|
+
case 0:
|
|
29
|
+
(0, _workerUtils.assert)(!context || (0, _typeof2.default)(context) === 'object');
|
|
30
|
+
if (loaders && !Array.isArray(loaders) && !(0, _normalizeLoader.isLoaderObject)(loaders)) {
|
|
31
|
+
context = undefined;
|
|
32
|
+
options = loaders;
|
|
33
|
+
loaders = undefined;
|
|
34
|
+
}
|
|
35
|
+
_context.next = 4;
|
|
36
|
+
return data;
|
|
37
|
+
case 4:
|
|
38
|
+
data = _context.sent;
|
|
39
|
+
options = options || {};
|
|
40
|
+
_getResourceUrlAndTyp = (0, _resourceUtils.getResourceUrlAndType)(data), url = _getResourceUrlAndTyp.url;
|
|
41
|
+
typedLoaders = loaders;
|
|
42
|
+
candidateLoaders = (0, _loaderContext.getLoadersFromContext)(typedLoaders, context);
|
|
43
|
+
_context.next = 11;
|
|
44
|
+
return (0, _selectLoader.selectLoader)(data, candidateLoaders, options);
|
|
45
|
+
case 11:
|
|
46
|
+
loader = _context.sent;
|
|
47
|
+
if (loader) {
|
|
48
|
+
_context.next = 14;
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
return _context.abrupt("return", null);
|
|
52
|
+
case 14:
|
|
53
|
+
options = (0, _optionUtils.normalizeOptions)(options, loader, candidateLoaders, url);
|
|
54
|
+
context = (0, _loaderContext.getLoaderContext)({
|
|
55
|
+
url: url,
|
|
56
|
+
parse: parse,
|
|
57
|
+
loaders: candidateLoaders
|
|
58
|
+
}, options, context);
|
|
59
|
+
_context.next = 18;
|
|
60
|
+
return parseWithLoader(loader, data, options, context);
|
|
61
|
+
case 18:
|
|
62
|
+
return _context.abrupt("return", _context.sent);
|
|
63
|
+
case 19:
|
|
64
|
+
case "end":
|
|
65
|
+
return _context.stop();
|
|
71
66
|
}
|
|
72
67
|
}, _callee);
|
|
73
68
|
}));
|
|
@@ -80,69 +75,66 @@ function _parseWithLoader() {
|
|
|
80
75
|
_parseWithLoader = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(loader, data, options, context) {
|
|
81
76
|
var response, ok, redirected, status, statusText, type, url, headers;
|
|
82
77
|
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
83
|
-
while (1) {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
case "end":
|
|
144
|
-
return _context2.stop();
|
|
145
|
-
}
|
|
78
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
79
|
+
case 0:
|
|
80
|
+
(0, _workerUtils.validateWorkerVersion)(loader);
|
|
81
|
+
if ((0, _isType.isResponse)(data)) {
|
|
82
|
+
response = data;
|
|
83
|
+
ok = response.ok, redirected = response.redirected, status = response.status, statusText = response.statusText, type = response.type, url = response.url;
|
|
84
|
+
headers = Object.fromEntries(response.headers.entries());
|
|
85
|
+
context.response = {
|
|
86
|
+
headers: headers,
|
|
87
|
+
ok: ok,
|
|
88
|
+
redirected: redirected,
|
|
89
|
+
status: status,
|
|
90
|
+
statusText: statusText,
|
|
91
|
+
type: type,
|
|
92
|
+
url: url
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
_context2.next = 4;
|
|
96
|
+
return (0, _getData.getArrayBufferOrStringFromData)(data, loader, options);
|
|
97
|
+
case 4:
|
|
98
|
+
data = _context2.sent;
|
|
99
|
+
if (!(loader.parseTextSync && typeof data === 'string')) {
|
|
100
|
+
_context2.next = 8;
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
options.dataType = 'text';
|
|
104
|
+
return _context2.abrupt("return", loader.parseTextSync(data, options, context, loader));
|
|
105
|
+
case 8:
|
|
106
|
+
if (!(0, _loaderUtils.canParseWithWorker)(loader, options)) {
|
|
107
|
+
_context2.next = 12;
|
|
108
|
+
break;
|
|
109
|
+
}
|
|
110
|
+
_context2.next = 11;
|
|
111
|
+
return (0, _loaderUtils.parseWithWorker)(loader, data, options, context, parse);
|
|
112
|
+
case 11:
|
|
113
|
+
return _context2.abrupt("return", _context2.sent);
|
|
114
|
+
case 12:
|
|
115
|
+
if (!(loader.parseText && typeof data === 'string')) {
|
|
116
|
+
_context2.next = 16;
|
|
117
|
+
break;
|
|
118
|
+
}
|
|
119
|
+
_context2.next = 15;
|
|
120
|
+
return loader.parseText(data, options, context, loader);
|
|
121
|
+
case 15:
|
|
122
|
+
return _context2.abrupt("return", _context2.sent);
|
|
123
|
+
case 16:
|
|
124
|
+
if (!loader.parse) {
|
|
125
|
+
_context2.next = 20;
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
_context2.next = 19;
|
|
129
|
+
return loader.parse(data, options, context, loader);
|
|
130
|
+
case 19:
|
|
131
|
+
return _context2.abrupt("return", _context2.sent);
|
|
132
|
+
case 20:
|
|
133
|
+
(0, _workerUtils.assert)(!loader.parseSync);
|
|
134
|
+
throw new Error("".concat(loader.id, " loader - no parser found and worker is disabled"));
|
|
135
|
+
case 22:
|
|
136
|
+
case "end":
|
|
137
|
+
return _context2.stop();
|
|
146
138
|
}
|
|
147
139
|
}, _callee2);
|
|
148
140
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","names":["parse","data","loaders","options","context","assert","Array","isArray","isLoaderObject","undefined","getResourceUrlAndType","
|
|
1
|
+
{"version":3,"file":"parse.js","names":["_workerUtils","require","_loaderUtils","_normalizeLoader","_isType","_optionUtils","_getData","_loaderContext","_resourceUtils","_selectLoader","parse","_x","_x2","_x3","_x4","_parse","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","data","loaders","options","context","_getResourceUrlAndTyp","url","typedLoaders","candidateLoaders","loader","wrap","_callee$","_context","prev","next","assert","_typeof2","Array","isArray","isLoaderObject","undefined","sent","getResourceUrlAndType","getLoadersFromContext","selectLoader","abrupt","normalizeOptions","getLoaderContext","parseWithLoader","stop","_x5","_x6","_x7","_x8","_parseWithLoader","_callee2","response","ok","redirected","status","statusText","type","headers","_callee2$","_context2","validateWorkerVersion","isResponse","Object","fromEntries","entries","getArrayBufferOrStringFromData","parseTextSync","dataType","canParseWithWorker","parseWithWorker","parseText","parseSync","Error","concat","id"],"sources":["../../../../src/lib/api/parse.ts"],"sourcesContent":["import type {DataType, Loader, LoaderContext, LoaderOptions} from '@loaders.gl/loader-utils';\nimport {assert, validateWorkerVersion} from '@loaders.gl/worker-utils';\nimport {parseWithWorker, canParseWithWorker} from '@loaders.gl/loader-utils';\nimport {isLoaderObject} from '../loader-utils/normalize-loader';\nimport {isResponse} from '../../javascript-utils/is-type';\nimport {normalizeOptions} from '../loader-utils/option-utils';\nimport {getArrayBufferOrStringFromData} from '../loader-utils/get-data';\nimport {getLoaderContext, getLoadersFromContext} from '../loader-utils/loader-context';\nimport {getResourceUrlAndType} from '../utils/resource-utils';\nimport {selectLoader} from './select-loader';\n\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\nexport async function parse(\n data: DataType | Promise<DataType>,\n loaders?: Loader | Loader[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<any> {\n assert(!context || typeof context === 'object'); // parse no longer accepts final url\n\n // Signature: parse(data, options, context | url)\n // Uses registered loaders\n if (loaders && !Array.isArray(loaders) && !isLoaderObject(loaders)) {\n context = undefined; // context not supported in short signature\n options = loaders as LoaderOptions;\n loaders = undefined;\n }\n\n data = await data; // Resolve any promise\n options = options || {};\n\n // Extract a url for auto detection\n const {url} = getResourceUrlAndType(data);\n\n // Chooses a loader (and normalizes it)\n // Also use any loaders in the context, new loaders take priority\n const typedLoaders = loaders as Loader | Loader[] | undefined;\n const candidateLoaders = getLoadersFromContext(typedLoaders, context);\n // todo hacky type cast\n const loader = await selectLoader(data as ArrayBuffer, candidateLoaders, options);\n // Note: if no loader was found, if so just return null\n if (!loader) {\n return null;\n }\n\n // Normalize options\n options = normalizeOptions(options, loader, candidateLoaders, url);\n\n // Get a context (if already present, will be unchanged)\n context = getLoaderContext({url, parse, loaders: candidateLoaders}, options, context);\n\n return await parseWithLoader(loader, data, options, context);\n}\n\n// TODO: support progress and abort\n// TODO - should accept loader.parseAsyncIterator and concatenate.\nasync function parseWithLoader(loader, data, options, context) {\n validateWorkerVersion(loader);\n\n if (isResponse(data)) {\n // Serialize to support passing the response to web worker\n const response = data as Response;\n const {ok, redirected, status, statusText, type, url} = response;\n const headers = Object.fromEntries(response.headers.entries());\n context.response = {headers, ok, redirected, status, statusText, type, url};\n }\n\n data = await getArrayBufferOrStringFromData(data, loader, options);\n\n // First check for synchronous text parser, wrap results in promises\n if (loader.parseTextSync && typeof data === 'string') {\n options.dataType = 'text';\n return loader.parseTextSync(data, options, context, loader);\n }\n\n // If we have a workerUrl and the loader can parse the given options efficiently in a worker\n if (canParseWithWorker(loader, options)) {\n return await parseWithWorker(loader, data, options, context, parse);\n }\n\n // Check for asynchronous parser\n if (loader.parseText && typeof data === 'string') {\n return await loader.parseText(data, options, context, loader);\n }\n\n if (loader.parse) {\n return await loader.parse(data, options, context, loader);\n }\n\n // This should not happen, all sync loaders should also offer `parse` function\n assert(!loader.parseSync);\n\n // TBD - If asynchronous parser not available, return null\n throw new Error(`${loader.id} loader - no parser found and worker is disabled`);\n}\n"],"mappings":"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"}
|
|
@@ -10,13 +10,12 @@ var _normalizeLoader = require("../loader-utils/normalize-loader");
|
|
|
10
10
|
var _optionUtils = require("../loader-utils/option-utils");
|
|
11
11
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
12
12
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
13
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++)
|
|
13
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
14
14
|
var getGlobalLoaderRegistry = function getGlobalLoaderRegistry() {
|
|
15
15
|
var state = (0, _optionUtils.getGlobalLoaderState)();
|
|
16
16
|
state.loaderRegistry = state.loaderRegistry || [];
|
|
17
17
|
return state.loaderRegistry;
|
|
18
18
|
};
|
|
19
|
-
|
|
20
19
|
function registerLoaders(loaders) {
|
|
21
20
|
var loaderRegistry = getGlobalLoaderRegistry();
|
|
22
21
|
loaders = Array.isArray(loaders) ? loaders : [loaders];
|
|
@@ -44,7 +43,6 @@ function registerLoaders(loaders) {
|
|
|
44
43
|
function getRegisteredLoaders() {
|
|
45
44
|
return getGlobalLoaderRegistry();
|
|
46
45
|
}
|
|
47
|
-
|
|
48
46
|
function _unregisterLoaders() {
|
|
49
47
|
var state = (0, _optionUtils.getGlobalLoaderState)();
|
|
50
48
|
state.loaderRegistry = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-loaders.js","names":["getGlobalLoaderRegistry","state","getGlobalLoaderState","loaderRegistry","registerLoaders","loaders","
|
|
1
|
+
{"version":3,"file":"register-loaders.js","names":["_normalizeLoader","require","_optionUtils","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","getGlobalLoaderRegistry","state","getGlobalLoaderState","loaderRegistry","registerLoaders","loaders","_iterator","_step","_loop","loader","normalizedLoader","normalizeLoader","find","registeredLoader","unshift","getRegisteredLoaders","_unregisterLoaders"],"sources":["../../../../src/lib/api/register-loaders.ts"],"sourcesContent":["import {Loader} from '@loaders.gl/loader-utils';\nimport {normalizeLoader} from '../loader-utils/normalize-loader';\nimport {getGlobalLoaderState} from '../loader-utils/option-utils';\n\n// Store global registered loaders on the global object to increase chances of cross loaders-version interoperability\n// This use case is not reliable but can help when testing new versions of loaders.gl with existing frameworks\nconst getGlobalLoaderRegistry = () => {\n const state = getGlobalLoaderState();\n state.loaderRegistry = state.loaderRegistry || [];\n return state.loaderRegistry;\n};\n\n/** Register a list of global loaders */\nexport function registerLoaders(loaders: Loader[] | Loader) {\n const loaderRegistry = getGlobalLoaderRegistry();\n\n loaders = Array.isArray(loaders) ? loaders : [loaders];\n\n for (const loader of loaders) {\n const normalizedLoader = normalizeLoader(loader);\n if (!loaderRegistry.find((registeredLoader) => normalizedLoader === registeredLoader)) {\n // add to the beginning of the loaderRegistry, so the last registeredLoader get picked\n loaderRegistry.unshift(normalizedLoader);\n }\n }\n}\n\nexport function getRegisteredLoaders(): Loader[] {\n return getGlobalLoaderRegistry();\n}\n\n/** @deprecated For testing only */\nexport function _unregisterLoaders() {\n const state = getGlobalLoaderState();\n state.loaderRegistry = [];\n}\n"],"mappings":"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"}
|
package/dist/es5/lib/api/save.js
CHANGED
|
@@ -17,21 +17,19 @@ function _save() {
|
|
|
17
17
|
_save = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(data, url, writer, options) {
|
|
18
18
|
var encodedData;
|
|
19
19
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
20
|
-
while (1) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return _context.stop();
|
|
34
|
-
}
|
|
20
|
+
while (1) switch (_context.prev = _context.next) {
|
|
21
|
+
case 0:
|
|
22
|
+
_context.next = 2;
|
|
23
|
+
return (0, _encode.encode)(data, writer, options);
|
|
24
|
+
case 2:
|
|
25
|
+
encodedData = _context.sent;
|
|
26
|
+
_context.next = 5;
|
|
27
|
+
return (0, _writeFile.writeFile)(url, encodedData);
|
|
28
|
+
case 5:
|
|
29
|
+
return _context.abrupt("return", _context.sent);
|
|
30
|
+
case 6:
|
|
31
|
+
case "end":
|
|
32
|
+
return _context.stop();
|
|
35
33
|
}
|
|
36
34
|
}, _callee);
|
|
37
35
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"save.js","names":["save","data","url","writer","options","encode","
|
|
1
|
+
{"version":3,"file":"save.js","names":["_encode","require","_writeFile","save","_x","_x2","_x3","_x4","_save","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","data","url","writer","options","encodedData","wrap","_callee$","_context","prev","next","encode","sent","writeFile","abrupt","stop","saveSync","encodeSync","writeFileSync"],"sources":["../../../../src/lib/api/save.ts"],"sourcesContent":["import type {Writer, WriterOptions} from '@loaders.gl/loader-utils';\nimport {encode, encodeSync} from './encode';\nimport {writeFile, writeFileSync} from '../fetch/write-file';\n\nexport async function save(data, url, writer: Writer, options: WriterOptions) {\n const encodedData = await encode(data, writer, options);\n return await writeFile(url, encodedData);\n}\n\nexport function saveSync(data, url, writer, options) {\n const encodedData = encodeSync(data, writer, options);\n return writeFileSync(url, encodedData);\n}\n"],"mappings":";;;;;;;;;;AACA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAA6D,SAEvCE,IAAIA,CAAAC,EAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,KAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAF,MAAA;EAAAA,KAAA,OAAAG,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAnB,SAAAC,QAAoBC,IAAI,EAAEC,GAAG,EAAEC,MAAc,EAAEC,OAAsB;IAAA,IAAAC,WAAA;IAAA,OAAAP,YAAA,CAAAD,OAAA,CAAAS,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAAAF,QAAA,CAAAE,IAAA;UAAA,OAChD,IAAAC,cAAM,EAACV,IAAI,EAAEE,MAAM,EAAEC,OAAO,CAAC;QAAA;UAAjDC,WAAW,GAAAG,QAAA,CAAAI,IAAA;UAAAJ,QAAA,CAAAE,IAAA;UAAA,OACJ,IAAAG,oBAAS,EAACX,GAAG,EAAEG,WAAW,CAAC;QAAA;UAAA,OAAAG,QAAA,CAAAM,MAAA,WAAAN,QAAA,CAAAI,IAAA;QAAA;QAAA;UAAA,OAAAJ,QAAA,CAAAO,IAAA;MAAA;IAAA,GAAAf,OAAA;EAAA,CACzC;EAAA,OAAAP,KAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAEM,SAASqB,QAAQA,CAACf,IAAI,EAAEC,GAAG,EAAEC,MAAM,EAAEC,OAAO,EAAE;EACnD,IAAMC,WAAW,GAAG,IAAAY,kBAAU,EAAChB,IAAI,EAAEE,MAAM,EAAEC,OAAO,CAAC;EACrD,OAAO,IAAAc,wBAAa,EAAChB,GAAG,EAAEG,WAAW,CAAC;AACxC"}
|
|
@@ -21,9 +21,8 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
21
21
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
22
22
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
23
23
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
24
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++)
|
|
24
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
25
25
|
var EXT_PATTERN = /\.([^.]+)$/;
|
|
26
|
-
|
|
27
26
|
function selectLoader(_x) {
|
|
28
27
|
return _selectLoader.apply(this, arguments);
|
|
29
28
|
}
|
|
@@ -35,48 +34,46 @@ function _selectLoader() {
|
|
|
35
34
|
loader,
|
|
36
35
|
_args = arguments;
|
|
37
36
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
38
|
-
while (1) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
return _context.stop();
|
|
79
|
-
}
|
|
37
|
+
while (1) switch (_context.prev = _context.next) {
|
|
38
|
+
case 0:
|
|
39
|
+
loaders = _args.length > 1 && _args[1] !== undefined ? _args[1] : [];
|
|
40
|
+
options = _args.length > 2 ? _args[2] : undefined;
|
|
41
|
+
context = _args.length > 3 ? _args[3] : undefined;
|
|
42
|
+
if (validHTTPResponse(data)) {
|
|
43
|
+
_context.next = 5;
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
return _context.abrupt("return", null);
|
|
47
|
+
case 5:
|
|
48
|
+
loader = selectLoaderSync(data, loaders, _objectSpread(_objectSpread({}, options), {}, {
|
|
49
|
+
nothrow: true
|
|
50
|
+
}), context);
|
|
51
|
+
if (!loader) {
|
|
52
|
+
_context.next = 8;
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
return _context.abrupt("return", loader);
|
|
56
|
+
case 8:
|
|
57
|
+
if (!(0, _isType.isBlob)(data)) {
|
|
58
|
+
_context.next = 13;
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
_context.next = 11;
|
|
62
|
+
return data.slice(0, 10).arrayBuffer();
|
|
63
|
+
case 11:
|
|
64
|
+
data = _context.sent;
|
|
65
|
+
loader = selectLoaderSync(data, loaders, options, context);
|
|
66
|
+
case 13:
|
|
67
|
+
if (!(!loader && !(options !== null && options !== void 0 && options.nothrow))) {
|
|
68
|
+
_context.next = 15;
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
throw new Error(getNoValidLoaderMessage(data));
|
|
72
|
+
case 15:
|
|
73
|
+
return _context.abrupt("return", loader);
|
|
74
|
+
case 16:
|
|
75
|
+
case "end":
|
|
76
|
+
return _context.stop();
|
|
80
77
|
}
|
|
81
78
|
}, _callee);
|
|
82
79
|
}));
|
|
@@ -89,11 +86,9 @@ function selectLoaderSync(data) {
|
|
|
89
86
|
if (!validHTTPResponse(data)) {
|
|
90
87
|
return null;
|
|
91
88
|
}
|
|
92
|
-
|
|
93
89
|
if (loaders && !Array.isArray(loaders)) {
|
|
94
90
|
return (0, _normalizeLoader.normalizeLoader)(loaders);
|
|
95
91
|
}
|
|
96
|
-
|
|
97
92
|
var candidateLoaders = [];
|
|
98
93
|
if (loaders) {
|
|
99
94
|
candidateLoaders = candidateLoaders.concat(loaders);
|
|
@@ -102,16 +97,13 @@ function selectLoaderSync(data) {
|
|
|
102
97
|
var _candidateLoaders;
|
|
103
98
|
(_candidateLoaders = candidateLoaders).push.apply(_candidateLoaders, (0, _toConsumableArray2.default)((0, _registerLoaders.getRegisteredLoaders)()));
|
|
104
99
|
}
|
|
105
|
-
|
|
106
100
|
normalizeLoaders(candidateLoaders);
|
|
107
101
|
var loader = selectLoaderInternal(data, candidateLoaders, options, context);
|
|
108
|
-
|
|
109
102
|
if (!loader && !(options !== null && options !== void 0 && options.nothrow)) {
|
|
110
103
|
throw new Error(getNoValidLoaderMessage(data));
|
|
111
104
|
}
|
|
112
105
|
return loader;
|
|
113
106
|
}
|
|
114
|
-
|
|
115
107
|
function selectLoaderInternal(data, loaders, options, context) {
|
|
116
108
|
var _getResourceUrlAndTyp = (0, _resourceUtils.getResourceUrlAndType)(data),
|
|
117
109
|
url = _getResourceUrlAndTyp.url,
|
|
@@ -119,21 +111,16 @@ function selectLoaderInternal(data, loaders, options, context) {
|
|
|
119
111
|
var testUrl = url || (context === null || context === void 0 ? void 0 : context.url);
|
|
120
112
|
var loader = null;
|
|
121
113
|
var reason = '';
|
|
122
|
-
|
|
123
114
|
if (options !== null && options !== void 0 && options.mimeType) {
|
|
124
115
|
loader = findLoaderByMIMEType(loaders, options === null || options === void 0 ? void 0 : options.mimeType);
|
|
125
116
|
reason = "match forced by supplied MIME type ".concat(options === null || options === void 0 ? void 0 : options.mimeType);
|
|
126
117
|
}
|
|
127
|
-
|
|
128
118
|
loader = loader || findLoaderByUrl(loaders, testUrl);
|
|
129
119
|
reason = reason || (loader ? "matched url ".concat(testUrl) : '');
|
|
130
|
-
|
|
131
120
|
loader = loader || findLoaderByMIMEType(loaders, type);
|
|
132
121
|
reason = reason || (loader ? "matched MIME type ".concat(type) : '');
|
|
133
|
-
|
|
134
122
|
loader = loader || findLoaderByInitialBytes(loaders, data);
|
|
135
123
|
reason = reason || (loader ? "matched initial data ".concat(getFirstCharacters(data)) : '');
|
|
136
|
-
|
|
137
124
|
loader = loader || findLoaderByMIMEType(loaders, options === null || options === void 0 ? void 0 : options.fallbackMimeType);
|
|
138
125
|
reason = reason || (loader ? "matched fallback MIME type ".concat(type) : '');
|
|
139
126
|
if (reason) {
|
|
@@ -142,7 +129,6 @@ function selectLoaderInternal(data, loaders, options, context) {
|
|
|
142
129
|
}
|
|
143
130
|
return loader;
|
|
144
131
|
}
|
|
145
|
-
|
|
146
132
|
function validHTTPResponse(data) {
|
|
147
133
|
if (data instanceof Response) {
|
|
148
134
|
if (data.status === 204) {
|
|
@@ -151,7 +137,6 @@ function validHTTPResponse(data) {
|
|
|
151
137
|
}
|
|
152
138
|
return true;
|
|
153
139
|
}
|
|
154
|
-
|
|
155
140
|
function getNoValidLoaderMessage(data) {
|
|
156
141
|
var _getResourceUrlAndTyp2 = (0, _resourceUtils.getResourceUrlAndType)(data),
|
|
157
142
|
url = _getResourceUrlAndTyp2.url,
|
|
@@ -178,7 +163,6 @@ function normalizeLoaders(loaders) {
|
|
|
178
163
|
_iterator.f();
|
|
179
164
|
}
|
|
180
165
|
}
|
|
181
|
-
|
|
182
166
|
function findLoaderByUrl(loaders, url) {
|
|
183
167
|
var match = url && EXT_PATTERN.exec(url);
|
|
184
168
|
var extension = match && match[1];
|
|
@@ -222,7 +206,6 @@ function findLoaderByMIMEType(loaders, mimeType) {
|
|
|
222
206
|
if (loader.mimeTypes && loader.mimeTypes.includes(mimeType)) {
|
|
223
207
|
return loader;
|
|
224
208
|
}
|
|
225
|
-
|
|
226
209
|
if (mimeType === "application/x.".concat(loader.id)) {
|
|
227
210
|
return loader;
|
|
228
211
|
}
|