@jbrowse/core 2.0.1 → 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 (179) hide show
  1. package/BaseFeatureWidget/BaseFeatureDetail.d.ts +6 -0
  2. package/BaseFeatureWidget/BaseFeatureDetail.js +313 -592
  3. package/BaseFeatureWidget/SequenceFeatureDetails.js +213 -479
  4. package/BaseFeatureWidget/index.js +88 -126
  5. package/BaseFeatureWidget/types.js +1 -4
  6. package/BaseFeatureWidget/util.js +40 -75
  7. package/CorePlugin.js +55 -94
  8. package/Plugin.js +9 -34
  9. package/PluginLoader.js +153 -422
  10. package/PluginManager.d.ts +17 -14
  11. package/PluginManager.js +377 -666
  12. package/ReExports/Attributes.js +3 -10
  13. package/ReExports/BaseCard.js +3 -10
  14. package/ReExports/DataGrid.js +5 -12
  15. package/ReExports/FeatureDetails.js +3 -10
  16. package/ReExports/index.js +6 -12
  17. package/ReExports/list.d.ts +5 -0
  18. package/ReExports/list.js +271 -7
  19. package/ReExports/material-ui-colors.js +15 -16
  20. package/ReExports/modules.d.ts +0 -1
  21. package/ReExports/modules.js +453 -798
  22. package/TextSearch/BaseResults.js +51 -123
  23. package/TextSearch/TextSearchManager.js +66 -144
  24. package/assemblyManager/assembly.js +280 -555
  25. package/assemblyManager/assemblyConfigSchema.js +47 -64
  26. package/assemblyManager/assemblyManager.js +126 -272
  27. package/assemblyManager/index.js +9 -22
  28. package/configuration/configurationSchema.js +167 -203
  29. package/configuration/configurationSlot.js +248 -326
  30. package/configuration/index.js +19 -35
  31. package/configuration/util.js +131 -173
  32. package/data_adapters/BaseAdapter.d.ts +2 -2
  33. package/data_adapters/BaseAdapter.js +132 -521
  34. package/data_adapters/CytobandAdapter.js +40 -126
  35. package/data_adapters/dataAdapterCache.js +77 -158
  36. package/package.json +4 -5
  37. package/pluggableElementTypes/AdapterType.js +24 -79
  38. package/pluggableElementTypes/AddTrackWorkflowType.d.ts +17 -0
  39. package/pluggableElementTypes/AddTrackWorkflowType.js +20 -0
  40. package/pluggableElementTypes/ConnectionType.js +22 -65
  41. package/pluggableElementTypes/DisplayType.js +35 -82
  42. package/pluggableElementTypes/InternetAccountType.js +23 -64
  43. package/pluggableElementTypes/PluggableElementBase.js +8 -20
  44. package/pluggableElementTypes/RpcMethodType.js +85 -427
  45. package/pluggableElementTypes/TextSearchAdapterType.js +16 -55
  46. package/pluggableElementTypes/TrackType.js +26 -70
  47. package/pluggableElementTypes/ViewType.js +21 -63
  48. package/pluggableElementTypes/WidgetType.js +21 -64
  49. package/pluggableElementTypes/index.d.ts +4 -3
  50. package/pluggableElementTypes/index.js +42 -125
  51. package/pluggableElementTypes/models/BaseConnectionModelFactory.js +28 -43
  52. package/pluggableElementTypes/models/BaseDisplayModel.js +58 -95
  53. package/pluggableElementTypes/models/BaseTrackModel.js +139 -199
  54. package/pluggableElementTypes/models/BaseViewModel.js +24 -40
  55. package/pluggableElementTypes/models/InternetAccountModel.js +116 -263
  56. package/pluggableElementTypes/models/baseConnectionConfig.js +14 -25
  57. package/pluggableElementTypes/models/baseInternetAccountConfig.js +29 -38
  58. package/pluggableElementTypes/models/baseTrackConfig.js +106 -133
  59. package/pluggableElementTypes/models/index.js +21 -70
  60. package/pluggableElementTypes/renderers/BoxRendererType.js +132 -291
  61. package/pluggableElementTypes/renderers/CircularChordRendererType.js +8 -38
  62. package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +60 -192
  63. package/pluggableElementTypes/renderers/FeatureRendererType.d.ts +0 -2
  64. package/pluggableElementTypes/renderers/FeatureRendererType.js +89 -264
  65. package/pluggableElementTypes/renderers/RendererType.js +31 -105
  66. package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +61 -72
  67. package/pluggableElementTypes/renderers/ServerSideRendererType.js +112 -265
  68. package/pluggableElementTypes/renderers/index.js +19 -62
  69. package/pluggableElementTypes/renderers/util/serializableFilterChain.js +27 -65
  70. package/rpc/BaseRpcDriver.js +169 -405
  71. package/rpc/MainThreadRpcDriver.js +27 -150
  72. package/rpc/RpcManager.js +58 -159
  73. package/rpc/WebWorkerRpcDriver.js +54 -171
  74. package/rpc/configSchema.js +25 -49
  75. package/rpc/coreRpcMethods.js +221 -959
  76. package/rpc/remoteAbortSignals.js +46 -70
  77. package/tsconfig.build.tsbuildinfo +1 -1
  78. package/ui/AboutDialog.js +106 -162
  79. package/ui/App.js +157 -242
  80. package/ui/AssemblySelector.js +59 -120
  81. package/ui/CascadingMenu.js +101 -196
  82. package/ui/ColorPicker.d.ts +16 -0
  83. package/ui/ColorPicker.js +97 -0
  84. package/ui/Drawer.js +28 -61
  85. package/ui/DrawerWidget.js +108 -202
  86. package/ui/DropDownMenu.js +60 -91
  87. package/ui/EditableTypography.js +87 -149
  88. package/ui/ErrorMessage.js +41 -56
  89. package/ui/FactoryResetDialog.js +24 -57
  90. package/ui/FatalErrorDialog.js +59 -91
  91. package/ui/FileSelector/FileSelector.js +123 -189
  92. package/ui/FileSelector/LocalFileChooser.js +44 -75
  93. package/ui/FileSelector/UrlChooser.js +17 -38
  94. package/ui/FileSelector/index.js +6 -12
  95. package/ui/Icons.js +45 -69
  96. package/ui/Logo.js +57 -110
  97. package/ui/Menu.js +232 -354
  98. package/ui/PrerenderedCanvas.js +63 -87
  99. package/ui/ResizeHandle.js +87 -116
  100. package/ui/ReturnToImportFormDialog.js +32 -63
  101. package/ui/SanitizedHTML.js +64 -47
  102. package/ui/Snackbar.js +74 -101
  103. package/ui/SnackbarModel.js +37 -51
  104. package/ui/Tooltip.js +49 -76
  105. package/ui/ViewContainer.js +113 -196
  106. package/ui/colors.d.ts +10 -0
  107. package/ui/colors.js +78 -0
  108. package/ui/index.js +51 -181
  109. package/ui/react-colorful.d.ts +17 -0
  110. package/ui/react-colorful.js +455 -0
  111. package/ui/theme.js +199 -247
  112. package/util/Base1DUtils.js +163 -202
  113. package/util/Base1DViewModel.js +121 -168
  114. package/util/QuickLRU.js +84 -332
  115. package/util/TimeTraveller.d.ts +19 -0
  116. package/util/TimeTraveller.js +86 -0
  117. package/util/aborting.js +49 -127
  118. package/util/analytics.js +91 -154
  119. package/util/blockTypes.js +106 -240
  120. package/util/calculateDynamicBlocks.js +98 -128
  121. package/util/calculateStaticBlocks.js +105 -125
  122. package/util/color/cssColorsLevel4.js +156 -160
  123. package/util/color/index.js +33 -55
  124. package/util/compositeMap.js +49 -333
  125. package/util/formatFastaStrings.js +9 -14
  126. package/util/idMaker.js +18 -31
  127. package/util/index.d.ts +7 -20
  128. package/util/index.js +742 -1188
  129. package/util/io/RemoteFileWithRangeCache.js +88 -257
  130. package/util/io/index.js +95 -169
  131. package/util/jexl.js +60 -115
  132. package/util/jexlStrings.js +24 -29
  133. package/util/layouts/BaseLayout.js +1 -4
  134. package/util/layouts/GranularRectLayout.js +388 -555
  135. package/util/layouts/MultiLayout.js +41 -109
  136. package/util/layouts/PrecomputedLayout.js +56 -112
  137. package/util/layouts/PrecomputedMultiLayout.js +22 -59
  138. package/util/layouts/SceneGraph.js +127 -197
  139. package/util/layouts/index.js +29 -66
  140. package/util/mst-reflection.js +55 -71
  141. package/util/offscreenCanvasPonyfill.js +66 -134
  142. package/util/offscreenCanvasUtils.d.ts +2 -7
  143. package/util/offscreenCanvasUtils.js +49 -146
  144. package/util/range.js +29 -40
  145. package/util/rxjs.js +20 -27
  146. package/util/simpleFeature.js +88 -152
  147. package/util/stats.js +91 -151
  148. package/util/tracks.js +130 -173
  149. package/util/types/index.js +110 -179
  150. package/util/types/mst.js +91 -146
  151. package/util/types/util.js +1 -4
  152. package/util/when.js +54 -101
  153. package/BaseFeatureWidget/SequenceFeatureDetails.test.js +0 -122
  154. package/BaseFeatureWidget/index.test.js +0 -69
  155. package/TextSearch/BaseResults.test.js +0 -42
  156. package/configuration/configurationSchema.test.js +0 -266
  157. package/configuration/configurationSlot.test.js +0 -69
  158. package/configuration/util.test.js +0 -39
  159. package/data_adapters/BaseAdapter.test.js +0 -200
  160. package/declare.d.js +0 -1
  161. package/pluggableElementTypes/RpcMethodType.test.js +0 -118
  162. package/pluggableElementTypes/renderers/declare.d.js +0 -1
  163. package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +0 -20
  164. package/rpc/BaseRpcDriver.test.js +0 -540
  165. package/rpc/declaration.d.js +0 -1
  166. package/ui/FatalErrorDialog.test.js +0 -82
  167. package/ui/SanitizedHTML.test.js +0 -36
  168. package/ui/theme.test.js +0 -92
  169. package/util/Base1DViewModel.test.js +0 -130
  170. package/util/calculateDynamicBlocks.test.js +0 -74
  171. package/util/calculateStaticBlocks.test.js +0 -297
  172. package/util/declare.d.js +0 -1
  173. package/util/formatFastaStrings.test.js +0 -40
  174. package/util/index.test.js +0 -213
  175. package/util/jexlStrings.test.js +0 -48
  176. package/util/layouts/GranularRectLayout.test.js +0 -99
  177. package/util/range.test.js +0 -64
  178. package/util/simpleFeature.test.js +0 -34
  179. package/util/stats.test.js +0 -172
