@loaders.gl/tile-converter 3.4.14 → 3.4.15

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.
Files changed (91) hide show
  1. package/dist/3d-tiles-attributes-worker.js +1 -1
  2. package/dist/converter.min.js +78 -77
  3. package/dist/dist.min.js +2081 -1557
  4. package/dist/es5/3d-tiles-attributes-worker.js +3 -3
  5. package/dist/es5/3d-tiles-attributes-worker.js.map +1 -1
  6. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js +203 -417
  7. package/dist/es5/3d-tiles-converter/3d-tiles-converter.js.map +1 -1
  8. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js +197 -266
  9. package/dist/es5/3d-tiles-converter/helpers/b3dm-converter.js.map +1 -1
  10. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +4 -6
  11. package/dist/es5/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +1 -1
  12. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js +12 -12
  13. package/dist/es5/3d-tiles-converter/helpers/texture-atlas.js.map +1 -1
  14. package/dist/es5/3d-tiles-converter/json-templates/tileset.js +35 -51
  15. package/dist/es5/3d-tiles-converter/json-templates/tileset.js.map +1 -1
  16. package/dist/es5/bundle.js +1 -1
  17. package/dist/es5/bundle.js.map +1 -1
  18. package/dist/es5/constants.js +1 -1
  19. package/dist/es5/constants.js.map +1 -1
  20. package/dist/es5/converter-cli.js +78 -133
  21. package/dist/es5/converter-cli.js.map +1 -1
  22. package/dist/es5/deps-installer/deps-installer.js +38 -110
  23. package/dist/es5/deps-installer/deps-installer.js.map +1 -1
  24. package/dist/es5/i3s-attributes-worker.js +3 -3
  25. package/dist/es5/i3s-attributes-worker.js.map +1 -1
  26. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js +31 -36
  27. package/dist/es5/i3s-converter/helpers/batch-ids-extensions.js.map +1 -1
  28. package/dist/es5/i3s-converter/helpers/coordinate-converter.js +23 -23
  29. package/dist/es5/i3s-converter/helpers/coordinate-converter.js.map +1 -1
  30. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js +9 -27
  31. package/dist/es5/i3s-converter/helpers/create-scene-server-path.js.map +1 -1
  32. package/dist/es5/i3s-converter/helpers/feature-attributes.js +27 -42
  33. package/dist/es5/i3s-converter/helpers/feature-attributes.js.map +1 -1
  34. package/dist/es5/i3s-converter/helpers/geometry-attributes.js +97 -114
  35. package/dist/es5/i3s-converter/helpers/geometry-attributes.js.map +1 -1
  36. package/dist/es5/i3s-converter/helpers/geometry-converter.js +523 -798
  37. package/dist/es5/i3s-converter/helpers/geometry-converter.js.map +1 -1
  38. package/dist/es5/i3s-converter/helpers/gltf-attributes.js +24 -25
  39. package/dist/es5/i3s-converter/helpers/gltf-attributes.js.map +1 -1
  40. package/dist/es5/i3s-converter/helpers/node-debug.js +27 -25
  41. package/dist/es5/i3s-converter/helpers/node-debug.js.map +1 -1
  42. package/dist/es5/i3s-converter/helpers/node-index-document.js +165 -461
  43. package/dist/es5/i3s-converter/helpers/node-index-document.js.map +1 -1
  44. package/dist/es5/i3s-converter/helpers/node-pages.js +169 -474
  45. package/dist/es5/i3s-converter/helpers/node-pages.js.map +1 -1
  46. package/dist/es5/i3s-converter/i3s-converter.js +663 -1401
  47. package/dist/es5/i3s-converter/i3s-converter.js.map +1 -1
  48. package/dist/es5/i3s-converter/json-templates/geometry-definitions.js +82 -92
  49. package/dist/es5/i3s-converter/json-templates/geometry-definitions.js.map +1 -1
  50. package/dist/es5/i3s-converter/json-templates/layers.js +130 -152
  51. package/dist/es5/i3s-converter/json-templates/layers.js.map +1 -1
  52. package/dist/es5/i3s-converter/json-templates/metadata.js +21 -23
  53. package/dist/es5/i3s-converter/json-templates/metadata.js.map +1 -1
  54. package/dist/es5/i3s-converter/json-templates/node.js +78 -89
  55. package/dist/es5/i3s-converter/json-templates/node.js.map +1 -1
  56. package/dist/es5/i3s-converter/json-templates/scene-server.js +27 -31
  57. package/dist/es5/i3s-converter/json-templates/scene-server.js.map +1 -1
  58. package/dist/es5/i3s-converter/json-templates/shared-resources.js +110 -152
  59. package/dist/es5/i3s-converter/json-templates/shared-resources.js.map +1 -1
  60. package/dist/es5/i3s-converter/json-templates/store.js +2 -4
  61. package/dist/es5/i3s-converter/json-templates/store.js.map +1 -1
  62. package/dist/es5/i3s-server/app.js +6 -6
  63. package/dist/es5/i3s-server/app.js.map +1 -1
  64. package/dist/es5/i3s-server/controllers/index-controller.js +20 -49
  65. package/dist/es5/i3s-server/controllers/index-controller.js.map +1 -1
  66. package/dist/es5/i3s-server/routes/index.js +14 -33
  67. package/dist/es5/i3s-server/routes/index.js.map +1 -1
  68. package/dist/es5/index.js +2 -2
  69. package/dist/es5/lib/utils/compress-util.js +127 -295
  70. package/dist/es5/lib/utils/compress-util.js.map +1 -1
  71. package/dist/es5/lib/utils/file-utils.js +65 -174
  72. package/dist/es5/lib/utils/file-utils.js.map +1 -1
  73. package/dist/es5/lib/utils/lod-conversion-utils.js +9 -9
  74. package/dist/es5/lib/utils/lod-conversion-utils.js.map +1 -1
  75. package/dist/es5/lib/utils/queue.js +13 -38
  76. package/dist/es5/lib/utils/queue.js.map +1 -1
  77. package/dist/es5/lib/utils/statistic-utills.js +39 -117
  78. package/dist/es5/lib/utils/statistic-utills.js.map +1 -1
  79. package/dist/es5/lib/utils/write-queue.js +74 -195
  80. package/dist/es5/lib/utils/write-queue.js.map +1 -1
  81. package/dist/es5/pgm-loader.js +3 -22
  82. package/dist/es5/pgm-loader.js.map +1 -1
  83. package/dist/es5/workers/3d-tiles-attributes-worker.js +5 -22
  84. package/dist/es5/workers/3d-tiles-attributes-worker.js.map +1 -1
  85. package/dist/es5/workers/i3s-attributes-worker.js +4 -25
  86. package/dist/es5/workers/i3s-attributes-worker.js.map +1 -1
  87. package/dist/esm/3d-tiles-attributes-worker.js +1 -1
  88. package/dist/esm/deps-installer/deps-installer.js +1 -1
  89. package/dist/esm/i3s-attributes-worker.js +1 -1
  90. package/dist/esm/pgm-loader.js +1 -1
  91. package/package.json +15 -15
