@jbrowse/core 1.5.8 → 1.6.2

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 (155) hide show
  1. package/BaseFeatureWidget/BaseFeatureDetail.js +91 -78
  2. package/BaseFeatureWidget/SequenceFeatureDetails.js +65 -57
  3. package/BaseFeatureWidget/SequenceFeatureDetails.test.js +9 -9
  4. package/BaseFeatureWidget/index.js +1 -1
  5. package/BaseFeatureWidget/index.test.js +4 -4
  6. package/BaseFeatureWidget/util.js +13 -9
  7. package/CorePlugin.js +32 -20
  8. package/Plugin.js +13 -11
  9. package/PluginLoader.js +38 -33
  10. package/PluginManager.d.ts +8 -5
  11. package/PluginManager.js +142 -53
  12. package/ReExports/index.js +4 -4
  13. package/ReExports/list.js +2 -2
  14. package/ReExports/material-ui-colors.js +20 -20
  15. package/ReExports/modules.d.ts +7 -5
  16. package/ReExports/modules.js +51 -47
  17. package/TextSearch/BaseResults.js +34 -24
  18. package/TextSearch/BaseResults.test.js +7 -3
  19. package/TextSearch/TextSearchManager.js +17 -15
  20. package/assemblyManager/assembly.js +39 -34
  21. package/assemblyManager/assemblyConfigSchema.js +2 -2
  22. package/assemblyManager/assemblyManager.js +20 -16
  23. package/assemblyManager/index.js +3 -3
  24. package/babel.config.d.ts +15 -0
  25. package/babel.config.js +19 -0
  26. package/configuration/configurationSchema.js +19 -17
  27. package/configuration/configurationSlot.js +11 -11
  28. package/configuration/configurationSlot.test.js +5 -5
  29. package/configuration/index.d.ts +1 -0
  30. package/configuration/util.js +5 -5
  31. package/data_adapters/BaseAdapter.d.ts +15 -3
  32. package/data_adapters/BaseAdapter.js +216 -62
  33. package/data_adapters/BaseAdapter.test.js +30 -24
  34. package/data_adapters/CytobandAdapter.d.ts +1 -1
  35. package/data_adapters/CytobandAdapter.js +25 -19
  36. package/data_adapters/dataAdapterCache.js +9 -9
  37. package/package.json +3 -3
  38. package/pluggableElementTypes/AdapterType.js +31 -22
  39. package/pluggableElementTypes/ConnectionType.js +28 -18
  40. package/pluggableElementTypes/DisplayType.js +27 -17
  41. package/pluggableElementTypes/InternetAccountType.js +24 -14
  42. package/pluggableElementTypes/PluggableElementBase.js +10 -8
  43. package/pluggableElementTypes/RpcMethodType.d.ts +1 -1
  44. package/pluggableElementTypes/RpcMethodType.js +141 -118
  45. package/pluggableElementTypes/RpcMethodType.test.js +23 -17
  46. package/pluggableElementTypes/TextSearchAdapterType.js +25 -15
  47. package/pluggableElementTypes/TrackType.js +25 -15
  48. package/pluggableElementTypes/ViewType.js +25 -15
  49. package/pluggableElementTypes/WidgetType.js +27 -17
  50. package/pluggableElementTypes/index.js +11 -11
  51. package/pluggableElementTypes/models/BaseConnectionModelFactory.js +5 -5
  52. package/pluggableElementTypes/models/BaseDisplayModel.js +8 -5
  53. package/pluggableElementTypes/models/BaseTrackModel.js +11 -8
  54. package/pluggableElementTypes/models/BaseViewModel.js +3 -3
  55. package/pluggableElementTypes/models/InternetAccountModel.d.ts +1 -1
  56. package/pluggableElementTypes/models/InternetAccountModel.js +5 -5
  57. package/pluggableElementTypes/models/baseConnectionConfig.js +2 -2
  58. package/pluggableElementTypes/models/baseTrackConfig.js +7 -4
  59. package/pluggableElementTypes/models/index.js +4 -4
  60. package/pluggableElementTypes/renderers/BoxRendererType.js +49 -39
  61. package/pluggableElementTypes/renderers/CircularChordRendererType.js +18 -12
  62. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +35 -27
  63. package/pluggableElementTypes/renderers/FeatureRendererType.js +46 -36
  64. package/pluggableElementTypes/renderers/RendererType.js +31 -21
  65. package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +12 -8
  66. package/pluggableElementTypes/renderers/ServerSideRendererType.d.ts +1 -1
  67. package/pluggableElementTypes/renderers/ServerSideRendererType.js +45 -33
  68. package/pluggableElementTypes/renderers/index.js +8 -8
  69. package/pluggableElementTypes/renderers/util/serializableFilterChain.js +10 -8
  70. package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +2 -2
  71. package/rpc/BaseRpcDriver.js +43 -38
  72. package/rpc/BaseRpcDriver.test.js +63 -49
  73. package/rpc/MainThreadRpcDriver.js +32 -22
  74. package/rpc/RpcManager.js +19 -17
  75. package/rpc/WebWorkerRpcDriver.js +38 -28
  76. package/rpc/configSchema.js +2 -2
  77. package/rpc/coreRpcMethods.d.ts +16 -0
  78. package/rpc/coreRpcMethods.js +248 -121
  79. package/rpc/remoteAbortSignals.js +3 -3
  80. package/ui/AboutDialog.js +21 -17
  81. package/ui/App.js +42 -38
  82. package/ui/AssemblySelector.d.ts +1 -1
  83. package/ui/AssemblySelector.js +6 -6
  84. package/ui/Drawer.js +7 -7
  85. package/ui/DrawerWidget.d.ts +1 -1
  86. package/ui/DrawerWidget.js +37 -33
  87. package/ui/DropDownMenu.js +21 -9
  88. package/ui/EditableTypography.js +30 -19
  89. package/ui/ErrorMessage.js +5 -5
  90. package/ui/FactoryResetDialog.js +8 -8
  91. package/ui/FatalErrorDialog.js +29 -12
  92. package/ui/FatalErrorDialog.test.js +11 -11
  93. package/ui/FileSelector/FileSelector.js +42 -32
  94. package/ui/FileSelector/LocalFileChooser.js +9 -9
  95. package/ui/FileSelector/UrlChooser.js +4 -4
  96. package/ui/FileSelector/index.js +4 -4
  97. package/ui/Icons.js +9 -9
  98. package/ui/Logo.js +19 -19
  99. package/ui/Menu.js +46 -35
  100. package/ui/NewSessionCards.js +29 -19
  101. package/ui/PrerenderedCanvas.js +27 -10
  102. package/ui/ResizeHandle.js +17 -10
  103. package/ui/SanitizedHTML.js +5 -5
  104. package/ui/SanitizedHTML.test.js +4 -4
  105. package/ui/Snackbar.js +16 -12
  106. package/ui/SnackbarModel.js +1 -1
  107. package/ui/Tooltip.js +11 -7
  108. package/ui/ViewContainer.d.ts +2 -5
  109. package/ui/ViewContainer.js +44 -49
  110. package/ui/index.d.ts +1 -0
  111. package/ui/index.js +26 -13
  112. package/ui/theme.js +15 -11
  113. package/util/Base1DViewModel.d.ts +14 -12
  114. package/util/Base1DViewModel.js +51 -55
  115. package/util/Base1DViewModel.test.js +5 -5
  116. package/util/QuickLRU.js +31 -27
  117. package/util/aborting.js +26 -16
  118. package/util/analytics.d.ts +1 -0
  119. package/util/analytics.js +15 -7
  120. package/util/blockTypes.js +48 -36
  121. package/util/calculateDynamicBlocks.js +4 -4
  122. package/util/calculateDynamicBlocks.test.js +14 -10
  123. package/util/calculateStaticBlocks.js +1 -1
  124. package/util/calculateStaticBlocks.test.js +15 -15
  125. package/util/compositeMap.js +31 -27
  126. package/util/idMaker.js +4 -4
  127. package/util/index.d.ts +23 -1
  128. package/util/index.js +138 -44
  129. package/util/index.test.js +11 -7
  130. package/util/io/RemoteFileWithRangeCache.js +41 -29
  131. package/util/io/index.js +6 -6
  132. package/util/jexl.js +5 -5
  133. package/util/jexlStrings.js +2 -2
  134. package/util/jexlStrings.test.js +2 -2
  135. package/util/layouts/GranularRectLayout.js +33 -27
  136. package/util/layouts/GranularRectLayout.test.js +10 -10
  137. package/util/layouts/MultiLayout.js +19 -13
  138. package/util/layouts/PrecomputedLayout.js +16 -14
  139. package/util/layouts/PrecomputedMultiLayout.js +23 -17
  140. package/util/layouts/SceneGraph.js +18 -12
  141. package/util/layouts/index.js +6 -6
  142. package/util/offscreenCanvasPonyfill.js +31 -29
  143. package/util/offscreenCanvasUtils.js +6 -6
  144. package/util/range.test.js +20 -20
  145. package/util/rxjs.js +2 -2
  146. package/util/simpleFeature.js +23 -18
  147. package/util/simpleFeature.test.js +3 -3
  148. package/util/stats.d.ts +1 -1
  149. package/util/stats.js +11 -7
  150. package/util/stats.test.js +16 -16
  151. package/util/tracks.js +1 -3
  152. package/util/types/index.d.ts +1 -1
  153. package/util/types/index.js +36 -31
  154. package/util/types/mst.js +19 -15
  155. package/util/when.js +6 -6
