@jbrowse/core 1.5.5 → 1.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BaseFeatureWidget/BaseFeatureDetail.js +78 -91
- package/BaseFeatureWidget/SequenceFeatureDetails.js +56 -64
- package/BaseFeatureWidget/SequenceFeatureDetails.test.js +9 -9
- package/BaseFeatureWidget/index.js +1 -1
- package/BaseFeatureWidget/index.test.js +3 -3
- package/BaseFeatureWidget/types.js +5 -1
- package/BaseFeatureWidget/util.js +9 -13
- package/CorePlugin.js +19 -31
- package/Plugin.js +11 -13
- package/PluginLoader.js +32 -37
- package/PluginManager.js +55 -56
- package/ReExports/index.js +4 -4
- package/ReExports/list.js +2 -2
- package/ReExports/material-ui-colors.js +20 -20
- package/ReExports/modules.js +47 -51
- package/TextSearch/BaseResults.js +24 -34
- package/TextSearch/BaseResults.test.js +3 -7
- package/TextSearch/TextSearchManager.js +15 -16
- package/assemblyManager/assembly.js +33 -38
- package/assemblyManager/assemblyConfigSchema.js +2 -2
- package/assemblyManager/assemblyManager.js +15 -19
- package/assemblyManager/index.js +3 -3
- package/configuration/configurationSchema.js +17 -19
- package/configuration/configurationSlot.js +11 -11
- package/configuration/configurationSlot.test.js +5 -5
- package/configuration/util.js +5 -5
- package/data_adapters/BaseAdapter.js +37 -39
- package/data_adapters/BaseAdapter.test.js +23 -29
- package/data_adapters/CytobandAdapter.js +15 -21
- package/data_adapters/dataAdapterCache.js +8 -8
- package/package.json +3 -4
- package/pluggableElementTypes/AdapterType.js +21 -30
- package/pluggableElementTypes/ConnectionType.js +18 -28
- package/pluggableElementTypes/DisplayType.js +17 -27
- package/pluggableElementTypes/InternetAccountType.js +14 -24
- package/pluggableElementTypes/PluggableElementBase.js +8 -10
- package/pluggableElementTypes/RpcMethodType.js +40 -54
- package/pluggableElementTypes/RpcMethodType.test.js +16 -22
- package/pluggableElementTypes/TextSearchAdapterType.js +15 -25
- package/pluggableElementTypes/TrackType.js +15 -25
- package/pluggableElementTypes/ViewType.js +15 -25
- package/pluggableElementTypes/WidgetType.js +17 -27
- package/pluggableElementTypes/index.js +11 -11
- package/pluggableElementTypes/models/BaseConnectionModelFactory.js +5 -5
- package/pluggableElementTypes/models/BaseDisplayModel.js +5 -8
- package/pluggableElementTypes/models/BaseTrackModel.js +8 -11
- package/pluggableElementTypes/models/BaseViewModel.js +3 -3
- package/pluggableElementTypes/models/InternetAccountModel.js +4 -4
- package/pluggableElementTypes/models/baseConnectionConfig.js +2 -2
- package/pluggableElementTypes/models/baseTrackConfig.js +4 -7
- package/pluggableElementTypes/models/index.js +4 -4
- package/pluggableElementTypes/renderers/BoxRendererType.js +38 -48
- package/pluggableElementTypes/renderers/CircularChordRendererType.js +12 -18
- package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +26 -34
- package/pluggableElementTypes/renderers/FeatureRendererType.js +35 -45
- package/pluggableElementTypes/renderers/RendererType.js +20 -30
- package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +8 -12
- package/pluggableElementTypes/renderers/ServerSideRendererType.js +30 -43
- package/pluggableElementTypes/renderers/index.js +8 -8
- package/pluggableElementTypes/renderers/util/serializableFilterChain.js +8 -10
- package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +2 -2
- package/rpc/BaseRpcDriver.js +37 -40
- package/rpc/BaseRpcDriver.test.js +48 -62
- package/rpc/MainThreadRpcDriver.js +21 -31
- package/rpc/RpcManager.js +19 -18
- package/rpc/WebWorkerRpcDriver.js +28 -37
- package/rpc/configSchema.js +2 -2
- package/rpc/coreRpcMethods.js +71 -81
- package/rpc/remoteAbortSignals.js +3 -3
- package/ui/AboutDialog.js +16 -20
- package/ui/App.js +38 -42
- package/ui/AssemblySelector.js +5 -5
- package/ui/Drawer.js +7 -7
- package/ui/DrawerWidget.js +33 -37
- package/ui/DropDownMenu.js +9 -21
- package/ui/EditableTypography.js +19 -30
- package/ui/ErrorMessage.js +5 -5
- package/ui/FactoryResetDialog.js +8 -8
- package/ui/FatalErrorDialog.js +12 -29
- package/ui/FatalErrorDialog.test.js +10 -10
- package/ui/FileSelector/FileSelector.js +32 -42
- package/ui/FileSelector/LocalFileChooser.js +9 -9
- package/ui/FileSelector/UrlChooser.js +4 -4
- package/ui/FileSelector/index.js +4 -4
- package/ui/Icons.js +9 -9
- package/ui/Logo.js +19 -19
- package/ui/Menu.js +35 -46
- package/ui/NewSessionCards.js +19 -29
- package/ui/PrerenderedCanvas.js +10 -27
- package/ui/ResizeHandle.js +10 -17
- package/ui/SanitizedHTML.js +5 -5
- package/ui/SanitizedHTML.test.js +4 -4
- package/ui/Snackbar.js +12 -16
- package/ui/SnackbarModel.js +1 -1
- package/ui/Tooltip.js +7 -11
- package/ui/ViewContainer.js +20 -30
- package/ui/index.js +13 -17
- package/ui/theme.js +11 -15
- package/util/Base1DViewModel.js +10 -14
- package/util/Base1DViewModel.test.js +5 -5
- package/util/QuickLRU.js +26 -30
- package/util/aborting.js +15 -25
- package/util/analytics.js +6 -6
- package/util/blockTypes.js +39 -49
- package/util/calculateDynamicBlocks.js +4 -4
- package/util/calculateDynamicBlocks.test.js +10 -14
- package/util/calculateStaticBlocks.js +1 -1
- package/util/calculateStaticBlocks.test.js +15 -15
- package/util/compositeMap.js +27 -30
- package/util/idMaker.js +4 -4
- package/util/index.js +34 -45
- package/util/index.test.js +7 -11
- package/util/io/RemoteFileWithRangeCache.js +28 -40
- package/util/io/index.js +5 -5
- package/util/jexl.js +8 -5
- package/util/jexlStrings.js +2 -2
- package/util/jexlStrings.test.js +2 -2
- package/util/layouts/BaseLayout.js +5 -1
- package/util/layouts/GranularRectLayout.js +27 -33
- package/util/layouts/GranularRectLayout.test.js +10 -10
- package/util/layouts/MultiLayout.js +14 -19
- package/util/layouts/PrecomputedLayout.js +14 -16
- package/util/layouts/PrecomputedMultiLayout.js +17 -23
- package/util/layouts/SceneGraph.js +18 -18
- package/util/layouts/index.js +6 -6
- package/util/offscreenCanvasPonyfill.js +28 -30
- package/util/offscreenCanvasUtils.js +5 -5
- package/util/range.test.js +20 -20
- package/util/rxjs.js +2 -2
- package/util/simpleFeature.js +19 -24
- package/util/simpleFeature.test.js +3 -3
- package/util/stats.js +6 -10
- package/util/stats.test.js +14 -14
- package/util/types/index.js +32 -34
- package/util/types/mst.js +15 -19
- package/util/types/util.js +5 -1
- package/util/when.js +5 -5
- package/babel.config.d.ts +0 -15
- package/babel.config.js +0 -19
package/util/io/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -15,7 +15,7 @@ exports.openLocation = openLocation;
|
|
|
15
15
|
|
|
16
16
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
17
17
|
|
|
18
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
18
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
|
|
19
19
|
|
|
20
20
|
var _genericFilehandle = require("generic-filehandle");
|
|
21
21
|
|
|
@@ -41,9 +41,9 @@ function openLocation(location, pluginManager) {
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
function _checkAuthNeededFetch() {
|
|
44
|
-
_checkAuthNeededFetch = (0, _asyncToGenerator2
|
|
44
|
+
_checkAuthNeededFetch = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(url, opts) {
|
|
45
45
|
var response, authHeaders;
|
|
46
|
-
return _regenerator
|
|
46
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
47
47
|
while (1) {
|
|
48
48
|
switch (_context.prev = _context.next) {
|
|
49
49
|
case 0:
|
|
@@ -89,7 +89,7 @@ function openLocation(location, pluginManager) {
|
|
|
89
89
|
throw new Error('No local path provided');
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
-
if (_detectNode
|
|
92
|
+
if (_detectNode["default"]) {
|
|
93
93
|
return new _genericFilehandle.LocalFile(location.localPath);
|
|
94
94
|
} else {
|
|
95
95
|
throw new Error("can't use local files in the browser");
|
package/util/jexl.js
CHANGED
|
@@ -1,24 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports
|
|
8
|
+
exports["default"] = _default;
|
|
9
9
|
|
|
10
10
|
var _jexl = _interopRequireDefault(require("jexl"));
|
|
11
11
|
|
|
12
12
|
function
|
|
13
13
|
/* config?: any*/
|
|
14
14
|
_default() {
|
|
15
|
-
var j = new _jexl
|
|
15
|
+
var j = new _jexl["default"].Jexl(); // someday will make sure all of configs callbacks are added in, including
|
|
16
16
|
// ones passed in
|
|
17
17
|
// below are core functions
|
|
18
18
|
|
|
19
19
|
j.addFunction('get', function (feature, data) {
|
|
20
20
|
return feature.get(data);
|
|
21
21
|
});
|
|
22
|
+
j.addFunction('parent', function (feature) {
|
|
23
|
+
return feature.parent();
|
|
24
|
+
});
|
|
22
25
|
j.addFunction('id', function (feature) {
|
|
23
26
|
return feature.id();
|
|
24
27
|
}); // let user cast a jexl type into a javascript type
|
|
@@ -46,8 +49,8 @@ _default() {
|
|
|
46
49
|
j.addFunction('parseInt', Number.parseInt);
|
|
47
50
|
j.addFunction('parseFloat', Number.parseFloat); // string
|
|
48
51
|
|
|
49
|
-
j.addFunction('split', function (str,
|
|
50
|
-
return str.split(
|
|
52
|
+
j.addFunction('split', function (str, _char) {
|
|
53
|
+
return str.split(_char);
|
|
51
54
|
});
|
|
52
55
|
j.addFunction('charAt', function (str, index) {
|
|
53
56
|
return str.charAt(index);
|
package/util/jexlStrings.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -32,7 +32,7 @@ jexl) {
|
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
var code = str.split('jexl:')[1];
|
|
35
|
-
var compiled = jexl ? jexl.compile("".concat(code)) : (0, _jexl
|
|
35
|
+
var compiled = jexl ? jexl.compile("".concat(code)) : (0, _jexl["default"])().compile("".concat(code));
|
|
36
36
|
compilationCache[cacheKey] = compiled;
|
|
37
37
|
}
|
|
38
38
|
|
package/util/jexlStrings.test.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
var _jexlStrings = require("./jexlStrings");
|
|
6
6
|
|
|
@@ -29,7 +29,7 @@ describe('function string parsing', function () {
|
|
|
29
29
|
expect(result).toEqual(35);
|
|
30
30
|
});
|
|
31
31
|
it('can use the loaded core helper functions to access feature info', function () {
|
|
32
|
-
var feature = new _simpleFeature
|
|
32
|
+
var feature = new _simpleFeature["default"]({
|
|
33
33
|
uniqueId: 'jexlFeature',
|
|
34
34
|
score: 10,
|
|
35
35
|
start: 1,
|
|
@@ -1,28 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports
|
|
8
|
+
exports["default"] = void 0;
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
|
|
17
17
|
|
|
18
18
|
var _index = require("../index");
|
|
19
19
|
|
|
20
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
21
|
-
|
|
22
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
23
|
-
|
|
24
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
25
|
-
|
|
26
20
|
/**
|
|
27
21
|
* Rectangle-layout manager that lays out rectangles using bitmaps at
|
|
28
22
|
* resolution that, for efficiency, may be somewhat lower than that of
|
|
@@ -41,11 +35,11 @@ function segmentsIntersect(x1, x2, y1, y2) {
|
|
|
41
35
|
// a single row in the layout
|
|
42
36
|
var LayoutRow = /*#__PURE__*/function () {
|
|
43
37
|
function LayoutRow() {
|
|
44
|
-
(0, _classCallCheck2
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
38
|
+
(0, _classCallCheck2["default"])(this, LayoutRow);
|
|
39
|
+
this.padding = void 0;
|
|
40
|
+
this.allFilled = void 0;
|
|
41
|
+
this.widthLimit = void 0;
|
|
42
|
+
this.rowState = void 0;
|
|
49
43
|
this.padding = 1;
|
|
50
44
|
this.widthLimit = 1000000; // this.rowState.offset is the offset of the bits array relative to the genomic coordinates
|
|
51
45
|
// (modified by pitchX, but we don't know that in this class)
|
|
@@ -59,7 +53,7 @@ var LayoutRow = /*#__PURE__*/function () {
|
|
|
59
53
|
// }
|
|
60
54
|
|
|
61
55
|
|
|
62
|
-
(0, _createClass2
|
|
56
|
+
(0, _createClass2["default"])(LayoutRow, [{
|
|
63
57
|
key: "setAllFilled",
|
|
64
58
|
value: function setAllFilled(data) {
|
|
65
59
|
this.allFilled = data;
|
|
@@ -307,16 +301,16 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
307
301
|
_ref$displayMode = _ref.displayMode,
|
|
308
302
|
displayMode = _ref$displayMode === void 0 ? 'normal' : _ref$displayMode;
|
|
309
303
|
|
|
310
|
-
(0, _classCallCheck2
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
304
|
+
(0, _classCallCheck2["default"])(this, GranularRectLayout);
|
|
305
|
+
this.pitchX = void 0;
|
|
306
|
+
this.pitchY = void 0;
|
|
307
|
+
this.hardRowLimit = void 0;
|
|
308
|
+
this.bitmap = void 0;
|
|
309
|
+
this.rectangles = void 0;
|
|
310
|
+
this.maxHeightReached = void 0;
|
|
311
|
+
this.maxHeight = void 0;
|
|
312
|
+
this.displayMode = void 0;
|
|
313
|
+
this.pTotalHeight = void 0;
|
|
320
314
|
this.pitchX = pitchX;
|
|
321
315
|
this.pitchY = pitchY;
|
|
322
316
|
this.hardRowLimit = hardRowLimit;
|
|
@@ -339,7 +333,7 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
339
333
|
*/
|
|
340
334
|
|
|
341
335
|
|
|
342
|
-
(0, _createClass2
|
|
336
|
+
(0, _createClass2["default"])(GranularRectLayout, [{
|
|
343
337
|
key: "addRect",
|
|
344
338
|
value: function addRect(id, left, right, height, data) {
|
|
345
339
|
// if we have already laid it out, return its layout
|
|
@@ -524,7 +518,7 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
524
518
|
var _this = this;
|
|
525
519
|
|
|
526
520
|
return new Map(Array.from(this.rectangles.entries()).map(function (_ref2) {
|
|
527
|
-
var _ref3 = (0, _slicedToArray2
|
|
521
|
+
var _ref3 = (0, _slicedToArray2["default"])(_ref2, 2),
|
|
528
522
|
id = _ref3[0],
|
|
529
523
|
rect = _ref3[1];
|
|
530
524
|
|
|
@@ -543,12 +537,12 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
543
537
|
var regionRectangles = {};
|
|
544
538
|
var maxHeightReached = false;
|
|
545
539
|
|
|
546
|
-
var _iterator =
|
|
540
|
+
var _iterator = (0, _createForOfIteratorHelper2["default"])(this.rectangles.entries()),
|
|
547
541
|
_step;
|
|
548
542
|
|
|
549
543
|
try {
|
|
550
544
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
551
|
-
var _step$value = (0, _slicedToArray2
|
|
545
|
+
var _step$value = (0, _slicedToArray2["default"])(_step.value, 2),
|
|
552
546
|
id = _step$value[0],
|
|
553
547
|
rect = _step$value[1];
|
|
554
548
|
|
|
@@ -598,4 +592,4 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
598
592
|
return GranularRectLayout;
|
|
599
593
|
}();
|
|
600
594
|
|
|
601
|
-
exports
|
|
595
|
+
exports["default"] = GranularRectLayout;
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
5
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
|
|
6
6
|
|
|
7
7
|
var _GranularRectLayout = _interopRequireDefault(require("./GranularRectLayout"));
|
|
8
8
|
|
|
9
9
|
describe('GranularRectLayout', function () {
|
|
10
10
|
it('lays out non-overlapping features end to end', function () {
|
|
11
|
-
var l = new _GranularRectLayout
|
|
11
|
+
var l = new _GranularRectLayout["default"]({
|
|
12
12
|
pitchX: 10,
|
|
13
13
|
pitchY: 4
|
|
14
14
|
});
|
|
15
15
|
var testRects = [['1,0', 4133, 5923, 16], ['1,1', 11299, 12389, 16], ['1,2', 21050, 22778, 16], ['1,3', 41125, 47459, 16], ['1,4', 47926, 49272, 16], ['1,5', 50240, 52495, 16], ['1,6', 53329, 56283, 16], ['1,7', 59309, 79441, 16], ['1,8', 80359, 83196, 16], ['1,9', 92147, 94188, 16], ['1,10', 96241, 103626, 16], ['1,11', 104396, 108110, 16], ['1,12', 111878, 125251, 16], ['1,13', 125747, 128085, 16], ['1,14', 131492, 132641, 16], ['1,15', 133857, 134931, 16], ['1,16', 137023, 138220, 16], ['1,17', 140703, 145668, 16], ['1,18', 146045, 147059, 16], ['1,19', 162296, 165395, 16], ['1,20', 168531, 170795, 16], ['1,21', 174812, 180475, 16], ['1,22', 184302, 188826, 16], ['1,23', 189609, 191141, 16], ['1,24', 199799, 201389, 16], ['1,25', 203436, 211345, 16], ['1,26', 212100, 212379, 16], ['1,27', 213418, 214627, 16], ['1,28', 215115, 219344, 16], ['1,29', 220067, 222525, 16], ['1,30', 223308, 228141, 16], ['1,31', 234473, 236768, 16], ['1,32', 239691, 245015, 16]];
|
|
16
16
|
|
|
17
17
|
for (var i = 0; i < testRects.length; i += 1) {
|
|
18
|
-
var top = l.addRect.apply(l, (0, _toConsumableArray2
|
|
18
|
+
var top = l.addRect.apply(l, (0, _toConsumableArray2["default"])(testRects[i]));
|
|
19
19
|
expect(top).toEqual(0);
|
|
20
20
|
}
|
|
21
21
|
});
|
|
22
22
|
it('stacks up overlapping features', function () {
|
|
23
|
-
var l = new _GranularRectLayout
|
|
23
|
+
var l = new _GranularRectLayout["default"]({
|
|
24
24
|
pitchX: 10,
|
|
25
25
|
pitchY: 4
|
|
26
26
|
});
|
|
@@ -31,12 +31,12 @@ describe('GranularRectLayout', function () {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
for (var _i = 0; _i < testRects.length; _i += 1) {
|
|
34
|
-
var top = l.addRect.apply(l, (0, _toConsumableArray2
|
|
34
|
+
var top = l.addRect.apply(l, (0, _toConsumableArray2["default"])(testRects[_i]));
|
|
35
35
|
expect(top).toEqual(_i % 2 * 4);
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
38
|
it('discards regions', function () {
|
|
39
|
-
var l = new _GranularRectLayout
|
|
39
|
+
var l = new _GranularRectLayout["default"]({
|
|
40
40
|
pitchX: 10,
|
|
41
41
|
pitchY: 4
|
|
42
42
|
});
|
|
@@ -59,7 +59,7 @@ describe('GranularRectLayout', function () {
|
|
|
59
59
|
}); // see issue #486
|
|
60
60
|
|
|
61
61
|
it('tests that adding +/- pitchX fixes resolution causing errors', function () {
|
|
62
|
-
var l = new _GranularRectLayout
|
|
62
|
+
var l = new _GranularRectLayout["default"]({
|
|
63
63
|
pitchX: 91.21851599727707,
|
|
64
64
|
pitchY: 3
|
|
65
65
|
});
|
|
@@ -71,7 +71,7 @@ describe('GranularRectLayout', function () {
|
|
|
71
71
|
});
|
|
72
72
|
it('tests reinitializing layout due to throwing away old one', function () {
|
|
73
73
|
var spy = jest.spyOn(console, 'warn').mockImplementation(function () {});
|
|
74
|
-
var l = new _GranularRectLayout
|
|
74
|
+
var l = new _GranularRectLayout["default"]({
|
|
75
75
|
pitchX: 1,
|
|
76
76
|
pitchY: 1,
|
|
77
77
|
maxHeight: 600
|
|
@@ -84,7 +84,7 @@ describe('GranularRectLayout', function () {
|
|
|
84
84
|
spy.mockRestore();
|
|
85
85
|
});
|
|
86
86
|
it('tests adding a gigantic feature that fills entire row with another smaller added on top', function () {
|
|
87
|
-
var l = new _GranularRectLayout
|
|
87
|
+
var l = new _GranularRectLayout["default"]({
|
|
88
88
|
pitchX: 100,
|
|
89
89
|
pitchY: 1,
|
|
90
90
|
maxHeight: 600
|
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports
|
|
8
|
+
exports["default"] = void 0;
|
|
9
9
|
|
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
|
|
15
15
|
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
19
|
-
|
|
20
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
21
|
-
|
|
22
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
16
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
|
|
23
17
|
|
|
24
18
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
25
19
|
var MultiLayout = /*#__PURE__*/function () {
|
|
@@ -30,14 +24,15 @@ var MultiLayout = /*#__PURE__*/function () {
|
|
|
30
24
|
*/
|
|
31
25
|
function MultiLayout(SubLayoutClass) {
|
|
32
26
|
var layoutArgs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
33
|
-
(0, _classCallCheck2
|
|
34
|
-
|
|
35
|
-
|
|
27
|
+
(0, _classCallCheck2["default"])(this, MultiLayout);
|
|
28
|
+
this.SubLayoutClass = SubLayoutClass;
|
|
29
|
+
this.subLayouts = new Map();
|
|
30
|
+
this.subLayoutConstructorArgs = {};
|
|
36
31
|
this.subLayouts = new Map();
|
|
37
32
|
this.subLayoutConstructorArgs = layoutArgs;
|
|
38
33
|
}
|
|
39
34
|
|
|
40
|
-
(0, _createClass2
|
|
35
|
+
(0, _createClass2["default"])(MultiLayout, [{
|
|
41
36
|
key: "getSublayout",
|
|
42
37
|
value: function getSublayout(layoutName) {
|
|
43
38
|
var subLayout = this.subLayouts.get(layoutName);
|
|
@@ -67,12 +62,12 @@ var MultiLayout = /*#__PURE__*/function () {
|
|
|
67
62
|
value: function toJSON() {
|
|
68
63
|
var data = {};
|
|
69
64
|
|
|
70
|
-
var _iterator =
|
|
65
|
+
var _iterator = (0, _createForOfIteratorHelper2["default"])(this.subLayouts.entries()),
|
|
71
66
|
_step;
|
|
72
67
|
|
|
73
68
|
try {
|
|
74
69
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
75
|
-
var _step$value = (0, _slicedToArray2
|
|
70
|
+
var _step$value = (0, _slicedToArray2["default"])(_step.value, 2),
|
|
76
71
|
layoutName = _step$value[0],
|
|
77
72
|
sublayout = _step$value[1];
|
|
78
73
|
|
|
@@ -90,4 +85,4 @@ var MultiLayout = /*#__PURE__*/function () {
|
|
|
90
85
|
return MultiLayout;
|
|
91
86
|
}();
|
|
92
87
|
|
|
93
|
-
exports
|
|
88
|
+
exports["default"] = MultiLayout;
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports
|
|
8
|
+
exports["default"] = void 0;
|
|
9
9
|
|
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
11
11
|
|
|
12
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
|
|
13
13
|
|
|
14
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
-
|
|
16
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
|
|
17
15
|
|
|
18
16
|
var _ = require("..");
|
|
19
17
|
|
|
@@ -24,19 +22,19 @@ var PrecomputedLayout = /*#__PURE__*/function () {
|
|
|
24
22
|
var rectangles = _ref.rectangles,
|
|
25
23
|
totalHeight = _ref.totalHeight,
|
|
26
24
|
maxHeightReached = _ref.maxHeightReached;
|
|
27
|
-
(0, _classCallCheck2
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
25
|
+
(0, _classCallCheck2["default"])(this, PrecomputedLayout);
|
|
26
|
+
this.rectangles = void 0;
|
|
27
|
+
this.totalHeight = void 0;
|
|
28
|
+
this.maxHeightReached = void 0;
|
|
29
|
+
this.rbush = void 0;
|
|
32
30
|
this.rectangles = new Map(Object.entries(rectangles)); // rectangles is of the form "featureId": [leftPx, topPx, rightPx, bottomPx]
|
|
33
31
|
|
|
34
32
|
this.totalHeight = totalHeight;
|
|
35
33
|
this.maxHeightReached = maxHeightReached;
|
|
36
|
-
this.rbush = new _rbush
|
|
34
|
+
this.rbush = new _rbush["default"]();
|
|
37
35
|
|
|
38
36
|
for (var _i = 0, _Object$entries = Object.entries(rectangles); _i < _Object$entries.length; _i++) {
|
|
39
|
-
var _Object$entries$_i = (0, _slicedToArray2
|
|
37
|
+
var _Object$entries$_i = (0, _slicedToArray2["default"])(_Object$entries[_i], 2),
|
|
40
38
|
key = _Object$entries$_i[0],
|
|
41
39
|
layout = _Object$entries$_i[1];
|
|
42
40
|
|
|
@@ -50,7 +48,7 @@ var PrecomputedLayout = /*#__PURE__*/function () {
|
|
|
50
48
|
}
|
|
51
49
|
}
|
|
52
50
|
|
|
53
|
-
(0, _createClass2
|
|
51
|
+
(0, _createClass2["default"])(PrecomputedLayout, [{
|
|
54
52
|
key: "addRect",
|
|
55
53
|
value: function addRect(id) {
|
|
56
54
|
var rect = this.rectangles.get(id);
|
|
@@ -125,4 +123,4 @@ var PrecomputedLayout = /*#__PURE__*/function () {
|
|
|
125
123
|
return PrecomputedLayout;
|
|
126
124
|
}();
|
|
127
125
|
|
|
128
|
-
exports
|
|
126
|
+
exports["default"] = PrecomputedLayout;
|
|
@@ -1,60 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports
|
|
8
|
+
exports["default"] = void 0;
|
|
9
9
|
|
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
11
11
|
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/inherits"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createSuper"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
|
|
17
17
|
|
|
18
|
-
var
|
|
19
|
-
|
|
20
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
18
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
|
|
21
19
|
|
|
22
20
|
var _MultiLayout2 = _interopRequireDefault(require("./MultiLayout"));
|
|
23
21
|
|
|
24
22
|
var _PrecomputedLayout = _interopRequireDefault(require("./PrecomputedLayout"));
|
|
25
23
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
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; } }
|
|
29
|
-
|
|
30
|
-
var ThrowingLayout = /*#__PURE__*/(0, _createClass2.default)(function ThrowingLayout() {
|
|
31
|
-
(0, _classCallCheck2.default)(this, ThrowingLayout);
|
|
24
|
+
var ThrowingLayout = /*#__PURE__*/(0, _createClass2["default"])(function ThrowingLayout() {
|
|
25
|
+
(0, _classCallCheck2["default"])(this, ThrowingLayout);
|
|
32
26
|
throw new Error('invalid layout name');
|
|
33
27
|
});
|
|
34
28
|
|
|
35
29
|
var PrecomputedMultiLayout = /*#__PURE__*/function (_MultiLayout) {
|
|
36
|
-
(0, _inherits2
|
|
30
|
+
(0, _inherits2["default"])(PrecomputedMultiLayout, _MultiLayout);
|
|
37
31
|
|
|
38
|
-
var _super =
|
|
32
|
+
var _super = (0, _createSuper2["default"])(PrecomputedMultiLayout);
|
|
39
33
|
|
|
40
34
|
function PrecomputedMultiLayout(json) {
|
|
41
35
|
var _this;
|
|
42
36
|
|
|
43
|
-
(0, _classCallCheck2
|
|
37
|
+
(0, _classCallCheck2["default"])(this, PrecomputedMultiLayout);
|
|
44
38
|
// use ThrowingLayout because there is not supposed to be any creation
|
|
45
39
|
// of new layouts in a precomputed layout
|
|
46
40
|
_this = _super.call(this, ThrowingLayout);
|
|
47
41
|
Object.entries(json).forEach(function (_ref) {
|
|
48
|
-
var _ref2 = (0, _slicedToArray2
|
|
42
|
+
var _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
|
|
49
43
|
layoutName = _ref2[0],
|
|
50
44
|
sublayoutJson = _ref2[1];
|
|
51
45
|
|
|
52
|
-
_this.subLayouts.set(layoutName, new _PrecomputedLayout
|
|
46
|
+
_this.subLayouts.set(layoutName, new _PrecomputedLayout["default"](sublayoutJson));
|
|
53
47
|
});
|
|
54
48
|
return _this;
|
|
55
49
|
}
|
|
56
50
|
|
|
57
|
-
return (0, _createClass2
|
|
58
|
-
}(_MultiLayout2
|
|
51
|
+
return (0, _createClass2["default"])(PrecomputedMultiLayout);
|
|
52
|
+
}(_MultiLayout2["default"]);
|
|
59
53
|
|
|
60
|
-
exports
|
|
54
|
+
exports["default"] = PrecomputedMultiLayout;
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports
|
|
8
|
+
exports["default"] = void 0;
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
|
|
15
15
|
|
|
16
16
|
var _ = require("..");
|
|
17
17
|
|
|
18
|
-
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
19
|
-
|
|
20
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
21
|
-
|
|
22
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
23
|
-
|
|
24
18
|
var SceneGraph = /*#__PURE__*/function () {
|
|
25
19
|
/**
|
|
26
20
|
* note: all coordinates are inter-base or inter-pixel coordinates
|
|
27
21
|
*/
|
|
28
22
|
function SceneGraph(name, left, top, width, height, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
29
23
|
data) {
|
|
30
|
-
(0, _classCallCheck2
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
24
|
+
(0, _classCallCheck2["default"])(this, SceneGraph);
|
|
25
|
+
this.name = name;
|
|
26
|
+
this.left = left;
|
|
27
|
+
this.top = top;
|
|
28
|
+
this.width = width;
|
|
29
|
+
this.height = height;
|
|
30
|
+
this.data = data;
|
|
31
|
+
this.children = void 0;
|
|
32
|
+
this.absoluteCache = void 0;
|
|
33
|
+
this.parent = void 0;
|
|
34
34
|
|
|
35
35
|
if (_.inDevelopment && (typeof name !== 'string' || typeof left !== 'number' || Number.isNaN(left) || typeof top !== 'number' || Number.isNaN(top) || typeof width !== 'number' || Number.isNaN(width) || typeof height !== 'number' || Number.isNaN(height))) {
|
|
36
36
|
throw new TypeError('invalid SceneGraph arguments');
|
|
@@ -42,7 +42,7 @@ var SceneGraph = /*#__PURE__*/function () {
|
|
|
42
42
|
};
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
(0, _createClass2
|
|
45
|
+
(0, _createClass2["default"])(SceneGraph, [{
|
|
46
46
|
key: "addChild",
|
|
47
47
|
value: function addChild(nameOrSceneGraph, left, top, width, height, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
48
48
|
data) {
|
|
@@ -149,7 +149,7 @@ var SceneGraph = /*#__PURE__*/function () {
|
|
|
149
149
|
}, {
|
|
150
150
|
key: "walkChildren",
|
|
151
151
|
value: function walkChildren(callback) {
|
|
152
|
-
var _iterator =
|
|
152
|
+
var _iterator = (0, _createForOfIteratorHelper2["default"])(this.children.values()),
|
|
153
153
|
_step;
|
|
154
154
|
|
|
155
155
|
try {
|
|
@@ -210,4 +210,4 @@ var SceneGraph = /*#__PURE__*/function () {
|
|
|
210
210
|
return SceneGraph;
|
|
211
211
|
}();
|
|
212
212
|
|
|
213
|
-
exports
|
|
213
|
+
exports["default"] = SceneGraph;
|