@@ -1 +1 @@
1
- {"version":3,"file":"statistic-utills.js","names":["_path","require","_fs","_fileUtils","_createForOfIteratorHelper","o","allowArrayLike","it","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","from","test","arr","len","arr2","timeConverter","time","nanoSecondsInMillisecond","timeInSeconds","hours","Math","floor","minutes","seconds","milliseconds","result","concat","calculateFilesSize","_x","_calculateFilesSize","apply","arguments","_asyncToGenerator2","default","_regenerator","mark","_callee","params","slpk","outputPath","tilesetName","fullOutputPath","slpkPath","stat","directoryPath","totalSize","wrap","_callee$","_context","prev","getAbsoluteFilePath","join","fs","sent","abrupt","size","getTotalFilesSize","t0","console","log","stop","_x2","_getTotalFilesSize","_callee2","dirPath","totalFileSize","files","_iterator","_step","file","fileStat","_callee2$","_context2","readdir","isDirectory","t1","finish"],"sources":["../../../../src/lib/utils/statistic-utills.ts"],"sourcesContent":["import {join} from 'path';\nimport {promises as fs} from 'fs';\nimport {getAbsoluteFilePath} from './file-utils';\n\nexport function timeConverter(time) {\n const nanoSecondsInMillisecond = 1e6;\n let timeInSeconds = time[0];\n const hours = Math.floor(timeInSeconds / 3600);\n timeInSeconds = timeInSeconds - hours * 3600;\n const minutes = Math.floor(timeInSeconds / 60);\n timeInSeconds = timeInSeconds - minutes * 60;\n const seconds = Math.floor(timeInSeconds);\n const milliseconds = time[1] / nanoSecondsInMillisecond;\n let result = '';\n\n if (hours) {\n result += `${hours}h `;\n }\n\n if (minutes) {\n result += `${minutes}m `;\n }\n\n if (seconds) {\n result += `${seconds}s`;\n }\n\n if (!result) {\n result += `${milliseconds}ms`;\n }\n\n return result;\n}\n\nexport async function calculateFilesSize(params) {\n const {slpk, outputPath, tilesetName} = params;\n const fullOutputPath = getAbsoluteFilePath(outputPath);\n\n try {\n if (slpk) {\n const slpkPath = join(fullOutputPath, `${tilesetName}.slpk`);\n const stat = await fs.stat(slpkPath);\n return stat.size;\n }\n\n const directoryPath = join(fullOutputPath, tilesetName);\n const totalSize = await getTotalFilesSize(directoryPath);\n return totalSize;\n } catch (error) {\n console.log('Calculate file sizes error: ', error); // eslint-disable-line\n return null;\n }\n}\n\nasync function getTotalFilesSize(dirPath) {\n let totalFileSize = 0;\n\n const files = await fs.readdir(dirPath);\n\n for (const file of files) {\n const fileStat = await fs.stat(join(dirPath, file));\n if (fileStat.isDirectory()) {\n totalFileSize += await getTotalFilesSize(join(dirPath, file));\n } else {\n totalFileSize += fileStat.size;\n }\n }\n return totalFileSize;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"statistic-utills.js","names":["_path","require","_fs","_fileUtils","timeConverter","time","nanoSecondsInMillisecond","timeInSeconds","hours","Math","floor","minutes","seconds","milliseconds","result","concat","calculateFilesSize","params","slpk","outputPath","tilesetName","fullOutputPath","getAbsoluteFilePath","slpkPath","join","stat","fs","size","directoryPath","totalSize","getTotalFilesSize","error","console","log","dirPath","totalFileSize","files","readdir","file","fileStat","isDirectory"],"sources":["../../../../src/lib/utils/statistic-utills.ts"],"sourcesContent":["import {join} from 'path';\nimport {promises as fs} from 'fs';\nimport {getAbsoluteFilePath} from './file-utils';\n\nexport function timeConverter(time) {\n const nanoSecondsInMillisecond = 1e6;\n let timeInSeconds = time[0];\n const hours = Math.floor(timeInSeconds / 3600);\n timeInSeconds = timeInSeconds - hours * 3600;\n const minutes = Math.floor(timeInSeconds / 60);\n timeInSeconds = timeInSeconds - minutes * 60;\n const seconds = Math.floor(timeInSeconds);\n const milliseconds = time[1] / nanoSecondsInMillisecond;\n let result = '';\n\n if (hours) {\n result += `${hours}h `;\n }\n\n if (minutes) {\n result += `${minutes}m `;\n }\n\n if (seconds) {\n result += `${seconds}s`;\n }\n\n if (!result) {\n result += `${milliseconds}ms`;\n }\n\n return result;\n}\n\nexport async function calculateFilesSize(params) {\n const {slpk, outputPath, tilesetName} = params;\n const fullOutputPath = getAbsoluteFilePath(outputPath);\n\n try {\n if (slpk) {\n const slpkPath = join(fullOutputPath, `${tilesetName}.slpk`);\n const stat = await fs.stat(slpkPath);\n return stat.size;\n }\n\n const directoryPath = join(fullOutputPath, tilesetName);\n const totalSize = await getTotalFilesSize(directoryPath);\n return totalSize;\n } catch (error) {\n console.log('Calculate file sizes error: ', error); // eslint-disable-line\n return null;\n }\n}\n\nasync function getTotalFilesSize(dirPath) {\n let totalFileSize = 0;\n\n const files = await fs.readdir(dirPath);\n\n for (const file of files) {\n const fileStat = await fs.stat(join(dirPath, file));\n if (fileStat.isDirectory()) {\n totalFileSize += await getTotalFilesSize(join(dirPath, file));\n } else {\n totalFileSize += fileStat.size;\n }\n }\n return totalFileSize;\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,GAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAEO,SAASG,aAAaA,CAACC,IAAI,EAAE;EAClC,MAAMC,wBAAwB,GAAG,GAAG;EACpC,IAAIC,aAAa,GAAGF,IAAI,CAAC,CAAC,CAAC;EAC3B,MAAMG,KAAK,GAAGC,IAAI,CAACC,KAAK,CAACH,aAAa,GAAG,IAAI,CAAC;EAC9CA,aAAa,GAAGA,aAAa,GAAGC,KAAK,GAAG,IAAI;EAC5C,MAAMG,OAAO,GAAGF,IAAI,CAACC,KAAK,CAACH,aAAa,GAAG,EAAE,CAAC;EAC9CA,aAAa,GAAGA,aAAa,GAAGI,OAAO,GAAG,EAAE;EAC5C,MAAMC,OAAO,GAAGH,IAAI,CAACC,KAAK,CAACH,aAAa,CAAC;EACzC,MAAMM,YAAY,GAAGR,IAAI,CAAC,CAAC,CAAC,GAAGC,wBAAwB;EACvD,IAAIQ,MAAM,GAAG,EAAE;EAEf,IAAIN,KAAK,EAAE;IACTM,MAAM,OAAAC,MAAA,CAAOP,KAAK,OAAI;EACxB;EAEA,IAAIG,OAAO,EAAE;IACXG,MAAM,OAAAC,MAAA,CAAOJ,OAAO,OAAI;EAC1B;EAEA,IAAIC,OAAO,EAAE;IACXE,MAAM,OAAAC,MAAA,CAAOH,OAAO,MAAG;EACzB;EAEA,IAAI,CAACE,MAAM,EAAE;IACXA,MAAM,OAAAC,MAAA,CAAOF,YAAY,OAAI;EAC/B;EAEA,OAAOC,MAAM;AACf;AAEO,eAAeE,kBAAkBA,CAACC,MAAM,EAAE;EAC/C,MAAM;IAACC,IAAI;IAAEC,UAAU;IAAEC;EAAW,CAAC,GAAGH,MAAM;EAC9C,MAAMI,cAAc,GAAG,IAAAC,8BAAmB,EAACH,UAAU,CAAC;EAEtD,IAAI;IACF,IAAID,IAAI,EAAE;MACR,MAAMK,QAAQ,GAAG,IAAAC,UAAI,EAACH,cAAc,KAAAN,MAAA,CAAKK,WAAW,UAAO,CAAC;MAC5D,MAAMK,IAAI,GAAG,MAAMC,YAAE,CAACD,IAAI,CAACF,QAAQ,CAAC;MACpC,OAAOE,IAAI,CAACE,IAAI;IAClB;IAEA,MAAMC,aAAa,GAAG,IAAAJ,UAAI,EAACH,cAAc,EAAED,WAAW,CAAC;IACvD,MAAMS,SAAS,GAAG,MAAMC,iBAAiB,CAACF,aAAa,CAAC;IACxD,OAAOC,SAAS;EAClB,CAAC,CAAC,OAAOE,KAAK,EAAE;IACdC,OAAO,CAACC,GAAG,CAAC,8BAA8B,EAAEF,KAAK,CAAC;IAClD,OAAO,IAAI;EACb;AACF;AAEA,eAAeD,iBAAiBA,CAACI,OAAO,EAAE;EACxC,IAAIC,aAAa,GAAG,CAAC;EAErB,MAAMC,KAAK,GAAG,MAAMV,YAAE,CAACW,OAAO,CAACH,OAAO,CAAC;EAEvC,KAAK,MAAMI,IAAI,IAAIF,KAAK,EAAE;IACxB,MAAMG,QAAQ,GAAG,MAAMb,YAAE,CAACD,IAAI,CAAC,IAAAD,UAAI,EAACU,OAAO,EAAEI,IAAI,CAAC,CAAC;IACnD,IAAIC,QAAQ,CAACC,WAAW,CAAC,CAAC,EAAE;MAC1BL,aAAa,IAAI,MAAML,iBAAiB,CAAC,IAAAN,UAAI,EAACU,OAAO,EAAEI,IAAI,CAAC,CAAC;IAC/D,CAAC,MAAM;MACLH,aAAa,IAAII,QAAQ,CAACZ,IAAI;IAChC;EACF;EACA,OAAOQ,aAAa;AACtB"}
@@ -5,210 +5,89 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = 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 _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
13
- var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
14
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
16
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
9
  var _queue = require("./queue");
19
10
  var _process = _interopRequireDefault(require("process"));
20
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
21
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
22
- var MEMORY_LIMIT = 4 * 1024 * 1024 * 1024;
23
- var WriteQueue = function (_Queue) {
24
- (0, _inherits2.default)(WriteQueue, _Queue);
25
- var _super = _createSuper(WriteQueue);
26
- function WriteQueue() {
27
- var _this;
28
- var listeningInterval = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 2000;
29
- var writeConcurrency = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 400;
30
- (0, _classCallCheck2.default)(this, WriteQueue);
31
- _this = _super.call(this);
32
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "intervalId", void 0);
33
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "writePromise", null);
34
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "fileMap", {});
35
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "listeningInterval", void 0);
36
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "writeConcurrency", void 0);
37
- _this.listeningInterval = listeningInterval;
38
- _this.writeConcurrency = writeConcurrency;
39
- return _this;
11
+ const MEMORY_LIMIT = 4 * 1024 * 1024 * 1024;
12
+ class WriteQueue extends _queue.Queue {
13
+ constructor() {
14
+ let listeningInterval = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 2000;
15
+ let writeConcurrency = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 400;
16
+ super();
17
+ (0, _defineProperty2.default)(this, "intervalId", void 0);
18
+ (0, _defineProperty2.default)(this, "writePromise", null);
19
+ (0, _defineProperty2.default)(this, "fileMap", {});
20
+ (0, _defineProperty2.default)(this, "listeningInterval", void 0);
21
+ (0, _defineProperty2.default)(this, "writeConcurrency", void 0);
22
+ this.listeningInterval = listeningInterval;
23
+ this.writeConcurrency = writeConcurrency;
40
24
  }
41
- (0, _createClass2.default)(WriteQueue, [{
42
- key: "enqueue",
43
- value: function () {
44
- var _enqueue = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(val) {
45
- var writeImmediately,
46
- _ref,
47
- archiveKey,
48
- writePromise,
49
- result,
50
- _args = arguments;
51
- return _regenerator.default.wrap(function _callee$(_context) {
52
- while (1) switch (_context.prev = _context.next) {
53
- case 0:
54
- writeImmediately = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;
55
- if (!writeImmediately) {
56
- _context.next = 9;
57
- break;
58
- }
59
- _ref = val, archiveKey = _ref.archiveKey, writePromise = _ref.writePromise;
60
- _context.next = 5;
61
- return writePromise();
62
- case 5:
63
- result = _context.sent;
64
- if (archiveKey && result) {
65
- this.fileMap[archiveKey] = result;
66
- }
67
- _context.next = 13;
68
- break;
69
- case 9:
70
- (0, _get2.default)((0, _getPrototypeOf2.default)(WriteQueue.prototype), "enqueue", this).call(this, val);
71
- if (!(_process.default.memoryUsage().rss > MEMORY_LIMIT)) {
72
- _context.next = 13;
73
- break;
74
- }
75
- _context.next = 13;
76
- return this.startWrite();
77
- case 13:
78
- case "end":
79
- return _context.stop();
80
- }
81
- }, _callee, this);
82
- }));
83
- function enqueue(_x) {
84
- return _enqueue.apply(this, arguments);
25
+ async enqueue(val) {
26
+ let writeImmediately = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
27
+ if (writeImmediately) {
28
+ const {
29
+ archiveKey,
30
+ writePromise
31
+ } = val;
32
+ const result = await writePromise();
33
+ if (archiveKey && result) {
34
+ this.fileMap[archiveKey] = result;
85
35
  }
86
- return enqueue;
87
- }()
88
- }, {
89
- key: "startListening",
90
- value: function startListening() {
91
- this.intervalId = setInterval(this.startWrite.bind(this), this.listeningInterval);
92
- }
93
- }, {
94
- key: "stopListening",
95
- value: function stopListening() {
96
- if (this.intervalId) {
97
- clearInterval(this.intervalId);
36
+ } else {
37
+ super.enqueue(val);
38
+ if (_process.default.memoryUsage().rss > MEMORY_LIMIT) {
39
+ await this.startWrite();
98
40
  }
99
41
  }
100
- }, {
101
- key: "startWrite",
102
- value: function () {
103
- var _startWrite = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2() {
104
- return _regenerator.default.wrap(function _callee2$(_context2) {
105
- while (1) switch (_context2.prev = _context2.next) {
106
- case 0:
107
- if (!this.writePromise) {
108
- this.writePromise = this.doWrite();
109
- }
110
- _context2.next = 3;
111
- return this.writePromise;
112
- case 3:
113
- this.writePromise = null;
114
- case 4:
115
- case "end":
116
- return _context2.stop();
117
- }
118
- }, _callee2, this);
119
- }));
120
- function startWrite() {
121
- return _startWrite.apply(this, arguments);
122
- }
123
- return startWrite;
124
- }()
125
- }, {
126
- key: "finalize",
127
- value: function () {
128
- var _finalize = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3() {
129
- return _regenerator.default.wrap(function _callee3$(_context3) {
130
- while (1) switch (_context3.prev = _context3.next) {
131
- case 0:
132
- this.stopListening();
133
- _context3.next = 3;
134
- return this.startWrite();
135
- case 3:
136
- case "end":
137
- return _context3.stop();
138
- }
139
- }, _callee3, this);
140
- }));
141
- function finalize() {
142
- return _finalize.apply(this, arguments);
143
- }
144
- return finalize;
145
- }()
146
- }, {
147
- key: "doWrite",
148
- value: function () {
149
- var _doWrite = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4() {
150
- var promises, archiveKeys, i, item, _ref2, archiveKey, writePromise, promise, writeResults;
151
- return _regenerator.default.wrap(function _callee4$(_context4) {
152
- while (1) switch (_context4.prev = _context4.next) {
153
- case 0:
154
- if (!this.length) {
155
- _context4.next = 21;
156
- break;
157
- }
158
- promises = [];
159
- archiveKeys = [];
160
- i = 0;
161
- case 4:
162
- if (!(i < this.writeConcurrency)) {
163
- _context4.next = 15;
164
- break;
165
- }
166
- item = this.dequeue();
167
- if (item) {
168
- _context4.next = 8;
169
- break;
170
- }
171
- return _context4.abrupt("break", 15);
172
- case 8:
173
- _ref2 = item, archiveKey = _ref2.archiveKey, writePromise = _ref2.writePromise;
174
- archiveKeys.push(archiveKey);
175
- promise = writePromise();
176
- promises.push(promise);
177
- case 12:
178
- i++;
179
- _context4.next = 4;
180
- break;
181
- case 15:
182
- _context4.next = 17;
183
- return Promise.allSettled(promises);
184
- case 17:
185
- writeResults = _context4.sent;
186
- this.updateFileMap(archiveKeys, writeResults);
187
- _context4.next = 0;
188
- break;
189
- case 21:
190
- case "end":
191
- return _context4.stop();
192
- }
193
- }, _callee4, this);
194
- }));
195
- function doWrite() {
196
- return _doWrite.apply(this, arguments);
197
- }
198
- return doWrite;
199
- }()
200
- }, {
201
- key: "updateFileMap",
202
- value: function updateFileMap(archiveKeys, writeResults) {
203
- for (var i = 0; i < archiveKeys.length; i++) {
204
- var archiveKey = archiveKeys[i];
205
- if (archiveKey && 'value' in writeResults[i]) {
206
- this.fileMap[archiveKey] = writeResults[i].value;
42
+ }
43
+ startListening() {
44
+ this.intervalId = setInterval(this.startWrite.bind(this), this.listeningInterval);
45
+ }
46
+ stopListening() {
47
+ if (this.intervalId) {
48
+ clearInterval(this.intervalId);
49
+ }
50
+ }
51
+ async startWrite() {
52
+ if (!this.writePromise) {
53
+ this.writePromise = this.doWrite();
54
+ }
55
+ await this.writePromise;
56
+ this.writePromise = null;
57
+ }
58
+ async finalize() {
59
+ this.stopListening();
60
+ await this.startWrite();
61
+ }
62
+ async doWrite() {
63
+ while (this.length) {
64
+ const promises = [];
65
+ const archiveKeys = [];
66
+ for (let i = 0; i < this.writeConcurrency; i++) {
67
+ const item = this.dequeue();
68
+ if (!item) {
69
+ break;
207
70
  }
71
+ const {
72
+ archiveKey,
73
+ writePromise
74
+ } = item;
75
+ archiveKeys.push(archiveKey);
76
+ const promise = writePromise();
77
+ promises.push(promise);
208
78
  }
79
+ const writeResults = await Promise.allSettled(promises);
80
+ this.updateFileMap(archiveKeys, writeResults);
209
81
  }
210
- }]);
211
- return WriteQueue;
212
- }(_queue.Queue);
82
+ }
83
+ updateFileMap(archiveKeys, writeResults) {
84
+ for (let i = 0; i < archiveKeys.length; i++) {
85
+ const archiveKey = archiveKeys[i];
86
+ if (archiveKey && 'value' in writeResults[i]) {
87
+ this.fileMap[archiveKey] = writeResults[i].value;
88
+ }
89
+ }
90
+ }
91
+ }
213
92
  exports.default = WriteQueue;
