@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.
- package/BaseFeatureWidget/BaseFeatureDetail.js +91 -78
- package/BaseFeatureWidget/SequenceFeatureDetails.js +64 -56
- package/BaseFeatureWidget/SequenceFeatureDetails.test.js +9 -9
- package/BaseFeatureWidget/index.js +1 -1
- package/BaseFeatureWidget/index.test.js +4 -4
- package/BaseFeatureWidget/util.js +13 -9
- package/CorePlugin.js +32 -20
- package/Plugin.js +13 -11
- package/PluginLoader.js +37 -32
- package/PluginManager.d.ts +8 -5
- package/PluginManager.js +142 -53
- package/ReExports/index.js +4 -4
- package/ReExports/list.js +2 -2
- package/ReExports/material-ui-colors.js +20 -20
- package/ReExports/modules.d.ts +7 -5
- package/ReExports/modules.js +51 -47
- package/TextSearch/BaseResults.js +34 -24
- package/TextSearch/BaseResults.test.js +7 -3
- package/TextSearch/TextSearchManager.js +16 -14
- package/assemblyManager/assembly.js +38 -33
- package/assemblyManager/assemblyConfigSchema.js +2 -2
- package/assemblyManager/assemblyManager.js +19 -15
- package/assemblyManager/index.js +3 -3
- package/babel.config.d.ts +15 -0
- package/babel.config.js +19 -0
- package/configuration/configurationSchema.js +19 -17
- package/configuration/configurationSlot.js +11 -11
- package/configuration/configurationSlot.test.js +5 -5
- package/configuration/index.d.ts +1 -0
- package/configuration/util.js +5 -5
- package/data_adapters/BaseAdapter.d.ts +15 -3
- package/data_adapters/BaseAdapter.js +215 -61
- package/data_adapters/BaseAdapter.test.js +29 -23
- package/data_adapters/CytobandAdapter.d.ts +1 -1
- package/data_adapters/CytobandAdapter.js +24 -18
- package/data_adapters/dataAdapterCache.js +8 -8
- package/package.json +3 -3
- package/pluggableElementTypes/AdapterType.js +30 -21
- package/pluggableElementTypes/ConnectionType.js +28 -18
- package/pluggableElementTypes/DisplayType.js +27 -17
- package/pluggableElementTypes/InternetAccountType.js +24 -14
- package/pluggableElementTypes/PluggableElementBase.js +10 -8
- package/pluggableElementTypes/RpcMethodType.d.ts +1 -1
- package/pluggableElementTypes/RpcMethodType.js +140 -117
- package/pluggableElementTypes/RpcMethodType.test.js +22 -16
- package/pluggableElementTypes/TextSearchAdapterType.js +25 -15
- package/pluggableElementTypes/TrackType.js +25 -15
- package/pluggableElementTypes/ViewType.js +25 -15
- package/pluggableElementTypes/WidgetType.js +27 -17
- package/pluggableElementTypes/index.js +11 -11
- package/pluggableElementTypes/models/BaseConnectionModelFactory.js +5 -5
- package/pluggableElementTypes/models/BaseDisplayModel.js +8 -5
- package/pluggableElementTypes/models/BaseTrackModel.js +11 -8
- package/pluggableElementTypes/models/BaseViewModel.js +3 -3
- package/pluggableElementTypes/models/InternetAccountModel.d.ts +1 -1
- package/pluggableElementTypes/models/InternetAccountModel.js +4 -4
- package/pluggableElementTypes/models/baseConnectionConfig.js +2 -2
- package/pluggableElementTypes/models/baseTrackConfig.js +7 -4
- package/pluggableElementTypes/models/index.js +4 -4
- package/pluggableElementTypes/renderers/BoxRendererType.js +48 -38
- package/pluggableElementTypes/renderers/CircularChordRendererType.js +18 -12
- package/pluggableElementTypes/renderers/ComparativeServerSideRendererType.js +34 -26
- package/pluggableElementTypes/renderers/FeatureRendererType.js +45 -35
- package/pluggableElementTypes/renderers/RendererType.js +30 -20
- package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +12 -8
- package/pluggableElementTypes/renderers/ServerSideRendererType.d.ts +1 -1
- package/pluggableElementTypes/renderers/ServerSideRendererType.js +44 -32
- package/pluggableElementTypes/renderers/index.js +8 -8
- package/pluggableElementTypes/renderers/util/serializableFilterChain.js +10 -8
- package/pluggableElementTypes/renderers/util/serializableFilterChain.test.js +2 -2
- package/rpc/BaseRpcDriver.js +42 -37
- package/rpc/BaseRpcDriver.test.js +62 -48
- package/rpc/MainThreadRpcDriver.js +31 -21
- package/rpc/RpcManager.js +18 -16
- package/rpc/WebWorkerRpcDriver.js +37 -27
- package/rpc/configSchema.js +2 -2
- package/rpc/coreRpcMethods.d.ts +16 -0
- package/rpc/coreRpcMethods.js +247 -120
- package/rpc/remoteAbortSignals.js +3 -3
- package/ui/AboutDialog.js +20 -16
- package/ui/App.js +42 -38
- package/ui/AssemblySelector.d.ts +1 -1
- package/ui/AssemblySelector.js +6 -6
- package/ui/Drawer.js +7 -7
- package/ui/DrawerWidget.d.ts +1 -1
- package/ui/DrawerWidget.js +37 -33
- package/ui/DropDownMenu.js +21 -9
- package/ui/EditableTypography.js +30 -19
- package/ui/ErrorMessage.js +5 -5
- package/ui/FactoryResetDialog.js +8 -8
- package/ui/FatalErrorDialog.js +29 -12
- package/ui/FatalErrorDialog.test.js +10 -10
- package/ui/FileSelector/FileSelector.js +42 -32
- package/ui/FileSelector/LocalFileChooser.js +9 -9
- package/ui/FileSelector/UrlChooser.js +4 -4
- package/ui/FileSelector/index.js +4 -4
- package/ui/Icons.js +9 -9
- package/ui/Logo.js +19 -19
- package/ui/Menu.js +46 -35
- package/ui/NewSessionCards.js +29 -19
- package/ui/PrerenderedCanvas.js +27 -10
- package/ui/ResizeHandle.js +17 -10
- package/ui/SanitizedHTML.js +5 -5
- package/ui/SanitizedHTML.test.js +4 -4
- package/ui/Snackbar.js +16 -12
- package/ui/SnackbarModel.js +1 -1
- package/ui/Tooltip.js +11 -7
- package/ui/ViewContainer.d.ts +2 -5
- package/ui/ViewContainer.js +44 -49
- package/ui/index.d.ts +1 -0
- package/ui/index.js +26 -13
- package/ui/theme.js +15 -11
- package/util/Base1DViewModel.d.ts +14 -12
- package/util/Base1DViewModel.js +51 -55
- package/util/Base1DViewModel.test.js +5 -5
- package/util/QuickLRU.js +30 -26
- package/util/aborting.js +25 -15
- package/util/analytics.d.ts +1 -0
- package/util/analytics.js +14 -6
- package/util/blockTypes.js +48 -36
- package/util/calculateDynamicBlocks.js +4 -4
- package/util/calculateDynamicBlocks.test.js +14 -10
- package/util/calculateStaticBlocks.js +1 -1
- package/util/calculateStaticBlocks.test.js +15 -15
- package/util/compositeMap.js +30 -26
- package/util/idMaker.js +4 -4
- package/util/index.d.ts +23 -1
- package/util/index.js +135 -41
- package/util/index.test.js +11 -7
- package/util/io/RemoteFileWithRangeCache.js +40 -28
- package/util/io/index.js +5 -5
- package/util/jexl.js +5 -5
- package/util/jexlStrings.js +2 -2
- package/util/jexlStrings.test.js +2 -2
- package/util/layouts/GranularRectLayout.js +33 -27
- package/util/layouts/GranularRectLayout.test.js +10 -10
- package/util/layouts/MultiLayout.js +19 -13
- package/util/layouts/PrecomputedLayout.js +16 -14
- package/util/layouts/PrecomputedMultiLayout.js +23 -17
- package/util/layouts/SceneGraph.js +18 -12
- package/util/layouts/index.js +6 -6
- package/util/offscreenCanvasPonyfill.js +30 -28
- package/util/offscreenCanvasUtils.js +5 -5
- package/util/range.test.js +20 -20
- package/util/rxjs.js +2 -2
- package/util/simpleFeature.js +23 -18
- package/util/simpleFeature.test.js +3 -3
- package/util/stats.d.ts +1 -1
- package/util/stats.js +10 -6
- package/util/stats.test.js +15 -15
- package/util/tracks.js +1 -3
- package/util/types/index.d.ts +1 -1
- package/util/types/index.js +36 -31
- package/util/types/mst.js +19 -15
- package/util/when.js +5 -5
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
6
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", {
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
10
|
exports.BaseAttributes = exports.Attributes = void 0;
|
|
11
11
|
exports.BaseCard = BaseCard;
|
|
12
|
-
exports.useStyles = exports
|
|
12
|
+
exports.useStyles = exports.default = exports.SimpleValue = exports.FieldName = exports.FeatureDetails = exports.BasicValue = exports.BaseCoreDetails = void 0;
|
|
13
13
|
|
|
14
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
14
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
15
15
|
|
|
16
|
-
var
|
|
16
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
17
17
|
|
|
18
|
-
var
|
|
18
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
21
|
+
|
|
22
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
21
23
|
|
|
22
24
|
var _react = _interopRequireWildcard(require("react"));
|
|
23
25
|
|
|
@@ -48,6 +50,15 @@ var _SequenceFeatureDetails = _interopRequireDefault(require("./SequenceFeatureD
|
|
|
48
50
|
var _util2 = require("./util");
|
|
49
51
|
|
|
50
52
|
var _excluded = ["id"];
|
|
53
|
+
|
|
54
|
+
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); }
|
|
55
|
+
|
|
56
|
+
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; }
|
|
57
|
+
|
|
58
|
+
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; }
|
|
59
|
+
|
|
60
|
+
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; }
|
|
61
|
+
|
|
51
62
|
var MAX_FIELD_NAME_WIDTH = 170; // these are always omitted as too detailed
|
|
52
63
|
|
|
53
64
|
var globalOmit = ['length', 'position', 'subfeatures', 'uniqueId', 'exonFrames', 'parentId', 'thickStart', 'thickEnd']; // coreDetails are omitted in some circumstances
|
|
@@ -106,11 +117,11 @@ function BaseCard(_ref) {
|
|
|
106
117
|
var classes = useStyles();
|
|
107
118
|
|
|
108
119
|
var _useState = (0, _react.useState)(defaultExpanded),
|
|
109
|
-
_useState2 = (0, _slicedToArray2
|
|
120
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
110
121
|
expanded = _useState2[0],
|
|
111
122
|
setExpanded = _useState2[1];
|
|
112
123
|
|
|
113
|
-
return /*#__PURE__*/_react
|
|
124
|
+
return /*#__PURE__*/_react.default.createElement(_core.Accordion, {
|
|
114
125
|
expanded: expanded,
|
|
115
126
|
onChange: function onChange() {
|
|
116
127
|
return setExpanded(function (s) {
|
|
@@ -120,13 +131,13 @@ function BaseCard(_ref) {
|
|
|
120
131
|
TransitionProps: {
|
|
121
132
|
unmountOnExit: true
|
|
122
133
|
}
|
|
123
|
-
}, /*#__PURE__*/_react
|
|
124
|
-
expandIcon: /*#__PURE__*/_react
|
|
134
|
+
}, /*#__PURE__*/_react.default.createElement(_core.AccordionSummary, {
|
|
135
|
+
expandIcon: /*#__PURE__*/_react.default.createElement(_ExpandMore.default, {
|
|
125
136
|
className: classes.expandIcon
|
|
126
137
|
})
|
|
127
|
-
}, /*#__PURE__*/_react
|
|
138
|
+
}, /*#__PURE__*/_react.default.createElement(_core.Typography, {
|
|
128
139
|
variant: "button"
|
|
129
|
-
}, " ", title)), /*#__PURE__*/_react
|
|
140
|
+
}, " ", title)), /*#__PURE__*/_react.default.createElement(_core.AccordionDetails, {
|
|
130
141
|
className: classes.expansionPanelDetails
|
|
131
142
|
}, children));
|
|
132
143
|
}
|
|
@@ -138,13 +149,13 @@ var FieldName = function FieldName(_ref2) {
|
|
|
138
149
|
prefix = _ref2$prefix === void 0 ? [] : _ref2$prefix,
|
|
139
150
|
width = _ref2.width;
|
|
140
151
|
var classes = useStyles();
|
|
141
|
-
var val = [].concat((0, _toConsumableArray2
|
|
142
|
-
return description ? /*#__PURE__*/_react
|
|
152
|
+
var val = [].concat((0, _toConsumableArray2.default)(prefix), [name]).join('.');
|
|
153
|
+
return description ? /*#__PURE__*/_react.default.createElement(_core.Tooltip, {
|
|
143
154
|
title: description,
|
|
144
155
|
placement: "left"
|
|
145
|
-
}, /*#__PURE__*/_react
|
|
146
|
-
className: (0, _clsx
|
|
147
|
-
}, val)) : /*#__PURE__*/_react
|
|
156
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
157
|
+
className: (0, _clsx.default)(classes.fieldDescription, classes.fieldName)
|
|
158
|
+
}, val)) : /*#__PURE__*/_react.default.createElement("div", {
|
|
148
159
|
className: classes.fieldName,
|
|
149
160
|
style: {
|
|
150
161
|
width: width
|
|
@@ -157,10 +168,10 @@ exports.FieldName = FieldName;
|
|
|
157
168
|
var BasicValue = function BasicValue(_ref3) {
|
|
158
169
|
var value = _ref3.value;
|
|
159
170
|
var classes = useStyles();
|
|
160
|
-
return /*#__PURE__*/_react
|
|
171
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
161
172
|
className: classes.fieldValue
|
|
162
|
-
}, /*#__PURE__*/_react
|
|
163
|
-
html: (0, _isObject
|
|
173
|
+
}, /*#__PURE__*/_react.default.isValidElement(value) ? value : /*#__PURE__*/_react.default.createElement(_SanitizedHTML.default, {
|
|
174
|
+
html: (0, _isObject.default)(value) ? JSON.stringify(value) : String(value)
|
|
164
175
|
}));
|
|
165
176
|
};
|
|
166
177
|
|
|
@@ -173,14 +184,14 @@ var SimpleValue = function SimpleValue(_ref4) {
|
|
|
173
184
|
prefix = _ref4.prefix,
|
|
174
185
|
width = _ref4.width;
|
|
175
186
|
var classes = useStyles();
|
|
176
|
-
return value !== null && value !== undefined ? /*#__PURE__*/_react
|
|
187
|
+
return value !== null && value !== undefined ? /*#__PURE__*/_react.default.createElement("div", {
|
|
177
188
|
className: classes.field
|
|
178
|
-
}, /*#__PURE__*/_react
|
|
189
|
+
}, /*#__PURE__*/_react.default.createElement(FieldName, {
|
|
179
190
|
prefix: prefix,
|
|
180
191
|
description: description,
|
|
181
192
|
name: name,
|
|
182
193
|
width: width
|
|
183
|
-
}), /*#__PURE__*/_react
|
|
194
|
+
}), /*#__PURE__*/_react.default.createElement(BasicValue, {
|
|
184
195
|
value: value
|
|
185
196
|
})) : null;
|
|
186
197
|
};
|
|
@@ -194,36 +205,36 @@ var ArrayValue = function ArrayValue(_ref5) {
|
|
|
194
205
|
_ref5$prefix = _ref5.prefix,
|
|
195
206
|
prefix = _ref5$prefix === void 0 ? [] : _ref5$prefix;
|
|
196
207
|
var classes = useStyles();
|
|
197
|
-
return /*#__PURE__*/_react
|
|
208
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, value.length === 1 ? (0, _isObject.default)(value[0]) ? /*#__PURE__*/_react.default.createElement(Attributes, {
|
|
198
209
|
attributes: value[0],
|
|
199
|
-
prefix: [].concat((0, _toConsumableArray2
|
|
200
|
-
}) : /*#__PURE__*/_react
|
|
210
|
+
prefix: [].concat((0, _toConsumableArray2.default)(prefix), [name])
|
|
211
|
+
}) : /*#__PURE__*/_react.default.createElement("div", {
|
|
201
212
|
className: classes.field
|
|
202
|
-
}, /*#__PURE__*/_react
|
|
213
|
+
}, /*#__PURE__*/_react.default.createElement(FieldName, {
|
|
203
214
|
prefix: prefix,
|
|
204
215
|
description: description,
|
|
205
216
|
name: name
|
|
206
|
-
}), /*#__PURE__*/_react
|
|
217
|
+
}), /*#__PURE__*/_react.default.createElement(BasicValue, {
|
|
207
218
|
value: value[0]
|
|
208
219
|
})) : value.every(function (val) {
|
|
209
|
-
return (0, _isObject
|
|
220
|
+
return (0, _isObject.default)(val);
|
|
210
221
|
}) ? value.map(function (val, i) {
|
|
211
|
-
return /*#__PURE__*/_react
|
|
222
|
+
return /*#__PURE__*/_react.default.createElement(Attributes, {
|
|
212
223
|
key: JSON.stringify(val) + '-' + i,
|
|
213
224
|
attributes: val,
|
|
214
|
-
prefix: [].concat((0, _toConsumableArray2
|
|
225
|
+
prefix: [].concat((0, _toConsumableArray2.default)(prefix), [name + '-' + i])
|
|
215
226
|
});
|
|
216
|
-
}) : /*#__PURE__*/_react
|
|
227
|
+
}) : /*#__PURE__*/_react.default.createElement("div", {
|
|
217
228
|
className: classes.field
|
|
218
|
-
}, /*#__PURE__*/_react
|
|
229
|
+
}, /*#__PURE__*/_react.default.createElement(FieldName, {
|
|
219
230
|
prefix: prefix,
|
|
220
231
|
description: description,
|
|
221
232
|
name: name
|
|
222
233
|
}), value.map(function (val, i) {
|
|
223
|
-
return /*#__PURE__*/_react
|
|
234
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
224
235
|
key: JSON.stringify(val) + '-' + i,
|
|
225
236
|
className: classes.fieldSubvalue
|
|
226
|
-
}, /*#__PURE__*/_react
|
|
237
|
+
}, /*#__PURE__*/_react.default.createElement(BasicValue, {
|
|
227
238
|
value: val
|
|
228
239
|
}));
|
|
229
240
|
})));
|
|
@@ -245,24 +256,26 @@ function CoreDetails(props) {
|
|
|
245
256
|
var displayStart = (start + 1).toLocaleString('en-US');
|
|
246
257
|
var displayEnd = end.toLocaleString('en-US');
|
|
247
258
|
var displayRef = refName ? "".concat(refName, ":") : '';
|
|
248
|
-
|
|
259
|
+
|
|
260
|
+
var displayedDetails = _objectSpread(_objectSpread({}, feature), {}, {
|
|
249
261
|
length: (end - start).toLocaleString('en-US'),
|
|
250
262
|
position: "".concat(displayRef).concat(displayStart, "..").concat(displayEnd, " ").concat(strandStr)
|
|
251
263
|
});
|
|
264
|
+
|
|
252
265
|
var coreRenderedDetails = ['Position', 'Description', 'Name', 'Length', 'Type'];
|
|
253
|
-
return /*#__PURE__*/_react
|
|
266
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, coreRenderedDetails.map(function (key) {
|
|
254
267
|
return [key, displayedDetails[key.toLowerCase()]];
|
|
255
268
|
}).filter(function (_ref7) {
|
|
256
|
-
var _ref8 = (0, _slicedToArray2
|
|
269
|
+
var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
|
|
257
270
|
value = _ref8[1];
|
|
258
271
|
|
|
259
272
|
return value !== null && value !== undefined;
|
|
260
273
|
}).map(function (_ref9) {
|
|
261
|
-
var _ref10 = (0, _slicedToArray2
|
|
274
|
+
var _ref10 = (0, _slicedToArray2.default)(_ref9, 2),
|
|
262
275
|
key = _ref10[0],
|
|
263
276
|
value = _ref10[1];
|
|
264
277
|
|
|
265
|
-
return /*#__PURE__*/_react
|
|
278
|
+
return /*#__PURE__*/_react.default.createElement(SimpleValue, {
|
|
266
279
|
key: key,
|
|
267
280
|
name: key,
|
|
268
281
|
value: value
|
|
@@ -271,9 +284,9 @@ function CoreDetails(props) {
|
|
|
271
284
|
}
|
|
272
285
|
|
|
273
286
|
var BaseCoreDetails = function BaseCoreDetails(props) {
|
|
274
|
-
return /*#__PURE__*/_react
|
|
287
|
+
return /*#__PURE__*/_react.default.createElement(BaseCard, (0, _extends2.default)({}, props, {
|
|
275
288
|
title: "Primary data"
|
|
276
|
-
}), /*#__PURE__*/_react
|
|
289
|
+
}), /*#__PURE__*/_react.default.createElement(CoreDetails, props));
|
|
277
290
|
};
|
|
278
291
|
|
|
279
292
|
exports.BaseCoreDetails = BaseCoreDetails;
|
|
@@ -293,13 +306,13 @@ var DataGridDetails = function DataGridDetails(_ref11) {
|
|
|
293
306
|
if (unionKeys.size < keys.length + 5) {
|
|
294
307
|
// avoids key 'id' from being used in row data
|
|
295
308
|
var rows = Object.entries(value).map(function (_ref12) {
|
|
296
|
-
var _ref13 = (0, _slicedToArray2
|
|
309
|
+
var _ref13 = (0, _slicedToArray2.default)(_ref12, 2),
|
|
297
310
|
k = _ref13[0],
|
|
298
311
|
val = _ref13[1];
|
|
299
312
|
|
|
300
313
|
var id = val.id,
|
|
301
|
-
rest = (0, _objectWithoutProperties2
|
|
302
|
-
return (
|
|
314
|
+
rest = (0, _objectWithoutProperties2.default)(val, _excluded);
|
|
315
|
+
return _objectSpread({
|
|
303
316
|
id: k,
|
|
304
317
|
// used by material UI
|
|
305
318
|
identifier: id
|
|
@@ -310,16 +323,16 @@ var DataGridDetails = function DataGridDetails(_ref11) {
|
|
|
310
323
|
var colNames;
|
|
311
324
|
|
|
312
325
|
if (unionKeys.has('id')) {
|
|
313
|
-
unionKeys
|
|
314
|
-
colNames = ['identifier'].concat((0, _toConsumableArray2
|
|
326
|
+
unionKeys.delete('id');
|
|
327
|
+
colNames = ['identifier'].concat((0, _toConsumableArray2.default)(unionKeys));
|
|
315
328
|
} else {
|
|
316
|
-
colNames = (0, _toConsumableArray2
|
|
329
|
+
colNames = (0, _toConsumableArray2.default)(unionKeys);
|
|
317
330
|
}
|
|
318
331
|
|
|
319
332
|
var columns = colNames.map(function (val) {
|
|
320
333
|
return {
|
|
321
334
|
field: val,
|
|
322
|
-
width: Math.max.apply(Math, (0, _toConsumableArray2
|
|
335
|
+
width: Math.max.apply(Math, (0, _toConsumableArray2.default)(rows.map(function (row) {
|
|
323
336
|
var result = String(row[val]);
|
|
324
337
|
return Math.min(Math.max((0, _util.measureText)(result, 14) + 50, 80), 1000);
|
|
325
338
|
})))
|
|
@@ -327,15 +340,15 @@ var DataGridDetails = function DataGridDetails(_ref11) {
|
|
|
327
340
|
}); // disableSelection on click helps avoid
|
|
328
341
|
// https://github.com/mui-org/material-ui-x/issues/1197
|
|
329
342
|
|
|
330
|
-
return /*#__PURE__*/_react
|
|
343
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(FieldName, {
|
|
331
344
|
prefix: prefix,
|
|
332
345
|
name: name
|
|
333
|
-
}), /*#__PURE__*/_react
|
|
346
|
+
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
334
347
|
style: {
|
|
335
348
|
height: Math.min(rows.length, 100) * 20 + 50 + (rows.length < 100 ? 0 : 50),
|
|
336
349
|
width: '100%'
|
|
337
350
|
}
|
|
338
|
-
}, /*#__PURE__*/_react
|
|
351
|
+
}, /*#__PURE__*/_react.default.createElement(_xDataGrid.DataGrid, {
|
|
339
352
|
disableSelectionOnClick: true,
|
|
340
353
|
rowHeight: 20,
|
|
341
354
|
headerHeight: 25,
|
|
@@ -368,7 +381,7 @@ function generateMaxWidth(array, prefix) {
|
|
|
368
381
|
// @ts-ignore
|
|
369
382
|
var arr = [];
|
|
370
383
|
array.forEach(function (key, value) {
|
|
371
|
-
var val = [].concat((0, _toConsumableArray2
|
|
384
|
+
var val = [].concat((0, _toConsumableArray2.default)(prefix), [key[0]]).join('.');
|
|
372
385
|
arr.push((0, _util.measureText)(val, 12));
|
|
373
386
|
}); // @ts-ignore
|
|
374
387
|
|
|
@@ -386,30 +399,30 @@ var Attributes = function Attributes(props) {
|
|
|
386
399
|
} : _props$formatter,
|
|
387
400
|
_props$prefix = props.prefix,
|
|
388
401
|
prefix = _props$prefix === void 0 ? [] : _props$prefix;
|
|
389
|
-
var omits = [].concat((0, _toConsumableArray2
|
|
402
|
+
var omits = [].concat((0, _toConsumableArray2.default)(omit), globalOmit);
|
|
390
403
|
var maxLabelWidth = generateMaxWidth(Object.entries(attributes).filter(function (_ref14) {
|
|
391
|
-
var _ref15 = (0, _slicedToArray2
|
|
404
|
+
var _ref15 = (0, _slicedToArray2.default)(_ref14, 2),
|
|
392
405
|
k = _ref15[0],
|
|
393
406
|
v = _ref15[1];
|
|
394
407
|
|
|
395
408
|
return v !== undefined && !omits.includes(k);
|
|
396
409
|
}), prefix);
|
|
397
410
|
var labelWidth = maxLabelWidth <= MAX_FIELD_NAME_WIDTH ? maxLabelWidth : MAX_FIELD_NAME_WIDTH;
|
|
398
|
-
return /*#__PURE__*/_react
|
|
399
|
-
var _ref17 = (0, _slicedToArray2
|
|
411
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, Object.entries(attributes).filter(function (_ref16) {
|
|
412
|
+
var _ref17 = (0, _slicedToArray2.default)(_ref16, 2),
|
|
400
413
|
k = _ref17[0],
|
|
401
414
|
v = _ref17[1];
|
|
402
415
|
|
|
403
416
|
return v !== undefined && !omits.includes(k);
|
|
404
417
|
}).map(function (_ref18) {
|
|
405
|
-
var _ref19 = (0, _slicedToArray2
|
|
418
|
+
var _ref19 = (0, _slicedToArray2.default)(_ref18, 2),
|
|
406
419
|
key = _ref19[0],
|
|
407
420
|
value = _ref19[1];
|
|
408
421
|
|
|
409
422
|
if (Array.isArray(value) && value.length > 2 && value.every(function (val) {
|
|
410
|
-
return (0, _isObject
|
|
423
|
+
return (0, _isObject.default)(val);
|
|
411
424
|
})) {
|
|
412
|
-
return /*#__PURE__*/_react
|
|
425
|
+
return /*#__PURE__*/_react.default.createElement(DataGridDetails, {
|
|
413
426
|
key: key,
|
|
414
427
|
prefix: prefix,
|
|
415
428
|
name: key,
|
|
@@ -417,10 +430,10 @@ var Attributes = function Attributes(props) {
|
|
|
417
430
|
});
|
|
418
431
|
}
|
|
419
432
|
|
|
420
|
-
var description = accessNested([].concat((0, _toConsumableArray2
|
|
433
|
+
var description = accessNested([].concat((0, _toConsumableArray2.default)(prefix), [key]), descriptions);
|
|
421
434
|
|
|
422
435
|
if (Array.isArray(value)) {
|
|
423
|
-
return /*#__PURE__*/_react
|
|
436
|
+
return /*#__PURE__*/_react.default.createElement(ArrayValue, {
|
|
424
437
|
key: key,
|
|
425
438
|
name: key,
|
|
426
439
|
value: value,
|
|
@@ -429,17 +442,17 @@ var Attributes = function Attributes(props) {
|
|
|
429
442
|
});
|
|
430
443
|
}
|
|
431
444
|
|
|
432
|
-
if ((0, _isObject
|
|
433
|
-
return /*#__PURE__*/_react
|
|
445
|
+
if ((0, _isObject.default)(value)) {
|
|
446
|
+
return /*#__PURE__*/_react.default.createElement(Attributes, {
|
|
434
447
|
omit: omits,
|
|
435
448
|
key: key,
|
|
436
449
|
attributes: value,
|
|
437
450
|
descriptions: descriptions,
|
|
438
|
-
prefix: [].concat((0, _toConsumableArray2
|
|
451
|
+
prefix: [].concat((0, _toConsumableArray2.default)(prefix), [key])
|
|
439
452
|
});
|
|
440
453
|
}
|
|
441
454
|
|
|
442
|
-
return /*#__PURE__*/_react
|
|
455
|
+
return /*#__PURE__*/_react.default.createElement(SimpleValue, {
|
|
443
456
|
key: key,
|
|
444
457
|
name: key,
|
|
445
458
|
value: formatter(value, key),
|
|
@@ -454,9 +467,9 @@ exports.Attributes = Attributes;
|
|
|
454
467
|
|
|
455
468
|
var BaseAttributes = function BaseAttributes(props) {
|
|
456
469
|
var feature = props.feature;
|
|
457
|
-
return /*#__PURE__*/_react
|
|
470
|
+
return /*#__PURE__*/_react.default.createElement(BaseCard, (0, _extends2.default)({}, props, {
|
|
458
471
|
title: "Attributes"
|
|
459
|
-
}), /*#__PURE__*/_react
|
|
472
|
+
}), /*#__PURE__*/_react.default.createElement(Attributes, (0, _extends2.default)({}, props, {
|
|
460
473
|
attributes: feature
|
|
461
474
|
})));
|
|
462
475
|
};
|
|
@@ -484,26 +497,26 @@ var FeatureDetails = function FeatureDetails(props) {
|
|
|
484
497
|
var session = (0, _util.getSession)(model);
|
|
485
498
|
var defaultSeqTypes = ['mRNA', 'transcript'];
|
|
486
499
|
var sequenceTypes = (0, _configuration.getConf)(session, ['featureDetails', 'sequenceTypes']) || defaultSeqTypes;
|
|
487
|
-
return /*#__PURE__*/_react
|
|
500
|
+
return /*#__PURE__*/_react.default.createElement(BaseCard, {
|
|
488
501
|
title: [(0, _util2.ellipses)(name || id), type].filter(function (f) {
|
|
489
502
|
return !!f;
|
|
490
503
|
}).join(' - ')
|
|
491
|
-
}, /*#__PURE__*/_react
|
|
504
|
+
}, /*#__PURE__*/_react.default.createElement(_core.Typography, null, "Core details"), /*#__PURE__*/_react.default.createElement(CoreDetails, props), /*#__PURE__*/_react.default.createElement(_core.Divider, null), /*#__PURE__*/_react.default.createElement(_core.Typography, null, "Attributes"), /*#__PURE__*/_react.default.createElement(Attributes, (0, _extends2.default)({
|
|
492
505
|
attributes: feature
|
|
493
506
|
}, props, {
|
|
494
|
-
omit: [].concat((0, _toConsumableArray2
|
|
495
|
-
})), sequenceTypes.includes(feature.type) ? /*#__PURE__*/_react
|
|
507
|
+
omit: [].concat((0, _toConsumableArray2.default)(omit), coreDetails)
|
|
508
|
+
})), sequenceTypes.includes(feature.type) ? /*#__PURE__*/_react.default.createElement(_reactErrorBoundary.ErrorBoundary, {
|
|
496
509
|
FallbackComponent: function FallbackComponent(_ref20) {
|
|
497
510
|
var error = _ref20.error;
|
|
498
|
-
return /*#__PURE__*/_react
|
|
511
|
+
return /*#__PURE__*/_react.default.createElement(_core.Typography, {
|
|
499
512
|
color: "error"
|
|
500
513
|
}, "Failed to fetch sequence for feature: ", "".concat(error));
|
|
501
514
|
}
|
|
502
|
-
}, /*#__PURE__*/_react
|
|
515
|
+
}, /*#__PURE__*/_react.default.createElement(_SequenceFeatureDetails.default, props)) : null, subfeatures !== null && subfeatures !== void 0 && subfeatures.length ? /*#__PURE__*/_react.default.createElement(BaseCard, {
|
|
503
516
|
title: "Subfeatures",
|
|
504
517
|
defaultExpanded: !sequenceTypes.includes(feature.type)
|
|
505
518
|
}, subfeatures.map(function (sub) {
|
|
506
|
-
return /*#__PURE__*/_react
|
|
519
|
+
return /*#__PURE__*/_react.default.createElement(FeatureDetails, {
|
|
507
520
|
key: JSON.stringify(sub),
|
|
508
521
|
feature: sub,
|
|
509
522
|
model: model,
|
|
@@ -527,10 +540,10 @@ var BaseFeatureDetails = (0, _mobxReact.observer)(function (props) {
|
|
|
527
540
|
return null;
|
|
528
541
|
}
|
|
529
542
|
|
|
530
|
-
return /*#__PURE__*/_react
|
|
543
|
+
return /*#__PURE__*/_react.default.createElement(FeatureDetails, {
|
|
531
544
|
model: model,
|
|
532
545
|
feature: feature
|
|
533
546
|
});
|
|
534
547
|
});
|
|
535
548
|
var _default = BaseFeatureDetails;
|
|
536
|
-
exports
|
|
549
|
+
exports.default = _default;
|