@jbrowse/product-core 4.3.0 → 5.0.0-beta.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 +629 -304
- package/esm/RootModel/BaseRootModel.js +138 -14
- package/esm/RootModel/HierarchicalConfig.d.ts +57 -21
- package/esm/RootModel/HierarchicalConfig.js +36 -0
- package/esm/RootModel/InternetAccounts.d.ts +18 -1
- package/esm/RootModel/InternetAccounts.js +120 -22
- package/esm/RootModel/PreferencesConfig.d.ts +53 -0
- package/esm/RootModel/PreferencesConfig.js +61 -0
- package/esm/RootModel/createConfigModel.d.ts +232 -0
- package/esm/RootModel/createConfigModel.js +56 -0
- package/esm/RootModel/index.d.ts +10 -5
- package/esm/RootModel/index.js +10 -5
- package/esm/RootModel/menuItems.d.ts +24 -0
- package/esm/RootModel/menuItems.js +143 -0
- package/esm/Session/BaseSession.d.ts +310 -11
- package/esm/Session/BaseSession.js +448 -14
- package/esm/Session/Connections.d.ts +114 -8
- package/esm/Session/Connections.js +195 -74
- package/esm/Session/DrawerWidgets.d.ts +115 -12
- package/esm/Session/DrawerWidgets.js +161 -42
- package/esm/Session/MultipleViews.d.ts +1266 -1128
- package/esm/Session/MultipleViews.js +357 -66
- package/esm/Session/Preferences.d.ts +1665 -0
- package/esm/Session/Preferences.js +54 -0
- package/esm/Session/ReferenceManagement.d.ts +28 -3
- package/esm/Session/ReferenceManagement.js +56 -41
- package/esm/Session/SessionTracks.d.ts +1275 -1138
- package/esm/Session/SessionTracks.js +532 -35
- package/esm/Session/Themes.d.ts +87 -2
- package/esm/Session/Themes.js +156 -23
- package/esm/Session/TrackMenu.d.ts +112 -0
- package/esm/Session/TrackMenu.js +200 -0
- package/esm/Session/TrackMenuSessionMixin.d.ts +27 -0
- package/esm/Session/TrackMenuSessionMixin.js +41 -0
- package/esm/Session/Tracks.d.ts +1169 -1117
- package/esm/Session/Tracks.js +160 -20
- package/esm/Session/assertSessionModel.d.ts +21 -0
- package/esm/Session/assertSessionModel.js +1 -0
- package/esm/Session/finalizeSession.d.ts +16 -0
- package/esm/Session/finalizeSession.js +29 -0
- package/esm/Session/index.d.ts +22 -10
- package/esm/Session/index.js +13 -10
- package/esm/Session/shareableSnapshot.d.ts +77 -0
- package/esm/Session/shareableSnapshot.js +196 -0
- package/esm/Session/temporaryAssemblyTracks.d.ts +23 -0
- package/esm/Session/temporaryAssemblyTracks.js +38 -0
- package/esm/assertExtends.d.ts +55 -0
- package/esm/assertExtends.js +1 -0
- package/esm/controllerTracks.d.ts +56 -0
- package/esm/controllerTracks.js +77 -0
- package/esm/destroyViewState.d.ts +21 -0
- package/esm/destroyViewState.js +29 -0
- package/esm/index.d.ts +31 -4
- package/esm/index.js +31 -4
- package/esm/loadPlugins.d.ts +33 -0
- package/esm/loadPlugins.js +38 -0
- package/esm/localFiles.d.ts +74 -0
- package/esm/localFiles.js +156 -0
- package/esm/observeSession.d.ts +56 -0
- package/esm/observeSession.js +91 -0
- package/esm/pluginInput.d.ts +32 -0
- package/esm/pluginInput.js +19 -0
- package/esm/pruneUnbuildableNodes.d.ts +109 -0
- package/esm/pruneUnbuildableNodes.js +568 -0
- package/esm/resolveAssemblies.d.ts +44 -0
- package/esm/resolveAssemblies.js +55 -0
- package/esm/rpcWorker.d.ts +26 -0
- package/esm/rpcWorker.js +96 -15
- package/esm/scheduleDetachedDestroy.d.ts +18 -0
- package/esm/scheduleDetachedDestroy.js +24 -0
- package/esm/sessionMigrations/index.d.ts +53 -0
- package/esm/sessionMigrations/index.js +432 -0
- package/esm/sessionUrl.d.ts +41 -0
- package/esm/sessionUrl.js +53 -0
- package/esm/sessionUtils.d.ts +69 -0
- package/esm/sessionUtils.js +613 -0
- package/esm/siblingCast.d.ts +14 -0
- package/esm/siblingCast.js +16 -0
- package/esm/snapshotUtils.d.ts +8 -0
- package/esm/snapshotUtils.js +12 -0
- package/esm/ui/AboutDialog.d.ts +3 -6
- package/esm/ui/AboutDialog.js +4 -4
- package/esm/ui/AboutDialogContents.d.ts +2 -6
- package/esm/ui/AboutDialogContents.js +34 -13
- package/esm/ui/AssemblyInfoPanel.d.ts +5 -0
- package/esm/ui/AssemblyInfoPanel.js +69 -0
- package/esm/ui/DisplayDefaultsSection.d.ts +36 -0
- package/esm/ui/DisplayDefaultsSection.js +65 -0
- package/esm/ui/Drawer.d.ts +21 -0
- package/esm/ui/Drawer.js +60 -0
- package/esm/ui/DrawerControls.d.ts +5 -0
- package/esm/ui/DrawerControls.js +28 -0
- package/esm/ui/DrawerHeader.d.ts +6 -0
- package/esm/ui/DrawerHeader.js +36 -0
- package/esm/ui/DrawerWidget.d.ts +5 -0
- package/esm/ui/DrawerWidget.js +12 -0
- package/esm/ui/DrawerWidgetSelector.d.ts +5 -0
- package/esm/ui/DrawerWidgetSelector.js +40 -0
- package/esm/ui/FileInfoPanel.d.ts +3 -6
- package/esm/ui/FileInfoPanel.js +35 -26
- package/esm/ui/HeaderButtons.d.ts +7 -1
- package/esm/ui/HeaderButtons.js +23 -18
- package/esm/ui/ModalWidget.d.ts +12 -0
- package/esm/ui/ModalWidget.js +33 -0
- package/esm/ui/ModalWidgetAppBar.d.ts +8 -0
- package/esm/ui/ModalWidgetAppBar.js +9 -0
- package/esm/ui/PreferencesDialog.d.ts +56 -0
- package/esm/ui/PreferencesDialog.js +145 -0
- package/esm/ui/PreferencesResetDialog.d.ts +8 -0
- package/esm/ui/PreferencesResetDialog.js +19 -0
- package/esm/ui/RefNameAliasesDialog.d.ts +9 -0
- package/esm/ui/RefNameAliasesDialog.js +65 -0
- package/esm/ui/RefNameInfoDialog.d.ts +3 -6
- package/esm/ui/RefNameInfoDialog.js +57 -63
- package/esm/ui/WidgetBody.d.ts +18 -0
- package/esm/ui/WidgetBody.js +22 -0
- package/esm/ui/WidgetHeading.d.ts +7 -0
- package/esm/ui/WidgetHeading.js +7 -0
- package/esm/ui/drawerLayout.d.ts +18 -0
- package/esm/ui/drawerLayout.js +22 -0
- package/esm/ui/index.d.ts +13 -1
- package/esm/ui/index.js +12 -1
- package/esm/ui/util.d.ts +37 -4
- package/esm/ui/util.js +35 -38
- package/esm/useEngineLifecycle.d.ts +13 -0
- package/esm/useEngineLifecycle.js +22 -0
- package/package.json +11 -15
- package/esm/RootModel/FormatAbout.d.ts +0 -12
- package/esm/RootModel/FormatAbout.js +0 -15
- package/esm/RootModel/FormatDetails.d.ts +0 -24
- package/esm/RootModel/FormatDetails.js +0 -27
- package/esm/Session/DialogQueue.d.ts +0 -17
- package/esm/Session/DialogQueue.js +0 -31
|
@@ -1,35 +1,334 @@
|
|
|
1
1
|
import type { BaseRootModelType } from '../RootModel/BaseRootModel.ts';
|
|
2
|
+
import type { HeldNode } from '../pruneUnbuildableNodes.ts';
|
|
2
3
|
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
3
|
-
import type {
|
|
4
|
+
import type { BaseAssemblyConfigModel } from '@jbrowse/core/assemblyManager';
|
|
4
5
|
import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
6
|
+
import type { AnimationMode, DialogComponentType, TrackConfigChange } from '@jbrowse/core/util';
|
|
5
7
|
import type { IAnyStateTreeNode, Instance } from '@jbrowse/mobx-state-tree';
|
|
6
|
-
|
|
8
|
+
type DoneCallback = (doneCallback: () => void) => [DialogComponentType, Record<string, unknown>];
|
|
9
|
+
/**
|
|
10
|
+
* #stateModel BaseSessionModel
|
|
11
|
+
*
|
|
12
|
+
* base session shared by all JBrowse products. Be careful what you include
|
|
13
|
+
* here, everything will use it.
|
|
14
|
+
*/
|
|
15
|
+
export declare function BaseSessionModel<ROOT_MODEL_TYPE extends BaseRootModelType, JB_CONFIG_SCHEMA extends AnyConfigurationSchemaType>(_pluginManager: PluginManager): import("@jbrowse/mobx-state-tree").IModelType<Omit<{
|
|
16
|
+
/**
|
|
17
|
+
* #property
|
|
18
|
+
*/
|
|
7
19
|
id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
20
|
+
/**
|
|
21
|
+
* #property
|
|
22
|
+
*/
|
|
8
23
|
name: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
|
|
9
|
-
|
|
10
|
-
|
|
24
|
+
/**
|
|
25
|
+
* #property
|
|
26
|
+
* used to keep track of which view is in focus
|
|
27
|
+
*/
|
|
28
|
+
focusedViewId: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
29
|
+
/**
|
|
30
|
+
* #property
|
|
31
|
+
* one session-wide toggle for all region highlight bands (URL/view
|
|
32
|
+
* highlights and bookmark overlays)
|
|
33
|
+
*/
|
|
34
|
+
highlightsVisible: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
35
|
+
/**
|
|
36
|
+
* #property
|
|
37
|
+
* views, tracks, displays and widgets `pruneUnbuildableNodes` took out of
|
|
38
|
+
* the tree because this build has no plugin for their type, each with the
|
|
39
|
+
* anchor that puts it back. Opaque here on purpose — nothing in the
|
|
40
|
+
* session reads it, and the shape belongs to that module.
|
|
41
|
+
*
|
|
42
|
+
* It is a **declared property** rather than data riding along in the
|
|
43
|
+
* snapshot because MST silently drops an undeclared key: without this
|
|
44
|
+
* line the held nodes survive the prune and then vanish the moment
|
|
45
|
+
* `setSession` builds the tree, and every unit test of the prune still
|
|
46
|
+
* passes. `heldNodesSurviveTheSession.test.ts` is the canary.
|
|
47
|
+
*/
|
|
48
|
+
heldForMissingPlugins: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IType<HeldNode[] | undefined, HeldNode[] | undefined, HeldNode[] | undefined>, [undefined]>;
|
|
49
|
+
}, never>, {
|
|
50
|
+
/**
|
|
51
|
+
* #volatile
|
|
52
|
+
* this is the globally "selected" object. can be anything. code that
|
|
53
|
+
* wants to deal with this should examine it to see what kind of thing it
|
|
54
|
+
* is.
|
|
55
|
+
*/
|
|
11
56
|
selection: unknown;
|
|
57
|
+
/**
|
|
58
|
+
* #volatile
|
|
59
|
+
* this is the globally "hovered" object. can be anything. code that
|
|
60
|
+
* wants to deal with this should examine it to see what kind of thing it
|
|
61
|
+
* is.
|
|
62
|
+
*/
|
|
12
63
|
hovered: unknown;
|
|
64
|
+
/**
|
|
65
|
+
* #volatile
|
|
66
|
+
*/
|
|
67
|
+
queueOfDialogs: [DialogComponentType, Record<string, unknown>][];
|
|
68
|
+
/**
|
|
69
|
+
* #volatile
|
|
70
|
+
* runtime user-preference overrides keyed by preference id, resolved by
|
|
71
|
+
* `getPreference` against the `configuration.preferences` admin defaults.
|
|
72
|
+
* Empty here (config-only); products that let users edit preferences load
|
|
73
|
+
* and persist these via localStorage. A runtime override map layered over
|
|
74
|
+
* config defaults, kept off the snapshot since prefs are local UI.
|
|
75
|
+
*
|
|
76
|
+
* An `observable.map` (not a plain object reassigned wholesale) so each
|
|
77
|
+
* preference is its own tracked key: writing one (`setScrollZoom`) can't
|
|
78
|
+
* invalidate a reader of another (`getDisplayTypeDefault` in a track's
|
|
79
|
+
* `rpcProps`). A single spread-replaced object made every setter wake
|
|
80
|
+
* every reader, so toggling scroll-to-zoom re-fetched every track. For the
|
|
81
|
+
* same reason each promoted per-display-type default is a flat composite
|
|
82
|
+
* key (see `displayTypeDefaultKey`), not a single nested `displayTypeDefaults`
|
|
83
|
+
* object — promoting one default can't wake readers of a different one.
|
|
84
|
+
*
|
|
85
|
+
* `deep: false` is load-bearing, not a micro-optimization. The default
|
|
86
|
+
* enhancer wraps an object/array value in a MobX Proxy on `set`, and a
|
|
87
|
+
* promoted default is handed straight back out by `getConf` — so an
|
|
88
|
+
* object-valued promotable slot (alignments `colorBy`) put a Proxy into
|
|
89
|
+
* `rpcProps()`, and V8's structured-clone serializer rejects a Proxy:
|
|
90
|
+
* `worker.postMessage` threw `DataCloneError` on the next fetch of any
|
|
91
|
+
* track following that default (electron IPC and `structuredClone` in the
|
|
92
|
+
* share bake likewise). The map still notifies per key on `set`, so shallow
|
|
93
|
+
* values lose no reactivity — and nothing can mutate a preference in place,
|
|
94
|
+
* because `setPreferenceOverride` freezes what it stores.
|
|
95
|
+
*/
|
|
96
|
+
preferencesOverrides: import("mobx").ObservableMap<string, unknown>;
|
|
13
97
|
} & {
|
|
98
|
+
/**
|
|
99
|
+
* #getter
|
|
100
|
+
*/
|
|
14
101
|
readonly root: import("@jbrowse/mobx-state-tree").TypeOrStateTreeNodeToStateTreeNode<ROOT_MODEL_TYPE>;
|
|
15
102
|
} & {
|
|
103
|
+
/**
|
|
104
|
+
* #getter
|
|
105
|
+
*/
|
|
16
106
|
readonly jbrowse: any;
|
|
107
|
+
/**
|
|
108
|
+
* #getter
|
|
109
|
+
*/
|
|
17
110
|
readonly rpcManager: import("@jbrowse/core/rpc/RpcManager").default;
|
|
111
|
+
/**
|
|
112
|
+
* #getter
|
|
113
|
+
*/
|
|
18
114
|
readonly configuration: Instance<JB_CONFIG_SCHEMA>;
|
|
115
|
+
/**
|
|
116
|
+
* #getter
|
|
117
|
+
*/
|
|
19
118
|
readonly adminMode: boolean;
|
|
20
|
-
|
|
119
|
+
/**
|
|
120
|
+
* #getter
|
|
121
|
+
*/
|
|
122
|
+
readonly textSearchManager: import("@jbrowse/core/TextSearch/TextSearchManager").default;
|
|
21
123
|
} & {
|
|
22
|
-
|
|
124
|
+
/**
|
|
125
|
+
* #getter
|
|
126
|
+
*/
|
|
127
|
+
readonly assemblies: BaseAssemblyConfigModel[];
|
|
128
|
+
/**
|
|
129
|
+
* #getter
|
|
130
|
+
*/
|
|
131
|
+
readonly DialogComponent: DialogComponentType | undefined;
|
|
132
|
+
/**
|
|
133
|
+
* #getter
|
|
134
|
+
*/
|
|
135
|
+
readonly DialogProps: Record<string, unknown> | undefined;
|
|
23
136
|
} & {
|
|
137
|
+
/**
|
|
138
|
+
* #method
|
|
139
|
+
* the admin/embedder `configuration.preferences` value for a key, ignoring
|
|
140
|
+
* any runtime override — i.e. what a reset falls back to. Exposed rather
|
|
141
|
+
* than inlined because "differs from the default" is a question the
|
|
142
|
+
* Preferences reset diff asks about settings this map doesn't hold (see
|
|
143
|
+
* `defaultUseWorkspaces`).
|
|
144
|
+
*/
|
|
145
|
+
getPreferenceDefault(key: string): unknown;
|
|
146
|
+
/**
|
|
147
|
+
* #method
|
|
148
|
+
* resolved value of a user preference: a runtime override if the user set
|
|
149
|
+
* one, otherwise the admin/embedder `configuration.preferences` default.
|
|
150
|
+
* The override map is empty unless the product loads it (web/desktop).
|
|
151
|
+
*/
|
|
152
|
+
getPreference(key: string): unknown;
|
|
153
|
+
/**
|
|
154
|
+
* #method
|
|
155
|
+
* resolved value of a per-display-type slot default the user promoted
|
|
156
|
+
* (see `setDisplayTypeDefault`); undefined when nothing was promoted.
|
|
157
|
+
*/
|
|
158
|
+
getDisplayTypeDefault(displayType: string, slot: string): unknown;
|
|
159
|
+
/**
|
|
160
|
+
* #method
|
|
161
|
+
* every per-display-type default the user has promoted, as
|
|
162
|
+
* `{ displayType, slot, value }` — the inventory the Preferences dialog
|
|
163
|
+
* lists and clears one at a time (`setDisplayTypeDefault(…, undefined)`).
|
|
164
|
+
*
|
|
165
|
+
* Here rather than filtered out of `getPreferenceChanges` by the dialog,
|
|
166
|
+
* because the composite-key layout is this file's: a consumer that
|
|
167
|
+
* recognized these rows by matching the path head is exactly the coupling
|
|
168
|
+
* `DISPLAY_TYPE_DEFAULTS_PATH_HEAD` stopped being exported over, where a
|
|
169
|
+
* rename on one side alone silently no-ops the other.
|
|
170
|
+
*/
|
|
171
|
+
getDisplayTypeDefaults(): {
|
|
172
|
+
displayType: string;
|
|
173
|
+
slot: string;
|
|
174
|
+
value: unknown;
|
|
175
|
+
}[];
|
|
176
|
+
/**
|
|
177
|
+
* #method
|
|
178
|
+
* every runtime preference-override that currently differs from its
|
|
179
|
+
* config/admin default, as `{ path, from, to }` rows — the exact set
|
|
180
|
+
* `clearPreferenceOverrides` reverts. Backs the confirmation diff shown
|
|
181
|
+
* before "Reset to defaults" (mirrors the per-track changes dialog). A
|
|
182
|
+
* scalar pref (animationMode, scrollZoom) whose override equals the
|
|
183
|
+
* default is omitted (reverting it is a no-op); each promoted
|
|
184
|
+
* per-display-type default is always a difference from the un-promoted
|
|
185
|
+
* state, so `from` reads "(default)".
|
|
186
|
+
*/
|
|
187
|
+
getPreferenceChanges(): TrackConfigChange[];
|
|
188
|
+
} & {
|
|
189
|
+
/**
|
|
190
|
+
* #getter
|
|
191
|
+
* resolved feature-layout animation mode (never undefined)
|
|
192
|
+
*/
|
|
193
|
+
readonly animationMode: AnimationMode;
|
|
194
|
+
/**
|
|
195
|
+
* #getter
|
|
196
|
+
* resolved scroll-to-zoom preference. Global and personal (never shared in
|
|
197
|
+
* a session snapshot); every wheel-zoom view reads this single value.
|
|
198
|
+
*/
|
|
199
|
+
readonly scrollZoom: boolean;
|
|
200
|
+
/**
|
|
201
|
+
* #getter
|
|
202
|
+
* resolved thousand-separator preference. Read for display in the
|
|
203
|
+
* Preferences dialog; the formatter itself reads a plain module variable
|
|
204
|
+
* set at startup in each realm (see `setNumberGrouping`), because worker-
|
|
205
|
+
* built strings can't see a main-thread observable.
|
|
206
|
+
*/
|
|
207
|
+
readonly numberGrouping: boolean;
|
|
208
|
+
} & {
|
|
209
|
+
afterAttach(): void;
|
|
210
|
+
/**
|
|
211
|
+
* #action
|
|
212
|
+
* set the global selection, i.e. the globally-selected object. can be a
|
|
213
|
+
* feature, a view, just about anything
|
|
214
|
+
*
|
|
215
|
+
* A feature is unwrapped on the way in, so app state never holds a
|
|
216
|
+
* jexlFeatureProxy. `isFeature` accepts a proxy, but on one `id` is a
|
|
217
|
+
* data field rather than the method the Feature type promises — every
|
|
218
|
+
* consumer doing `isFeature(selection) ? selection.id() : …` would throw.
|
|
219
|
+
*/
|
|
24
220
|
setSelection(thing: unknown): void;
|
|
221
|
+
/**
|
|
222
|
+
* #action
|
|
223
|
+
* clears the global selection
|
|
224
|
+
*/
|
|
25
225
|
clearSelection(): void;
|
|
226
|
+
/**
|
|
227
|
+
* #action
|
|
228
|
+
*/
|
|
26
229
|
setHovered(thing: unknown): void;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
230
|
+
/**
|
|
231
|
+
* #action
|
|
232
|
+
* toggle all region highlight bands across every view
|
|
233
|
+
*/
|
|
234
|
+
setHighlightsVisible(arg: boolean): void;
|
|
235
|
+
/**
|
|
236
|
+
* #action
|
|
237
|
+
* turn highlight bands back on, so a newly made highlight or bookmark is
|
|
238
|
+
* never silently swallowed by an earlier "highlights off"
|
|
239
|
+
*/
|
|
240
|
+
revealHighlights(): void;
|
|
241
|
+
/**
|
|
242
|
+
* #action
|
|
243
|
+
* set a runtime user-preference override (see `getPreference`). Mutates
|
|
244
|
+
* volatile state; products persist these to localStorage. An `undefined`
|
|
245
|
+
* value deletes the key (rather than leaving a phantom entry that
|
|
246
|
+
* `getPreference` reads as absent) so the store never holds dead keys.
|
|
247
|
+
*/
|
|
248
|
+
setPreferenceOverride(key: string, value: unknown): void;
|
|
249
|
+
/**
|
|
250
|
+
* #action
|
|
251
|
+
* clear every runtime preference override at once — scrollZoom,
|
|
252
|
+
* animationMode, and every promoted per-display-type default (see
|
|
253
|
+
* `setDisplayTypeDefault`) — so each falls back to its config/admin
|
|
254
|
+
* default. Backs the Preferences dialog "Reset to defaults" button.
|
|
255
|
+
*/
|
|
256
|
+
clearPreferenceOverrides(): void;
|
|
257
|
+
/**
|
|
258
|
+
* #action
|
|
259
|
+
* clear a single runtime preference override (see `getPreference`) so it
|
|
260
|
+
* falls back to its config/admin default. Backs the per-entry reset in the
|
|
261
|
+
* Preferences dialog "Reset to defaults" confirmation.
|
|
262
|
+
*/
|
|
263
|
+
clearPreferenceOverride(key: string): void;
|
|
264
|
+
/**
|
|
265
|
+
* #action
|
|
266
|
+
* revert one row emitted by `getPreferenceChanges`, addressed by its
|
|
267
|
+
* display `path`. Backs the per-entry reset in the Preferences dialog's
|
|
268
|
+
* "Reset to defaults" confirmation.
|
|
269
|
+
*
|
|
270
|
+
* Lives here rather than in that dialog because this model owns both path
|
|
271
|
+
* shapes it has to undo: a promoted per-display-type default, whose row
|
|
272
|
+
* path is a readable label over a flat composite storage key, and every
|
|
273
|
+
* other override, whose path *is* its key. The dialog used to re-derive
|
|
274
|
+
* the first case from an exported path-head constant.
|
|
275
|
+
*/
|
|
276
|
+
resetPreferenceChange(path: string[]): void;
|
|
277
|
+
/**
|
|
278
|
+
* #action
|
|
279
|
+
* set the global scroll-to-zoom preference (see the `scrollZoom` getter)
|
|
280
|
+
*/
|
|
281
|
+
setScrollZoom(flag: boolean): void;
|
|
282
|
+
/**
|
|
283
|
+
* #action
|
|
284
|
+
* promote (or, with `value` undefined, clear) a per-display-type slot
|
|
285
|
+
* default. Just a preference override under one flat composite key (see
|
|
286
|
+
* `displayTypeDefaultKey`), so it persists and independently tracks like
|
|
287
|
+
* any other pref, and clearing deletes only that key.
|
|
288
|
+
*/
|
|
289
|
+
setDisplayTypeDefault(displayType: string, slot: string, value: unknown): void;
|
|
290
|
+
/**
|
|
291
|
+
* #action
|
|
292
|
+
*/
|
|
293
|
+
setName(str: string): void;
|
|
294
|
+
/**
|
|
295
|
+
* #action
|
|
296
|
+
* `undefined` is "no view is focused", which the property has always been
|
|
297
|
+
* able to hold (`types.maybe`) and this had no way to spell. Nothing
|
|
298
|
+
* cleared it on teardown as a result: a view that was focused when it left
|
|
299
|
+
* the session left its id behind, and since every consumer compares
|
|
300
|
+
* `focusedViewId === view.id`, the id matched nothing, the focus ring
|
|
301
|
+
* vanished with nothing to say why, and the dead id persisted into a saved
|
|
302
|
+
* or shared session. `takeOut` clears it now.
|
|
303
|
+
*/
|
|
304
|
+
setFocusedViewId(viewId: string | undefined): void;
|
|
305
|
+
/**
|
|
306
|
+
* #action
|
|
307
|
+
*/
|
|
308
|
+
removeActiveDialog(): void;
|
|
309
|
+
/**
|
|
310
|
+
* #action
|
|
311
|
+
*/
|
|
312
|
+
queueDialog(doneCallback: DoneCallback): void;
|
|
313
|
+
} & {
|
|
314
|
+
snackbarMessages: import("mobx").IObservableArray<import("@jbrowse/core/ui/SnackbarModel").SnackbarMessage>;
|
|
315
|
+
errorDialog: import("@jbrowse/core/ui/SnackbarModel").ErrorDialogState | undefined;
|
|
316
|
+
} & {
|
|
317
|
+
readonly snackbarMessageSet: Map<string, import("@jbrowse/core/ui/SnackbarModel").SnackbarMessage>;
|
|
318
|
+
} & {
|
|
319
|
+
notify(message: string, level?: import("@jbrowse/core/util").NotificationLevel, action?: import("@jbrowse/core/util").SnackAction | import("@jbrowse/core/util").SnackAction[]): void;
|
|
320
|
+
notifyError(errorMessage: string, error?: unknown, extra?: unknown, action?: import("@jbrowse/core/util").SnackAction): void;
|
|
321
|
+
setErrorDialog(state: import("@jbrowse/core/ui/SnackbarModel").ErrorDialogState | undefined): void;
|
|
322
|
+
pushSnackbarMessage(message: string, level?: import("@jbrowse/core/util").NotificationLevel, actions?: import("@jbrowse/core/util").SnackAction[]): void;
|
|
323
|
+
popSnackbarMessage(): import("@jbrowse/core/ui/SnackbarModel").SnackbarMessage | undefined;
|
|
324
|
+
removeSnackbarMessage(message: string): void;
|
|
325
|
+
}, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>;
|
|
326
|
+
/** Session mixin MST type for the most basic session */
|
|
32
327
|
export type BaseSessionType = ReturnType<typeof BaseSessionModel>;
|
|
328
|
+
/** Instance of the most basic possible session */
|
|
33
329
|
export type BaseSession = Instance<BaseSessionType>;
|
|
330
|
+
/** Type guard for BaseSession */
|
|
34
331
|
export declare function isBaseSession(thing: IAnyStateTreeNode): thing is BaseSession;
|
|
332
|
+
/** Type guard for whether a thing is JBrowse session */
|
|
35
333
|
export declare function isSession(thing: unknown): thing is BaseSession;
|
|
334
|
+
export {};
|