214
93
  //# sourceMappingURL=write-queue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"write-queue.js","names":["_queue","require","_process","_interopRequireDefault","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","Reflect","construct","arguments","apply","_possibleConstructorReturn2","sham","Proxy","Boolean","prototype","valueOf","call","e","MEMORY_LIMIT","WriteQueue","_Queue","_inherits2","_super","_this","listeningInterval","length","undefined","writeConcurrency","_classCallCheck2","_defineProperty2","_assertThisInitialized2","_createClass2","key","value","_enqueue","_asyncToGenerator2","_regenerator","mark","_callee","val","writeImmediately","_ref","archiveKey","writePromise","_args","wrap","_callee$","_context","prev","next","sent","fileMap","_get2","process","memoryUsage","rss","startWrite","stop","enqueue","_x","startListening","intervalId","setInterval","bind","stopListening","clearInterval","_startWrite","_callee2","_callee2$","_context2","doWrite","_finalize","_callee3","_callee3$","_context3","finalize","_doWrite","_callee4","promises","archiveKeys","i","item","_ref2","promise","writeResults","_callee4$","_context4","dequeue","abrupt","push","Promise","allSettled","updateFileMap","Queue","exports"],"sources":["../../../../src/lib/utils/write-queue.ts"],"sourcesContent":["import {Queue} from './queue';\nimport process from 'process';\n\n/** Memory limit size is based on testing */\nconst MEMORY_LIMIT = 4 * 1024 * 1024 * 1024; // 4GB\n\nexport type WriteQueueItem = {\n archiveKey?: string;\n /**\n * writePromise() returns a Promise that will be awaited in Promise.allSettled(promises);\n * Arguments for this call are specified in writeQueue.enqueue call like this:\n * await writeQueue.enqueue({\n * archiveKey: `nodePages/xxx.json.gz`,\n * writePromise: () => writeFileForSlpk(slpkPath, data, `xxx.json`)\n * });\n * Note, a function like writeFileForSlpk should NOT be called when initializing the object for enqueue().\n * If he function is called, the promise will be created\n * and the function will allocate resources (file descriptors) for file writing.\n * It will be done for ALL items in the queue, which is not supposed to happen.\n * That's why the function should be passed as\n * writePromise: () => writeFileForSlpk(slpkPath, content, `xxx.json`)\n * instead of\n * writePromise: writeFileForSlpk(slpkPath, content, `xxx.json`) // INCORRECT !\n */\n writePromise: () => Promise<string | null>;\n};\n\nexport default class WriteQueue<T extends WriteQueueItem> extends Queue<T> {\n private intervalId?: NodeJS.Timeout;\n public writePromise: Promise<void> | null = null;\n public fileMap: {[key: string]: string} = {};\n public listeningInterval: number;\n public writeConcurrency: number;\n\n constructor(listeningInterval: number = 2000, writeConcurrency: number = 400) {\n super();\n this.listeningInterval = listeningInterval;\n this.writeConcurrency = writeConcurrency;\n }\n\n async enqueue(val: T, writeImmediately: boolean = false) {\n if (writeImmediately) {\n const {archiveKey, writePromise} = val as WriteQueueItem;\n const result = await writePromise();\n if (archiveKey && result) {\n this.fileMap[archiveKey] = result;\n }\n } else {\n super.enqueue(val);\n /** https://nodejs.org/docs/latest-v14.x/api/process.html#process_process_memoryusage */\n if (process.memoryUsage().rss > MEMORY_LIMIT) {\n await this.startWrite();\n }\n }\n }\n\n startListening() {\n this.intervalId = setInterval(this.startWrite.bind(this), this.listeningInterval);\n }\n\n stopListening() {\n if (this.intervalId) {\n clearInterval(this.intervalId);\n }\n }\n\n async startWrite(): Promise<void> {\n if (!this.writePromise) {\n this.writePromise = this.doWrite();\n }\n await this.writePromise;\n this.writePromise = null;\n }\n\n async finalize(): Promise<void> {\n this.stopListening();\n await this.startWrite();\n }\n\n private async doWrite(): Promise<void> {\n while (this.length) {\n const promises: Promise<string | null>[] = [];\n const archiveKeys: (string | undefined)[] = [];\n for (let i = 0; i < this.writeConcurrency; i++) {\n const item = this.dequeue();\n if (!item) {\n break;\n }\n const {archiveKey, writePromise} = item as WriteQueueItem;\n archiveKeys.push(archiveKey);\n const promise = writePromise();\n promises.push(promise);\n }\n const writeResults = await Promise.allSettled(promises);\n this.updateFileMap(archiveKeys, writeResults);\n }\n }\n\n private updateFileMap(\n archiveKeys: (string | undefined)[],\n writeResults: PromiseSettledResult<string | null>[]\n ) {\n for (let i = 0; i < archiveKeys.length; i++) {\n const archiveKey = archiveKeys[i];\n if (archiveKey && 'value' in writeResults[i]) {\n this.fileMap[archiveKey] = (writeResults[i] as PromiseFulfilledResult<string>).value;\n }\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA8B,SAAAG,aAAAC,OAAA,QAAAC,yBAAA,GAAAC,yBAAA,oBAAAC,qBAAA,QAAAC,KAAA,OAAAC,gBAAA,CAAAC,OAAA,EAAAN,OAAA,GAAAO,MAAA,MAAAN,yBAAA,QAAAO,SAAA,OAAAH,gBAAA,CAAAC,OAAA,QAAAG,WAAA,EAAAF,MAAA,GAAAG,OAAA,CAAAC,SAAA,CAAAP,KAAA,EAAAQ,SAAA,EAAAJ,SAAA,YAAAD,MAAA,GAAAH,KAAA,CAAAS,KAAA,OAAAD,SAAA,gBAAAE,2BAAA,CAAAR,OAAA,QAAAC,MAAA;AAAA,SAAAL,0BAAA,eAAAQ,OAAA,qBAAAA,OAAA,CAAAC,SAAA,oBAAAD,OAAA,CAAAC,SAAA,CAAAI,IAAA,2BAAAC,KAAA,oCAAAC,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAV,OAAA,CAAAC,SAAA,CAAAM,OAAA,8CAAAI,CAAA;AAG9B,IAAMC,YAAY,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;AAAC,IAuBvBC,UAAU,aAAAC,MAAA;EAAA,IAAAC,UAAA,CAAAnB,OAAA,EAAAiB,UAAA,EAAAC,MAAA;EAAA,IAAAE,MAAA,GAAA3B,YAAA,CAAAwB,UAAA;EAO7B,SAAAA,WAAA,EAA8E;IAAA,IAAAI,KAAA;IAAA,IAAlEC,iBAAyB,GAAAhB,SAAA,CAAAiB,MAAA,QAAAjB,SAAA,QAAAkB,SAAA,GAAAlB,SAAA,MAAG,IAAI;IAAA,IAAEmB,gBAAwB,GAAAnB,SAAA,CAAAiB,MAAA,QAAAjB,SAAA,QAAAkB,SAAA,GAAAlB,SAAA,MAAG,GAAG;IAAA,IAAAoB,gBAAA,CAAA1B,OAAA,QAAAiB,UAAA;IAC1EI,KAAA,GAAAD,MAAA,CAAAN,IAAA;IAAQ,IAAAa,gBAAA,CAAA3B,OAAA,MAAA4B,uBAAA,CAAA5B,OAAA,EAAAqB,KAAA;IAAA,IAAAM,gBAAA,CAAA3B,OAAA,MAAA4B,uBAAA,CAAA5B,OAAA,EAAAqB,KAAA,mBANkC,IAAI;IAAA,IAAAM,gBAAA,CAAA3B,OAAA,MAAA4B,uBAAA,CAAA5B,OAAA,EAAAqB,KAAA,cACN,CAAC,CAAC;IAAA,IAAAM,gBAAA,CAAA3B,OAAA,MAAA4B,uBAAA,CAAA5B,OAAA,EAAAqB,KAAA;IAAA,IAAAM,gBAAA,CAAA3B,OAAA,MAAA4B,uBAAA,CAAA5B,OAAA,EAAAqB,KAAA;IAM1CA,KAAA,CAAKC,iBAAiB,GAAGA,iBAAiB;IAC1CD,KAAA,CAAKI,gBAAgB,GAAGA,gBAAgB;IAAC,OAAAJ,KAAA;EAC3C;EAAC,IAAAQ,aAAA,CAAA7B,OAAA,EAAAiB,UAAA;IAAAa,GAAA;IAAAC,KAAA;MAAA,IAAAC,QAAA,OAAAC,kBAAA,CAAAjC,OAAA,EAAAkC,YAAA,CAAAlC,OAAA,CAAAmC,IAAA,CAED,SAAAC,QAAcC,GAAM;QAAA,IAAAC,gBAAA;UAAAC,IAAA;UAAAC,UAAA;UAAAC,YAAA;UAAAxC,MAAA;UAAAyC,KAAA,GAAApC,SAAA;QAAA,OAAA4B,YAAA,CAAAlC,OAAA,CAAA2C,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAET,gBAAyB,GAAAI,KAAA,CAAAnB,MAAA,QAAAmB,KAAA,QAAAlB,SAAA,GAAAkB,KAAA,MAAG,KAAK;cAAA,KACjDJ,gBAAgB;gBAAAO,QAAA,CAAAE,IAAA;gBAAA;cAAA;cAAAR,IAAA,GACiBF,GAAG,EAA/BG,UAAU,GAAAD,IAAA,CAAVC,UAAU,EAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY;cAAAI,QAAA,CAAAE,IAAA;cAAA,OACVN,YAAY,CAAC,CAAC;YAAA;cAA7BxC,MAAM,GAAA4C,QAAA,CAAAG,IAAA;cACZ,IAAIR,UAAU,IAAIvC,MAAM,EAAE;gBACxB,IAAI,CAACgD,OAAO,CAACT,UAAU,CAAC,GAAGvC,MAAM;cACnC;cAAC4C,QAAA,CAAAE,IAAA;cAAA;YAAA;cAED,IAAAG,KAAA,CAAAlD,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAAiB,UAAA,CAAAL,SAAA,oBAAAE,IAAA,OAAcuB,GAAG;cAAE,MAEfc,gBAAO,CAACC,WAAW,CAAC,CAAC,CAACC,GAAG,GAAGrC,YAAY;gBAAA6B,QAAA,CAAAE,IAAA;gBAAA;cAAA;cAAAF,QAAA,CAAAE,IAAA;cAAA,OACpC,IAAI,CAACO,UAAU,CAAC,CAAC;YAAA;YAAA;cAAA,OAAAT,QAAA,CAAAU,IAAA;UAAA;QAAA,GAAAnB,OAAA;MAAA,CAG5B;MAAA,SAAAoB,QAAAC,EAAA;QAAA,OAAAzB,QAAA,CAAAzB,KAAA,OAAAD,SAAA;MAAA;MAAA,OAAAkD,OAAA;IAAA;EAAA;IAAA1B,GAAA;IAAAC,KAAA,EAED,SAAA2B,eAAA,EAAiB;MACf,IAAI,CAACC,UAAU,GAAGC,WAAW,CAAC,IAAI,CAACN,UAAU,CAACO,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAACvC,iBAAiB,CAAC;IACnF;EAAC;IAAAQ,GAAA;IAAAC,KAAA,EAED,SAAA+B,cAAA,EAAgB;MACd,IAAI,IAAI,CAACH,UAAU,EAAE;QACnBI,aAAa,CAAC,IAAI,CAACJ,UAAU,CAAC;MAChC;IACF;EAAC;IAAA7B,GAAA;IAAAC,KAAA;MAAA,IAAAiC,WAAA,OAAA/B,kBAAA,CAAAjC,OAAA,EAAAkC,YAAA,CAAAlC,OAAA,CAAAmC,IAAA,CAED,SAAA8B,SAAA;QAAA,OAAA/B,YAAA,CAAAlC,OAAA,CAAA2C,IAAA,UAAAuB,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAArB,IAAA,GAAAqB,SAAA,CAAApB,IAAA;YAAA;cACE,IAAI,CAAC,IAAI,CAACN,YAAY,EAAE;gBACtB,IAAI,CAACA,YAAY,GAAG,IAAI,CAAC2B,OAAO,CAAC,CAAC;cACpC;cAACD,SAAA,CAAApB,IAAA;cAAA,OACK,IAAI,CAACN,YAAY;YAAA;cACvB,IAAI,CAACA,YAAY,GAAG,IAAI;YAAC;YAAA;cAAA,OAAA0B,SAAA,CAAAZ,IAAA;UAAA;QAAA,GAAAU,QAAA;MAAA,CAC1B;MAAA,SAAAX,WAAA;QAAA,OAAAU,WAAA,CAAAzD,KAAA,OAAAD,SAAA;MAAA;MAAA,OAAAgD,UAAA;IAAA;EAAA;IAAAxB,GAAA;IAAAC,KAAA;MAAA,IAAAsC,SAAA,OAAApC,kBAAA,CAAAjC,OAAA,EAAAkC,YAAA,CAAAlC,OAAA,CAAAmC,IAAA,CAED,SAAAmC,SAAA;QAAA,OAAApC,YAAA,CAAAlC,OAAA,CAAA2C,IAAA,UAAA4B,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAA1B,IAAA,GAAA0B,SAAA,CAAAzB,IAAA;YAAA;cACE,IAAI,CAACe,aAAa,CAAC,CAAC;cAACU,SAAA,CAAAzB,IAAA;cAAA,OACf,IAAI,CAACO,UAAU,CAAC,CAAC;YAAA;YAAA;cAAA,OAAAkB,SAAA,CAAAjB,IAAA;UAAA;QAAA,GAAAe,QAAA;MAAA,CACxB;MAAA,SAAAG,SAAA;QAAA,OAAAJ,SAAA,CAAA9D,KAAA,OAAAD,SAAA;MAAA;MAAA,OAAAmE,QAAA;IAAA;EAAA;IAAA3C,GAAA;IAAAC,KAAA;MAAA,IAAA2C,QAAA,OAAAzC,kBAAA,CAAAjC,OAAA,EAAAkC,YAAA,CAAAlC,OAAA,CAAAmC,IAAA,CAED,SAAAwC,SAAA;QAAA,IAAAC,QAAA,EAAAC,WAAA,EAAAC,CAAA,EAAAC,IAAA,EAAAC,KAAA,EAAAxC,UAAA,EAAAC,YAAA,EAAAwC,OAAA,EAAAC,YAAA;QAAA,OAAAhD,YAAA,CAAAlC,OAAA,CAAA2C,IAAA,UAAAwC,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAtC,IAAA,GAAAsC,SAAA,CAAArC,IAAA;YAAA;cAAA,KACS,IAAI,CAACxB,MAAM;gBAAA6D,SAAA,CAAArC,IAAA;gBAAA;cAAA;cACV6B,QAAkC,GAAG,EAAE;cACvCC,WAAmC,GAAG,EAAE;cACrCC,CAAC,GAAG,CAAC;YAAA;cAAA,MAAEA,CAAC,GAAG,IAAI,CAACrD,gBAAgB;gBAAA2D,SAAA,CAAArC,IAAA;gBAAA;cAAA;cACjCgC,IAAI,GAAG,IAAI,CAACM,OAAO,CAAC,CAAC;cAAA,IACtBN,IAAI;gBAAAK,SAAA,CAAArC,IAAA;gBAAA;cAAA;cAAA,OAAAqC,SAAA,CAAAE,MAAA;YAAA;cAAAN,KAAA,GAG0BD,IAAI,EAAhCvC,UAAU,GAAAwC,KAAA,CAAVxC,UAAU,EAAEC,YAAY,GAAAuC,KAAA,CAAZvC,YAAY;cAC/BoC,WAAW,CAACU,IAAI,CAAC/C,UAAU,CAAC;cACtByC,OAAO,GAAGxC,YAAY,CAAC,CAAC;cAC9BmC,QAAQ,CAACW,IAAI,CAACN,OAAO,CAAC;YAAC;cARkBH,CAAC,EAAE;cAAAM,SAAA,CAAArC,IAAA;cAAA;YAAA;cAAAqC,SAAA,CAAArC,IAAA;cAAA,OAUnByC,OAAO,CAACC,UAAU,CAACb,QAAQ,CAAC;YAAA;cAAjDM,YAAY,GAAAE,SAAA,CAAApC,IAAA;cAClB,IAAI,CAAC0C,aAAa,CAACb,WAAW,EAAEK,YAAY,CAAC;cAACE,SAAA,CAAArC,IAAA;cAAA;YAAA;YAAA;cAAA,OAAAqC,SAAA,CAAA7B,IAAA;UAAA;QAAA,GAAAoB,QAAA;MAAA,CAEjD;MAAA,SAAAP,QAAA;QAAA,OAAAM,QAAA,CAAAnE,KAAA,OAAAD,SAAA;MAAA;MAAA,OAAA8D,OAAA;IAAA;EAAA;IAAAtC,GAAA;IAAAC,KAAA,EAED,SAAA2D,cACEb,WAAmC,EACnCK,YAAmD,EACnD;MACA,KAAK,IAAIJ,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,WAAW,CAACtD,MAAM,EAAEuD,CAAC,EAAE,EAAE;QAC3C,IAAMtC,UAAU,GAAGqC,WAAW,CAACC,CAAC,CAAC;QACjC,IAAItC,UAAU,IAAI,OAAO,IAAI0C,YAAY,CAACJ,CAAC,CAAC,EAAE;UAC5C,IAAI,CAAC7B,OAAO,CAACT,UAAU,CAAC,GAAI0C,YAAY,CAACJ,CAAC,CAAC,CAAoC/C,KAAK;QACtF;MACF;IACF;EAAC;EAAA,OAAAd,UAAA;AAAA,EAjF+D0E,YAAK;AAAAC,OAAA,CAAA5F,OAAA,GAAAiB,UAAA"}
