@loaders.gl/core 4.0.0-alpha.23 → 4.0.0-alpha.25
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 +109 -128
- package/dist/es5/index.js +6 -0
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/lib/api/encode-table.js +6 -4
- package/dist/es5/lib/api/encode-table.js.map +1 -1
- package/dist/es5/lib/api/encode.js +14 -4
- package/dist/es5/lib/api/encode.js.map +1 -1
- package/dist/es5/lib/api/load-in-batches.js +34 -8
- package/dist/es5/lib/api/load-in-batches.js.map +1 -1
- package/dist/es5/lib/api/parse-in-batches.js +1 -1
- package/dist/es5/lib/api/parse-in-batches.js.map +1 -1
- package/dist/es5/lib/api/parse.js +18 -17
- package/dist/es5/lib/api/parse.js.map +1 -1
- package/dist/es5/lib/init.js +1 -1
- package/dist/es5/lib/loader-utils/get-data.js +1 -1
- package/dist/es5/lib/loader-utils/get-data.js.map +1 -1
- package/dist/es5/null-loader.js +1 -1
- package/dist/esm/index.js +2 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/api/encode-table.js +2 -2
- package/dist/esm/lib/api/encode-table.js.map +1 -1
- package/dist/esm/lib/api/encode.js +12 -2
- package/dist/esm/lib/api/encode.js.map +1 -1
- package/dist/esm/lib/api/load-in-batches.js +2 -2
- package/dist/esm/lib/api/load-in-batches.js.map +1 -1
- package/dist/esm/lib/api/parse-in-batches.js +1 -1
- package/dist/esm/lib/api/parse-in-batches.js.map +1 -1
- package/dist/esm/lib/api/parse.js +2 -0
- package/dist/esm/lib/api/parse.js.map +1 -1
- package/dist/esm/lib/init.js +1 -1
- package/dist/esm/lib/loader-utils/get-data.js +1 -1
- package/dist/esm/lib/loader-utils/get-data.js.map +1 -1
- package/dist/esm/null-loader.js +1 -1
- package/dist/null-worker-node.js +1 -1
- package/dist/null-worker.js +1 -1
- package/dist/src/bundle.d.ts.map +1 -0
- package/dist/src/core-addons/write-file-browser.d.ts.map +1 -0
- package/dist/{index.d.ts → src/index.d.ts} +2 -1
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/iterators/batch-iterators/timed-batch-iterator.d.ts.map +1 -0
- package/dist/src/iterators/make-iterator/make-array-buffer-iterator.d.ts.map +1 -0
- package/dist/src/iterators/make-iterator/make-blob-iterator.d.ts.map +1 -0
- package/dist/src/iterators/make-iterator/make-iterator.d.ts.map +1 -0
- package/dist/src/iterators/make-iterator/make-stream-iterator.d.ts.map +1 -0
- package/dist/src/iterators/make-iterator/make-string-iterator.d.ts.map +1 -0
- package/dist/src/iterators/make-stream/make-dom-stream.d.ts.map +1 -0
- package/dist/src/iterators/make-stream/make-node-stream.d.ts.map +1 -0
- package/dist/src/javascript-utils/is-type.d.ts.map +1 -0
- package/dist/src/lib/api/encode-table.d.ts.map +1 -0
- package/dist/{lib → src/lib}/api/encode.d.ts +7 -0
- package/dist/src/lib/api/encode.d.ts.map +1 -0
- package/dist/src/lib/api/load-in-batches.d.ts.map +1 -0
- package/dist/src/lib/api/load.d.ts.map +1 -0
- package/dist/src/lib/api/loader-options.d.ts.map +1 -0
- package/dist/src/lib/api/parse-in-batches.d.ts.map +1 -0
- package/dist/src/lib/api/parse-sync.d.ts.map +1 -0
- package/dist/src/lib/api/parse.d.ts.map +1 -0
- package/dist/src/lib/api/register-loaders.d.ts.map +1 -0
- package/dist/src/lib/api/save.d.ts.map +1 -0
- package/dist/src/lib/api/select-loader.d.ts.map +1 -0
- package/dist/src/lib/common.d.ts.map +1 -0
- package/dist/src/lib/fetch/fetch-error-message.d.ts.map +1 -0
- package/dist/src/lib/fetch/fetch-file.d.ts.map +1 -0
- package/dist/src/lib/fetch/fetch-file.node.d.ts.map +1 -0
- package/dist/src/lib/fetch/read-array-buffer.d.ts.map +1 -0
- package/dist/src/lib/fetch/read-file.d.ts.map +1 -0
- package/dist/src/lib/fetch/write-file.d.ts.map +1 -0
- package/dist/src/lib/filesystems/browser-filesystem.d.ts.map +1 -0
- package/dist/src/lib/filesystems/read-array-buffer.d.ts.map +1 -0
- package/dist/{lib → src/lib}/init.d.ts.map +1 -1
- package/dist/src/lib/loader-utils/check-errors.d.ts.map +1 -0
- package/dist/src/lib/loader-utils/get-data.d.ts.map +1 -0
- package/dist/src/lib/loader-utils/get-fetch-function.d.ts.map +1 -0
- package/dist/src/lib/loader-utils/loader-context.d.ts.map +1 -0
- package/dist/src/lib/loader-utils/loggers.d.ts.map +1 -0
- package/dist/src/lib/loader-utils/normalize-loader.d.ts.map +1 -0
- package/dist/src/lib/loader-utils/option-defaults.d.ts.map +1 -0
- package/dist/src/lib/loader-utils/option-utils.d.ts.map +1 -0
- package/dist/src/lib/progress/fetch-progress.d.ts.map +1 -0
- package/dist/src/lib/utils/log.d.ts.map +1 -0
- package/dist/src/lib/utils/mime-type-utils.d.ts.map +1 -0
- package/dist/src/lib/utils/resource-utils.d.ts.map +1 -0
- package/dist/src/lib/utils/response-utils.d.ts.map +1 -0
- package/dist/src/lib/utils/url-utils.d.ts.map +1 -0
- package/dist/src/null-loader.d.ts.map +1 -0
- package/dist/src/workers/null-worker.d.ts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +4 -7
- package/src/index.ts +2 -1
- package/src/lib/api/encode-table.ts +3 -3
- package/src/lib/api/encode.ts +21 -2
- package/src/lib/api/load-in-batches.ts +10 -5
- package/src/lib/api/parse-in-batches.ts +2 -3
- package/src/lib/api/parse.ts +3 -0
- package/src/lib/loader-utils/get-data.ts +1 -2
- package/dist/bundle.d.ts.map +0 -1
- package/dist/bundle.js +0 -5
- package/dist/core-addons/write-file-browser.d.ts.map +0 -1
- package/dist/core-addons/write-file-browser.js +0 -60
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -105
- package/dist/iterators/batch-iterators/timed-batch-iterator.d.ts.map +0 -1
- package/dist/iterators/batch-iterators/timed-batch-iterator.js +0 -22
- package/dist/iterators/make-iterator/make-array-buffer-iterator.d.ts.map +0 -1
- package/dist/iterators/make-iterator/make-array-buffer-iterator.js +0 -27
- package/dist/iterators/make-iterator/make-blob-iterator.d.ts.map +0 -1
- package/dist/iterators/make-iterator/make-blob-iterator.js +0 -21
- package/dist/iterators/make-iterator/make-iterator.d.ts.map +0 -1
- package/dist/iterators/make-iterator/make-iterator.js +0 -37
- package/dist/iterators/make-iterator/make-stream-iterator.d.ts.map +0 -1
- package/dist/iterators/make-iterator/make-stream-iterator.js +0 -96
- package/dist/iterators/make-iterator/make-string-iterator.d.ts.map +0 -1
- package/dist/iterators/make-iterator/make-string-iterator.js +0 -24
- package/dist/iterators/make-stream/make-dom-stream.d.ts.map +0 -1
- package/dist/iterators/make-stream/make-dom-stream.js +0 -47
- package/dist/iterators/make-stream/make-node-stream.d.ts.map +0 -1
- package/dist/iterators/make-stream/make-node-stream.js +0 -85
- package/dist/javascript-utils/is-type.d.ts.map +0 -1
- package/dist/javascript-utils/is-type.js +0 -41
- package/dist/lib/api/encode-table.d.ts.map +0 -1
- package/dist/lib/api/encode-table.js +0 -54
- package/dist/lib/api/encode.d.ts.map +0 -1
- package/dist/lib/api/encode.js +0 -121
- package/dist/lib/api/load-in-batches.d.ts.map +0 -1
- package/dist/lib/api/load-in-batches.js +0 -40
- package/dist/lib/api/load.d.ts.map +0 -1
- package/dist/lib/api/load.js +0 -43
- package/dist/lib/api/loader-options.d.ts.map +0 -1
- package/dist/lib/api/loader-options.js +0 -7
- package/dist/lib/api/parse-in-batches.d.ts.map +0 -1
- package/dist/lib/api/parse-in-batches.js +0 -117
- package/dist/lib/api/parse-sync.d.ts.map +0 -1
- package/dist/lib/api/parse-sync.js +0 -54
- package/dist/lib/api/parse.d.ts.map +0 -1
- package/dist/lib/api/parse.js +0 -87
- package/dist/lib/api/register-loaders.d.ts.map +0 -1
- package/dist/lib/api/register-loaders.js +0 -35
- package/dist/lib/api/save.d.ts.map +0 -1
- package/dist/lib/api/save.js +0 -15
- package/dist/lib/api/select-loader.d.ts.map +0 -1
- package/dist/lib/api/select-loader.js +0 -258
- package/dist/lib/common.d.ts.map +0 -1
- package/dist/lib/common.js +0 -2
- package/dist/lib/fetch/fetch-error-message.d.ts.map +0 -1
- package/dist/lib/fetch/fetch-error-message.js +0 -25
- package/dist/lib/fetch/fetch-file.d.ts.map +0 -1
- package/dist/lib/fetch/fetch-file.js +0 -61
- package/dist/lib/fetch/fetch-file.node.d.ts.map +0 -1
- package/dist/lib/fetch/fetch-file.node.js +0 -57
- package/dist/lib/fetch/read-array-buffer.d.ts.map +0 -1
- package/dist/lib/fetch/read-array-buffer.js +0 -41
- package/dist/lib/fetch/read-file.d.ts.map +0 -1
- package/dist/lib/fetch/read-file.js +0 -29
- package/dist/lib/fetch/write-file.d.ts.map +0 -1
- package/dist/lib/fetch/write-file.js +0 -22
- package/dist/lib/filesystems/browser-filesystem.d.ts.map +0 -1
- package/dist/lib/filesystems/browser-filesystem.js +0 -127
- package/dist/lib/filesystems/read-array-buffer.d.ts.map +0 -1
- package/dist/lib/filesystems/read-array-buffer.js +0 -29
- package/dist/lib/init.js +0 -17
- package/dist/lib/loader-utils/check-errors.d.ts.map +0 -1
- package/dist/lib/loader-utils/check-errors.js +0 -46
- package/dist/lib/loader-utils/get-data.d.ts.map +0 -1
- package/dist/lib/loader-utils/get-data.js +0 -130
- package/dist/lib/loader-utils/get-fetch-function.d.ts.map +0 -1
- package/dist/lib/loader-utils/get-fetch-function.js +0 -31
- package/dist/lib/loader-utils/loader-context.d.ts.map +0 -1
- package/dist/lib/loader-utils/loader-context.js +0 -59
- package/dist/lib/loader-utils/loggers.d.ts.map +0 -1
- package/dist/lib/loader-utils/loggers.js +0 -41
- package/dist/lib/loader-utils/normalize-loader.d.ts.map +0 -1
- package/dist/lib/loader-utils/normalize-loader.js +0 -52
- package/dist/lib/loader-utils/option-defaults.d.ts.map +0 -1
- package/dist/lib/loader-utils/option-defaults.js +0 -44
- package/dist/lib/loader-utils/option-utils.d.ts.map +0 -1
- package/dist/lib/loader-utils/option-utils.js +0 -162
- package/dist/lib/progress/fetch-progress.d.ts.map +0 -1
- package/dist/lib/progress/fetch-progress.js +0 -60
- package/dist/lib/utils/log.d.ts.map +0 -1
- package/dist/lib/utils/log.js +0 -6
- package/dist/lib/utils/mime-type-utils.d.ts.map +0 -1
- package/dist/lib/utils/mime-type-utils.js +0 -42
- package/dist/lib/utils/resource-utils.d.ts.map +0 -1
- package/dist/lib/utils/resource-utils.js +0 -90
- package/dist/lib/utils/response-utils.d.ts.map +0 -1
- package/dist/lib/utils/response-utils.js +0 -115
- package/dist/lib/utils/url-utils.d.ts.map +0 -1
- package/dist/lib/utils/url-utils.js +0 -14
- package/dist/null-loader.d.ts.map +0 -1
- package/dist/null-loader.js +0 -51
- package/dist/workers/null-worker.d.ts.map +0 -1
- package/dist/workers/null-worker.js +0 -5
- /package/dist/{bundle.d.ts → src/bundle.d.ts} +0 -0
- /package/dist/{core-addons → src/core-addons}/write-file-browser.d.ts +0 -0
- /package/dist/{iterators → src/iterators}/batch-iterators/timed-batch-iterator.d.ts +0 -0
- /package/dist/{iterators → src/iterators}/make-iterator/make-array-buffer-iterator.d.ts +0 -0
- /package/dist/{iterators → src/iterators}/make-iterator/make-blob-iterator.d.ts +0 -0
- /package/dist/{iterators → src/iterators}/make-iterator/make-iterator.d.ts +0 -0
- /package/dist/{iterators → src/iterators}/make-iterator/make-stream-iterator.d.ts +0 -0
- /package/dist/{iterators → src/iterators}/make-iterator/make-string-iterator.d.ts +0 -0
- /package/dist/{iterators → src/iterators}/make-stream/make-dom-stream.d.ts +0 -0
- /package/dist/{iterators → src/iterators}/make-stream/make-node-stream.d.ts +0 -0
- /package/dist/{javascript-utils → src/javascript-utils}/is-type.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/encode-table.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/load-in-batches.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/load.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/loader-options.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/parse-in-batches.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/parse-sync.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/parse.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/register-loaders.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/save.d.ts +0 -0
- /package/dist/{lib → src/lib}/api/select-loader.d.ts +0 -0
- /package/dist/{lib → src/lib}/common.d.ts +0 -0
- /package/dist/{lib → src/lib}/fetch/fetch-error-message.d.ts +0 -0
- /package/dist/{lib → src/lib}/fetch/fetch-file.d.ts +0 -0
- /package/dist/{lib → src/lib}/fetch/fetch-file.node.d.ts +0 -0
- /package/dist/{lib → src/lib}/fetch/read-array-buffer.d.ts +0 -0
- /package/dist/{lib → src/lib}/fetch/read-file.d.ts +0 -0
- /package/dist/{lib → src/lib}/fetch/write-file.d.ts +0 -0
- /package/dist/{lib → src/lib}/filesystems/browser-filesystem.d.ts +0 -0
- /package/dist/{lib → src/lib}/filesystems/read-array-buffer.d.ts +0 -0
- /package/dist/{lib → src/lib}/init.d.ts +0 -0
- /package/dist/{lib → src/lib}/loader-utils/check-errors.d.ts +0 -0
- /package/dist/{lib → src/lib}/loader-utils/get-data.d.ts +0 -0
- /package/dist/{lib → src/lib}/loader-utils/get-fetch-function.d.ts +0 -0
- /package/dist/{lib → src/lib}/loader-utils/loader-context.d.ts +0 -0
- /package/dist/{lib → src/lib}/loader-utils/loggers.d.ts +0 -0
- /package/dist/{lib → src/lib}/loader-utils/normalize-loader.d.ts +0 -0
- /package/dist/{lib → src/lib}/loader-utils/option-defaults.d.ts +0 -0
- /package/dist/{lib → src/lib}/loader-utils/option-utils.d.ts +0 -0
- /package/dist/{lib → src/lib}/progress/fetch-progress.d.ts +0 -0
- /package/dist/{lib → src/lib}/utils/log.d.ts +0 -0
- /package/dist/{lib → src/lib}/utils/mime-type-utils.d.ts +0 -0
- /package/dist/{lib → src/lib}/utils/resource-utils.d.ts +0 -0
- /package/dist/{lib → src/lib}/utils/response-utils.d.ts +0 -0
- /package/dist/{lib → src/lib}/utils/url-utils.d.ts +0 -0
- /package/dist/{null-loader.d.ts → src/null-loader.d.ts} +0 -0
- /package/dist/{workers → src/workers}/null-worker.d.ts +0 -0
|
@@ -8,6 +8,7 @@ exports.encode = encode;
|
|
|
8
8
|
exports.encodeInBatches = encodeInBatches;
|
|
9
9
|
exports.encodeSync = encodeSync;
|
|
10
10
|
exports.encodeText = encodeText;
|
|
11
|
+
exports.encodeTextSync = encodeTextSync;
|
|
11
12
|
exports.encodeURLtoURL = encodeURLtoURL;
|
|
12
13
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
13
14
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
@@ -184,7 +185,7 @@ function _encodeText() {
|
|
|
184
185
|
arrayBuffer = _context2.sent;
|
|
185
186
|
return _context2.abrupt("return", new TextDecoder().decode(arrayBuffer));
|
|
186
187
|
case 9:
|
|
187
|
-
throw new Error(
|
|
188
|
+
throw new Error("Writer ".concat(writer.name, " could not encode data as text"));
|
|
188
189
|
case 10:
|
|
189
190
|
case "end":
|
|
190
191
|
return _context2.stop();
|
|
@@ -193,6 +194,16 @@ function _encodeText() {
|
|
|
193
194
|
}));
|
|
194
195
|
return _encodeText.apply(this, arguments);
|
|
195
196
|
}
|
|
197
|
+
function encodeTextSync(data, writer, options) {
|
|
198
|
+
if (writer.text && writer.encodeTextSync) {
|
|
199
|
+
return writer.encodeTextSync(data, options);
|
|
200
|
+
}
|
|
201
|
+
if (writer.text && writer.encodeSync) {
|
|
202
|
+
var arrayBuffer = encodeSync(data, writer, options);
|
|
203
|
+
return new TextDecoder().decode(arrayBuffer);
|
|
204
|
+
}
|
|
205
|
+
throw new Error("Writer ".concat(writer.name, " could not encode data as text"));
|
|
206
|
+
}
|
|
196
207
|
function encodeInBatches(data, writer, options) {
|
|
197
208
|
if (writer.encodeInBatches) {
|
|
198
209
|
var dataIterator = getIterator(data);
|
|
@@ -231,11 +242,10 @@ function _encodeURLtoURL() {
|
|
|
231
242
|
return _encodeURLtoURL.apply(this, arguments);
|
|
232
243
|
}
|
|
233
244
|
function getIterator(data) {
|
|
234
|
-
var dataIterator = [{
|
|
235
|
-
table: data,
|
|
245
|
+
var dataIterator = [_objectSpread(_objectSpread({}, data), {}, {
|
|
236
246
|
start: 0,
|
|
237
247
|
end: data.length
|
|
238
|
-
}];
|
|
248
|
+
})];
|
|
239
249
|
return dataIterator;
|
|
240
250
|
}
|
|
241
251
|
function getTemporaryFilename(filename) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.js","names":["_loaderUtils","require","_workerUtils","_writeFile","_fetchFile","_loaderOptions","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","_asyncIterator","iterable","method","async","sync","retry","Symbol","asyncIterator","iterator","call","AsyncFromSyncIterator","TypeError","s","AsyncFromSyncIteratorContinuation","r","Promise","reject","done","resolve","value","then","n","next","prototype","return","_return","ret","throw","_throw","thr","encode","_x","_x2","_x3","_encode","_asyncToGenerator2","_regenerator","mark","_callee","data","writer","options","globalOptions","batches","chunks","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","batch","tmpInputFilename","tmpOutputFilename","outputFilename","response","wrap","_callee$","_context","prev","getLoaderOptions","canEncodeWithWorker","processOnWorker","abrupt","sent","encodeSync","encodeText","t0","TextEncoder","t1","encodeInBatches","t2","finish","concatenateArrayBuffers","isBrowser","encodeURLtoURL","getTemporaryFilename","writeFile","fetchFile","arrayBuffer","Error","stop","_x4","_x5","_x6","_encodeText","_callee2","_callee2$","_context2","text","TextDecoder","decode","dataIterator","getIterator","_x7","_x8","_x9","_x10","_encodeURLtoURL","_callee3","inputUrl","outputUrl","_callee3$","_context3","resolvePath","table","start","end","filename","concat"],"sources":["../../../../src/lib/api/encode.ts"],"sourcesContent":["import {Writer, WriterOptions, canEncodeWithWorker} from '@loaders.gl/loader-utils';\nimport {processOnWorker} from '@loaders.gl/worker-utils';\nimport {concatenateArrayBuffers, resolvePath} from '@loaders.gl/loader-utils';\nimport {isBrowser} from '@loaders.gl/loader-utils';\nimport {writeFile} from '../fetch/write-file';\nimport {fetchFile} from '../fetch/fetch-file';\nimport {getLoaderOptions} from './loader-options';\n\n/**\n * Encode loaded data into a binary ArrayBuffer using the specified Writer.\n */\nexport async function encode(\n data: unknown,\n writer: Writer,\n options?: WriterOptions\n): Promise<ArrayBuffer> {\n const globalOptions = getLoaderOptions() as WriterOptions;\n // const globalOptions: WriterOptions = {}; // getWriterOptions();\n options = {...globalOptions, ...options};\n if (canEncodeWithWorker(writer, options)) {\n return await processOnWorker(writer, data, options);\n }\n\n // TODO Merge default writer options with options argument like it is done in load module.\n if (writer.encode) {\n return await writer.encode(data, options);\n }\n\n if (writer.encodeSync) {\n return writer.encodeSync(data, options);\n }\n\n if (writer.encodeText) {\n return new TextEncoder().encode(await writer.encodeText(data, options));\n }\n\n if (writer.encodeInBatches) {\n // Create an iterator representing the data\n // TODO - Assumes this is a table\n const batches = encodeInBatches(data, writer, options);\n\n // Concatenate the output\n const chunks: unknown[] = [];\n for await (const batch of batches) {\n chunks.push(batch);\n }\n // @ts-ignore\n return concatenateArrayBuffers(...chunks);\n }\n\n if (!isBrowser && writer.encodeURLtoURL) {\n // TODO - how to generate filenames with correct extensions?\n const tmpInputFilename = getTemporaryFilename('input');\n await writeFile(tmpInputFilename, data as ArrayBuffer);\n\n const tmpOutputFilename = getTemporaryFilename('output');\n\n const outputFilename = await encodeURLtoURL(\n tmpInputFilename,\n tmpOutputFilename,\n writer,\n options\n );\n\n const response = await fetchFile(outputFilename);\n return response.arrayBuffer();\n }\n\n throw new Error('Writer could not encode data');\n}\n\n/**\n * Encode loaded data into a binary ArrayBuffer using the specified Writer.\n */\nexport function encodeSync(data: unknown, writer: Writer, options?: WriterOptions): ArrayBuffer {\n if (writer.encodeSync) {\n return writer.encodeSync(data, options);\n }\n throw new Error('Writer could not synchronously encode data');\n}\n\n/**\n * Encode loaded data to text using the specified Writer\n * @note This is a convenience function not intended for production use on large input data.\n * It is not optimized for performance. Data maybe converted from text to binary and back.\n * @throws if the writer does not generate text output\n */\nexport async function encodeText(\n data: unknown,\n writer: Writer,\n options?: WriterOptions\n): Promise<string> {\n if (writer.text && writer.encodeText) {\n return await writer.encodeText(data, options);\n }\n\n if (writer.text && (writer.encode || writer.encodeInBatches)) {\n const arrayBuffer = await encode(data, writer, options);\n return new TextDecoder().decode(arrayBuffer);\n }\n\n throw new Error('Writer could not encode data as text');\n}\n\n/**\n * Encode loaded data into a sequence (iterator) of binary ArrayBuffers using the specified Writer.\n */\nexport function encodeInBatches(\n data: unknown,\n writer: Writer,\n options?: WriterOptions\n): AsyncIterable<ArrayBuffer> {\n if (writer.encodeInBatches) {\n const dataIterator = getIterator(data);\n // @ts-expect-error\n return writer.encodeInBatches(dataIterator, options);\n }\n // TODO -fall back to atomic encode?\n throw new Error('Writer could not encode data in batches');\n}\n\n/**\n * Encode data stored in a file (on disk) to another file.\n * @note Node.js only. This function enables using command-line converters as \"writers\".\n */\nexport async function encodeURLtoURL(\n inputUrl: string,\n outputUrl: string,\n writer: Writer,\n options?: WriterOptions\n): Promise<string> {\n inputUrl = resolvePath(inputUrl);\n outputUrl = resolvePath(outputUrl);\n if (isBrowser || !writer.encodeURLtoURL) {\n throw new Error();\n }\n const outputFilename = await writer.encodeURLtoURL(inputUrl, outputUrl, options);\n return outputFilename;\n}\n\n/**\n * @todo TODO - this is an unacceptable hack!!!\n */\nfunction getIterator(data: any): Iterable<{table: any; start: number; end: number}> {\n const dataIterator = [{table: data, start: 0, end: data.length}];\n return dataIterator;\n}\n\n/**\n * @todo Move to utils\n */\nfunction getTemporaryFilename(filename: string): string {\n return `/tmp/${filename}`;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"encode.js","names":["_loaderUtils","require","_workerUtils","_writeFile","_fetchFile","_loaderOptions","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","_asyncIterator","iterable","method","async","sync","retry","Symbol","asyncIterator","iterator","call","AsyncFromSyncIterator","TypeError","s","AsyncFromSyncIteratorContinuation","r","Promise","reject","done","resolve","value","then","n","next","prototype","return","_return","ret","throw","_throw","thr","encode","_x","_x2","_x3","_encode","_asyncToGenerator2","_regenerator","mark","_callee","data","writer","options","globalOptions","batches","chunks","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","batch","tmpInputFilename","tmpOutputFilename","outputFilename","response","wrap","_callee$","_context","prev","getLoaderOptions","canEncodeWithWorker","processOnWorker","abrupt","sent","encodeSync","encodeText","t0","TextEncoder","t1","encodeInBatches","t2","finish","concatenateArrayBuffers","isBrowser","encodeURLtoURL","getTemporaryFilename","writeFile","fetchFile","arrayBuffer","Error","stop","_x4","_x5","_x6","_encodeText","_callee2","_callee2$","_context2","text","TextDecoder","decode","concat","name","encodeTextSync","dataIterator","getIterator","_x7","_x8","_x9","_x10","_encodeURLtoURL","_callee3","inputUrl","outputUrl","_callee3$","_context3","resolvePath","start","end","filename"],"sources":["../../../../src/lib/api/encode.ts"],"sourcesContent":["import {Writer, WriterOptions, canEncodeWithWorker} from '@loaders.gl/loader-utils';\nimport {processOnWorker} from '@loaders.gl/worker-utils';\nimport {concatenateArrayBuffers, resolvePath} from '@loaders.gl/loader-utils';\nimport {isBrowser} from '@loaders.gl/loader-utils';\nimport {writeFile} from '../fetch/write-file';\nimport {fetchFile} from '../fetch/fetch-file';\nimport {getLoaderOptions} from './loader-options';\n\n/**\n * Encode loaded data into a binary ArrayBuffer using the specified Writer.\n */\nexport async function encode(\n data: unknown,\n writer: Writer,\n options?: WriterOptions\n): Promise<ArrayBuffer> {\n const globalOptions = getLoaderOptions() as WriterOptions;\n // const globalOptions: WriterOptions = {}; // getWriterOptions();\n options = {...globalOptions, ...options};\n if (canEncodeWithWorker(writer, options)) {\n return await processOnWorker(writer, data, options);\n }\n\n // TODO Merge default writer options with options argument like it is done in load module.\n if (writer.encode) {\n return await writer.encode(data, options);\n }\n\n if (writer.encodeSync) {\n return writer.encodeSync(data, options);\n }\n\n if (writer.encodeText) {\n return new TextEncoder().encode(await writer.encodeText(data, options));\n }\n\n if (writer.encodeInBatches) {\n // Create an iterator representing the data\n // TODO - Assumes this is a table\n const batches = encodeInBatches(data, writer, options);\n\n // Concatenate the output\n const chunks: unknown[] = [];\n for await (const batch of batches) {\n chunks.push(batch);\n }\n // @ts-ignore\n return concatenateArrayBuffers(...chunks);\n }\n\n if (!isBrowser && writer.encodeURLtoURL) {\n // TODO - how to generate filenames with correct extensions?\n const tmpInputFilename = getTemporaryFilename('input');\n await writeFile(tmpInputFilename, data as ArrayBuffer);\n\n const tmpOutputFilename = getTemporaryFilename('output');\n\n const outputFilename = await encodeURLtoURL(\n tmpInputFilename,\n tmpOutputFilename,\n writer,\n options\n );\n\n const response = await fetchFile(outputFilename);\n return response.arrayBuffer();\n }\n\n throw new Error('Writer could not encode data');\n}\n\n/**\n * Encode loaded data into a binary ArrayBuffer using the specified Writer.\n */\nexport function encodeSync(data: unknown, writer: Writer, options?: WriterOptions): ArrayBuffer {\n if (writer.encodeSync) {\n return writer.encodeSync(data, options);\n }\n throw new Error('Writer could not synchronously encode data');\n}\n\n/**\n * Encode loaded data to text using the specified Writer\n * @note This is a convenience function not intended for production use on large input data.\n * It is not optimized for performance. Data maybe converted from text to binary and back.\n * @throws if the writer does not generate text output\n */\nexport async function encodeText(\n data: unknown,\n writer: Writer,\n options?: WriterOptions\n): Promise<string> {\n if (writer.text && writer.encodeText) {\n return await writer.encodeText(data, options);\n }\n\n if (writer.text && (writer.encode || writer.encodeInBatches)) {\n const arrayBuffer = await encode(data, writer, options);\n return new TextDecoder().decode(arrayBuffer);\n }\n\n throw new Error(`Writer ${writer.name} could not encode data as text`);\n}\n\n/**\n * Encode loaded data to text using the specified Writer\n * @note This is a convenience function not intended for production use on large input data.\n * It is not optimized for performance. Data maybe converted from text to binary and back.\n * @throws if the writer does not generate text output\n */\nexport function encodeTextSync(data: unknown, writer: Writer, options?: WriterOptions): string {\n if (writer.text && writer.encodeTextSync) {\n return writer.encodeTextSync(data, options);\n }\n\n if (writer.text && writer.encodeSync) {\n const arrayBuffer = encodeSync(data, writer, options);\n return new TextDecoder().decode(arrayBuffer);\n }\n\n throw new Error(`Writer ${writer.name} could not encode data as text`);\n}\n\n/**\n * Encode loaded data into a sequence (iterator) of binary ArrayBuffers using the specified Writer.\n */\nexport function encodeInBatches(\n data: unknown,\n writer: Writer,\n options?: WriterOptions\n): AsyncIterable<ArrayBuffer> {\n if (writer.encodeInBatches) {\n const dataIterator = getIterator(data);\n // @ts-expect-error\n return writer.encodeInBatches(dataIterator, options);\n }\n // TODO -fall back to atomic encode?\n throw new Error('Writer could not encode data in batches');\n}\n\n/**\n * Encode data stored in a file (on disk) to another file.\n * @note Node.js only. This function enables using command-line converters as \"writers\".\n */\nexport async function encodeURLtoURL(\n inputUrl: string,\n outputUrl: string,\n writer: Writer,\n options?: WriterOptions\n): Promise<string> {\n inputUrl = resolvePath(inputUrl);\n outputUrl = resolvePath(outputUrl);\n if (isBrowser || !writer.encodeURLtoURL) {\n throw new Error();\n }\n const outputFilename = await writer.encodeURLtoURL(inputUrl, outputUrl, options);\n return outputFilename;\n}\n\n/**\n * @todo TODO - this is an unacceptable hack!!!\n */\nfunction getIterator(data: any): Iterable<{table: any; start: number; end: number}> {\n const dataIterator = [{...data, start: 0, end: data.length}];\n return dataIterator;\n}\n\n/**\n * @todo Move to utils\n */\nfunction getTemporaryFilename(filename: string): string {\n return `/tmp/${filename}`;\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAGA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAAkD,SAAAK,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAC,MAAA,CAAAD,IAAA,CAAAF,MAAA,OAAAG,MAAA,CAAAC,qBAAA,QAAAC,OAAA,GAAAF,MAAA,CAAAC,qBAAA,CAAAJ,MAAA,GAAAC,cAAA,KAAAI,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAJ,MAAA,CAAAK,wBAAA,CAAAR,MAAA,EAAAO,GAAA,EAAAE,UAAA,OAAAP,IAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,IAAA,EAAAG,OAAA,YAAAH,IAAA;AAAA,SAAAU,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAf,OAAA,CAAAI,MAAA,CAAAc,MAAA,OAAAC,OAAA,WAAAC,GAAA,QAAAC,gBAAA,CAAAC,OAAA,EAAAR,MAAA,EAAAM,GAAA,EAAAF,MAAA,CAAAE,GAAA,SAAAhB,MAAA,CAAAmB,yBAAA,GAAAnB,MAAA,CAAAoB,gBAAA,CAAAV,MAAA,EAAAV,MAAA,CAAAmB,yBAAA,CAAAL,MAAA,KAAAlB,OAAA,CAAAI,MAAA,CAAAc,MAAA,GAAAC,OAAA,WAAAC,GAAA,IAAAhB,MAAA,CAAAqB,cAAA,CAAAX,MAAA,EAAAM,GAAA,EAAAhB,MAAA,CAAAK,wBAAA,CAAAS,MAAA,EAAAE,GAAA,iBAAAN,MAAA;AAAA,SAAAY,eAAAC,QAAA,QAAAC,MAAA,EAAAC,KAAA,EAAAC,IAAA,EAAAC,KAAA,iCAAAC,MAAA,KAAAH,KAAA,GAAAG,MAAA,CAAAC,aAAA,EAAAH,IAAA,GAAAE,MAAA,CAAAE,QAAA,GAAAH,KAAA,WAAAF,KAAA,aAAAD,MAAA,GAAAD,QAAA,CAAAE,KAAA,WAAAD,MAAA,CAAAO,IAAA,CAAAR,QAAA,OAAAG,IAAA,aAAAF,MAAA,GAAAD,QAAA,CAAAG,IAAA,eAAAM,qBAAA,CAAAR,MAAA,CAAAO,IAAA,CAAAR,QAAA,IAAAE,KAAA,sBAAAC,IAAA,6BAAAO,SAAA;AAAA,SAAAD,sBAAAE,CAAA,aAAAC,kCAAAC,CAAA,QAAApC,MAAA,CAAAoC,CAAA,MAAAA,CAAA,SAAAC,OAAA,CAAAC,MAAA,KAAAL,SAAA,CAAAG,CAAA,+BAAAG,IAAA,GAAAH,CAAA,CAAAG,IAAA,SAAAF,OAAA,CAAAG,OAAA,CAAAJ,CAAA,CAAAK,KAAA,EAAAC,IAAA,WAAAD,KAAA,aAAAA,KAAA,EAAAA,KAAA,EAAAF,IAAA,EAAAA,IAAA,iBAAAP,qBAAA,YAAAA,sBAAAE,CAAA,SAAAA,CAAA,GAAAA,CAAA,OAAAS,CAAA,GAAAT,CAAA,CAAAU,IAAA,KAAAZ,qBAAA,CAAAa,SAAA,KAAAX,CAAA,QAAAS,CAAA,QAAAC,IAAA,WAAAA,KAAA,WAAAT,iCAAA,MAAAQ,CAAA,CAAAnC,KAAA,MAAA0B,CAAA,EAAAtB,SAAA,OAAAkC,MAAA,WAAAC,QAAAN,KAAA,QAAAO,GAAA,QAAAd,CAAA,CAAAY,MAAA,oBAAAE,GAAA,GAAAX,OAAA,CAAAG,OAAA,GAAAC,KAAA,EAAAA,KAAA,EAAAF,IAAA,UAAAJ,iCAAA,CAAAa,GAAA,CAAAxC,KAAA,MAAA0B,CAAA,EAAAtB,SAAA,OAAAqC,KAAA,WAAAC,OAAAT,KAAA,QAAAU,GAAA,QAAAjB,CAAA,CAAAY,MAAA,oBAAAK,GAAA,GAAAd,OAAA,CAAAC,MAAA,CAAAG,KAAA,IAAAN,iCAAA,CAAAgB,GAAA,CAAA3C,KAAA,MAAA0B,CAAA,EAAAtB,SAAA,aAAAoB,qBAAA,CAAAE,CAAA;AAAA,SAK5BkB,MAAMA,CAAAC,EAAA,EAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,OAAA,CAAAhD,KAAA,OAAAI,SAAA;AAAA;AAAA,SAAA4C,QAAA;EAAAA,OAAA,OAAAC,kBAAA,CAAAvC,OAAA,EAAAwC,YAAA,CAAAxC,OAAA,CAAAyC,IAAA,CAArB,SAAAC,QACLC,IAAa,EACbC,MAAc,EACdC,OAAuB;IAAA,IAAAC,aAAA,EAAAC,OAAA,EAAAC,MAAA,EAAAC,yBAAA,EAAAC,iBAAA,EAAAC,cAAA,EAAAC,SAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,gBAAA,EAAAC,iBAAA,EAAAC,cAAA,EAAAC,QAAA;IAAA,OAAAlB,YAAA,CAAAxC,OAAA,CAAA2D,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAnC,IAAA;QAAA;UAEjBoB,aAAa,GAAG,IAAAiB,+BAAgB,EAAC,CAAC;UAExClB,OAAO,GAAAtD,aAAA,CAAAA,aAAA,KAAOuD,aAAa,GAAKD,OAAO,CAAC;UAAC,KACrC,IAAAmB,gCAAmB,EAACpB,MAAM,EAAEC,OAAO,CAAC;YAAAgB,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAAAmC,QAAA,CAAAnC,IAAA;UAAA,OACzB,IAAAuC,4BAAe,EAACrB,MAAM,EAAED,IAAI,EAAEE,OAAO,CAAC;QAAA;UAAA,OAAAgB,QAAA,CAAAK,MAAA,WAAAL,QAAA,CAAAM,IAAA;QAAA;UAAA,KAIjDvB,MAAM,CAACV,MAAM;YAAA2B,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAAAmC,QAAA,CAAAnC,IAAA;UAAA,OACFkB,MAAM,CAACV,MAAM,CAACS,IAAI,EAAEE,OAAO,CAAC;QAAA;UAAA,OAAAgB,QAAA,CAAAK,MAAA,WAAAL,QAAA,CAAAM,IAAA;QAAA;UAAA,KAGvCvB,MAAM,CAACwB,UAAU;YAAAP,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAAA,OAAAmC,QAAA,CAAAK,MAAA,WACZtB,MAAM,CAACwB,UAAU,CAACzB,IAAI,EAAEE,OAAO,CAAC;QAAA;UAAA,KAGrCD,MAAM,CAACyB,UAAU;YAAAR,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAAAmC,QAAA,CAAAS,EAAA,GACZ,IAAIC,WAAW,CAAC,CAAC;UAAAV,QAAA,CAAAnC,IAAA;UAAA,OAAckB,MAAM,CAACyB,UAAU,CAAC1B,IAAI,EAAEE,OAAO,CAAC;QAAA;UAAAgB,QAAA,CAAAW,EAAA,GAAAX,QAAA,CAAAM,IAAA;UAAA,OAAAN,QAAA,CAAAK,MAAA,WAAAL,QAAA,CAAAS,EAAA,CAA7CpC,MAAM,CAAArB,IAAA,CAAAgD,QAAA,CAAAS,EAAA,EAAAT,QAAA,CAAAW,EAAA;QAAA;UAAA,KAG7B5B,MAAM,CAAC6B,eAAe;YAAAZ,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAGlBqB,OAAO,GAAG0B,eAAe,CAAC9B,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC;UAGhDG,MAAiB,GAAG,EAAE;UAAAC,yBAAA;UAAAC,iBAAA;UAAAW,QAAA,CAAAC,IAAA;UAAAV,SAAA,GAAAhD,cAAA,CACF2C,OAAO;QAAA;UAAAc,QAAA,CAAAnC,IAAA;UAAA,OAAA0B,SAAA,CAAA1B,IAAA;QAAA;UAAA,MAAAuB,yBAAA,KAAAI,KAAA,GAAAQ,QAAA,CAAAM,IAAA,EAAA9C,IAAA;YAAAwC,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAAhB4B,KAAK,GAAAD,KAAA,CAAA9B,KAAA;UACpByB,MAAM,CAAC3D,IAAI,CAACiE,KAAK,CAAC;QAAC;UAAAL,yBAAA;UAAAY,QAAA,CAAAnC,IAAA;UAAA;QAAA;UAAAmC,QAAA,CAAAnC,IAAA;UAAA;QAAA;UAAAmC,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAAa,EAAA,GAAAb,QAAA;UAAAX,iBAAA;UAAAC,cAAA,GAAAU,QAAA,CAAAa,EAAA;QAAA;UAAAb,QAAA,CAAAC,IAAA;UAAAD,QAAA,CAAAC,IAAA;UAAA,MAAAb,yBAAA,IAAAG,SAAA,CAAAxB,MAAA;YAAAiC,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAAAmC,QAAA,CAAAnC,IAAA;UAAA,OAAA0B,SAAA,CAAAxB,MAAA;QAAA;UAAAiC,QAAA,CAAAC,IAAA;UAAA,KAAAZ,iBAAA;YAAAW,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAAA,MAAAyB,cAAA;QAAA;UAAA,OAAAU,QAAA,CAAAc,MAAA;QAAA;UAAA,OAAAd,QAAA,CAAAc,MAAA;QAAA;UAAA,OAAAd,QAAA,CAAAK,MAAA,WAGdU,oCAAuB,CAAAtF,KAAA,SAAI0D,MAAM,CAAC;QAAA;UAAA,MAGvC,CAAC6B,sBAAS,IAAIjC,MAAM,CAACkC,cAAc;YAAAjB,QAAA,CAAAnC,IAAA;YAAA;UAAA;UAE/B6B,gBAAgB,GAAGwB,oBAAoB,CAAC,OAAO,CAAC;UAAAlB,QAAA,CAAAnC,IAAA;UAAA,OAChD,IAAAsD,oBAAS,EAACzB,gBAAgB,EAAEZ,IAAmB,CAAC;QAAA;UAEhDa,iBAAiB,GAAGuB,oBAAoB,CAAC,QAAQ,CAAC;UAAAlB,QAAA,CAAAnC,IAAA;UAAA,OAE3BoD,cAAc,CACzCvB,gBAAgB,EAChBC,iBAAiB,EACjBZ,MAAM,EACNC,OACF,CAAC;QAAA;UALKY,cAAc,GAAAI,QAAA,CAAAM,IAAA;UAAAN,QAAA,CAAAnC,IAAA;UAAA,OAOG,IAAAuD,oBAAS,EAACxB,cAAc,CAAC;QAAA;UAA1CC,QAAQ,GAAAG,QAAA,CAAAM,IAAA;UAAA,OAAAN,QAAA,CAAAK,MAAA,WACPR,QAAQ,CAACwB,WAAW,CAAC,CAAC;QAAA;UAAA,MAGzB,IAAIC,KAAK,CAAC,8BAA8B,CAAC;QAAA;QAAA;UAAA,OAAAtB,QAAA,CAAAuB,IAAA;MAAA;IAAA,GAAA1C,OAAA;EAAA,CAChD;EAAA,OAAAJ,OAAA,CAAAhD,KAAA,OAAAI,SAAA;AAAA;AAKM,SAAS0E,UAAUA,CAACzB,IAAa,EAAEC,MAAc,EAAEC,OAAuB,EAAe;EAC9F,IAAID,MAAM,CAACwB,UAAU,EAAE;IACrB,OAAOxB,MAAM,CAACwB,UAAU,CAACzB,IAAI,EAAEE,OAAO,CAAC;EACzC;EACA,MAAM,IAAIsC,KAAK,CAAC,4CAA4C,CAAC;AAC/D;AAAC,SAQqBd,UAAUA,CAAAgB,GAAA,EAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,WAAA,CAAAlG,KAAA,OAAAI,SAAA;AAAA;AAAA,SAAA8F,YAAA;EAAAA,WAAA,OAAAjD,kBAAA,CAAAvC,OAAA,EAAAwC,YAAA,CAAAxC,OAAA,CAAAyC,IAAA,CAAzB,SAAAgD,SACL9C,IAAa,EACbC,MAAc,EACdC,OAAuB;IAAA,IAAAqC,WAAA;IAAA,OAAA1C,YAAA,CAAAxC,OAAA,CAAA2D,IAAA,UAAA+B,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAA7B,IAAA,GAAA6B,SAAA,CAAAjE,IAAA;QAAA;UAAA,MAEnBkB,MAAM,CAACgD,IAAI,IAAIhD,MAAM,CAACyB,UAAU;YAAAsB,SAAA,CAAAjE,IAAA;YAAA;UAAA;UAAAiE,SAAA,CAAAjE,IAAA;UAAA,OACrBkB,MAAM,CAACyB,UAAU,CAAC1B,IAAI,EAAEE,OAAO,CAAC;QAAA;UAAA,OAAA8C,SAAA,CAAAzB,MAAA,WAAAyB,SAAA,CAAAxB,IAAA;QAAA;UAAA,MAG3CvB,MAAM,CAACgD,IAAI,KAAKhD,MAAM,CAACV,MAAM,IAAIU,MAAM,CAAC6B,eAAe,CAAC;YAAAkB,SAAA,CAAAjE,IAAA;YAAA;UAAA;UAAAiE,SAAA,CAAAjE,IAAA;UAAA,OAChCQ,MAAM,CAACS,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC;QAAA;UAAjDqC,WAAW,GAAAS,SAAA,CAAAxB,IAAA;UAAA,OAAAwB,SAAA,CAAAzB,MAAA,WACV,IAAI2B,WAAW,CAAC,CAAC,CAACC,MAAM,CAACZ,WAAW,CAAC;QAAA;UAAA,MAGxC,IAAIC,KAAK,WAAAY,MAAA,CAAWnD,MAAM,CAACoD,IAAI,mCAAgC,CAAC;QAAA;QAAA;UAAA,OAAAL,SAAA,CAAAP,IAAA;MAAA;IAAA,GAAAK,QAAA;EAAA,CACvE;EAAA,OAAAD,WAAA,CAAAlG,KAAA,OAAAI,SAAA;AAAA;AAQM,SAASuG,cAAcA,CAACtD,IAAa,EAAEC,MAAc,EAAEC,OAAuB,EAAU;EAC7F,IAAID,MAAM,CAACgD,IAAI,IAAIhD,MAAM,CAACqD,cAAc,EAAE;IACxC,OAAOrD,MAAM,CAACqD,cAAc,CAACtD,IAAI,EAAEE,OAAO,CAAC;EAC7C;EAEA,IAAID,MAAM,CAACgD,IAAI,IAAIhD,MAAM,CAACwB,UAAU,EAAE;IACpC,IAAMc,WAAW,GAAGd,UAAU,CAACzB,IAAI,EAAEC,MAAM,EAAEC,OAAO,CAAC;IACrD,OAAO,IAAIgD,WAAW,CAAC,CAAC,CAACC,MAAM,CAACZ,WAAW,CAAC;EAC9C;EAEA,MAAM,IAAIC,KAAK,WAAAY,MAAA,CAAWnD,MAAM,CAACoD,IAAI,mCAAgC,CAAC;AACxE;AAKO,SAASvB,eAAeA,CAC7B9B,IAAa,EACbC,MAAc,EACdC,OAAuB,EACK;EAC5B,IAAID,MAAM,CAAC6B,eAAe,EAAE;IAC1B,IAAMyB,YAAY,GAAGC,WAAW,CAACxD,IAAI,CAAC;IAEtC,OAAOC,MAAM,CAAC6B,eAAe,CAACyB,YAAY,EAAErD,OAAO,CAAC;EACtD;EAEA,MAAM,IAAIsC,KAAK,CAAC,yCAAyC,CAAC;AAC5D;AAAC,SAMqBL,cAAcA,CAAAsB,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,IAAA;EAAA,OAAAC,eAAA,CAAAlH,KAAA,OAAAI,SAAA;AAAA;AAAA,SAAA8G,gBAAA;EAAAA,eAAA,OAAAjE,kBAAA,CAAAvC,OAAA,EAAAwC,YAAA,CAAAxC,OAAA,CAAAyC,IAAA,CAA7B,SAAAgE,SACLC,QAAgB,EAChBC,SAAiB,EACjB/D,MAAc,EACdC,OAAuB;IAAA,IAAAY,cAAA;IAAA,OAAAjB,YAAA,CAAAxC,OAAA,CAAA2D,IAAA,UAAAiD,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAA/C,IAAA,GAAA+C,SAAA,CAAAnF,IAAA;QAAA;UAEvBgF,QAAQ,GAAG,IAAAI,wBAAW,EAACJ,QAAQ,CAAC;UAChCC,SAAS,GAAG,IAAAG,wBAAW,EAACH,SAAS,CAAC;UAAC,MAC/B9B,sBAAS,IAAI,CAACjC,MAAM,CAACkC,cAAc;YAAA+B,SAAA,CAAAnF,IAAA;YAAA;UAAA;UAAA,MAC/B,IAAIyD,KAAK,CAAC,CAAC;QAAA;UAAA0B,SAAA,CAAAnF,IAAA;UAAA,OAEUkB,MAAM,CAACkC,cAAc,CAAC4B,QAAQ,EAAEC,SAAS,EAAE9D,OAAO,CAAC;QAAA;UAA1EY,cAAc,GAAAoD,SAAA,CAAA1C,IAAA;UAAA,OAAA0C,SAAA,CAAA3C,MAAA,WACbT,cAAc;QAAA;QAAA;UAAA,OAAAoD,SAAA,CAAAzB,IAAA;MAAA;IAAA,GAAAqB,QAAA;EAAA,CACtB;EAAA,OAAAD,eAAA,CAAAlH,KAAA,OAAAI,SAAA;AAAA;AAKD,SAASyG,WAAWA,CAACxD,IAAS,EAAsD;EAClF,IAAMuD,YAAY,GAAG,CAAA3G,aAAA,CAAAA,aAAA,KAAKoD,IAAI;IAAEoE,KAAK,EAAE,CAAC;IAAEC,GAAG,EAAErE,IAAI,CAAChD;EAAM,GAAE;EAC5D,OAAOuG,YAAY;AACrB;AAKA,SAASnB,oBAAoBA,CAACkC,QAAgB,EAAU;EACtD,eAAAlB,MAAA,CAAekB,QAAQ;AACzB"}
|
|
@@ -38,7 +38,7 @@ function _loadOneFileInBatches() {
|
|
|
38
38
|
while (1) switch (_context.prev = _context.next) {
|
|
39
39
|
case 0:
|
|
40
40
|
if (!(typeof file === 'string')) {
|
|
41
|
-
_context.next =
|
|
41
|
+
_context.next = 15;
|
|
42
42
|
break;
|
|
43
43
|
}
|
|
44
44
|
url = file;
|
|
@@ -46,16 +46,42 @@ function _loadOneFileInBatches() {
|
|
|
46
46
|
return fetch(url);
|
|
47
47
|
case 4:
|
|
48
48
|
response = _context.sent;
|
|
49
|
-
|
|
49
|
+
if (!Array.isArray(loaders)) {
|
|
50
|
+
_context.next = 11;
|
|
51
|
+
break;
|
|
52
|
+
}
|
|
53
|
+
_context.next = 8;
|
|
50
54
|
return (0, _parseInBatches.parseInBatches)(response, loaders, options);
|
|
51
|
-
case 7:
|
|
52
|
-
return _context.abrupt("return", _context.sent);
|
|
53
55
|
case 8:
|
|
54
|
-
_context.
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
return _context.abrupt("return", _context.sent);
|
|
56
|
+
_context.t0 = _context.sent;
|
|
57
|
+
_context.next = 14;
|
|
58
|
+
break;
|
|
58
59
|
case 11:
|
|
60
|
+
_context.next = 13;
|
|
61
|
+
return (0, _parseInBatches.parseInBatches)(response, loaders, options);
|
|
62
|
+
case 13:
|
|
63
|
+
_context.t0 = _context.sent;
|
|
64
|
+
case 14:
|
|
65
|
+
return _context.abrupt("return", _context.t0);
|
|
66
|
+
case 15:
|
|
67
|
+
if (!Array.isArray(loaders)) {
|
|
68
|
+
_context.next = 21;
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
_context.next = 18;
|
|
72
|
+
return (0, _parseInBatches.parseInBatches)(file, loaders, options);
|
|
73
|
+
case 18:
|
|
74
|
+
_context.t1 = _context.sent;
|
|
75
|
+
_context.next = 24;
|
|
76
|
+
break;
|
|
77
|
+
case 21:
|
|
78
|
+
_context.next = 23;
|
|
79
|
+
return (0, _parseInBatches.parseInBatches)(file, loaders, options);
|
|
80
|
+
case 23:
|
|
81
|
+
_context.t1 = _context.sent;
|
|
82
|
+
case 24:
|
|
83
|
+
return _context.abrupt("return", _context.t1);
|
|
84
|
+
case 25:
|
|
59
85
|
case "end":
|
|
60
86
|
return _context.stop();
|
|
61
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-in-batches.js","names":["_normalizeLoader","require","_getFetchFunction","_parseInBatches","loadInBatches","files","loaders","options","context","loadersArray","Array","isArray","isLoaderObject","undefined","fetch","getFetchFunction","loadOneFileInBatches","promises","map","file","_x","_x2","_x3","_x4","_loadOneFileInBatches","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","url","response","wrap","_callee$","_context","prev","next","sent","parseInBatches","abrupt","stop"],"sources":["../../../../src/lib/api/load-in-batches.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport type {\n LoaderWithParser,\n LoaderOptions,\n LoaderContext,\n FetchLike\n} from '@loaders.gl/loader-utils';\nimport type {LoaderBatchType, LoaderOptionsType} from '@loaders.gl/loader-utils';\nimport {isLoaderObject} from '../loader-utils/normalize-loader';\nimport {getFetchFunction} from '../loader-utils/get-fetch-function';\n\nimport {parseInBatches} from './parse-in-batches';\n\ntype FileType = string | File | Blob | Response | (string | File | Blob | Response)[] | FileList;\n\n/**\n * Parses `data` synchronously using a specified loader\n */\nexport async function loadInBatches<\n LoaderT extends LoaderWithParser,\n OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>\n>(\n files: FileType,\n loader: LoaderT,\n options?: OptionsT,\n context?: LoaderContext\n): Promise<AsyncIterable<LoaderBatchType<LoaderT>>>;\n\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\nexport function loadInBatches(\n files: FileType,\n loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>>;\n\nexport function loadInBatches(\n files: FileType[] | FileList,\n loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>>[];\n\nexport function loadInBatches(\n files: FileType | FileType[] | FileList,\n loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>> | Promise<AsyncIterable<unknown>>[] {\n let loadersArray: LoaderWithParser | LoaderWithParser[] | undefined;\n // Signature: load(url, options)\n if (!Array.isArray(loaders) && !isLoaderObject(loaders)) {\n context = undefined; // context not supported in short signature\n options = loaders as LoaderOptions;\n loadersArray = undefined;\n } else {\n loadersArray = loaders as LoaderWithParser | LoaderWithParser[] | undefined;\n }\n\n // Select fetch function\n const fetch = getFetchFunction(options || {});\n\n // Single url/file\n if (!Array.isArray(files)) {\n return loadOneFileInBatches(files, loadersArray!, options || {}, fetch);\n }\n\n // Multiple URLs / files\n const promises = files.map((file) =>\n loadOneFileInBatches(file, loadersArray!, options || {}, fetch)\n );\n\n // No point in waiting here for all responses before starting to stream individual streams?\n return promises;\n}\n\nasync function loadOneFileInBatches(\n file: FileType,\n loaders: LoaderWithParser | LoaderWithParser[],\n options: LoaderOptions,\n fetch: FetchLike\n): Promise<AsyncIterable<unknown>> {\n if (typeof file === 'string') {\n const url = file;\n const response = await fetch(url);\n //
|
|
1
|
+
{"version":3,"file":"load-in-batches.js","names":["_normalizeLoader","require","_getFetchFunction","_parseInBatches","loadInBatches","files","loaders","options","context","loadersArray","Array","isArray","isLoaderObject","undefined","fetch","getFetchFunction","loadOneFileInBatches","promises","map","file","_x","_x2","_x3","_x4","_loadOneFileInBatches","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","url","response","wrap","_callee$","_context","prev","next","sent","parseInBatches","t0","abrupt","t1","stop"],"sources":["../../../../src/lib/api/load-in-batches.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport type {\n LoaderWithParser,\n LoaderOptions,\n LoaderContext,\n FetchLike,\n BatchableDataType\n} from '@loaders.gl/loader-utils';\nimport type {LoaderBatchType, LoaderOptionsType} from '@loaders.gl/loader-utils';\nimport {isLoaderObject} from '../loader-utils/normalize-loader';\nimport {getFetchFunction} from '../loader-utils/get-fetch-function';\n\nimport {parseInBatches} from './parse-in-batches';\n\ntype FileType = string | File | Blob | Response | (string | File | Blob | Response)[] | FileList;\n\n/**\n * Parses `data` synchronously using a specified loader\n */\nexport async function loadInBatches<\n LoaderT extends LoaderWithParser,\n OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>\n>(\n files: FileType,\n loader: LoaderT,\n options?: OptionsT,\n context?: LoaderContext\n): Promise<AsyncIterable<LoaderBatchType<LoaderT>>>;\n\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\nexport function loadInBatches(\n files: FileType,\n loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>>;\n\nexport function loadInBatches(\n files: FileType[] | FileList,\n loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>>[];\n\nexport function loadInBatches(\n files: FileType | FileType[] | FileList,\n loaders?: LoaderWithParser | LoaderWithParser[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>> | Promise<AsyncIterable<unknown>>[] {\n let loadersArray: LoaderWithParser | LoaderWithParser[] | undefined;\n // Signature: load(url, options)\n if (!Array.isArray(loaders) && !isLoaderObject(loaders)) {\n context = undefined; // context not supported in short signature\n options = loaders as LoaderOptions;\n loadersArray = undefined;\n } else {\n loadersArray = loaders as LoaderWithParser | LoaderWithParser[] | undefined;\n }\n\n // Select fetch function\n const fetch = getFetchFunction(options || {});\n\n // Single url/file\n if (!Array.isArray(files)) {\n return loadOneFileInBatches(files, loadersArray!, options || {}, fetch);\n }\n\n // Multiple URLs / files\n const promises = files.map((file) =>\n loadOneFileInBatches(file, loadersArray!, options || {}, fetch)\n );\n\n // No point in waiting here for all responses before starting to stream individual streams?\n return promises;\n}\n\nasync function loadOneFileInBatches(\n file: FileType,\n loaders: LoaderWithParser | LoaderWithParser[],\n options: LoaderOptions,\n fetch: FetchLike\n): Promise<AsyncIterable<unknown>> {\n if (typeof file === 'string') {\n const url = file;\n const response = await fetch(url);\n // pick right overload\n return Array.isArray(loaders)\n ? await parseInBatches(response, loaders, options)\n : await parseInBatches(response, loaders, options);\n }\n // pick right overload\n return Array.isArray(loaders)\n ? await parseInBatches(file as BatchableDataType, loaders, options)\n : await parseInBatches(file as BatchableDataType, loaders, options);\n}\n"],"mappings":"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"}
|
|
@@ -52,7 +52,7 @@ function _parseInBatches() {
|
|
|
52
52
|
_context.next = 12;
|
|
53
53
|
break;
|
|
54
54
|
}
|
|
55
|
-
return _context.abrupt("return",
|
|
55
|
+
return _context.abrupt("return", []);
|
|
56
56
|
case 12:
|
|
57
57
|
options = (0, _optionUtils.normalizeOptions)(options, loader, loaderArray, url);
|
|
58
58
|
context = (0, _loaderContext.getLoaderContext)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-in-batches.js","names":["_loaderUtils","require","_normalizeLoader","_optionUtils","_loaderContext","_getData","_resourceUtils","_selectLoader","_parse","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","_asyncIterator","iterable","method","async","sync","retry","Symbol","asyncIterator","iterator","call","AsyncFromSyncIterator","TypeError","s","AsyncFromSyncIteratorContinuation","r","Promise","reject","done","resolve","value","then","n","next","prototype","return","_return","ret","throw","_throw","thr","parseInBatches","_x2","_x3","_x4","_x5","_parseInBatches","_asyncToGenerator2","_regenerator","mark","_callee","data","loaders","options","context","loaderArray","url","loader","wrap","_callee$","_context","prev","Array","isArray","undefined","isLoaderObject","sent","getResourceUrl","selectLoader","abrupt","normalizeOptions","getLoaderContext","parse","parseWithLoaderInBatches","stop","_x6","_x7","_x8","_x9","_parseWithLoaderInBatches","_callee3","outputIterator","metadataBatch","makeMetadataBatchIterator","_makeMetadataBatchIterator","_callee3$","_context3","_makeMetadataBatchIte2","_wrapAsyncGenerator2","_callee2","_callee2$","_context2","delegateYield","_asyncGeneratorDelegate2","_awaitAsyncGenerator2","_makeMetadataBatchIte","_x","parseToOutputIterator","metadata","batchType","_loader","bytesUsed","_x10","_x11","_x12","_x13","_parseToOutputIterator","_callee5","inputIterator","transformedIterator","parseChunkInBatches","_parseChunkInBatches","_callee5$","_context5","_parseChunkInBatches3","_callee4","arrayBuffer","parsedData","batch","_callee4$","_context4","concatenateArrayBuffersAsync","mimeType","mimeTypes","shape","_parseChunkInBatches2","getAsyncIterableFromData","applyInputTransforms","transforms","_x14","_applyInputTransforms","_callee6","iteratorChain","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","transformBatches","_args6","_callee6$","_context6","t0","finish"],"sources":["../../../../src/lib/api/parse-in-batches.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport type {Batch} from '@loaders.gl/schema';\nimport type {Loader, LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {LoaderContext, BatchableDataType} from '@loaders.gl/loader-utils';\nimport type {LoaderBatchType, LoaderOptionsType} from '@loaders.gl/loader-utils';\nimport {concatenateArrayBuffersAsync} from '@loaders.gl/loader-utils';\nimport {isLoaderObject} from '../loader-utils/normalize-loader';\nimport {normalizeOptions} from '../loader-utils/option-utils';\nimport {getLoaderContext} from '../loader-utils/loader-context';\nimport {getAsyncIterableFromData} from '../loader-utils/get-data';\nimport {getResourceUrl} from '../utils/resource-utils';\nimport {selectLoader} from './select-loader';\n\n// Ensure `parse` is available in context if loader falls back to `parse`\nimport {parse} from './parse';\n\n/**\n * Parses `data` synchronously using a specified loader\n */\nexport async function parseInBatches<\n LoaderT extends Loader,\n OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>\n>(\n data: BatchableDataType,\n loader: LoaderT,\n options?: OptionsT,\n context?: LoaderContext\n): Promise<AsyncIterable<LoaderBatchType<LoaderT>>>;\n\n/**\n * Parses `data` using one of the supplied loaders\n */\nexport async function parseInBatches(\n data: BatchableDataType,\n loaders: Loader[],\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>>;\n\n/**\n * Parses `data` in batches by selecting a pre-registered loader\n */\nexport async function parseInBatches(\n data: BatchableDataType,\n options?: LoaderOptions\n): Promise<AsyncIterable<unknown>>;\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 parseInBatches(\n data: BatchableDataType,\n loaders?: Loader | Loader[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>> {\n const loaderArray = Array.isArray(loaders) ? loaders : undefined;\n\n // Signature: parseInBatches(data, options, url) - Uses registered loaders\n if (!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 = getResourceUrl(data);\n\n // Chooses a loader and normalizes it\n // Note - only uses URL and contentType for streams and iterator inputs\n const loader = await selectLoader(data as ArrayBuffer, loaders as Loader | Loader[], options);\n // Note: if options.nothrow was set, it is possible that no loader was found, if so just return null\n if (!loader) {\n // @ts-ignore\n return null;\n }\n\n // Normalize options\n options = normalizeOptions(options, loader, loaderArray, url);\n context = getLoaderContext(\n {url, _parseInBatches: parseInBatches, _parse: parse, loaders: loaderArray},\n options,\n context || null\n );\n\n return await parseWithLoaderInBatches(loader as LoaderWithParser, data, options, context);\n}\n\n/**\n * Loader has been selected and context has been prepared, see if we need to emit a metadata batch\n */\nasync function parseWithLoaderInBatches(\n loader: LoaderWithParser,\n data: BatchableDataType,\n options: LoaderOptions,\n context: LoaderContext\n): Promise<AsyncIterable<unknown>> {\n const outputIterator = await parseToOutputIterator(loader, data, options, context);\n\n // Generate metadata batch if requested\n if (!options.metadata) {\n return outputIterator;\n }\n\n const metadataBatch = {\n batchType: 'metadata',\n metadata: {\n _loader: loader,\n _context: context\n },\n // Populate with some default fields to avoid crashing\n data: [],\n bytesUsed: 0\n };\n\n async function* makeMetadataBatchIterator(\n iterator: Iterable<unknown> | AsyncIterable<unknown>\n ): AsyncIterable<unknown> {\n yield metadataBatch;\n yield* iterator;\n }\n\n return makeMetadataBatchIterator(outputIterator);\n}\n\n/**\n * Prep work is done, now it is time to start parsing into an output operator\n * The approach depends on which parse function the loader exposes\n * `parseInBatches` (preferred), `parse` (fallback)\n */\nasync function parseToOutputIterator(\n loader: LoaderWithParser,\n data: BatchableDataType,\n options: LoaderOptions,\n context: LoaderContext\n): Promise<AsyncIterable<unknown>> {\n // Get an iterator from the input\n const inputIterator = await getAsyncIterableFromData(data, options);\n\n // Apply any iterator transforms (options.transforms)\n const transformedIterator = await applyInputTransforms(inputIterator, options?.transforms || []);\n\n // If loader supports parseInBatches, we are done\n if (loader.parseInBatches) {\n return loader.parseInBatches(transformedIterator, options, context);\n }\n\n // Fallback: load atomically using `parse` concatenating input iterator into single chunk\n async function* parseChunkInBatches() {\n const arrayBuffer = await concatenateArrayBuffersAsync(transformedIterator);\n // Call `parse` instead of `loader.parse` to ensure we can call workers etc.\n const parsedData = await parse(\n arrayBuffer,\n loader,\n // TODO - Hack: supply loaders MIME type to ensure we match it\n {...options, mimeType: loader.mimeTypes[0]},\n context\n );\n // yield a single batch, the output from loader.parse()\n // TODO - run through batch builder to apply options etc...\n const batch: Batch = {\n mimeType: loader.mimeTypes[0],\n shape: Array.isArray(parsedData) ? 'row-table' : 'unknown',\n batchType: 'data',\n data: parsedData,\n length: Array.isArray(parsedData) ? parsedData.length : 1\n };\n yield batch;\n }\n\n return parseChunkInBatches();\n}\n\ntype TransformBatches = (\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n) => AsyncIterable<ArrayBuffer>;\n\n/**\n * Create an iterator chain with any transform iterators (crypto, decompression)\n * @param inputIterator\n * @param options\n */\nasync function applyInputTransforms(\n inputIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>,\n transforms: TransformBatches[] = []\n): Promise<AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>> {\n let iteratorChain = inputIterator;\n for await (const transformBatches of transforms) {\n iteratorChain = transformBatches(iteratorChain);\n }\n return iteratorChain;\n}\n"],"mappings":";;;;;;;;;;;;;AAMA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,cAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AAGA,IAAAO,MAAA,GAAAP,OAAA;AAA8B,SAAAQ,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAC,MAAA,CAAAD,IAAA,CAAAF,MAAA,OAAAG,MAAA,CAAAC,qBAAA,QAAAC,OAAA,GAAAF,MAAA,CAAAC,qBAAA,CAAAJ,MAAA,GAAAC,cAAA,KAAAI,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAJ,MAAA,CAAAK,wBAAA,CAAAR,MAAA,EAAAO,GAAA,EAAAE,UAAA,OAAAP,IAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,IAAA,EAAAG,OAAA,YAAAH,IAAA;AAAA,SAAAU,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAf,OAAA,CAAAI,MAAA,CAAAc,MAAA,OAAAC,OAAA,WAAAC,GAAA,QAAAC,gBAAA,CAAAC,OAAA,EAAAR,MAAA,EAAAM,GAAA,EAAAF,MAAA,CAAAE,GAAA,SAAAhB,MAAA,CAAAmB,yBAAA,GAAAnB,MAAA,CAAAoB,gBAAA,CAAAV,MAAA,EAAAV,MAAA,CAAAmB,yBAAA,CAAAL,MAAA,KAAAlB,OAAA,CAAAI,MAAA,CAAAc,MAAA,GAAAC,OAAA,WAAAC,GAAA,IAAAhB,MAAA,CAAAqB,cAAA,CAAAX,MAAA,EAAAM,GAAA,EAAAhB,MAAA,CAAAK,wBAAA,CAAAS,MAAA,EAAAE,GAAA,iBAAAN,MAAA;AAAA,SAAAY,eAAAC,QAAA,QAAAC,MAAA,EAAAC,KAAA,EAAAC,IAAA,EAAAC,KAAA,iCAAAC,MAAA,KAAAH,KAAA,GAAAG,MAAA,CAAAC,aAAA,EAAAH,IAAA,GAAAE,MAAA,CAAAE,QAAA,GAAAH,KAAA,WAAAF,KAAA,aAAAD,MAAA,GAAAD,QAAA,CAAAE,KAAA,WAAAD,MAAA,CAAAO,IAAA,CAAAR,QAAA,OAAAG,IAAA,aAAAF,MAAA,GAAAD,QAAA,CAAAG,IAAA,eAAAM,qBAAA,CAAAR,MAAA,CAAAO,IAAA,CAAAR,QAAA,IAAAE,KAAA,sBAAAC,IAAA,6BAAAO,SAAA;AAAA,SAAAD,sBAAAE,CAAA,aAAAC,kCAAAC,CAAA,QAAApC,MAAA,CAAAoC,CAAA,MAAAA,CAAA,SAAAC,OAAA,CAAAC,MAAA,KAAAL,SAAA,CAAAG,CAAA,+BAAAG,IAAA,GAAAH,CAAA,CAAAG,IAAA,SAAAF,OAAA,CAAAG,OAAA,CAAAJ,CAAA,CAAAK,KAAA,EAAAC,IAAA,WAAAD,KAAA,aAAAA,KAAA,EAAAA,KAAA,EAAAF,IAAA,EAAAA,IAAA,iBAAAP,qBAAA,YAAAA,sBAAAE,CAAA,SAAAA,CAAA,GAAAA,CAAA,OAAAS,CAAA,GAAAT,CAAA,CAAAU,IAAA,KAAAZ,qBAAA,CAAAa,SAAA,KAAAX,CAAA,QAAAS,CAAA,QAAAC,IAAA,WAAAA,KAAA,WAAAT,iCAAA,MAAAQ,CAAA,CAAAnC,KAAA,MAAA0B,CAAA,EAAAtB,SAAA,OAAAkC,MAAA,WAAAC,QAAAN,KAAA,QAAAO,GAAA,QAAAd,CAAA,CAAAY,MAAA,oBAAAE,GAAA,GAAAX,OAAA,CAAAG,OAAA,GAAAC,KAAA,EAAAA,KAAA,EAAAF,IAAA,UAAAJ,iCAAA,CAAAa,GAAA,CAAAxC,KAAA,MAAA0B,CAAA,EAAAtB,SAAA,OAAAqC,KAAA,WAAAC,OAAAT,KAAA,QAAAU,GAAA,QAAAjB,CAAA,CAAAY,MAAA,oBAAAK,GAAA,GAAAd,OAAA,CAAAC,MAAA,CAAAG,KAAA,IAAAN,iCAAA,CAAAgB,GAAA,CAAA3C,KAAA,MAAA0B,CAAA,EAAAtB,SAAA,aAAAoB,qBAAA,CAAAE,CAAA;AAAA,SAwCRkB,cAAcA,CAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,eAAA,CAAAjD,KAAA,OAAAI,SAAA;AAAA;AAAA,SAAA6C,gBAAA;EAAAA,eAAA,OAAAC,kBAAA,CAAAxC,OAAA,EAAAyC,YAAA,CAAAzC,OAAA,CAAA0C,IAAA,CAA7B,SAAAC,QACLC,IAAuB,EACvBC,OAA2C,EAC3CC,OAAuB,EACvBC,OAAuB;IAAA,IAAAC,WAAA,EAAAC,GAAA,EAAAC,MAAA;IAAA,OAAAT,YAAA,CAAAzC,OAAA,CAAAmD,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAA3B,IAAA;QAAA;UAEjBsB,WAAW,GAAGO,KAAK,CAACC,OAAO,CAACX,OAAO,CAAC,GAAGA,OAAO,GAAGY,SAAS;UAGhE,IAAI,CAACF,KAAK,CAACC,OAAO,CAACX,OAAO,CAAC,IAAI,CAAC,IAAAa,+BAAc,EAACb,OAAO,CAAC,EAAE;YACvDE,OAAO,GAAGU,SAAS;YACnBX,OAAO,GAAGD,OAAwB;YAClCA,OAAO,GAAGY,SAAS;UACrB;UAACJ,QAAA,CAAA3B,IAAA;UAAA,OAEYkB,IAAI;QAAA;UAAjBA,IAAI,GAAAS,QAAA,CAAAM,IAAA;UACJb,OAAO,GAAGA,OAAO,IAAI,CAAC,CAAC;UAGjBG,GAAG,GAAG,IAAAW,6BAAc,EAAChB,IAAI,CAAC;UAAAS,QAAA,CAAA3B,IAAA;UAAA,OAIX,IAAAmC,0BAAY,EAACjB,IAAI,EAAiBC,OAAO,EAAuBC,OAAO,CAAC;QAAA;UAAvFI,MAAM,GAAAG,QAAA,CAAAM,IAAA;UAAA,IAEPT,MAAM;YAAAG,QAAA,CAAA3B,IAAA;YAAA;UAAA;UAAA,OAAA2B,QAAA,CAAAS,MAAA,WAEF,IAAI;QAAA;UAIbhB,OAAO,GAAG,IAAAiB,6BAAgB,EAACjB,OAAO,EAAEI,MAAM,EAAEF,WAAW,EAAEC,GAAG,CAAC;UAC7DF,OAAO,GAAG,IAAAiB,+BAAgB,EACxB;YAACf,GAAG,EAAHA,GAAG;YAAEV,eAAe,EAAEL,cAAc;YAAEzD,MAAM,EAAEwF,YAAK;YAAEpB,OAAO,EAAEG;UAAW,CAAC,EAC3EF,OAAO,EACPC,OAAO,IAAI,IACb,CAAC;UAACM,QAAA,CAAA3B,IAAA;UAAA,OAEWwC,wBAAwB,CAAChB,MAAM,EAAsBN,IAAI,EAAEE,OAAO,EAAEC,OAAO,CAAC;QAAA;UAAA,OAAAM,QAAA,CAAAS,MAAA,WAAAT,QAAA,CAAAM,IAAA;QAAA;QAAA;UAAA,OAAAN,QAAA,CAAAc,IAAA;MAAA;IAAA,GAAAxB,OAAA;EAAA,CAC1F;EAAA,OAAAJ,eAAA,CAAAjD,KAAA,OAAAI,SAAA;AAAA;AAAA,SAKcwE,wBAAwBA,CAAAE,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,yBAAA,CAAAlF,KAAA,OAAAI,SAAA;AAAA;AAAA,SAAA8E,0BAAA;EAAAA,yBAAA,OAAAhC,kBAAA,CAAAxC,OAAA,EAAAyC,YAAA,CAAAzC,OAAA,CAAA0C,IAAA,CAAvC,SAAA+B,SACEvB,MAAwB,EACxBN,IAAuB,EACvBE,OAAsB,EACtBC,OAAsB;IAAA,IAAA2B,cAAA,EAAAC,aAAA,EAoBNC,yBAAyB,EAAAC,0BAAA;IAAA,OAAApC,YAAA,CAAAzC,OAAA,CAAAmD,IAAA,UAAA2B,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAzB,IAAA,GAAAyB,SAAA,CAAArD,IAAA;QAAA;UAAAmD,0BAAA,YAAAG,uBAAA;YAAAH,0BAAA,OAAAI,oBAAA,CAAAjF,OAAA,EAAAyC,YAAA,CAAAzC,OAAA,CAAA0C,IAAA,CAAzC,SAAAwC,SACEtE,QAAoD;cAAA,OAAA6B,YAAA,CAAAzC,OAAA,CAAAmD,IAAA,UAAAgC,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAA9B,IAAA,GAAA8B,SAAA,CAAA1D,IAAA;kBAAA;oBAAA0D,SAAA,CAAA1D,IAAA;oBAEpD,OAAMiD,aAAa;kBAAA;oBACnB,OAAAS,SAAA,CAAAC,aAAA,KAAAC,wBAAA,CAAAtF,OAAA,EAAAI,cAAA,CAAOQ,QAAQ,GAAA2E,qBAAA,CAAAvF,OAAA;kBAAA;kBAAA;oBAAA,OAAAoF,SAAA,CAAAjB,IAAA;gBAAA;cAAA,GAAAe,QAAA;YAAA,CAChB;YAAA,OAAAL,0BAAA,CAAAvF,KAAA,OAAAI,SAAA;UAAA;UALekF,yBAAyB,YAAAY,sBAAAC,EAAA;YAAA,OAAAZ,0BAAA,CAAAvF,KAAA,OAAAI,SAAA;UAAA;UAAAqF,SAAA,CAAArD,IAAA;UAAA,OAlBZgE,qBAAqB,CAACxC,MAAM,EAAEN,IAAI,EAAEE,OAAO,EAAEC,OAAO,CAAC;QAAA;UAA5E2B,cAAc,GAAAK,SAAA,CAAApB,IAAA;UAAA,IAGfb,OAAO,CAAC6C,QAAQ;YAAAZ,SAAA,CAAArD,IAAA;YAAA;UAAA;UAAA,OAAAqD,SAAA,CAAAjB,MAAA,WACZY,cAAc;QAAA;UAGjBC,aAAa,GAAG;YACpBiB,SAAS,EAAE,UAAU;YACrBD,QAAQ,EAAE;cACRE,OAAO,EAAE3C,MAAM;cACfG,QAAQ,EAAEN;YACZ,CAAC;YAEDH,IAAI,EAAE,EAAE;YACRkD,SAAS,EAAE;UACb,CAAC;UAAA,OAAAf,SAAA,CAAAjB,MAAA,WASMc,yBAAyB,CAACF,cAAc,CAAC;QAAA;QAAA;UAAA,OAAAK,SAAA,CAAAZ,IAAA;MAAA;IAAA,GAAAM,QAAA;EAAA,CACjD;EAAA,OAAAD,yBAAA,CAAAlF,KAAA,OAAAI,SAAA;AAAA;AAAA,SAOcgG,qBAAqBA,CAAAK,IAAA,EAAAC,IAAA,EAAAC,IAAA,EAAAC,IAAA;EAAA,OAAAC,sBAAA,CAAA7G,KAAA,OAAAI,SAAA;AAAA;AAAA,SAAAyG,uBAAA;EAAAA,sBAAA,OAAA3D,kBAAA,CAAAxC,OAAA,EAAAyC,YAAA,CAAAzC,OAAA,CAAA0C,IAAA,CAApC,SAAA0D,SACElD,MAAwB,EACxBN,IAAuB,EACvBE,OAAsB,EACtBC,OAAsB;IAAA,IAAAsD,aAAA,EAAAC,mBAAA,EAcNC,mBAAmB,EAAAC,oBAAA;IAAA,OAAA/D,YAAA,CAAAzC,OAAA,CAAAmD,IAAA,UAAAsD,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAApD,IAAA,GAAAoD,SAAA,CAAAhF,IAAA;QAAA;UAAA8E,oBAAA,YAAAG,sBAAA;YAAAH,oBAAA,OAAAvB,oBAAA,CAAAjF,OAAA,EAAAyC,YAAA,CAAAzC,OAAA,CAAA0C,IAAA,CAAnC,SAAAkE,SAAA;cAAA,IAAAC,WAAA,EAAAC,UAAA,EAAAC,KAAA;cAAA,OAAAtE,YAAA,CAAAzC,OAAA,CAAAmD,IAAA,UAAA6D,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAA3D,IAAA,GAAA2D,SAAA,CAAAvF,IAAA;kBAAA;oBAAAuF,SAAA,CAAAvF,IAAA;oBAAA,WAAA6D,qBAAA,CAAAvF,OAAA,EAC4B,IAAAkH,yCAA4B,EAACZ,mBAAmB,CAAC;kBAAA;oBAArEO,WAAW,GAAAI,SAAA,CAAAtD,IAAA;oBAAAsD,SAAA,CAAAvF,IAAA;oBAAA,WAAA6D,qBAAA,CAAAvF,OAAA,EAEQ,IAAAiE,YAAK,EAC5B4C,WAAW,EACX3D,MAAM,EAAA3D,aAAA,CAAAA,aAAA,KAEFuD,OAAO;sBAAEqE,QAAQ,EAAEjE,MAAM,CAACkE,SAAS,CAAC,CAAC;oBAAC,IAC1CrE,OACF,CAAC;kBAAA;oBANK+D,UAAU,GAAAG,SAAA,CAAAtD,IAAA;oBASVoD,KAAY,GAAG;sBACnBI,QAAQ,EAAEjE,MAAM,CAACkE,SAAS,CAAC,CAAC,CAAC;sBAC7BC,KAAK,EAAE9D,KAAK,CAACC,OAAO,CAACsD,UAAU,CAAC,GAAG,WAAW,GAAG,SAAS;sBAC1DlB,SAAS,EAAE,MAAM;sBACjBhD,IAAI,EAAEkE,UAAU;sBAChBnH,MAAM,EAAE4D,KAAK,CAACC,OAAO,CAACsD,UAAU,CAAC,GAAGA,UAAU,CAACnH,MAAM,GAAG;oBAC1D,CAAC;oBAAAsH,SAAA,CAAAvF,IAAA;oBACD,OAAMqF,KAAK;kBAAA;kBAAA;oBAAA,OAAAE,SAAA,CAAA9C,IAAA;gBAAA;cAAA,GAAAyC,QAAA;YAAA,CACZ;YAAA,OAAAJ,oBAAA,CAAAlH,KAAA,OAAAI,SAAA;UAAA;UApBe6G,mBAAmB,YAAAe,sBAAA;YAAA,OAAAd,oBAAA,CAAAlH,KAAA,OAAAI,SAAA;UAAA;UAAAgH,SAAA,CAAAhF,IAAA;UAAA,OAXP,IAAA6F,iCAAwB,EAAC3E,IAAI,EAAEE,OAAO,CAAC;QAAA;UAA7DuD,aAAa,GAAAK,SAAA,CAAA/C,IAAA;UAAA+C,SAAA,CAAAhF,IAAA;UAAA,OAGe8F,oBAAoB,CAACnB,aAAa,EAAE,CAAAvD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAE2E,UAAU,KAAI,EAAE,CAAC;QAAA;UAA1FnB,mBAAmB,GAAAI,SAAA,CAAA/C,IAAA;UAAA,KAGrBT,MAAM,CAAChB,cAAc;YAAAwE,SAAA,CAAAhF,IAAA;YAAA;UAAA;UAAA,OAAAgF,SAAA,CAAA5C,MAAA,WAChBZ,MAAM,CAAChB,cAAc,CAACoE,mBAAmB,EAAExD,OAAO,EAAEC,OAAO,CAAC;QAAA;UAAA,OAAA2D,SAAA,CAAA5C,MAAA,WA0B9DyC,mBAAmB,CAAC,CAAC;QAAA;QAAA;UAAA,OAAAG,SAAA,CAAAvC,IAAA;MAAA;IAAA,GAAAiC,QAAA;EAAA,CAC7B;EAAA,OAAAD,sBAAA,CAAA7G,KAAA,OAAAI,SAAA;AAAA;AAAA,SAWc8H,oBAAoBA,CAAAE,IAAA;EAAA,OAAAC,qBAAA,CAAArI,KAAA,OAAAI,SAAA;AAAA;AAAA,SAAAiI,sBAAA;EAAAA,qBAAA,OAAAnF,kBAAA,CAAAxC,OAAA,EAAAyC,YAAA,CAAAzC,OAAA,CAAA0C,IAAA,CAAnC,SAAAkF,SACEvB,aAAiE;IAAA,IAAAoB,UAAA;MAAAI,aAAA;MAAAC,yBAAA;MAAAC,iBAAA;MAAAC,cAAA;MAAAC,SAAA;MAAAC,KAAA;MAAAC,gBAAA;MAAAC,MAAA,GAAA1I,SAAA;IAAA,OAAA+C,YAAA,CAAAzC,OAAA,CAAAmD,IAAA,UAAAkF,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAhF,IAAA,GAAAgF,SAAA,CAAA5G,IAAA;QAAA;UACjE+F,UAA8B,GAAAW,MAAA,CAAAzI,MAAA,QAAAyI,MAAA,QAAA3E,SAAA,GAAA2E,MAAA,MAAG,EAAE;UAE/BP,aAAa,GAAGxB,aAAa;UAAAyB,yBAAA;UAAAC,iBAAA;UAAAO,SAAA,CAAAhF,IAAA;UAAA2E,SAAA,GAAA7H,cAAA,CACIqH,UAAU;QAAA;UAAAa,SAAA,CAAA5G,IAAA;UAAA,OAAAuG,SAAA,CAAAvG,IAAA;QAAA;UAAA,MAAAoG,yBAAA,KAAAI,KAAA,GAAAI,SAAA,CAAA3E,IAAA,EAAAtC,IAAA;YAAAiH,SAAA,CAAA5G,IAAA;YAAA;UAAA;UAA9ByG,gBAAgB,GAAAD,KAAA,CAAA3G,KAAA;UAC/BsG,aAAa,GAAGM,gBAAgB,CAACN,aAAa,CAAC;QAAC;UAAAC,yBAAA;UAAAQ,SAAA,CAAA5G,IAAA;UAAA;QAAA;UAAA4G,SAAA,CAAA5G,IAAA;UAAA;QAAA;UAAA4G,SAAA,CAAAhF,IAAA;UAAAgF,SAAA,CAAAC,EAAA,GAAAD,SAAA;UAAAP,iBAAA;UAAAC,cAAA,GAAAM,SAAA,CAAAC,EAAA;QAAA;UAAAD,SAAA,CAAAhF,IAAA;UAAAgF,SAAA,CAAAhF,IAAA;UAAA,MAAAwE,yBAAA,IAAAG,SAAA,CAAArG,MAAA;YAAA0G,SAAA,CAAA5G,IAAA;YAAA;UAAA;UAAA4G,SAAA,CAAA5G,IAAA;UAAA,OAAAuG,SAAA,CAAArG,MAAA;QAAA;UAAA0G,SAAA,CAAAhF,IAAA;UAAA,KAAAyE,iBAAA;YAAAO,SAAA,CAAA5G,IAAA;YAAA;UAAA;UAAA,MAAAsG,cAAA;QAAA;UAAA,OAAAM,SAAA,CAAAE,MAAA;QAAA;UAAA,OAAAF,SAAA,CAAAE,MAAA;QAAA;UAAA,OAAAF,SAAA,CAAAxE,MAAA,WAE3C+D,aAAa;QAAA;QAAA;UAAA,OAAAS,SAAA,CAAAnE,IAAA;MAAA;IAAA,GAAAyD,QAAA;EAAA,CACrB;EAAA,OAAAD,qBAAA,CAAArI,KAAA,OAAAI,SAAA;AAAA"}
|
|
1
|
+
{"version":3,"file":"parse-in-batches.js","names":["_loaderUtils","require","_normalizeLoader","_optionUtils","_loaderContext","_getData","_resourceUtils","_selectLoader","_parse","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty2","default","getOwnPropertyDescriptors","defineProperties","defineProperty","_asyncIterator","iterable","method","async","sync","retry","Symbol","asyncIterator","iterator","call","AsyncFromSyncIterator","TypeError","s","AsyncFromSyncIteratorContinuation","r","Promise","reject","done","resolve","value","then","n","next","prototype","return","_return","ret","throw","_throw","thr","parseInBatches","_x2","_x3","_x4","_x5","_parseInBatches","_asyncToGenerator2","_regenerator","mark","_callee","data","loaders","options","context","loaderArray","url","loader","wrap","_callee$","_context","prev","Array","isArray","undefined","isLoaderObject","sent","getResourceUrl","selectLoader","abrupt","normalizeOptions","getLoaderContext","parse","parseWithLoaderInBatches","stop","_x6","_x7","_x8","_x9","_parseWithLoaderInBatches","_callee3","outputIterator","metadataBatch","makeMetadataBatchIterator","_makeMetadataBatchIterator","_callee3$","_context3","_makeMetadataBatchIte2","_wrapAsyncGenerator2","_callee2","_callee2$","_context2","delegateYield","_asyncGeneratorDelegate2","_awaitAsyncGenerator2","_makeMetadataBatchIte","_x","parseToOutputIterator","metadata","batchType","_loader","bytesUsed","_x10","_x11","_x12","_x13","_parseToOutputIterator","_callee5","inputIterator","transformedIterator","parseChunkInBatches","_parseChunkInBatches","_callee5$","_context5","_parseChunkInBatches3","_callee4","arrayBuffer","parsedData","batch","_callee4$","_context4","concatenateArrayBuffersAsync","mimeType","mimeTypes","shape","_parseChunkInBatches2","getAsyncIterableFromData","applyInputTransforms","transforms","_x14","_applyInputTransforms","_callee6","iteratorChain","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","transformBatches","_args6","_callee6$","_context6","t0","finish"],"sources":["../../../../src/lib/api/parse-in-batches.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport type {Batch} from '@loaders.gl/schema';\nimport type {Loader, LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {LoaderContext, BatchableDataType} from '@loaders.gl/loader-utils';\nimport type {LoaderBatchType, LoaderOptionsType} from '@loaders.gl/loader-utils';\nimport {concatenateArrayBuffersAsync} from '@loaders.gl/loader-utils';\nimport {isLoaderObject} from '../loader-utils/normalize-loader';\nimport {normalizeOptions} from '../loader-utils/option-utils';\nimport {getLoaderContext} from '../loader-utils/loader-context';\nimport {getAsyncIterableFromData} from '../loader-utils/get-data';\nimport {getResourceUrl} from '../utils/resource-utils';\nimport {selectLoader} from './select-loader';\n\n// Ensure `parse` is available in context if loader falls back to `parse`\nimport {parse} from './parse';\n\n/**\n * Parses `data` synchronously using a specified loader\n */\nexport async function parseInBatches<\n LoaderT extends Loader,\n OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>\n>(\n data: BatchableDataType,\n loader: LoaderT,\n options?: OptionsT,\n context?: LoaderContext\n): Promise<AsyncIterable<LoaderBatchType<LoaderT>>>;\n\n/**\n * Parses `data` using one of the supplied loaders\n */\nexport async function parseInBatches(\n data: BatchableDataType,\n loaders: Loader[],\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown>>;\n\n/**\n * Parses `data` in batches by selecting a pre-registered loader\n */\nexport async function parseInBatches(\n data: BatchableDataType,\n options?: LoaderOptions\n): Promise<AsyncIterable<unknown>>;\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 parseInBatches(\n data: BatchableDataType,\n loaders?: Loader | Loader[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<AsyncIterable<unknown> | Iterable<unknown>> {\n const loaderArray = Array.isArray(loaders) ? loaders : undefined;\n\n // Signature: parseInBatches(data, options, url) - Uses registered loaders\n if (!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 = getResourceUrl(data);\n\n // Chooses a loader and normalizes it\n // Note - only uses URL and contentType for streams and iterator inputs\n const loader = await selectLoader(data as ArrayBuffer, loaders as Loader | Loader[], options);\n // Note: if options.nothrow was set, it is possible that no loader was found, if so just return null\n if (!loader) {\n return [];\n }\n\n // Normalize options\n options = normalizeOptions(options, loader, loaderArray, url);\n context = getLoaderContext(\n {url, _parseInBatches: parseInBatches, _parse: parse, loaders: loaderArray},\n options,\n context || null\n );\n\n return await parseWithLoaderInBatches(loader as LoaderWithParser, data, options, context);\n}\n\n/**\n * Loader has been selected and context has been prepared, see if we need to emit a metadata batch\n */\nasync function parseWithLoaderInBatches(\n loader: LoaderWithParser,\n data: BatchableDataType,\n options: LoaderOptions,\n context: LoaderContext\n): Promise<AsyncIterable<unknown>> {\n const outputIterator = await parseToOutputIterator(loader, data, options, context);\n\n // Generate metadata batch if requested\n if (!options.metadata) {\n return outputIterator;\n }\n\n const metadataBatch = {\n batchType: 'metadata',\n metadata: {\n _loader: loader,\n _context: context\n },\n // Populate with some default fields to avoid crashing\n data: [],\n bytesUsed: 0\n };\n\n async function* makeMetadataBatchIterator(\n iterator: Iterable<unknown> | AsyncIterable<unknown>\n ): AsyncIterable<unknown> {\n yield metadataBatch;\n yield* iterator;\n }\n\n return makeMetadataBatchIterator(outputIterator);\n}\n\n/**\n * Prep work is done, now it is time to start parsing into an output operator\n * The approach depends on which parse function the loader exposes\n * `parseInBatches` (preferred), `parse` (fallback)\n */\nasync function parseToOutputIterator(\n loader: LoaderWithParser,\n data: BatchableDataType,\n options: LoaderOptions,\n context: LoaderContext\n): Promise<AsyncIterable<unknown>> {\n // Get an iterator from the input\n const inputIterator = await getAsyncIterableFromData(data, options);\n\n // Apply any iterator transforms (options.transforms)\n const transformedIterator = await applyInputTransforms(inputIterator, options?.transforms || []);\n\n // If loader supports parseInBatches, we are done\n if (loader.parseInBatches) {\n return loader.parseInBatches(transformedIterator, options, context);\n }\n\n // Fallback: load atomically using `parse` concatenating input iterator into single chunk\n async function* parseChunkInBatches() {\n const arrayBuffer = await concatenateArrayBuffersAsync(transformedIterator);\n // Call `parse` instead of `loader.parse` to ensure we can call workers etc.\n const parsedData = await parse(\n arrayBuffer,\n loader,\n // TODO - Hack: supply loaders MIME type to ensure we match it\n {...options, mimeType: loader.mimeTypes[0]},\n context\n );\n // yield a single batch, the output from loader.parse()\n // TODO - run through batch builder to apply options etc...\n const batch: Batch = {\n mimeType: loader.mimeTypes[0],\n shape: Array.isArray(parsedData) ? 'row-table' : 'unknown',\n batchType: 'data',\n data: parsedData,\n length: Array.isArray(parsedData) ? parsedData.length : 1\n };\n yield batch;\n }\n\n return parseChunkInBatches();\n}\n\ntype TransformBatches = (\n asyncIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>\n) => AsyncIterable<ArrayBuffer>;\n\n/**\n * Create an iterator chain with any transform iterators (crypto, decompression)\n * @param inputIterator\n * @param options\n */\nasync function applyInputTransforms(\n inputIterator: AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>,\n transforms: TransformBatches[] = []\n): Promise<AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>> {\n let iteratorChain = inputIterator;\n for await (const transformBatches of transforms) {\n iteratorChain = transformBatches(iteratorChain);\n }\n return iteratorChain;\n}\n"],"mappings":"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"}
|
|
@@ -76,6 +76,7 @@ function _parseWithLoader() {
|
|
|
76
76
|
while (1) switch (_context2.prev = _context2.next) {
|
|
77
77
|
case 0:
|
|
78
78
|
(0, _workerUtils.validateWorkerVersion)(loader);
|
|
79
|
+
options = (0, _loaderUtils.mergeLoaderOptions)(loader.options, options);
|
|
79
80
|
if ((0, _isType.isResponse)(data)) {
|
|
80
81
|
response = data;
|
|
81
82
|
ok = response.ok, redirected = response.redirected, status = response.status, statusText = response.statusText, type = response.type, url = response.url;
|
|
@@ -90,47 +91,47 @@ function _parseWithLoader() {
|
|
|
90
91
|
url: url
|
|
91
92
|
};
|
|
92
93
|
}
|
|
93
|
-
_context2.next =
|
|
94
|
+
_context2.next = 5;
|
|
94
95
|
return (0, _getData.getArrayBufferOrStringFromData)(data, loader, options);
|
|
95
|
-
case
|
|
96
|
+
case 5:
|
|
96
97
|
data = _context2.sent;
|
|
97
98
|
loaderWithParser = loader;
|
|
98
99
|
if (!(loaderWithParser.parseTextSync && typeof data === 'string')) {
|
|
99
|
-
_context2.next =
|
|
100
|
+
_context2.next = 9;
|
|
100
101
|
break;
|
|
101
102
|
}
|
|
102
103
|
return _context2.abrupt("return", loaderWithParser.parseTextSync(data, options, context));
|
|
103
|
-
case
|
|
104
|
+
case 9:
|
|
104
105
|
if (!(0, _loaderUtils.canParseWithWorker)(loader, options)) {
|
|
105
|
-
_context2.next =
|
|
106
|
+
_context2.next = 13;
|
|
106
107
|
break;
|
|
107
108
|
}
|
|
108
|
-
_context2.next =
|
|
109
|
+
_context2.next = 12;
|
|
109
110
|
return (0, _loaderUtils.parseWithWorker)(loader, data, options, context, parse);
|
|
110
|
-
case 11:
|
|
111
|
-
return _context2.abrupt("return", _context2.sent);
|
|
112
111
|
case 12:
|
|
112
|
+
return _context2.abrupt("return", _context2.sent);
|
|
113
|
+
case 13:
|
|
113
114
|
if (!(loaderWithParser.parseText && typeof data === 'string')) {
|
|
114
|
-
_context2.next =
|
|
115
|
+
_context2.next = 17;
|
|
115
116
|
break;
|
|
116
117
|
}
|
|
117
|
-
_context2.next =
|
|
118
|
+
_context2.next = 16;
|
|
118
119
|
return loaderWithParser.parseText(data, options, context);
|
|
119
|
-
case 15:
|
|
120
|
-
return _context2.abrupt("return", _context2.sent);
|
|
121
120
|
case 16:
|
|
121
|
+
return _context2.abrupt("return", _context2.sent);
|
|
122
|
+
case 17:
|
|
122
123
|
if (!loaderWithParser.parse) {
|
|
123
|
-
_context2.next =
|
|
124
|
+
_context2.next = 21;
|
|
124
125
|
break;
|
|
125
126
|
}
|
|
126
|
-
_context2.next =
|
|
127
|
+
_context2.next = 20;
|
|
127
128
|
return loaderWithParser.parse(data, options, context);
|
|
128
|
-
case 19:
|
|
129
|
-
return _context2.abrupt("return", _context2.sent);
|
|
130
129
|
case 20:
|
|
130
|
+
return _context2.abrupt("return", _context2.sent);
|
|
131
|
+
case 21:
|
|
131
132
|
(0, _workerUtils.assert)(!loaderWithParser.parseSync);
|
|
132
133
|
throw new Error("".concat(loader.id, " loader - no parser found and worker is disabled"));
|
|
133
|
-
case
|
|
134
|
+
case 23:
|
|
134
135
|
case "end":
|
|
135
136
|
return _context2.stop();
|
|
136
137
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","names":["_loaderUtils","require","_workerUtils","_normalizeLoader","_isType","_optionUtils","_getData","_loaderContext","_resourceUtils","_selectLoader","parse","_x","_x2","_x3","_x4","_parse","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","data","loaders","options","context","url","typedLoaders","candidateLoaders","loader","wrap","_callee$","_context","prev","next","Array","isArray","isLoaderObject","undefined","sent","getResourceUrl","getLoadersFromContext","selectLoader","abrupt","normalizeOptions","getLoaderContext","parseWithLoader","stop","_x5","_x6","_x7","_x8","_parseWithLoader","_callee2","response","ok","redirected","status","statusText","type","headers","loaderWithParser","_callee2$","_context2","validateWorkerVersion","isResponse","Object","fromEntries","entries","getArrayBufferOrStringFromData","parseTextSync","canParseWithWorker","parseWithWorker","parseText","assert","parseSync","Error","concat","id"],"sources":["../../../../src/lib/api/parse.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport type {Loader, LoaderContext, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {DataType, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport type {LoaderOptionsType, LoaderReturnType} from '@loaders.gl/loader-utils';\nimport {parseWithWorker, canParseWithWorker} from '@loaders.gl/loader-utils';\nimport {assert, validateWorkerVersion} from '@loaders.gl/worker-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 {getResourceUrl} from '../utils/resource-utils';\nimport {selectLoader} from './select-loader';\n\n// type LoaderArrayType<T> = T extends (infer Loader)[] ? LoaderOptionsType<Loader> : T\n\n/**\n * Parses `data` asynchronously using the supplied loader\n */\nexport async function parse<\n LoaderT extends Loader,\n OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>\n>(\n data: DataType | Promise<DataType>,\n loader: LoaderT,\n options?: OptionsT,\n context?: LoaderContext\n): Promise<LoaderReturnType<LoaderT>>;\n\n/**\n * Parses `data` asynchronously by matching one of the supplied loader\n */\nexport async function parse(\n data: DataType | Promise<DataType>,\n loaders: Loader[],\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<unknown>;\n\n/**\n * Parses data asynchronously by matching a pre-registered loader\n */\nexport async function parse(\n data: DataType | Promise<DataType>,\n options?: LoaderOptions\n): Promise<unknown>;\n\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\n// implementation signature\nexport async function parse(\n data: DataType | Promise<DataType>,\n loaders?: Loader | Loader[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<unknown> {\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 || ({} as LoaderOptions); // Could be invalid...\n\n // Extract a url for auto detection\n const url = getResourceUrl(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 // @ts-expect-error\n options = normalizeOptions(options, loader, candidateLoaders, url); // Could be invalid...\n\n // Get a context (if already present, will be unchanged)\n context = getLoaderContext(\n // @ts-expect-error\n {url, _parse: parse, loaders: candidateLoaders},\n options,\n context || null\n );\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(\n loader: Loader,\n data,\n options: LoaderOptions,\n context: LoaderContext\n): Promise<unknown> {\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 // @ts-expect-error TODO - fix this\n context.response = {headers, ok, redirected, status, statusText, type, url};\n }\n\n data = await getArrayBufferOrStringFromData(data, loader, options);\n\n const loaderWithParser = loader as LoaderWithParser;\n\n // First check for synchronous text parser, wrap results in promises\n if (loaderWithParser.parseTextSync && typeof data === 'string') {\n return loaderWithParser.parseTextSync(data, options, context);\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 (loaderWithParser.parseText && typeof data === 'string') {\n return await loaderWithParser.parseText(data, options, context);\n }\n\n if (loaderWithParser.parse) {\n return await loaderWithParser.parse(data, options, context);\n }\n\n // This should not happen, all sync loaders should also offer `parse` function\n assert(!loaderWithParser.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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"}
|
|
1
|
+
{"version":3,"file":"parse.js","names":["_loaderUtils","require","_workerUtils","_normalizeLoader","_isType","_optionUtils","_getData","_loaderContext","_resourceUtils","_selectLoader","parse","_x","_x2","_x3","_x4","_parse","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","data","loaders","options","context","url","typedLoaders","candidateLoaders","loader","wrap","_callee$","_context","prev","next","Array","isArray","isLoaderObject","undefined","sent","getResourceUrl","getLoadersFromContext","selectLoader","abrupt","normalizeOptions","getLoaderContext","parseWithLoader","stop","_x5","_x6","_x7","_x8","_parseWithLoader","_callee2","response","ok","redirected","status","statusText","type","headers","loaderWithParser","_callee2$","_context2","validateWorkerVersion","mergeLoaderOptions","isResponse","Object","fromEntries","entries","getArrayBufferOrStringFromData","parseTextSync","canParseWithWorker","parseWithWorker","parseText","assert","parseSync","Error","concat","id"],"sources":["../../../../src/lib/api/parse.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport type {Loader, LoaderContext, LoaderOptions} from '@loaders.gl/loader-utils';\nimport type {DataType, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport type {LoaderOptionsType, LoaderReturnType} from '@loaders.gl/loader-utils';\nimport {parseWithWorker, canParseWithWorker} from '@loaders.gl/loader-utils';\nimport {assert, validateWorkerVersion} from '@loaders.gl/worker-utils';\nimport {isLoaderObject} from '../loader-utils/normalize-loader';\nimport {isResponse} from '../../javascript-utils/is-type';\nimport {normalizeOptions} from '../loader-utils/option-utils';\nimport {mergeLoaderOptions} from '@loaders.gl/loader-utils';\nimport {getArrayBufferOrStringFromData} from '../loader-utils/get-data';\nimport {getLoaderContext, getLoadersFromContext} from '../loader-utils/loader-context';\nimport {getResourceUrl} from '../utils/resource-utils';\nimport {selectLoader} from './select-loader';\n\n// type LoaderArrayType<T> = T extends (infer Loader)[] ? LoaderOptionsType<Loader> : T\n\n/**\n * Parses `data` asynchronously using the supplied loader\n */\nexport async function parse<\n LoaderT extends Loader,\n OptionsT extends LoaderOptions = LoaderOptionsType<LoaderT>\n>(\n data: DataType | Promise<DataType>,\n loader: LoaderT,\n options?: OptionsT,\n context?: LoaderContext\n): Promise<LoaderReturnType<LoaderT>>;\n\n/**\n * Parses `data` asynchronously by matching one of the supplied loader\n */\nexport async function parse(\n data: DataType | Promise<DataType>,\n loaders: Loader[],\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<unknown>;\n\n/**\n * Parses data asynchronously by matching a pre-registered loader\n */\nexport async function parse(\n data: DataType | Promise<DataType>,\n options?: LoaderOptions\n): Promise<unknown>;\n\n/**\n * Parses `data` using a specified loader\n * @param data\n * @param loaders\n * @param options\n * @param context\n */\n// implementation signature\nexport async function parse(\n data: DataType | Promise<DataType>,\n loaders?: Loader | Loader[] | LoaderOptions,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<unknown> {\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 || ({} as LoaderOptions); // Could be invalid...\n\n // Extract a url for auto detection\n const url = getResourceUrl(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 // @ts-expect-error\n options = normalizeOptions(options, loader, candidateLoaders, url); // Could be invalid...\n\n // Get a context (if already present, will be unchanged)\n context = getLoaderContext(\n // @ts-expect-error\n {url, _parse: parse, loaders: candidateLoaders},\n options,\n context || null\n );\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(\n loader: Loader,\n data,\n options: LoaderOptions,\n context: LoaderContext\n): Promise<unknown> {\n validateWorkerVersion(loader);\n\n options = mergeLoaderOptions(loader.options, options);\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 // @ts-expect-error TODO - fix this\n context.response = {headers, ok, redirected, status, statusText, type, url};\n }\n\n data = await getArrayBufferOrStringFromData(data, loader, options);\n\n const loaderWithParser = loader as LoaderWithParser;\n\n // First check for synchronous text parser, wrap results in promises\n if (loaderWithParser.parseTextSync && typeof data === 'string') {\n return loaderWithParser.parseTextSync(data, options, context);\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 (loaderWithParser.parseText && typeof data === 'string') {\n return await loaderWithParser.parseText(data, options, context);\n }\n\n if (loaderWithParser.parse) {\n return await loaderWithParser.parse(data, options, context);\n }\n\n // This should not happen, all sync loaders should also offer `parse` function\n assert(!loaderWithParser.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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"}
|
package/dist/es5/lib/init.js
CHANGED
|
@@ -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.
|
|
8
|
+
var version = typeof "4.0.0-alpha.25" !== 'undefined' ? "4.0.0-alpha.25" : '';
|
|
9
9
|
if (!globalThis.loaders) {
|
|
10
10
|
_log.log.log(1, "loaders.gl ".concat(version))();
|
|
11
11
|
globalThis.loaders = Object.assign(globalThis.loaders || {}, {
|
|
@@ -152,7 +152,7 @@ function _getAsyncIterableFromData() {
|
|
|
152
152
|
_context4.next = 14;
|
|
153
153
|
break;
|
|
154
154
|
}
|
|
155
|
-
return _context4.abrupt("return", data
|
|
155
|
+
return _context4.abrupt("return", data);
|
|
156
156
|
case 14:
|
|
157
157
|
return _context4.abrupt("return", getIterableFromData(data));
|
|
158
158
|
case 15:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-data.js","names":["_loaderUtils","require","_isType","_makeIterator","_responseUtils","ERR_DATA","getArrayBufferOrStringFromDataSync","data","loader","options","text","isBuffer","buffer","ArrayBuffer","arrayBuffer","binary","textDecoder","TextDecoder","decode","isView","byteLength","length","byteOffset","slice","Error","getArrayBufferOrStringFromData","_x","_x2","_x3","_getArrayBufferOrStringFromData","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","isArrayBuffer","response","wrap","_callee$","_context3","prev","next","abrupt","isBlob","makeResponse","sent","isResponse","checkResponse","t0","isReadableStream","makeIterator","isIterable","isAsyncIterable","concatenateArrayBuffersAsync","stop","getAsyncIterableFromData","_x4","_x5","_getAsyncIterableFromData","_callee2","body","_callee2$","_context4","isIterator","Symbol","asyncIterator","getIterableFromData","getReadableStream","_x6","_getReadableStream","_callee3","_callee3$","_context5","oneChunk","oneChunk$","_context","_context2","iterator"],"sources":["../../../../src/lib/loader-utils/get-data.ts"],"sourcesContent":["import type {\n DataType,\n SyncDataType,\n BatchableDataType,\n Loader,\n LoaderOptions\n} from '@loaders.gl/loader-utils';\nimport {concatenateArrayBuffersAsync} from '@loaders.gl/loader-utils';\nimport {\n isResponse,\n isReadableStream,\n isAsyncIterable,\n isIterable,\n isIterator,\n isBlob,\n isBuffer\n} from '../../javascript-utils/is-type';\nimport {makeIterator} from '../../iterators/make-iterator/make-iterator';\nimport {checkResponse, makeResponse} from '../utils/response-utils';\n\nconst ERR_DATA = 'Cannot convert supplied data type';\n\n// eslint-disable-next-line complexity\nexport function getArrayBufferOrStringFromDataSync(\n data: SyncDataType,\n loader: Loader,\n options: LoaderOptions\n): ArrayBuffer | string {\n if (loader.text && typeof data === 'string') {\n return data;\n }\n\n if (isBuffer(data)) {\n // @ts-ignore\n data = data.buffer;\n }\n\n if (data instanceof ArrayBuffer) {\n const arrayBuffer = data;\n if (loader.text && !loader.binary) {\n const textDecoder = new TextDecoder('utf8');\n return textDecoder.decode(arrayBuffer);\n }\n return arrayBuffer;\n }\n\n // We may need to handle offsets\n if (ArrayBuffer.isView(data)) {\n // TextDecoder is invoked on typed arrays and will handle offsets\n if (loader.text && !loader.binary) {\n const textDecoder = new TextDecoder('utf8');\n return textDecoder.decode(data);\n }\n\n let arrayBuffer = data.buffer;\n\n // Since we are returning the underlying arrayBuffer, we must create a new copy\n // if this typed array / Buffer is a partial view into the ArryayBuffer\n // TODO - this is a potentially unnecessary copy\n const byteLength = data.byteLength || data.length;\n if (data.byteOffset !== 0 || byteLength !== arrayBuffer.byteLength) {\n // console.warn(`loaders.gl copying arraybuffer of length ${byteLength}`);\n arrayBuffer = arrayBuffer.slice(data.byteOffset, data.byteOffset + byteLength);\n }\n return arrayBuffer;\n }\n\n throw new Error(ERR_DATA);\n}\n\n// Convert async iterator to a promise\nexport async function getArrayBufferOrStringFromData(\n data: DataType,\n loader: Loader,\n options: LoaderOptions\n): Promise<ArrayBuffer | string> {\n const isArrayBuffer = data instanceof ArrayBuffer || ArrayBuffer.isView(data);\n if (typeof data === 'string' || isArrayBuffer) {\n return getArrayBufferOrStringFromDataSync(data as string | ArrayBuffer, loader, options);\n }\n\n // Blobs and files are FileReader compatible\n if (isBlob(data)) {\n data = await makeResponse(data);\n }\n\n if (isResponse(data)) {\n const response = data as Response;\n await checkResponse(response);\n return loader.binary ? await response.arrayBuffer() : await response.text();\n }\n\n if (isReadableStream(data)) {\n // @ts-expect-error TS2559 options type\n data = makeIterator(data as ReadableStream, options);\n }\n\n if (isIterable(data) || isAsyncIterable(data)) {\n // Assume arrayBuffer iterator - attempt to concatenate\n return concatenateArrayBuffersAsync(data as AsyncIterable<ArrayBuffer>);\n }\n\n throw new Error(ERR_DATA);\n}\n\nexport async function getAsyncIterableFromData(\n data: BatchableDataType,\n options: LoaderOptions\n): Promise<AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>> {\n if (isIterator(data)) {\n return data as AsyncIterable<ArrayBuffer>;\n }\n\n if (isResponse(data)) {\n const response = data as Response;\n // Note Since this function is not async, we currently can't load error message, just status\n await checkResponse(response);\n // TODO - bug in polyfill, body can be a Promise under Node.js\n // eslint-disable-next-line @typescript-eslint/await-thenable\n const body = await response.body;\n // TODO - body can be null?\n return makeIterator(body as ReadableStream<Uint8Array>, options as any);\n }\n\n if (isBlob(data) || isReadableStream(data)) {\n return makeIterator(data as Blob | ReadableStream, options as any);\n }\n\n if (isAsyncIterable(data)) {\n // @ts-ignore\n return data[Symbol.asyncIterator]();\n }\n\n return getIterableFromData(data);\n}\n\nexport async function getReadableStream(data: BatchableDataType): Promise<ReadableStream> {\n if (isReadableStream(data)) {\n return data as ReadableStream;\n }\n if (isResponse(data)) {\n // @ts-ignore\n return data.body;\n }\n const response = await makeResponse(data);\n // @ts-ignore\n return response.body;\n}\n\n// HELPERS\n\nfunction getIterableFromData(data) {\n // generate an iterator that emits a single chunk\n if (ArrayBuffer.isView(data)) {\n return (function* oneChunk() {\n yield data.buffer;\n })();\n }\n\n if (data instanceof ArrayBuffer) {\n return (function* oneChunk() {\n yield data;\n })();\n }\n\n if (isIterator(data)) {\n return data;\n }\n\n if (isIterable(data)) {\n return data[Symbol.iterator]();\n }\n\n throw new Error(ERR_DATA);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"get-data.js","names":["_loaderUtils","require","_isType","_makeIterator","_responseUtils","ERR_DATA","getArrayBufferOrStringFromDataSync","data","loader","options","text","isBuffer","buffer","ArrayBuffer","arrayBuffer","binary","textDecoder","TextDecoder","decode","isView","byteLength","length","byteOffset","slice","Error","getArrayBufferOrStringFromData","_x","_x2","_x3","_getArrayBufferOrStringFromData","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","isArrayBuffer","response","wrap","_callee$","_context3","prev","next","abrupt","isBlob","makeResponse","sent","isResponse","checkResponse","t0","isReadableStream","makeIterator","isIterable","isAsyncIterable","concatenateArrayBuffersAsync","stop","getAsyncIterableFromData","_x4","_x5","_getAsyncIterableFromData","_callee2","body","_callee2$","_context4","isIterator","getIterableFromData","getReadableStream","_x6","_getReadableStream","_callee3","_callee3$","_context5","oneChunk","oneChunk$","_context","_context2","Symbol","iterator"],"sources":["../../../../src/lib/loader-utils/get-data.ts"],"sourcesContent":["import type {\n DataType,\n SyncDataType,\n BatchableDataType,\n Loader,\n LoaderOptions\n} from '@loaders.gl/loader-utils';\nimport {concatenateArrayBuffersAsync} from '@loaders.gl/loader-utils';\nimport {\n isResponse,\n isReadableStream,\n isAsyncIterable,\n isIterable,\n isIterator,\n isBlob,\n isBuffer\n} from '../../javascript-utils/is-type';\nimport {makeIterator} from '../../iterators/make-iterator/make-iterator';\nimport {checkResponse, makeResponse} from '../utils/response-utils';\n\nconst ERR_DATA = 'Cannot convert supplied data type';\n\n// eslint-disable-next-line complexity\nexport function getArrayBufferOrStringFromDataSync(\n data: SyncDataType,\n loader: Loader,\n options: LoaderOptions\n): ArrayBuffer | string {\n if (loader.text && typeof data === 'string') {\n return data;\n }\n\n if (isBuffer(data)) {\n // @ts-ignore\n data = data.buffer;\n }\n\n if (data instanceof ArrayBuffer) {\n const arrayBuffer = data;\n if (loader.text && !loader.binary) {\n const textDecoder = new TextDecoder('utf8');\n return textDecoder.decode(arrayBuffer);\n }\n return arrayBuffer;\n }\n\n // We may need to handle offsets\n if (ArrayBuffer.isView(data)) {\n // TextDecoder is invoked on typed arrays and will handle offsets\n if (loader.text && !loader.binary) {\n const textDecoder = new TextDecoder('utf8');\n return textDecoder.decode(data);\n }\n\n let arrayBuffer = data.buffer;\n\n // Since we are returning the underlying arrayBuffer, we must create a new copy\n // if this typed array / Buffer is a partial view into the ArryayBuffer\n // TODO - this is a potentially unnecessary copy\n const byteLength = data.byteLength || data.length;\n if (data.byteOffset !== 0 || byteLength !== arrayBuffer.byteLength) {\n // console.warn(`loaders.gl copying arraybuffer of length ${byteLength}`);\n arrayBuffer = arrayBuffer.slice(data.byteOffset, data.byteOffset + byteLength);\n }\n return arrayBuffer;\n }\n\n throw new Error(ERR_DATA);\n}\n\n// Convert async iterator to a promise\nexport async function getArrayBufferOrStringFromData(\n data: DataType,\n loader: Loader,\n options: LoaderOptions\n): Promise<ArrayBuffer | string> {\n const isArrayBuffer = data instanceof ArrayBuffer || ArrayBuffer.isView(data);\n if (typeof data === 'string' || isArrayBuffer) {\n return getArrayBufferOrStringFromDataSync(data as string | ArrayBuffer, loader, options);\n }\n\n // Blobs and files are FileReader compatible\n if (isBlob(data)) {\n data = await makeResponse(data);\n }\n\n if (isResponse(data)) {\n const response = data as Response;\n await checkResponse(response);\n return loader.binary ? await response.arrayBuffer() : await response.text();\n }\n\n if (isReadableStream(data)) {\n // @ts-expect-error TS2559 options type\n data = makeIterator(data as ReadableStream, options);\n }\n\n if (isIterable(data) || isAsyncIterable(data)) {\n // Assume arrayBuffer iterator - attempt to concatenate\n return concatenateArrayBuffersAsync(data as AsyncIterable<ArrayBuffer>);\n }\n\n throw new Error(ERR_DATA);\n}\n\nexport async function getAsyncIterableFromData(\n data: BatchableDataType,\n options: LoaderOptions\n): Promise<AsyncIterable<ArrayBuffer> | Iterable<ArrayBuffer>> {\n if (isIterator(data)) {\n return data as AsyncIterable<ArrayBuffer>;\n }\n\n if (isResponse(data)) {\n const response = data as Response;\n // Note Since this function is not async, we currently can't load error message, just status\n await checkResponse(response);\n // TODO - bug in polyfill, body can be a Promise under Node.js\n // eslint-disable-next-line @typescript-eslint/await-thenable\n const body = await response.body;\n // TODO - body can be null?\n return makeIterator(body as ReadableStream<Uint8Array>, options as any);\n }\n\n if (isBlob(data) || isReadableStream(data)) {\n return makeIterator(data as Blob | ReadableStream, options as any);\n }\n\n if (isAsyncIterable(data)) {\n return data as AsyncIterable<ArrayBuffer>;\n }\n\n return getIterableFromData(data);\n}\n\nexport async function getReadableStream(data: BatchableDataType): Promise<ReadableStream> {\n if (isReadableStream(data)) {\n return data as ReadableStream;\n }\n if (isResponse(data)) {\n // @ts-ignore\n return data.body;\n }\n const response = await makeResponse(data);\n // @ts-ignore\n return response.body;\n}\n\n// HELPERS\n\nfunction getIterableFromData(data) {\n // generate an iterator that emits a single chunk\n if (ArrayBuffer.isView(data)) {\n return (function* oneChunk() {\n yield data.buffer;\n })();\n }\n\n if (data instanceof ArrayBuffer) {\n return (function* oneChunk() {\n yield data;\n })();\n }\n\n if (isIterator(data)) {\n return data;\n }\n\n if (isIterable(data)) {\n return data[Symbol.iterator]();\n }\n\n throw new Error(ERR_DATA);\n}\n"],"mappings":"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"}
|
package/dist/es5/null-loader.js
CHANGED
|
@@ -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.
|
|
14
|
+
var VERSION = typeof "4.0.0-alpha.25" !== 'undefined' ? "4.0.0-alpha.25" : 'latest';
|
|
15
15
|
var NullWorkerLoader = {
|
|
16
16
|
name: 'Null loader',
|
|
17
17
|
id: 'null',
|
package/dist/esm/index.js
CHANGED
|
@@ -11,7 +11,8 @@ export { parseInBatches } from './lib/api/parse-in-batches';
|
|
|
11
11
|
export { load } from './lib/api/load';
|
|
12
12
|
export { loadInBatches } from './lib/api/load-in-batches';
|
|
13
13
|
export { encodeTable, encodeTableAsText, encodeTableInBatches } from './lib/api/encode-table';
|
|
14
|
-
export { encode, encodeSync, encodeInBatches,
|
|
14
|
+
export { encode, encodeSync, encodeInBatches, encodeURLtoURL } from './lib/api/encode';
|
|
15
|
+
export { encodeText, encodeTextSync } from './lib/api/encode';
|
|
15
16
|
export { save, saveSync } from './lib/api/save';
|
|
16
17
|
export { setPathPrefix, getPathPrefix, resolvePath } from '@loaders.gl/loader-utils';
|
|
17
18
|
export { RequestScheduler } from '@loaders.gl/loader-utils';
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["fetchFile","readArrayBuffer","readFileSync","writeFile","writeFileSync","setLoaderOptions","getLoaderOptions","registerLoaders","selectLoader","selectLoaderSync","parse","parseSync","parseInBatches","load","loadInBatches","encodeTable","encodeTableAsText","encodeTableInBatches","encode","encodeSync","encodeInBatches","encodeText","
|
|
1
|
+
{"version":3,"file":"index.js","names":["fetchFile","readArrayBuffer","readFileSync","writeFile","writeFileSync","setLoaderOptions","getLoaderOptions","registerLoaders","selectLoader","selectLoaderSync","parse","parseSync","parseInBatches","load","loadInBatches","encodeTable","encodeTableAsText","encodeTableInBatches","encode","encodeSync","encodeInBatches","encodeURLtoURL","encodeText","encodeTextSync","save","saveSync","setPathPrefix","getPathPrefix","resolvePath","RequestScheduler","makeIterator","makeStream","NullWorkerLoader","NullLoader","JSONLoader","fetchProgress","_fetchProgress","BrowserFileSystem","_BrowserFileSystem","_unregisterLoaders","isBrowser","isWorker","self","window","global","document","assert","forEach","concatenateArrayBuffersAsync","makeTextDecoderIterator","makeTextEncoderIterator","makeLineIterator","makeNumberedLineIterator","isPureObject","isPromise","isIterable","isAsyncIterable","isIterator","isResponse","isReadableStream","isWritableStream"],"sources":["../../src/index.ts"],"sourcesContent":["// loaders.gl, MIT license\n\n// TYPES\nexport type {\n Loader,\n LoaderWithParser,\n LoaderContext,\n LoaderOptions,\n Writer,\n WriterOptions,\n DataType,\n SyncDataType,\n BatchableDataType,\n FileSystem,\n RandomAccessReadFileSystem\n} from '@loaders.gl/loader-utils';\n\n// FILE READING AND WRITING\nexport {fetchFile} from './lib/fetch/fetch-file';\n\nexport {readArrayBuffer} from './lib/fetch/read-array-buffer';\nexport {readFileSync} from './lib/fetch/read-file';\nexport {writeFile, writeFileSync} from './lib/fetch/write-file';\n\n// CONFIGURATION\nexport {setLoaderOptions, getLoaderOptions} from './lib/api/loader-options';\nexport {registerLoaders} from './lib/api/register-loaders';\nexport {selectLoader, selectLoaderSync} from './lib/api/select-loader';\n\n// LOADING (READING + PARSING)\nexport {parse} from './lib/api/parse';\nexport {parseSync} from './lib/api/parse-sync';\nexport {parseInBatches} from './lib/api/parse-in-batches';\n\nexport {load} from './lib/api/load';\nexport {loadInBatches} from './lib/api/load-in-batches';\n\n// ENCODING (ENCODING AND WRITING)\nexport {encodeTable, encodeTableAsText, encodeTableInBatches} from './lib/api/encode-table';\nexport {encode, encodeSync, encodeInBatches, encodeURLtoURL} from './lib/api/encode';\nexport {encodeText, encodeTextSync} from './lib/api/encode';\nexport {save, saveSync} from './lib/api/save';\n\n// CORE UTILS SHARED WITH LOADERS (RE-EXPORTED FROM LOADER-UTILS)\nexport {setPathPrefix, getPathPrefix, resolvePath} from '@loaders.gl/loader-utils';\nexport {RequestScheduler} from '@loaders.gl/loader-utils';\n\n// ITERATOR UTILS\nexport {makeIterator} from './iterators/make-iterator/make-iterator';\nexport {makeStream} from './iterators/make-stream/make-node-stream';\n\n// CORE LOADERS\nexport {NullWorkerLoader, NullLoader} from './null-loader';\nexport {JSONLoader} from '@loaders.gl/loader-utils';\n\n// EXPERIMENTAL\nexport {fetchProgress as _fetchProgress} from './lib/progress/fetch-progress';\nexport {BrowserFileSystem as _BrowserFileSystem} from './lib/filesystems/browser-filesystem';\n\n// FOR TESTING\nexport {_unregisterLoaders} from './lib/api/register-loaders';\n\n//\n// TODO - MOVE TO LOADER-UTILS AND DEPRECATE IN CORE?\n//\n\nexport {isBrowser, isWorker, self, window, global, document} from '@loaders.gl/loader-utils';\nexport {assert} from '@loaders.gl/loader-utils';\nexport {forEach, concatenateArrayBuffersAsync} from '@loaders.gl/loader-utils';\n\nexport {\n makeTextDecoderIterator,\n makeTextEncoderIterator,\n makeLineIterator,\n makeNumberedLineIterator\n} from '@loaders.gl/loader-utils';\n\n// \"JAVASCRIPT\" UTILS - move to loader-utils?\nexport {\n isPureObject,\n isPromise,\n isIterable,\n isAsyncIterable,\n isIterator,\n isResponse,\n isReadableStream,\n isWritableStream\n} from './javascript-utils/is-type';\n"],"mappings":"AAkBA,SAAQA,SAAS,QAAO,wBAAwB;AAEhD,SAAQC,eAAe,QAAO,+BAA+B;AAC7D,SAAQC,YAAY,QAAO,uBAAuB;AAClD,SAAQC,SAAS,EAAEC,aAAa,QAAO,wBAAwB;AAG/D,SAAQC,gBAAgB,EAAEC,gBAAgB,QAAO,0BAA0B;AAC3E,SAAQC,eAAe,QAAO,4BAA4B;AAC1D,SAAQC,YAAY,EAAEC,gBAAgB,QAAO,yBAAyB;AAGtE,SAAQC,KAAK,QAAO,iBAAiB;AACrC,SAAQC,SAAS,QAAO,sBAAsB;AAC9C,SAAQC,cAAc,QAAO,4BAA4B;AAEzD,SAAQC,IAAI,QAAO,gBAAgB;AACnC,SAAQC,aAAa,QAAO,2BAA2B;AAGvD,SAAQC,WAAW,EAAEC,iBAAiB,EAAEC,oBAAoB,QAAO,wBAAwB;AAC3F,SAAQC,MAAM,EAAEC,UAAU,EAAEC,eAAe,EAAEC,cAAc,QAAO,kBAAkB;AACpF,SAAQC,UAAU,EAAEC,cAAc,QAAO,kBAAkB;AAC3D,SAAQC,IAAI,EAAEC,QAAQ,QAAO,gBAAgB;AAG7C,SAAQC,aAAa,EAAEC,aAAa,EAAEC,WAAW,QAAO,0BAA0B;AAClF,SAAQC,gBAAgB,QAAO,0BAA0B;AAGzD,SAAQC,YAAY,QAAO,yCAAyC;AACpE,SAAQC,UAAU,QAAO,0CAA0C;AAGnE,SAAQC,gBAAgB,EAAEC,UAAU,QAAO,eAAe;AAC1D,SAAQC,UAAU,QAAO,0BAA0B;AAGnD,SAAQC,aAAa,IAAIC,cAAc,QAAO,+BAA+B;AAC7E,SAAQC,iBAAiB,IAAIC,kBAAkB,QAAO,sCAAsC;AAG5F,SAAQC,kBAAkB,QAAO,4BAA4B;AAM7D,SAAQC,SAAS,EAAEC,QAAQ,EAAEC,IAAI,EAAEC,MAAM,EAAEC,MAAM,EAAEC,QAAQ,QAAO,0BAA0B;AAC5F,SAAQC,MAAM,QAAO,0BAA0B;AAC/C,SAAQC,OAAO,EAAEC,4BAA4B,QAAO,0BAA0B;AAE9E,SACEC,uBAAuB,EACvBC,uBAAuB,EACvBC,gBAAgB,EAChBC,wBAAwB,QACnB,0BAA0B;AAGjC,SACEC,YAAY,EACZC,SAAS,EACTC,UAAU,EACVC,eAAe,EACfC,UAAU,EACVC,UAAU,EACVC,gBAAgB,EAChBC,gBAAgB,QACX,4BAA4B"}
|