Skip to content

Commit

Permalink
Merge pull request #179 from jakubcreoox/fix-TextEncoderErrorForBigMe…
Browse files Browse the repository at this point in the history
…tadata

fix: switch library for TextEncoder
  • Loading branch information
xeolabs authored Oct 11, 2024
2 parents 1488b93 + e188883 commit b95f3d0
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 4 deletions.
4 changes: 3 additions & 1 deletion dist/convert2xkt.cjs.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

Object.defineProperty(exports, '__esModule', { value: true });

var node_util = require('node:util');

/**
* @desc Provides info on the XKT generated by xeokit-convert.
*/
Expand Down Expand Up @@ -26278,7 +26280,7 @@ function writeXKTModelToArrayBufferUncompressed(xktModel, metaModelJSON, stats)
stats.texturesSize += data.textureData.byteLength;

const object2Array = (function() {
const encoder = new TextEncoder();
const encoder = new node_util.TextEncoder();
return obj => encoder.encode(JSON.stringify(obj));
})();

Expand Down
16 changes: 15 additions & 1 deletion dist/xeokit-convert.cjs.js
Original file line number Diff line number Diff line change
Expand Up @@ -2966,8 +2966,12 @@ __webpack_require__.r(__webpack_exports__);
/* harmony import */ var _XKT_INFO_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../XKT_INFO.js */ "./src/XKT_INFO.js");
/* harmony import */ var pako__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! pako */ "pako");
/* harmony import */ var pako__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(pako__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var node_util__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! node:util */ "node:util");
/* harmony import */ var node_util__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(node_util__WEBPACK_IMPORTED_MODULE_2__);


// Use the V8's TextEncoder impl., otherwise the @loaders.gl/polyfill's one gets used, which is failing (at Array::push) for large metadata

var XKT_VERSION = _XKT_INFO_js__WEBPACK_IMPORTED_MODULE_0__.XKT_INFO.xktVersion;
var NUM_TEXTURE_ATTRIBUTES = 9;
var NUM_MATERIAL_ATTRIBUTES = 6;
Expand Down Expand Up @@ -2998,7 +3002,7 @@ function writeXKTModelToArrayBufferUncompressed(xktModel, metaModelJSON, stats)
var data = getModelData(xktModel, metaModelJSON, stats);
stats.texturesSize += data.textureData.byteLength;
var object2Array = function () {
var encoder = new TextEncoder();
var encoder = new node_util__WEBPACK_IMPORTED_MODULE_2__.TextEncoder();
return function (obj) {
return encoder.encode(JSON.stringify(obj));
};
Expand Down Expand Up @@ -13334,6 +13338,16 @@ module.exports = require("pako");

module.exports = require("path");

/***/ }),

/***/ "node:util":
/*!****************************!*\
!*** external "node:util" ***!
\****************************/
/***/ ((module) => {

module.exports = require("node:util");

/***/ })

/******/ });
Expand Down
2 changes: 1 addition & 1 deletion dist/xeokit-convert.cjs.js.map

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion dist/xeokit-convert.es.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import { TextEncoder as TextEncoder$1 } from 'node:util';

/**
* @desc Provides info on the XKT generated by xeokit-convert.
*/
Expand Down Expand Up @@ -16870,7 +16872,7 @@ function writeXKTModelToArrayBufferUncompressed(xktModel, metaModelJSON, stats)
stats.texturesSize += data.textureData.byteLength;

const object2Array = (function() {
const encoder = new TextEncoder();
const encoder = new TextEncoder$1();
return obj => encoder.encode(JSON.stringify(obj));
})();

Expand Down
1 change: 1 addition & 0 deletions src/XKTModel/writeXKTModelToArrayBuffer.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import {XKT_INFO} from "../XKT_INFO.js";
import * as pako from 'pako';
import {TextEncoder} from "node:util"; // Use the V8's TextEncoder impl., otherwise the @loaders.gl/polyfill's one gets used, which is failing (at Array::push) for large metadata

const XKT_VERSION = XKT_INFO.xktVersion;
const NUM_TEXTURE_ATTRIBUTES = 9;
Expand Down

0 comments on commit b95f3d0

Please sign in to comment.