@jbrowse/core 1.5.9 → 1.6.3

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 +64 -56
  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 +37 -32
  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 +16 -14
  20. package/assemblyManager/assembly.js +38 -33
  21. package/assemblyManager/assemblyConfigSchema.js +2 -2
  22. package/assemblyManager/assemblyManager.js +19 -15
  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 +215 -61
  33. package/data_adapters/BaseAdapter.test.js +29 -23
  34. package/data_adapters/CytobandAdapter.d.ts +1 -1
  35. package/data_adapters/CytobandAdapter.js +24 -18
  36. package/data_adapters/dataAdapterCache.js +8 -8
  37. package/package.json +3 -3
  38. package/pluggableElementTypes/AdapterType.js +30 -21
  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 +140 -117
  45. package/pluggableElementTypes/RpcMethodType.test.js +22 -16
  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 +4 -4
  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 +48 -38
  61. package/pluggableElementTypes/renderers/CircularChordRendererType.js +18 -12
  62. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +34 -26
  63. package/pluggableElementTypes/renderers/FeatureRendererType.js +45 -35
  64. package/pluggableElementTypes/renderers/RendererType.js +30 -20
  65. package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +12 -8
  66. package/pluggableElementTypes/renderers/ServerSideRendererType.d.ts +1 -1
  67. package/pluggableElementTypes/renderers/ServerSideRendererType.js +44 -32
  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 +42 -37
  72. package/rpc/BaseRpcDriver.test.js +62 -48
  73. package/rpc/MainThreadRpcDriver.js +31 -21
  74. package/rpc/RpcManager.js +18 -16
  75. package/rpc/WebWorkerRpcDriver.js +37 -27
  76. package/rpc/configSchema.js +2 -2
  77. package/rpc/coreRpcMethods.d.ts +16 -0
  78. package/rpc/coreRpcMethods.js +247 -120
  79. package/rpc/remoteAbortSignals.js +3 -3
  80. package/ui/AboutDialog.js +20 -16
  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 +10 -10
  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 +30 -26
  117. package/util/aborting.js +25 -15
  118. package/util/analytics.d.ts +1 -0
  119. package/util/analytics.js +14 -6
  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 +30 -26
  126. package/util/idMaker.js +4 -4
  127. package/util/index.d.ts +23 -1
  128. package/util/index.js +135 -41
  129. package/util/index.test.js +11 -7
  130. package/util/io/RemoteFileWithRangeCache.js +40 -28
  131. package/util/io/index.js +5 -5
  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 +30 -28
  143. package/util/offscreenCanvasUtils.js +5 -5
  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 +10 -6
  150. package/util/stats.test.js +15 -15
  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 +5 -5
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  var _Base1DViewModel = _interopRequireDefault(require("./Base1DViewModel"));
6
6
 
