@jbrowse/product-core 3.7.0 → 4.0.1
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/esm/RootModel/BaseRootModel.d.ts +52 -37
- package/esm/RootModel/BaseRootModel.js +1 -1
- package/esm/RootModel/FormatAbout.d.ts +2 -2
- package/esm/RootModel/FormatDetails.d.ts +2 -2
- package/esm/RootModel/HierarchicalConfig.d.ts +6 -6
- package/esm/RootModel/InternetAccounts.d.ts +4 -4
- package/esm/RootModel/InternetAccounts.js +3 -3
- package/esm/RootModel/index.d.ts +5 -5
- package/esm/RootModel/index.js +5 -5
- package/esm/Session/BaseSession.d.ts +12 -8
- package/esm/Session/BaseSession.js +12 -2
- package/esm/Session/Connections.d.ts +7 -144
- package/esm/Session/Connections.js +13 -3
- package/esm/Session/DialogQueue.d.ts +3 -3
- package/esm/Session/DialogQueue.js +4 -6
- package/esm/Session/DrawerWidgets.d.ts +17 -9
- package/esm/Session/DrawerWidgets.js +32 -8
- package/esm/Session/MultipleViews.d.ts +189 -127
- package/esm/Session/MultipleViews.js +27 -10
- package/esm/Session/ReferenceManagement.d.ts +3 -3
- package/esm/Session/ReferenceManagement.js +10 -4
- package/esm/Session/SessionTracks.d.ts +178 -122
- package/esm/Session/SessionTracks.js +13 -3
- package/esm/Session/Themes.d.ts +3 -3
- package/esm/Session/Themes.js +3 -3
- package/esm/Session/Tracks.d.ts +175 -121
- package/esm/Session/Tracks.js +16 -3
- package/esm/Session/index.d.ts +10 -10
- package/esm/Session/index.js +10 -10
- package/esm/index.d.ts +4 -4
- package/esm/index.js +4 -4
- package/esm/rpcWorker.d.ts +6 -0
- package/esm/rpcWorker.js +12 -6
- package/esm/ui/AboutDialog.d.ts +4 -2
- package/esm/ui/AboutDialog.js +4 -5
- package/esm/ui/AboutDialogContents.d.ts +4 -2
- package/esm/ui/AboutDialogContents.js +13 -12
- package/esm/ui/FileInfoPanel.d.ts +4 -2
- package/esm/ui/FileInfoPanel.js +6 -7
- package/esm/ui/HeaderButtons.js +4 -4
- package/esm/ui/RefNameInfoDialog.d.ts +4 -2
- package/esm/ui/RefNameInfoDialog.js +13 -13
- package/esm/ui/index.d.ts +1 -1
- package/esm/ui/index.js +1 -1
- package/esm/ui/util.d.ts +5 -2
- package/esm/ui/util.js +23 -5
- package/package.json +24 -34
- package/dist/RootModel/BaseRootModel.d.ts +0 -534
- package/dist/RootModel/BaseRootModel.js +0 -57
- package/dist/RootModel/FormatAbout.d.ts +0 -12
- package/dist/RootModel/FormatAbout.js +0 -18
- package/dist/RootModel/FormatDetails.d.ts +0 -24
- package/dist/RootModel/FormatDetails.js +0 -30
- package/dist/RootModel/HierarchicalConfig.d.ts +0 -26
- package/dist/RootModel/HierarchicalConfig.js +0 -32
- package/dist/RootModel/InternetAccounts.d.ts +0 -15
- package/dist/RootModel/InternetAccounts.js +0 -79
- package/dist/RootModel/index.d.ts +0 -5
- package/dist/RootModel/index.js +0 -21
- package/dist/Session/BaseSession.d.ts +0 -31
- package/dist/Session/BaseSession.js +0 -63
- package/dist/Session/Connections.d.ts +0 -158
- package/dist/Session/Connections.js +0 -84
- package/dist/Session/DialogQueue.d.ts +0 -15
- package/dist/Session/DialogQueue.js +0 -37
- package/dist/Session/DrawerWidgets.d.ts +0 -28
- package/dist/Session/DrawerWidgets.js +0 -107
- package/dist/Session/MultipleViews.d.ts +0 -1681
- package/dist/Session/MultipleViews.js +0 -75
- package/dist/Session/ReferenceManagement.d.ts +0 -15
- package/dist/Session/ReferenceManagement.js +0 -71
- package/dist/Session/SessionTracks.d.ts +0 -1664
- package/dist/Session/SessionTracks.js +0 -54
- package/dist/Session/Themes.d.ts +0 -18
- package/dist/Session/Themes.js +0 -47
- package/dist/Session/Tracks.d.ts +0 -1657
- package/dist/Session/Tracks.js +0 -36
- package/dist/Session/index.d.ts +0 -10
- package/dist/Session/index.js +0 -26
- package/dist/index.d.ts +0 -4
- package/dist/index.js +0 -20
- package/dist/rpcWorker.d.ts +0 -6
- package/dist/rpcWorker.js +0 -57
- package/dist/ui/AboutDialog.d.ts +0 -5
- package/dist/ui/AboutDialog.js +0 -18
- package/dist/ui/AboutDialogContents.d.ts +0 -5
- package/dist/ui/AboutDialogContents.js +0 -41
- package/dist/ui/FileInfoPanel.d.ts +0 -4
- package/dist/ui/FileInfoPanel.js +0 -43
- package/dist/ui/HeaderButtons.d.ts +0 -6
- package/dist/ui/HeaderButtons.js +0 -31
- package/dist/ui/RefNameInfoDialog.d.ts +0 -6
- package/dist/ui/RefNameInfoDialog.js +0 -87
- package/dist/ui/index.d.ts +0 -1
- package/dist/ui/index.js +0 -17
- package/dist/ui/util.d.ts +0 -12
- package/dist/ui/util.js +0 -28
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DrawerWidgetSessionMixin = DrawerWidgetSessionMixin;
|
|
4
|
-
exports.isSessionWithDrawerWidgets = isSessionWithDrawerWidgets;
|
|
5
|
-
const configuration_1 = require("@jbrowse/core/configuration");
|
|
6
|
-
const util_1 = require("@jbrowse/core/util");
|
|
7
|
-
const mobx_1 = require("mobx");
|
|
8
|
-
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
9
|
-
const BaseSession_1 = require("./BaseSession");
|
|
10
|
-
const minDrawerWidth = 128;
|
|
11
|
-
function DrawerWidgetSessionMixin(pluginManager) {
|
|
12
|
-
const widgetStateModelType = pluginManager.pluggableMstType('widget', 'stateModel');
|
|
13
|
-
return mobx_state_tree_1.types
|
|
14
|
-
.model({
|
|
15
|
-
drawerPosition: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.string, () => (0, util_1.localStorageGetItem)('drawerPosition') || 'right'),
|
|
16
|
-
drawerWidth: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.refinement(mobx_state_tree_1.types.integer, width => width >= minDrawerWidth), 384),
|
|
17
|
-
widgets: mobx_state_tree_1.types.map(widgetStateModelType),
|
|
18
|
-
activeWidgets: mobx_state_tree_1.types.map(mobx_state_tree_1.types.safeReference(widgetStateModelType)),
|
|
19
|
-
minimized: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.boolean, false),
|
|
20
|
-
})
|
|
21
|
-
.views(self => ({
|
|
22
|
-
get visibleWidget() {
|
|
23
|
-
if ((0, mobx_state_tree_1.isAlive)(self)) {
|
|
24
|
-
return [...self.activeWidgets.values()][self.activeWidgets.size - 1];
|
|
25
|
-
}
|
|
26
|
-
return undefined;
|
|
27
|
-
},
|
|
28
|
-
}))
|
|
29
|
-
.actions(self => ({
|
|
30
|
-
setDrawerPosition(arg) {
|
|
31
|
-
self.drawerPosition = arg;
|
|
32
|
-
localStorage.setItem('drawerPosition', arg);
|
|
33
|
-
},
|
|
34
|
-
updateDrawerWidth(drawerWidth) {
|
|
35
|
-
if (drawerWidth === self.drawerWidth) {
|
|
36
|
-
return self.drawerWidth;
|
|
37
|
-
}
|
|
38
|
-
let newDrawerWidth = drawerWidth;
|
|
39
|
-
if (newDrawerWidth < minDrawerWidth) {
|
|
40
|
-
newDrawerWidth = minDrawerWidth;
|
|
41
|
-
}
|
|
42
|
-
self.drawerWidth = newDrawerWidth;
|
|
43
|
-
return newDrawerWidth;
|
|
44
|
-
},
|
|
45
|
-
resizeDrawer(distance) {
|
|
46
|
-
if (self.drawerPosition === 'left') {
|
|
47
|
-
distance *= -1;
|
|
48
|
-
}
|
|
49
|
-
const oldDrawerWidth = self.drawerWidth;
|
|
50
|
-
const newDrawerWidth = this.updateDrawerWidth(oldDrawerWidth - distance);
|
|
51
|
-
return oldDrawerWidth - newDrawerWidth;
|
|
52
|
-
},
|
|
53
|
-
addWidget(typeName, id, initialState = {}, conf) {
|
|
54
|
-
const typeDefinition = pluginManager.getElementType('widget', typeName);
|
|
55
|
-
if (!typeDefinition) {
|
|
56
|
-
throw new Error(`unknown widget type ${typeName}`);
|
|
57
|
-
}
|
|
58
|
-
const data = {
|
|
59
|
-
...initialState,
|
|
60
|
-
id,
|
|
61
|
-
type: typeName,
|
|
62
|
-
configuration: conf || { type: typeName },
|
|
63
|
-
};
|
|
64
|
-
self.widgets.set(id, data);
|
|
65
|
-
return self.widgets.get(id);
|
|
66
|
-
},
|
|
67
|
-
showWidget(widget) {
|
|
68
|
-
if (self.activeWidgets.has(widget.id)) {
|
|
69
|
-
self.activeWidgets.delete(widget.id);
|
|
70
|
-
}
|
|
71
|
-
self.activeWidgets.set(widget.id, widget);
|
|
72
|
-
self.minimized = false;
|
|
73
|
-
},
|
|
74
|
-
hasWidget(widget) {
|
|
75
|
-
return self.activeWidgets.has(widget.id);
|
|
76
|
-
},
|
|
77
|
-
hideWidget(widget) {
|
|
78
|
-
self.activeWidgets.delete(widget.id);
|
|
79
|
-
},
|
|
80
|
-
minimizeWidgetDrawer() {
|
|
81
|
-
self.minimized = true;
|
|
82
|
-
},
|
|
83
|
-
showWidgetDrawer() {
|
|
84
|
-
self.minimized = false;
|
|
85
|
-
},
|
|
86
|
-
hideAllWidgets() {
|
|
87
|
-
self.activeWidgets.clear();
|
|
88
|
-
},
|
|
89
|
-
editConfiguration(configuration) {
|
|
90
|
-
if (!(0, configuration_1.isConfigurationModel)(configuration)) {
|
|
91
|
-
throw new Error('must pass a configuration model to editConfiguration');
|
|
92
|
-
}
|
|
93
|
-
const editor = this.addWidget('ConfigurationEditorWidget', 'configEditor', { target: configuration });
|
|
94
|
-
this.showWidget(editor);
|
|
95
|
-
},
|
|
96
|
-
afterAttach() {
|
|
97
|
-
(0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(() => {
|
|
98
|
-
(0, util_1.localStorageSetItem)('drawerPosition', self.drawerPosition);
|
|
99
|
-
}));
|
|
100
|
-
},
|
|
101
|
-
}));
|
|
102
|
-
}
|
|
103
|
-
function isSessionWithDrawerWidgets(session) {
|
|
104
|
-
return ((0, BaseSession_1.isBaseSession)(session) &&
|
|
105
|
-
'widgets' in session &&
|
|
106
|
-
'drawerPosition' in session);
|
|
107
|
-
}
|