1
+ {"version":3,"file":"write-queue.js","names":["_queue","require","_process","_interopRequireDefault","MEMORY_LIMIT","WriteQueue","Queue","constructor","listeningInterval","arguments","length","undefined","writeConcurrency","_defineProperty2","default","enqueue","val","writeImmediately","archiveKey","writePromise","result","fileMap","process","memoryUsage","rss","startWrite","startListening","intervalId","setInterval","bind","stopListening","clearInterval","doWrite","finalize","promises","archiveKeys","i","item","dequeue","push","promise","writeResults","Promise","allSettled","updateFileMap","value","exports"],"sources":["../../../../src/lib/utils/write-queue.ts"],"sourcesContent":["import {Queue} from './queue';\nimport process from 'process';\n\n/** Memory limit size is based on testing */\nconst MEMORY_LIMIT = 4 * 1024 * 1024 * 1024; // 4GB\n\nexport type WriteQueueItem = {\n archiveKey?: string;\n /**\n * writePromise() returns a Promise that will be awaited in Promise.allSettled(promises);\n * Arguments for this call are specified in writeQueue.enqueue call like this:\n * await writeQueue.enqueue({\n * archiveKey: `nodePages/xxx.json.gz`,\n * writePromise: () => writeFileForSlpk(slpkPath, data, `xxx.json`)\n * });\n * Note, a function like writeFileForSlpk should NOT be called when initializing the object for enqueue().\n * If he function is called, the promise will be created\n * and the function will allocate resources (file descriptors) for file writing.\n * It will be done for ALL items in the queue, which is not supposed to happen.\n * That's why the function should be passed as\n * writePromise: () => writeFileForSlpk(slpkPath, content, `xxx.json`)\n * instead of\n * writePromise: writeFileForSlpk(slpkPath, content, `xxx.json`) // INCORRECT !\n */\n writePromise: () => Promise<string | null>;\n};\n\nexport default class WriteQueue<T extends WriteQueueItem> extends Queue<T> {\n private intervalId?: NodeJS.Timeout;\n public writePromise: Promise<void> | null = null;\n public fileMap: {[key: string]: string} = {};\n public listeningInterval: number;\n public writeConcurrency: number;\n\n constructor(listeningInterval: number = 2000, writeConcurrency: number = 400) {\n super();\n this.listeningInterval = listeningInterval;\n this.writeConcurrency = writeConcurrency;\n }\n\n async enqueue(val: T, writeImmediately: boolean = false) {\n if (writeImmediately) {\n const {archiveKey, writePromise} = val as WriteQueueItem;\n const result = await writePromise();\n if (archiveKey && result) {\n this.fileMap[archiveKey] = result;\n }\n } else {\n super.enqueue(val);\n /** https://nodejs.org/docs/latest-v14.x/api/process.html#process_process_memoryusage */\n if (process.memoryUsage().rss > MEMORY_LIMIT) {\n await this.startWrite();\n }\n }\n }\n\n startListening() {\n this.intervalId = setInterval(this.startWrite.bind(this), this.listeningInterval);\n }\n\n stopListening() {\n if (this.intervalId) {\n clearInterval(this.intervalId);\n }\n }\n\n async startWrite(): Promise<void> {\n if (!this.writePromise) {\n this.writePromise = this.doWrite();\n }\n await this.writePromise;\n this.writePromise = null;\n }\n\n async finalize(): Promise<void> {\n this.stopListening();\n await this.startWrite();\n }\n\n private async doWrite(): Promise<void> {\n while (this.length) {\n const promises: Promise<string | null>[] = [];\n const archiveKeys: (string | undefined)[] = [];\n for (let i = 0; i < this.writeConcurrency; i++) {\n const item = this.dequeue();\n if (!item) {\n break;\n }\n const {archiveKey, writePromise} = item as WriteQueueItem;\n archiveKeys.push(archiveKey);\n const promise = writePromise();\n promises.push(promise);\n }\n const writeResults = await Promise.allSettled(promises);\n this.updateFileMap(archiveKeys, writeResults);\n }\n }\n\n private updateFileMap(\n archiveKeys: (string | undefined)[],\n writeResults: PromiseSettledResult<string | null>[]\n ) {\n for (let i = 0; i < archiveKeys.length; i++) {\n const archiveKey = archiveKeys[i];\n if (archiveKey && 'value' in writeResults[i]) {\n this.fileMap[archiveKey] = (writeResults[i] as PromiseFulfilledResult<string>).value;\n }\n }\n }\n}\n"],"mappings":"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"}
@@ -1,37 +1,18 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.PGMLoader = void 0;
8
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
7
  var _geoid = require("@math.gl/geoid");