7
7
  test('create Base1DView and set displayedRegions', function () {
8
- var model = _Base1DViewModel["default"].create({
8
+ var model = _Base1DViewModel.default.create({
9
9
  bpPerPx: 1,
10
10
  offsetPx: 0
11
11
  });
@@ -28,7 +28,7 @@ test('create Base1DView and set displayedRegions', function () {
28
28
  expect(model.displayedRegions).toBeTruthy();
29
29
  });
30
30
  test('Able to set bpPerPx, width and calculate widths', function () {
31
- var model = _Base1DViewModel["default"].create({
31
+ var model = _Base1DViewModel.default.create({
32
32
  bpPerPx: 0,
33
33
  offsetPx: 0
34
34
  });
@@ -56,7 +56,7 @@ test('Able to set bpPerPx, width and calculate widths', function () {
56
56
  expect(model.minimumBlockWidth).toEqual(0);
57
57
  });
58
58
  test('Able to set and showAll Regions', function () {
59
- var model = _Base1DViewModel["default"].create({
59
+ var model = _Base1DViewModel.default.create({
60
60
  bpPerPx: 0,
61
61
  offsetPx: 0
62
62
  });
@@ -85,7 +85,7 @@ test('Able to set and showAll Regions', function () {
85
85
  expect(model.bpPerPx).toEqual(53);
86
86
  });
87
87
  test('Navigate to displayedRegions', function () {
88
- var model = _Base1DViewModel["default"].create({
88
+ var model = _Base1DViewModel.default.create({
89
89
  bpPerPx: 0,
90
90
  offsetPx: 0
91
91
  });
package/util/QuickLRU.js CHANGED
@@ -1,21 +1,25 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["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
10
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
11
 
12
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
13
 
14
- var _createForOfIteratorHelper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createForOfIteratorHelper"));
14
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
15
 
16
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
16
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
17
 
18
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
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; }
19
23
 
20
24
  /* eslint-disable no-underscore-dangle */
21
25
 
@@ -27,7 +31,7 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/c
27
31
  var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
28
32
  function QuickLRU() {
29
33
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
30
- (0, _classCallCheck2["default"])(this, QuickLRU);
34
+ (0, _classCallCheck2.default)(this, QuickLRU);
31
35
 
32
36
  if (!(options.maxSize && options.maxSize > 0)) {
33
37
  throw new TypeError('`maxSize` must be a number greater than 0');
@@ -39,7 +43,7 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
39
43
  this._size = 0;
40
44
  }
41
45
 
42
- (0, _createClass2["default"])(QuickLRU, [{
46
+ (0, _createClass2.default)(QuickLRU, [{
43
47
  key: "_set",
44
48
  value: function _set(key, value) {
45
49
  this.cache.set(key, value);
@@ -60,7 +64,7 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
60
64
 
61
65
  if (this.oldCache.has(key)) {
62
66
  var value = this.oldCache.get(key);
63
- this.oldCache["delete"](key);
67
+ this.oldCache.delete(key);
64
68
 
65
69
  this._set(key, value);
66
70
 
@@ -101,13 +105,13 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
101
105
  }, {
102
106
  key: "delete",
103
107
  value: function _delete(key) {
104
- var deleted = this.cache["delete"](key);
108
+ var deleted = this.cache.delete(key);
105
109
 
106
110
  if (deleted) {
107
111
  this._size -= 1;
108
112
  }
109
113
 
110
- return this.oldCache["delete"](key) || deleted;
114
+ return this.oldCache.delete(key) || deleted;
111
115
  }
112
116
  }, {
113
117
  key: "clear",
@@ -118,14 +122,14 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
118
122
  }
119
123
  }, {
120
124
  key: "keys",
121
- value: /*#__PURE__*/_regenerator["default"].mark(function keys() {
125
+ value: /*#__PURE__*/_regenerator.default.mark(function keys() {
122
126
  var _iterator, _step, _step$value, key;
123
127
 
124
- return _regenerator["default"].wrap(function keys$(_context) {
128
+ return _regenerator.default.wrap(function keys$(_context) {
125
129
  while (1) {
126
130
  switch (_context.prev = _context.next) {
127
131
  case 0:
128
- _iterator = (0, _createForOfIteratorHelper2["default"])(this);
132
+ _iterator = _createForOfIteratorHelper(this);
129
133
  _context.prev = 1;
130
134
 
131
135
  _iterator.s();
@@ -136,7 +140,7 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
136
140
  break;
137
141
  }
138
142
 
139
- _step$value = (0, _slicedToArray2["default"])(_step.value, 1), key = _step$value[0];
143
+ _step$value = (0, _slicedToArray2.default)(_step.value, 1), key = _step$value[0];
140
144
  _context.next = 7;
141
145
  return key;
142
146
 
@@ -170,14 +174,14 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
170
174
  })
171
175
  }, {
172
176
  key: "values",
173
- value: /*#__PURE__*/_regenerator["default"].mark(function values() {
177
+ value: /*#__PURE__*/_regenerator.default.mark(function values() {
174
178
  var _iterator2, _step2, _step2$value, value;
175
179
 
176
- return _regenerator["default"].wrap(function values$(_context2) {
180
+ return _regenerator.default.wrap(function values$(_context2) {
177
181
  while (1) {
178
182
  switch (_context2.prev = _context2.next) {
179
183
  case 0:
180
- _iterator2 = (0, _createForOfIteratorHelper2["default"])(this);
184
+ _iterator2 = _createForOfIteratorHelper(this);
181
185
  _context2.prev = 1;
182
186
 
183
187
  _iterator2.s();
@@ -188,7 +192,7 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
188
192
  break;
189
193
  }
190
194
 
191
- _step2$value = (0, _slicedToArray2["default"])(_step2.value, 2), value = _step2$value[1];
195
+ _step2$value = (0, _slicedToArray2.default)(_step2.value, 2), value = _step2$value[1];
192
196
  _context2.next = 7;
193
197
  return value;
194
198
 
@@ -222,14 +226,14 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
222
226
  })
223
227
  }, {
224
228
  key: _Symbol$iterator,
225
- value: /*#__PURE__*/_regenerator["default"].mark(function value() {
229
+ value: /*#__PURE__*/_regenerator.default.mark(function value() {
226
230
  var _iterator3, _step3, item, _iterator4, _step4, _item, _item2, key;
227
231
 
228
- return _regenerator["default"].wrap(function value$(_context3) {
232
+ return _regenerator.default.wrap(function value$(_context3) {
229
233
  while (1) {
230
234
  switch (_context3.prev = _context3.next) {
231
235
  case 0:
232
- _iterator3 = (0, _createForOfIteratorHelper2["default"])(this.cache);
236
+ _iterator3 = _createForOfIteratorHelper(this.cache);
233
237
  _context3.prev = 1;
234
238
 
235
239
  _iterator3.s();
@@ -266,7 +270,7 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
266
270
  return _context3.finish(14);
267
271
 
268
272
  case 17:
269
- _iterator4 = (0, _createForOfIteratorHelper2["default"])(this.oldCache);
273
+ _iterator4 = _createForOfIteratorHelper(this.oldCache);
270
274
  _context3.prev = 18;
271
275
 
272
276
  _iterator4.s();
@@ -278,7 +282,7 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
278
282
  }
279
283
 
280
284
  _item = _step4.value;
281
- _item2 = (0, _slicedToArray2["default"])(_item, 1), key = _item2[0];
285
+ _item2 = (0, _slicedToArray2.default)(_item, 1), key = _item2[0];
282
286
 
283
287
  if (this.cache.has(key)) {
284
288
  _context3.next = 26;
@@ -321,7 +325,7 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
321
325
  get: function get() {
322
326
  var oldCacheSize = 0;
323
327
 
324
- var _iterator5 = (0, _createForOfIteratorHelper2["default"])(this.oldCache.keys()),
328
+ var _iterator5 = _createForOfIteratorHelper(this.oldCache.keys()),
325
329
  _step5;
326
330
 
327
331
  try {
@@ -345,4 +349,4 @@ var QuickLRU = /*#__PURE__*/function (_Symbol$iterator) {
345
349
  }(Symbol.iterator);
346
350
 
347
351
  var _default = QuickLRU;
348
- exports["default"] = _default;
352
+ exports.default = _default;
package/util/aborting.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -13,41 +13,51 @@ exports.observeAbortSignal = observeAbortSignal;
13
13
 
14
14
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
15
15
 
16
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
16
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
17
17
 
18
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
18
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
19
 
20
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
20
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
21
21
 
22
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/inherits"));
22
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
23
23
 
24
- var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createSuper"));
24
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
25
25
 
26
- var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/wrapNativeSuper"));
26
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
27
+
28
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
29
+
30
+ var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
31
+
32
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
27
33
 
28
34
  var _rxjs = require("rxjs");
29
35
 
36
+ 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); }; }
37
+
38
+ 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; } }
39
+
30
40
  var AbortError = /*#__PURE__*/function (_Error) {
31
- (0, _inherits2["default"])(AbortError, _Error);
41
+ (0, _inherits2.default)(AbortError, _Error);
32
42
 
33
- var _super = (0, _createSuper2["default"])(AbortError);
43
+ var _super = _createSuper(AbortError);
34
44
 
35
45
  function AbortError() {
36
46
  var _this;
37
47
 
38
- (0, _classCallCheck2["default"])(this, AbortError);
48
+ (0, _classCallCheck2.default)(this, AbortError);
39
49
 
40
50
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
41
51
  args[_key] = arguments[_key];
42
52
  }
43
53
 
44
54
  _this = _super.call.apply(_super, [this].concat(args));
45
- _this.code = void 0;
55
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "code", void 0);
46
56
  return _this;
47
57
  }
48
58
 
49
- return (0, _createClass2["default"])(AbortError);
50
- }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(Error));
59
+ return (0, _createClass2.default)(AbortError);
60
+ }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
51
61
  /**
52
62
  * properly check if the given AbortSignal is aborted.
53
63
  * per the standard, if the signal reads as aborted,
@@ -92,8 +102,8 @@ function abortBreakPoint(_x) {
92
102
  }
93
103
 
94
104
  function _abortBreakPoint() {
95
- _abortBreakPoint = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(signal) {
96
- return _regenerator["default"].wrap(function _callee$(_context) {
105
+ _abortBreakPoint = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(signal) {
106
+ return _regenerator.default.wrap(function _callee$(_context) {
97
107
  while (1) {
98
108
  switch (_context.prev = _context.next) {
99
109
  case 0:
@@ -1,2 +1,3 @@
1
1
  export declare function writeAWSAnalytics(rootModel: any, initialTimeStamp: number, sessionQuery?: string | null): Promise<void>;
2
2
  export declare function writeGAAnalytics(rootModel: any, initialTimestamp: number): Promise<void>;
3
+ export declare function doAnalytics(rootModel: any, initialTimestamp: number, initialSessionQuery: string | null | undefined): void;
package/util/analytics.js CHANGED
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["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.doAnalytics = doAnalytics;
8
9
  exports.writeAWSAnalytics = writeAWSAnalytics;
9
10
  exports.writeGAAnalytics = writeGAAnalytics;
10
11
 
11
12
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
12
13
 
13
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
14
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
14
15
 
15
16
  var _configuration = require("../configuration");
16
17
 
@@ -22,9 +23,9 @@ function writeAWSAnalytics(_x, _x2, _x3) {
22
23
  }
23
24
 
24
25
  function _writeAWSAnalytics() {
25
- _writeAWSAnalytics = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(rootModel, initialTimeStamp, sessionQuery) {
26
+ _writeAWSAnalytics = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(rootModel, initialTimeStamp, sessionQuery) {
26
27
  var url, multiAssemblyTracks, savedSessionCount, config, session, ver, tracks, assemblies, plugins, stats, qs;
27
- return _regenerator["default"].wrap(function _callee$(_context) {
28
+ return _regenerator.default.wrap(function _callee$(_context) {
28
29
  while (1) {
29
30
  switch (_context.prev = _context.next) {
30
31
  case 0:
@@ -104,11 +105,11 @@ function writeGAAnalytics(_x4, _x5) {
104
105
  }
105
106
 
106
107
  function _writeGAAnalytics() {
107
- _writeGAAnalytics = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(rootModel, initialTimestamp) {
108
+ _writeGAAnalytics = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(rootModel, initialTimestamp) {
108
109
  var _rootModel$jbrowse$pl;
109
110
 
110
111
  var jbrowseUser, stats, analyticsScript, gaData, googleDimensions, analyticsScriptNode;
111
- return _regenerator["default"].wrap(function _callee2$(_context2) {
112
+ return _regenerator.default.wrap(function _callee2$(_context2) {
112
113
  while (1) {
113
114
  switch (_context2.prev = _context2.next) {
114
115
  case 0:
@@ -148,4 +149,11 @@ function _writeGAAnalytics() {
148
149
  }, _callee2);
149
150
  }));
150
151
  return _writeGAAnalytics.apply(this, arguments);
152
+ }
153
+
154
+ function doAnalytics(rootModel, initialTimestamp, initialSessionQuery) {
155
+ if (rootModel && !(0, _configuration.readConfObject)(rootModel.jbrowse.configuration, 'disableAnalytics')) {
156
+ writeAWSAnalytics(rootModel, initialTimestamp, initialSessionQuery);
157
+ writeGAAnalytics(rootModel, initialTimestamp);
158
+ }
151
159
  }
@@ -1,30 +1,42 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["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("@babel/runtime/helpers/esm/inherits"));
10
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
11
11
 
12
- var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createSuper"));
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
13
 
14
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
14
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
15
 
16
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
16
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
17
 
18
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
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("@babel/runtime/helpers/interopRequireDefault")["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("@babel/runtime/helpers/esm/slicedToArray"));
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("@babel/runtime/helpers/interopRequireDefault")["default"];
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
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