@jbrowse/product-core 5.0.0-beta.7 → 5.0.0-beta.9
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 +1 -4
- package/esm/RootModel/HierarchicalConfig.d.ts +21 -47
- package/esm/RootModel/PreferencesConfig.d.ts +18 -49
- package/esm/RootModel/PreferencesConfig.js +2 -3
- package/esm/RootModel/createConfigModel.d.ts +141 -124
- package/esm/RootModel/createConfigModel.js +26 -14
- package/esm/RootModel/menuItems.js +4 -6
- package/esm/Session/BaseSession.d.ts +30 -13
- package/esm/Session/BaseSession.js +50 -16
- package/esm/Session/Connections.d.ts +4 -3
- package/esm/Session/Connections.js +4 -3
- package/esm/Session/DrawerWidgets.d.ts +8 -1
- package/esm/Session/DrawerWidgets.js +19 -7
- package/esm/Session/MultipleViews.d.ts +13 -14
- package/esm/Session/Preferences.d.ts +8 -13
- package/esm/Session/SessionTracks.d.ts +32 -38
- package/esm/Session/SessionTracks.js +52 -115
- package/esm/Session/Themes.d.ts +9 -10
- package/esm/Session/Themes.js +9 -10
- package/esm/Session/TrackMenu.d.ts +1 -26
- package/esm/Session/TrackMenu.js +2 -33
- package/esm/Session/TrackMenuSessionMixin.js +2 -1
- package/esm/Session/Tracks.d.ts +8 -13
- package/esm/Session/copyTrackSnapshot.d.ts +21 -0
- package/esm/Session/copyTrackSnapshot.js +20 -0
- package/esm/Session/hydratedForms.d.ts +16 -0
- package/esm/Session/hydratedForms.js +13 -0
- package/esm/Session/index.d.ts +5 -1
- package/esm/Session/index.js +4 -1
- package/esm/Session/pluginExtraTrackItems.d.ts +11 -0
- package/esm/Session/pluginExtraTrackItems.js +13 -0
- package/esm/controllerTracks.d.ts +13 -8
- package/esm/controllerTracks.js +18 -9
- package/esm/index.d.ts +6 -6
- package/esm/index.js +3 -3
- package/esm/loadPlugins.d.ts +7 -2
- package/esm/loadPlugins.js +6 -2
- package/esm/resolveAssemblies.d.ts +34 -11
- package/esm/resolveAssemblies.js +29 -11
- package/esm/rpcWorker.d.ts +12 -5
- package/esm/rpcWorker.js +1 -1
- package/esm/sessionMigrations/index.d.ts +5 -5
- package/esm/sessionMigrations/index.js +82 -19
- package/esm/sessionUrl.js +1 -1
- package/esm/sessionUtils.d.ts +6 -1
- package/esm/sessionUtils.js +42 -35
- package/esm/ui/AboutDialog.d.ts +10 -2
- package/esm/ui/AboutDialog.js +11 -2
- package/esm/ui/AboutDialogContents.js +3 -21
- package/esm/ui/AppReadyMarker.d.ts +45 -0
- package/esm/ui/AppReadyMarker.js +89 -0
- package/esm/ui/AssemblyInfoPanel.js +4 -10
- package/esm/ui/DescriptionPanel.js +2 -1
- package/esm/ui/FileInfoPanel.js +5 -10
- package/esm/ui/RefNameInfoDialog.js +10 -23
- package/esm/ui/aboutTestUtils.d.ts +140 -0
- package/esm/ui/aboutTestUtils.js +25 -0
- package/esm/ui/descriptionHtml.d.ts +5 -6
- package/esm/ui/descriptionHtml.js +5 -7
- package/esm/ui/index.d.ts +2 -0
- package/esm/ui/index.js +1 -0
- package/esm/ui/util.d.ts +9 -27
- package/esm/ui/util.js +12 -31
- package/package.json +4 -4
|
@@ -530,10 +530,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
|
|
|
530
530
|
}, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>) | undefined;
|
|
531
531
|
readonly assemblyNamesList: string[];
|
|
532
532
|
readonly configuredAssemblyNames: Set<string>;
|
|
533
|
-
readonly assemblyList:
|
|
534
|
-
setSubschema(slotName: string, data: Record<string, unknown>): any;
|
|
535
|
-
setSlot(slotName: string, value: unknown): void;
|
|
536
|
-
} & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>)[];
|
|
533
|
+
readonly assemblyList: import("@jbrowse/core/configuration").AnyConfigurationModel[];
|
|
537
534
|
readonly rpcManager: RpcManager;
|
|
538
535
|
} & {
|
|
539
536
|
settleAssemblyResolution(assemblyName: string): Promise<void>;
|
|
@@ -5,63 +5,37 @@
|
|
|
5
5
|
*/
|
|
6
6
|
export declare function HierarchicalConfigSchemaFactory(): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
7
7
|
readonly sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
8
|
-
/**
|
|
9
|
-
* #slot configuration.hierarchical.sort.trackNames
|
|
10
|
-
* start the track selector with tracks sorted alphabetically inside each
|
|
11
|
-
* category rather than in config order. Only the initial state — the
|
|
12
|
-
* selector's own "Sort track names" toggle overrides it from then on
|
|
13
|
-
*/
|
|
14
8
|
readonly trackNames: {
|
|
15
|
-
|
|
16
|
-
|
|
9
|
+
type: "boolean";
|
|
10
|
+
} & {
|
|
11
|
+
defaultValue: boolean;
|
|
17
12
|
};
|
|
18
|
-
/**
|
|
19
|
-
* #slot configuration.hierarchical.sort.categories
|
|
20
|
-
* start the track selector with categories sorted alphabetically rather
|
|
21
|
-
* than in config order. Only the initial state — the selector's own
|
|
22
|
-
* "Sort categories" toggle overrides it from then on
|
|
23
|
-
*/
|
|
24
13
|
readonly categories: {
|
|
25
|
-
|
|
26
|
-
|
|
14
|
+
type: "boolean";
|
|
15
|
+
} & {
|
|
16
|
+
defaultValue: boolean;
|
|
27
17
|
};
|
|
28
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
29
|
-
/**
|
|
30
|
-
* #slot configuration.hierarchical.defaultFolderCategories
|
|
31
|
-
*/
|
|
18
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
32
19
|
readonly defaultFolderCategories: {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
20
|
+
type: "stringArray";
|
|
21
|
+
} & {
|
|
22
|
+
defaultValue: unknown;
|
|
36
23
|
};
|
|
37
24
|
readonly defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
38
|
-
/**
|
|
39
|
-
* #slot configuration.hierarchical.defaultCollapsed.categoryNames
|
|
40
|
-
* named top-level categories that start collapsed, e.g.
|
|
41
|
-
* `['ENCODE', 'RNA-seq']`. Once a user expands or collapses anything, the
|
|
42
|
-
* selector remembers their state instead
|
|
43
|
-
*/
|
|
44
25
|
readonly categoryNames: {
|
|
45
|
-
|
|
46
|
-
|
|
26
|
+
type: "stringArray";
|
|
27
|
+
} & {
|
|
28
|
+
defaultValue: unknown;
|
|
47
29
|
};
|
|
48
|
-
/**
|
|
49
|
-
* #slot configuration.hierarchical.defaultCollapsed.topLevelCategories
|
|
50
|
-
* start every top-level category collapsed, so a config with many
|
|
51
|
-
* categories opens as a short list rather than a wall of tracks
|
|
52
|
-
*/
|
|
53
30
|
readonly topLevelCategories: {
|
|
54
|
-
|
|
55
|
-
|
|
31
|
+
type: "boolean";
|
|
32
|
+
} & {
|
|
33
|
+
defaultValue: boolean;
|
|
56
34
|
};
|
|
57
|
-
/**
|
|
58
|
-
* #slot configuration.hierarchical.defaultCollapsed.subCategories
|
|
59
|
-
* start every nested category collapsed while leaving the top level
|
|
60
|
-
* open, for deeply categorized track sets
|
|
61
|
-
*/
|
|
62
35
|
readonly subCategories: {
|
|
63
|
-
|
|
64
|
-
|
|
36
|
+
type: "boolean";
|
|
37
|
+
} & {
|
|
38
|
+
defaultValue: boolean;
|
|
65
39
|
};
|
|
66
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
67
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
40
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
41
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
@@ -7,62 +7,31 @@
|
|
|
7
7
|
* override map layered over config defaults, at app scope.
|
|
8
8
|
*/
|
|
9
9
|
export declare function PreferencesConfigSchemaFactory(): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
10
|
-
/**
|
|
11
|
-
* #slot configuration.preferences.animationMode
|
|
12
|
-
* controls feature-layout animations: 'enabled' always animates (the
|
|
13
|
-
* default), 'system' respects the OS prefers-reduced-motion setting,
|
|
14
|
-
* 'disabled' never animates
|
|
15
|
-
*/
|
|
16
10
|
readonly animationMode: {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
11
|
+
type: "stringEnum";
|
|
12
|
+
} & {
|
|
13
|
+
model: import("@jbrowse/mobx-state-tree").ISimpleType<"disabled" | "enabled" | "system">;
|
|
14
|
+
} & {
|
|
15
|
+
defaultValue: string;
|
|
20
16
|
};
|
|
21
|
-
/**
|
|
22
|
-
* #slot configuration.preferences.scrollZoom
|
|
23
|
-
* when true, scrolling the mouse wheel over a track zooms in and out
|
|
24
|
-
* without holding Ctrl. Applies globally to all wheel-zoom views.
|
|
25
|
-
*/
|
|
26
17
|
readonly scrollZoom: {
|
|
27
|
-
|
|
28
|
-
|
|
18
|
+
type: "boolean";
|
|
19
|
+
} & {
|
|
20
|
+
defaultValue: boolean;
|
|
29
21
|
};
|
|
30
|
-
/**
|
|
31
|
-
* #slot configuration.preferences.numberGrouping
|
|
32
|
-
* when true (the default), numbers are displayed with thousand separators
|
|
33
|
-
* — `chr1:1,234,567`. Turn it off to render them bare, which is what you
|
|
34
|
-
* want if you copy coordinates out of JBrowse into tools that won't accept
|
|
35
|
-
* the commas. Applies to every displayed number, and takes effect on
|
|
36
|
-
* reload.
|
|
37
|
-
*/
|
|
38
22
|
readonly numberGrouping: {
|
|
39
|
-
|
|
40
|
-
|
|
23
|
+
type: "boolean";
|
|
24
|
+
} & {
|
|
25
|
+
defaultValue: boolean;
|
|
41
26
|
};
|
|
42
|
-
/**
|
|
43
|
-
* #slot configuration.preferences.useWorkspaces
|
|
44
|
-
* when true, views open in the tabbed/tiled workspace layout rather than
|
|
45
|
-
* stacked vertically. Only the default: a session that names
|
|
46
|
-
* `useWorkspaces` itself (a shared snapshot, or a session spec carrying a
|
|
47
|
-
* `layout`) still wins, and a user's own toggle overrides it.
|
|
48
|
-
*/
|
|
49
27
|
readonly useWorkspaces: {
|
|
50
|
-
|
|
51
|
-
|
|
28
|
+
type: "boolean";
|
|
29
|
+
} & {
|
|
30
|
+
defaultValue: boolean;
|
|
52
31
|
};
|
|
53
|
-
/**
|
|
54
|
-
* #slot configuration.preferences.developerMode
|
|
55
|
-
* when true, the ordering-contract checks a display or plugin can break
|
|
56
|
-
* report themselves in the app rather than only in a development build.
|
|
57
|
-
* Off by default and deliberately not in the Preferences dialog: the
|
|
58
|
-
* messages are about code, and a reader who cannot change the code cannot
|
|
59
|
-
* act on one. Turn it on for a site that is running a plugin under
|
|
60
|
-
* development; a plugin author needs nothing here, since a plugin served
|
|
61
|
-
* from localhost arms the same channel on its own, as does
|
|
62
|
-
* `localStorage.jbrowseDeveloperMode`. Takes effect on reload.
|
|
63
|
-
*/
|
|
64
32
|
readonly developerMode: {
|
|
65
|
-
|
|
66
|
-
|
|
33
|
+
type: "boolean";
|
|
34
|
+
} & {
|
|
35
|
+
defaultValue: boolean;
|
|
67
36
|
};
|
|
68
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
37
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
@@ -37,9 +37,8 @@ export function PreferencesConfigSchemaFactory() {
|
|
|
37
37
|
/**
|
|
38
38
|
* #slot configuration.preferences.numberGrouping
|
|
39
39
|
* when true (the default), numbers are displayed with thousand separators
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
* the commas. Applies to every displayed number, and takes effect on
|
|
40
|
+
* (`chr1:1,234,567`). Turn it off to display them without separators, for
|
|
41
|
+
* copying coordinates into tools that won't accept the commas. Applies to every displayed number, and takes effect on
|
|
43
42
|
* reload.
|
|
44
43
|
*/
|
|
45
44
|
numberGrouping: {
|
|
@@ -5,111 +5,117 @@ import type { IAnyType } from '@jbrowse/mobx-state-tree';
|
|
|
5
5
|
declare function rootConfigurationSchema(): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
6
6
|
readonly rpc: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
7
7
|
readonly defaultDriver: {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
readonly advanced: true;
|
|
8
|
+
type: "string";
|
|
9
|
+
} & {
|
|
10
|
+
defaultValue: string;
|
|
12
11
|
};
|
|
13
12
|
readonly workerCount: {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
readonly advanced: true;
|
|
13
|
+
type: "number";
|
|
14
|
+
} & {
|
|
15
|
+
defaultValue: number;
|
|
18
16
|
};
|
|
19
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
17
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
20
18
|
readonly hierarchical: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
21
19
|
readonly sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
22
20
|
readonly trackNames: {
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
type: "boolean";
|
|
22
|
+
} & {
|
|
23
|
+
defaultValue: boolean;
|
|
25
24
|
};
|
|
26
25
|
readonly categories: {
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
type: "boolean";
|
|
27
|
+
} & {
|
|
28
|
+
defaultValue: boolean;
|
|
29
29
|
};
|
|
30
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
30
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
31
31
|
readonly defaultFolderCategories: {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
type: "stringArray";
|
|
33
|
+
} & {
|
|
34
|
+
defaultValue: unknown;
|
|
35
35
|
};
|
|
36
36
|
readonly defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
37
37
|
readonly categoryNames: {
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
type: "stringArray";
|
|
39
|
+
} & {
|
|
40
|
+
defaultValue: unknown;
|
|
40
41
|
};
|
|
41
42
|
readonly topLevelCategories: {
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
type: "boolean";
|
|
44
|
+
} & {
|
|
45
|
+
defaultValue: boolean;
|
|
44
46
|
};
|
|
45
47
|
readonly subCategories: {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
+
type: "boolean";
|
|
49
|
+
} & {
|
|
50
|
+
defaultValue: boolean;
|
|
48
51
|
};
|
|
49
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
50
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
52
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
53
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
51
54
|
readonly preferences: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
52
55
|
readonly animationMode: {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
+
type: "stringEnum";
|
|
57
|
+
} & {
|
|
58
|
+
model: import("@jbrowse/mobx-state-tree").ISimpleType<"disabled" | "enabled" | "system">;
|
|
59
|
+
} & {
|
|
60
|
+
defaultValue: string;
|
|
56
61
|
};
|
|
57
62
|
readonly scrollZoom: {
|
|
58
|
-
|
|
59
|
-
|
|
63
|
+
type: "boolean";
|
|
64
|
+
} & {
|
|
65
|
+
defaultValue: boolean;
|
|
60
66
|
};
|
|
61
67
|
readonly numberGrouping: {
|
|
62
|
-
|
|
63
|
-
|
|
68
|
+
type: "boolean";
|
|
69
|
+
} & {
|
|
70
|
+
defaultValue: boolean;
|
|
64
71
|
};
|
|
65
72
|
readonly useWorkspaces: {
|
|
66
|
-
|
|
67
|
-
|
|
73
|
+
type: "boolean";
|
|
74
|
+
} & {
|
|
75
|
+
defaultValue: boolean;
|
|
68
76
|
};
|
|
69
77
|
readonly developerMode: {
|
|
70
|
-
|
|
71
|
-
|
|
78
|
+
type: "boolean";
|
|
79
|
+
} & {
|
|
80
|
+
defaultValue: boolean;
|
|
72
81
|
};
|
|
73
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
82
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
74
83
|
readonly formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
75
84
|
readonly feature: {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
readonly contextVariable: ["feature"];
|
|
85
|
+
type: "frozen";
|
|
86
|
+
} & {
|
|
87
|
+
defaultValue: unknown;
|
|
80
88
|
};
|
|
81
89
|
readonly subfeatures: {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
readonly contextVariable: ["feature"];
|
|
90
|
+
type: "frozen";
|
|
91
|
+
} & {
|
|
92
|
+
defaultValue: unknown;
|
|
86
93
|
};
|
|
87
94
|
readonly depth: {
|
|
88
|
-
|
|
89
|
-
readonly description: "levels of subfeature the formatDetails.subfeatures callback runs on, default 2";
|
|
95
|
+
type: "maybeNumber";
|
|
90
96
|
};
|
|
91
97
|
readonly maxDepth: {
|
|
92
|
-
|
|
93
|
-
readonly description: "hide subfeatures nested deeper than this, default no limit";
|
|
98
|
+
type: "maybeNumber";
|
|
94
99
|
};
|
|
95
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
100
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
96
101
|
readonly formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
97
102
|
readonly config: {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
readonly contextVariable: ["config"];
|
|
103
|
+
type: "frozen";
|
|
104
|
+
} & {
|
|
105
|
+
defaultValue: unknown;
|
|
102
106
|
};
|
|
103
107
|
readonly hideUris: {
|
|
104
|
-
|
|
105
|
-
|
|
108
|
+
type: "boolean";
|
|
109
|
+
} & {
|
|
110
|
+
defaultValue: boolean;
|
|
106
111
|
};
|
|
107
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
112
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
108
113
|
readonly theme: {
|
|
109
|
-
|
|
110
|
-
|
|
114
|
+
type: "frozen";
|
|
115
|
+
} & {
|
|
116
|
+
defaultValue: unknown;
|
|
111
117
|
};
|
|
112
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
118
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
113
119
|
/**
|
|
114
120
|
* What an embedder may put in `createViewState`'s `configuration` option: every
|
|
115
121
|
* root slot and sub-schema by name, values unchecked. Derived from the schema
|
|
@@ -121,120 +127,131 @@ export declare function createConfigModel(pluginManager: PluginManager, assembly
|
|
|
121
127
|
configuration: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
122
128
|
readonly rpc: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
123
129
|
readonly defaultDriver: {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
readonly advanced: true;
|
|
130
|
+
type: "string";
|
|
131
|
+
} & {
|
|
132
|
+
defaultValue: string;
|
|
128
133
|
};
|
|
129
134
|
readonly workerCount: {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
readonly advanced: true;
|
|
135
|
+
type: "number";
|
|
136
|
+
} & {
|
|
137
|
+
defaultValue: number;
|
|
134
138
|
};
|
|
135
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
139
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
136
140
|
readonly hierarchical: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
137
141
|
readonly sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
138
142
|
readonly trackNames: {
|
|
139
|
-
|
|
140
|
-
|
|
143
|
+
type: "boolean";
|
|
144
|
+
} & {
|
|
145
|
+
defaultValue: boolean;
|
|
141
146
|
};
|
|
142
147
|
readonly categories: {
|
|
143
|
-
|
|
144
|
-
|
|
148
|
+
type: "boolean";
|
|
149
|
+
} & {
|
|
150
|
+
defaultValue: boolean;
|
|
145
151
|
};
|
|
146
|
-
}, 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>>>;
|
|
147
153
|
readonly defaultFolderCategories: {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
154
|
+
type: "stringArray";
|
|
155
|
+
} & {
|
|
156
|
+
defaultValue: unknown;
|
|
151
157
|
};
|
|
152
158
|
readonly defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
153
159
|
readonly categoryNames: {
|
|
154
|
-
|
|
155
|
-
|
|
160
|
+
type: "stringArray";
|
|
161
|
+
} & {
|
|
162
|
+
defaultValue: unknown;
|
|
156
163
|
};
|
|
157
164
|
readonly topLevelCategories: {
|
|
158
|
-
|
|
159
|
-
|
|
165
|
+
type: "boolean";
|
|
166
|
+
} & {
|
|
167
|
+
defaultValue: boolean;
|
|
160
168
|
};
|
|
161
169
|
readonly subCategories: {
|
|
162
|
-
|
|
163
|
-
|
|
170
|
+
type: "boolean";
|
|
171
|
+
} & {
|
|
172
|
+
defaultValue: boolean;
|
|
164
173
|
};
|
|
165
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
166
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
174
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
175
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
167
176
|
readonly preferences: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
168
177
|
readonly animationMode: {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
178
|
+
type: "stringEnum";
|
|
179
|
+
} & {
|
|
180
|
+
model: import("@jbrowse/mobx-state-tree").ISimpleType<"disabled" | "enabled" | "system">;
|
|
181
|
+
} & {
|
|
182
|
+
defaultValue: string;
|
|
172
183
|
};
|
|
173
184
|
readonly scrollZoom: {
|
|
174
|
-
|
|
175
|
-
|
|
185
|
+
type: "boolean";
|
|
186
|
+
} & {
|
|
187
|
+
defaultValue: boolean;
|
|
176
188
|
};
|
|
177
189
|
readonly numberGrouping: {
|
|
178
|
-
|
|
179
|
-
|
|
190
|
+
type: "boolean";
|
|
191
|
+
} & {
|
|
192
|
+
defaultValue: boolean;
|
|
180
193
|
};
|
|
181
194
|
readonly useWorkspaces: {
|
|
182
|
-
|
|
183
|
-
|
|
195
|
+
type: "boolean";
|
|
196
|
+
} & {
|
|
197
|
+
defaultValue: boolean;
|
|
184
198
|
};
|
|
185
199
|
readonly developerMode: {
|
|
186
|
-
|
|
187
|
-
|
|
200
|
+
type: "boolean";
|
|
201
|
+
} & {
|
|
202
|
+
defaultValue: boolean;
|
|
188
203
|
};
|
|
189
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
204
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
190
205
|
readonly formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
191
206
|
readonly feature: {
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
readonly contextVariable: ["feature"];
|
|
207
|
+
type: "frozen";
|
|
208
|
+
} & {
|
|
209
|
+
defaultValue: unknown;
|
|
196
210
|
};
|
|
197
211
|
readonly subfeatures: {
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
readonly contextVariable: ["feature"];
|
|
212
|
+
type: "frozen";
|
|
213
|
+
} & {
|
|
214
|
+
defaultValue: unknown;
|
|
202
215
|
};
|
|
203
216
|
readonly depth: {
|
|
204
|
-
|
|
205
|
-
readonly description: "levels of subfeature the formatDetails.subfeatures callback runs on, default 2";
|
|
217
|
+
type: "maybeNumber";
|
|
206
218
|
};
|
|
207
219
|
readonly maxDepth: {
|
|
208
|
-
|
|
209
|
-
readonly description: "hide subfeatures nested deeper than this, default no limit";
|
|
220
|
+
type: "maybeNumber";
|
|
210
221
|
};
|
|
211
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
222
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
212
223
|
readonly formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
213
224
|
readonly config: {
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
readonly contextVariable: ["config"];
|
|
225
|
+
type: "frozen";
|
|
226
|
+
} & {
|
|
227
|
+
defaultValue: unknown;
|
|
218
228
|
};
|
|
219
229
|
readonly hideUris: {
|
|
220
|
-
|
|
221
|
-
|
|
230
|
+
type: "boolean";
|
|
231
|
+
} & {
|
|
232
|
+
defaultValue: boolean;
|
|
222
233
|
};
|
|
223
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
234
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
224
235
|
readonly theme: {
|
|
225
|
-
|
|
226
|
-
|
|
236
|
+
type: "frozen";
|
|
237
|
+
} & {
|
|
238
|
+
defaultValue: unknown;
|
|
227
239
|
};
|
|
228
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined
|
|
229
|
-
|
|
230
|
-
|
|
240
|
+
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>>>;
|
|
241
|
+
/**
|
|
242
|
+
* One genome in the ordinary case, several where the view draws them
|
|
243
|
+
* together — a circular view's synteny ribbons need both ends of an
|
|
244
|
+
* alignment on the circle. The order is the order a view lays them out
|
|
245
|
+
* in.
|
|
246
|
+
*/
|
|
247
|
+
assemblies: import("@jbrowse/mobx-state-tree").IArrayType<IAnyType>;
|
|
248
|
+
tracks: import("@jbrowse/mobx-state-tree").IType<Record<string, unknown>[] | null | undefined, Record<string, unknown>[], Record<string, unknown>[]>;
|
|
231
249
|
internetAccounts: import("@jbrowse/mobx-state-tree").IArrayType<IAnyType>;
|
|
232
250
|
connections: import("@jbrowse/mobx-state-tree").IArrayType<IAnyType>;
|
|
233
251
|
aggregateTextSearchAdapters: import("@jbrowse/mobx-state-tree").IArrayType<IAnyType>;
|
|
234
252
|
plugins: import("@jbrowse/mobx-state-tree").IType<any, any, any>;
|
|
235
253
|
}, {
|
|
236
|
-
readonly
|
|
237
|
-
readonly assemblyName: string;
|
|
254
|
+
readonly assemblyNames: string[];
|
|
238
255
|
readonly rpcManager: RpcManager;
|
|
239
256
|
}, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>;
|
|
240
257
|
export {};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ConfigurationSchema, FormatAboutConfigSchemaFactory, FormatDetailsConfigSchemaFactory, readConfObject, } from '@jbrowse/core/configuration';
|
|
2
2
|
import RpcManager from '@jbrowse/core/rpc/RpcManager';
|
|
3
|
+
import { expandLooseSearchIndex } from '@jbrowse/core/util/expandLooseSearchIndex';
|
|
3
4
|
import { expandLooseTrackConfig } from '@jbrowse/core/util/tracks';
|
|
4
5
|
import { getParent, types } from '@jbrowse/mobx-state-tree';
|
|
5
6
|
import { HierarchicalConfigSchemaFactory } from './HierarchicalConfig.js';
|
|
@@ -22,32 +23,43 @@ export function createConfigModel(pluginManager, assemblyConfigSchemasType) {
|
|
|
22
23
|
return (types
|
|
23
24
|
.model('Configuration', {
|
|
24
25
|
configuration: rootConfigurationSchema(),
|
|
25
|
-
|
|
26
|
-
|
|
26
|
+
/**
|
|
27
|
+
* One genome in the ordinary case, several where the view draws them
|
|
28
|
+
* together — a circular view's synteny ribbons need both ends of an
|
|
29
|
+
* alignment on the circle. The order is the order a view lays them out
|
|
30
|
+
* in.
|
|
31
|
+
*/
|
|
32
|
+
assemblies: types.array(assemblyConfigSchemasType),
|
|
33
|
+
tracks: types.frozen([]),
|
|
27
34
|
internetAccounts: types.array(pluginManager.pluggableConfigSchemaType('internet account')),
|
|
28
35
|
connections: types.array(pluginManager.pluggableConfigSchemaType('connection')),
|
|
29
36
|
aggregateTextSearchAdapters: types.array(pluginManager.pluggableConfigSchemaType('text search adapter')),
|
|
30
37
|
plugins: types.frozen(),
|
|
31
38
|
})
|
|
32
|
-
// The
|
|
33
|
-
// a snapshot need not repeat its name per track.
|
|
39
|
+
// The first assembly is what every loose `{ trackId, uri }` track is on,
|
|
40
|
+
// so a snapshot need not repeat its name per track.
|
|
34
41
|
.preProcessSnapshot((snap) => {
|
|
35
|
-
const tracks = snap
|
|
36
|
-
const assemblyName = snap?.
|
|
37
|
-
|
|
38
|
-
return Array.isArray(tracks)
|
|
42
|
+
const { tracks, aggregateTextSearchAdapters: indexes } = snap ?? {};
|
|
43
|
+
const assemblyName = snap?.assemblies?.[0]?.name;
|
|
44
|
+
return snap
|
|
39
45
|
? {
|
|
40
46
|
...snap,
|
|
41
|
-
|
|
47
|
+
...(Array.isArray(tracks)
|
|
48
|
+
? {
|
|
49
|
+
tracks: tracks.map(t => expandLooseTrackConfig(t, pluginManager, assemblyName)),
|
|
50
|
+
}
|
|
51
|
+
: {}),
|
|
52
|
+
...(Array.isArray(indexes)
|
|
53
|
+
? {
|
|
54
|
+
aggregateTextSearchAdapters: indexes.map(i => expandLooseSearchIndex(i, assemblyName ? [assemblyName] : undefined)),
|
|
55
|
+
}
|
|
56
|
+
: {}),
|
|
42
57
|
}
|
|
43
58
|
: snap;
|
|
44
59
|
})
|
|
45
60
|
.views(self => ({
|
|
46
|
-
get
|
|
47
|
-
return
|
|
48
|
-
},
|
|
49
|
-
get assemblyName() {
|
|
50
|
-
return readConfObject(self.assembly, 'name');
|
|
61
|
+
get assemblyNames() {
|
|
62
|
+
return self.assemblies.map(a => readConfObject(a, 'name'));
|
|
51
63
|
},
|
|
52
64
|
get rpcManager() {
|
|
53
65
|
return getParent(self).rpcManager;
|