11
- var VERSION = typeof "3.4.14" !== 'undefined' ? "3.4.14" : 'latest';
12
- var PGMLoader = {
8
+ const VERSION = typeof "3.4.15" !== 'undefined' ? "3.4.15" : 'latest';
9
+ const PGMLoader = {
13
10
  name: 'PGM - Netpbm grayscale image format',
14
11
  id: 'pgm',
15
12
  module: 'tile-converter',
16
13
  version: VERSION,
17
14
  mimeTypes: ['image/x-portable-graymap'],
18
- parse: function () {
19
- var _parse = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(arrayBuffer, options) {
20
- return _regenerator.default.wrap(function _callee$(_context) {
21
- while (1) switch (_context.prev = _context.next) {
22
- case 0:
23
- return _context.abrupt("return", (0, _geoid.parsePGM)(new Uint8Array(arrayBuffer), options));
24
- case 1:
25
- case "end":
26
- return _context.stop();
27
- }
28
- }, _callee);
29
- }));
30
- function parse(_x, _x2) {
31
- return _parse.apply(this, arguments);
32
- }
33
- return parse;
34
- }(),
15
+ parse: async (arrayBuffer, options) => (0, _geoid.parsePGM)(new Uint8Array(arrayBuffer), options),
35
16
  extensions: ['pgm'],
