@jbrowse/app-core 4.2.1 → 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/AppSession/AppRootModel.d.ts +30 -0
- package/esm/AppSession/AppRootModel.js +1 -0
- package/esm/AppSession/AppSessionMixin.d.ts +1598 -0
- package/esm/AppSession/AppSessionMixin.js +62 -0
- package/esm/AppSession/index.d.ts +2 -0
- package/esm/AppSession/index.js +1 -0
- package/esm/Assemblies/AssembliesMixin.d.ts +225 -0
- package/esm/Assemblies/AssembliesMixin.js +149 -0
- package/esm/Assemblies/index.d.ts +1 -2
- package/esm/Assemblies/index.js +1 -2
- package/esm/HistoryManagement/index.d.ts +19 -0
- package/esm/HistoryManagement/index.js +42 -5
- package/esm/JBrowseConfig/RootConfiguration.d.ts +167 -78
- package/esm/JBrowseConfig/RootConfiguration.js +85 -7
- package/esm/JBrowseConfig/index.d.ts +169 -84
- package/esm/JBrowseConfig/index.js +62 -2
- package/esm/JBrowseModel/index.d.ts +176 -95
- package/esm/JBrowseModel/index.js +122 -21
- package/esm/RootMenu/index.d.ts +77 -2
- package/esm/RootMenu/index.js +107 -61
- package/esm/SessionSpec/index.d.ts +6 -0
- package/esm/SessionSpec/index.js +3 -0
- package/esm/SessionSpec/lgvUrlInit.d.ts +79 -0
- package/esm/SessionSpec/lgvUrlInit.js +158 -0
- package/esm/SessionSpec/loadSessionSpec.d.ts +21 -0
- package/esm/SessionSpec/loadSessionSpec.js +311 -0
- package/esm/SessionSpec/parseSessionSpecUrl.d.ts +13 -0
- package/esm/SessionSpec/parseSessionSpecUrl.js +196 -0
- package/esm/SessionSpec/types.d.ts +33 -0
- package/esm/SessionSpec/types.js +1 -0
- package/esm/WorkspaceLayout/LayoutRenderer.d.ts +24 -0
- package/esm/WorkspaceLayout/LayoutRenderer.js +185 -0
- package/esm/WorkspaceLayout/PanelView.d.ts +13 -0
- package/esm/WorkspaceLayout/PanelView.js +99 -0
- package/esm/WorkspaceLayout/TabStrip.d.ts +14 -0
- package/esm/WorkspaceLayout/TabStrip.js +226 -0
- package/esm/WorkspaceLayout/WorkspaceContainer.d.ts +16 -0
- package/esm/WorkspaceLayout/WorkspaceContainer.js +105 -0
- package/esm/WorkspaceLayout/WorkspacePanelActions.d.ts +24 -0
- package/esm/WorkspaceLayout/WorkspacePanelActions.js +120 -0
- package/esm/WorkspaceLayout/WorkspaceTab.d.ts +27 -0
- package/esm/WorkspaceLayout/WorkspaceTab.js +109 -0
- package/esm/WorkspaceLayout/dockviewTheme.d.ts +69 -0
- package/esm/WorkspaceLayout/dockviewTheme.js +82 -0
- package/esm/WorkspaceLayout/dropZone.d.ts +105 -0
- package/esm/WorkspaceLayout/dropZone.js +113 -0
- package/esm/WorkspaceLayout/index.d.ts +8 -0
- package/esm/WorkspaceLayout/index.js +4 -0
- package/esm/WorkspaceLayout/model.d.ts +240 -0
- package/esm/WorkspaceLayout/model.js +527 -0
- package/esm/WorkspaceLayout/panelChrome.d.ts +19 -0
- package/esm/WorkspaceLayout/panelChrome.js +4 -0
- package/esm/WorkspaceLayout/spec.d.ts +58 -0
- package/esm/WorkspaceLayout/spec.js +153 -0
- package/esm/WorkspaceLayout/splitter.d.ts +25 -0
- package/esm/WorkspaceLayout/splitter.js +37 -0
- package/esm/WorkspaceLayout/tree.d.ts +158 -0
- package/esm/WorkspaceLayout/tree.js +379 -0
- package/esm/WorkspaceLayout/useLayoutDrag.d.ts +34 -0
- package/esm/WorkspaceLayout/useLayoutDrag.js +232 -0
- package/esm/index.d.ts +16 -9
- package/esm/index.js +13 -9
- package/esm/menus.d.ts +63 -62
- package/esm/menus.js +131 -84
- package/esm/queryParams.d.ts +9 -0
- package/esm/queryParams.js +92 -0
- package/esm/sessionModelFactory.d.ts +18 -0
- package/esm/sessionModelFactory.js +1 -0
- package/esm/ui/App/App.d.ts +3 -14
- package/esm/ui/App/App.js +30 -17
- package/esm/ui/App/AppFab.d.ts +12 -3
- package/esm/ui/App/AppFab.js +15 -8
- package/esm/ui/App/AppReadyMarker.d.ts +34 -0
- package/esm/ui/App/AppReadyMarker.js +56 -0
- package/esm/ui/App/AppToolbar.d.ts +2 -14
- package/esm/ui/App/AppToolbar.js +23 -24
- package/esm/ui/App/ClassicViewsContainer.d.ts +3 -9
- package/esm/ui/App/ClassicViewsContainer.js +9 -8
- package/esm/ui/App/DialogQueue.d.ts +17 -1
- package/esm/ui/App/DialogQueue.js +30 -1
- package/esm/ui/App/Drawer.d.ts +1 -1
- package/esm/ui/App/Drawer.js +10 -39
- package/esm/ui/App/DrawerControls.d.ts +1 -5
- package/esm/ui/App/DrawerControls.js +1 -25
- package/esm/ui/App/DrawerHeader.d.ts +2 -3
- package/esm/ui/App/DrawerHeader.js +24 -10
- package/esm/ui/App/DrawerHeaderHelpButton.d.ts +1 -1
- package/esm/ui/App/DrawerHeaderHelpButton.js +3 -3
- package/esm/ui/App/DrawerHeaderHelpDialog.d.ts +2 -2
- package/esm/ui/App/DrawerHeaderHelpDialog.js +3 -4
- package/esm/ui/App/DrawerWidget.d.ts +1 -1
- package/esm/ui/App/DrawerWidget.js +9 -21
- package/esm/ui/App/JBrowseTabMenu.d.ts +2 -3
- package/esm/ui/App/JBrowseTabMenu.js +24 -5
- package/esm/ui/App/ViewButtons.d.ts +2 -4
- package/esm/ui/App/ViewButtons.js +15 -3
- package/esm/ui/App/ViewContainer.d.ts +3 -2
- package/esm/ui/App/ViewContainer.js +144 -24
- package/esm/ui/App/ViewContainerTitle.d.ts +1 -1
- package/esm/ui/App/ViewContainerTitle.js +9 -2
- package/esm/ui/App/ViewErrorFallback.d.ts +18 -0
- package/esm/ui/App/ViewErrorFallback.js +42 -0
- package/esm/ui/App/ViewHeader.d.ts +3 -4
- package/esm/ui/App/ViewHeader.js +28 -17
- package/esm/ui/App/ViewLauncher.d.ts +2 -8
- package/esm/ui/App/ViewLauncher.js +7 -5
- package/esm/ui/App/ViewMenu.d.ts +3 -5
- package/esm/ui/App/ViewMenu.js +87 -92
- package/esm/ui/App/ViewStack.d.ts +7 -0
- package/esm/ui/App/ViewStack.js +42 -0
- package/esm/ui/App/ViewWrapper.d.ts +15 -1
- package/esm/ui/App/ViewWrapper.js +26 -10
- package/esm/ui/App/ViewsContainer.d.ts +3 -8
- package/esm/ui/App/ViewsContainer.js +9 -6
- package/esm/ui/App/copyView.js +1 -1
- package/esm/ui/App/index.d.ts +2 -1
- package/esm/ui/App/index.js +3 -2
- package/esm/ui/App/lazyChunk.d.ts +13 -0
- package/esm/ui/App/lazyChunk.js +91 -0
- package/esm/ui/App/types.d.ts +12 -3
- package/esm/ui/App/types.js +1 -1
- package/esm/ui/App/useViewVisibility.d.ts +34 -0
- package/esm/ui/App/useViewVisibility.js +87 -0
- package/esm/ui/App/viewTitle.d.ts +5 -0
- package/esm/ui/App/viewTitle.js +9 -0
- package/esm/ui/index.d.ts +1 -1
- package/esm/ui/index.js +1 -1
- package/package.json +12 -17
- package/esm/AppFocus/index.d.ts +0 -5
- package/esm/AppFocus/index.js +0 -12
- package/esm/Assemblies/SessionAssembliesMixin.d.ts +0 -92
- package/esm/Assemblies/SessionAssembliesMixin.js +0 -53
- package/esm/Assemblies/TemporaryAssembliesMixin.d.ts +0 -10
- package/esm/Assemblies/TemporaryAssembliesMixin.js +0 -37
- package/esm/DockviewLayout/index.d.ts +0 -35
- package/esm/DockviewLayout/index.js +0 -111
- package/esm/ui/App/DockviewContext.d.ts +0 -22
- package/esm/ui/App/DockviewContext.js +0 -29
- package/esm/ui/App/DockviewLeftHeaderActions.d.ts +0 -2
- package/esm/ui/App/DockviewLeftHeaderActions.js +0 -58
- package/esm/ui/App/DockviewRightHeaderActions.d.ts +0 -2
- package/esm/ui/App/DockviewRightHeaderActions.js +0 -100
- package/esm/ui/App/DrawerWidgetSelector.d.ts +0 -5
- package/esm/ui/App/DrawerWidgetSelector.js +0 -47
- package/esm/ui/App/JBrowseViewPanel.d.ts +0 -8
- package/esm/ui/App/JBrowseViewPanel.js +0 -40
- package/esm/ui/App/JBrowseViewTab.d.ts +0 -8
- package/esm/ui/App/JBrowseViewTab.js +0 -97
- package/esm/ui/App/ModalWidget.d.ts +0 -6
- package/esm/ui/App/ModalWidget.js +0 -48
- package/esm/ui/App/TiledViewsContainer.d.ts +0 -6
- package/esm/ui/App/TiledViewsContainer.js +0 -366
- package/esm/ui/App/dockviewUtils.d.ts +0 -46
- package/esm/ui/App/dockviewUtils.js +0 -55
|
@@ -1,117 +1,179 @@
|
|
|
1
|
-
import type { PluginDefinition } from '@jbrowse/core/PluginLoader';
|
|
2
1
|
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
3
|
-
import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
4
|
-
|
|
2
|
+
import type { AnyConfigurationSchemaType, ConfigurationSchemaDefinition } from '@jbrowse/core/configuration';
|
|
3
|
+
import type { PluginDefinition } from '@jbrowse/core/pluginDefinitions';
|
|
4
|
+
export { DEFAULT_SHARE_URL } from './RootConfiguration.ts';
|
|
5
|
+
/**
|
|
6
|
+
* #config JBrowseRootConfig
|
|
7
|
+
* #category root
|
|
8
|
+
*
|
|
9
|
+
* this is a config model representing a config.json (for jbrowse-web) or
|
|
10
|
+
* somefile.jbrowse (for jbrowse-desktop, where configs have the .jbrowse
|
|
11
|
+
* extension)
|
|
12
|
+
*
|
|
13
|
+
* also includes any pluginManager.pluginConfigurationSchemas(), so plugins
|
|
14
|
+
* that have a configurationSchema field on their class are mixed into this
|
|
15
|
+
* object
|
|
16
|
+
*/
|
|
17
|
+
export declare function JBrowseConfigF({ pluginManager, assemblyConfigSchema, extraConfigSlots, }: {
|
|
5
18
|
pluginManager: PluginManager;
|
|
6
19
|
assemblyConfigSchema: AnyConfigurationSchemaType;
|
|
7
|
-
|
|
20
|
+
extraConfigSlots?: ConfigurationSchemaDefinition;
|
|
8
21
|
}): import("@jbrowse/mobx-state-tree").IModelType<{
|
|
9
22
|
configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
10
|
-
rpc: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
11
|
-
defaultDriver: {
|
|
12
|
-
type: string;
|
|
13
|
-
description:
|
|
14
|
-
defaultValue:
|
|
23
|
+
readonly rpc: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
24
|
+
readonly defaultDriver: {
|
|
25
|
+
readonly type: "string";
|
|
26
|
+
readonly description: "the RPC driver to run data fetching on: MainThreadRpcDriver or WebWorkerRpcDriver. Leave empty to use the default for this application";
|
|
27
|
+
readonly defaultValue: "";
|
|
28
|
+
readonly advanced: true;
|
|
29
|
+
};
|
|
30
|
+
readonly workerCount: {
|
|
31
|
+
readonly type: "number";
|
|
32
|
+
readonly description: "The number of workers to use. If 0 (the default) JBrowse will decide how many workers to use.";
|
|
33
|
+
readonly defaultValue: 0;
|
|
34
|
+
readonly advanced: true;
|
|
15
35
|
};
|
|
16
|
-
drivers: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").ITypeUnion<import("@jbrowse/mobx-state-tree").ModelCreationType<import("@jbrowse/mobx-state-tree/dist/internal").ExtractCFromProps<Record<string, any>>> | undefined, import("@jbrowse/mobx-state-tree").ModelSnapshotType<Record<string, any>>, ({} & Partial<import("@jbrowse/mobx-state-tree/dist/internal").ExtractCFromProps<Record<string, any>>> & import("@jbrowse/mobx-state-tree/dist/internal").NonEmptyObject) | undefined>>, [undefined]>;
|
|
17
36
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
type: string;
|
|
25
|
-
description: string;
|
|
26
|
-
defaultValue: {};
|
|
27
|
-
contextVariable: string[];
|
|
37
|
+
readonly formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
38
|
+
readonly feature: {
|
|
39
|
+
readonly type: "frozen";
|
|
40
|
+
readonly description: "adds extra fields to the feature details";
|
|
41
|
+
readonly defaultValue: {};
|
|
42
|
+
readonly contextVariable: ["feature"];
|
|
28
43
|
};
|
|
29
|
-
subfeatures: {
|
|
30
|
-
type:
|
|
31
|
-
description:
|
|
32
|
-
defaultValue: {};
|
|
33
|
-
contextVariable:
|
|
44
|
+
readonly subfeatures: {
|
|
45
|
+
readonly type: "frozen";
|
|
46
|
+
readonly description: "adds extra fields to the subfeatures of a feature";
|
|
47
|
+
readonly defaultValue: {};
|
|
48
|
+
readonly contextVariable: ["feature"];
|
|
34
49
|
};
|
|
35
|
-
depth: {
|
|
36
|
-
type:
|
|
37
|
-
|
|
38
|
-
description: string;
|
|
50
|
+
readonly depth: {
|
|
51
|
+
readonly type: "maybeNumber";
|
|
52
|
+
readonly description: "levels of subfeature the formatDetails.subfeatures callback runs on, default 2";
|
|
39
53
|
};
|
|
40
|
-
maxDepth: {
|
|
41
|
-
type:
|
|
42
|
-
|
|
43
|
-
description: string;
|
|
54
|
+
readonly maxDepth: {
|
|
55
|
+
readonly type: "maybeNumber";
|
|
56
|
+
readonly description: "hide subfeatures nested deeper than this, default no limit";
|
|
44
57
|
};
|
|
45
58
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
46
|
-
formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
47
|
-
config: {
|
|
48
|
-
type:
|
|
49
|
-
description:
|
|
50
|
-
defaultValue: {};
|
|
51
|
-
contextVariable:
|
|
59
|
+
readonly formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
60
|
+
readonly config: {
|
|
61
|
+
readonly type: "frozen";
|
|
62
|
+
readonly description: "formats configuration object in about dialog";
|
|
63
|
+
readonly defaultValue: {};
|
|
64
|
+
readonly contextVariable: ["config"];
|
|
52
65
|
};
|
|
53
|
-
hideUris: {
|
|
54
|
-
type:
|
|
55
|
-
defaultValue:
|
|
66
|
+
readonly hideUris: {
|
|
67
|
+
readonly type: "boolean";
|
|
68
|
+
readonly defaultValue: false;
|
|
56
69
|
};
|
|
57
70
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
58
|
-
shareURL: {
|
|
59
|
-
type: string;
|
|
60
|
-
defaultValue:
|
|
71
|
+
readonly shareURL: {
|
|
72
|
+
readonly type: "string";
|
|
73
|
+
readonly defaultValue: "https://share.jbrowse.org/api/v1/";
|
|
74
|
+
readonly advanced: true;
|
|
61
75
|
};
|
|
62
|
-
disableAnalytics: {
|
|
63
|
-
type:
|
|
64
|
-
defaultValue:
|
|
76
|
+
readonly disableAnalytics: {
|
|
77
|
+
readonly type: "boolean";
|
|
78
|
+
readonly defaultValue: false;
|
|
79
|
+
readonly advanced: true;
|
|
65
80
|
};
|
|
66
|
-
hierarchical: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
67
|
-
sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
68
|
-
trackNames: {
|
|
69
|
-
type:
|
|
70
|
-
defaultValue:
|
|
81
|
+
readonly hierarchical: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
82
|
+
readonly sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
83
|
+
readonly trackNames: {
|
|
84
|
+
readonly type: "boolean";
|
|
85
|
+
readonly defaultValue: false;
|
|
71
86
|
};
|
|
72
|
-
categories: {
|
|
73
|
-
type:
|
|
74
|
-
defaultValue:
|
|
87
|
+
readonly categories: {
|
|
88
|
+
readonly type: "boolean";
|
|
89
|
+
readonly defaultValue: false;
|
|
75
90
|
};
|
|
76
91
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
77
|
-
defaultFolderCategories: {
|
|
78
|
-
type:
|
|
79
|
-
description:
|
|
80
|
-
defaultValue:
|
|
92
|
+
readonly defaultFolderCategories: {
|
|
93
|
+
readonly type: "stringArray";
|
|
94
|
+
readonly description: "list of category names to display as folders by default";
|
|
95
|
+
readonly defaultValue: readonly [];
|
|
81
96
|
};
|
|
82
|
-
defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
83
|
-
categoryNames: {
|
|
84
|
-
type:
|
|
85
|
-
defaultValue:
|
|
97
|
+
readonly defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
98
|
+
readonly categoryNames: {
|
|
99
|
+
readonly type: "stringArray";
|
|
100
|
+
readonly defaultValue: readonly [];
|
|
86
101
|
};
|
|
87
|
-
topLevelCategories: {
|
|
88
|
-
type:
|
|
89
|
-
defaultValue:
|
|
102
|
+
readonly topLevelCategories: {
|
|
103
|
+
readonly type: "boolean";
|
|
104
|
+
readonly defaultValue: false;
|
|
90
105
|
};
|
|
91
|
-
subCategories: {
|
|
92
|
-
type:
|
|
93
|
-
defaultValue:
|
|
106
|
+
readonly subCategories: {
|
|
107
|
+
readonly type: "boolean";
|
|
108
|
+
readonly defaultValue: false;
|
|
94
109
|
};
|
|
95
110
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
96
111
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
112
|
+
readonly preferences: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
113
|
+
readonly animationMode: {
|
|
114
|
+
readonly model: import("@jbrowse/mobx-state-tree").ISimpleType<"disabled" | "enabled" | "system">;
|
|
115
|
+
readonly type: "stringEnum";
|
|
116
|
+
readonly defaultValue: "enabled";
|
|
117
|
+
};
|
|
118
|
+
readonly scrollZoom: {
|
|
119
|
+
readonly type: "boolean";
|
|
120
|
+
readonly defaultValue: false;
|
|
121
|
+
};
|
|
122
|
+
readonly numberGrouping: {
|
|
123
|
+
readonly type: "boolean";
|
|
124
|
+
readonly defaultValue: true;
|
|
125
|
+
};
|
|
126
|
+
readonly useWorkspaces: {
|
|
127
|
+
readonly type: "boolean";
|
|
128
|
+
readonly defaultValue: false;
|
|
129
|
+
};
|
|
130
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
131
|
+
readonly theme: {
|
|
132
|
+
readonly type: "frozen";
|
|
133
|
+
readonly description: "Material UI theme overrides applied to the JBrowse UI";
|
|
134
|
+
readonly defaultValue: {};
|
|
100
135
|
};
|
|
101
|
-
extraThemes: {
|
|
102
|
-
type:
|
|
103
|
-
|
|
136
|
+
readonly extraThemes: {
|
|
137
|
+
readonly type: "frozen";
|
|
138
|
+
readonly description: "additional named themes the user can switch between";
|
|
139
|
+
readonly defaultValue: {};
|
|
140
|
+
readonly advanced: true;
|
|
104
141
|
};
|
|
105
|
-
logoPath: {
|
|
106
|
-
type:
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
142
|
+
readonly logoPath: {
|
|
143
|
+
readonly type: "fileLocation";
|
|
144
|
+
readonly description: "path to a custom logo image displayed in the app header";
|
|
145
|
+
readonly defaultValue: {
|
|
146
|
+
readonly uri: "";
|
|
147
|
+
readonly locationType: "UriLocation";
|
|
110
148
|
};
|
|
149
|
+
readonly advanced: true;
|
|
111
150
|
};
|
|
112
151
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
152
|
+
/**
|
|
153
|
+
* #slot
|
|
154
|
+
* defines plugins of the format
|
|
155
|
+
* ```typescript
|
|
156
|
+
* type PluginDefinition=
|
|
157
|
+
* { umdUrl: string, name:string } |
|
|
158
|
+
* { url: string, name: string } |
|
|
159
|
+
* { esmUrl: string } |
|
|
160
|
+
* { cjsUrl: string } |
|
|
161
|
+
* { umdLoc: { uri: string } } |
|
|
162
|
+
* { esmLoc: { uri: string } } |
|
|
163
|
+
* ```
|
|
164
|
+
*/
|
|
113
165
|
plugins: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<PluginDefinition, PluginDefinition, PluginDefinition>>;
|
|
166
|
+
/**
|
|
167
|
+
* #slot
|
|
168
|
+
* configuration of the assemblies in the instance, see BaseAssembly
|
|
169
|
+
*/
|
|
114
170
|
assemblies: import("@jbrowse/mobx-state-tree").IArrayType<AnyConfigurationSchemaType>;
|
|
171
|
+
/**
|
|
172
|
+
* #slot
|
|
173
|
+
* track configuration is an array of track config schemas. multiple
|
|
174
|
+
* instances of a track can exist that use the same configuration.
|
|
175
|
+
* Always uses frozen for performance - editing creates temporary MST models.
|
|
176
|
+
*/
|
|
115
177
|
tracks: import("@jbrowse/mobx-state-tree").IType<{
|
|
116
178
|
[key: string]: unknown;
|
|
117
179
|
trackId: string;
|
|
@@ -122,9 +184,32 @@ export declare function JBrowseConfigF({ pluginManager, assemblyConfigSchema, }:
|
|
|
122
184
|
[key: string]: unknown;
|
|
123
185
|
trackId: string;
|
|
124
186
|
}[]>;
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
187
|
+
/**
|
|
188
|
+
* #slot
|
|
189
|
+
* configuration for internet accounts, see InternetAccounts
|
|
190
|
+
*/
|
|
191
|
+
internetAccounts: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IAnyType>;
|
|
192
|
+
/**
|
|
193
|
+
* #slot
|
|
194
|
+
* configuration for aggregate text search adapters (created by e.g.
|
|
195
|
+
* jbrowse text-index, but can be a pluggable TextSearchAdapter type)
|
|
196
|
+
*/
|
|
197
|
+
aggregateTextSearchAdapters: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IAnyType>;
|
|
198
|
+
/**
|
|
199
|
+
* #slot
|
|
200
|
+
* configuration for connections
|
|
201
|
+
*/
|
|
202
|
+
connections: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IAnyType>;
|
|
203
|
+
/**
|
|
204
|
+
* #slot
|
|
205
|
+
* the session loaded when no session is otherwise specified, e.g. the
|
|
206
|
+
* initial view shown on first load
|
|
207
|
+
*/
|
|
128
208
|
defaultSession: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IType<any, any, any>, [undefined]>;
|
|
209
|
+
/**
|
|
210
|
+
* #slot
|
|
211
|
+
* named sessions bundled with the config that a user can open from the
|
|
212
|
+
* session selector
|
|
213
|
+
*/
|
|
129
214
|
preConfiguredSessions: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<any, any, any>>;
|
|
130
215
|
}, {}, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>;
|
|
@@ -1,19 +1,79 @@
|
|
|
1
1
|
import { types } from '@jbrowse/mobx-state-tree';
|
|
2
|
-
import RootConfiguration from
|
|
3
|
-
export
|
|
2
|
+
import RootConfiguration from './RootConfiguration.js';
|
|
3
|
+
export { DEFAULT_SHARE_URL } from './RootConfiguration.js';
|
|
4
|
+
/**
|
|
5
|
+
* #config JBrowseRootConfig
|
|
6
|
+
* #category root
|
|
7
|
+
*
|
|
8
|
+
* this is a config model representing a config.json (for jbrowse-web) or
|
|
9
|
+
* somefile.jbrowse (for jbrowse-desktop, where configs have the .jbrowse
|
|
10
|
+
* extension)
|
|
11
|
+
*
|
|
12
|
+
* also includes any pluginManager.pluginConfigurationSchemas(), so plugins
|
|
13
|
+
* that have a configurationSchema field on their class are mixed into this
|
|
14
|
+
* object
|
|
15
|
+
*/
|
|
16
|
+
export function JBrowseConfigF({ pluginManager, assemblyConfigSchema, extraConfigSlots, }) {
|
|
4
17
|
return types.model('JBrowseConfig', {
|
|
5
18
|
configuration: RootConfiguration({
|
|
6
19
|
pluginManager,
|
|
20
|
+
extraConfigSlots,
|
|
7
21
|
}),
|
|
22
|
+
/**
|
|
23
|
+
* #slot
|
|
24
|
+
* defines plugins of the format
|
|
25
|
+
* ```typescript
|
|
26
|
+
* type PluginDefinition=
|
|
27
|
+
* { umdUrl: string, name:string } |
|
|
28
|
+
* { url: string, name: string } |
|
|
29
|
+
* { esmUrl: string } |
|
|
30
|
+
* { cjsUrl: string } |
|
|
31
|
+
* { umdLoc: { uri: string } } |
|
|
32
|
+
* { esmLoc: { uri: string } } |
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
8
35
|
plugins: types.array(types.frozen()),
|
|
36
|
+
/**
|
|
37
|
+
* #slot
|
|
38
|
+
* configuration of the assemblies in the instance, see BaseAssembly
|
|
39
|
+
*/
|
|
9
40
|
assemblies: types.array(assemblyConfigSchema),
|
|
41
|
+
/**
|
|
42
|
+
* #slot
|
|
43
|
+
* track configuration is an array of track config schemas. multiple
|
|
44
|
+
* instances of a track can exist that use the same configuration.
|
|
45
|
+
* Always uses frozen for performance - editing creates temporary MST models.
|
|
46
|
+
*/
|
|
10
47
|
tracks: types.frozen([]),
|
|
48
|
+
/**
|
|
49
|
+
* #slot
|
|
50
|
+
* configuration for internet accounts, see InternetAccounts
|
|
51
|
+
*/
|
|
11
52
|
internetAccounts: types.array(pluginManager.pluggableConfigSchemaType('internet account')),
|
|
53
|
+
/**
|
|
54
|
+
* #slot
|
|
55
|
+
* configuration for aggregate text search adapters (created by e.g.
|
|
56
|
+
* jbrowse text-index, but can be a pluggable TextSearchAdapter type)
|
|
57
|
+
*/
|
|
12
58
|
aggregateTextSearchAdapters: types.array(pluginManager.pluggableConfigSchemaType('text search adapter')),
|
|
59
|
+
/**
|
|
60
|
+
* #slot
|
|
61
|
+
* configuration for connections
|
|
62
|
+
*/
|
|
13
63
|
connections: types.array(pluginManager.pluggableConfigSchemaType('connection')),
|
|
64
|
+
/**
|
|
65
|
+
* #slot
|
|
66
|
+
* the session loaded when no session is otherwise specified, e.g. the
|
|
67
|
+
* initial view shown on first load
|
|
68
|
+
*/
|
|
14
69
|
defaultSession: types.optional(types.frozen(), {
|
|
15
70
|
name: 'New Session',
|
|
16
71
|
}),
|
|
72
|
+
/**
|
|
73
|
+
* #slot
|
|
74
|
+
* named sessions bundled with the config that a user can open from the
|
|
75
|
+
* session selector
|
|
76
|
+
*/
|
|
17
77
|
preConfiguredSessions: types.array(types.frozen()),
|
|
18
78
|
...pluginManager.pluginConfigurationRootSchemas(),
|
|
19
79
|
});
|