@loaders.gl/loader-utils 4.0.0-beta.1 → 4.0.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1252 -0
- package/dist/index.d.ts +7 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/{esm/json-loader.js → json-loader.js} +1 -1
- package/dist/json-loader.js.map +1 -0
- package/dist/lib/binary-utils/array-buffer-utils.js.map +1 -0
- package/dist/{esm/lib → lib}/binary-utils/dataview-copy-utils.js +1 -1
- package/dist/lib/binary-utils/dataview-copy-utils.js.map +1 -0
- package/dist/lib/binary-utils/get-first-characters.js.map +1 -0
- package/dist/{esm/lib → lib}/binary-utils/memory-conversion-utils.js +1 -1
- package/dist/lib/binary-utils/memory-conversion-utils.js.map +1 -0
- package/dist/{esm/lib → lib}/binary-utils/memory-copy-utils.js +1 -1
- package/dist/lib/binary-utils/memory-copy-utils.js.map +1 -0
- package/dist/lib/env-utils/assert.js.map +1 -0
- package/dist/lib/env-utils/globals.js.map +1 -0
- package/dist/lib/file-provider/data-view-file.d.ts +4 -1
- package/dist/lib/file-provider/data-view-file.d.ts.map +1 -1
- package/dist/{esm/lib → lib}/file-provider/data-view-file.js +1 -2
- package/dist/lib/file-provider/data-view-file.js.map +1 -0
- package/dist/lib/file-provider/file-handle-file.d.ts +12 -19
- package/dist/lib/file-provider/file-handle-file.d.ts.map +1 -1
- package/dist/lib/file-provider/file-handle-file.js +56 -0
- package/dist/lib/file-provider/file-handle-file.js.map +1 -0
- package/dist/lib/file-provider/file-provider.d.ts +1 -0
- package/dist/lib/file-provider/file-provider.d.ts.map +1 -1
- package/dist/lib/file-provider/file-provider.js.map +1 -0
- package/dist/lib/files/blob-file.d.ts +16 -0
- package/dist/lib/files/blob-file.d.ts.map +1 -0
- package/dist/lib/files/blob-file.js +25 -0
- package/dist/lib/files/blob-file.js.map +1 -0
- package/dist/lib/files/file.d.ts +33 -0
- package/dist/lib/files/file.d.ts.map +1 -0
- package/dist/lib/files/file.js +2 -0
- package/dist/lib/files/file.js.map +1 -0
- package/dist/lib/files/http-file.d.ts +21 -0
- package/dist/lib/files/http-file.d.ts.map +1 -0
- package/dist/lib/files/http-file.js +79 -0
- package/dist/lib/files/http-file.js.map +1 -0
- package/dist/lib/files/node-file-facade.d.ts +18 -0
- package/dist/lib/files/node-file-facade.d.ts.map +1 -0
- package/dist/lib/files/node-file-facade.js +29 -0
- package/dist/lib/files/node-file-facade.js.map +1 -0
- package/dist/lib/files/sources.d.ts +1 -0
- package/dist/lib/files/sources.d.ts.map +1 -0
- package/dist/lib/files/sources.js +2 -0
- package/dist/lib/files/sources.js.map +1 -0
- package/dist/lib/filesystems/filesystem.d.ts +18 -65
- package/dist/lib/filesystems/filesystem.d.ts.map +1 -1
- package/dist/lib/filesystems/filesystem.js.map +1 -0
- package/dist/lib/filesystems/node-filesystem-facade.d.ts +23 -0
- package/dist/lib/filesystems/node-filesystem-facade.d.ts.map +1 -0
- package/dist/lib/filesystems/node-filesystem-facade.js +37 -0
- package/dist/lib/filesystems/node-filesystem-facade.js.map +1 -0
- package/dist/{esm/lib → lib}/iterators/async-iteration.js +1 -1
- package/dist/lib/iterators/async-iteration.js.map +1 -0
- package/dist/lib/iterators/text-iterators.js.map +1 -0
- package/dist/lib/node/buffer.browser.d.ts +1 -1
- package/dist/lib/node/buffer.browser.d.ts.map +1 -1
- package/dist/lib/node/buffer.browser.js.map +1 -0
- package/dist/lib/node/buffer.d.ts +1 -1
- package/dist/lib/node/buffer.d.ts.map +1 -1
- package/dist/lib/node/buffer.js.map +1 -0
- package/dist/lib/node/fs.browser.js.map +1 -0
- package/dist/lib/node/promisify.js.map +1 -0
- package/dist/lib/node/stream.browser.js.map +1 -0
- package/dist/lib/node/stream.js.map +1 -0
- package/dist/lib/option-utils/merge-loader-options.js.map +1 -0
- package/dist/lib/parser-utils/parse-json.js +9 -0
- package/dist/lib/parser-utils/parse-json.js.map +1 -0
- package/dist/{esm/lib → lib}/path-utils/file-aliases.js +1 -1
- package/dist/lib/path-utils/file-aliases.js.map +1 -0
- package/dist/lib/path-utils/get-cwd.js.map +1 -0
- package/dist/{esm/lib → lib}/path-utils/path.js +6 -6
- package/dist/lib/path-utils/path.js.map +1 -0
- package/dist/{esm/lib → lib}/request-utils/request-scheduler.js +6 -7
- package/dist/lib/request-utils/request-scheduler.js.map +1 -0
- package/dist/{esm/lib → lib}/sources/data-source.js +4 -5
- package/dist/lib/sources/data-source.js.map +1 -0
- package/dist/lib/sources/image-source.js +5 -0
- package/dist/lib/sources/image-source.js.map +1 -0
- package/dist/lib/sources/image-tile-source.js.map +1 -0
- package/dist/lib/sources/tile-source.js.map +1 -0
- package/dist/lib/sources/utils/image-type.js.map +1 -0
- package/dist/lib/sources/utils/utils.js.map +1 -0
- package/dist/lib/sources/vector-tile-source.js.map +1 -0
- package/dist/{esm/lib → lib}/worker-loader-utils/create-loader-worker.js +1 -1
- package/dist/lib/worker-loader-utils/create-loader-worker.js.map +1 -0
- package/dist/{esm/lib → lib}/worker-loader-utils/encode-with-worker.js +1 -1
- package/dist/lib/worker-loader-utils/encode-with-worker.js.map +1 -0
- package/dist/{esm/lib → lib}/worker-loader-utils/parse-with-worker.js +1 -1
- package/dist/lib/worker-loader-utils/parse-with-worker.js.map +1 -0
- package/dist/loader-types.js.map +1 -0
- package/dist/service-types.js.map +1 -0
- package/dist/types.d.ts +2 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -0
- package/dist/workers/json-worker.js +4 -0
- package/dist/workers/json-worker.js.map +1 -0
- package/dist/writer-types.js.map +1 -0
- package/package.json +13 -5
- package/src/index.ts +10 -15
- package/src/lib/file-provider/data-view-file.ts +4 -2
- package/src/lib/file-provider/file-handle-file.ts +28 -44
- package/src/lib/file-provider/file-provider.ts +1 -0
- package/src/lib/files/blob-file.ts +32 -0
- package/src/lib/files/file.ts +37 -0
- package/src/lib/files/http-file.ts +120 -0
- package/src/lib/files/node-file-facade.ts +39 -0
- package/src/lib/files/sources.ts +150 -0
- package/src/lib/filesystems/filesystem.ts +19 -68
- package/src/lib/filesystems/node-filesystem-facade.ts +63 -0
- package/src/lib/node/buffer.browser.ts +1 -1
- package/src/lib/node/buffer.ts +1 -1
- package/src/types.ts +0 -4
- package/dist/es5/index.js +0 -389
- package/dist/es5/index.js.map +0 -1
- package/dist/es5/json-loader.js +0 -44
- package/dist/es5/json-loader.js.map +0 -1
- package/dist/es5/lib/binary-utils/array-buffer-utils.js +0 -80
- package/dist/es5/lib/binary-utils/array-buffer-utils.js.map +0 -1
- package/dist/es5/lib/binary-utils/dataview-copy-utils.js +0 -58
- package/dist/es5/lib/binary-utils/dataview-copy-utils.js.map +0 -1
- package/dist/es5/lib/binary-utils/get-first-characters.js +0 -31
- package/dist/es5/lib/binary-utils/get-first-characters.js.map +0 -1
- package/dist/es5/lib/binary-utils/memory-conversion-utils.js +0 -44
- package/dist/es5/lib/binary-utils/memory-conversion-utils.js.map +0 -1
- package/dist/es5/lib/binary-utils/memory-copy-utils.js +0 -34
- package/dist/es5/lib/binary-utils/memory-copy-utils.js.map +0 -1
- package/dist/es5/lib/env-utils/assert.js +0 -12
- package/dist/es5/lib/env-utils/assert.js.map +0 -1
- package/dist/es5/lib/env-utils/globals.js +0 -30
- package/dist/es5/lib/env-utils/globals.js.map +0 -1
- package/dist/es5/lib/file-provider/data-view-file.js +0 -146
- package/dist/es5/lib/file-provider/data-view-file.js.map +0 -1
- package/dist/es5/lib/file-provider/file-handle-file.js +0 -236
- package/dist/es5/lib/file-provider/file-handle-file.js.map +0 -1
- package/dist/es5/lib/file-provider/file-handle.js +0 -98
- package/dist/es5/lib/file-provider/file-handle.js.map +0 -1
- package/dist/es5/lib/file-provider/file-provider.js +0 -11
- package/dist/es5/lib/file-provider/file-provider.js.map +0 -1
- package/dist/es5/lib/filesystems/filesystem.js +0 -2
- package/dist/es5/lib/filesystems/filesystem.js.map +0 -1
- package/dist/es5/lib/filesystems/node-filesystem.browser.js +0 -172
- package/dist/es5/lib/filesystems/node-filesystem.browser.js.map +0 -1
- package/dist/es5/lib/filesystems/node-filesystem.js +0 -210
- package/dist/es5/lib/filesystems/node-filesystem.js.map +0 -1
- package/dist/es5/lib/filesystems/readable-file.js +0 -91
- package/dist/es5/lib/filesystems/readable-file.js.map +0 -1
- package/dist/es5/lib/filesystems/writable-file.js +0 -82
- package/dist/es5/lib/filesystems/writable-file.js.map +0 -1
- package/dist/es5/lib/iterators/async-iteration.js +0 -190
- package/dist/es5/lib/iterators/async-iteration.js.map +0 -1
- package/dist/es5/lib/iterators/text-iterators.js +0 -305
- package/dist/es5/lib/iterators/text-iterators.js.map +0 -1
- package/dist/es5/lib/node/buffer.browser.js +0 -14
- package/dist/es5/lib/node/buffer.browser.js.map +0 -1
- package/dist/es5/lib/node/buffer.js +0 -27
- package/dist/es5/lib/node/buffer.js.map +0 -1
- package/dist/es5/lib/node/fs.browser.js +0 -9
- package/dist/es5/lib/node/fs.browser.js.map +0 -1
- package/dist/es5/lib/node/fs.js +0 -82
- package/dist/es5/lib/node/fs.js.map +0 -1
- package/dist/es5/lib/node/promisify.js +0 -36
- package/dist/es5/lib/node/promisify.js.map +0 -1
- package/dist/es5/lib/node/stream.browser.js +0 -9
- package/dist/es5/lib/node/stream.browser.js.map +0 -1
- package/dist/es5/lib/node/stream.js +0 -15
- package/dist/es5/lib/node/stream.js.map +0 -1
- package/dist/es5/lib/option-utils/merge-loader-options.js +0 -30
- package/dist/es5/lib/option-utils/merge-loader-options.js.map +0 -1
- package/dist/es5/lib/parser-utils/parse-json.js +0 -15
- package/dist/es5/lib/parser-utils/parse-json.js.map +0 -1
- package/dist/es5/lib/path-utils/file-aliases.js +0 -33
- package/dist/es5/lib/path-utils/file-aliases.js.map +0 -1
- package/dist/es5/lib/path-utils/get-cwd.js +0 -15
- package/dist/es5/lib/path-utils/get-cwd.js.map +0 -1
- package/dist/es5/lib/path-utils/path.js +0 -136
- package/dist/es5/lib/path-utils/path.js.map +0 -1
- package/dist/es5/lib/request-utils/request-scheduler.js +0 -150
- package/dist/es5/lib/request-utils/request-scheduler.js.map +0 -1
- package/dist/es5/lib/sources/data-source.js +0 -67
- package/dist/es5/lib/sources/data-source.js.map +0 -1
- package/dist/es5/lib/sources/image-source.js +0 -31
- package/dist/es5/lib/sources/image-source.js.map +0 -1
- package/dist/es5/lib/sources/image-tile-source.js +0 -2
- package/dist/es5/lib/sources/image-tile-source.js.map +0 -1
- package/dist/es5/lib/sources/tile-source.js +0 -2
- package/dist/es5/lib/sources/tile-source.js.map +0 -1
- package/dist/es5/lib/sources/utils/image-type.js +0 -2
- package/dist/es5/lib/sources/utils/image-type.js.map +0 -1
- package/dist/es5/lib/sources/utils/utils.js +0 -36
- package/dist/es5/lib/sources/utils/utils.js.map +0 -1
- package/dist/es5/lib/sources/vector-tile-source.js +0 -2
- package/dist/es5/lib/sources/vector-tile-source.js.map +0 -1
- package/dist/es5/lib/worker-loader-utils/create-loader-worker.js +0 -142
- package/dist/es5/lib/worker-loader-utils/create-loader-worker.js.map +0 -1
- package/dist/es5/lib/worker-loader-utils/encode-with-worker.js +0 -18
- package/dist/es5/lib/worker-loader-utils/encode-with-worker.js.map +0 -1
- package/dist/es5/lib/worker-loader-utils/parse-with-worker.js +0 -115
- package/dist/es5/lib/worker-loader-utils/parse-with-worker.js.map +0 -1
- package/dist/es5/loader-types.js +0 -58
- package/dist/es5/loader-types.js.map +0 -1
- package/dist/es5/service-types.js +0 -2
- package/dist/es5/service-types.js.map +0 -1
- package/dist/es5/types.js +0 -2
- package/dist/es5/types.js.map +0 -1
- package/dist/es5/workers/json-worker.js +0 -6
- package/dist/es5/workers/json-worker.js.map +0 -1
- package/dist/es5/writer-types.js +0 -2
- package/dist/es5/writer-types.js.map +0 -1
- package/dist/esm/index.js +0 -36
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/json-loader.js.map +0 -1
- package/dist/esm/lib/binary-utils/array-buffer-utils.js.map +0 -1
- package/dist/esm/lib/binary-utils/dataview-copy-utils.js.map +0 -1
- package/dist/esm/lib/binary-utils/get-first-characters.js.map +0 -1
- package/dist/esm/lib/binary-utils/memory-conversion-utils.js.map +0 -1
- package/dist/esm/lib/binary-utils/memory-copy-utils.js.map +0 -1
- package/dist/esm/lib/env-utils/assert.js.map +0 -1
- package/dist/esm/lib/env-utils/globals.js.map +0 -1
- package/dist/esm/lib/file-provider/data-view-file.js.map +0 -1
- package/dist/esm/lib/file-provider/file-handle-file.js +0 -59
- package/dist/esm/lib/file-provider/file-handle-file.js.map +0 -1
- package/dist/esm/lib/file-provider/file-handle.js +0 -33
- package/dist/esm/lib/file-provider/file-handle.js.map +0 -1
- package/dist/esm/lib/file-provider/file-provider.js.map +0 -1
- package/dist/esm/lib/filesystems/filesystem.js.map +0 -1
- package/dist/esm/lib/filesystems/node-filesystem.browser.js +0 -42
- package/dist/esm/lib/filesystems/node-filesystem.browser.js.map +0 -1
- package/dist/esm/lib/filesystems/node-filesystem.js +0 -53
- package/dist/esm/lib/filesystems/node-filesystem.js.map +0 -1
- package/dist/esm/lib/filesystems/readable-file.js +0 -20
- package/dist/esm/lib/filesystems/readable-file.js.map +0 -1
- package/dist/esm/lib/filesystems/writable-file.js +0 -20
- package/dist/esm/lib/filesystems/writable-file.js.map +0 -1
- package/dist/esm/lib/iterators/async-iteration.js.map +0 -1
- package/dist/esm/lib/iterators/text-iterators.js.map +0 -1
- package/dist/esm/lib/node/buffer.browser.js.map +0 -1
- package/dist/esm/lib/node/buffer.js.map +0 -1
- package/dist/esm/lib/node/fs.browser.js.map +0 -1
- package/dist/esm/lib/node/fs.js +0 -29
- package/dist/esm/lib/node/fs.js.map +0 -1
- package/dist/esm/lib/node/promisify.js.map +0 -1
- package/dist/esm/lib/node/stream.browser.js.map +0 -1
- package/dist/esm/lib/node/stream.js.map +0 -1
- package/dist/esm/lib/option-utils/merge-loader-options.js.map +0 -1
- package/dist/esm/lib/parser-utils/parse-json.js +0 -9
- package/dist/esm/lib/parser-utils/parse-json.js.map +0 -1
- package/dist/esm/lib/path-utils/file-aliases.js.map +0 -1
- package/dist/esm/lib/path-utils/get-cwd.js.map +0 -1
- package/dist/esm/lib/path-utils/path.js.map +0 -1
- package/dist/esm/lib/request-utils/request-scheduler.js.map +0 -1
- package/dist/esm/lib/sources/data-source.js.map +0 -1
- package/dist/esm/lib/sources/image-source.js +0 -6
- package/dist/esm/lib/sources/image-source.js.map +0 -1
- package/dist/esm/lib/sources/image-tile-source.js.map +0 -1
- package/dist/esm/lib/sources/tile-source.js.map +0 -1
- package/dist/esm/lib/sources/utils/image-type.js.map +0 -1
- package/dist/esm/lib/sources/utils/utils.js.map +0 -1
- package/dist/esm/lib/sources/vector-tile-source.js.map +0 -1
- package/dist/esm/lib/worker-loader-utils/create-loader-worker.js.map +0 -1
- package/dist/esm/lib/worker-loader-utils/encode-with-worker.js.map +0 -1
- package/dist/esm/lib/worker-loader-utils/parse-with-worker.js.map +0 -1
- package/dist/esm/loader-types.js.map +0 -1
- package/dist/esm/service-types.js.map +0 -1
- package/dist/esm/types.js.map +0 -1
- package/dist/esm/workers/json-worker.js +0 -4
- package/dist/esm/workers/json-worker.js.map +0 -1
- package/dist/esm/writer-types.js.map +0 -1
- package/dist/lib/file-provider/file-handle.d.ts +0 -40
- package/dist/lib/file-provider/file-handle.d.ts.map +0 -1
- package/dist/lib/filesystems/node-filesystem.browser.d.ts +0 -39
- package/dist/lib/filesystems/node-filesystem.browser.d.ts.map +0 -1
- package/dist/lib/filesystems/node-filesystem.d.ts +0 -39
- package/dist/lib/filesystems/node-filesystem.d.ts.map +0 -1
- package/dist/lib/filesystems/readable-file.d.ts +0 -10
- package/dist/lib/filesystems/readable-file.d.ts.map +0 -1
- package/dist/lib/filesystems/writable-file.d.ts +0 -18
- package/dist/lib/filesystems/writable-file.d.ts.map +0 -1
- package/dist/lib/node/fs.d.ts +0 -30
- package/dist/lib/node/fs.d.ts.map +0 -1
- package/src/lib/file-provider/file-handle.ts +0 -79
- package/src/lib/filesystems/node-filesystem.browser.ts +0 -61
- package/src/lib/filesystems/node-filesystem.ts +0 -79
- package/src/lib/filesystems/readable-file.ts +0 -30
- package/src/lib/filesystems/writable-file.ts +0 -44
- package/src/lib/node/fs.ts +0 -49
- /package/dist/{esm/lib → lib}/binary-utils/array-buffer-utils.js +0 -0
- /package/dist/{esm/lib → lib}/binary-utils/get-first-characters.js +0 -0
- /package/dist/{esm/lib → lib}/env-utils/assert.js +0 -0
- /package/dist/{esm/lib → lib}/env-utils/globals.js +0 -0
- /package/dist/{esm/lib → lib}/file-provider/file-provider.js +0 -0
- /package/dist/{esm/lib → lib}/filesystems/filesystem.js +0 -0
- /package/dist/{esm/lib → lib}/iterators/text-iterators.js +0 -0
- /package/dist/{esm/lib → lib}/node/buffer.browser.js +0 -0
- /package/dist/{esm/lib → lib}/node/buffer.js +0 -0
- /package/dist/{esm/lib → lib}/node/fs.browser.js +0 -0
- /package/dist/{esm/lib → lib}/node/promisify.js +0 -0
- /package/dist/{esm/lib → lib}/node/stream.browser.js +0 -0
- /package/dist/{esm/lib → lib}/node/stream.js +0 -0
- /package/dist/{esm/lib → lib}/option-utils/merge-loader-options.js +0 -0
- /package/dist/{esm/lib → lib}/path-utils/get-cwd.js +0 -0
- /package/dist/{esm/lib → lib}/sources/image-tile-source.js +0 -0
- /package/dist/{esm/lib → lib}/sources/tile-source.js +0 -0
- /package/dist/{esm/lib → lib}/sources/utils/image-type.js +0 -0
- /package/dist/{esm/lib → lib}/sources/utils/utils.js +0 -0
- /package/dist/{esm/lib → lib}/sources/vector-tile-source.js +0 -0
- /package/dist/{esm/loader-types.js → loader-types.js} +0 -0
- /package/dist/{esm/service-types.js → service-types.js} +0 -0
- /package/dist/{esm/types.js → types.js} +0 -0
- /package/dist/{esm/writer-types.js → writer-types.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-first-characters.js","names":["getFirstCharacters","data","length","arguments","undefined","slice","ArrayBuffer","isView","getMagicString","buffer","byteOffset","arrayBuffer","byteLength","dataView","DataView","magic","i","String","fromCharCode","getUint8"],"sources":["../../../../src/lib/binary-utils/get-first-characters.ts"],"sourcesContent":["// loaders.gl, MIT license\n\n/**\n * Get the first characters from a binary file (interpret the first bytes as an ASCII string)\n * @param data\n * @param length\n * @returns\n */\nexport function getFirstCharacters(data: string | ArrayBuffer, length: number = 5): string {\n if (typeof data === 'string') {\n return data.slice(0, length);\n } else if (ArrayBuffer.isView(data)) {\n // Typed Arrays can have offsets into underlying buffer\n return getMagicString(data.buffer, data.byteOffset, length);\n } else if (data instanceof ArrayBuffer) {\n const byteOffset = 0;\n return getMagicString(data, byteOffset, length);\n }\n return '';\n}\n\n/**\n * Gets a magic string from a \"file\"\n * Typically used to check or detect file format\n * @param arrayBuffer\n * @param byteOffset\n * @param length\n * @returns\n */\nexport function getMagicString(\n arrayBuffer: ArrayBuffer,\n byteOffset: number,\n length: number\n): string {\n if (arrayBuffer.byteLength <= byteOffset + length) {\n return '';\n }\n const dataView = new DataView(arrayBuffer);\n let magic = '';\n for (let i = 0; i < length; i++) {\n magic += String.fromCharCode(dataView.getUint8(byteOffset + i));\n }\n return magic;\n}\n"],"mappings":";;;;;;;AAQO,SAASA,kBAAkBA,CAACC,IAA0B,EAA8B;EAAA,IAA5BC,MAAc,GAAAC,SAAA,CAAAD,MAAA,QAAAC,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,CAAC;EAC/E,IAAI,OAAOF,IAAI,KAAK,QAAQ,EAAE;IAC5B,OAAOA,IAAI,CAACI,KAAK,CAAC,CAAC,EAAEH,MAAM,CAAC;EAC9B,CAAC,MAAM,IAAII,WAAW,CAACC,MAAM,CAACN,IAAI,CAAC,EAAE;IAEnC,OAAOO,cAAc,CAACP,IAAI,CAACQ,MAAM,EAAER,IAAI,CAACS,UAAU,EAAER,MAAM,CAAC;EAC7D,CAAC,MAAM,IAAID,IAAI,YAAYK,WAAW,EAAE;IACtC,IAAMI,UAAU,GAAG,CAAC;IACpB,OAAOF,cAAc,CAACP,IAAI,EAAES,UAAU,EAAER,MAAM,CAAC;EACjD;EACA,OAAO,EAAE;AACX;AAUO,SAASM,cAAcA,CAC5BG,WAAwB,EACxBD,UAAkB,EAClBR,MAAc,EACN;EACR,IAAIS,WAAW,CAACC,UAAU,IAAIF,UAAU,GAAGR,MAAM,EAAE;IACjD,OAAO,EAAE;EACX;EACA,IAAMW,QAAQ,GAAG,IAAIC,QAAQ,CAACH,WAAW,CAAC;EAC1C,IAAII,KAAK,GAAG,EAAE;EACd,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGd,MAAM,EAAEc,CAAC,EAAE,EAAE;IAC/BD,KAAK,IAAIE,MAAM,CAACC,YAAY,CAACL,QAAQ,CAACM,QAAQ,CAACT,UAAU,GAAGM,CAAC,CAAC,CAAC;EACjE;EACA,OAAOD,KAAK;AACd"}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.isBuffer = isBuffer;
|
|
9
|
-
exports.toArrayBuffer = toArrayBuffer;
|
|
10
|
-
exports.toBuffer = toBuffer;
|
|
11
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
12
|
-
var node = _interopRequireWildcard(require("../node/buffer"));
|
|
13
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
14
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
15
|
-
function isBuffer(value) {
|
|
16
|
-
return value && (0, _typeof2.default)(value) === 'object' && value.isBuffer;
|
|
17
|
-
}
|
|
18
|
-
function toBuffer(data) {
|
|
19
|
-
return node.toBuffer ? node.toBuffer(data) : data;
|
|
20
|
-
}
|
|
21
|
-
function toArrayBuffer(data) {
|
|
22
|
-
if (isBuffer(data)) {
|
|
23
|
-
return node.toArrayBuffer(data);
|
|
24
|
-
}
|
|
25
|
-
if (data instanceof ArrayBuffer) {
|
|
26
|
-
return data;
|
|
27
|
-
}
|
|
28
|
-
if (ArrayBuffer.isView(data)) {
|
|
29
|
-
if (data.byteOffset === 0 && data.byteLength === data.buffer.byteLength) {
|
|
30
|
-
return data.buffer;
|
|
31
|
-
}
|
|
32
|
-
return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);
|
|
33
|
-
}
|
|
34
|
-
if (typeof data === 'string') {
|
|
35
|
-
var text = data;
|
|
36
|
-
var uint8Array = new TextEncoder().encode(text);
|
|
37
|
-
return uint8Array.buffer;
|
|
38
|
-
}
|
|
39
|
-
if (data && (0, _typeof2.default)(data) === 'object' && data._toArrayBuffer) {
|
|
40
|
-
return data._toArrayBuffer();
|
|
41
|
-
}
|
|
42
|
-
throw new Error('toArrayBuffer');
|
|
43
|
-
}
|
|
44
|
-
//# sourceMappingURL=memory-conversion-utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"memory-conversion-utils.js","names":["node","_interopRequireWildcard","require","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof3","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","isBuffer","value","_typeof2","toBuffer","data","toArrayBuffer","ArrayBuffer","isView","byteOffset","byteLength","buffer","slice","text","uint8Array","TextEncoder","encode","_toArrayBuffer","Error"],"sources":["../../../../src/lib/binary-utils/memory-conversion-utils.ts"],"sourcesContent":["// loaders.gl, MIT license\n\nimport * as node from '../node/buffer';\n\n/**\n * Check for Node.js `Buffer` (without triggering bundler to include Buffer polyfill on browser)\n */\nexport function isBuffer(value: any): boolean {\n return value && typeof value === 'object' && value.isBuffer;\n}\n\n/**\n * Converts to Node.js `Buffer` (without triggering bundler to include Buffer polyfill on browser)\n * @todo better data type\n */\nexport function toBuffer(data: any): Buffer {\n return node.toBuffer ? node.toBuffer(data) : data;\n}\n\n/**\n * Convert an object to an array buffer\n */\nexport function toArrayBuffer(data: unknown): ArrayBuffer {\n // Note: Should be called first, Buffers can trigger other detections below\n if (isBuffer(data)) {\n return node.toArrayBuffer(data);\n }\n\n if (data instanceof ArrayBuffer) {\n return data;\n }\n\n // Careful - Node Buffers look like Uint8Arrays (keep after isBuffer)\n if (ArrayBuffer.isView(data)) {\n if (data.byteOffset === 0 && data.byteLength === data.buffer.byteLength) {\n return data.buffer;\n }\n return data.buffer.slice(data.byteOffset, data.byteOffset + data.byteLength);\n }\n\n if (typeof data === 'string') {\n const text = data;\n const uint8Array = new TextEncoder().encode(text);\n return uint8Array.buffer;\n }\n\n // HACK to support Blob polyfill\n if (data && typeof data === 'object' && (data as any)._toArrayBuffer) {\n return (data as any)._toArrayBuffer();\n }\n\n throw new Error('toArrayBuffer');\n}\n"],"mappings":";;;;;;;;;;;AAEA,IAAAA,IAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAuC,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAH,wBAAAO,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,QAAA,CAAAF,GAAA,yBAAAA,GAAA,4BAAAG,OAAA,EAAAH,GAAA,UAAAI,KAAA,GAAAT,wBAAA,CAAAC,WAAA,OAAAQ,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAL,GAAA,YAAAI,KAAA,CAAAE,GAAA,CAAAN,GAAA,SAAAO,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAZ,GAAA,QAAAY,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAf,GAAA,EAAAY,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAX,GAAA,EAAAY,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAZ,GAAA,CAAAY,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAH,GAAA,MAAAI,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAjB,GAAA,EAAAO,MAAA,YAAAA,MAAA;AAKhC,SAASW,QAAQA,CAACC,KAAU,EAAW;EAC5C,OAAOA,KAAK,IAAI,IAAAC,QAAA,CAAAjB,OAAA,EAAOgB,KAAK,MAAK,QAAQ,IAAIA,KAAK,CAACD,QAAQ;AAC7D;AAMO,SAASG,QAAQA,CAACC,IAAS,EAAU;EAC1C,OAAO9B,IAAI,CAAC6B,QAAQ,GAAG7B,IAAI,CAAC6B,QAAQ,CAACC,IAAI,CAAC,GAAGA,IAAI;AACnD;AAKO,SAASC,aAAaA,CAACD,IAAa,EAAe;EAExD,IAAIJ,QAAQ,CAACI,IAAI,CAAC,EAAE;IAClB,OAAO9B,IAAI,CAAC+B,aAAa,CAACD,IAAI,CAAC;EACjC;EAEA,IAAIA,IAAI,YAAYE,WAAW,EAAE;IAC/B,OAAOF,IAAI;EACb;EAGA,IAAIE,WAAW,CAACC,MAAM,CAACH,IAAI,CAAC,EAAE;IAC5B,IAAIA,IAAI,CAACI,UAAU,KAAK,CAAC,IAAIJ,IAAI,CAACK,UAAU,KAAKL,IAAI,CAACM,MAAM,CAACD,UAAU,EAAE;MACvE,OAAOL,IAAI,CAACM,MAAM;IACpB;IACA,OAAON,IAAI,CAACM,MAAM,CAACC,KAAK,CAACP,IAAI,CAACI,UAAU,EAAEJ,IAAI,CAACI,UAAU,GAAGJ,IAAI,CAACK,UAAU,CAAC;EAC9E;EAEA,IAAI,OAAOL,IAAI,KAAK,QAAQ,EAAE;IAC5B,IAAMQ,IAAI,GAAGR,IAAI;IACjB,IAAMS,UAAU,GAAG,IAAIC,WAAW,CAAC,CAAC,CAACC,MAAM,CAACH,IAAI,CAAC;IACjD,OAAOC,UAAU,CAACH,MAAM;EAC1B;EAGA,IAAIN,IAAI,IAAI,IAAAF,QAAA,CAAAjB,OAAA,EAAOmB,IAAI,MAAK,QAAQ,IAAKA,IAAI,CAASY,cAAc,EAAE;IACpE,OAAQZ,IAAI,CAASY,cAAc,CAAC,CAAC;EACvC;EAEA,MAAM,IAAIC,KAAK,CAAC,eAAe,CAAC;AAClC"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.copyArrayBuffer = copyArrayBuffer;
|
|
7
|
-
exports.copyToArray = copyToArray;
|
|
8
|
-
exports.padToNBytes = padToNBytes;
|
|
9
|
-
var _assert = require("../env-utils/assert");
|
|
10
|
-
function padToNBytes(byteLength, padding) {
|
|
11
|
-
(0, _assert.assert)(byteLength >= 0);
|
|
12
|
-
(0, _assert.assert)(padding > 0);
|
|
13
|
-
return byteLength + (padding - 1) & ~(padding - 1);
|
|
14
|
-
}
|
|
15
|
-
function copyArrayBuffer(targetBuffer, sourceBuffer, byteOffset) {
|
|
16
|
-
var byteLength = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : sourceBuffer.byteLength;
|
|
17
|
-
var targetArray = new Uint8Array(targetBuffer, byteOffset, byteLength);
|
|
18
|
-
var sourceArray = new Uint8Array(sourceBuffer);
|
|
19
|
-
targetArray.set(sourceArray);
|
|
20
|
-
return targetBuffer;
|
|
21
|
-
}
|
|
22
|
-
function copyToArray(source, target, targetOffset) {
|
|
23
|
-
var sourceArray;
|
|
24
|
-
if (source instanceof ArrayBuffer) {
|
|
25
|
-
sourceArray = new Uint8Array(source);
|
|
26
|
-
} else {
|
|
27
|
-
var srcByteOffset = source.byteOffset;
|
|
28
|
-
var srcByteLength = source.byteLength;
|
|
29
|
-
sourceArray = new Uint8Array(source.buffer || source.arrayBuffer, srcByteOffset, srcByteLength);
|
|
30
|
-
}
|
|
31
|
-
target.set(sourceArray, targetOffset);
|
|
32
|
-
return targetOffset + padToNBytes(sourceArray.byteLength, 4);
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=memory-copy-utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"memory-copy-utils.js","names":["_assert","require","padToNBytes","byteLength","padding","assert","copyArrayBuffer","targetBuffer","sourceBuffer","byteOffset","arguments","length","undefined","targetArray","Uint8Array","sourceArray","set","copyToArray","source","target","targetOffset","ArrayBuffer","srcByteOffset","srcByteLength","buffer","arrayBuffer"],"sources":["../../../../src/lib/binary-utils/memory-copy-utils.ts"],"sourcesContent":["import {assert} from '../env-utils/assert';\n\n/**\n * Calculate new size of an arrayBuffer to be aligned to an n-byte boundary\n * This function increases `byteLength` by the minimum delta,\n * allowing the total length to be divided by `padding`\n * @param byteLength\n * @param padding\n */\nexport function padToNBytes(byteLength: number, padding: number): number {\n assert(byteLength >= 0); // `Incorrect 'byteLength' value: ${byteLength}`\n assert(padding > 0); // `Incorrect 'padding' value: ${padding}`\n return (byteLength + (padding - 1)) & ~(padding - 1);\n}\n\n/**\n * Creates a new Uint8Array based on two different ArrayBuffers\n * @param targetBuffer The first buffer.\n * @param sourceBuffer The second buffer.\n * @return The new ArrayBuffer created out of the two.\n */\nexport function copyArrayBuffer(\n targetBuffer: ArrayBuffer,\n sourceBuffer: ArrayBuffer,\n byteOffset: number,\n byteLength: number = sourceBuffer.byteLength\n): ArrayBuffer {\n const targetArray = new Uint8Array(targetBuffer, byteOffset, byteLength);\n const sourceArray = new Uint8Array(sourceBuffer);\n targetArray.set(sourceArray);\n return targetBuffer;\n}\n\n/**\n * Copy from source to target at the targetOffset\n *\n * @param source - The data to copy\n * @param target - The destination to copy data into\n * @param targetOffset - The start offset into target to place the copied data\n * @returns the new offset taking into account proper padding\n */\nexport function copyToArray(source: ArrayBuffer | any, target: any, targetOffset: number): number {\n let sourceArray;\n\n if (source instanceof ArrayBuffer) {\n sourceArray = new Uint8Array(source);\n } else {\n // Pack buffer onto the big target array\n //\n // 'source.data.buffer' could be a view onto a larger buffer.\n // We MUST use this constructor to ensure the byteOffset and byteLength is\n // set to correct values from 'source.data' and not the underlying\n // buffer for target.set() to work properly.\n const srcByteOffset = source.byteOffset;\n const srcByteLength = source.byteLength;\n // In gltf parser it is set as \"arrayBuffer\" instead of \"buffer\"\n // https://github.com/visgl/loaders.gl/blob/1e3a82a0a65d7b6a67b1e60633453e5edda2960a/modules/gltf/src/lib/parse-gltf.js#L85\n sourceArray = new Uint8Array(source.buffer || source.arrayBuffer, srcByteOffset, srcByteLength);\n }\n\n // Pack buffer onto the big target array\n target.set(sourceArray, targetOffset);\n\n return targetOffset + padToNBytes(sourceArray.byteLength, 4);\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AASO,SAASC,WAAWA,CAACC,UAAkB,EAAEC,OAAe,EAAU;EACvE,IAAAC,cAAM,EAACF,UAAU,IAAI,CAAC,CAAC;EACvB,IAAAE,cAAM,EAACD,OAAO,GAAG,CAAC,CAAC;EACnB,OAAQD,UAAU,IAAIC,OAAO,GAAG,CAAC,CAAC,GAAI,EAAEA,OAAO,GAAG,CAAC,CAAC;AACtD;AAQO,SAASE,eAAeA,CAC7BC,YAAyB,EACzBC,YAAyB,EACzBC,UAAkB,EAEL;EAAA,IADbN,UAAkB,GAAAO,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAGF,YAAY,CAACL,UAAU;EAE5C,IAAMU,WAAW,GAAG,IAAIC,UAAU,CAACP,YAAY,EAAEE,UAAU,EAAEN,UAAU,CAAC;EACxE,IAAMY,WAAW,GAAG,IAAID,UAAU,CAACN,YAAY,CAAC;EAChDK,WAAW,CAACG,GAAG,CAACD,WAAW,CAAC;EAC5B,OAAOR,YAAY;AACrB;AAUO,SAASU,WAAWA,CAACC,MAAyB,EAAEC,MAAW,EAAEC,YAAoB,EAAU;EAChG,IAAIL,WAAW;EAEf,IAAIG,MAAM,YAAYG,WAAW,EAAE;IACjCN,WAAW,GAAG,IAAID,UAAU,CAACI,MAAM,CAAC;EACtC,CAAC,MAAM;IAOL,IAAMI,aAAa,GAAGJ,MAAM,CAACT,UAAU;IACvC,IAAMc,aAAa,GAAGL,MAAM,CAACf,UAAU;IAGvCY,WAAW,GAAG,IAAID,UAAU,CAACI,MAAM,CAACM,MAAM,IAAIN,MAAM,CAACO,WAAW,EAAEH,aAAa,EAAEC,aAAa,CAAC;EACjG;EAGAJ,MAAM,CAACH,GAAG,CAACD,WAAW,EAAEK,YAAY,CAAC;EAErC,OAAOA,YAAY,GAAGlB,WAAW,CAACa,WAAW,CAACZ,UAAU,EAAE,CAAC,CAAC;AAC9D"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.assert = assert;
|
|
7
|
-
function assert(condition, message) {
|
|
8
|
-
if (!condition) {
|
|
9
|
-
throw new Error(message || 'loader assertion failed.');
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=assert.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assert.js","names":["assert","condition","message","Error"],"sources":["../../../../src/lib/env-utils/assert.ts"],"sourcesContent":["/**\n * Throws an `Error` with the optional `message` if `condition` is falsy\n * @note Replacement for the external assert method to reduce bundle size\n */\nexport function assert(condition: any, message?: string): void {\n if (!condition) {\n throw new Error(message || 'loader assertion failed.');\n }\n}\n"],"mappings":";;;;;;AAIO,SAASA,MAAMA,CAACC,SAAc,EAAEC,OAAgB,EAAQ;EAC7D,IAAI,CAACD,SAAS,EAAE;IACd,MAAM,IAAIE,KAAK,CAACD,OAAO,IAAI,0BAA0B,CAAC;EACxD;AACF"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.window = exports.self = exports.nodeVersion = exports.isWorker = exports.isBrowser = exports.global = exports.document = void 0;
|
|
8
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
9
|
-
var globals = {
|
|
10
|
-
self: typeof self !== 'undefined' && self,
|
|
11
|
-
window: typeof window !== 'undefined' && window,
|
|
12
|
-
global: typeof global !== 'undefined' && global,
|
|
13
|
-
document: typeof document !== 'undefined' && document
|
|
14
|
-
};
|
|
15
|
-
var self_ = globals.self || globals.window || globals.global || {};
|
|
16
|
-
exports.self = self_;
|
|
17
|
-
var window_ = globals.window || globals.self || globals.global || {};
|
|
18
|
-
exports.window = window_;
|
|
19
|
-
var global_ = globals.global || globals.self || globals.window || {};
|
|
20
|
-
exports.global = global_;
|
|
21
|
-
var document_ = globals.document || {};
|
|
22
|
-
exports.document = document_;
|
|
23
|
-
var isBrowser = Boolean((typeof process === "undefined" ? "undefined" : (0, _typeof2.default)(process)) !== 'object' || String(process) !== '[object process]' || process.browser);
|
|
24
|
-
exports.isBrowser = isBrowser;
|
|
25
|
-
var isWorker = typeof importScripts === 'function';
|
|
26
|
-
exports.isWorker = isWorker;
|
|
27
|
-
var matches = typeof process !== 'undefined' && process.version && /v([0-9]*)/.exec(process.version);
|
|
28
|
-
var nodeVersion = matches && parseFloat(matches[1]) || 0;
|
|
29
|
-
exports.nodeVersion = nodeVersion;
|
|
30
|
-
//# sourceMappingURL=globals.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"globals.js","names":["globals","self","window","global","document","self_","exports","window_","global_","document_","isBrowser","Boolean","process","_typeof2","default","String","browser","isWorker","importScripts","matches","version","exec","nodeVersion","parseFloat"],"sources":["../../../../src/lib/env-utils/globals.ts"],"sourcesContent":["// Purpose: include this in your module to avoid\n// dependencies on micro modules like 'global' and 'is-browser';\n\n/* eslint-disable no-restricted-globals */\nconst globals = {\n self: typeof self !== 'undefined' && self,\n window: typeof window !== 'undefined' && window,\n global: typeof global !== 'undefined' && global,\n document: typeof document !== 'undefined' && document\n};\n\ntype obj = {[key: string]: any};\nconst self_: obj = globals.self || globals.window || globals.global || {};\nconst window_: obj = globals.window || globals.self || globals.global || {};\nconst global_: obj = globals.global || globals.self || globals.window || {};\nconst document_: obj = globals.document || {};\n\nexport {self_ as self, window_ as window, global_ as global, document_ as document};\n\n/** true if running in a browser */\nexport const isBrowser: boolean =\n // @ts-ignore process does not exist on browser\n Boolean(typeof process !== 'object' || String(process) !== '[object process]' || process.browser);\n\n/** true if running in a worker thread */\nexport const isWorker: boolean = typeof importScripts === 'function';\n\n// Extract node major version\nconst matches =\n typeof process !== 'undefined' && process.version && /v([0-9]*)/.exec(process.version);\n/** Major Node version (as a number) */\nexport const nodeVersion: number = (matches && parseFloat(matches[1])) || 0;\n"],"mappings":";;;;;;;;AAIA,IAAMA,OAAO,GAAG;EACdC,IAAI,EAAE,OAAOA,IAAI,KAAK,WAAW,IAAIA,IAAI;EACzCC,MAAM,EAAE,OAAOA,MAAM,KAAK,WAAW,IAAIA,MAAM;EAC/CC,MAAM,EAAE,OAAOA,MAAM,KAAK,WAAW,IAAIA,MAAM;EAC/CC,QAAQ,EAAE,OAAOA,QAAQ,KAAK,WAAW,IAAIA;AAC/C,CAAC;AAGD,IAAMC,KAAU,GAAGL,OAAO,CAACC,IAAI,IAAID,OAAO,CAACE,MAAM,IAAIF,OAAO,CAACG,MAAM,IAAI,CAAC,CAAC;AAACG,OAAA,CAAAL,IAAA,GAAAI,KAAA;AAC1E,IAAME,OAAY,GAAGP,OAAO,CAACE,MAAM,IAAIF,OAAO,CAACC,IAAI,IAAID,OAAO,CAACG,MAAM,IAAI,CAAC,CAAC;AAACG,OAAA,CAAAJ,MAAA,GAAAK,OAAA;AAC5E,IAAMC,OAAY,GAAGR,OAAO,CAACG,MAAM,IAAIH,OAAO,CAACC,IAAI,IAAID,OAAO,CAACE,MAAM,IAAI,CAAC,CAAC;AAACI,OAAA,CAAAH,MAAA,GAAAK,OAAA;AAC5E,IAAMC,SAAc,GAAGT,OAAO,CAACI,QAAQ,IAAI,CAAC,CAAC;AAACE,OAAA,CAAAF,QAAA,GAAAK,SAAA;AAKvC,IAAMC,SAAkB,GAE7BC,OAAO,CAAC,QAAOC,OAAO,qCAAAC,QAAA,CAAAC,OAAA,EAAPF,OAAO,OAAK,QAAQ,IAAIG,MAAM,CAACH,OAAO,CAAC,KAAK,kBAAkB,IAAIA,OAAO,CAACI,OAAO,CAAC;AAACV,OAAA,CAAAI,SAAA,GAAAA,SAAA;AAG7F,IAAMO,QAAiB,GAAG,OAAOC,aAAa,KAAK,UAAU;AAACZ,OAAA,CAAAW,QAAA,GAAAA,QAAA;AAGrE,IAAME,OAAO,GACX,OAAOP,OAAO,KAAK,WAAW,IAAIA,OAAO,CAACQ,OAAO,IAAI,WAAW,CAACC,IAAI,CAACT,OAAO,CAACQ,OAAO,CAAC;AAEjF,IAAME,WAAmB,GAAIH,OAAO,IAAII,UAAU,CAACJ,OAAO,CAAC,CAAC,CAAC,CAAC,IAAK,CAAC;AAACb,OAAA,CAAAgB,WAAA,GAAAA,WAAA"}
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.DataViewFile = void 0;
|
|
8
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
var toNumber = function toNumber(bigint) {
|
|
14
|
-
if (bigint > Number.MAX_SAFE_INTEGER) {
|
|
15
|
-
throw new Error('Offset is out of bounds');
|
|
16
|
-
}
|
|
17
|
-
return Number(bigint);
|
|
18
|
-
};
|
|
19
|
-
var DataViewFile = function () {
|
|
20
|
-
function DataViewFile(file) {
|
|
21
|
-
(0, _classCallCheck2.default)(this, DataViewFile);
|
|
22
|
-
(0, _defineProperty2.default)(this, "file", void 0);
|
|
23
|
-
this.file = file;
|
|
24
|
-
}
|
|
25
|
-
(0, _createClass2.default)(DataViewFile, [{
|
|
26
|
-
key: "destroy",
|
|
27
|
-
value: function () {
|
|
28
|
-
var _destroy = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee() {
|
|
29
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
30
|
-
while (1) switch (_context.prev = _context.next) {
|
|
31
|
-
case 0:
|
|
32
|
-
case "end":
|
|
33
|
-
return _context.stop();
|
|
34
|
-
}
|
|
35
|
-
}, _callee);
|
|
36
|
-
}));
|
|
37
|
-
function destroy() {
|
|
38
|
-
return _destroy.apply(this, arguments);
|
|
39
|
-
}
|
|
40
|
-
return destroy;
|
|
41
|
-
}()
|
|
42
|
-
}, {
|
|
43
|
-
key: "getUint8",
|
|
44
|
-
value: function () {
|
|
45
|
-
var _getUint = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(offset) {
|
|
46
|
-
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
47
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
48
|
-
case 0:
|
|
49
|
-
return _context2.abrupt("return", this.file.getUint8(toNumber(offset)));
|
|
50
|
-
case 1:
|
|
51
|
-
case "end":
|
|
52
|
-
return _context2.stop();
|
|
53
|
-
}
|
|
54
|
-
}, _callee2, this);
|
|
55
|
-
}));
|
|
56
|
-
function getUint8(_x) {
|
|
57
|
-
return _getUint.apply(this, arguments);
|
|
58
|
-
}
|
|
59
|
-
return getUint8;
|
|
60
|
-
}()
|
|
61
|
-
}, {
|
|
62
|
-
key: "getUint16",
|
|
63
|
-
value: function () {
|
|
64
|
-
var _getUint2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3(offset) {
|
|
65
|
-
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
66
|
-
while (1) switch (_context3.prev = _context3.next) {
|
|
67
|
-
case 0:
|
|
68
|
-
return _context3.abrupt("return", this.file.getUint16(toNumber(offset), true));
|
|
69
|
-
case 1:
|
|
70
|
-
case "end":
|
|
71
|
-
return _context3.stop();
|
|
72
|
-
}
|
|
73
|
-
}, _callee3, this);
|
|
74
|
-
}));
|
|
75
|
-
function getUint16(_x2) {
|
|
76
|
-
return _getUint2.apply(this, arguments);
|
|
77
|
-
}
|
|
78
|
-
return getUint16;
|
|
79
|
-
}()
|
|
80
|
-
}, {
|
|
81
|
-
key: "getUint32",
|
|
82
|
-
value: function () {
|
|
83
|
-
var _getUint3 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4(offset) {
|
|
84
|
-
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
85
|
-
while (1) switch (_context4.prev = _context4.next) {
|
|
86
|
-
case 0:
|
|
87
|
-
return _context4.abrupt("return", this.file.getUint32(toNumber(offset), true));
|
|
88
|
-
case 1:
|
|
89
|
-
case "end":
|
|
90
|
-
return _context4.stop();
|
|
91
|
-
}
|
|
92
|
-
}, _callee4, this);
|
|
93
|
-
}));
|
|
94
|
-
function getUint32(_x3) {
|
|
95
|
-
return _getUint3.apply(this, arguments);
|
|
96
|
-
}
|
|
97
|
-
return getUint32;
|
|
98
|
-
}()
|
|
99
|
-
}, {
|
|
100
|
-
key: "getBigUint64",
|
|
101
|
-
value: function () {
|
|
102
|
-
var _getBigUint = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5(offset) {
|
|
103
|
-
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
104
|
-
while (1) switch (_context5.prev = _context5.next) {
|
|
105
|
-
case 0:
|
|
106
|
-
return _context5.abrupt("return", this.file.getBigUint64(toNumber(offset), true));
|
|
107
|
-
case 1:
|
|
108
|
-
case "end":
|
|
109
|
-
return _context5.stop();
|
|
110
|
-
}
|
|
111
|
-
}, _callee5, this);
|
|
112
|
-
}));
|
|
113
|
-
function getBigUint64(_x4) {
|
|
114
|
-
return _getBigUint.apply(this, arguments);
|
|
115
|
-
}
|
|
116
|
-
return getBigUint64;
|
|
117
|
-
}()
|
|
118
|
-
}, {
|
|
119
|
-
key: "slice",
|
|
120
|
-
value: function () {
|
|
121
|
-
var _slice = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee6(startOffset, endOffset) {
|
|
122
|
-
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
123
|
-
while (1) switch (_context6.prev = _context6.next) {
|
|
124
|
-
case 0:
|
|
125
|
-
return _context6.abrupt("return", this.file.buffer.slice(toNumber(startOffset), toNumber(endOffset)));
|
|
126
|
-
case 1:
|
|
127
|
-
case "end":
|
|
128
|
-
return _context6.stop();
|
|
129
|
-
}
|
|
130
|
-
}, _callee6, this);
|
|
131
|
-
}));
|
|
132
|
-
function slice(_x5, _x6) {
|
|
133
|
-
return _slice.apply(this, arguments);
|
|
134
|
-
}
|
|
135
|
-
return slice;
|
|
136
|
-
}()
|
|
137
|
-
}, {
|
|
138
|
-
key: "length",
|
|
139
|
-
get: function get() {
|
|
140
|
-
return BigInt(this.file.byteLength);
|
|
141
|
-
}
|
|
142
|
-
}]);
|
|
143
|
-
return DataViewFile;
|
|
144
|
-
}();
|
|
145
|
-
exports.DataViewFile = DataViewFile;
|
|
146
|
-
//# sourceMappingURL=data-view-file.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data-view-file.js","names":["toNumber","bigint","Number","MAX_SAFE_INTEGER","Error","DataViewFile","file","_classCallCheck2","default","_defineProperty2","_createClass2","key","value","_destroy","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","stop","destroy","apply","arguments","_getUint","_callee2","offset","_callee2$","_context2","abrupt","getUint8","_x","_getUint2","_callee3","_callee3$","_context3","getUint16","_x2","_getUint3","_callee4","_callee4$","_context4","getUint32","_x3","_getBigUint","_callee5","_callee5$","_context5","getBigUint64","_x4","_slice","_callee6","startOffset","endOffset","_callee6$","_context6","buffer","slice","_x5","_x6","get","BigInt","byteLength","exports"],"sources":["../../../../src/lib/file-provider/data-view-file.ts"],"sourcesContent":["import {FileProvider} from './file-provider';\n\n/**\n * Checks if bigint can be converted to number and convert it if possible\n * @param bigint bigint to be converted\n * @returns number\n */\nconst toNumber = (bigint: bigint) => {\n if (bigint > Number.MAX_SAFE_INTEGER) {\n throw new Error('Offset is out of bounds');\n }\n return Number(bigint);\n};\n\n/** Provides file data using DataView */\nexport class DataViewFile implements FileProvider {\n /** The DataView from which data is provided */\n private file: DataView;\n\n constructor(file: DataView) {\n this.file = file;\n }\n\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n async destroy(): Promise<void> {}\n\n /**\n * Gets an unsigned 8-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint8(offset: bigint): Promise<number> {\n return this.file.getUint8(toNumber(offset));\n }\n\n /**\n * Gets an unsigned 16-bit intege at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint16(offset: bigint): Promise<number> {\n return this.file.getUint16(toNumber(offset), true);\n }\n\n /**\n * Gets an unsigned 32-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint32(offset: bigint): Promise<number> {\n return this.file.getUint32(toNumber(offset), true);\n }\n\n /**\n * Gets an unsigned 64-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getBigUint64(offset: bigint): Promise<bigint> {\n return this.file.getBigUint64(toNumber(offset), true);\n }\n\n /**\n * returns an ArrayBuffer whose contents are a copy of this file bytes from startOffset, inclusive, up to endOffset, exclusive.\n * @param startOffset The offset, in bytes, from the start of the file where to start reading the data.\n * @param endOffset The offset, in bytes, from the start of the file where to end reading the data.\n */\n async slice(startOffset: bigint, endOffset: bigint): Promise<ArrayBuffer> {\n return this.file.buffer.slice(toNumber(startOffset), toNumber(endOffset));\n }\n\n /** the length (in bytes) of the data. */\n get length() {\n return BigInt(this.file.byteLength);\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,236 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.FileHandleFile = void 0;
|
|
8
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
12
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
var _fileHandle = require("./file-handle");
|
|
14
|
-
var _fileAliases = require("../path-utils/file-aliases");
|
|
15
|
-
var FileHandleFile = function () {
|
|
16
|
-
function FileHandleFile(fileDescriptor, size) {
|
|
17
|
-
(0, _classCallCheck2.default)(this, FileHandleFile);
|
|
18
|
-
(0, _defineProperty2.default)(this, "fileDescriptor", void 0);
|
|
19
|
-
(0, _defineProperty2.default)(this, "size", void 0);
|
|
20
|
-
this.fileDescriptor = fileDescriptor;
|
|
21
|
-
this.size = size;
|
|
22
|
-
}
|
|
23
|
-
(0, _createClass2.default)(FileHandleFile, [{
|
|
24
|
-
key: "destroy",
|
|
25
|
-
value: function () {
|
|
26
|
-
var _destroy = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee() {
|
|
27
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
28
|
-
while (1) switch (_context.prev = _context.next) {
|
|
29
|
-
case 0:
|
|
30
|
-
_context.next = 2;
|
|
31
|
-
return this.fileDescriptor.close();
|
|
32
|
-
case 2:
|
|
33
|
-
case "end":
|
|
34
|
-
return _context.stop();
|
|
35
|
-
}
|
|
36
|
-
}, _callee, this);
|
|
37
|
-
}));
|
|
38
|
-
function destroy() {
|
|
39
|
-
return _destroy.apply(this, arguments);
|
|
40
|
-
}
|
|
41
|
-
return destroy;
|
|
42
|
-
}()
|
|
43
|
-
}, {
|
|
44
|
-
key: "getUint8",
|
|
45
|
-
value: function () {
|
|
46
|
-
var _getUint = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(offset) {
|
|
47
|
-
var val;
|
|
48
|
-
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
49
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
50
|
-
case 0:
|
|
51
|
-
_context2.t0 = Uint8Array;
|
|
52
|
-
_context2.next = 3;
|
|
53
|
-
return this.fileDescriptor.read(Buffer.alloc(1), 0, 1, offset);
|
|
54
|
-
case 3:
|
|
55
|
-
_context2.t1 = _context2.sent.buffer.buffer;
|
|
56
|
-
val = new _context2.t0(_context2.t1).at(0);
|
|
57
|
-
if (!(val === undefined)) {
|
|
58
|
-
_context2.next = 7;
|
|
59
|
-
break;
|
|
60
|
-
}
|
|
61
|
-
throw new Error('something went wrong');
|
|
62
|
-
case 7:
|
|
63
|
-
return _context2.abrupt("return", val);
|
|
64
|
-
case 8:
|
|
65
|
-
case "end":
|
|
66
|
-
return _context2.stop();
|
|
67
|
-
}
|
|
68
|
-
}, _callee2, this);
|
|
69
|
-
}));
|
|
70
|
-
function getUint8(_x) {
|
|
71
|
-
return _getUint.apply(this, arguments);
|
|
72
|
-
}
|
|
73
|
-
return getUint8;
|
|
74
|
-
}()
|
|
75
|
-
}, {
|
|
76
|
-
key: "getUint16",
|
|
77
|
-
value: function () {
|
|
78
|
-
var _getUint2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3(offset) {
|
|
79
|
-
var val;
|
|
80
|
-
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
81
|
-
while (1) switch (_context3.prev = _context3.next) {
|
|
82
|
-
case 0:
|
|
83
|
-
_context3.t0 = Uint16Array;
|
|
84
|
-
_context3.next = 3;
|
|
85
|
-
return this.fileDescriptor.read(Buffer.alloc(2), 0, 2, offset);
|
|
86
|
-
case 3:
|
|
87
|
-
_context3.t1 = _context3.sent.buffer.buffer;
|
|
88
|
-
val = new _context3.t0(_context3.t1).at(0);
|
|
89
|
-
if (!(val === undefined)) {
|
|
90
|
-
_context3.next = 7;
|
|
91
|
-
break;
|
|
92
|
-
}
|
|
93
|
-
throw new Error('something went wrong');
|
|
94
|
-
case 7:
|
|
95
|
-
return _context3.abrupt("return", val);
|
|
96
|
-
case 8:
|
|
97
|
-
case "end":
|
|
98
|
-
return _context3.stop();
|
|
99
|
-
}
|
|
100
|
-
}, _callee3, this);
|
|
101
|
-
}));
|
|
102
|
-
function getUint16(_x2) {
|
|
103
|
-
return _getUint2.apply(this, arguments);
|
|
104
|
-
}
|
|
105
|
-
return getUint16;
|
|
106
|
-
}()
|
|
107
|
-
}, {
|
|
108
|
-
key: "getUint32",
|
|
109
|
-
value: function () {
|
|
110
|
-
var _getUint3 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4(offset) {
|
|
111
|
-
var val;
|
|
112
|
-
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
113
|
-
while (1) switch (_context4.prev = _context4.next) {
|
|
114
|
-
case 0:
|
|
115
|
-
_context4.t0 = Uint32Array;
|
|
116
|
-
_context4.next = 3;
|
|
117
|
-
return this.fileDescriptor.read(Buffer.alloc(4), 0, 4, offset);
|
|
118
|
-
case 3:
|
|
119
|
-
_context4.t1 = _context4.sent.buffer.buffer;
|
|
120
|
-
val = new _context4.t0(_context4.t1).at(0);
|
|
121
|
-
if (!(val === undefined)) {
|
|
122
|
-
_context4.next = 7;
|
|
123
|
-
break;
|
|
124
|
-
}
|
|
125
|
-
throw new Error('something went wrong');
|
|
126
|
-
case 7:
|
|
127
|
-
return _context4.abrupt("return", val);
|
|
128
|
-
case 8:
|
|
129
|
-
case "end":
|
|
130
|
-
return _context4.stop();
|
|
131
|
-
}
|
|
132
|
-
}, _callee4, this);
|
|
133
|
-
}));
|
|
134
|
-
function getUint32(_x3) {
|
|
135
|
-
return _getUint3.apply(this, arguments);
|
|
136
|
-
}
|
|
137
|
-
return getUint32;
|
|
138
|
-
}()
|
|
139
|
-
}, {
|
|
140
|
-
key: "getBigUint64",
|
|
141
|
-
value: function () {
|
|
142
|
-
var _getBigUint = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5(offset) {
|
|
143
|
-
var val;
|
|
144
|
-
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
145
|
-
while (1) switch (_context5.prev = _context5.next) {
|
|
146
|
-
case 0:
|
|
147
|
-
_context5.t0 = BigInt64Array;
|
|
148
|
-
_context5.next = 3;
|
|
149
|
-
return this.fileDescriptor.read(Buffer.alloc(8), 0, 8, offset);
|
|
150
|
-
case 3:
|
|
151
|
-
_context5.t1 = _context5.sent.buffer.buffer;
|
|
152
|
-
val = new _context5.t0(_context5.t1).at(0);
|
|
153
|
-
if (!(val === undefined)) {
|
|
154
|
-
_context5.next = 7;
|
|
155
|
-
break;
|
|
156
|
-
}
|
|
157
|
-
throw new Error('something went wrong');
|
|
158
|
-
case 7:
|
|
159
|
-
return _context5.abrupt("return", val);
|
|
160
|
-
case 8:
|
|
161
|
-
case "end":
|
|
162
|
-
return _context5.stop();
|
|
163
|
-
}
|
|
164
|
-
}, _callee5, this);
|
|
165
|
-
}));
|
|
166
|
-
function getBigUint64(_x4) {
|
|
167
|
-
return _getBigUint.apply(this, arguments);
|
|
168
|
-
}
|
|
169
|
-
return getBigUint64;
|
|
170
|
-
}()
|
|
171
|
-
}, {
|
|
172
|
-
key: "slice",
|
|
173
|
-
value: function () {
|
|
174
|
-
var _slice = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee6(startOffsset, endOffset) {
|
|
175
|
-
var bigLength, length;
|
|
176
|
-
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
177
|
-
while (1) switch (_context6.prev = _context6.next) {
|
|
178
|
-
case 0:
|
|
179
|
-
bigLength = endOffset - startOffsset;
|
|
180
|
-
if (!(bigLength > Number.MAX_SAFE_INTEGER)) {
|
|
181
|
-
_context6.next = 3;
|
|
182
|
-
break;
|
|
183
|
-
}
|
|
184
|
-
throw new Error('too big slice');
|
|
185
|
-
case 3:
|
|
186
|
-
length = Number(bigLength);
|
|
187
|
-
_context6.next = 6;
|
|
188
|
-
return this.fileDescriptor.read(Buffer.alloc(length), 0, length, startOffsset);
|
|
189
|
-
case 6:
|
|
190
|
-
return _context6.abrupt("return", _context6.sent.buffer.buffer);
|
|
191
|
-
case 7:
|
|
192
|
-
case "end":
|
|
193
|
-
return _context6.stop();
|
|
194
|
-
}
|
|
195
|
-
}, _callee6, this);
|
|
196
|
-
}));
|
|
197
|
-
function slice(_x5, _x6) {
|
|
198
|
-
return _slice.apply(this, arguments);
|
|
199
|
-
}
|
|
200
|
-
return slice;
|
|
201
|
-
}()
|
|
202
|
-
}, {
|
|
203
|
-
key: "length",
|
|
204
|
-
get: function get() {
|
|
205
|
-
return this.size;
|
|
206
|
-
}
|
|
207
|
-
}], [{
|
|
208
|
-
key: "from",
|
|
209
|
-
value: function () {
|
|
210
|
-
var _from = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee7(path) {
|
|
211
|
-
var fileDescriptor;
|
|
212
|
-
return _regenerator.default.wrap(function _callee7$(_context7) {
|
|
213
|
-
while (1) switch (_context7.prev = _context7.next) {
|
|
214
|
-
case 0:
|
|
215
|
-
path = (0, _fileAliases.resolvePath)(path);
|
|
216
|
-
_context7.next = 3;
|
|
217
|
-
return _fileHandle.FileHandle.open(path);
|
|
218
|
-
case 3:
|
|
219
|
-
fileDescriptor = _context7.sent;
|
|
220
|
-
return _context7.abrupt("return", new FileHandleFile(fileDescriptor, fileDescriptor.stat.size));
|
|
221
|
-
case 5:
|
|
222
|
-
case "end":
|
|
223
|
-
return _context7.stop();
|
|
224
|
-
}
|
|
225
|
-
}, _callee7);
|
|
226
|
-
}));
|
|
227
|
-
function from(_x7) {
|
|
228
|
-
return _from.apply(this, arguments);
|
|
229
|
-
}
|
|
230
|
-
return from;
|
|
231
|
-
}()
|
|
232
|
-
}]);
|
|
233
|
-
return FileHandleFile;
|
|
234
|
-
}();
|
|
235
|
-
exports.FileHandleFile = FileHandleFile;
|
|
236
|
-
//# sourceMappingURL=file-handle-file.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file-handle-file.js","names":["_fileHandle","require","_fileAliases","FileHandleFile","fileDescriptor","size","_classCallCheck2","default","_defineProperty2","_createClass2","key","value","_destroy","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","close","stop","destroy","apply","arguments","_getUint","_callee2","offset","val","_callee2$","_context2","t0","Uint8Array","read","Buffer","alloc","t1","sent","buffer","at","undefined","Error","abrupt","getUint8","_x","_getUint2","_callee3","_callee3$","_context3","Uint16Array","getUint16","_x2","_getUint3","_callee4","_callee4$","_context4","Uint32Array","getUint32","_x3","_getBigUint","_callee5","_callee5$","_context5","BigInt64Array","getBigUint64","_x4","_slice","_callee6","startOffsset","endOffset","bigLength","length","_callee6$","_context6","Number","MAX_SAFE_INTEGER","slice","_x5","_x6","get","_from","_callee7","path","_callee7$","_context7","resolvePath","FileHandle","open","stat","from","_x7","exports"],"sources":["../../../../src/lib/file-provider/file-handle-file.ts"],"sourcesContent":["import {FileProvider} from './file-provider';\nimport {FileHandle} from './file-handle';\nimport {resolvePath} from '../path-utils/file-aliases';\n\n/**\n * Provides file data using node fs library\n */\nexport class FileHandleFile implements FileProvider {\n /**\n * Returns a new copy of FileHandleFile\n * @param path The path to the file in file system\n */\n static async from(path: string): Promise<FileHandleFile> {\n path = resolvePath(path);\n const fileDescriptor = await FileHandle.open(path);\n return new FileHandleFile(fileDescriptor, fileDescriptor.stat.size);\n }\n\n /**\n * The FileHandle from which data is provided\n */\n private fileDescriptor: FileHandle;\n\n /**\n * The file length in bytes\n */\n private size: bigint;\n\n private constructor(fileDescriptor: FileHandle, size: bigint) {\n this.fileDescriptor = fileDescriptor;\n this.size = size;\n }\n\n /** Close file */\n async destroy(): Promise<void> {\n await this.fileDescriptor.close();\n }\n\n /**\n * Gets an unsigned 8-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint8(offset: bigint): Promise<number> {\n const val = new Uint8Array(\n (await this.fileDescriptor.read(Buffer.alloc(1), 0, 1, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * Gets an unsigned 16-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint16(offset: bigint): Promise<number> {\n const val = new Uint16Array(\n (await this.fileDescriptor.read(Buffer.alloc(2), 0, 2, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * Gets an unsigned 32-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getUint32(offset: bigint): Promise<number> {\n const val = new Uint32Array(\n (await this.fileDescriptor.read(Buffer.alloc(4), 0, 4, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * Gets an unsigned 32-bit integer at the specified byte offset from the start of the file.\n * @param offset The offset, in bytes, from the start of the file where to read the data.\n */\n async getBigUint64(offset: bigint): Promise<bigint> {\n const val = new BigInt64Array(\n (await this.fileDescriptor.read(Buffer.alloc(8), 0, 8, offset)).buffer.buffer\n ).at(0);\n if (val === undefined) {\n throw new Error('something went wrong');\n }\n return val;\n }\n\n /**\n * returns an ArrayBuffer whose contents are a copy of this file bytes from startOffset, inclusive, up to endOffset, exclusive.\n * @param startOffsset The offset, in byte, from the start of the file where to start reading the data.\n * @param endOffset The offset, in bytes, from the start of the file where to end reading the data.\n */\n async slice(startOffsset: bigint, endOffset: bigint): Promise<ArrayBuffer> {\n const bigLength = endOffset - startOffsset;\n if (bigLength > Number.MAX_SAFE_INTEGER) {\n throw new Error('too big slice');\n }\n const length = Number(bigLength);\n return (await this.fileDescriptor.read(Buffer.alloc(length), 0, length, startOffsset)).buffer\n .buffer;\n }\n\n /**\n * the length (in bytes) of the data.\n */\n get length(): bigint {\n return this.size;\n }\n}\n"],"mappings":"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"}
|