36
17
  options: {
37
18
  cubic: false
@@ -1 +1 @@
1
- {"version":3,"file":"pgm-loader.js","names":["_geoid","require","VERSION","PGMLoader","name","id","module","version","mimeTypes","parse","_parse","_asyncToGenerator2","default","_regenerator","mark","_callee","arrayBuffer","options","wrap","_callee$","_context","prev","next","abrupt","parsePGM","Uint8Array","stop","_x","_x2","apply","arguments","extensions","cubic","exports"],"sources":["../../src/pgm-loader.ts"],"sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parsePGM} from '@math.gl/geoid';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\n/**\n * Loader for PGM - Netpbm grayscale image format\n */\nexport const PGMLoader: LoaderWithParser = {\n name: 'PGM - Netpbm grayscale image format',\n id: 'pgm',\n module: 'tile-converter',\n version: VERSION,\n mimeTypes: ['image/x-portable-graymap'],\n // @ts-expect-error LoaderOptions does not have cubic parameter\n parse: async (arrayBuffer, options) => parsePGM(new Uint8Array(arrayBuffer), options),\n extensions: ['pgm'],\n options: {\n // TODO - use pgm namespace\n cubic: false\n }\n};\n"],"mappings":";;;;;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAMC,OAAO,GAAG,eAAkB,KAAK,WAAW,cAAiB,QAAQ;AAKpE,IAAMC,SAA2B,GAAG;EACzCC,IAAI,EAAE,qCAAqC;EAC3CC,EAAE,EAAE,KAAK;EACTC,MAAM,EAAE,gBAAgB;EACxBC,OAAO,EAAEL,OAAO;EAChBM,SAAS,EAAE,CAAC,0BAA0B,CAAC;EAEvCC,KAAK;IAAA,IAAAC,MAAA,OAAAC,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAE,SAAAC,QAAOC,WAAW,EAAEC,OAAO;MAAA,OAAAJ,YAAA,CAAAD,OAAA,CAAAM,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YAAA,OAAAF,QAAA,CAAAG,MAAA,WAAK,IAAAC,eAAQ,EAAC,IAAIC,UAAU,CAACT,WAAW,CAAC,EAAEC,OAAO,CAAC;UAAA;UAAA;YAAA,OAAAG,QAAA,CAAAM,IAAA;QAAA;MAAA,GAAAX,OAAA;IAAA;IAAA,SAAAN,MAAAkB,EAAA,EAAAC,GAAA;MAAA,OAAAlB,MAAA,CAAAmB,KAAA,OAAAC,SAAA;IAAA;IAAA,OAAArB,KAAA;EAAA;EACrFsB,UAAU,EAAE,CAAC,KAAK,CAAC;EACnBd,OAAO,EAAE;IAEPe,KAAK,EAAE;EACT;AACF,CAAC;AAACC,OAAA,CAAA9B,SAAA,GAAAA,SAAA"}
1
+ {"version":3,"file":"pgm-loader.js","names":["_geoid","require","VERSION","PGMLoader","name","id","module","version","mimeTypes","parse","arrayBuffer","options","parsePGM","Uint8Array","extensions","cubic","exports"],"sources":["../../src/pgm-loader.ts"],"sourcesContent":["import type {LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {parsePGM} from '@math.gl/geoid';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\n\n/**\n * Loader for PGM - Netpbm grayscale image format\n */\nexport const PGMLoader: LoaderWithParser = {\n name: 'PGM - Netpbm grayscale image format',\n id: 'pgm',\n module: 'tile-converter',\n version: VERSION,\n mimeTypes: ['image/x-portable-graymap'],\n // @ts-expect-error LoaderOptions does not have cubic parameter\n parse: async (arrayBuffer, options) => parsePGM(new Uint8Array(arrayBuffer), options),\n extensions: ['pgm'],\n options: {\n // TODO - use pgm namespace\n cubic: false\n }\n};\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAIA,MAAMC,OAAO,GAAG,eAAkB,KAAK,WAAW,cAAiB,QAAQ;AAKpE,MAAMC,SAA2B,GAAG;EACzCC,IAAI,EAAE,qCAAqC;EAC3CC,EAAE,EAAE,KAAK;EACTC,MAAM,EAAE,gBAAgB;EACxBC,OAAO,EAAEL,OAAO;EAChBM,SAAS,EAAE,CAAC,0BAA0B,CAAC;EAEvCC,KAAK,EAAE,MAAAA,CAAOC,WAAW,EAAEC,OAAO,KAAK,IAAAC,eAAQ,EAAC,IAAIC,UAAU,CAACH,WAAW,CAAC,EAAEC,OAAO,CAAC;EACrFG,UAAU,EAAE,CAAC,KAAK,CAAC;EACnBH,OAAO,EAAE;IAEPI,KAAK,EAAE;EACT;AACF,CAAC;AAACC,OAAA,CAAAb,SAAA,GAAAA,SAAA"}
@@ -1,28 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
4
  var _workerUtils = require("@loaders.gl/worker-utils");
7
5
  var _b3dmConverter = _interopRequireDefault(require("../3d-tiles-converter/helpers/b3dm-converter"));
8
- var b3dmConverter = new _b3dmConverter.default();
9
- (0, _workerUtils.createWorker)(function () {
10
- var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(data) {
11
- var options,
12
- _args = arguments;
13
- return _regenerator.default.wrap(function _callee$(_context) {
14
- while (1) switch (_context.prev = _context.next) {
15
- case 0:
16
- options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
17
- return _context.abrupt("return", b3dmConverter.convert(data, options.featureAttributes));
18
- case 2:
19
- case "end":
20
- return _context.stop();
21
- }
22
- }, _callee);
23
- }));
24
- return function (_x) {
25
- return _ref.apply(this, arguments);
26
- };
27
- }());
6
+ const b3dmConverter = new _b3dmConverter.default();
7
+ (0, _workerUtils.createWorker)(async function (data) {
8
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
9
+ return b3dmConverter.convert(data, options.featureAttributes);
10
+ });
28
11
  //# sourceMappingURL=3d-tiles-attributes-worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"3d-tiles-attributes-worker.js","names":["_workerUtils","require","_b3dmConverter","_interopRequireDefault","b3dmConverter","B3dmConverter","createWorker","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","data","options","_args","arguments","wrap","_callee$","_context","prev","next","length","undefined","abrupt","convert","featureAttributes","stop","_x","apply"],"sources":["../../../src/workers/3d-tiles-attributes-worker.ts"],"sourcesContent":["import {createWorker} from '@loaders.gl/worker-utils';\nimport B3dmConverter from '../3d-tiles-converter/helpers/b3dm-converter';\n\nconst b3dmConverter = new B3dmConverter();\n\ncreateWorker(async (data, options = {}) => b3dmConverter.convert(data, options.featureAttributes));\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAMG,aAAa,GAAG,IAAIC,sBAAa,CAAC,CAAC;AAEzC,IAAAC,yBAAY;EAAA,IAAAC,IAAA,OAAAC,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CAAC,SAAAC,QAAOC,IAAI;IAAA,IAAAC,OAAA;MAAAC,KAAA,GAAAC,SAAA;IAAA,OAAAN,YAAA,CAAAD,OAAA,CAAAQ,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAAEP,OAAO,GAAAC,KAAA,CAAAO,MAAA,QAAAP,KAAA,QAAAQ,SAAA,GAAAR,KAAA,MAAG,CAAC,CAAC;UAAA,OAAAI,QAAA,CAAAK,MAAA,WAAKpB,aAAa,CAACqB,OAAO,CAACZ,IAAI,EAAEC,OAAO,CAACY,iBAAiB,CAAC;QAAA;QAAA;UAAA,OAAAP,QAAA,CAAAQ,IAAA;MAAA;IAAA,GAAAf,OAAA;EAAA;EAAA,iBAAAgB,EAAA;IAAA,OAAArB,IAAA,CAAAsB,KAAA,OAAAb,SAAA;EAAA;AAAA,IAAC"}
