@jbrowse/core 1.7.11 → 2.1.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.
Files changed (204) hide show
  1. package/BaseFeatureWidget/BaseFeatureDetail.d.ts +20 -4
  2. package/BaseFeatureWidget/BaseFeatureDetail.js +313 -558
  3. package/BaseFeatureWidget/SequenceFeatureDetails.js +213 -473
  4. package/BaseFeatureWidget/index.d.ts +2 -2
  5. package/BaseFeatureWidget/index.js +88 -124
  6. package/BaseFeatureWidget/types.d.ts +1 -0
  7. package/BaseFeatureWidget/types.js +1 -4
  8. package/BaseFeatureWidget/util.js +40 -75
  9. package/CorePlugin.js +55 -94
  10. package/Plugin.js +9 -34
  11. package/PluginLoader.js +153 -422
  12. package/PluginManager.d.ts +84 -117
  13. package/PluginManager.js +377 -666
  14. package/ReExports/Attributes.d.ts +2 -0
  15. package/ReExports/Attributes.js +5 -0
  16. package/ReExports/BaseCard.d.ts +2 -0
  17. package/ReExports/BaseCard.js +5 -0
  18. package/ReExports/DataGrid.d.ts +2 -0
  19. package/ReExports/DataGrid.js +6 -0
  20. package/ReExports/FeatureDetails.d.ts +2 -0
  21. package/ReExports/FeatureDetails.js +5 -0
  22. package/ReExports/index.js +6 -12
  23. package/ReExports/list.d.ts +5 -0
  24. package/ReExports/list.js +271 -7
  25. package/ReExports/material-ui-colors.d.ts +1 -19
  26. package/ReExports/material-ui-colors.js +16 -158
  27. package/ReExports/modules.d.ts +68 -109
  28. package/ReExports/modules.js +455 -244
  29. package/TextSearch/BaseResults.js +51 -123
  30. package/TextSearch/TextSearchManager.d.ts +3 -1
  31. package/TextSearch/TextSearchManager.js +66 -144
  32. package/assemblyManager/assembly.js +280 -554
  33. package/assemblyManager/assemblyConfigSchema.js +47 -64
  34. package/assemblyManager/assemblyManager.d.ts +12 -10
  35. package/assemblyManager/assemblyManager.js +126 -270
  36. package/assemblyManager/index.js +9 -22
  37. package/configuration/configurationSchema.js +167 -203
  38. package/configuration/configurationSlot.js +248 -326
  39. package/configuration/index.js +19 -35
  40. package/configuration/util.d.ts +1 -1
  41. package/configuration/util.js +131 -173
  42. package/data_adapters/BaseAdapter.d.ts +2 -2
  43. package/data_adapters/BaseAdapter.js +132 -521
  44. package/data_adapters/CytobandAdapter.js +40 -126
  45. package/data_adapters/dataAdapterCache.js +77 -158
  46. package/package.json +16 -18
  47. package/pluggableElementTypes/AdapterType.js +24 -79
  48. package/pluggableElementTypes/AddTrackWorkflowType.d.ts +17 -0
  49. package/pluggableElementTypes/AddTrackWorkflowType.js +20 -0
  50. package/pluggableElementTypes/ConnectionType.js +22 -65
  51. package/pluggableElementTypes/DisplayType.js +35 -82
  52. package/pluggableElementTypes/InternetAccountType.js +23 -64
  53. package/pluggableElementTypes/PluggableElementBase.js +8 -20
  54. package/pluggableElementTypes/RpcMethodType.js +85 -427
  55. package/pluggableElementTypes/TextSearchAdapterType.js +16 -55
  56. package/pluggableElementTypes/TrackType.js +26 -70
  57. package/pluggableElementTypes/ViewType.js +21 -63
  58. package/pluggableElementTypes/WidgetType.js +21 -64
  59. package/pluggableElementTypes/index.d.ts +4 -3
  60. package/pluggableElementTypes/index.js +42 -125
  61. package/pluggableElementTypes/models/BaseConnectionModelFactory.js +28 -43
  62. package/pluggableElementTypes/models/BaseDisplayModel.d.ts +10 -10
  63. package/pluggableElementTypes/models/BaseDisplayModel.js +58 -95
  64. package/pluggableElementTypes/models/BaseTrackModel.d.ts +1 -1
  65. package/pluggableElementTypes/models/BaseTrackModel.js +139 -200
  66. package/pluggableElementTypes/models/BaseViewModel.js +24 -40
  67. package/pluggableElementTypes/models/InternetAccountModel.js +116 -263
  68. package/pluggableElementTypes/models/baseConnectionConfig.js +14 -25
  69. package/pluggableElementTypes/models/baseInternetAccountConfig.js +29 -38
  70. package/pluggableElementTypes/models/baseTrackConfig.js +106 -133
  71. package/pluggableElementTypes/models/index.js +21 -70
  72. package/pluggableElementTypes/renderers/BoxRendererType.js +132 -291
  73. package/pluggableElementTypes/renderers/CircularChordRendererType.js +8 -38
  74. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +60 -192
  75. package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +0 -2
  76. package/pluggableElementTypes/renderers/FeatureRendererType.js +89 -255
  77. package/pluggableElementTypes/renderers/RendererType.js +31 -105
  78. package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +61 -72
  79. package/pluggableElementTypes/renderers/ServerSideRendererType.d.ts +2 -2
  80. package/pluggableElementTypes/renderers/ServerSideRendererType.js +112 -265
  81. package/pluggableElementTypes/renderers/index.js +19 -62
  82. package/pluggableElementTypes/renderers/util/serializableFilterChain.js +27 -65
  83. package/rpc/BaseRpcDriver.js +169 -405
  84. package/rpc/MainThreadRpcDriver.js +27 -150
  85. package/rpc/RpcManager.js +58 -159
  86. package/rpc/WebWorkerRpcDriver.js +54 -171
  87. package/rpc/configSchema.js +25 -49
  88. package/rpc/coreRpcMethods.d.ts +1 -3
  89. package/rpc/coreRpcMethods.js +221 -959
  90. package/rpc/remoteAbortSignals.js +46 -70
  91. package/tsconfig.build.tsbuildinfo +1 -1
  92. package/ui/AboutDialog.js +107 -158
  93. package/ui/App.js +157 -261
  94. package/ui/AssemblySelector.d.ts +1 -1
  95. package/ui/AssemblySelector.js +59 -115
  96. package/ui/CascadingMenu.js +100 -199
  97. package/ui/ColorPicker.d.ts +16 -0
  98. package/ui/ColorPicker.js +97 -0
  99. package/ui/Drawer.js +28 -58
  100. package/ui/DrawerWidget.js +109 -209
  101. package/ui/DropDownMenu.d.ts +0 -8
  102. package/ui/DropDownMenu.js +60 -97
  103. package/ui/EditableTypography.d.ts +1 -1
  104. package/ui/EditableTypography.js +87 -155
  105. package/ui/ErrorMessage.js +41 -66
  106. package/ui/FactoryResetDialog.js +24 -57
  107. package/ui/FatalErrorDialog.js +59 -91
  108. package/ui/FileSelector/FileSelector.js +123 -189
  109. package/ui/FileSelector/LocalFileChooser.js +44 -71
  110. package/ui/FileSelector/UrlChooser.js +17 -38
  111. package/ui/FileSelector/index.js +6 -12
  112. package/ui/Icons.d.ts +1 -1
  113. package/ui/Icons.js +45 -69
  114. package/ui/Logo.js +57 -110
  115. package/ui/Menu.d.ts +1 -1
  116. package/ui/Menu.js +232 -355
  117. package/ui/PrerenderedCanvas.js +63 -78
  118. package/ui/ResizeHandle.js +87 -114
  119. package/ui/ReturnToImportFormDialog.js +32 -59
  120. package/ui/SanitizedHTML.js +63 -52
  121. package/ui/Snackbar.js +74 -99
  122. package/ui/SnackbarModel.js +37 -51
  123. package/ui/Tooltip.d.ts +3 -1
  124. package/ui/Tooltip.js +49 -74
  125. package/ui/ViewContainer.js +113 -183
  126. package/ui/colors.d.ts +10 -0
  127. package/ui/colors.js +78 -0
  128. package/ui/index.js +51 -181
  129. package/ui/react-colorful.d.ts +17 -0
  130. package/ui/react-colorful.js +455 -0
  131. package/ui/theme.d.ts +279 -131
  132. package/ui/theme.js +197 -225
  133. package/util/Base1DUtils.d.ts +32 -0
  134. package/util/Base1DUtils.js +174 -0
  135. package/util/Base1DViewModel.d.ts +16 -37
  136. package/util/Base1DViewModel.js +116 -295
  137. package/util/QuickLRU.js +84 -332
  138. package/util/TimeTraveller.d.ts +19 -0
  139. package/util/TimeTraveller.js +86 -0
  140. package/util/aborting.js +49 -127
  141. package/util/analytics.js +91 -154
  142. package/util/blockTypes.js +106 -240
  143. package/util/calculateDynamicBlocks.js +98 -128
  144. package/util/calculateStaticBlocks.js +105 -125
  145. package/util/color/cssColorsLevel4.js +156 -160
  146. package/util/color/index.js +33 -55
  147. package/util/compositeMap.js +49 -333
  148. package/util/formatFastaStrings.js +9 -14
  149. package/util/idMaker.js +18 -31
  150. package/util/index.d.ts +18 -39
  151. package/util/index.js +743 -1236
  152. package/util/io/RemoteFileWithRangeCache.js +88 -257
  153. package/util/io/index.js +95 -169
  154. package/util/jexl.js +60 -115
  155. package/util/jexlStrings.js +24 -29
  156. package/util/layouts/BaseLayout.js +1 -4
  157. package/util/layouts/GranularRectLayout.js +388 -557
  158. package/util/layouts/MultiLayout.js +41 -109
  159. package/util/layouts/PrecomputedLayout.js +56 -114
  160. package/util/layouts/PrecomputedMultiLayout.js +22 -59
  161. package/util/layouts/SceneGraph.js +127 -197
  162. package/util/layouts/index.js +29 -66
  163. package/util/mst-reflection.js +55 -71
  164. package/util/offscreenCanvasPonyfill.js +66 -134
  165. package/util/offscreenCanvasUtils.d.ts +2 -7
  166. package/util/offscreenCanvasUtils.js +49 -146
  167. package/util/range.js +29 -40
  168. package/util/rxjs.js +20 -27
  169. package/util/simpleFeature.js +88 -152
  170. package/util/stats.js +91 -151
  171. package/util/tracks.js +130 -171
  172. package/util/types/index.d.ts +3 -3
  173. package/util/types/index.js +110 -179
  174. package/util/types/mst.d.ts +3 -3
  175. package/util/types/mst.js +91 -142
  176. package/util/types/util.js +1 -4
  177. package/util/when.js +54 -101
  178. package/BaseFeatureWidget/SequenceFeatureDetails.test.js +0 -122
  179. package/BaseFeatureWidget/index.test.js +0 -51
  180. package/TextSearch/BaseResults.test.js +0 -42
  181. package/configuration/configurationSchema.test.js +0 -266
  182. package/configuration/configurationSlot.test.js +0 -69
  183. package/configuration/util.test.js +0 -39
  184. package/data_adapters/BaseAdapter.test.js +0 -200
  185. package/declare.d.js +0 -1
  186. package/pluggableElementTypes/RpcMethodType.test.js +0 -118
  187. package/pluggableElementTypes/renderers/declare.d.js +0 -1
  188. package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +0 -20
  189. package/rpc/BaseRpcDriver.test.js +0 -540
  190. package/rpc/declaration.d.js +0 -1
  191. package/ui/FatalErrorDialog.test.js +0 -82
  192. package/ui/SanitizedHTML.test.js +0 -36
  193. package/ui/theme.test.js +0 -111
  194. package/util/Base1DViewModel.test.js +0 -130
  195. package/util/calculateDynamicBlocks.test.js +0 -74
  196. package/util/calculateStaticBlocks.test.js +0 -297
  197. package/util/declare.d.js +0 -1
  198. package/util/formatFastaStrings.test.js +0 -40
  199. package/util/index.test.js +0 -213
  200. package/util/jexlStrings.test.js +0 -48
  201. package/util/layouts/GranularRectLayout.test.js +0 -99
  202. package/util/range.test.js +0 -64
  203. package/util/simpleFeature.test.js +0 -34
  204. package/util/stats.test.js +0 -172
