@jbrowse/app-core 4.3.0 → 5.0.0-beta.10
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 +1324 -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 +294 -0
- package/esm/Assemblies/AssembliesMixin.js +154 -0
- package/esm/Assemblies/index.d.ts +1 -2
- package/esm/Assemblies/index.js +1 -2
- package/esm/HistoryManagement/index.d.ts +11 -0
- package/esm/HistoryManagement/index.js +43 -10
- package/esm/JBrowseConfig/RootConfiguration.d.ts +123 -78
- package/esm/JBrowseConfig/RootConfiguration.js +79 -7
- package/esm/JBrowseConfig/defaultShareUrl.d.ts +1 -0
- package/esm/JBrowseConfig/defaultShareUrl.js +5 -0
- package/esm/JBrowseConfig/index.d.ts +175 -84
- package/esm/JBrowseConfig/index.js +64 -2
- package/esm/JBrowseModel/index.d.ts +175 -97
- package/esm/JBrowseModel/index.js +132 -31
- package/esm/JbApi/index.d.ts +2 -0
- package/esm/JbApi/index.js +1 -0
- package/esm/JbApi/jbApi.d.ts +2767 -0
- package/esm/JbApi/jbApi.js +1383 -0
- package/esm/RootMenu/index.d.ts +69 -3
- package/esm/RootMenu/index.js +96 -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 +161 -0
- package/esm/SessionSpec/loadSessionSpec.d.ts +75 -0
- package/esm/SessionSpec/loadSessionSpec.js +473 -0
- package/esm/SessionSpec/parseSessionSpecUrl.d.ts +7 -0
- package/esm/SessionSpec/parseSessionSpecUrl.js +181 -0
- package/esm/SessionSpec/types.d.ts +37 -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 +107 -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 +105 -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 +260 -0
- package/esm/WorkspaceLayout/model.js +586 -0
- package/esm/WorkspaceLayout/panelChrome.d.ts +19 -0
- package/esm/WorkspaceLayout/panelChrome.js +4 -0
- package/esm/WorkspaceLayout/spec.d.ts +88 -0
- package/esm/WorkspaceLayout/spec.js +226 -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 +18 -9
- package/esm/index.js +16 -9
- package/esm/menus.d.ts +55 -68
- package/esm/menus.js +117 -86
- package/esm/queryParams.d.ts +9 -0
- package/esm/queryParams.js +93 -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 +39 -19
- package/esm/ui/App/AppFab.d.ts +12 -3
- package/esm/ui/App/AppFab.js +15 -8
- package/esm/ui/App/AppToolbar.d.ts +2 -14
- package/esm/ui/App/AppToolbar.js +45 -31
- package/esm/ui/App/ClassicViewsContainer.d.ts +4 -10
- 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/DrawerHeader.d.ts +2 -3
- package/esm/ui/App/DrawerHeader.js +24 -11
- 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/ThemeModeButton.d.ts +12 -0
- package/esm/ui/App/ThemeModeButton.js +34 -0
- 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 +128 -24
- package/esm/ui/App/ViewContainerTitle.d.ts +1 -1
- package/esm/ui/App/ViewContainerTitle.js +21 -11
- 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 +48 -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 +4 -11
- package/esm/ui/App/ViewsContainer.js +6 -9
- 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/lazyParts.d.ts +32 -0
- package/esm/ui/App/lazyParts.js +8 -0
- package/esm/ui/App/preloadAppShell.d.ts +14 -0
- package/esm/ui/App/preloadAppShell.js +41 -0
- package/esm/ui/App/types.d.ts +17 -3
- package/esm/ui/App/types.js +1 -1
- package/esm/ui/App/useViewVisibility.d.ts +35 -0
- package/esm/ui/App/useViewVisibility.js +88 -0
- package/esm/ui/App/viewTitle.d.ts +12 -0
- package/esm/ui/App/viewTitle.js +17 -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/DrawerControls.d.ts +0 -5
- package/esm/ui/App/DrawerControls.js +0 -25
- 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/copyView.d.ts +0 -1
- package/esm/ui/App/copyView.js +0 -29
- package/esm/ui/App/dockviewUtils.d.ts +0 -46
- package/esm/ui/App/dockviewUtils.js +0 -55
|
@@ -1,107 +1,152 @@
|
|
|
1
1
|
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
|
-
|
|
2
|
+
import type { ConfigurationSchemaDefinition } from '@jbrowse/core/configuration';
|
|
3
|
+
/**
|
|
4
|
+
* #config JBrowseConfiguration
|
|
5
|
+
* #category root
|
|
6
|
+
* this is the entry under the `configuration` key
|
|
7
|
+
* e.g.
|
|
8
|
+
* ```json
|
|
9
|
+
* {
|
|
10
|
+
* assemblies,
|
|
11
|
+
* tracks,
|
|
12
|
+
* configuration: { these entries here }
|
|
13
|
+
* }
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
export default function RootConfiguration({ pluginManager, extraConfigSlots, }: {
|
|
3
17
|
pluginManager: PluginManager;
|
|
18
|
+
extraConfigSlots?: ConfigurationSchemaDefinition;
|
|
4
19
|
}): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
5
|
-
rpc: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
6
|
-
defaultDriver: {
|
|
7
|
-
type: string;
|
|
8
|
-
|
|
20
|
+
readonly rpc: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
21
|
+
readonly defaultDriver: {
|
|
22
|
+
type: "string";
|
|
23
|
+
} & {
|
|
9
24
|
defaultValue: string;
|
|
10
25
|
};
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
defaultValue: number;
|
|
16
|
-
};
|
|
17
|
-
formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
18
|
-
feature: {
|
|
19
|
-
type: string;
|
|
20
|
-
description: string;
|
|
21
|
-
defaultValue: {};
|
|
22
|
-
contextVariable: string[];
|
|
26
|
+
readonly workerCount: {
|
|
27
|
+
type: "number";
|
|
28
|
+
} & {
|
|
29
|
+
defaultValue: number;
|
|
23
30
|
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
31
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
|
|
32
|
+
readonly formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
33
|
+
readonly feature: {
|
|
34
|
+
type: "frozen";
|
|
35
|
+
} & {
|
|
36
|
+
defaultValue: unknown;
|
|
29
37
|
};
|
|
30
|
-
|
|
31
|
-
type:
|
|
32
|
-
|
|
33
|
-
|
|
38
|
+
readonly subfeatures: {
|
|
39
|
+
type: "frozen";
|
|
40
|
+
} & {
|
|
41
|
+
defaultValue: unknown;
|
|
34
42
|
};
|
|
35
|
-
|
|
36
|
-
type:
|
|
37
|
-
defaultValue: number;
|
|
38
|
-
description: string;
|
|
43
|
+
readonly depth: {
|
|
44
|
+
type: "maybeNumber";
|
|
39
45
|
};
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
config: {
|
|
43
|
-
type: string;
|
|
44
|
-
description: string;
|
|
45
|
-
defaultValue: {};
|
|
46
|
-
contextVariable: string[];
|
|
46
|
+
readonly maxDepth: {
|
|
47
|
+
type: "maybeNumber";
|
|
47
48
|
};
|
|
48
|
-
|
|
49
|
-
|
|
49
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
|
|
50
|
+
readonly formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
51
|
+
readonly config: {
|
|
52
|
+
type: "frozen";
|
|
53
|
+
} & {
|
|
54
|
+
defaultValue: unknown;
|
|
55
|
+
};
|
|
56
|
+
readonly hideUris: {
|
|
57
|
+
type: "boolean";
|
|
58
|
+
} & {
|
|
50
59
|
defaultValue: boolean;
|
|
51
60
|
};
|
|
52
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
53
|
-
shareURL: {
|
|
54
|
-
type: string;
|
|
61
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
|
|
62
|
+
readonly shareURL: {
|
|
63
|
+
type: "string";
|
|
64
|
+
} & {
|
|
55
65
|
defaultValue: string;
|
|
56
66
|
};
|
|
57
|
-
disableAnalytics: {
|
|
58
|
-
type:
|
|
67
|
+
readonly disableAnalytics: {
|
|
68
|
+
type: "boolean";
|
|
69
|
+
} & {
|
|
59
70
|
defaultValue: boolean;
|
|
60
71
|
};
|
|
61
|
-
hierarchical: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
62
|
-
sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
63
|
-
trackNames: {
|
|
64
|
-
type:
|
|
72
|
+
readonly hierarchical: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
73
|
+
readonly sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
74
|
+
readonly trackNames: {
|
|
75
|
+
type: "boolean";
|
|
76
|
+
} & {
|
|
65
77
|
defaultValue: boolean;
|
|
66
78
|
};
|
|
67
|
-
categories: {
|
|
68
|
-
type:
|
|
79
|
+
readonly categories: {
|
|
80
|
+
type: "boolean";
|
|
81
|
+
} & {
|
|
69
82
|
defaultValue: boolean;
|
|
70
83
|
};
|
|
71
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
72
|
-
defaultFolderCategories: {
|
|
73
|
-
type:
|
|
74
|
-
|
|
75
|
-
defaultValue:
|
|
84
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
|
|
85
|
+
readonly defaultFolderCategories: {
|
|
86
|
+
type: "stringArray";
|
|
87
|
+
} & {
|
|
88
|
+
defaultValue: unknown;
|
|
76
89
|
};
|
|
77
|
-
defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
78
|
-
categoryNames: {
|
|
79
|
-
type:
|
|
80
|
-
|
|
90
|
+
readonly defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
91
|
+
readonly categoryNames: {
|
|
92
|
+
type: "stringArray";
|
|
93
|
+
} & {
|
|
94
|
+
defaultValue: unknown;
|
|
81
95
|
};
|
|
82
|
-
topLevelCategories: {
|
|
83
|
-
type:
|
|
96
|
+
readonly topLevelCategories: {
|
|
97
|
+
type: "boolean";
|
|
98
|
+
} & {
|
|
84
99
|
defaultValue: boolean;
|
|
85
100
|
};
|
|
86
|
-
subCategories: {
|
|
87
|
-
type:
|
|
101
|
+
readonly subCategories: {
|
|
102
|
+
type: "boolean";
|
|
103
|
+
} & {
|
|
88
104
|
defaultValue: boolean;
|
|
89
105
|
};
|
|
90
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
91
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
106
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
|
|
107
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
|
|
108
|
+
readonly preferences: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
109
|
+
readonly animationMode: {
|
|
110
|
+
type: "stringEnum";
|
|
111
|
+
} & {
|
|
112
|
+
model: import("@jbrowse/mobx-state-tree").ISimpleType<"disabled" | "enabled" | "system">;
|
|
113
|
+
} & {
|
|
114
|
+
defaultValue: string;
|
|
115
|
+
};
|
|
116
|
+
readonly scrollZoom: {
|
|
117
|
+
type: "boolean";
|
|
118
|
+
} & {
|
|
119
|
+
defaultValue: boolean;
|
|
120
|
+
};
|
|
121
|
+
readonly numberGrouping: {
|
|
122
|
+
type: "boolean";
|
|
123
|
+
} & {
|
|
124
|
+
defaultValue: boolean;
|
|
125
|
+
};
|
|
126
|
+
readonly useWorkspaces: {
|
|
127
|
+
type: "boolean";
|
|
128
|
+
} & {
|
|
129
|
+
defaultValue: boolean;
|
|
130
|
+
};
|
|
131
|
+
readonly developerMode: {
|
|
132
|
+
type: "boolean";
|
|
133
|
+
} & {
|
|
134
|
+
defaultValue: boolean;
|
|
135
|
+
};
|
|
136
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
|
|
137
|
+
readonly theme: {
|
|
138
|
+
type: "frozen";
|
|
139
|
+
} & {
|
|
140
|
+
defaultValue: unknown;
|
|
95
141
|
};
|
|
96
|
-
extraThemes: {
|
|
97
|
-
type:
|
|
98
|
-
|
|
142
|
+
readonly extraThemes: {
|
|
143
|
+
type: "frozen";
|
|
144
|
+
} & {
|
|
145
|
+
defaultValue: unknown;
|
|
99
146
|
};
|
|
100
|
-
logoPath: {
|
|
101
|
-
type:
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
locationType: string;
|
|
105
|
-
};
|
|
147
|
+
readonly logoPath: {
|
|
148
|
+
type: "fileLocation";
|
|
149
|
+
} & {
|
|
150
|
+
defaultValue: unknown;
|
|
106
151
|
};
|
|
107
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
152
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
|
|
@@ -1,40 +1,112 @@
|
|
|
1
1
|
import { ConfigurationSchema } from '@jbrowse/core/configuration';
|
|
2
2
|
import RpcManager from '@jbrowse/core/rpc/RpcManager';
|
|
3
|
-
import { FormatAboutConfigSchemaFactory, FormatDetailsConfigSchemaFactory, HierarchicalConfigSchemaFactory, } from '@jbrowse/product-core';
|
|
4
|
-
|
|
3
|
+
import { FormatAboutConfigSchemaFactory, FormatDetailsConfigSchemaFactory, HierarchicalConfigSchemaFactory, PreferencesConfigSchemaFactory, } from '@jbrowse/product-core';
|
|
4
|
+
import { DEFAULT_SHARE_URL } from './defaultShareUrl.js';
|
|
5
|
+
/**
|
|
6
|
+
* #config JBrowseConfiguration
|
|
7
|
+
* #category root
|
|
8
|
+
* this is the entry under the `configuration` key
|
|
9
|
+
* e.g.
|
|
10
|
+
* ```json
|
|
11
|
+
* {
|
|
12
|
+
* assemblies,
|
|
13
|
+
* tracks,
|
|
14
|
+
* configuration: { these entries here }
|
|
15
|
+
* }
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export default function RootConfiguration({ pluginManager, extraConfigSlots = {}, }) {
|
|
5
19
|
return ConfigurationSchema('Root', {
|
|
20
|
+
...extraConfigSlots,
|
|
21
|
+
/**
|
|
22
|
+
* #slot configuration.rpc
|
|
23
|
+
* configuration for the RPC system that runs data adapters in web workers,
|
|
24
|
+
* see RpcOptions
|
|
25
|
+
*/
|
|
6
26
|
rpc: RpcManager.configSchema,
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
27
|
+
/**
|
|
28
|
+
* #slot configuration.formatDetails
|
|
29
|
+
* jexl callbacks that add, rewrite or hide fields in the feature-details
|
|
30
|
+
* panel of every track at once. A track can set the same ones on its own
|
|
31
|
+
* `formatDetails` and override individual keys.
|
|
32
|
+
*/
|
|
11
33
|
formatDetails: FormatDetailsConfigSchemaFactory(),
|
|
34
|
+
/**
|
|
35
|
+
* #slot configuration.formatAbout
|
|
36
|
+
* jexl callbacks that add, rewrite or hide fields in the About dialog of
|
|
37
|
+
* every track at once. A track can set the same ones on its own
|
|
38
|
+
* `formatAbout` and override individual keys.
|
|
39
|
+
*/
|
|
12
40
|
formatAbout: FormatAboutConfigSchemaFactory(),
|
|
41
|
+
/**
|
|
42
|
+
* #slot configuration.shareURL
|
|
43
|
+
* URL of the session-sharing backend used by the Share button, a
|
|
44
|
+
* JBrowse-hosted service by default
|
|
45
|
+
*/
|
|
13
46
|
shareURL: {
|
|
14
47
|
type: 'string',
|
|
15
|
-
defaultValue:
|
|
48
|
+
defaultValue: DEFAULT_SHARE_URL,
|
|
49
|
+
advanced: true,
|
|
16
50
|
},
|
|
51
|
+
/**
|
|
52
|
+
* #slot configuration.disableAnalytics
|
|
53
|
+
* disables collection of anonymous usage analytics
|
|
54
|
+
*/
|
|
17
55
|
disableAnalytics: {
|
|
18
56
|
type: 'boolean',
|
|
19
57
|
defaultValue: false,
|
|
58
|
+
advanced: true,
|
|
20
59
|
},
|
|
60
|
+
/**
|
|
61
|
+
* #slot configuration.hierarchical
|
|
62
|
+
* configuration for the hierarchical track selector, controlling sorting
|
|
63
|
+
* and default categories, see HierarchicalConfigSchema
|
|
64
|
+
*/
|
|
21
65
|
hierarchical: HierarchicalConfigSchemaFactory(),
|
|
66
|
+
/**
|
|
67
|
+
* #slot configuration.preferences
|
|
68
|
+
* user preferences such as scroll-to-zoom and animation behavior, see
|
|
69
|
+
* PreferencesConfigSchema
|
|
70
|
+
*/
|
|
71
|
+
preferences: PreferencesConfigSchemaFactory(),
|
|
72
|
+
/**
|
|
73
|
+
* #slot configuration.theme
|
|
74
|
+
*/
|
|
22
75
|
theme: {
|
|
23
76
|
type: 'frozen',
|
|
77
|
+
description: 'Material UI theme overrides applied to the JBrowse UI',
|
|
24
78
|
defaultValue: {},
|
|
25
79
|
},
|
|
80
|
+
/**
|
|
81
|
+
* #slot configuration.extraThemes
|
|
82
|
+
*/
|
|
26
83
|
extraThemes: {
|
|
27
84
|
type: 'frozen',
|
|
85
|
+
description: 'additional named themes the user can switch between',
|
|
28
86
|
defaultValue: {},
|
|
87
|
+
advanced: true,
|
|
29
88
|
},
|
|
89
|
+
/**
|
|
90
|
+
* #slot configuration.logoPath
|
|
91
|
+
*/
|
|
30
92
|
logoPath: {
|
|
31
93
|
type: 'fileLocation',
|
|
94
|
+
description: 'path to a custom logo image displayed in the app header',
|
|
32
95
|
defaultValue: {
|
|
33
96
|
uri: '',
|
|
34
97
|
locationType: 'UriLocation',
|
|
35
98
|
},
|
|
99
|
+
advanced: true,
|
|
36
100
|
},
|
|
101
|
+
/**
|
|
102
|
+
* #slotAnnot
|
|
103
|
+
* this is a collection of 'namespaced' configs e.g. configuration.YourPlugin.slot
|
|
104
|
+
*/
|
|
37
105
|
...pluginManager.pluginConfigurationNamespacedSchemas(),
|
|
106
|
+
/**
|
|
107
|
+
* #slotAnnot
|
|
108
|
+
* this is a collection of 'unnamespaced' configs e.g. configuration.slot
|
|
109
|
+
*/
|
|
38
110
|
...pluginManager.pluginConfigurationUnnamespacedSchemas(),
|
|
39
111
|
});
|
|
40
112
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const DEFAULT_SHARE_URL = "https://share.jbrowse.org/api/v1/";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// The JBrowse-hosted session-sharing backend. Single source of truth for both
|
|
2
|
+
// the write path (the root config's `shareURL` default, read via getConf) and
|
|
3
|
+
// the SessionLoader read path (which reads the raw config snapshot before config
|
|
4
|
+
// is initialized), so the two can't drift onto different endpoints.
|
|
5
|
+
export const DEFAULT_SHARE_URL = 'https://share.jbrowse.org/api/v1/';
|