1
+ {"version":3,"file":"3d-tiles-attributes-worker.js","names":["_workerUtils","require","_b3dmConverter","_interopRequireDefault","b3dmConverter","B3dmConverter","createWorker","data","options","arguments","length","undefined","convert","featureAttributes"],"sources":["../../../src/workers/3d-tiles-attributes-worker.ts"],"sourcesContent":["import {createWorker} from '@loaders.gl/worker-utils';\nimport B3dmConverter from '../3d-tiles-converter/helpers/b3dm-converter';\n\nconst b3dmConverter = new B3dmConverter();\n\ncreateWorker(async (data, options = {}) => b3dmConverter.convert(data, options.featureAttributes));\n"],"mappings":";;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,MAAMG,aAAa,GAAG,IAAIC,sBAAa,CAAC,CAAC;AAEzC,IAAAC,yBAAY,EAAC,gBAAOC,IAAI;EAAA,IAAEC,OAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,OAAKL,aAAa,CAACQ,OAAO,CAACL,IAAI,EAAEC,OAAO,CAACK,iBAAiB,CAAC;AAAA,EAAC"}
@@ -1,30 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
6
3
  var _workerUtils = require("@loaders.gl/worker-utils");
7
4
  var _geometryConverter = require("../i3s-converter/helpers/geometry-converter");
