@softrobot/loaders.gl-draco
Version:
Framework-independent loader and writer for Draco compressed meshes and point clouds
1,135 lines (910 loc) • 170 kB
JavaScript
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = "./src/workers/draco-worker.js");
/******/ })
/************************************************************************/
/******/ ({
/***/ "../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js":
/*!***************************************************************************************************!*\
!*** /home/avnerus/Projects/loaders.gl/node_modules/@babel/runtime/helpers/esm/classCallCheck.js ***!
\***************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return _classCallCheck; });
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
/***/ }),
/***/ "../../node_modules/@babel/runtime/helpers/esm/createClass.js":
/*!************************************************************************************************!*\
!*** /home/avnerus/Projects/loaders.gl/node_modules/@babel/runtime/helpers/esm/createClass.js ***!
\************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return _createClass; });
function _defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor) descriptor.writable = true;
Object.defineProperty(target, descriptor.key, descriptor);
}
}
function _createClass(Constructor, protoProps, staticProps) {
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
if (staticProps) _defineProperties(Constructor, staticProps);
return Constructor;
}
/***/ }),
/***/ "../../node_modules/@probe.gl/stats/dist/esm/index.js":
/*!****************************************************************************************!*\
!*** /home/avnerus/Projects/loaders.gl/node_modules/@probe.gl/stats/dist/esm/index.js ***!
\****************************************************************************************/
/*! exports provided: Stats, Stat, _getHiResTimestamp */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _lib_stats__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/stats */ "../../node_modules/@probe.gl/stats/dist/esm/lib/stats.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Stats", function() { return _lib_stats__WEBPACK_IMPORTED_MODULE_0__["default"]; });
/* harmony import */ var _lib_stat__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/stat */ "../../node_modules/@probe.gl/stats/dist/esm/lib/stat.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Stat", function() { return _lib_stat__WEBPACK_IMPORTED_MODULE_1__["default"]; });
/* harmony import */ var _utils_hi_res_timestamp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/hi-res-timestamp */ "../../node_modules/@probe.gl/stats/dist/esm/utils/hi-res-timestamp.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "_getHiResTimestamp", function() { return _utils_hi_res_timestamp__WEBPACK_IMPORTED_MODULE_2__["default"]; });
//# sourceMappingURL=index.js.map
/***/ }),
/***/ "../../node_modules/@probe.gl/stats/dist/esm/lib/stat.js":
/*!*******************************************************************************************!*\
!*** /home/avnerus/Projects/loaders.gl/node_modules/@probe.gl/stats/dist/esm/lib/stat.js ***!
\*******************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Stat; });
/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ "../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js");
/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ "../../node_modules/@babel/runtime/helpers/esm/createClass.js");
/* harmony import */ var _utils_hi_res_timestamp__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/hi-res-timestamp */ "../../node_modules/@probe.gl/stats/dist/esm/utils/hi-res-timestamp.js");
var Stat = function () {
function Stat(name, type) {
Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, Stat);
this.name = name;
this.type = type;
this.sampleSize = 1;
this.reset();
}
Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(Stat, [{
key: "setSampleSize",
value: function setSampleSize(samples) {
this.sampleSize = samples;
return this;
}
}, {
key: "incrementCount",
value: function incrementCount() {
this.addCount(1);
return this;
}
}, {
key: "decrementCount",
value: function decrementCount() {
this.subtractCount(1);
return this;
}
}, {
key: "addCount",
value: function addCount(value) {
this._count += value;
this._samples++;
this._checkSampling();
return this;
}
}, {
key: "subtractCount",
value: function subtractCount(value) {
this._count -= value;
this._samples++;
this._checkSampling();
return this;
}
}, {
key: "addTime",
value: function addTime(time) {
this._time += time;
this.lastTiming = time;
this._samples++;
this._checkSampling();
return this;
}
}, {
key: "timeStart",
value: function timeStart() {
this._startTime = Object(_utils_hi_res_timestamp__WEBPACK_IMPORTED_MODULE_2__["default"])();
this._timerPending = true;
return this;
}
}, {
key: "timeEnd",
value: function timeEnd() {
if (!this._timerPending) {
return this;
}
this.addTime(Object(_utils_hi_res_timestamp__WEBPACK_IMPORTED_MODULE_2__["default"])() - this._startTime);
this._timerPending = false;
this._checkSampling();
return this;
}
}, {
key: "getSampleAverageCount",
value: function getSampleAverageCount() {
return this.sampleSize > 0 ? this.lastSampleCount / this.sampleSize : 0;
}
}, {
key: "getSampleAverageTime",
value: function getSampleAverageTime() {
return this.sampleSize > 0 ? this.lastSampleTime / this.sampleSize : 0;
}
}, {
key: "getSampleHz",
value: function getSampleHz() {
return this.lastSampleTime > 0 ? this.sampleSize / (this.lastSampleTime / 1000) : 0;
}
}, {
key: "getAverageCount",
value: function getAverageCount() {
return this.samples > 0 ? this.count / this.samples : 0;
}
}, {
key: "getAverageTime",
value: function getAverageTime() {
return this.samples > 0 ? this.time / this.samples : 0;
}
}, {
key: "getHz",
value: function getHz() {
return this.time > 0 ? this.samples / (this.time / 1000) : 0;
}
}, {
key: "reset",
value: function reset() {
this.time = 0;
this.count = 0;
this.samples = 0;
this.lastTiming = 0;
this.lastSampleTime = 0;
this.lastSampleCount = 0;
this._count = 0;
this._time = 0;
this._samples = 0;
this._startTime = 0;
this._timerPending = false;
return this;
}
}, {
key: "_checkSampling",
value: function _checkSampling() {
if (this._samples === this.sampleSize) {
this.lastSampleTime = this._time;
this.lastSampleCount = this._count;
this.count += this._count;
this.time += this._time;
this.samples += this._samples;
this._time = 0;
this._count = 0;
this._samples = 0;
}
}
}]);
return Stat;
}();
//# sourceMappingURL=stat.js.map
/***/ }),
/***/ "../../node_modules/@probe.gl/stats/dist/esm/lib/stats.js":
/*!********************************************************************************************!*\
!*** /home/avnerus/Projects/loaders.gl/node_modules/@probe.gl/stats/dist/esm/lib/stats.js ***!
\********************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return Stats; });
/* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/esm/classCallCheck */ "../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js");
/* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/createClass */ "../../node_modules/@babel/runtime/helpers/esm/createClass.js");
/* harmony import */ var _stat__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./stat */ "../../node_modules/@probe.gl/stats/dist/esm/lib/stat.js");
var Stats = function () {
function Stats(_ref) {
var id = _ref.id,
stats = _ref.stats;
Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, Stats);
this.id = id;
this.stats = {};
this._initializeStats(stats);
Object.seal(this);
}
Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(Stats, [{
key: "get",
value: function get(name) {
var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'count';
return this._getOrCreate({
name: name,
type: type
});
}
}, {
key: "reset",
value: function reset() {
for (var key in this.stats) {
this.stats[key].reset();
}
return this;
}
}, {
key: "forEach",
value: function forEach(fn) {
for (var key in this.stats) {
fn(this.stats[key]);
}
}
}, {
key: "getTable",
value: function getTable() {
var table = {};
this.forEach(function (stat) {
table[stat.name] = {
time: stat.time || 0,
count: stat.count || 0,
average: stat.getAverageTime() || 0,
hz: stat.getHz() || 0
};
});
return table;
}
}, {
key: "_initializeStats",
value: function _initializeStats() {
var _this = this;
var stats = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
stats.forEach(function (stat) {
return _this._getOrCreate(stat);
});
}
}, {
key: "_getOrCreate",
value: function _getOrCreate(stat) {
if (!stat || !stat.name) {
return null;
}
var name = stat.name,
type = stat.type;
if (!this.stats[name]) {
if (stat instanceof _stat__WEBPACK_IMPORTED_MODULE_2__["default"]) {
this.stats[name] = stat;
} else {
this.stats[name] = new _stat__WEBPACK_IMPORTED_MODULE_2__["default"](name, type);
}
}
return this.stats[name];
}
}, {
key: "size",
get: function get() {
return Object.keys(this.stats).length;
}
}]);
return Stats;
}();
//# sourceMappingURL=stats.js.map
/***/ }),
/***/ "../../node_modules/@probe.gl/stats/dist/esm/utils/hi-res-timestamp.js":
/*!*********************************************************************************************************!*\
!*** /home/avnerus/Projects/loaders.gl/node_modules/@probe.gl/stats/dist/esm/utils/hi-res-timestamp.js ***!
\*********************************************************************************************************/
/*! exports provided: default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* WEBPACK VAR INJECTION */(function(process) {/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return getHiResTimestamp; });
function getHiResTimestamp() {
var timestamp;
if (typeof window !== 'undefined' && window.performance) {
timestamp = window.performance.now();
} else if (typeof process !== 'undefined' && process.hrtime) {
var timeParts = process.hrtime();
timestamp = timeParts[0] * 1000 + timeParts[1] / 1e6;
} else {
timestamp = Date.now();
}
return timestamp;
}
//# sourceMappingURL=hi-res-timestamp.js.map
/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../../../../../process/browser.js */ "../../node_modules/process/browser.js")))
/***/ }),
/***/ "../../node_modules/process/browser.js":
/*!*************************************************************************!*\
!*** /home/avnerus/Projects/loaders.gl/node_modules/process/browser.js ***!
\*************************************************************************/
/*! no static exports found */
/***/ (function(module, exports) {
// shim for using process in browser
var process = module.exports = {};
// cached from whatever global is present so that test runners that stub it
// don't break things. But we need to wrap it in a try catch in case it is
// wrapped in strict mode code which doesn't define any globals. It's inside a
// function because try/catches deoptimize in certain engines.
var cachedSetTimeout;
var cachedClearTimeout;
function defaultSetTimout() {
throw new Error('setTimeout has not been defined');
}
function defaultClearTimeout () {
throw new Error('clearTimeout has not been defined');
}
(function () {
try {
if (typeof setTimeout === 'function') {
cachedSetTimeout = setTimeout;
} else {
cachedSetTimeout = defaultSetTimout;
}
} catch (e) {
cachedSetTimeout = defaultSetTimout;
}
try {
if (typeof clearTimeout === 'function') {
cachedClearTimeout = clearTimeout;
} else {
cachedClearTimeout = defaultClearTimeout;
}
} catch (e) {
cachedClearTimeout = defaultClearTimeout;
}
} ())
function runTimeout(fun) {
if (cachedSetTimeout === setTimeout) {
//normal enviroments in sane situations
return setTimeout(fun, 0);
}
// if setTimeout wasn't available but was latter defined
if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
cachedSetTimeout = setTimeout;
return setTimeout(fun, 0);
}
try {
// when when somebody has screwed with setTimeout but no I.E. maddness
return cachedSetTimeout(fun, 0);
} catch(e){
try {
// When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
return cachedSetTimeout.call(null, fun, 0);
} catch(e){
// same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
return cachedSetTimeout.call(this, fun, 0);
}
}
}
function runClearTimeout(marker) {
if (cachedClearTimeout === clearTimeout) {
//normal enviroments in sane situations
return clearTimeout(marker);
}
// if clearTimeout wasn't available but was latter defined
if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
cachedClearTimeout = clearTimeout;
return clearTimeout(marker);
}
try {
// when when somebody has screwed with setTimeout but no I.E. maddness
return cachedClearTimeout(marker);
} catch (e){
try {
// When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
return cachedClearTimeout.call(null, marker);
} catch (e){
// same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
// Some versions of I.E. have different rules for clearTimeout vs setTimeout
return cachedClearTimeout.call(this, marker);
}
}
}
var queue = [];
var draining = false;
var currentQueue;
var queueIndex = -1;
function cleanUpNextTick() {
if (!draining || !currentQueue) {
return;
}
draining = false;
if (currentQueue.length) {
queue = currentQueue.concat(queue);
} else {
queueIndex = -1;
}
if (queue.length) {
drainQueue();
}
}
function drainQueue() {
if (draining) {
return;
}
var timeout = runTimeout(cleanUpNextTick);
draining = true;
var len = queue.length;
while(len) {
currentQueue = queue;
queue = [];
while (++queueIndex < len) {
if (currentQueue) {
currentQueue[queueIndex].run();
}
}
queueIndex = -1;
len = queue.length;
}
currentQueue = null;
draining = false;
runClearTimeout(timeout);
}
process.nextTick = function (fun) {
var args = new Array(arguments.length - 1);
if (arguments.length > 1) {
for (var i = 1; i < arguments.length; i++) {
args[i - 1] = arguments[i];
}
}
queue.push(new Item(fun, args));
if (queue.length === 1 && !draining) {
runTimeout(drainQueue);
}
};
// v8 likes predictible objects
function Item(fun, array) {
this.fun = fun;
this.array = array;
}
Item.prototype.run = function () {
this.fun.apply(null, this.array);
};
process.title = 'browser';
process.browser = true;
process.env = {};
process.argv = [];
process.version = ''; // empty string to avoid regexp issues
process.versions = {};
function noop() {}
process.on = noop;
process.addListener = noop;
process.once = noop;
process.off = noop;
process.removeListener = noop;
process.removeAllListeners = noop;
process.emit = noop;
process.prependListener = noop;
process.prependOnceListener = noop;
process.listeners = function (name) { return [] }
process.binding = function (name) {
throw new Error('process.binding is not supported');
};
process.cwd = function () { return '/' };
process.chdir = function (dir) {
throw new Error('process.chdir is not supported');
};
process.umask = function() { return 0; };
/***/ }),
/***/ "../../node_modules/webpack/buildin/global.js":
/*!***********************************!*\
!*** (webpack)/buildin/global.js ***!
\***********************************/
/*! no static exports found */
/***/ (function(module, exports) {
var g;
// This works in non-strict mode
g = (function() {
return this;
})();
try {
// This works if eval is allowed (see CSP)
g = g || new Function("return this")();
} catch (e) {
// This works if the window reference is available
if (typeof window === "object") g = window;
}
// g can still be undefined, but nothing to do about it...
// We return undefined, instead of nothing here, so it's
// easier to handle this case. if(!global) { ...}
module.exports = g;
/***/ }),
/***/ "../loader-utils/src/categories/mesh/mesh-utils.js":
/*!*********************************************************!*\
!*** ../loader-utils/src/categories/mesh/mesh-utils.js ***!
\*********************************************************/
/*! exports provided: getMeshSize, getMeshBoundingBox */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getMeshSize", function() { return getMeshSize; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getMeshBoundingBox", function() { return getMeshBoundingBox; });
function getMeshSize(attributes) {
let size = 0;
for (const attributeName in attributes) {
const attribute = attributes[attributeName];
if (ArrayBuffer.isView(attribute)) {
// @ts-ignore DataView doesn't have BYTES_PER_ELEMENT
size += attribute.byteLength * attribute.BYTES_PER_ELEMENT;
}
}
return size;
} // eslint-disable-next-line complexity
function getMeshBoundingBox(attributes) {
if (!attributes || !attributes.POSITION) {
return null;
}
let minX = Infinity;
let minY = Infinity;
let minZ = Infinity;
let maxX = -Infinity;
let maxY = -Infinity;
let maxZ = -Infinity;
const positions = attributes.POSITION.value;
const len = positions && positions.length;
if (!len) {
return null;
}
for (let i = 0; i < len; i += 3) {
const x = positions[i];
const y = positions[i + 1];
const z = positions[i + 2];
minX = x < minX ? x : minX;
minY = y < minY ? y : minY;
minZ = z < minZ ? z : minZ;
maxX = x > maxX ? x : maxX;
maxY = y > maxY ? y : maxY;
maxZ = z > maxZ ? z : maxZ;
}
return [[minX, minY, minZ], [maxX, maxY, maxZ]];
}
/***/ }),
/***/ "../loader-utils/src/index.js":
/*!************************************!*\
!*** ../loader-utils/src/index.js ***!
\************************************/
/*! exports provided: assert, isBrowser, isWorker, nodeVersion, self, window, global, document, createLoaderWorker, parseWithWorker, canParseWithWorker, makeTransformIterator, parseJSON, isBuffer, toBuffer, bufferToArrayBuffer, toArrayBuffer, sliceArrayBuffer, concatenateArrayBuffers, compareArrayBuffers, concatenateTypedArrays, padToNBytes, copyToArray, copyArrayBuffer, copyPaddedArrayBufferToDataView, copyPaddedStringToDataView, padStringToByteAlignment, copyStringToDataView, copyBinaryToDataView, getFirstCharacters, getMagicString, path, setPathPrefix, getPathPrefix, resolvePath, _addAliases, makeTextEncoderIterator, makeTextDecoderIterator, makeLineIterator, makeNumberedLineIterator, forEach, concatenateChunksAsync, RequestScheduler, _getMeshSize, getMeshBoundingBox, NullWorkerLoader, NullLoader, JSONLoader, getZeroOffsetArrayBuffer */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _lib_env_utils_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/env-utils/assert */ "../loader-utils/src/lib/env-utils/assert.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "assert", function() { return _lib_env_utils_assert__WEBPACK_IMPORTED_MODULE_0__["default"]; });
/* harmony import */ var _lib_env_utils_globals__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/env-utils/globals */ "../loader-utils/src/lib/env-utils/globals.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isBrowser", function() { return _lib_env_utils_globals__WEBPACK_IMPORTED_MODULE_1__["isBrowser"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isWorker", function() { return _lib_env_utils_globals__WEBPACK_IMPORTED_MODULE_1__["isWorker"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "nodeVersion", function() { return _lib_env_utils_globals__WEBPACK_IMPORTED_MODULE_1__["nodeVersion"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "self", function() { return _lib_env_utils_globals__WEBPACK_IMPORTED_MODULE_1__["self"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "window", function() { return _lib_env_utils_globals__WEBPACK_IMPORTED_MODULE_1__["window"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "global", function() { return _lib_env_utils_globals__WEBPACK_IMPORTED_MODULE_1__["global"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "document", function() { return _lib_env_utils_globals__WEBPACK_IMPORTED_MODULE_1__["document"]; });
/* harmony import */ var _lib_worker_loader_utils_create_loader_worker__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/worker-loader-utils/create-loader-worker */ "../loader-utils/src/lib/worker-loader-utils/create-loader-worker.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "createLoaderWorker", function() { return _lib_worker_loader_utils_create_loader_worker__WEBPACK_IMPORTED_MODULE_2__["createLoaderWorker"]; });
/* harmony import */ var _lib_worker_loader_utils_parse_with_worker__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/worker-loader-utils/parse-with-worker */ "../loader-utils/src/lib/worker-loader-utils/parse-with-worker.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "parseWithWorker", function() { return _lib_worker_loader_utils_parse_with_worker__WEBPACK_IMPORTED_MODULE_3__["parseWithWorker"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "canParseWithWorker", function() { return _lib_worker_loader_utils_parse_with_worker__WEBPACK_IMPORTED_MODULE_3__["canParseWithWorker"]; });
/* harmony import */ var _lib_iterator_utils_make_transform_iterator__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/iterator-utils/make-transform-iterator */ "../loader-utils/src/lib/iterator-utils/make-transform-iterator.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "makeTransformIterator", function() { return _lib_iterator_utils_make_transform_iterator__WEBPACK_IMPORTED_MODULE_4__["makeTransformIterator"]; });
/* harmony import */ var _lib_parser_utils_parse_json__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/parser-utils/parse-json */ "../loader-utils/src/lib/parser-utils/parse-json.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "parseJSON", function() { return _lib_parser_utils_parse_json__WEBPACK_IMPORTED_MODULE_5__["parseJSON"]; });
/* harmony import */ var _lib_binary_utils_buffer_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/binary-utils/buffer-utils */ "../loader-utils/src/lib/binary-utils/buffer-utils.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isBuffer", function() { return _lib_binary_utils_buffer_utils__WEBPACK_IMPORTED_MODULE_6__["isBuffer"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "toBuffer", function() { return _lib_binary_utils_buffer_utils__WEBPACK_IMPORTED_MODULE_6__["toBuffer"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "bufferToArrayBuffer", function() { return _lib_binary_utils_buffer_utils__WEBPACK_IMPORTED_MODULE_6__["bufferToArrayBuffer"]; });
/* harmony import */ var _lib_binary_utils_array_buffer_utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./lib/binary-utils/array-buffer-utils */ "../loader-utils/src/lib/binary-utils/array-buffer-utils.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "toArrayBuffer", function() { return _lib_binary_utils_array_buffer_utils__WEBPACK_IMPORTED_MODULE_7__["toArrayBuffer"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sliceArrayBuffer", function() { return _lib_binary_utils_array_buffer_utils__WEBPACK_IMPORTED_MODULE_7__["sliceArrayBuffer"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatenateArrayBuffers", function() { return _lib_binary_utils_array_buffer_utils__WEBPACK_IMPORTED_MODULE_7__["concatenateArrayBuffers"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "compareArrayBuffers", function() { return _lib_binary_utils_array_buffer_utils__WEBPACK_IMPORTED_MODULE_7__["compareArrayBuffers"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatenateTypedArrays", function() { return _lib_binary_utils_array_buffer_utils__WEBPACK_IMPORTED_MODULE_7__["concatenateTypedArrays"]; });
/* harmony import */ var _lib_binary_utils_memory_copy_utils__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./lib/binary-utils/memory-copy-utils */ "../loader-utils/src/lib/binary-utils/memory-copy-utils.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "padToNBytes", function() { return _lib_binary_utils_memory_copy_utils__WEBPACK_IMPORTED_MODULE_8__["padToNBytes"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "copyToArray", function() { return _lib_binary_utils_memory_copy_utils__WEBPACK_IMPORTED_MODULE_8__["copyToArray"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "copyArrayBuffer", function() { return _lib_binary_utils_memory_copy_utils__WEBPACK_IMPORTED_MODULE_8__["copyArrayBuffer"]; });
/* harmony import */ var _lib_binary_utils_binary_copy_utils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./lib/binary-utils/binary-copy-utils */ "../loader-utils/src/lib/binary-utils/binary-copy-utils.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "copyPaddedArrayBufferToDataView", function() { return _lib_binary_utils_binary_copy_utils__WEBPACK_IMPORTED_MODULE_9__["copyPaddedArrayBufferToDataView"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "copyPaddedStringToDataView", function() { return _lib_binary_utils_binary_copy_utils__WEBPACK_IMPORTED_MODULE_9__["copyPaddedStringToDataView"]; });
/* harmony import */ var _lib_binary_utils_encode_utils__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./lib/binary-utils/encode-utils */ "../loader-utils/src/lib/binary-utils/encode-utils.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "padStringToByteAlignment", function() { return _lib_binary_utils_encode_utils__WEBPACK_IMPORTED_MODULE_10__["padStringToByteAlignment"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "copyStringToDataView", function() { return _lib_binary_utils_encode_utils__WEBPACK_IMPORTED_MODULE_10__["copyStringToDataView"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "copyBinaryToDataView", function() { return _lib_binary_utils_encode_utils__WEBPACK_IMPORTED_MODULE_10__["copyBinaryToDataView"]; });
/* harmony import */ var _lib_binary_utils_get_first_characters__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./lib/binary-utils/get-first-characters */ "../loader-utils/src/lib/binary-utils/get-first-characters.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getFirstCharacters", function() { return _lib_binary_utils_get_first_characters__WEBPACK_IMPORTED_MODULE_11__["getFirstCharacters"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getMagicString", function() { return _lib_binary_utils_get_first_characters__WEBPACK_IMPORTED_MODULE_11__["getMagicString"]; });
/* harmony import */ var _lib_path_utils_path__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./lib/path-utils/path */ "../loader-utils/src/lib/path-utils/path.js");
/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "path", function() { return _lib_path_utils_path__WEBPACK_IMPORTED_MODULE_12__; });
/* harmony import */ var _lib_path_utils_file_aliases__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./lib/path-utils/file-aliases */ "../loader-utils/src/lib/path-utils/file-aliases.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "setPathPrefix", function() { return _lib_path_utils_file_aliases__WEBPACK_IMPORTED_MODULE_13__["setPathPrefix"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getPathPrefix", function() { return _lib_path_utils_file_aliases__WEBPACK_IMPORTED_MODULE_13__["getPathPrefix"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "resolvePath", function() { return _lib_path_utils_file_aliases__WEBPACK_IMPORTED_MODULE_13__["resolvePath"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "_addAliases", function() { return _lib_path_utils_file_aliases__WEBPACK_IMPORTED_MODULE_13__["addAliases"]; });
/* harmony import */ var _lib_iterator_utils_text_iterators__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./lib/iterator-utils/text-iterators */ "../loader-utils/src/lib/iterator-utils/text-iterators.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "makeTextEncoderIterator", function() { return _lib_iterator_utils_text_iterators__WEBPACK_IMPORTED_MODULE_14__["makeTextEncoderIterator"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "makeTextDecoderIterator", function() { return _lib_iterator_utils_text_iterators__WEBPACK_IMPORTED_MODULE_14__["makeTextDecoderIterator"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "makeLineIterator", function() { return _lib_iterator_utils_text_iterators__WEBPACK_IMPORTED_MODULE_14__["makeLineIterator"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "makeNumberedLineIterator", function() { return _lib_iterator_utils_text_iterators__WEBPACK_IMPORTED_MODULE_14__["makeNumberedLineIterator"]; });
/* harmony import */ var _lib_iterator_utils_async_iteration__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./lib/iterator-utils/async-iteration */ "../loader-utils/src/lib/iterator-utils/async-iteration.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "forEach", function() { return _lib_iterator_utils_async_iteration__WEBPACK_IMPORTED_MODULE_15__["forEach"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "concatenateChunksAsync", function() { return _lib_iterator_utils_async_iteration__WEBPACK_IMPORTED_MODULE_15__["concatenateChunksAsync"]; });
/* harmony import */ var _lib_request_utils_request_scheduler__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ./lib/request-utils/request-scheduler */ "../loader-utils/src/lib/request-utils/request-scheduler.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "RequestScheduler", function() { return _lib_request_utils_request_scheduler__WEBPACK_IMPORTED_MODULE_16__["default"]; });
/* harmony import */ var _categories_mesh_mesh_utils__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./categories/mesh/mesh-utils */ "../loader-utils/src/categories/mesh/mesh-utils.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "_getMeshSize", function() { return _categories_mesh_mesh_utils__WEBPACK_IMPORTED_MODULE_17__["getMeshSize"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getMeshBoundingBox", function() { return _categories_mesh_mesh_utils__WEBPACK_IMPORTED_MODULE_17__["getMeshBoundingBox"]; });
/* harmony import */ var _null_loader__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./null-loader */ "../loader-utils/src/null-loader.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "NullWorkerLoader", function() { return _null_loader__WEBPACK_IMPORTED_MODULE_18__["NullWorkerLoader"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "NullLoader", function() { return _null_loader__WEBPACK_IMPORTED_MODULE_18__["NullLoader"]; });
/* harmony import */ var _json_loader__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./json-loader */ "../loader-utils/src/json-loader.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "JSONLoader", function() { return _json_loader__WEBPACK_IMPORTED_MODULE_19__["JSONLoader"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getZeroOffsetArrayBuffer", function() { return _lib_binary_utils_memory_copy_utils__WEBPACK_IMPORTED_MODULE_8__["getZeroOffsetArrayBuffer"]; });
// GENERAL UTILS
// WORKER LOADER UTILS
// PARSER UTILS
// MEMORY COPY UTILS
// PATH UTILS
// ITERATOR UTILS
// REQUEST UTILS
// MESH CATEGORY UTILS
// Note: Should move to category specific module if code size increases
// Loaders
// DEPRECATED IN 2.3
/***/ }),
/***/ "../loader-utils/src/json-loader.js":
/*!******************************************!*\
!*** ../loader-utils/src/json-loader.js ***!
\******************************************/
/*! exports provided: JSONLoader */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "JSONLoader", function() { return JSONLoader; });
/** @typedef {import('@loaders.gl/loader-utils').LoaderObject} LoaderObject */
// __VERSION__ is injected by babel-plugin-version-inline
// @ts-ignore TS2304: Cannot find name '__VERSION__'.
const VERSION = true ? "3.0.0-alpha.6" : undefined; // TODO /** @type {LoaderObject} */
const JSONLoader = {
name: 'JSON',
id: 'json',
module: 'json',
version: VERSION,
extensions: ['json', 'geojson'],
mimeTypes: ['application/json'],
category: 'json',
text: true,
parseTextSync,
options: {}
}; // TODO - deprecated
function parseTextSync(text, options) {
return JSON.parse(text);
}
/***/ }),
/***/ "../loader-utils/src/lib/binary-utils/array-buffer-utils.js":
/*!******************************************************************!*\
!*** ../loader-utils/src/lib/binary-utils/array-buffer-utils.js ***!
\******************************************************************/
/*! exports provided: toArrayBuffer, compareArrayBuffers, concatenateArrayBuffers, concatenateTypedArrays, sliceArrayBuffer */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "toArrayBuffer", function() { return toArrayBuffer; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "compareArrayBuffers", function() { return compareArrayBuffers; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "concatenateArrayBuffers", function() { return concatenateArrayBuffers; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "concatenateTypedArrays", function() { return concatenateTypedArrays; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "sliceArrayBuffer", function() { return sliceArrayBuffer; });
/* harmony import */ var _env_utils_assert__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../env-utils/assert */ "../loader-utils/src/lib/env-utils/assert.js");
/* harmony import */ var _node_buffer_utils_node__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../node/buffer-utils.node */ 2);
/* harmony import */ var _node_buffer_utils_node__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_buffer_utils_node__WEBPACK_IMPORTED_MODULE_1__);
/** @typedef {import('./array-buffer-utils')} types */
/* global TextEncoder */
/** @type {types['toArrayBuffer']} */
function toArrayBuffer(data) {
// Note: Should be called first, Buffers can trigger other detections below
if (_node_buffer_utils_node__WEBPACK_IMPORTED_MODULE_1__["toArrayBuffer"]) {
// TODO - per docs we should just be able to call buffer.buffer, but there are issues
data = _node_buffer_utils_node__WEBPACK_IMPORTED_MODULE_1__["toArrayBuffer"](data);
}
if (data instanceof ArrayBuffer) {
return data;
} // Careful - Node Buffers will look like ArrayBuffers (keep after isBuffer)
if (ArrayBuffer.isView(data)) {
return data.buffer;
}
if (typeof data === 'string') {
const text = data;
const uint8Array = new TextEncoder().encode(text);
return uint8Array.buffer;
} // HACK to support Blob polyfill
if (data && typeof data === 'object' && data._toArrayBuffer) {
return data._toArrayBuffer();
}
return Object(_env_utils_assert__WEBPACK_IMPORTED_MODULE_0__["default"])(false);
}
/** @type {types['compareArrayBuffers']} */
function compareArrayBuffers(arrayBuffer1, arrayBuffer2, byteLength) {
byteLength = byteLength || arrayBuffer1.byteLength;
if (arrayBuffer1.byteLength < byteLength || arrayBuffer2.byteLength < byteLength) {
return false;
}
const array1 = new Uint8Array(arrayBuffer1);
const array2 = new Uint8Array(arrayBuffer2);
for (let i = 0; i < array1.length; ++i) {
if (array1[i] !== array2[i]) {
return false;
}
}
return true;
} // Concatenate ArrayBuffers
/** @type {types['concatenateArrayBuffers']} */
function concatenateArrayBuffers(...sources) {
// Make sure all inputs are wrapped in typed arrays
const sourceArrays = sources.map(source2 => source2 instanceof ArrayBuffer ? new Uint8Array(source2) : source2); // Get length of all inputs
const byteLength = sourceArrays.reduce((length, typedArray) => length + typedArray.byteLength, 0); // Allocate array with space for all inputs
const result = new Uint8Array(byteLength); // Copy the subarrays
let offset = 0;
for (const sourceArray of sourceArrays) {
result.set(sourceArray, offset);
offset += sourceArray.byteLength;
} // We work with ArrayBuffers, discard the typed array wrapper
return result.buffer;
} // Concatenate arbitrary count of typed arrays
function concatenateTypedArrays(...arrays) {
const TypedArrayConstructor = arrays && arrays.length > 1 && arrays[0].constructor || null;
if (!TypedArrayConstructor) {
throw new Error('"concatenateTypedArrays" - incorrect quantity of arguments or arguments have incompatible data types');
}
const sumLength = arrays.reduce((acc, value) => acc + value.length, 0);
const result = new TypedArrayConstructor(sumLength);
let offset = 0;
for (const array of arrays) {
result.set(array, offset);
offset += array.length;
}
return result;
} // Copy a view of an ArrayBuffer into new ArrayBuffer with byteOffset = 0
function sliceArrayBuffer(arrayBuffer, byteOffset, byteLength) {
const subArray = byteLength !== undefined ? new Uint8Array(arrayBuffer).subarray(byteOffset, byteOffset + byteLength) : new Uint8Array(arrayBuffer).subarray(byteOffset);
const arrayCopy = new Uint8Array(subArray);
return arrayCopy.buffer;
}
/***/ }),
/***/ "../loader-utils/src/lib/binary-utils/binary-copy-utils.js":
/*!*****************************************************************!*\
!*** ../loader-utils/src/lib/binary-utils/binary-copy-utils.js ***!
\*****************************************************************/
/*! exports provided: copyPaddedArrayBufferToDataView, copyPaddedStringToDataView */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "copyPaddedArrayBufferToDataView", function() { return copyPaddedArrayBufferToDataView; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "copyPaddedStringToDataView", function() { return copyPaddedStringToDataView; });
/* harmony import */ var _memory_copy_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./memory-copy-utils */ "../loader-utils/src/lib/binary-utils/memory-copy-utils.js");
/* global TextEncoder */
function copyPaddedArrayBufferToDataView(dataView, byteOffset, sourceBuffer, padding) {
const paddedLength = Object(_memory_copy_utils__WEBPACK_IMPORTED_MODULE_0__["padToNBytes"])(sourceBuffer.byteLength, padding);
const padLength = paddedLength - sourceBuffer.byteLength;
if (dataView) {
// Copy array
const targetArray = new Uint8Array(dataView.buffer, dataView.byteOffset + byteOffset, sourceBuffer.byteLength);
const sourceArray = new Uint8Array(sourceBuffer);
targetArray.set(sourceArray); // Add PADDING
for (let i = 0; i < padLength; ++i) {
// json chunk is padded with spaces (ASCII 0x20)
dataView.setUint8(byteOffset + sourceBuffer.byteLength + i, 0x20);
}
}
byteOffset += paddedLength;
return byteOffset;
}
function copyPaddedStringToDataView(dataView, byteOffset, string, padding) {
const textEncoder = new TextEncoder(); // PERFORMANCE IDEA: We encode twice, once to get size and once to store
// PERFORMANCE IDEA: Use TextEncoder.encodeInto() to avoid temporary copy
const stringBuffer = textEncoder.encode(string);
byteOffset = copyPaddedArrayBufferToDataView(dataView, byteOffset, stringBuffer, padding);
return byteOffset;
}
/***/ }),
/***/ "../loader-utils/src/lib/binary-utils/buffer-utils.js":
/*!************************************************************!*\
!*** ../loader-utils/src/lib/binary-utils/buffer-utils.js ***!
\************************************************************/
/*! exports provided: isBuffer, toBuffer, bufferToArrayBuffer */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isBuffer", function() { return isBuffer; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "toBuffer", function() { return toBuffer; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "bufferToArrayBuffer", function() { return bufferToArrayBuffer; });
/* harmony import */ var _node_buffer_utils_node__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../node/buffer-utils.node */ 2);
/* harmony import */ va