@jbrowse/plugin-data-management 2.6.2 → 2.7.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.
- package/dist/AddConnectionWidget/components/AddConnectionWidget.d.ts +2 -2
- package/dist/AddConnectionWidget/components/AddConnectionWidget.js +17 -8
- package/dist/AddConnectionWidget/components/ConfigureConnection.d.ts +2 -2
- package/dist/AddConnectionWidget/components/ConfigureConnection.js +2 -1
- package/dist/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +2 -2
- package/dist/AddConnectionWidget/components/ConnectionTypeSelect.js +5 -3
- package/dist/AddTrackWidget/components/AddTrackWidget.d.ts +3 -4
- package/dist/AddTrackWidget/components/AddTrackWidget.js +3 -3
- package/dist/AddTrackWidget/components/ConfirmTrack.d.ts +2 -2
- package/dist/AddTrackWidget/components/ConfirmTrack.js +3 -2
- package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +3 -4
- package/dist/AddTrackWidget/components/DefaultAddTrackWorkflow.js +32 -27
- package/dist/AddTrackWidget/components/PasteConfigWorkflow.d.ts +3 -4
- package/dist/AddTrackWidget/components/PasteConfigWorkflow.js +10 -7
- package/dist/AddTrackWidget/components/TrackAdapterSelector.js +1 -1
- package/dist/AddTrackWidget/components/TrackSourceSelect.d.ts +3 -4
- package/dist/AddTrackWidget/components/TrackSourceSelect.js +3 -3
- package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +2 -2
- package/dist/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +2 -1
- package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +2 -2
- package/dist/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +2 -1
- package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.d.ts +3 -5
- package/dist/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +2 -1
- package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +3 -4
- package/dist/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +5 -8
- package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +3 -4
- package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +3 -3
- package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +2 -3
- package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +2 -3
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.d.ts +13 -0
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +72 -0
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +31 -77
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +3 -4
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +3 -3
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +5 -3
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +10 -4
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +2 -2
- package/dist/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +53 -33
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +2 -2
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +39 -21
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +3 -4
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +13 -9
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +4 -3
- package/dist/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +5 -6
- package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +22 -0
- package/dist/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +3 -3
- package/dist/HierarchicalTrackSelectorWidget/components/util.d.ts +2 -1
- package/dist/HierarchicalTrackSelectorWidget/components/util.js +1 -2
- package/dist/HierarchicalTrackSelectorWidget/filterTracks.d.ts +12 -0
- package/dist/HierarchicalTrackSelectorWidget/filterTracks.js +32 -0
- package/dist/HierarchicalTrackSelectorWidget/generateHierarchy.d.ts +21 -0
- package/dist/HierarchicalTrackSelectorWidget/generateHierarchy.js +98 -0
- package/dist/HierarchicalTrackSelectorWidget/model.d.ts +68 -28
- package/dist/HierarchicalTrackSelectorWidget/model.js +147 -117
- package/dist/HierarchicalTrackSelectorWidget/util.d.ts +12 -0
- package/dist/HierarchicalTrackSelectorWidget/util.js +53 -0
- package/dist/PluginStoreWidget/components/AddCustomPluginDialog.d.ts +7 -0
- package/dist/PluginStoreWidget/components/{CustomPluginForm.js → AddCustomPluginDialog.js} +13 -21
- package/dist/PluginStoreWidget/components/DeletePluginDialog.d.ts +5 -0
- package/dist/PluginStoreWidget/components/DeletePluginDialog.js +28 -0
- package/dist/PluginStoreWidget/components/InstalledPlugin.d.ts +3 -6
- package/dist/PluginStoreWidget/components/InstalledPlugin.js +24 -51
- package/dist/PluginStoreWidget/components/InstalledPluginsList.d.ts +3 -4
- package/dist/PluginStoreWidget/components/InstalledPluginsList.js +7 -9
- package/dist/PluginStoreWidget/components/PluginCard.d.ts +2 -2
- package/dist/PluginStoreWidget/components/PluginCard.js +5 -6
- package/dist/PluginStoreWidget/components/PluginStoreWidget.d.ts +3 -4
- package/dist/PluginStoreWidget/components/PluginStoreWidget.js +14 -42
- package/dist/PluginStoreWidget/components/util.d.ts +5 -0
- package/dist/PluginStoreWidget/components/util.js +29 -0
- package/dist/PluginStoreWidget/model.d.ts +2 -2
- package/dist/PluginStoreWidget/model.js +2 -2
- package/dist/index.d.ts +1 -9
- package/dist/index.js +1 -4
- package/dist/ucsc-trackhub/model.js +2 -2
- package/esm/AddConnectionWidget/components/AddConnectionWidget.d.ts +2 -2
- package/esm/AddConnectionWidget/components/AddConnectionWidget.js +19 -10
- package/esm/AddConnectionWidget/components/ConfigureConnection.d.ts +2 -2
- package/esm/AddConnectionWidget/components/ConfigureConnection.js +2 -1
- package/esm/AddConnectionWidget/components/ConnectionTypeSelect.d.ts +2 -2
- package/esm/AddConnectionWidget/components/ConnectionTypeSelect.js +5 -3
- package/esm/AddTrackWidget/components/AddTrackWidget.d.ts +3 -4
- package/esm/AddTrackWidget/components/AddTrackWidget.js +3 -3
- package/esm/AddTrackWidget/components/ConfirmTrack.d.ts +2 -2
- package/esm/AddTrackWidget/components/ConfirmTrack.js +4 -3
- package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.d.ts +3 -4
- package/esm/AddTrackWidget/components/DefaultAddTrackWorkflow.js +33 -28
- package/esm/AddTrackWidget/components/PasteConfigWorkflow.d.ts +3 -4
- package/esm/AddTrackWidget/components/PasteConfigWorkflow.js +11 -8
- package/esm/AddTrackWidget/components/TrackAdapterSelector.js +1 -1
- package/esm/AddTrackWidget/components/TrackSourceSelect.d.ts +3 -4
- package/esm/AddTrackWidget/components/TrackSourceSelect.js +3 -3
- package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.d.ts +2 -2
- package/esm/HierarchicalTrackSelectorWidget/components/HierarchicalFab.js +2 -1
- package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.d.ts +2 -2
- package/esm/HierarchicalTrackSelectorWidget/components/ShoppingCart.js +2 -1
- package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.d.ts +3 -5
- package/esm/HierarchicalTrackSelectorWidget/components/dialogs/CloseConnectionDialog.js +2 -1
- package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.d.ts +3 -4
- package/esm/HierarchicalTrackSelectorWidget/components/dialogs/DeleteConnectionDialog.js +6 -9
- package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts +3 -4
- package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.js +3 -3
- package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts +2 -3
- package/esm/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.js +3 -2
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.d.ts +13 -0
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilter.js +43 -0
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetFilters.js +31 -54
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.d.ts +3 -4
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedDialog.js +3 -3
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.d.ts +5 -3
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedHeader.js +10 -4
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.d.ts +2 -2
- package/esm/HierarchicalTrackSelectorWidget/components/faceted/FacetedSelector.js +51 -31
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.d.ts +2 -2
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HamburgerMenu.js +38 -20
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.d.ts +3 -4
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalHeader.js +13 -9
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.d.ts +4 -3
- package/esm/HierarchicalTrackSelectorWidget/components/tree/HierarchicalTree.js +5 -6
- package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackCategory.js +22 -0
- package/esm/HierarchicalTrackSelectorWidget/components/tree/TrackLabel.js +2 -2
- package/esm/HierarchicalTrackSelectorWidget/components/util.d.ts +2 -1
- package/esm/HierarchicalTrackSelectorWidget/components/util.js +1 -2
- package/esm/HierarchicalTrackSelectorWidget/filterTracks.d.ts +12 -0
- package/esm/HierarchicalTrackSelectorWidget/filterTracks.js +28 -0
- package/esm/HierarchicalTrackSelectorWidget/generateHierarchy.d.ts +21 -0
- package/esm/HierarchicalTrackSelectorWidget/generateHierarchy.js +94 -0
- package/esm/HierarchicalTrackSelectorWidget/model.d.ts +68 -28
- package/esm/HierarchicalTrackSelectorWidget/model.js +149 -116
- package/esm/HierarchicalTrackSelectorWidget/util.d.ts +12 -0
- package/esm/HierarchicalTrackSelectorWidget/util.js +45 -0
- package/esm/PluginStoreWidget/components/AddCustomPluginDialog.d.ts +7 -0
- package/esm/PluginStoreWidget/components/{CustomPluginForm.js → AddCustomPluginDialog.js} +13 -21
- package/esm/PluginStoreWidget/components/DeletePluginDialog.d.ts +5 -0
- package/esm/PluginStoreWidget/components/DeletePluginDialog.js +22 -0
- package/esm/PluginStoreWidget/components/InstalledPlugin.d.ts +3 -6
- package/esm/PluginStoreWidget/components/InstalledPlugin.js +27 -54
- package/esm/PluginStoreWidget/components/InstalledPluginsList.d.ts +3 -4
- package/esm/PluginStoreWidget/components/InstalledPluginsList.js +7 -9
- package/esm/PluginStoreWidget/components/PluginCard.d.ts +2 -2
- package/esm/PluginStoreWidget/components/PluginCard.js +5 -6
- package/esm/PluginStoreWidget/components/PluginStoreWidget.d.ts +3 -4
- package/esm/PluginStoreWidget/components/PluginStoreWidget.js +15 -43
- package/esm/PluginStoreWidget/components/util.d.ts +5 -0
- package/esm/PluginStoreWidget/components/util.js +25 -0
- package/esm/PluginStoreWidget/model.d.ts +2 -2
- package/esm/PluginStoreWidget/model.js +1 -1
- package/esm/index.d.ts +1 -9
- package/esm/index.js +1 -3
- package/esm/ucsc-trackhub/model.js +2 -2
- package/package.json +5 -4
- package/dist/PluginStoreWidget/components/CustomPluginForm.d.ts +0 -9
- package/dist/SetDefaultSession/SetDefaultSession.d.ts +0 -6
- package/dist/SetDefaultSession/SetDefaultSession.js +0 -38
- package/dist/SetDefaultSession/index.d.ts +0 -1
- package/dist/SetDefaultSession/index.js +0 -8
- package/esm/PluginStoreWidget/components/CustomPluginForm.d.ts +0 -9
- package/esm/SetDefaultSession/SetDefaultSession.d.ts +0 -6
- package/esm/SetDefaultSession/SetDefaultSession.js +0 -33
- package/esm/SetDefaultSession/index.d.ts +0 -1
- package/esm/SetDefaultSession/index.js +0 -1
|
@@ -34,6 +34,7 @@ const mobx_react_1 = require("mobx-react");
|
|
|
34
34
|
// locals
|
|
35
35
|
const ConfigureConnection_1 = __importDefault(require("./ConfigureConnection"));
|
|
36
36
|
const ConnectionTypeSelect_1 = __importDefault(require("./ConnectionTypeSelect"));
|
|
37
|
+
const product_core_1 = require("@jbrowse/product-core");
|
|
37
38
|
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
38
39
|
root: {
|
|
39
40
|
marginTop: theme.spacing(1),
|
|
@@ -50,13 +51,15 @@ const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
50
51
|
},
|
|
51
52
|
}));
|
|
52
53
|
const steps = ['Select a Connection Type', 'Configure Connection'];
|
|
53
|
-
|
|
54
|
+
const AddConnectionWidget = (0, mobx_react_1.observer)(function ({ model }) {
|
|
54
55
|
const [connectionType, setConnectionType] = (0, react_1.useState)();
|
|
55
|
-
const [
|
|
56
|
+
const [connectionId, setConnectionId] = (0, react_1.useState)();
|
|
56
57
|
const [activeStep, setActiveStep] = (0, react_1.useState)(0);
|
|
57
58
|
const { classes } = useStyles();
|
|
58
59
|
const session = (0, util_1.getSession)(model);
|
|
59
60
|
const { pluginManager } = (0, util_1.getEnv)(session);
|
|
61
|
+
// useMemo is needed for react@18+mobx-react@9, previous code called configScema.create directly in a setConfigModel useState hook setter but this caused infinite loop
|
|
62
|
+
const configModel = (0, react_1.useMemo)(() => connectionType === null || connectionType === void 0 ? void 0 : connectionType.configSchema.create({ connectionId }, (0, util_1.getEnv)(model)), [connectionId, connectionType, model]);
|
|
60
63
|
return (react_1.default.createElement("div", { className: classes.root },
|
|
61
64
|
react_1.default.createElement(material_1.Stepper, { className: classes.stepper, activeStep: activeStep, orientation: "vertical" }, steps.map(label => (react_1.default.createElement(material_1.Step, { key: label },
|
|
62
65
|
react_1.default.createElement(material_1.StepLabel, null, label),
|
|
@@ -66,21 +69,27 @@ exports.default = (0, mobx_react_1.observer)(function AddConnectionWidget({ mode
|
|
|
66
69
|
if (!c) {
|
|
67
70
|
return;
|
|
68
71
|
}
|
|
69
|
-
|
|
70
|
-
setConfigModel(c.configSchema.create({ connectionId }, (0, util_1.getEnv)(model)));
|
|
72
|
+
setConnectionId(`${c.name}-${Date.now()}`);
|
|
71
73
|
} })) : connectionType && configModel ? (react_1.default.createElement(ConfigureConnection_1.default, { connectionType: connectionType, model: configModel, session: session })) : null,
|
|
72
74
|
react_1.default.createElement("div", { className: classes.actionsContainer },
|
|
73
75
|
react_1.default.createElement(material_1.Button, { disabled: activeStep === 0, onClick: () => setActiveStep(activeStep - 1), className: classes.button }, "Back"),
|
|
74
76
|
react_1.default.createElement(material_1.Button, { disabled: !((activeStep === 0 && connectionType) ||
|
|
75
77
|
(activeStep === 1 && configModel)), variant: "contained", color: "primary", onClick: () => {
|
|
76
|
-
var _a;
|
|
77
78
|
if (activeStep === steps.length - 1) {
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
if (configModel && (0, product_core_1.isSessionWithConnections)(session)) {
|
|
80
|
+
const conf = session.addConnectionConf(configModel);
|
|
81
|
+
session.makeConnection(conf);
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
session.notify('No config model to add');
|
|
85
|
+
}
|
|
86
|
+
if ((0, util_1.isSessionModelWithWidgets)(session)) {
|
|
87
|
+
session.hideWidget(model);
|
|
88
|
+
}
|
|
81
89
|
}
|
|
82
90
|
else {
|
|
83
91
|
setActiveStep(activeStep + 1);
|
|
84
92
|
}
|
|
85
93
|
}, className: classes.button, "data-testid": "addConnectionNext" }, activeStep === steps.length - 1 ? 'Connect' : 'Next')))))))));
|
|
86
94
|
});
|
|
95
|
+
exports.default = AddConnectionWidget;
|
|
@@ -2,9 +2,9 @@ import React from 'react';
|
|
|
2
2
|
import { ConnectionType } from '@jbrowse/core/pluggableElementTypes';
|
|
3
3
|
import { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
4
4
|
import { AbstractSessionModel } from '@jbrowse/core/util';
|
|
5
|
-
declare const
|
|
5
|
+
declare const ConfigureConnection: ({ connectionType, model, session, }: {
|
|
6
6
|
connectionType: ConnectionType;
|
|
7
7
|
model: AnyConfigurationModel;
|
|
8
8
|
session: AbstractSessionModel;
|
|
9
9
|
}) => React.JSX.Element;
|
|
10
|
-
export default
|
|
10
|
+
export default ConfigureConnection;
|
|
@@ -27,8 +27,9 @@ const react_1 = __importStar(require("react"));
|
|
|
27
27
|
const mobx_react_1 = require("mobx-react");
|
|
28
28
|
const plugin_config_1 = require("@jbrowse/plugin-config");
|
|
29
29
|
const ui_1 = require("@jbrowse/core/ui");
|
|
30
|
-
|
|
30
|
+
const ConfigureConnection = (0, mobx_react_1.observer)(function ({ connectionType, model, session, }) {
|
|
31
31
|
const ConfigEditorComponent = connectionType.configEditorComponent || plugin_config_1.ConfigurationEditor;
|
|
32
32
|
return (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement(ui_1.LoadingEllipses, null) },
|
|
33
33
|
react_1.default.createElement(ConfigEditorComponent, { model: { target: model }, session: session })));
|
|
34
34
|
});
|
|
35
|
+
exports.default = ConfigureConnection;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { ConnectionType } from '@jbrowse/core/pluggableElementTypes';
|
|
3
|
-
declare const
|
|
3
|
+
declare const ConnectionTypeSelect: ({ connectionTypeChoices, connectionType, setConnectionType, }: {
|
|
4
4
|
connectionTypeChoices: ConnectionType[];
|
|
5
5
|
connectionType?: ConnectionType | undefined;
|
|
6
6
|
setConnectionType: (c?: ConnectionType) => void;
|
|
7
7
|
}) => React.JSX.Element;
|
|
8
|
-
export default
|
|
8
|
+
export default ConnectionTypeSelect;
|
|
@@ -31,14 +31,16 @@ const material_1 = require("@mui/material");
|
|
|
31
31
|
const mobx_react_1 = require("mobx-react");
|
|
32
32
|
// icons
|
|
33
33
|
const OpenInNew_1 = __importDefault(require("@mui/icons-material/OpenInNew"));
|
|
34
|
-
|
|
34
|
+
const ConnectionTypeSelect = (0, mobx_react_1.observer)(function ConnectionTypeSelect({ connectionTypeChoices, connectionType, setConnectionType, }) {
|
|
35
|
+
const firstChoice = connectionTypeChoices[0];
|
|
35
36
|
(0, react_1.useEffect)(() => {
|
|
36
37
|
if (!connectionType) {
|
|
37
|
-
setConnectionType(
|
|
38
|
+
setConnectionType(firstChoice);
|
|
38
39
|
}
|
|
39
|
-
});
|
|
40
|
+
}, [connectionType, firstChoice, setConnectionType]);
|
|
40
41
|
return (react_1.default.createElement("form", { autoComplete: "off" }, connectionType ? (react_1.default.createElement(material_1.TextField, { value: connectionType.name, label: "connectionType", helperText: connectionType.description ? (react_1.default.createElement(react_1.default.Fragment, null,
|
|
41
42
|
connectionType.description,
|
|
42
43
|
connectionType.url ? (react_1.default.createElement(material_1.IconButton, { href: connectionType.url, rel: "noopener noreferrer", target: "_blank" },
|
|
43
44
|
react_1.default.createElement(OpenInNew_1.default, null))) : null)) : null, select: true, fullWidth: true, onChange: event => setConnectionType(connectionTypeChoices.find(c => c.name === event.target.value)), variant: "outlined" }, connectionTypeChoices.map(c => (react_1.default.createElement(material_1.MenuItem, { key: c.name, value: c.name }, c.displayName || c.name))))) : null));
|
|
44
45
|
});
|
|
46
|
+
exports.default = ConnectionTypeSelect;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { AddTrackModel } from '../model';
|
|
3
|
-
declare
|
|
3
|
+
declare const AddTrackSelector: ({ model, }: {
|
|
4
4
|
model: AddTrackModel;
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
export default _default;
|
|
5
|
+
}) => React.JSX.Element;
|
|
6
|
+
export default AddTrackSelector;
|
|
@@ -32,7 +32,7 @@ const material_1 = require("@mui/material");
|
|
|
32
32
|
const util_1 = require("@jbrowse/core/util");
|
|
33
33
|
const DefaultAddTrackWorkflow_1 = __importDefault(require("./DefaultAddTrackWorkflow"));
|
|
34
34
|
const PasteConfigWorkflow_1 = __importDefault(require("./PasteConfigWorkflow"));
|
|
35
|
-
|
|
35
|
+
const AddTrackSelector = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
36
36
|
const [val, setVal] = (0, react_1.useState)('Default add track workflow');
|
|
37
37
|
const { pluginManager } = (0, util_1.getEnv)(model);
|
|
38
38
|
const widgets = pluginManager.getAddTrackWorkflowElements();
|
|
@@ -50,5 +50,5 @@ function AddTrackSelector({ model }) {
|
|
|
50
50
|
react_1.default.createElement(material_1.FormHelperText, null, "Type of add track workflow")),
|
|
51
51
|
react_1.default.createElement("br", null),
|
|
52
52
|
react_1.default.createElement(Component, { model: model })));
|
|
53
|
-
}
|
|
54
|
-
exports.default =
|
|
53
|
+
});
|
|
54
|
+
exports.default = AddTrackSelector;
|
|
@@ -74,7 +74,7 @@ function UnknownAdapterPrompt({ model }) {
|
|
|
74
74
|
"and add a feature request for this data type."),
|
|
75
75
|
react_1.default.createElement(TrackAdapterSelector_1.default, { model: model })));
|
|
76
76
|
}
|
|
77
|
-
|
|
77
|
+
const ConfirmTrack = (0, mobx_react_1.observer)(function ConfirmTrack({ model, }) {
|
|
78
78
|
const { classes } = useStyles();
|
|
79
79
|
const [check, setCheck] = (0, react_1.useState)(true);
|
|
80
80
|
const session = (0, util_1.getSession)(model);
|
|
@@ -102,7 +102,7 @@ exports.default = (0, mobx_react_1.observer)(function ConfirmTrack({ model, }) {
|
|
|
102
102
|
if (!(trackAdapter === null || trackAdapter === void 0 ? void 0 : trackAdapter.type)) {
|
|
103
103
|
return react_1.default.createElement(material_1.Typography, null, "Could not recognize this data type.");
|
|
104
104
|
}
|
|
105
|
-
const supportedForIndexing = (0, util_1.
|
|
105
|
+
const supportedForIndexing = (0, util_1.isSupportedIndexingAdapter)(trackAdapter === null || trackAdapter === void 0 ? void 0 : trackAdapter.type);
|
|
106
106
|
return (react_1.default.createElement("div", null,
|
|
107
107
|
trackAdapter ? (react_1.default.createElement(StatusMessage, { trackAdapter: trackAdapter, trackType: trackType })) : null,
|
|
108
108
|
warningMessage ? (react_1.default.createElement(material_1.Typography, { style: { color: 'orange' } }, warningMessage)) : null,
|
|
@@ -123,3 +123,4 @@ exports.default = (0, mobx_react_1.observer)(function ConfirmTrack({ model, }) {
|
|
|
123
123
|
} }) }))),
|
|
124
124
|
util_1.isElectron && check && supportedForIndexing ? (react_1.default.createElement(TextIndexingConfig_1.default, { model: model })) : null));
|
|
125
125
|
});
|
|
126
|
+
exports.default = ConfirmTrack;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { AddTrackModel } from '../model';
|
|
3
|
-
declare
|
|
3
|
+
declare const DefaultAddTrackWorkflow: ({ model, }: {
|
|
4
4
|
model: AddTrackModel;
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
export default _default;
|
|
5
|
+
}) => React.JSX.Element;
|
|
6
|
+
export default DefaultAddTrackWorkflow;
|
|
@@ -55,7 +55,7 @@ const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
55
55
|
},
|
|
56
56
|
}));
|
|
57
57
|
const steps = ['Enter track data', 'Confirm track type'];
|
|
58
|
-
function
|
|
58
|
+
const DefaultAddTrackWorkflow = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
59
59
|
const [activeStep, setActiveStep] = (0, react_1.useState)(0);
|
|
60
60
|
const { classes } = useStyles();
|
|
61
61
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -74,6 +74,7 @@ function AddTrackWorkflow({ model }) {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
async function handleNext() {
|
|
77
|
+
var _a, _b;
|
|
77
78
|
if (activeStep !== steps.length - 1) {
|
|
78
79
|
setActiveStep(activeStep + 1);
|
|
79
80
|
return;
|
|
@@ -83,6 +84,10 @@ function AddTrackWorkflow({ model }) {
|
|
|
83
84
|
`${session.adminMode ? '' : '-sessionTrack'}`,
|
|
84
85
|
].join('');
|
|
85
86
|
const assemblyInstance = session.assemblyManager.get(assembly);
|
|
87
|
+
if (!(0, util_1.isSessionWithAddTracks)(session)) {
|
|
88
|
+
setTrackErrorMessage('Unable to add tracks to this model');
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
86
91
|
if (assemblyInstance && trackAdapter && trackAdapter.type !== 'UNKNOWN') {
|
|
87
92
|
session.addTrackConf({
|
|
88
93
|
trackId,
|
|
@@ -94,36 +99,36 @@ function AddTrackWorkflow({ model }) {
|
|
|
94
99
|
sequenceAdapter: (0, configuration_1.getConf)(assemblyInstance, ['sequence', 'adapter']),
|
|
95
100
|
},
|
|
96
101
|
});
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
indexType: 'perTrack',
|
|
113
|
-
name: indexName,
|
|
114
|
-
timestamp: new Date().toISOString(),
|
|
115
|
-
},
|
|
102
|
+
(_b = (_a = model.view).showTrack) === null || _b === void 0 ? void 0 : _b.call(_a, trackId);
|
|
103
|
+
if (util_1.isElectron &&
|
|
104
|
+
textIndexTrack &&
|
|
105
|
+
(0, util_1.isSupportedIndexingAdapter)(trackAdapter.type)) {
|
|
106
|
+
const attr = textIndexingConf || {
|
|
107
|
+
attributes: ['Name', 'ID'],
|
|
108
|
+
exclude: ['CDS', 'exon'],
|
|
109
|
+
};
|
|
110
|
+
const indexName = trackName + '-index';
|
|
111
|
+
const newEntry = {
|
|
112
|
+
indexingParams: {
|
|
113
|
+
...attr,
|
|
114
|
+
assemblies: [assembly],
|
|
115
|
+
tracks: [trackId],
|
|
116
|
+
indexType: 'perTrack',
|
|
116
117
|
name: indexName,
|
|
117
|
-
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
|
|
118
|
+
timestamp: new Date().toISOString(),
|
|
119
|
+
},
|
|
120
|
+
name: indexName,
|
|
121
|
+
cancelCallback: () => jobsManager.abortJob(),
|
|
122
|
+
};
|
|
123
|
+
jobsManager.queueJob(newEntry);
|
|
121
124
|
}
|
|
122
125
|
else {
|
|
123
126
|
session.notify('Open a new view, or use the track selector in an existing view, to view this track', 'info');
|
|
124
127
|
}
|
|
125
128
|
model.clearData();
|
|
126
|
-
|
|
129
|
+
if ((0, util_1.isSessionModelWithWidgets)(session)) {
|
|
130
|
+
session.hideWidget(model);
|
|
131
|
+
}
|
|
127
132
|
}
|
|
128
133
|
else {
|
|
129
134
|
setTrackErrorMessage('Failed to add track.\nThe configuration of this file is not currently supported.');
|
|
@@ -153,5 +158,5 @@ function AddTrackWorkflow({ model }) {
|
|
|
153
158
|
react_1.default.createElement(material_1.Button, { disabled: isNextDisabled(), variant: "contained", color: "primary", onClick: handleNext, className: classes.button, "data-testid": "addTrackNextButton" }, activeStep === steps.length - 1 ? 'Add' : 'Next')),
|
|
154
159
|
trackErrorMessage ? (react_1.default.createElement("div", { className: classes.alertContainer },
|
|
155
160
|
react_1.default.createElement(material_1.Alert, { severity: "error" }, trackErrorMessage))) : null)))))));
|
|
156
|
-
}
|
|
157
|
-
exports.default =
|
|
161
|
+
});
|
|
162
|
+
exports.default = DefaultAddTrackWorkflow;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { AddTrackModel } from '../model';
|
|
3
|
-
declare
|
|
3
|
+
declare const PasteConfigAddTrackWorkflow: ({ model, }: {
|
|
4
4
|
model: AddTrackModel;
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
export default _default;
|
|
5
|
+
}) => React.JSX.Element;
|
|
6
|
+
export default PasteConfigAddTrackWorkflow;
|
|
@@ -39,7 +39,7 @@ const useStyles = (0, mui_1.makeStyles)()({
|
|
|
39
39
|
display: 'block',
|
|
40
40
|
},
|
|
41
41
|
});
|
|
42
|
-
function
|
|
42
|
+
const PasteConfigAddTrackWorkflow = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
43
43
|
const { classes } = useStyles();
|
|
44
44
|
const [val, setVal] = (0, react_1.useState)('');
|
|
45
45
|
const [error, setError] = (0, react_1.useState)();
|
|
@@ -52,15 +52,18 @@ function AddTrackWorkflow({ model }) {
|
|
|
52
52
|
const session = (0, util_1.getSession)(model);
|
|
53
53
|
const conf = JSON.parse(val);
|
|
54
54
|
const confs = Array.isArray(conf) ? conf : [conf];
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
55
|
+
if ((0, util_1.isSessionWithAddTracks)(session) &&
|
|
56
|
+
(0, util_1.isSessionModelWithWidgets)(session)) {
|
|
57
|
+
confs.forEach(c => session.addTrackConf(c));
|
|
58
|
+
confs.forEach(c => model.view.showTrack(c.trackId));
|
|
59
|
+
model.clearData();
|
|
60
|
+
session.hideWidget(model);
|
|
61
|
+
}
|
|
59
62
|
}
|
|
60
63
|
catch (e) {
|
|
61
64
|
console.error(e);
|
|
62
65
|
setError(e);
|
|
63
66
|
}
|
|
64
67
|
} }, "Submit")));
|
|
65
|
-
}
|
|
66
|
-
exports.default =
|
|
68
|
+
});
|
|
69
|
+
exports.default = PasteConfigAddTrackWorkflow;
|
|
@@ -41,7 +41,7 @@ const TrackAdapterSelector = (0, mobx_react_1.observer)(({ model }) => {
|
|
|
41
41
|
// returning array avoids needing to use a react fragment which
|
|
42
42
|
// Select/TextField sub-elements disagree with
|
|
43
43
|
return [
|
|
44
|
-
react_1.default.createElement(material_1.ListSubheader,
|
|
44
|
+
react_1.default.createElement(material_1.ListSubheader, { key: key }, key),
|
|
45
45
|
val.map(elt => (react_1.default.createElement(material_1.MenuItem, { key: elt.name, value: elt.name }, elt.displayName))),
|
|
46
46
|
];
|
|
47
47
|
})));
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { AddTrackModel } from '../model';
|
|
3
|
-
declare
|
|
3
|
+
declare const TrackSourceSelect: ({ model, }: {
|
|
4
4
|
model: AddTrackModel;
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
export default _default;
|
|
5
|
+
}) => React.JSX.Element;
|
|
6
|
+
export default TrackSourceSelect;
|
|
@@ -17,12 +17,12 @@ const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
17
17
|
height: theme.spacing(8),
|
|
18
18
|
},
|
|
19
19
|
}));
|
|
20
|
-
|
|
20
|
+
const TrackSourceSelect = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
21
21
|
const { classes } = useStyles();
|
|
22
22
|
const rootModel = (0, mobx_state_tree_1.getRoot)(model);
|
|
23
23
|
return (react_1.default.createElement(material_1.Paper, { className: classes.paper },
|
|
24
24
|
react_1.default.createElement(ui_1.FileSelector, { name: "Main file", description: "", location: model.trackData, setLocation: model.setTrackData, setName: model.setTrackName, rootModel: rootModel }),
|
|
25
25
|
react_1.default.createElement("div", { className: classes.spacer }),
|
|
26
26
|
react_1.default.createElement(ui_1.FileSelector, { name: "Index file", description: "(Optional) The URL of the index file is automatically inferred from the URL of the main file if it is not supplied.", location: model.indexTrackData, setLocation: model.setIndexTrackData, setName: model.setTrackName, rootModel: rootModel })));
|
|
27
|
-
}
|
|
28
|
-
exports.default =
|
|
27
|
+
});
|
|
28
|
+
exports.default = TrackSourceSelect;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { HierarchicalTrackSelectorModel } from '../model';
|
|
3
|
-
declare const
|
|
3
|
+
declare const HierarchicalFab: ({ model, }: {
|
|
4
4
|
model: HierarchicalTrackSelectorModel;
|
|
5
5
|
}) => React.JSX.Element;
|
|
6
|
-
export default
|
|
6
|
+
export default HierarchicalFab;
|
|
@@ -40,7 +40,7 @@ const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
40
40
|
right: theme.spacing(6),
|
|
41
41
|
},
|
|
42
42
|
}));
|
|
43
|
-
|
|
43
|
+
const HierarchicalFab = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
44
44
|
const { classes } = useStyles();
|
|
45
45
|
const session = (0, util_1.getSession)(model);
|
|
46
46
|
const [anchorEl, setAnchorEl] = (0, react_1.useState)(null);
|
|
@@ -68,3 +68,4 @@ exports.default = (0, mobx_react_1.observer)(function HierarchicalFab({ model, }
|
|
|
68
68
|
}
|
|
69
69
|
} }, "Add track")) : null))) : null));
|
|
70
70
|
});
|
|
71
|
+
exports.default = HierarchicalFab;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { HierarchicalTrackSelectorModel } from '../model';
|
|
3
|
-
declare const
|
|
3
|
+
declare const ShoppingCart: ({ model, }: {
|
|
4
4
|
model: HierarchicalTrackSelectorModel;
|
|
5
5
|
}) => React.JSX.Element;
|
|
6
|
-
export default
|
|
6
|
+
export default ShoppingCart;
|
|
@@ -43,7 +43,7 @@ const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
43
43
|
marginBottom: 0,
|
|
44
44
|
},
|
|
45
45
|
}));
|
|
46
|
-
|
|
46
|
+
const ShoppingCart = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
47
47
|
const { classes } = useStyles();
|
|
48
48
|
const { selection } = model;
|
|
49
49
|
const { pluginManager } = (0, util_1.getEnv)(model);
|
|
@@ -67,3 +67,4 @@ exports.default = (0, mobx_react_1.observer)(function ShoppingCart({ model, }) {
|
|
|
67
67
|
})),
|
|
68
68
|
] })));
|
|
69
69
|
});
|
|
70
|
+
exports.default = ShoppingCart;
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
declare const
|
|
2
|
+
declare const CloseConnectionDialog: ({ modalInfo, onClose, }: {
|
|
3
3
|
modalInfo?: {
|
|
4
4
|
name?: string | undefined;
|
|
5
|
-
dereferenceTypeCount?:
|
|
6
|
-
[key: string]: number;
|
|
7
|
-
} | undefined;
|
|
5
|
+
dereferenceTypeCount?: Record<string, number> | undefined;
|
|
8
6
|
safelyBreakConnection?: (() => void) | undefined;
|
|
9
7
|
} | undefined;
|
|
10
8
|
onClose: () => void;
|
|
11
9
|
}) => React.JSX.Element;
|
|
12
|
-
export default
|
|
10
|
+
export default CloseConnectionDialog;
|
|
@@ -7,7 +7,7 @@ const react_1 = __importDefault(require("react"));
|
|
|
7
7
|
const material_1 = require("@mui/material");
|
|
8
8
|
const ui_1 = require("@jbrowse/core/ui");
|
|
9
9
|
const mobx_react_1 = require("mobx-react");
|
|
10
|
-
|
|
10
|
+
const CloseConnectionDialog = (0, mobx_react_1.observer)(function CloseConnectionDialog({ modalInfo = {}, onClose, }) {
|
|
11
11
|
const { name, dereferenceTypeCount, safelyBreakConnection } = modalInfo;
|
|
12
12
|
return (react_1.default.createElement(ui_1.Dialog, { open: true, maxWidth: "lg", title: `Close connection "${name}"` },
|
|
13
13
|
react_1.default.createElement(material_1.DialogContent, null,
|
|
@@ -24,3 +24,4 @@ exports.default = (0, mobx_react_1.observer)(function CloseConnectionDialog({ mo
|
|
|
24
24
|
}
|
|
25
25
|
: () => { }, color: "primary" }, "OK"))));
|
|
26
26
|
});
|
|
27
|
+
exports.default = CloseConnectionDialog;
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
3
3
|
import { AbstractSessionModel } from '@jbrowse/core/util';
|
|
4
|
-
declare
|
|
4
|
+
declare const DeleteConnectionDialog: ({ deleteDialogDetails, session, handleClose, }: {
|
|
5
5
|
deleteDialogDetails: {
|
|
6
6
|
name: string;
|
|
7
7
|
connectionConf: AnyConfigurationModel;
|
|
8
8
|
};
|
|
9
9
|
session: AbstractSessionModel;
|
|
10
10
|
handleClose: () => void;
|
|
11
|
-
})
|
|
12
|
-
|
|
13
|
-
export default _default;
|
|
11
|
+
}) => React.JSX.Element;
|
|
12
|
+
export default DeleteConnectionDialog;
|
|
@@ -5,14 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
7
|
const material_1 = require("@mui/material");
|
|
8
|
+
const ui_1 = require("@jbrowse/core/ui");
|
|
8
9
|
const mobx_react_1 = require("mobx-react");
|
|
9
|
-
function DeleteConnectionDialog({ deleteDialogDetails, session, handleClose, }) {
|
|
10
|
+
const DeleteConnectionDialog = (0, mobx_react_1.observer)(function DeleteConnectionDialog({ deleteDialogDetails, session, handleClose, }) {
|
|
10
11
|
const { connectionConf, name } = deleteDialogDetails;
|
|
11
|
-
return (react_1.default.createElement(
|
|
12
|
-
react_1.default.createElement(material_1.DialogTitle, null,
|
|
13
|
-
"Delete connection \"",
|
|
14
|
-
name,
|
|
15
|
-
"\""),
|
|
12
|
+
return (react_1.default.createElement(ui_1.Dialog, { open: true, title: `Delete connection "${name}"` },
|
|
16
13
|
react_1.default.createElement(material_1.DialogContent, null,
|
|
17
14
|
react_1.default.createElement(material_1.DialogContentText, null, "Are you sure you want to delete this connection?")),
|
|
18
15
|
react_1.default.createElement(material_1.DialogActions, null,
|
|
@@ -24,5 +21,5 @@ function DeleteConnectionDialog({ deleteDialogDetails, session, handleClose, })
|
|
|
24
21
|
}
|
|
25
22
|
handleClose();
|
|
26
23
|
} }, "OK"))));
|
|
27
|
-
}
|
|
28
|
-
exports.default =
|
|
24
|
+
});
|
|
25
|
+
exports.default = DeleteConnectionDialog;
|
package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ManageConnectionsDialog.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
3
3
|
import { AbstractSessionModel } from '@jbrowse/core/util';
|
|
4
|
-
declare
|
|
4
|
+
declare const ManageConnectionsDialog: ({ session, handleClose, breakConnection, }: {
|
|
5
5
|
handleClose: () => void;
|
|
6
6
|
session: AbstractSessionModel;
|
|
7
7
|
breakConnection: (conf: AnyConfigurationModel, arg: boolean) => void;
|
|
8
|
-
})
|
|
9
|
-
|
|
10
|
-
export default _default;
|
|
8
|
+
}) => React.JSX.Element;
|
|
9
|
+
export default ManageConnectionsDialog;
|
|
@@ -17,7 +17,7 @@ const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
17
17
|
width: 500,
|
|
18
18
|
},
|
|
19
19
|
}));
|
|
20
|
-
function
|
|
20
|
+
const ManageConnectionsDialog = (0, mobx_react_1.observer)(function ({ session, handleClose, breakConnection, }) {
|
|
21
21
|
const { classes } = useStyles();
|
|
22
22
|
const { adminMode, connections, sessionConnections } = session;
|
|
23
23
|
return (react_1.default.createElement(ui_1.Dialog, { open: true, onClose: handleClose, maxWidth: "lg", title: "Delete connections" },
|
|
@@ -36,5 +36,5 @@ function ManageConnectionsDlg({ session, handleClose, breakConnection, }) {
|
|
|
36
36
|
!connections.length ? (react_1.default.createElement(material_1.Typography, null, "No connections found")) : null)),
|
|
37
37
|
react_1.default.createElement(material_1.DialogActions, null,
|
|
38
38
|
react_1.default.createElement(material_1.Button, { onClick: () => handleClose(), variant: "contained", color: "primary" }, "Close"))));
|
|
39
|
-
}
|
|
40
|
-
exports.default =
|
|
39
|
+
});
|
|
40
|
+
exports.default = ManageConnectionsDialog;
|
package/dist/HierarchicalTrackSelectorWidget/components/dialogs/ToggleConnectionsDialog.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
3
3
|
import { AbstractSessionModel } from '@jbrowse/core/util';
|
|
4
|
-
|
|
5
|
-
declare const _default: ({ session, handleClose, breakConnection, }: {
|
|
4
|
+
declare const ToggleConnectionDialog: ({ session, handleClose, breakConnection, }: {
|
|
6
5
|
handleClose: () => void;
|
|
7
6
|
session: AbstractSessionModel;
|
|
8
7
|
breakConnection: (arg: AnyConfigurationModel) => void;
|
|
9
8
|
}) => React.JSX.Element;
|
|
10
|
-
export default
|
|
9
|
+
export default ToggleConnectionDialog;
|
|
@@ -3,7 +3,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ellipses = void 0;
|
|
7
6
|
const react_1 = __importDefault(require("react"));
|
|
8
7
|
const material_1 = require("@mui/material");
|
|
9
8
|
const ui_1 = require("@jbrowse/core/ui");
|
|
@@ -13,7 +12,6 @@ const configuration_1 = require("@jbrowse/core/configuration");
|
|
|
13
12
|
function ellipses(slug) {
|
|
14
13
|
return slug.length > 20 ? `${slug.slice(0, 20)}...` : slug;
|
|
15
14
|
}
|
|
16
|
-
exports.ellipses = ellipses;
|
|
17
15
|
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
18
16
|
connectionContainer: {
|
|
19
17
|
width: 500,
|
|
@@ -45,7 +43,7 @@ const ConnectionList = (0, mobx_react_1.observer)(function ConnectionsList({ ses
|
|
|
45
43
|
return (react_1.default.createElement("div", { className: classes.connectionContainer }, !session.connections.length ? (react_1.default.createElement(material_1.Typography, null, "No connections found")) : (session.connections.map((conf, idx) => (react_1.default.createElement("div", { key: conf.name + '_' + idx },
|
|
46
44
|
react_1.default.createElement(ConnectionRow, { conf: conf, session: session, breakConnection: breakConnection })))))));
|
|
47
45
|
});
|
|
48
|
-
|
|
46
|
+
const ToggleConnectionDialog = (0, mobx_react_1.observer)(function ({ session, handleClose, breakConnection, }) {
|
|
49
47
|
return (react_1.default.createElement(ui_1.Dialog, { open: true, onClose: handleClose, maxWidth: "lg", title: "Turn on/off connections" },
|
|
50
48
|
react_1.default.createElement(material_1.DialogContent, null,
|
|
51
49
|
react_1.default.createElement(material_1.Typography, null, "Use the checkbox to turn on/off connections"),
|
|
@@ -53,3 +51,4 @@ exports.default = (0, mobx_react_1.observer)(function ToggleConnectionDialog({ s
|
|
|
53
51
|
react_1.default.createElement(material_1.DialogActions, null,
|
|
54
52
|
react_1.default.createElement(material_1.Button, { onClick: () => handleClose(), variant: "contained", color: "primary" }, "Close"))));
|
|
55
53
|
});
|
|
54
|
+
exports.default = ToggleConnectionDialog;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export default function FacetFilter({ column, vals, width, dispatch, filters, }: {
|
|
3
|
+
column: {
|
|
4
|
+
field: string;
|
|
5
|
+
};
|
|
6
|
+
vals: [string, number][];
|
|
7
|
+
width: number;
|
|
8
|
+
dispatch: (arg: {
|
|
9
|
+
key: string;
|
|
10
|
+
val: string[];
|
|
11
|
+
}) => void;
|
|
12
|
+
filters: Record<string, string[]>;
|
|
13
|
+
}): React.JSX.Element;
|