@@ -1 +0,0 @@
1
- "use strict";
@@ -1,20 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _serializableFilterChain = _interopRequireDefault(require("./serializableFilterChain"));
6
-
7
- test('one', function () {
8
- var c = new _serializableFilterChain.default({
9
- filters: ["jexl:feature.y == 2"]
10
- });
11
- expect(c.passes({
12
- y: 1
13
- })).toBe(false);
14
- expect(c.passes({
15
- y: 2
16
- })).toBe(true);
17
- expect(c.toJSON()).toEqual({
18
- filters: ['jexl:feature.y == 2']
19
- });
20
- });
@@ -1,540 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
-
7
- Object.defineProperty(exports, "__esModule", {
8
- value: true
9
- });
10
- exports.MockRendererTimeout = exports.MockRendererShort = void 0;
11
-
12
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
23
-
24
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
25
-
26
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
27
-
28
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
29
-
30
- var _PluginManager = _interopRequireDefault(require("../PluginManager"));
31
-
32
- var _util = require("../util");
33
-
34
- var _BaseRpcDriver2 = _interopRequireWildcard(require("./BaseRpcDriver"));
35
-
36
- var _RpcMethodType3 = _interopRequireDefault(require("../pluggableElementTypes/RpcMethodType"));
37
-
38
- var _configuration = require("../configuration");
39
-
40
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
41
-
42
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
43
-
44
- 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); }; }
45
-
46
- 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; } }
47
-
48
- function timeout(ms) {
49
- return new Promise(function (resolve) {
50
- setTimeout(function () {
51
- resolve(true);
52
- }, ms);
53
- });
54
- }
55
-
56
- var MockWorkerHandle = /*#__PURE__*/function () {
57
- function MockWorkerHandle() {
58
- (0, _classCallCheck2.default)(this, MockWorkerHandle);
59
- (0, _defineProperty2.default)(this, "busy", false);
60
- }
61
-
62
- (0, _createClass2.default)(MockWorkerHandle, [{
63
- key: "destroy",
64
- value: function destroy() {}
65
- }, {
66
- key: "call",
67
- value: function () {
68
- var _call = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(name) {
69
- var _args,
70
- opts,
71
- start,
72
- _args2 = arguments;
73
-
74
- return _regenerator.default.wrap(function _callee$(_context) {
75
- while (1) {
76
- switch (_context.prev = _context.next) {
77
- case 0:
78
- _args = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : [];
79
- opts = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : {
80
- timeout: 3000,
81
- rpcDriverClassName: 'MockRpcDriver'
82
- };
83
- start = Date.now();
84
-
85
- if (!(name === 'ping')) {
86
- _context.next = 13;
87
- break;
88
- }
89
-
90
- case 4:
91
- if (!this.busy) {
92
- _context.next = 11;
93
- break;
94
- }
95
-
96
- if (!(opts.timeout < +Date.now() - start)) {
97
- _context.next = 7;
98
- break;
99
- }
100
-
101
- throw new Error('timeout');
102
-
103
- case 7:
104
- _context.next = 9;
105
- return timeout(50);
106
-
107
- case 9:
108
- _context.next = 4;
109
- break;
110
-
111
- case 11:
112
- _context.next = 61;
113
- break;
114
-
115
- case 13:
116
- if (!(name === 'doWorkShortPingTime')) {
117
- _context.next = 32;
118
- break;
119
- }
120
-
121
- this.busy = true;
122
- _context.next = 17;
123
- return timeout(50);
124
-
125
- case 17:
126
- this.busy = false;
127
- _context.next = 20;
128
- return timeout(50);
129
-
130
- case 20:
131
- this.busy = true;
132
- _context.next = 23;
133
- return timeout(50);
134
-
135
- case 23:
136
- this.busy = false;
137
- _context.next = 26;
138
- return timeout(50);
139
-
140
- case 26:
141
- this.busy = true;
142
- _context.next = 29;
143
- return timeout(50);
144
-
145
- case 29:
146
- this.busy = false;
147
- _context.next = 61;
148
- break;
149
-
150
- case 32:
151
- if (!(name === 'doWorkLongPingTime')) {
152
- _context.next = 48;
153
- break;
154
- }
155
-
156
- this.busy = true;
157
- _context.next = 36;
158
- return timeout(1000);
159
-
160
- case 36:
161
- (0, _util.checkAbortSignal)(opts.signal);
162
- this.busy = false;
163
- _context.next = 40;
164
- return timeout(1000);
165
-
166
- case 40:
167
- (0, _util.checkAbortSignal)(opts.signal);
168
- this.busy = true;
169
- _context.next = 44;
170
- return timeout(1000);
171
-
172
- case 44:
173
- (0, _util.checkAbortSignal)(opts.signal);
174
- this.busy = false;
175
- _context.next = 61;
176
- break;
177
-
178
- case 48:
179
- if (!(name === 'MockRenderTimeout')) {
180
- _context.next = 55;
181
- break;
182
- }
183
-
184
- this.busy = true;
185
- _context.next = 52;
186
- return timeout(10000);
187
-
188
- case 52:
189
- this.busy = false;
190
- _context.next = 61;
191
- break;
192
-
193
- case 55:
194
- if (!(name === 'MockRenderShort')) {
195
- _context.next = 61;
196
- break;
197
- }
198
-
199
- this.busy = true;
200
- _context.next = 59;
201
- return timeout(100);
202
-
203
- case 59:
204
- (0, _util.checkAbortSignal)(opts.signal);
205
- this.busy = false;
206
-
207
- case 61:
208
- case "end":
209
- return _context.stop();
210
- }
211
- }
212
- }, _callee, this);
213
- }));
214
-
215
- function call(_x) {
216
- return _call.apply(this, arguments);
217
- }
218
-
219
- return call;
220
- }()
221
- }]);
222
- return MockWorkerHandle;
223
- }();
224
-
225
- test('watch worker with long ping, generates timeout', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
226
- var worker, workerWatcher, result;
227
- return _regenerator.default.wrap(function _callee2$(_context2) {
228
- while (1) {
229
- switch (_context2.prev = _context2.next) {
230
- case 0:
231
- worker = new MockWorkerHandle();
232
- expect.assertions(1);
233
- _context2.prev = 2;
234
- workerWatcher = (0, _BaseRpcDriver2.watchWorker)(worker, 200, 'MockRpcDriver');
235
- result = worker.call('doWorkLongPingTime', undefined, {
236
- timeout: 100,
237
- rpcDriverClassName: 'MockRpcDriver'
238
- });
239
- _context2.next = 7;
240
- return Promise.race([result, workerWatcher]);
241
-
242
- case 7:
243
- _context2.next = 12;
244
- break;
245
-
246
- case 9:
247
- _context2.prev = 9;
248
- _context2.t0 = _context2["catch"](2);
249
- expect("".concat(_context2.t0)).toMatch(/timeout/);
250
-
251
- case 12:
252
- case "end":
253
- return _context2.stop();
254
- }
255
- }
256
- }, _callee2, null, [[2, 9]]);
257
- })));
258
- test('test worker abort', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
259
- var worker, controller, resultP;
260
- return _regenerator.default.wrap(function _callee3$(_context3) {
261
- while (1) {
262
- switch (_context3.prev = _context3.next) {
263
- case 0:
264
- worker = new MockWorkerHandle();
265
- expect.assertions(1);
266
- _context3.prev = 2;
267
- controller = new AbortController();
268
- resultP = worker.call('doWorkLongPingTime', undefined, {
269
- signal: controller.signal,
270
- timeout: 2000,
271
- rpcDriverClassName: 'MockRpcDriver'
272
- });
273
- controller.abort();
274
- _context3.next = 8;
275
- return resultP;
276
-
277
- case 8:
278
- _context3.next = 13;
279
- break;
280
-
281
- case 10:
282
- _context3.prev = 10;
283
- _context3.t0 = _context3["catch"](2);
284
- expect("".concat(_context3.t0)).toMatch(/abort/);
285
-
286
- case 13:
287
- case "end":
288
- return _context3.stop();
289
- }
290
- }
291
- }, _callee3, null, [[2, 10]]);
292
- })));
293
- test('watch worker generates multiple pings', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
294
- var worker, workerWatcher, result;
295
- return _regenerator.default.wrap(function _callee4$(_context4) {
296
- while (1) {
297
- switch (_context4.prev = _context4.next) {
298
- case 0:
299
- worker = new MockWorkerHandle();
300
- workerWatcher = (0, _BaseRpcDriver2.watchWorker)(worker, 200, 'MockRpcDriver');
301
- result = worker.call('doWorkShortPingTime');
302
- _context4.next = 5;
303
- return Promise.race([result, workerWatcher]);
304
-
305
- case 5:
306
- case "end":
307
- return _context4.stop();
308
- }
309
- }
310
- }, _callee4);
311
- })));
312
-
313
- var MockRpcDriver = /*#__PURE__*/function (_BaseRpcDriver) {
314
- (0, _inherits2.default)(MockRpcDriver, _BaseRpcDriver);
315
-
316
- var _super = _createSuper(MockRpcDriver);
317
-
318
- function MockRpcDriver() {
319
- var _this;
320
-
321
- (0, _classCallCheck2.default)(this, MockRpcDriver);
322
-
323
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
324
- args[_key] = arguments[_key];
325
- }
326
-
327
- _this = _super.call.apply(_super, [this].concat(args));
328
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "name", 'MockRpcDriver');
329
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "maxPingTime", 1000);
330
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "workerCheckFrequency", 500);
331
- return _this;
332
- }
333
-
334
- (0, _createClass2.default)(MockRpcDriver, [{
335
- key: "makeWorker",
336
- value: function () {
337
- var _makeWorker = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
338
- return _regenerator.default.wrap(function _callee5$(_context5) {
339
- while (1) {
340
- switch (_context5.prev = _context5.next) {
341
- case 0:
342
- return _context5.abrupt("return", new MockWorkerHandle());
343
-
344
- case 1:
345
- case "end":
346
- return _context5.stop();
347
- }
348
- }
349
- }, _callee5);
350
- }));
351
-
352
- function makeWorker() {
353
- return _makeWorker.apply(this, arguments);
354
- }
355
-
356
- return makeWorker;
357
- }()
358
- }]);
359
- return MockRpcDriver;
360
- }(_BaseRpcDriver2.default);
361
-
362
- var MockRendererTimeout = /*#__PURE__*/function (_RpcMethodType) {
363
- (0, _inherits2.default)(MockRendererTimeout, _RpcMethodType);
364
-
365
- var _super2 = _createSuper(MockRendererTimeout);
366
-
367
- function MockRendererTimeout() {
368
- var _this2;
369
-
370
- (0, _classCallCheck2.default)(this, MockRendererTimeout);
371
-
372
- for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
373
- args[_key2] = arguments[_key2];
374
- }
375
-
376
- _this2 = _super2.call.apply(_super2, [this].concat(args));
377
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this2), "name", 'MockRenderTimeout');
378
- return _this2;
379
- }
380
-
381
- (0, _createClass2.default)(MockRendererTimeout, [{
382
- key: "execute",
383
- value: function () {
384
- var _execute = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
385
- return _regenerator.default.wrap(function _callee6$(_context6) {
386
- while (1) {
387
- switch (_context6.prev = _context6.next) {
388
- case 0:
389
- case "end":
390
- return _context6.stop();
391
- }
392
- }
393
- }, _callee6);
394
- }));
395
-
396
- function execute() {
397
- return _execute.apply(this, arguments);
398
- }
399
-
400
- return execute;
401
- }()
402
- }]);
403
- return MockRendererTimeout;
404
- }(_RpcMethodType3.default);
405
-
406
- exports.MockRendererTimeout = MockRendererTimeout;
407
-
408
- var MockRendererShort = /*#__PURE__*/function (_RpcMethodType2) {
409
- (0, _inherits2.default)(MockRendererShort, _RpcMethodType2);
410
-
411
- var _super3 = _createSuper(MockRendererShort);
412
-
413
- function MockRendererShort() {
414
- var _this3;
415
-
416
- (0, _classCallCheck2.default)(this, MockRendererShort);
417
-
418
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
419
- args[_key3] = arguments[_key3];
420
- }
421
-
422
- _this3 = _super3.call.apply(_super3, [this].concat(args));
423
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this3), "name", 'MockRenderShort');
424
- return _this3;
425
- }
426
-
427
- (0, _createClass2.default)(MockRendererShort, [{
428
- key: "execute",
429
- value: function () {
430
- var _execute2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {
431
- return _regenerator.default.wrap(function _callee7$(_context7) {
432
- while (1) {
433
- switch (_context7.prev = _context7.next) {
434
- case 0:
435
- case "end":
436
- return _context7.stop();
437
- }
438
- }
439
- }, _callee7);
440
- }));
441
-
442
- function execute() {
443
- return _execute2.apply(this, arguments);
444
- }
445
-
446
- return execute;
447
- }()
448
- }]);
449
- return MockRendererShort;
450
- }(_RpcMethodType3.default);
451
-
452
- exports.MockRendererShort = MockRendererShort;
453
- test('test RPC driver operation timeout and worker replace', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
454
- var config, driver, pluginManager;
455
- return _regenerator.default.wrap(function _callee8$(_context8) {
456
- while (1) {
457
- switch (_context8.prev = _context8.next) {
458
- case 0:
459
- console.error = jest.fn();
460
- console.warn = jest.fn();
461
- expect.assertions(1);
462
- config = (0, _configuration.ConfigurationSchema)('Mock', {}).create();
463
- driver = new MockRpcDriver({
464
- config: config
465
- });
466
- pluginManager = new _PluginManager.default();
467
- pluginManager.addRpcMethod(function () {
468
- return new MockRendererTimeout(pluginManager);
469
- });
470
- pluginManager.addRpcMethod(function () {
471
- return new MockRendererShort(pluginManager);
472
- });
473
- pluginManager.createPluggableElements();
474
- _context8.prev = 9;
475
- _context8.next = 12;
476
- return driver.call(pluginManager, 'sessionId', 'MockRenderTimeout', {}, {});
477
-
478
- case 12:
479
- _context8.next = 17;
480
- break;
481
-
482
- case 14:
483
- _context8.prev = 14;
484
- _context8.t0 = _context8["catch"](9);
485
- expect("".concat(_context8.t0)).toMatch(/operation timed out/);
486
-
487
- case 17:
488
- _context8.next = 19;
489
- return driver.call(pluginManager, 'sessionId', 'MockRenderShort', {}, {});
490
-
491
- case 19:
492
- case "end":
493
- return _context8.stop();
494
- }
495
- }
496
- }, _callee8, null, [[9, 14]]);
497
- })));
498
- test('remote abort', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {
499
- var config, driver, pluginManager, controller, resP;
500
- return _regenerator.default.wrap(function _callee9$(_context9) {
501
- while (1) {
502
- switch (_context9.prev = _context9.next) {
503
- case 0:
504
- console.error = jest.fn();
505
- console.warn = jest.fn();
506
- expect.assertions(1);
507
- config = (0, _configuration.ConfigurationSchema)('Mock', {}).create();
508
- driver = new MockRpcDriver({
509
- config: config
510
- });
511
- pluginManager = new _PluginManager.default();
512
- pluginManager.addRpcMethod(function () {
513
- return new MockRendererShort(pluginManager);
514
- });
515
- pluginManager.createPluggableElements();
516
- _context9.prev = 8;
517
- controller = new AbortController();
518
- resP = driver.call(pluginManager, 'sessionId', 'MockRenderShort', {}, {
519
- signal: controller.signal
520
- });
521
- controller.abort();
522
- _context9.next = 14;
523
- return resP;
524
-
525
- case 14:
526
- _context9.next = 19;
527
- break;
528
-
529
- case 16:
530
- _context9.prev = 16;
531
- _context9.t0 = _context9["catch"](8);
532
- expect("".concat(_context9.t0)).toMatch(/abort/);
533
-
534
- case 19:
535
- case "end":
536
- return _context9.stop();
537
- }
538
- }
539
- }, _callee9, null, [[8, 16]]);
540
- })));
@@ -1 +0,0 @@
1
- "use strict";
@@ -1,82 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
6
-
7
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
8
-
9
- require("@testing-library/jest-dom/extend-expect");
10
-
11
- var _react = require("@testing-library/react");
12
-
13
- var _react2 = _interopRequireDefault(require("react"));
14
-
15
- var _FatalErrorDialog = _interopRequireDefault(require("./FatalErrorDialog"));
16
-
17
- afterEach(_react.cleanup);
18
- test('open fatal error dialog in web', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
19
- var _render, findByTestId, getByText;
20
-
21
- return _regenerator.default.wrap(function _callee$(_context) {
22
- while (1) {
23
- switch (_context.prev = _context.next) {
24
- case 0:
25
- console.error = jest.fn();
26
- _render = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_FatalErrorDialog.default, {
27
- resetButtonText: "Reset Session",
28
- onFactoryReset: function onFactoryReset() {
29
- return /*#__PURE__*/_react2.default.createElement("div", null, "Placeholder for actual factory reset func");
30
- }
31
- })), findByTestId = _render.findByTestId, getByText = _render.getByText;
32
- expect(getByText('Reset Session')).toBeTruthy();
33
- _context.t0 = _react.fireEvent;
34
- _context.next = 6;
35
- return findByTestId('fatal-error');
36
-
37
- case 6:
38
- _context.t1 = _context.sent;
39
-
40
- _context.t0.click.call(_context.t0, _context.t1);
41
-
42
- expect(getByText('Are you sure you want to reset? This will restore the default configuration.')).toBeTruthy();
43
-
44
- case 9:
45
- case "end":
46
- return _context.stop();
47
- }
48
- }
49
- }, _callee);
50
- })));
51
- test('open fatal error dialog in desktop', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
52
- var _render2, findByTestId, getByText;
53
-
54
- return _regenerator.default.wrap(function _callee2$(_context2) {
55
- while (1) {
56
- switch (_context2.prev = _context2.next) {
57
- case 0:
58
- console.error = jest.fn();
59
- _render2 = (0, _react.render)( /*#__PURE__*/_react2.default.createElement(_FatalErrorDialog.default, {
60
- onFactoryReset: function onFactoryReset() {
61
- return /*#__PURE__*/_react2.default.createElement("div", null, "Placeholder for actual factory reset func");
62
- }
63
- })), findByTestId = _render2.findByTestId, getByText = _render2.getByText;
64
- expect(getByText('Factory Reset')).toBeTruthy();
65
- _context2.t0 = _react.fireEvent;
66
- _context2.next = 6;
67
- return findByTestId('fatal-error');
68
-
69
- case 6:
70
- _context2.t1 = _context2.sent;
71
-
72
- _context2.t0.click.call(_context2.t0, _context2.t1);
73
-
74
- expect(getByText('Are you sure you want to reset? This will restore the default configuration.')).toBeTruthy();
75
-
76
- case 9:
77
- case "end":
78
- return _context2.stop();
79
- }
80
- }
81
- }, _callee2);
82
- })));
@@ -1,36 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- var _react = _interopRequireDefault(require("react"));
6
-
7
- require("@testing-library/jest-dom/extend-expect");
8
-
9
- var _react2 = require("@testing-library/react");
10
-
11
- var _SanitizedHTML = _interopRequireDefault(require("./SanitizedHTML"));
12
-
13
- test('test basic escaping with bold', function () {
14
- var _render = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_SanitizedHTML.default, {
15
- html: "<b>Test</b"
16
- })),
17
- getByText = _render.getByText;
18
-
19
- expect(getByText('Test')).toBeInTheDocument();
20
- });
21
- test('test escaping', function () {
22
- var _render2 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_SanitizedHTML.default, {
23
- html: "<bb>Test</b"
24
- })),
25
- getByText = _render2.getByText;
26
-
27
- expect(getByText('<bb>Test</b')).toBeInTheDocument();
28
- });
29
- test('test <TRA>', function () {
30
- var _render3 = (0, _react2.render)( /*#__PURE__*/_react.default.createElement(_SanitizedHTML.default, {
31
- html: "<TRA><DEL><INS><DEL:ME>"
32
- })),
33
- getByText = _render3.getByText;
34
-
35
- expect(getByText('<TRA><DEL><INS><DEL:ME>')).toBeInTheDocument();
36
- });