@jbrowse/core 1.5.9 → 1.6.0
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 +91 -78
- package/BaseFeatureWidget/SequenceFeatureDetails.js +64 -56
- package/BaseFeatureWidget/SequenceFeatureDetails.test.js +9 -9
- package/BaseFeatureWidget/index.js +1 -1
- package/BaseFeatureWidget/index.test.js +4 -4
- package/BaseFeatureWidget/util.js +13 -9
- package/CorePlugin.js +32 -20
- package/Plugin.js +13 -11
- package/PluginLoader.js +37 -32
- package/PluginManager.d.ts +8 -5
- package/PluginManager.js +142 -53
- package/ReExports/index.js +4 -4
- package/ReExports/list.js +2 -2
- package/ReExports/material-ui-colors.js +20 -20
- package/ReExports/modules.d.ts +7 -5
- package/ReExports/modules.js +51 -47
- package/TextSearch/BaseResults.js +34 -24
- package/TextSearch/BaseResults.test.js +7 -3
- package/TextSearch/TextSearchManager.js +16 -14
- package/assemblyManager/assembly.js +38 -33
- package/assemblyManager/assemblyConfigSchema.js +2 -2
- package/assemblyManager/assemblyManager.js +19 -15
- package/assemblyManager/index.js +3 -3
- package/babel.config.d.ts +15 -0
- package/babel.config.js +19 -0
- package/configuration/configurationSchema.js +19 -17
- package/configuration/configurationSlot.js +11 -11
- package/configuration/configurationSlot.test.js +5 -5
- package/configuration/index.d.ts +1 -0
- package/configuration/util.js +5 -5
- package/data_adapters/BaseAdapter.d.ts +15 -3
- package/data_adapters/BaseAdapter.js +215 -61
- package/data_adapters/BaseAdapter.test.js +29 -23
- package/data_adapters/CytobandAdapter.d.ts +1 -1
- package/data_adapters/CytobandAdapter.js +24 -18
- package/data_adapters/dataAdapterCache.js +8 -8
- package/package.json +3 -3
- package/pluggableElementTypes/AdapterType.js +30 -21
- package/pluggableElementTypes/ConnectionType.js +28 -18
- package/pluggableElementTypes/DisplayType.js +27 -17
- package/pluggableElementTypes/InternetAccountType.js +24 -14
- package/pluggableElementTypes/PluggableElementBase.js +10 -8
- package/pluggableElementTypes/RpcMethodType.d.ts +1 -1
- package/pluggableElementTypes/RpcMethodType.js +140 -117
- package/pluggableElementTypes/RpcMethodType.test.js +22 -16
- package/pluggableElementTypes/TextSearchAdapterType.js +25 -15
- package/pluggableElementTypes/TrackType.js +25 -15
- package/pluggableElementTypes/ViewType.js +25 -15
- package/pluggableElementTypes/WidgetType.js +27 -17
- package/pluggableElementTypes/index.js +11 -11
- package/pluggableElementTypes/models/BaseConnectionModelFactory.js +5 -5
- package/pluggableElementTypes/models/BaseDisplayModel.js +8 -5
- package/pluggableElementTypes/models/BaseTrackModel.js +11 -8
- package/pluggableElementTypes/models/BaseViewModel.js +3 -3
- package/pluggableElementTypes/models/InternetAccountModel.d.ts +1 -1
- package/pluggableElementTypes/models/InternetAccountModel.js +4 -4
- package/pluggableElementTypes/models/baseConnectionConfig.js +2 -2
- package/pluggableElementTypes/models/baseTrackConfig.js +7 -4
- package/pluggableElementTypes/models/index.js +4 -4
- package/pluggableElementTypes/renderers/BoxRendererType.js +48 -38
- package/pluggableElementTypes/renderers/CircularChordRendererType.js +18 -12
- package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +34 -26
- package/pluggableElementTypes/renderers/FeatureRendererType.js +45 -35
- package/pluggableElementTypes/renderers/RendererType.js +30 -20
- package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +12 -8
- package/pluggableElementTypes/renderers/ServerSideRendererType.d.ts +1 -1
- package/pluggableElementTypes/renderers/ServerSideRendererType.js +44 -32
- package/pluggableElementTypes/renderers/index.js +8 -8
- package/pluggableElementTypes/renderers/util/serializableFilterChain.js +10 -8
- package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +2 -2
- package/rpc/BaseRpcDriver.js +42 -37
- package/rpc/BaseRpcDriver.test.js +62 -48
- package/rpc/MainThreadRpcDriver.js +31 -21
- package/rpc/RpcManager.js +18 -16
- package/rpc/WebWorkerRpcDriver.js +37 -27
- package/rpc/configSchema.js +2 -2
- package/rpc/coreRpcMethods.d.ts +16 -0
- package/rpc/coreRpcMethods.js +247 -120
- package/rpc/remoteAbortSignals.js +3 -3
- package/ui/AboutDialog.js +20 -16
- package/ui/App.js +42 -38
- package/ui/AssemblySelector.d.ts +1 -1
- package/ui/AssemblySelector.js +6 -6
- package/ui/Drawer.js +7 -7
- package/ui/DrawerWidget.d.ts +1 -1
- package/ui/DrawerWidget.js +37 -33
- package/ui/DropDownMenu.js +21 -9
- package/ui/EditableTypography.js +30 -19
- package/ui/ErrorMessage.js +5 -5
- package/ui/FactoryResetDialog.js +8 -8
- package/ui/FatalErrorDialog.js +29 -12
- package/ui/FatalErrorDialog.test.js +10 -10
- package/ui/FileSelector/FileSelector.js +42 -32
- 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 +46 -35
- package/ui/NewSessionCards.js +29 -19
- package/ui/PrerenderedCanvas.js +27 -10
- package/ui/ResizeHandle.js +17 -10
- package/ui/SanitizedHTML.js +5 -5
- package/ui/SanitizedHTML.test.js +4 -4
- package/ui/Snackbar.js +16 -12
- package/ui/SnackbarModel.js +1 -1
- package/ui/Tooltip.js +11 -7
- package/ui/ViewContainer.d.ts +2 -5
- package/ui/ViewContainer.js +44 -49
- package/ui/index.d.ts +1 -0
- package/ui/index.js +26 -13
- package/ui/theme.js +15 -11
- package/util/Base1DViewModel.d.ts +14 -12
- package/util/Base1DViewModel.js +51 -55
- package/util/Base1DViewModel.test.js +5 -5
- package/util/QuickLRU.js +30 -26
- package/util/aborting.js +25 -15
- package/util/analytics.d.ts +1 -0
- package/util/analytics.js +14 -6
- package/util/blockTypes.js +48 -36
- package/util/calculateDynamicBlocks.js +4 -4
- package/util/calculateDynamicBlocks.test.js +14 -10
- package/util/calculateStaticBlocks.js +1 -1
- package/util/calculateStaticBlocks.test.js +15 -15
- package/util/compositeMap.js +30 -26
- package/util/idMaker.js +4 -4
- package/util/index.d.ts +23 -1
- package/util/index.js +130 -36
- package/util/index.test.js +11 -7
- package/util/io/RemoteFileWithRangeCache.js +40 -28
- package/util/io/index.js +5 -5
- package/util/jexl.js +5 -5
- package/util/jexlStrings.js +2 -2
- package/util/jexlStrings.test.js +2 -2
- package/util/layouts/GranularRectLayout.js +33 -27
- package/util/layouts/GranularRectLayout.test.js +10 -10
- package/util/layouts/MultiLayout.js +19 -13
- package/util/layouts/PrecomputedLayout.js +16 -14
- package/util/layouts/PrecomputedMultiLayout.js +23 -17
- package/util/layouts/SceneGraph.js +18 -12
- package/util/layouts/index.js +6 -6
- package/util/offscreenCanvasPonyfill.js +30 -28
- package/util/offscreenCanvasUtils.js +5 -5
- package/util/range.test.js +20 -20
- package/util/rxjs.js +2 -2
- package/util/simpleFeature.js +23 -18
- package/util/simpleFeature.test.js +3 -3
- package/util/stats.d.ts +1 -1
- package/util/stats.js +10 -6
- package/util/stats.test.js +15 -15
- package/util/tracks.js +1 -3
- package/util/types/index.d.ts +1 -1
- package/util/types/index.js +36 -31
- package/util/types/mst.js +19 -15
- package/util/when.js +5 -5
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");
|
|
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,22 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
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 _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
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
|
+
|
|
20
26
|
/**
|
|
21
27
|
* Rectangle-layout manager that lays out rectangles using bitmaps at
|
|
22
28
|
* resolution that, for efficiency, may be somewhat lower than that of
|
|
@@ -35,11 +41,11 @@ function segmentsIntersect(x1, x2, y1, y2) {
|
|
|
35
41
|
// a single row in the layout
|
|
36
42
|
var LayoutRow = /*#__PURE__*/function () {
|
|
37
43
|
function LayoutRow() {
|
|
38
|
-
(0, _classCallCheck2
|
|
39
|
-
this
|
|
40
|
-
this
|
|
41
|
-
this
|
|
42
|
-
this
|
|
44
|
+
(0, _classCallCheck2.default)(this, LayoutRow);
|
|
45
|
+
(0, _defineProperty2.default)(this, "padding", void 0);
|
|
46
|
+
(0, _defineProperty2.default)(this, "allFilled", void 0);
|
|
47
|
+
(0, _defineProperty2.default)(this, "widthLimit", void 0);
|
|
48
|
+
(0, _defineProperty2.default)(this, "rowState", void 0);
|
|
43
49
|
this.padding = 1;
|
|
44
50
|
this.widthLimit = 1000000; // this.rowState.offset is the offset of the bits array relative to the genomic coordinates
|
|
45
51
|
// (modified by pitchX, but we don't know that in this class)
|
|
@@ -53,7 +59,7 @@ var LayoutRow = /*#__PURE__*/function () {
|
|
|
53
59
|
// }
|
|
54
60
|
|
|
55
61
|
|
|
56
|
-
(0, _createClass2
|
|
62
|
+
(0, _createClass2.default)(LayoutRow, [{
|
|
57
63
|
key: "setAllFilled",
|
|
58
64
|
value: function setAllFilled(data) {
|
|
59
65
|
this.allFilled = data;
|
|
@@ -301,16 +307,16 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
301
307
|
_ref$displayMode = _ref.displayMode,
|
|
302
308
|
displayMode = _ref$displayMode === void 0 ? 'normal' : _ref$displayMode;
|
|
303
309
|
|
|
304
|
-
(0, _classCallCheck2
|
|
305
|
-
this
|
|
306
|
-
this
|
|
307
|
-
this
|
|
308
|
-
this
|
|
309
|
-
this
|
|
310
|
-
this
|
|
311
|
-
this
|
|
312
|
-
this
|
|
313
|
-
this
|
|
310
|
+
(0, _classCallCheck2.default)(this, GranularRectLayout);
|
|
311
|
+
(0, _defineProperty2.default)(this, "pitchX", void 0);
|
|
312
|
+
(0, _defineProperty2.default)(this, "pitchY", void 0);
|
|
313
|
+
(0, _defineProperty2.default)(this, "hardRowLimit", void 0);
|
|
314
|
+
(0, _defineProperty2.default)(this, "bitmap", void 0);
|
|
315
|
+
(0, _defineProperty2.default)(this, "rectangles", void 0);
|
|
316
|
+
(0, _defineProperty2.default)(this, "maxHeightReached", void 0);
|
|
317
|
+
(0, _defineProperty2.default)(this, "maxHeight", void 0);
|
|
318
|
+
(0, _defineProperty2.default)(this, "displayMode", void 0);
|
|
319
|
+
(0, _defineProperty2.default)(this, "pTotalHeight", void 0);
|
|
314
320
|
this.pitchX = pitchX;
|
|
315
321
|
this.pitchY = pitchY;
|
|
316
322
|
this.hardRowLimit = hardRowLimit;
|
|
@@ -333,7 +339,7 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
333
339
|
*/
|
|
334
340
|
|
|
335
341
|
|
|
336
|
-
(0, _createClass2
|
|
342
|
+
(0, _createClass2.default)(GranularRectLayout, [{
|
|
337
343
|
key: "addRect",
|
|
338
344
|
value: function addRect(id, left, right, height, data) {
|
|
339
345
|
// if we have already laid it out, return its layout
|
|
@@ -518,7 +524,7 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
518
524
|
var _this = this;
|
|
519
525
|
|
|
520
526
|
return new Map(Array.from(this.rectangles.entries()).map(function (_ref2) {
|
|
521
|
-
var _ref3 = (0, _slicedToArray2
|
|
527
|
+
var _ref3 = (0, _slicedToArray2.default)(_ref2, 2),
|
|
522
528
|
id = _ref3[0],
|
|
523
529
|
rect = _ref3[1];
|
|
524
530
|
|
|
@@ -537,12 +543,12 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
537
543
|
var regionRectangles = {};
|
|
538
544
|
var maxHeightReached = false;
|
|
539
545
|
|
|
540
|
-
var _iterator = (
|
|
546
|
+
var _iterator = _createForOfIteratorHelper(this.rectangles.entries()),
|
|
541
547
|
_step;
|
|
542
548
|
|
|
543
549
|
try {
|
|
544
550
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
545
|
-
var _step$value = (0, _slicedToArray2
|
|
551
|
+
var _step$value = (0, _slicedToArray2.default)(_step.value, 2),
|
|
546
552
|
id = _step$value[0],
|
|
547
553
|
rect = _step$value[1];
|
|
548
554
|
|
|
@@ -592,4 +598,4 @@ var GranularRectLayout = /*#__PURE__*/function () {
|
|
|
592
598
|
return GranularRectLayout;
|
|
593
599
|
}();
|
|
594
600
|
|
|
595
|
-
exports
|
|
601
|
+
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");
|
|
4
4
|
|
|
5
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
5
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/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,19 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
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/
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
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; }
|
|
17
23
|
|
|
18
24
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
19
25
|
var MultiLayout = /*#__PURE__*/function () {
|
|
@@ -24,15 +30,15 @@ var MultiLayout = /*#__PURE__*/function () {
|
|
|
24
30
|
*/
|
|
25
31
|
function MultiLayout(SubLayoutClass) {
|
|
26
32
|
var layoutArgs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
27
|
-
(0, _classCallCheck2
|
|
33
|
+
(0, _classCallCheck2.default)(this, MultiLayout);
|
|
28
34
|
this.SubLayoutClass = SubLayoutClass;
|
|
29
|
-
this
|
|
30
|
-
this
|
|
35
|
+
(0, _defineProperty2.default)(this, "subLayouts", new Map());
|
|
36
|
+
(0, _defineProperty2.default)(this, "subLayoutConstructorArgs", {});
|
|
31
37
|
this.subLayouts = new Map();
|
|
32
38
|
this.subLayoutConstructorArgs = layoutArgs;
|
|
33
39
|
}
|
|
34
40
|
|
|
35
|
-
(0, _createClass2
|
|
41
|
+
(0, _createClass2.default)(MultiLayout, [{
|
|
36
42
|
key: "getSublayout",
|
|
37
43
|
value: function getSublayout(layoutName) {
|
|
38
44
|
var subLayout = this.subLayouts.get(layoutName);
|
|
@@ -62,12 +68,12 @@ var MultiLayout = /*#__PURE__*/function () {
|
|
|
62
68
|
value: function toJSON() {
|
|
63
69
|
var data = {};
|
|
64
70
|
|
|
65
|
-
var _iterator = (
|
|
71
|
+
var _iterator = _createForOfIteratorHelper(this.subLayouts.entries()),
|
|
66
72
|
_step;
|
|
67
73
|
|
|
68
74
|
try {
|
|
69
75
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
70
|
-
var _step$value = (0, _slicedToArray2
|
|
76
|
+
var _step$value = (0, _slicedToArray2.default)(_step.value, 2),
|
|
71
77
|
layoutName = _step$value[0],
|
|
72
78
|
sublayout = _step$value[1];
|
|
73
79
|
|
|
@@ -85,4 +91,4 @@ var MultiLayout = /*#__PURE__*/function () {
|
|
|
85
91
|
return MultiLayout;
|
|
86
92
|
}();
|
|
87
93
|
|
|
88
|
-
exports
|
|
94
|
+
exports.default = MultiLayout;
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
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/
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
11
|
|
|
12
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
12
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
13
|
|
|
14
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
14
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
15
|
+
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
17
|
|
|
16
18
|
var _ = require("..");
|
|
17
19
|
|
|
@@ -22,19 +24,19 @@ var PrecomputedLayout = /*#__PURE__*/function () {
|
|
|
22
24
|
var rectangles = _ref.rectangles,
|
|
23
25
|
totalHeight = _ref.totalHeight,
|
|
24
26
|
maxHeightReached = _ref.maxHeightReached;
|
|
25
|
-
(0, _classCallCheck2
|
|
26
|
-
this
|
|
27
|
-
this
|
|
28
|
-
this
|
|
29
|
-
this
|
|
27
|
+
(0, _classCallCheck2.default)(this, PrecomputedLayout);
|
|
28
|
+
(0, _defineProperty2.default)(this, "rectangles", void 0);
|
|
29
|
+
(0, _defineProperty2.default)(this, "totalHeight", void 0);
|
|
30
|
+
(0, _defineProperty2.default)(this, "maxHeightReached", void 0);
|
|
31
|
+
(0, _defineProperty2.default)(this, "rbush", void 0);
|
|
30
32
|
this.rectangles = new Map(Object.entries(rectangles)); // rectangles is of the form "featureId": [leftPx, topPx, rightPx, bottomPx]
|
|
31
33
|
|
|
32
34
|
this.totalHeight = totalHeight;
|
|
33
35
|
this.maxHeightReached = maxHeightReached;
|
|
34
|
-
this.rbush = new _rbush
|
|
36
|
+
this.rbush = new _rbush.default();
|
|
35
37
|
|
|
36
38
|
for (var _i = 0, _Object$entries = Object.entries(rectangles); _i < _Object$entries.length; _i++) {
|
|
37
|
-
var _Object$entries$_i = (0, _slicedToArray2
|
|
39
|
+
var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
|
|
38
40
|
key = _Object$entries$_i[0],
|
|
39
41
|
layout = _Object$entries$_i[1];
|
|
40
42
|
|
|
@@ -48,7 +50,7 @@ var PrecomputedLayout = /*#__PURE__*/function () {
|
|
|
48
50
|
}
|
|
49
51
|
}
|
|
50
52
|
|
|
51
|
-
(0, _createClass2
|
|
53
|
+
(0, _createClass2.default)(PrecomputedLayout, [{
|
|
52
54
|
key: "addRect",
|
|
53
55
|
value: function addRect(id) {
|
|
54
56
|
var rect = this.rectangles.get(id);
|
|
@@ -123,4 +125,4 @@ var PrecomputedLayout = /*#__PURE__*/function () {
|
|
|
123
125
|
return PrecomputedLayout;
|
|
124
126
|
}();
|
|
125
127
|
|
|
126
|
-
exports
|
|
128
|
+
exports.default = PrecomputedLayout;
|
|
@@ -1,54 +1,60 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
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/
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
11
|
|
|
12
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
12
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
19
|
+
|
|
20
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
19
21
|
|
|
20
22
|
var _MultiLayout2 = _interopRequireDefault(require("./MultiLayout"));
|
|
21
23
|
|
|
22
24
|
var _PrecomputedLayout = _interopRequireDefault(require("./PrecomputedLayout"));
|
|
23
25
|
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
+
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); }; }
|
|
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);
|
|
26
32
|
throw new Error('invalid layout name');
|
|
27
33
|
});
|
|
28
34
|
|
|
29
35
|
var PrecomputedMultiLayout = /*#__PURE__*/function (_MultiLayout) {
|
|
30
|
-
(0, _inherits2
|
|
36
|
+
(0, _inherits2.default)(PrecomputedMultiLayout, _MultiLayout);
|
|
31
37
|
|
|
32
|
-
var _super = (
|
|
38
|
+
var _super = _createSuper(PrecomputedMultiLayout);
|
|
33
39
|
|
|
34
40
|
function PrecomputedMultiLayout(json) {
|
|
35
41
|
var _this;
|
|
36
42
|
|
|
37
|
-
(0, _classCallCheck2
|
|
43
|
+
(0, _classCallCheck2.default)(this, PrecomputedMultiLayout);
|
|
38
44
|
// use ThrowingLayout because there is not supposed to be any creation
|
|
39
45
|
// of new layouts in a precomputed layout
|
|
40
46
|
_this = _super.call(this, ThrowingLayout);
|
|
41
47
|
Object.entries(json).forEach(function (_ref) {
|
|
42
|
-
var _ref2 = (0, _slicedToArray2
|
|
48
|
+
var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
|
|
43
49
|
layoutName = _ref2[0],
|
|
44
50
|
sublayoutJson = _ref2[1];
|
|
45
51
|
|
|
46
|
-
_this.subLayouts.set(layoutName, new _PrecomputedLayout
|
|
52
|
+
_this.subLayouts.set(layoutName, new _PrecomputedLayout.default(sublayoutJson));
|
|
47
53
|
});
|
|
48
54
|
return _this;
|
|
49
55
|
}
|
|
50
56
|
|
|
51
|
-
return (0, _createClass2
|
|
52
|
-
}(_MultiLayout2
|
|
57
|
+
return (0, _createClass2.default)(PrecomputedMultiLayout);
|
|
58
|
+
}(_MultiLayout2.default);
|
|
53
59
|
|
|
54
|
-
exports
|
|
60
|
+
exports.default = PrecomputedMultiLayout;
|
|
@@ -1,36 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
13
|
|
|
14
|
-
var
|
|
14
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
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
|
+
|
|
18
24
|
var SceneGraph = /*#__PURE__*/function () {
|
|
19
25
|
/**
|
|
20
26
|
* note: all coordinates are inter-base or inter-pixel coordinates
|
|
21
27
|
*/
|
|
22
28
|
function SceneGraph(name, left, top, width, height, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
23
29
|
data) {
|
|
24
|
-
(0, _classCallCheck2
|
|
30
|
+
(0, _classCallCheck2.default)(this, SceneGraph);
|
|
25
31
|
this.name = name;
|
|
26
32
|
this.left = left;
|
|
27
33
|
this.top = top;
|
|
28
34
|
this.width = width;
|
|
29
35
|
this.height = height;
|
|
30
36
|
this.data = data;
|
|
31
|
-
this
|
|
32
|
-
this
|
|
33
|
-
this
|
|
37
|
+
(0, _defineProperty2.default)(this, "children", void 0);
|
|
38
|
+
(0, _defineProperty2.default)(this, "absoluteCache", void 0);
|
|
39
|
+
(0, _defineProperty2.default)(this, "parent", void 0);
|
|
34
40
|
|
|
35
41
|
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
42
|
throw new TypeError('invalid SceneGraph arguments');
|
|
@@ -42,7 +48,7 @@ var SceneGraph = /*#__PURE__*/function () {
|
|
|
42
48
|
};
|
|
43
49
|
}
|
|
44
50
|
|
|
45
|
-
(0, _createClass2
|
|
51
|
+
(0, _createClass2.default)(SceneGraph, [{
|
|
46
52
|
key: "addChild",
|
|
47
53
|
value: function addChild(nameOrSceneGraph, left, top, width, height, // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
48
54
|
data) {
|
|
@@ -149,7 +155,7 @@ var SceneGraph = /*#__PURE__*/function () {
|
|
|
149
155
|
}, {
|
|
150
156
|
key: "walkChildren",
|
|
151
157
|
value: function walkChildren(callback) {
|
|
152
|
-
var _iterator = (
|
|
158
|
+
var _iterator = _createForOfIteratorHelper(this.children.values()),
|
|
153
159
|
_step;
|
|
154
160
|
|
|
155
161
|
try {
|
|
@@ -210,4 +216,4 @@ var SceneGraph = /*#__PURE__*/function () {
|
|
|
210
216
|
return SceneGraph;
|
|
211
217
|
}();
|
|
212
218
|
|
|
213
|
-
exports
|
|
219
|
+
exports.default = SceneGraph;
|
package/util/layouts/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");
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
@@ -15,31 +15,31 @@ var _exportNames = {
|
|
|
15
15
|
Object.defineProperty(exports, "GranularRectLayout", {
|
|
16
16
|
enumerable: true,
|
|
17
17
|
get: function get() {
|
|
18
|
-
return _GranularRectLayout
|
|
18
|
+
return _GranularRectLayout.default;
|
|
19
19
|
}
|
|
20
20
|
});
|
|
21
21
|
Object.defineProperty(exports, "MultiLayout", {
|
|
22
22
|
enumerable: true,
|
|
23
23
|
get: function get() {
|
|
24
|
-
return _MultiLayout
|
|
24
|
+
return _MultiLayout.default;
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
27
|
Object.defineProperty(exports, "PrecomputedLayout", {
|
|
28
28
|
enumerable: true,
|
|
29
29
|
get: function get() {
|
|
30
|
-
return _PrecomputedLayout
|
|
30
|
+
return _PrecomputedLayout.default;
|
|
31
31
|
}
|
|
32
32
|
});
|
|
33
33
|
Object.defineProperty(exports, "PrecomputedMultiLayout", {
|
|
34
34
|
enumerable: true,
|
|
35
35
|
get: function get() {
|
|
36
|
-
return _PrecomputedMultiLayout
|
|
36
|
+
return _PrecomputedMultiLayout.default;
|
|
37
37
|
}
|
|
38
38
|
});
|
|
39
39
|
Object.defineProperty(exports, "SceneGraph", {
|
|
40
40
|
enumerable: true,
|
|
41
41
|
get: function get() {
|
|
42
|
-
return _SceneGraph
|
|
42
|
+
return _SceneGraph.default;
|
|
43
43
|
}
|
|
44
44
|
});
|
|
45
45
|
|