@@ -1,30 +1,42 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/interopRequireDefault.js")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.InterRegionPaddingBlock = exports.ElidedBlock = exports.ContentBlock = exports.BlockSet = exports.BaseBlock = void 0;
9
9
 
10
- var _inherits2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/inherits.js"));
10
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
11
11
 
12
- var _createSuper2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/createSuper.js"));
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
13
 
14
- var _objectSpread2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/objectSpread2.js"));
14
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
15
 
16
- var _classCallCheck2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"));
16
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
17
 
18
- var _createClass2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/createClass.js"));
18
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
+
20
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
21
+
22
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
23
+
24
+ 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); }; }
25
+
26
+ 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; } }
27
+
28
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
+
30
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
19
31
 
20
32
  var BlockSet = /*#__PURE__*/function () {
21
33
  function BlockSet() {
22
34
  var blocks = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
23
- (0, _classCallCheck2["default"])(this, BlockSet);
35
+ (0, _classCallCheck2.default)(this, BlockSet);
24
36
  this.blocks = blocks;
25
37
  }
26
38
 
27
- (0, _createClass2["default"])(BlockSet, [{
39
+ (0, _createClass2.default)(BlockSet, [{
28
40
  key: "push",
29
41
  value: function push(block) {
30
42
  if (block instanceof ElidedBlock) {
@@ -120,18 +132,18 @@ var BaseBlock = /*#__PURE__*/function () {
120
132
  */
121
133
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
122
134
  function BaseBlock(data) {
123
- (0, _classCallCheck2["default"])(this, BaseBlock);
124
- this.regionNumber = void 0;
125
- this.reversed = void 0;
126
- this.refName = void 0;
127
- this.start = void 0;
128
- this.end = void 0;
129
- this.assemblyName = void 0;
130
- this.key = void 0;
131
- this.offsetPx = void 0;
132
- this.widthPx = 0;
133
- this.variant = void 0;
134
- this.isLeftEndOfDisplayedRegion = void 0;
135
+ (0, _classCallCheck2.default)(this, BaseBlock);
136
+ (0, _defineProperty2.default)(this, "regionNumber", void 0);
137
+ (0, _defineProperty2.default)(this, "reversed", void 0);
138
+ (0, _defineProperty2.default)(this, "refName", void 0);
139
+ (0, _defineProperty2.default)(this, "start", void 0);
140
+ (0, _defineProperty2.default)(this, "end", void 0);
141
+ (0, _defineProperty2.default)(this, "assemblyName", void 0);
142
+ (0, _defineProperty2.default)(this, "key", void 0);
143
+ (0, _defineProperty2.default)(this, "offsetPx", void 0);
144
+ (0, _defineProperty2.default)(this, "widthPx", 0);
145
+ (0, _defineProperty2.default)(this, "variant", void 0);
146
+ (0, _defineProperty2.default)(this, "isLeftEndOfDisplayedRegion", void 0);
135
147
  Object.assign(this, data);
136
148
  this.assemblyName = data.assemblyName;
137
149
  this.refName = data.refName;
@@ -149,12 +161,12 @@ var BaseBlock = /*#__PURE__*/function () {
149
161
  */
150
162
 
151
163
 
152
- (0, _createClass2["default"])(BaseBlock, [{
164
+ (0, _createClass2.default)(BaseBlock, [{
153
165
  key: "renameReference",
154
166
  value: function renameReference(refName) {
155
167
  if (this.refName && refName !== this.refName) {
156
168
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
157
- return new this.constructor((0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, this), {}, {
169
+ return new this.constructor(_objectSpread(_objectSpread({}, this), {}, {
158
170
  refName: refName
159
171
  }));
160
172
  }
@@ -179,16 +191,16 @@ var BaseBlock = /*#__PURE__*/function () {
179
191
  exports.BaseBlock = BaseBlock;
180
192
 
181
193
  var ContentBlock = /*#__PURE__*/function (_BaseBlock) {
182
- (0, _inherits2["default"])(ContentBlock, _BaseBlock);
194
+ (0, _inherits2.default)(ContentBlock, _BaseBlock);
183
195
 
184
- var _super = (0, _createSuper2["default"])(ContentBlock);
196
+ var _super = _createSuper(ContentBlock);
185
197
 
186
198
  function ContentBlock() {
187
- (0, _classCallCheck2["default"])(this, ContentBlock);
199
+ (0, _classCallCheck2.default)(this, ContentBlock);
188
200
  return _super.apply(this, arguments);
189
201
  }
190
202
 
191
- return (0, _createClass2["default"])(ContentBlock);
203
+ return (0, _createClass2.default)(ContentBlock);
192
204
  }(BaseBlock);
193
205
  /**
194
206
  * marker block representing one or more blocks that are
@@ -199,23 +211,23 @@ var ContentBlock = /*#__PURE__*/function (_BaseBlock) {
199
211
  exports.ContentBlock = ContentBlock;
200
212
 
201
213
  var ElidedBlock = /*#__PURE__*/function (_BaseBlock2) {
202
- (0, _inherits2["default"])(ElidedBlock, _BaseBlock2);
214
+ (0, _inherits2.default)(ElidedBlock, _BaseBlock2);
203
215
 
204
- var _super2 = (0, _createSuper2["default"])(ElidedBlock);
216
+ var _super2 = _createSuper(ElidedBlock);
205
217
 
206
218
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
207
219
  function ElidedBlock(data) {
208
220
  var _this;
209
221
 
210
- (0, _classCallCheck2["default"])(this, ElidedBlock);
222
+ (0, _classCallCheck2.default)(this, ElidedBlock);
211
223
  _this = _super2.call(this, data);
212
- _this.widthPx = void 0;
213
- _this.elidedBlockCount = 0;
224
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "widthPx", void 0);
225
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "elidedBlockCount", 0);
214
226
  _this.widthPx = data.widthPx;
215
227
  return _this;
216
228
  }
217
229
 
218
- (0, _createClass2["default"])(ElidedBlock, [{
230
+ (0, _createClass2.default)(ElidedBlock, [{
219
231
  key: "push",
220
232
  value: function push(otherBlock) {
221
233
  this.elidedBlockCount += 1;
@@ -239,16 +251,16 @@ var ElidedBlock = /*#__PURE__*/function (_BaseBlock2) {
239
251
  exports.ElidedBlock = ElidedBlock;
240
252
 
241
253
  var InterRegionPaddingBlock = /*#__PURE__*/function (_BaseBlock3) {
242
- (0, _inherits2["default"])(InterRegionPaddingBlock, _BaseBlock3);
254
+ (0, _inherits2.default)(InterRegionPaddingBlock, _BaseBlock3);
243
255
 
244
- var _super3 = (0, _createSuper2["default"])(InterRegionPaddingBlock);
256
+ var _super3 = _createSuper(InterRegionPaddingBlock);
245
257
 
246
258
  function InterRegionPaddingBlock() {
247
- (0, _classCallCheck2["default"])(this, InterRegionPaddingBlock);
259
+ (0, _classCallCheck2.default)(this, InterRegionPaddingBlock);
248
260
  return _super3.apply(this, arguments);
249
261
  }
250
262
 
251
- return (0, _createClass2["default"])(InterRegionPaddingBlock);
263
+ return (0, _createClass2.default)(InterRegionPaddingBlock);
252
264
  }(BaseBlock);
253
265
 
254
266
  exports.InterRegionPaddingBlock = InterRegionPaddingBlock;
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/interopRequireDefault.js")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports["default"] = calculateDynamicBlocks;
8
+ exports.default = calculateDynamicBlocks;
9
9
 
10
- var _slicedToArray2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/slicedToArray.js"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
11
 
12
12
  var _range = require("./range");
13
13
 
@@ -64,7 +64,7 @@ function calculateDynamicBlocks(model) {
64
64
  if (displayedRegionLeftPx < windowRightPx && displayedRegionRightPx > windowLeftPx) {
65
65
  // this displayed region overlaps the view, so make a record for it
66
66
  var _intersection = (0, _range.intersection2)(windowLeftPx, windowRightPx, displayedRegionLeftPx, displayedRegionRightPx),
67
- _intersection2 = (0, _slicedToArray2["default"])(_intersection, 2),
67
+ _intersection2 = (0, _slicedToArray2.default)(_intersection, 2),
68
68
  leftPx = _intersection2[0],
69
69
  rightPx = _intersection2[1];
70
70
 
@@ -1,11 +1,15 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/interopRequireDefault.js")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _objectSpread2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/objectSpread2.js"));
5
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
6
 
7
7
  var _calculateDynamicBlocks = _interopRequireDefault(require("./calculateDynamicBlocks"));
8
8
 
9
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10
+
11
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12
+
9
13
  var ctgA = {
10
14
  assemblyName: 'test',
11
15
  refName: 'ctgA',
@@ -13,7 +17,7 @@ var ctgA = {
13
17
  end: 50000
14
18
  };
15
19
  test('one', function () {
16
- expect((0, _calculateDynamicBlocks["default"])({
20
+ expect((0, _calculateDynamicBlocks.default)({
17
21
  offsetPx: 0,
18
22
  width: 200,
19
23
  displayedRegions: [ctgA],
@@ -23,10 +27,10 @@ test('one', function () {
23
27
  }).getBlocks()).toMatchSnapshot();
24
28
  });
25
29
  test('two', function () {
26
- expect((0, _calculateDynamicBlocks["default"])({
30
+ expect((0, _calculateDynamicBlocks.default)({
27
31
  offsetPx: 0,
28
32
  width: 200,
29
- displayedRegions: [(0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, ctgA), {}, {
33
+ displayedRegions: [_objectSpread(_objectSpread({}, ctgA), {}, {
30
34
  reversed: true
31
35
  })],
32
36
  bpPerPx: 1,
@@ -35,10 +39,10 @@ test('two', function () {
35
39
  }).getBlocks()).toMatchSnapshot();
36
40
  });
37
41
  test('three', function () {
38
- expect((0, _calculateDynamicBlocks["default"])({
42
+ expect((0, _calculateDynamicBlocks.default)({
39
43
  offsetPx: -100,
40
44
  width: 200,
41
- displayedRegions: [(0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, ctgA), {}, {
45
+ displayedRegions: [_objectSpread(_objectSpread({}, ctgA), {}, {
42
46
  reversed: true
43
47
  })],
44
48
  bpPerPx: 1,
@@ -47,7 +51,7 @@ test('three', function () {
47
51
  }).getBlocks()).toMatchSnapshot();
48
52
  });
49
53
  test('four', function () {
50
- expect((0, _calculateDynamicBlocks["default"])({
54
+ expect((0, _calculateDynamicBlocks.default)({
51
55
  offsetPx: -100,
52
56
  width: 350,
53
57
  displayedRegions: [ctgA],
@@ -57,10 +61,10 @@ test('four', function () {
57
61
  }).getBlocks()).toMatchSnapshot();
58
62
  });
59
63
  test('five', function () {
60
- expect((0, _calculateDynamicBlocks["default"])({
64
+ expect((0, _calculateDynamicBlocks.default)({
61
65
  offsetPx: 521,
62
66
  width: 927,
63
- displayedRegions: [(0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, ctgA), {}, {
67
+ displayedRegions: [_objectSpread(_objectSpread({}, ctgA), {}, {
64
68
  reversed: false
65
69
  })],
66
70
  bpPerPx: 0.05,
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports["default"] = calculateStaticBlocks;
6
+ exports.default = calculateStaticBlocks;
7
7
 
8
8
  var _ = require(".");
9
9
 
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/interopRequireDefault.js")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  var _calculateStaticBlocks = _interopRequireDefault(require("./calculateStaticBlocks"));
6
6
 
7
7
  describe('block calculation', function () {
8
8
  it('can calculate some blocks 1', function () {
9
- var blocks1 = (0, _calculateStaticBlocks["default"])({
9
+ var blocks1 = (0, _calculateStaticBlocks.default)({
10
10
  bpPerPx: 1,
11
11
  width: 800,
12
12
  offsetPx: 0,
@@ -19,7 +19,7 @@ describe('block calculation', function () {
19
19
  minimumBlockWidth: 20,
20
20
  interRegionPaddingWidth: 2
21
21
  });
22
- var blocks2 = (0, _calculateStaticBlocks["default"])({
22
+ var blocks2 = (0, _calculateStaticBlocks.default)({
23
23
  bpPerPx: 1,
24
24
  width: 800,
25
25
  offsetPx: 0,
@@ -36,7 +36,7 @@ describe('block calculation', function () {
36
36
  expect(blocks1).toEqual(blocks2);
37
37
  });
38
38
  it('can calculate some blocks 2', function () {
39
- var blocks = (0, _calculateStaticBlocks["default"])({
39
+ var blocks = (0, _calculateStaticBlocks.default)({
40
40
  bpPerPx: 1,
41
41
  width: 800,
42
42
  offsetPx: 30,
@@ -57,7 +57,7 @@ describe('block calculation', function () {
57
57
  expect(blocks).toMatchSnapshot();
58
58
  });
59
59
  it('can calculate some blocks (should be empty because offscreen to the right)', function () {
60
- var blockSet = (0, _calculateStaticBlocks["default"])({
60
+ var blockSet = (0, _calculateStaticBlocks.default)({
61
61
  bpPerPx: 1,
62
62
  width: 800,
63
63
  offsetPx: 2000,
@@ -78,7 +78,7 @@ describe('block calculation', function () {
78
78
  expect(blockSet.getBlocks()).toEqual([]);
79
79
  });
80
80
  it('can calculate some blocks (should be empty because offscreen to the left)', function () {
81
- var blockSet = (0, _calculateStaticBlocks["default"])({
81
+ var blockSet = (0, _calculateStaticBlocks.default)({
82
82
  bpPerPx: 1,
83
83
  width: 800,
84
84
  offsetPx: -2000,
@@ -99,7 +99,7 @@ describe('block calculation', function () {
99
99
  expect(blockSet.getBlocks()).toEqual([]);
100
100
  });
101
101
  it('can calculate some blocks 5', function () {
102
- var blocks = (0, _calculateStaticBlocks["default"])({
102
+ var blocks = (0, _calculateStaticBlocks.default)({
103
103
  bpPerPx: 1,
104
104
  width: 800,
105
105
  offsetPx: 5000,
@@ -120,7 +120,7 @@ describe('block calculation', function () {
120
120
  expect(blocks).toMatchSnapshot();
121
121
  });
122
122
  it('can calculate some blocks 6', function () {
123
- var blockSet = (0, _calculateStaticBlocks["default"])({
123
+ var blockSet = (0, _calculateStaticBlocks.default)({
124
124
  bpPerPx: 1,
125
125
  width: 800,
126
126
  offsetPx: 0,
@@ -142,7 +142,7 @@ describe('block calculation', function () {
142
142
  expect(blockSet.blocks[1].offsetPx).toBe(0);
143
143
  });
144
144
  it('can calculate some blocks 7', function () {
145
- var blocks = (0, _calculateStaticBlocks["default"])({
145
+ var blocks = (0, _calculateStaticBlocks.default)({
146
146
  bpPerPx: 1,
147
147
  width: 800,
148
148
  offsetPx: 801,
@@ -163,7 +163,7 @@ describe('block calculation', function () {
163
163
  expect(blocks).toMatchSnapshot();
164
164
  });
165
165
  it('can calculate some blocks 8', function () {
166
- var blocks = (0, _calculateStaticBlocks["default"])({
166
+ var blocks = (0, _calculateStaticBlocks.default)({
167
167
  bpPerPx: 1,
168
168
  width: 800,
169
169
  offsetPx: 1600,
@@ -184,7 +184,7 @@ describe('block calculation', function () {
184
184
  expect(blocks).toMatchSnapshot();
185
185
  });
186
186
  it('can calculate some blocks 9', function () {
187
- var blockSet = (0, _calculateStaticBlocks["default"])({
187
+ var blockSet = (0, _calculateStaticBlocks.default)({
188
188
  width: 800,
189
189
  offsetPx: 1069,
190
190
  bpPerPx: 2,
@@ -205,7 +205,7 @@ describe('block calculation', function () {
205
205
  expect(blockSet).toMatchSnapshot();
206
206
  });
207
207
  it('can calculate some blocks 10', function () {
208
- var blockSet = (0, _calculateStaticBlocks["default"])({
208
+ var blockSet = (0, _calculateStaticBlocks.default)({
209
209
  width: 800,
210
210
  offsetPx: 0,
211
211
  bpPerPx: 0.05,
@@ -230,7 +230,7 @@ describe('block calculation', function () {
230
230
  });
231
231
  describe('reverse block calculation', function () {
232
232
  test('1', function () {
233
- var blocks = (0, _calculateStaticBlocks["default"])({
233
+ var blocks = (0, _calculateStaticBlocks.default)({
234
234
  bpPerPx: 1,
235
235
  width: 800,
236
236
  offsetPx: 0,
@@ -249,7 +249,7 @@ describe('reverse block calculation', function () {
249
249
  });
250
250
  describe('reversed displayed regions', function () {
251
251
  test('without elided region', function () {
252
- var blocks = (0, _calculateStaticBlocks["default"])({
252
+ var blocks = (0, _calculateStaticBlocks.default)({
253
253
  bpPerPx: 1,
254
254
  width: 800,
255
255
  offsetPx: 0,
@@ -272,7 +272,7 @@ describe('reversed displayed regions', function () {
272
272
  expect(blocks).toMatchSnapshot();
273
273
  });
274
274
  test('with elided region', function () {
275
- var blocks = (0, _calculateStaticBlocks["default"])({
275
+ var blocks = (0, _calculateStaticBlocks.default)({
276
276
  bpPerPx: 1,
277
277
  width: 800,
278
278
  offsetPx: 0,
@@ -1,32 +1,36 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/interopRequireDefault.js")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports["default"] = void 0;
8
+ exports.default = void 0;
9
9
 
10
- var _index = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/regenerator/index.js"));
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
11
 
12
- var _createForOfIteratorHelper2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js"));
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
13
 
14
- var _classCallCheck2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/classCallCheck.js"));
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
15
 
16
- var _createClass2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/createClass.js"));
16
+ 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; } } }; }
17
+
18
+ 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); }
19
+
20
+ 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
21
 
18
22
  // takes an array or Map or Set (anything iterable with values()) of Maps
19
23
  // and lets you query them as one Map
20
24
  var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
21
25
  function CompositeMap(submaps) {
22
- (0, _classCallCheck2["default"])(this, CompositeMap);
26
+ (0, _classCallCheck2.default)(this, CompositeMap);
23
27
  this.submaps = submaps;
24
28
  }
25
29
 
26
- (0, _createClass2["default"])(CompositeMap, [{
30
+ (0, _createClass2.default)(CompositeMap, [{
27
31
  key: "has",
28
32
  value: function has(id) {
29
- var _iterator = (0, _createForOfIteratorHelper2["default"])(this.submaps.values()),
33
+ var _iterator = _createForOfIteratorHelper(this.submaps.values()),
30
34
  _step;
31
35
 
32
36
  try {
@@ -48,7 +52,7 @@ var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
48
52
  }, {
49
53
  key: "get",
50
54
  value: function get(id) {
51
- var _iterator2 = (0, _createForOfIteratorHelper2["default"])(this.submaps.values()),
55
+ var _iterator2 = _createForOfIteratorHelper(this.submaps.values()),
52
56
  _step2;
53
57
 
54
58
  try {
@@ -69,14 +73,14 @@ var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
69
73
  }
70
74
  }, {
71
75
  key: "values",
72
- value: /*#__PURE__*/_index["default"].mark(function values() {
76
+ value: /*#__PURE__*/_regenerator.default.mark(function values() {
73
77
  var _iterator3, _step3, key;
74
78
 
75
- return _index["default"].wrap(function values$(_context) {
79
+ return _regenerator.default.wrap(function values$(_context) {
76
80
  while (1) {
77
81
  switch (_context.prev = _context.next) {
78
82
  case 0:
79
- _iterator3 = (0, _createForOfIteratorHelper2["default"])(this.keys());
83
+ _iterator3 = _createForOfIteratorHelper(this.keys());
80
84
  _context.prev = 1;
81
85
 
82
86
  _iterator3.s();
@@ -121,20 +125,20 @@ var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
121
125
  })
122
126
  }, {
123
127
  key: "keys",
124
- value: /*#__PURE__*/_index["default"].mark(function keys() {
128
+ value: /*#__PURE__*/_regenerator.default.mark(function keys() {
125
129
  var keys, _iterator4, _step4, submap, _iterator6, _step6, key, _iterator5, _step5, _key;
126
130
 
127
- return _index["default"].wrap(function keys$(_context2) {
131
+ return _regenerator.default.wrap(function keys$(_context2) {
128
132
  while (1) {
129
133
  switch (_context2.prev = _context2.next) {
130
134
  case 0:
131
135
  keys = new Set();
132
- _iterator4 = (0, _createForOfIteratorHelper2["default"])(this.submaps.values());
136
+ _iterator4 = _createForOfIteratorHelper(this.submaps.values());
133
137
 
134
138
  try {
135
139
  for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
136
140
  submap = _step4.value;
137
- _iterator6 = (0, _createForOfIteratorHelper2["default"])(submap.keys());
141
+ _iterator6 = _createForOfIteratorHelper(submap.keys());
138
142
 
139
143
  try {
140
144
  for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
@@ -153,7 +157,7 @@ var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
153
157
  _iterator4.f();
154
158
  }
155
159
 
156
- _iterator5 = (0, _createForOfIteratorHelper2["default"])(keys);
160
+ _iterator5 = _createForOfIteratorHelper(keys);
157
161
  _context2.prev = 4;
158
162
 
159
163
  _iterator5.s();
@@ -199,14 +203,14 @@ var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
199
203
  }, {
200
204
  key: "find",
201
205
  value: function find(f) {
202
- var _iterator7 = (0, _createForOfIteratorHelper2["default"])(this.submaps.values()),
206
+ var _iterator7 = _createForOfIteratorHelper(this.submaps.values()),
203
207
  _step7;
204
208
 
205
209
  try {
206
210
  for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
207
211
  var submap = _step7.value;
208
212
 
209
- var _iterator8 = (0, _createForOfIteratorHelper2["default"])(submap.values()),
213
+ var _iterator8 = _createForOfIteratorHelper(submap.values()),
210
214
  _step8;
211
215
 
212
216
  try {
@@ -234,14 +238,14 @@ var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
234
238
  }
235
239
  }, {
236
240
  key: _Symbol$iterator,
237
- value: /*#__PURE__*/_index["default"].mark(function value() {
241
+ value: /*#__PURE__*/_regenerator.default.mark(function value() {
238
242
  var _iterator9, _step9, key;
239
243
 
240
- return _index["default"].wrap(function value$(_context3) {
244
+ return _regenerator.default.wrap(function value$(_context3) {
241
245
  while (1) {
242
246
  switch (_context3.prev = _context3.next) {
243
247
  case 0:
244
- _iterator9 = (0, _createForOfIteratorHelper2["default"])(this.keys());
248
+ _iterator9 = _createForOfIteratorHelper(this.keys());
245
249
  _context3.prev = 1;
246
250
 
247
251
  _iterator9.s();
@@ -286,14 +290,14 @@ var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
286
290
  })
287
291
  }, {
288
292
  key: "entries",
289
- value: /*#__PURE__*/_index["default"].mark(function entries() {
293
+ value: /*#__PURE__*/_regenerator.default.mark(function entries() {
290
294
  var _iterator10, _step10, k;
291
295
 
292
- return _index["default"].wrap(function entries$(_context4) {
296
+ return _regenerator.default.wrap(function entries$(_context4) {
293
297
  while (1) {
294
298
  switch (_context4.prev = _context4.next) {
295
299
  case 0:
296
- _iterator10 = (0, _createForOfIteratorHelper2["default"])(this.keys());
300
+ _iterator10 = _createForOfIteratorHelper(this.keys());
297
301
  _context4.prev = 1;
298
302
 
299
303
  _iterator10.s();
@@ -340,4 +344,4 @@ var CompositeMap = /*#__PURE__*/function (_Symbol$iterator) {
340
344
  return CompositeMap;
341
345
  }(Symbol.iterator);
342
346
 
343
- exports["default"] = CompositeMap;
347
+ exports.default = CompositeMap;
package/util/idMaker.js CHANGED
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/interopRequireDefault.js")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports["default"] = idMaker;
8
+ exports.default = idMaker;
9
9
 
10
- var _typeof2 = _interopRequireDefault(require("/data/jbrowse-components2/node_modules/@babel/runtime/helpers/esm/typeof.js"));
10
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
11
 
12
12
  var _ = require("./");
13
13
 
@@ -26,7 +26,7 @@ function idMaker(args) {
26
26
  break;
27
27
  }
28
28
 
29
- if ((0, _typeof2["default"])(args[key]) === 'object' && args[key]) {
29
+ if ((0, _typeof2.default)(args[key]) === 'object' && args[key]) {
30
30
  id += idMaker(args[key], id);
31
31
  } else {
32
32
  id += "".concat(key, "-").concat(args[key], ";");
package/util/index.d.ts CHANGED
@@ -304,6 +304,28 @@ export declare const defaultCodonTable: {
304
304
  export declare function generateCodonTable(table: any): {
305
305
  [key: string]: string;
306
306
  };
307
- export declare function updateStatus(statusMsg: string, statusCallback: Function, fn: Function): Promise<any>;
307
+ export declare function updateStatus<U>(msg: string, cb: (arg: string) => void, fn: () => U): Promise<U>;
308
308
  export declare function hashCode(str: string): number;
309
309
  export declare function objectHash(obj: Record<string, any>): string;
310
+ export declare function bytesForRegions(regions: Region[], index: any): Promise<number>;
311
+ export declare type ViewSnap = {
312
+ bpPerPx: number;
313
+ interRegionPaddingWidth: number;
314
+ minimumBlockWidth: number;
315
+ width: number;
316
+ displayedRegions: {
317
+ start: number;
318
+ end: number;
319
+ refName: string;
320
+ reversed: boolean;
321
+ }[];
322
+ };
323
+ export declare function viewBpToPx({ refName, coord, regionNumber, self, }: {
324
+ refName: string;
325
+ coord: number;
326
+ regionNumber?: number;
327
+ self: ViewSnap;
328
+ }): {
329
+ index: number;
330
+ offsetPx: number;
331
+ } | undefined;