8
- (0, _workerUtils.createWorker)(function () {
9
- var _ref = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(data) {
10
- var options,
11
- _args = arguments;
12
- return _regenerator.default.wrap(function _callee$(_context) {
13
- while (1) switch (_context.prev = _context.next) {
14
- case 0:
15
- options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
16
- _context.next = 3;
17
- return (0, _geometryConverter.convertAttributes)(data, options.materialAndTextureList, options.useCartesianPositions);
18
- case 3:
19
- return _context.abrupt("return", _context.sent);
20
- case 4:
21
- case "end":
22
- return _context.stop();
23
- }
24
- }, _callee);
25
- }));
26
- return function (_x) {
27
- return _ref.apply(this, arguments);
28
- };
29
- }());
5
+ (0, _workerUtils.createWorker)(async function (data) {
6
+ let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7
+ return await (0, _geometryConverter.convertAttributes)(data, options.materialAndTextureList, options.useCartesianPositions);
8
+ });
30
9
  //# sourceMappingURL=i3s-attributes-worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"i3s-attributes-worker.js","names":["_workerUtils","require","_geometryConverter","createWorker","_ref","_asyncToGenerator2","default","_regenerator","mark","_callee","data","options","_args","arguments","wrap","_callee$","_context","prev","next","length","undefined","convertAttributes","materialAndTextureList","useCartesianPositions","abrupt","sent","stop","_x","apply"],"sources":["../../../src/workers/i3s-attributes-worker.ts"],"sourcesContent":["import {createWorker} from '@loaders.gl/worker-utils';\nimport {convertAttributes} from '../i3s-converter/helpers/geometry-converter';\n\ncreateWorker(\n async (data, options = {}) =>\n await convertAttributes(data, options.materialAndTextureList, options.useCartesianPositions)\n);\n"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AAEA,IAAAE,yBAAY;EAAA,IAAAC,IAAA,OAAAC,kBAAA,CAAAC,OAAA,EAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,CACV,SAAAC,QAAOC,IAAI;IAAA,IAAAC,OAAA;MAAAC,KAAA,GAAAC,SAAA;IAAA,OAAAN,YAAA,CAAAD,OAAA,CAAAQ,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAAEP,OAAO,GAAAC,KAAA,CAAAO,MAAA,QAAAP,KAAA,QAAAQ,SAAA,GAAAR,KAAA,MAAG,CAAC,CAAC;UAAAI,QAAA,CAAAE,IAAA;UAAA,OACjB,IAAAG,oCAAiB,EAACX,IAAI,EAAEC,OAAO,CAACW,sBAAsB,EAAEX,OAAO,CAACY,qBAAqB,CAAC;QAAA;UAAA,OAAAP,QAAA,CAAAQ,MAAA,WAAAR,QAAA,CAAAS,IAAA;QAAA;QAAA;UAAA,OAAAT,QAAA,CAAAU,IAAA;MAAA;IAAA,GAAAjB,OAAA;EAAA;EAAA,iBAAAkB,EAAA;IAAA,OAAAvB,IAAA,CAAAwB,KAAA,OAAAf,SAAA;EAAA;AAAA,GAChG,CAAC"}
1
+ {"version":3,"file":"i3s-attributes-worker.js","names":["_workerUtils","require","_geometryConverter","createWorker","data","options","arguments","length","undefined","convertAttributes","materialAndTextureList","useCartesianPositions"],"sources":["../../../src/workers/i3s-attributes-worker.ts"],"sourcesContent":["import {createWorker} from '@loaders.gl/worker-utils';\nimport {convertAttributes} from '../i3s-converter/helpers/geometry-converter';\n\ncreateWorker(\n async (data, options = {}) =>\n await convertAttributes(data, options.materialAndTextureList, options.useCartesianPositions)\n);\n"],"mappings":";;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AAEA,IAAAE,yBAAY,EACV,gBAAOC,IAAI;EAAA,IAAEC,OAAO,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAAA,OACvB,MAAM,IAAAG,oCAAiB,EAACL,IAAI,EAAEC,OAAO,CAACK,sBAAsB,EAAEL,OAAO,CAACM,qBAAqB,CAAC;AAAA,CAChG,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { processOnWorker } from '@loaders.gl/worker-utils';
2
- const VERSION = typeof "3.4.14" !== 'undefined' ? "3.4.14" : 'latest';
2
+ const VERSION = typeof "3.4.15" !== 'undefined' ? "3.4.15" : 'latest';
3
3
  export const Tile3dAttributesWorker = {
4
4
  id: '3d-tiles-attributes',
5
5
  name: '3DTiles Attributes Worker',
@@ -3,7 +3,7 @@ import { ZipLoader } from '@loaders.gl/zip';
3
3
  import { writeFile } from '../lib/utils/file-utils';
4
4
  import { join } from 'path';
5
5
  import { ChildProcessProxy } from '@loaders.gl/worker-utils';
6
- const VERSION = typeof "3.4.14" !== 'undefined' ? "3.4.14" : 'latest';
6
+ const VERSION = typeof "3.4.15" !== 'undefined' ? "3.4.15" : 'latest';
7
7
  const PGM_LINK = 'https://raw.githubusercontent.com/visgl/deck.gl-data/master/egm/egm2008-5.zip';
8
8
  export class DepsInstaller {
9
9
  async install() {
@@ -1,5 +1,5 @@
1
1
  import { processOnWorker } from '@loaders.gl/worker-utils';
2
- const VERSION = typeof "3.4.14" !== 'undefined' ? "3.4.14" : 'latest';
2
+ const VERSION = typeof "3.4.15" !== 'undefined' ? "3.4.15" : 'latest';
3
3
  export const I3SAttributesWorker = {
4
4
  id: 'i3s-attributes',
5
5
  name: 'I3S Attributes Worker',
@@ -1,5 +1,5 @@
1
1
  import { parsePGM } from '@math.gl/geoid';
2
- const VERSION = typeof "3.4.14" !== 'undefined' ? "3.4.14" : 'latest';
2
+ const VERSION = typeof "3.4.15" !== 'undefined' ? "3.4.15" : 'latest';
3
3
  export const PGMLoader = {
4
4
  name: 'PGM - Netpbm grayscale image format',
5
5
  id: 'pgm',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/tile-converter",
3
- "version": "3.4.14",
3
+ "version": "3.4.15",
4
4
  "description": "Converter",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -44,19 +44,19 @@
44
44
  "build-3d-tiles-attributes-worker": "esbuild src/workers/3d-tiles-attributes-worker.ts --outfile=dist/3d-tiles-attributes-worker.js --platform=node --target=esnext,node14 --external:join-images --minify --bundle --sourcemap --define:__VERSION__=\\\"$npm_package_version\\\""
45
45
  },
46
46
  "dependencies": {
47
- "@loaders.gl/3d-tiles": "3.4.14",
48
- "@loaders.gl/crypto": "3.4.14",
49
- "@loaders.gl/draco": "3.4.14",
50
- "@loaders.gl/gltf": "3.4.14",
51
- "@loaders.gl/i3s": "3.4.14",
52
- "@loaders.gl/images": "3.4.14",
53
- "@loaders.gl/loader-utils": "3.4.14",
54
- "@loaders.gl/polyfills": "3.4.14",
55
- "@loaders.gl/schema": "3.4.14",
56
- "@loaders.gl/textures": "3.4.14",
57
- "@loaders.gl/tiles": "3.4.14",
58
- "@loaders.gl/worker-utils": "3.4.14",
59
- "@loaders.gl/zip": "3.4.14",
47
+ "@loaders.gl/3d-tiles": "3.4.15",
48
+ "@loaders.gl/crypto": "3.4.15",
49
+ "@loaders.gl/draco": "3.4.15",
50
+ "@loaders.gl/gltf": "3.4.15",
51
+ "@loaders.gl/i3s": "3.4.15",
52
+ "@loaders.gl/images": "3.4.15",
53
+ "@loaders.gl/loader-utils": "3.4.15",
54
+ "@loaders.gl/polyfills": "3.4.15",
55
+ "@loaders.gl/schema": "3.4.15",
56
+ "@loaders.gl/textures": "3.4.15",
57
+ "@loaders.gl/tiles": "3.4.15",
58
+ "@loaders.gl/worker-utils": "3.4.15",
59
+ "@loaders.gl/zip": "3.4.15",
60
60
  "@math.gl/core": "^3.5.1",
61
61
  "@math.gl/culling": "^3.5.1",
62
62
  "@math.gl/geoid": "^3.5.1",
@@ -79,5 +79,5 @@
79
79
  "join-images": "^1.1.3",
80
80
  "sharp": "^0.31.3"
81
81
  },
82
- "gitHead": "dffa197c6ae79bac5277d5e8a132f4cd274e74e5"
82
+ "gitHead": "19e941d5805568e449ef9092490d6568a4853298"
83
83
  }