@@ -1,118 +1,50 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
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; }
23
-
24
- /* eslint-disable @typescript-eslint/no-explicit-any */
25
- var MultiLayout = /*#__PURE__*/function () {
26
- /**
27
- * layout class that just keeps a number of named sub-layouts.
28
- * basically just a fancier
29
- * `{ layout1: new GranularRectLayout(), layout2: new GranularRectLayout() ...}`
30
- */
31
- function MultiLayout(SubLayoutClass) {
32
- var layoutArgs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
33
- (0, _classCallCheck2.default)(this, MultiLayout);
34
- this.SubLayoutClass = SubLayoutClass;
35
- (0, _defineProperty2.default)(this, "subLayouts", new Map());
36
- (0, _defineProperty2.default)(this, "subLayoutConstructorArgs", {});
37
- this.subLayouts = new Map();
38
- this.subLayoutConstructorArgs = layoutArgs;
39
- }
40
-
41
- (0, _createClass2.default)(MultiLayout, [{
42
- key: "getDataByID",
43
- value: function getDataByID(id) {
44
- var _iterator = _createForOfIteratorHelper(this.subLayouts.values()),
45
- _step;
46
-
47
- try {
48
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
49
- var layout = _step.value;
50
- // @ts-ignore
51
- var r = layout.getDataByID(id);
52
-
53
- if (r) {
54
- return r;
55
- }
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ class MultiLayout {
4
+ /**
5
+ * layout class that just keeps a number of named sub-layouts.
6
+ * basically just a fancier
7
+ * `{ layout1: new GranularRectLayout(), layout2: new GranularRectLayout() ...}`
8
+ */
9
+ constructor(SubLayoutClass, layoutArgs = {}) {
10
+ this.SubLayoutClass = SubLayoutClass;
11
+ this.subLayouts = new Map();
12
+ this.subLayoutConstructorArgs = {};
13
+ this.subLayouts = new Map();
14
+ this.subLayoutConstructorArgs = layoutArgs;
15
+ }
16
+ getDataByID(id) {
17
+ for (const layout of this.subLayouts.values()) {
18
+ // @ts-ignore
19
+ const r = layout.getDataByID(id);
20
+ if (r) {
21
+ return r;
22
+ }
56
23
  }
57
- } catch (err) {
58
- _iterator.e(err);
59
- } finally {
60
- _iterator.f();
61
- }
62
-
63
- return undefined;
24
+ return undefined;
64
25
  }
65
- }, {
66
- key: "getSublayout",
67
- value: function getSublayout(layoutName) {
68
- var subLayout = this.subLayouts.get(layoutName);
69
-
70
- if (subLayout === undefined) {
71
- subLayout = new this.SubLayoutClass(this.subLayoutConstructorArgs);
72
- this.subLayouts.set(layoutName, subLayout);
26
+ getSublayout(layoutName) {
27
+ let subLayout = this.subLayouts.get(layoutName);
28
+ if (subLayout === undefined) {
29
+ subLayout = new this.SubLayoutClass(this.subLayoutConstructorArgs);
30
+ this.subLayouts.set(layoutName, subLayout);
31
+ return subLayout;
32
+ }
73
33
  return subLayout;
74
- }
75
-
76
- return subLayout;
77
34
  }
78
- }, {
79
- key: "addRect",
80
- value: function addRect(layoutName, id, left, right, height) {
81
- var data = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {};
82
- return this.getSublayout(layoutName).addRect(id, left, right, height, data);
35
+ addRect(layoutName, id, left, right, height, data = {}) {
36
+ return this.getSublayout(layoutName).addRect(id, left, right, height, data);
83
37
  }
84
- }, {
85
- key: "discardRange",
86
- value: function discardRange(layoutName, left, right) {
87
- var layout = this.subLayouts.get(layoutName);
88
- return layout && layout.discardRange(left, right);
38
+ discardRange(layoutName, left, right) {
39
+ const layout = this.subLayouts.get(layoutName);
40
+ return layout && layout.discardRange(left, right);
89
41
  }
90
- }, {
91
- key: "toJSON",
92
- value: function toJSON() {
93
- var data = {};
94
-
95
- var _iterator2 = _createForOfIteratorHelper(this.subLayouts.entries()),
96
- _step2;
97
-
98
- try {
99
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
100
- var _step2$value = (0, _slicedToArray2.default)(_step2.value, 2),
101
- layoutName = _step2$value[0],
102
- sublayout = _step2$value[1];
103
-
104
- data[layoutName] = sublayout.toJSON();
42
+ toJSON() {
43
+ const data = {};
44
+ for (const [layoutName, sublayout] of this.subLayouts.entries()) {
45
+ data[layoutName] = sublayout.toJSON();
105
46
  }
106
- } catch (err) {
107
- _iterator2.e(err);
108
- } finally {
109
- _iterator2.f();
110
- }
111
-
112
- return data;
47
+ return data;
113
48
  }
114
- }]);
115
- return MultiLayout;
116
- }();
117
-
118
- exports.default = MultiLayout;
49
+ }
50
+ exports.default = MultiLayout;
@@ -1,129 +1,71 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
- var _ = require("..");
19
-
20
- var _rbush = _interopRequireDefault(require("rbush"));
21
-
22
- var PrecomputedLayout = /*#__PURE__*/function () {
23
- function PrecomputedLayout(_ref) {
24
- var rectangles = _ref.rectangles,
25
- totalHeight = _ref.totalHeight,
26
- maxHeightReached = _ref.maxHeightReached;
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);
32
- this.rectangles = new Map(Object.entries(rectangles)); // rectangles is of the form "featureId": [leftPx, topPx, rightPx, bottomPx]
33
-
34
- this.totalHeight = totalHeight;
35
- this.maxHeightReached = maxHeightReached;
36
- this.rbush = new _rbush.default();
37
-
38
- for (var _i = 0, _Object$entries = Object.entries(rectangles); _i < _Object$entries.length; _i++) {
39
- var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
40
- key = _Object$entries$_i[0],
41
- layout = _Object$entries$_i[1];
42
-
43
- this.rbush.insert({
44
- minX: layout[0],
45
- minY: layout[1],
46
- maxX: layout[2],
47
- maxY: layout[3],
48
- name: key
49
- });
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const rbush_1 = __importDefault(require("rbush"));
7
+ class PrecomputedLayout {
8
+ constructor({ rectangles, totalHeight, maxHeightReached }) {
9
+ this.rectangles = new Map(Object.entries(rectangles));
10
+ // rectangles is of the form "featureId": [leftPx, topPx, rightPx, bottomPx]
11
+ this.totalHeight = totalHeight;
12
+ this.maxHeightReached = maxHeightReached;
13
+ this.rbush = new rbush_1.default();
14
+ for (const [key, layout] of Object.entries(rectangles)) {
15
+ this.rbush.insert({
16
+ minX: layout[0],
17
+ minY: layout[1],
18
+ maxX: layout[2],
19
+ maxY: layout[3],
20
+ name: key,
21
+ });
22
+ }
50
23
  }
51
- }
52
-
53
- (0, _createClass2.default)(PrecomputedLayout, [{
54
- key: "addRect",
55
- value: function addRect(id) {
56
- var rect = this.rectangles.get(id);
57
-
58
- if (!rect) {
59
- throw new Error("id ".concat(id, " not found in precomputed feature layout"));
60
- } // left, top, right, bottom
61
-
62
-
63
- return rect[1];
24
+ addRect(id) {
25
+ const rect = this.rectangles.get(id);
26
+ if (!rect) {
27
+ throw new Error(`id ${id} not found in precomputed feature layout`);
28
+ }
29
+ // left, top, right, bottom
30
+ return rect[1];
64
31
  }
65
32
  /**
66
33
  * returns a Map of `feature id -> rectangle`
67
34
  */
68
-
69
- }, {
70
- key: "getRectangles",
71
- value: function getRectangles() {
72
- return this.rectangles;
35
+ getRectangles() {
36
+ return this.rectangles;
73
37
  }
74
- }, {
75
- key: "getTotalHeight",
76
- value: function getTotalHeight() {
77
- return this.totalHeight;
38
+ getTotalHeight() {
39
+ return this.totalHeight;
78
40
  }
79
- }, {
80
- key: "collides",
81
- value: function collides(_rect, _top) {
82
- throw new Error('Method not implemented.');
41
+ collides(_rect, _top) {
42
+ throw new Error('Method not implemented.');
83
43
  }
84
- }, {
85
- key: "getByCoord",
86
- value: function getByCoord(x, y) {
87
- var rect = {
88
- minX: x,
89
- minY: y,
90
- maxX: x + 1,
91
- maxY: y + 1
92
- };
93
- return this.rbush.collides(rect) ? this.rbush.search(rect)[0].name : undefined;
44
+ getByCoord(x, y) {
45
+ const rect = { minX: x, minY: y, maxX: x + 1, maxY: y + 1 };
46
+ return this.rbush.collides(rect)
47
+ ? this.rbush.search(rect)[0].name
48
+ : undefined;
94
49
  }
95
- }, {
96
- key: "getByID",
97
- value: function getByID(id) {
98
- return this.rectangles.get(id);
50
+ getByID(id) {
51
+ return this.rectangles.get(id);
99
52
  }
100
- }, {
101
- key: "addRectToBitmap",
102
- value: function addRectToBitmap(_rect, _data) {
103
- throw new Error('Method not implemented.');
53
+ addRectToBitmap(_rect, _data) {
54
+ throw new Error('Method not implemented.');
104
55
  }
105
- }, {
106
- key: "discardRange",
107
- value: function discardRange(_left, _right) {
108
- throw new Error('Method not implemented.');
56
+ discardRange(_left, _right) {
57
+ throw new Error('Method not implemented.');
109
58
  }
110
- }, {
111
- key: "serializeRegion",
112
- value: function serializeRegion(_region) {
113
- throw new Error('Method not implemented.');
59
+ serializeRegion(_region) {
60
+ throw new Error('Method not implemented.');
114
61
  }
115
- }, {
116
- key: "toJSON",
117
- value: function toJSON() {
118
- return {
119
- rectangles: (0, _.objectFromEntries)(this.rectangles),
120
- totalHeight: this.totalHeight,
121
- maxHeightReached: false,
122
- containsNoTransferables: true
123
- };
62
+ toJSON() {
63
+ return {
64
+ rectangles: Object.fromEntries(this.rectangles),
65
+ totalHeight: this.totalHeight,
66
+ maxHeightReached: false,
67
+ containsNoTransferables: true,
68
+ };
124
69
  }
125
- }]);
126
- return PrecomputedLayout;
127
- }();
128
-
129
- exports.default = PrecomputedLayout;
70
+ }
71
+ exports.default = PrecomputedLayout;
@@ -1,60 +1,23 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
-
12
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
-
14
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
-
16
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
-
18
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
-
20
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
21
-
22
- var _MultiLayout2 = _interopRequireDefault(require("./MultiLayout"));
23
-
24
- var _PrecomputedLayout = _interopRequireDefault(require("./PrecomputedLayout"));
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);
32
- throw new Error('invalid layout name');
33
- });
34
-
35
- var PrecomputedMultiLayout = /*#__PURE__*/function (_MultiLayout) {
36
- (0, _inherits2.default)(PrecomputedMultiLayout, _MultiLayout);
37
-
38
- var _super = _createSuper(PrecomputedMultiLayout);
39
-
40
- function PrecomputedMultiLayout(json) {
41
- var _this;
42
-
43
- (0, _classCallCheck2.default)(this, PrecomputedMultiLayout);
44
- // use ThrowingLayout because there is not supposed to be any creation
45
- // of new layouts in a precomputed layout
46
- _this = _super.call(this, ThrowingLayout);
47
- Object.entries(json).forEach(function (_ref) {
48
- var _ref2 = (0, _slicedToArray2.default)(_ref, 2),
49
- layoutName = _ref2[0],
50
- sublayoutJson = _ref2[1];
51
-
52
- _this.subLayouts.set(layoutName, new _PrecomputedLayout.default(sublayoutJson));
53
- });
54
- return _this;
55
- }
56
-
57
- return (0, _createClass2.default)(PrecomputedMultiLayout);
58
- }(_MultiLayout2.default);
59
-
60
- exports.default = PrecomputedMultiLayout;
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const MultiLayout_1 = __importDefault(require("./MultiLayout"));
7
+ const PrecomputedLayout_1 = __importDefault(require("./PrecomputedLayout"));
8
+ class ThrowingLayout {
9
+ constructor() {
10
+ throw new Error('invalid layout name');
11
+ }
12
+ }
13
+ class PrecomputedMultiLayout extends MultiLayout_1.default {
14
+ constructor(json) {
15
+ // use ThrowingLayout because there is not supposed to be any creation
16
+ // of new layouts in a precomputed layout
17
+ super(ThrowingLayout);
18
+ Object.entries(json).forEach(([layoutName, sublayoutJson]) => {
19
+ this.subLayouts.set(layoutName, new PrecomputedLayout_1.default(sublayoutJson));
20
+ });
21
+ }
22
+ }
23
+ exports.default = PrecomputedMultiLayout;