@jbrowse/product-core 2.17.0 → 3.0.0

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.
Files changed (77) hide show
  1. package/dist/RootModel/BaseRootModel.d.ts +6 -43
  2. package/dist/RootModel/BaseRootModel.js +5 -41
  3. package/dist/RootModel/FormatAbout.d.ts +0 -10
  4. package/dist/RootModel/FormatAbout.js +0 -10
  5. package/dist/RootModel/FormatDetails.d.ts +0 -17
  6. package/dist/RootModel/FormatDetails.js +0 -17
  7. package/dist/RootModel/HierarchicalConfig.d.ts +0 -19
  8. package/dist/RootModel/HierarchicalConfig.js +0 -19
  9. package/dist/RootModel/InternetAccounts.d.ts +4 -20
  10. package/dist/RootModel/InternetAccounts.js +0 -20
  11. package/dist/Session/BaseSession.d.ts +5 -96
  12. package/dist/Session/BaseSession.js +1 -63
  13. package/dist/Session/Connections.d.ts +5 -56
  14. package/dist/Session/Connections.js +0 -30
  15. package/dist/Session/DialogQueue.d.ts +3 -22
  16. package/dist/Session/DialogQueue.js +0 -17
  17. package/dist/Session/DrawerWidgets.d.ts +3 -63
  18. package/dist/Session/DrawerWidgets.js +2 -61
  19. package/dist/Session/MultipleViews.d.ts +8 -1760
  20. package/dist/Session/MultipleViews.js +2 -40
  21. package/dist/Session/ReferenceManagement.d.ts +2 -21
  22. package/dist/Session/ReferenceManagement.js +0 -23
  23. package/dist/Session/SessionTracks.d.ts +7 -1748
  24. package/dist/Session/SessionTracks.js +1 -21
  25. package/dist/Session/Themes.d.ts +3 -21
  26. package/dist/Session/Themes.js +1 -17
  27. package/dist/Session/Tracks.d.ts +6 -1737
  28. package/dist/Session/Tracks.js +0 -16
  29. package/dist/rpcWorker.d.ts +2 -2
  30. package/dist/rpcWorker.js +3 -17
  31. package/dist/ui/AboutDialog.d.ts +2 -3
  32. package/dist/ui/AboutDialog.js +2 -3
  33. package/dist/ui/AboutDialogContents.d.ts +2 -3
  34. package/dist/ui/AboutDialogContents.js +20 -53
  35. package/dist/ui/FileInfoPanel.d.ts +2 -3
  36. package/dist/ui/FileInfoPanel.js +5 -28
  37. package/dist/ui/RefNameInfoDialog.d.ts +2 -3
  38. package/dist/ui/RefNameInfoDialog.js +17 -44
  39. package/esm/RootModel/BaseRootModel.d.ts +6 -43
  40. package/esm/RootModel/BaseRootModel.js +6 -42
  41. package/esm/RootModel/FormatAbout.d.ts +0 -10
  42. package/esm/RootModel/FormatAbout.js +0 -10
  43. package/esm/RootModel/FormatDetails.d.ts +0 -17
  44. package/esm/RootModel/FormatDetails.js +0 -17
  45. package/esm/RootModel/HierarchicalConfig.d.ts +0 -19
  46. package/esm/RootModel/HierarchicalConfig.js +0 -19
  47. package/esm/RootModel/InternetAccounts.d.ts +4 -20
  48. package/esm/RootModel/InternetAccounts.js +0 -20
  49. package/esm/Session/BaseSession.d.ts +5 -96
  50. package/esm/Session/BaseSession.js +1 -63
  51. package/esm/Session/Connections.d.ts +5 -56
  52. package/esm/Session/Connections.js +1 -31
  53. package/esm/Session/DialogQueue.d.ts +3 -22
  54. package/esm/Session/DialogQueue.js +0 -17
  55. package/esm/Session/DrawerWidgets.d.ts +3 -63
  56. package/esm/Session/DrawerWidgets.js +2 -61
  57. package/esm/Session/MultipleViews.d.ts +8 -1760
  58. package/esm/Session/MultipleViews.js +2 -40
  59. package/esm/Session/ReferenceManagement.d.ts +2 -21
  60. package/esm/Session/ReferenceManagement.js +0 -23
  61. package/esm/Session/SessionTracks.d.ts +7 -1748
  62. package/esm/Session/SessionTracks.js +1 -21
  63. package/esm/Session/Themes.d.ts +3 -21
  64. package/esm/Session/Themes.js +1 -17
  65. package/esm/Session/Tracks.d.ts +6 -1737
  66. package/esm/Session/Tracks.js +0 -16
  67. package/esm/rpcWorker.d.ts +2 -2
  68. package/esm/rpcWorker.js +3 -17
  69. package/esm/ui/AboutDialog.d.ts +2 -3
  70. package/esm/ui/AboutDialog.js +3 -4
  71. package/esm/ui/AboutDialogContents.d.ts +2 -3
  72. package/esm/ui/AboutDialogContents.js +20 -30
  73. package/esm/ui/FileInfoPanel.d.ts +2 -3
  74. package/esm/ui/FileInfoPanel.js +5 -5
  75. package/esm/ui/RefNameInfoDialog.d.ts +2 -3
  76. package/esm/ui/RefNameInfoDialog.js +18 -22
  77. package/package.json +3 -3
@@ -1,38 +1,21 @@
1
- /**
2
- * #config FormatDetails
3
- * generally exists on the tracks in the config.json or as a 'session' config as
4
- * configuration.formatDetails
5
- */
6
1
  export declare function FormatDetailsConfigSchemaFactory(): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
7
- /**
8
- * #slot configuration.formatDetails.feature
9
- */
10
2
  feature: {
11
3
  type: string;
12
4
  description: string;
13
5
  defaultValue: {};
14
6
  contextVariable: string[];
15
7
  };
16
- /**
17
- * #slot configuration.formatDetails.subfeatures
18
- */
19
8
  subfeatures: {
20
9
  type: string;
21
10
  description: string;
22
11
  defaultValue: {};
23
12
  contextVariable: string[];
24
13
  };
25
- /**
26
- * #slot configuration.formatDetails.depth
27
- */
28
14
  depth: {
29
15
  type: string;
30
16
  defaultValue: number;
31
17
  description: string;
32
18
  };
33
- /**
34
- * #slot configuration.formatDetails.maxDepth
35
- */
36
19
  maxDepth: {
37
20
  type: string;
38
21
  defaultValue: number;
@@ -1,40 +1,23 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- /**
3
- * #config FormatDetails
4
- * generally exists on the tracks in the config.json or as a 'session' config as
5
- * configuration.formatDetails
6
- */
7
2
  export function FormatDetailsConfigSchemaFactory() {
8
3
  return ConfigurationSchema('FormatDetails', {
9
- /**
10
- * #slot configuration.formatDetails.feature
11
- */
12
4
  feature: {
13
5
  type: 'frozen',
14
6
  description: 'adds extra fields to the feature details',
15
7
  defaultValue: {},
16
8
  contextVariable: ['feature'],
17
9
  },
18
- /**
19
- * #slot configuration.formatDetails.subfeatures
20
- */
21
10
  subfeatures: {
22
11
  type: 'frozen',
23
12
  description: 'adds extra fields to the subfeatures of a feature',
24
13
  defaultValue: {},
25
14
  contextVariable: ['feature'],
26
15
  },
27
- /**
28
- * #slot configuration.formatDetails.depth
29
- */
30
16
  depth: {
31
17
  type: 'number',
32
18
  defaultValue: 2,
33
19
  description: 'depth to iterate the formatDetails->subfeatures callback on subfeatures (used for example to only apply the callback to the first layer of subfeatures)',
34
20
  },
35
- /**
36
- * #slot configuration.formatDetails.maxDepth
37
- */
38
21
  maxDepth: {
39
22
  type: 'number',
40
23
  defaultValue: 10000,
@@ -1,42 +1,23 @@
1
- /**
2
- * #config HierarchicalConfigSchema
3
- * generally exists on the config.json or root config as configuration.hierarchical
4
- */
5
1
  export declare function HierarchicalConfigSchemaFactory(): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
6
2
  sort: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
7
- /**
8
- * #slot configuration.hierarchical.sort.trackNames
9
- */
10
3
  trackNames: {
11
4
  type: string;
12
5
  defaultValue: boolean;
13
6
  };
14
- /**
15
- * #slot configuration.hierarchical.sort.categories
16
- */
17
7
  categories: {
18
8
  type: string;
19
9
  defaultValue: boolean;
20
10
  };
21
11
  }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
22
12
  defaultCollapsed: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
23
- /**
24
- * #slot configuration.hierarchical.defaultCollapsed.categoryNames
25
- */
26
13
  categoryNames: {
27
14
  type: string;
28
15
  defaultValue: never[];
29
16
  };
30
- /**
31
- * #slot configuration.hierarchical.defaultCollapsed.topLevelCategories
32
- */
33
17
  topLevelCategories: {
34
18
  type: string;
35
19
  defaultValue: boolean;
36
20
  };
37
- /**
38
- * #slot configuration.hierarchical.defaultCollapsed.subCategories
39
- */
40
21
  subCategories: {
41
22
  type: string;
42
23
  defaultValue: boolean;
@@ -1,44 +1,25 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- /**
3
- * #config HierarchicalConfigSchema
4
- * generally exists on the config.json or root config as configuration.hierarchical
5
- */
6
2
  export function HierarchicalConfigSchemaFactory() {
7
3
  return ConfigurationSchema('hierarchical', {
8
4
  sort: ConfigurationSchema('hierarchicalSort', {
9
- /**
10
- * #slot configuration.hierarchical.sort.trackNames
11
- */
12
5
  trackNames: {
13
6
  type: 'boolean',
14
7
  defaultValue: false,
15
8
  },
16
- /**
17
- * #slot configuration.hierarchical.sort.categories
18
- */
19
9
  categories: {
20
10
  type: 'boolean',
21
11
  defaultValue: false,
22
12
  },
23
13
  }),
24
14
  defaultCollapsed: ConfigurationSchema('defaultCollapsed', {
25
- /**
26
- * #slot configuration.hierarchical.defaultCollapsed.categoryNames
27
- */
28
15
  categoryNames: {
29
16
  type: 'stringArray',
30
17
  defaultValue: [],
31
18
  },
32
- /**
33
- * #slot configuration.hierarchical.defaultCollapsed.topLevelCategories
34
- */
35
19
  topLevelCategories: {
36
20
  type: 'boolean',
37
21
  defaultValue: false,
38
22
  },
39
- /**
40
- * #slot configuration.hierarchical.defaultCollapsed.subCategories
41
- */
42
23
  subCategories: {
43
24
  type: 'boolean',
44
25
  defaultValue: false,
@@ -1,28 +1,12 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
2
- import { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
- import { UriLocation } from '@jbrowse/core/util';
4
- import { Instance } from 'mobx-state-tree';
5
- /**
6
- * #stateModel InternetAccountsMixin
7
- * #category root
8
- */
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
+ import type { UriLocation } from '@jbrowse/core/util';
4
+ import type { Instance } from 'mobx-state-tree';
9
5
  export declare function InternetAccountsRootModelMixin(pluginManager: PluginManager): import("mobx-state-tree").IModelType<{
10
- /**
11
- * #property
12
- */
13
6
  internetAccounts: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>;
14
7
  }, {
15
- /**
16
- * #action
17
- */
18
8
  initializeInternetAccount(internetAccountConfig: AnyConfigurationModel, initialSnapshot?: {}): any;
19
- /**
20
- * #action
21
- */
22
9
  createEphemeralInternetAccount(internetAccountId: string, initialSnapshot: Record<string, unknown>, url: string): any;
23
- /**
24
- * #action
25
- */
26
10
  findAppropriateInternetAccount(location: UriLocation): any;
27
11
  } & {
28
12
  afterCreate(): void;
@@ -1,21 +1,11 @@
1
1
  import { autorun } from 'mobx';
2
2
  import { addDisposer, types } from 'mobx-state-tree';
3
- /**
4
- * #stateModel InternetAccountsMixin
5
- * #category root
6
- */
7
3
  export function InternetAccountsRootModelMixin(pluginManager) {
8
4
  return types
9
5
  .model({
10
- /**
11
- * #property
12
- */
13
6
  internetAccounts: types.array(pluginManager.pluggableMstType('internet account', 'stateModel')),
14
7
  })
15
8
  .actions(self => ({
16
- /**
17
- * #action
18
- */
19
9
  initializeInternetAccount(internetAccountConfig, initialSnapshot = {}) {
20
10
  const internetAccountType = pluginManager.getInternetAccountType(internetAccountConfig.type);
21
11
  if (!internetAccountType) {
@@ -28,16 +18,12 @@ export function InternetAccountsRootModelMixin(pluginManager) {
28
18
  });
29
19
  return self.internetAccounts[length - 1];
30
20
  },
31
- /**
32
- * #action
33
- */
34
21
  createEphemeralInternetAccount(internetAccountId, initialSnapshot, url) {
35
22
  let hostUri;
36
23
  try {
37
24
  hostUri = new URL(url).origin;
38
25
  }
39
26
  catch (e) {
40
- // ignore
41
27
  }
42
28
  const internetAccountSplit = internetAccountId.split('-');
43
29
  const configuration = {
@@ -56,11 +42,7 @@ export function InternetAccountsRootModelMixin(pluginManager) {
56
42
  self.internetAccounts.push(internetAccount);
57
43
  return internetAccount;
58
44
  },
59
- /**
60
- * #action
61
- */
62
45
  findAppropriateInternetAccount(location) {
63
- // find the existing account selected from menu
64
46
  const selectedId = location.internetAccountId;
65
47
  if (selectedId) {
66
48
  const selectedAccount = self.internetAccounts.find(account => {
@@ -70,14 +52,12 @@ export function InternetAccountsRootModelMixin(pluginManager) {
70
52
  return selectedAccount;
71
53
  }
72
54
  }
73
- // if no existing account or not found, try to find working account
74
55
  for (const account of self.internetAccounts) {
75
56
  const handleResult = account.handlesLocation(location);
76
57
  if (handleResult) {
77
58
  return account;
78
59
  }
79
60
  }
80
- // if still no existing account, create ephemeral config to use
81
61
  return selectedId
82
62
  ? this.createEphemeralInternetAccount(selectedId, {}, location.uri)
83
63
  : null;
@@ -1,122 +1,31 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
2
- import { IAnyStateTreeNode, Instance } from 'mobx-state-tree';
3
- import { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
4
1
  import type { BaseRootModelType } from '../RootModel/BaseRootModel';
5
- /**
6
- * #stateModel BaseSessionModel
7
- *
8
- * base session shared by all JBrowse products. Be careful what you include
9
- * here, everything will use it.
10
- */
2
+ import type PluginManager from '@jbrowse/core/PluginManager';
3
+ import type { BaseAssemblyConfigSchema } from '@jbrowse/core/assemblyManager';
4
+ import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
5
+ import type { IAnyStateTreeNode, Instance } from 'mobx-state-tree';
11
6
  export declare function BaseSessionModel<ROOT_MODEL_TYPE extends BaseRootModelType, JB_CONFIG_SCHEMA extends AnyConfigurationSchemaType>(_pluginManager: PluginManager): import("mobx-state-tree").IModelType<{
12
7
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
13
8
  name: import("mobx-state-tree").ISimpleType<string>;
14
9
  margin: import("mobx-state-tree").IType<number | undefined, number, number>;
15
10
  }, {
16
- /**
17
- * #volatile
18
- * this is the globally "selected" object. can be anything. code that
19
- * wants to deal with this should examine it to see what kind of thing it
20
- * is.
21
- */
22
11
  selection: unknown;
23
- /**
24
- * #volatile
25
- * this is the globally "hovered" object. can be anything. code that
26
- * wants to deal with this should examine it to see what kind of thing it
27
- * is.
28
- */
29
12
  hovered: unknown;
30
13
  } & {
31
- /**
32
- * #getter
33
- */
34
14
  readonly root: import("mobx-state-tree").TypeOrStateTreeNodeToStateTreeNode<ROOT_MODEL_TYPE>;
35
15
  } & {
36
- /**
37
- * #getter
38
- */
39
16
  readonly jbrowse: any;
40
- /**
41
- * #getter
42
- */
43
17
  readonly rpcManager: import("@jbrowse/core/rpc/RpcManager").default;
44
- /**
45
- * #getter
46
- */
47
18
  readonly configuration: Instance<JB_CONFIG_SCHEMA>;
48
- /**
49
- * #getter
50
- */
51
19
  readonly adminMode: boolean;
52
- /**
53
- * #getter
54
- */
55
20
  readonly textSearchManager: import("@jbrowse/core/util").TextSearchManager;
56
21
  } & {
57
- /**
58
- * #getter
59
- */
60
- readonly assemblies: ({
61
- [x: string]: any;
62
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
63
- setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
64
- [x: string]: any;
65
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
66
- setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
67
- [x: string]: any;
68
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>);
69
- } & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>);
70
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
71
- aliases: {
72
- type: string;
73
- defaultValue: never[];
74
- description: string;
75
- };
76
- sequence: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
77
- refNameColors: {
78
- type: string;
79
- defaultValue: never[];
80
- description: string;
81
- };
82
- refNameAliases: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
83
- adapter: import("mobx-state-tree").IAnyModelType;
84
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
85
- cytobands: import("@jbrowse/core/configuration/configurationSchema" /**
86
- * #getter
87
- */).ConfigurationSchemaType<{
88
- adapter: import("mobx-state-tree" /**
89
- * #getter
90
- */).IAnyModelType;
91
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
92
- displayName: {
93
- type: string;
94
- defaultValue: string;
95
- description: string;
96
- };
97
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "name">>>)[];
22
+ readonly assemblies: Instance<BaseAssemblyConfigSchema>[];
98
23
  } & {
99
- /**
100
- * #action
101
- * set the global selection, i.e. the globally-selected object. can be a
102
- * feature, a view, just about anything
103
- */
104
24
  setSelection(thing: unknown): void;
105
- /**
106
- * #action
107
- * clears the global selection
108
- */
109
25
  clearSelection(): void;
110
- /**
111
- * #action
112
- */
113
26
  setHovered(thing: unknown): void;
114
27
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
115
- /** Session mixin MST type for the most basic session */
116
28
  export type BaseSessionType = ReturnType<typeof BaseSessionModel>;
117
- /** Instance of the most basic possible session */
118
29
  export type BaseSession = Instance<BaseSessionType>;
119
- /** Type guard for BaseSession */
120
30
  export declare function isBaseSession(thing: IAnyStateTreeNode): thing is BaseSession;
121
- /** Type guard for whether a thing is JBrowse session */
122
31
  export declare function isSession(thing: unknown): thing is BaseSession;
@@ -1,120 +1,58 @@
1
- import { getParent, isStateTreeNode, types, } from 'mobx-state-tree';
2
1
  import { ElementId } from '@jbrowse/core/util/types/mst';
3
- /**
4
- * #stateModel BaseSessionModel
5
- *
6
- * base session shared by all JBrowse products. Be careful what you include
7
- * here, everything will use it.
8
- */
2
+ import { getParent, isStateTreeNode, types } from 'mobx-state-tree';
9
3
  export function BaseSessionModel(_pluginManager) {
10
4
  return types
11
5
  .model({
12
- /**
13
- * #property
14
- */
15
6
  id: ElementId,
16
- /**
17
- * #property
18
- */
19
7
  name: types.string,
20
- /**
21
- * #property
22
- */
23
8
  margin: 0,
24
9
  })
25
10
  .volatile(() => ({
26
- /**
27
- * #volatile
28
- * this is the globally "selected" object. can be anything. code that
29
- * wants to deal with this should examine it to see what kind of thing it
30
- * is.
31
- */
32
11
  selection: undefined,
33
- /**
34
- * #volatile
35
- * this is the globally "hovered" object. can be anything. code that
36
- * wants to deal with this should examine it to see what kind of thing it
37
- * is.
38
- */
39
12
  hovered: undefined,
40
13
  }))
41
14
  .views(self => ({
42
- /**
43
- * #getter
44
- */
45
15
  get root() {
46
16
  return getParent(self);
47
17
  },
48
18
  }))
49
19
  .views(self => ({
50
- /**
51
- * #getter
52
- */
53
20
  get jbrowse() {
54
21
  return self.root.jbrowse;
55
22
  },
56
- /**
57
- * #getter
58
- */
59
23
  get rpcManager() {
60
24
  return self.root.rpcManager;
61
25
  },
62
- /**
63
- * #getter
64
- */
65
26
  get configuration() {
66
27
  return this.jbrowse.configuration;
67
28
  },
68
- /**
69
- * #getter
70
- */
71
29
  get adminMode() {
72
30
  return self.root.adminMode;
73
31
  },
74
- /**
75
- * #getter
76
- */
77
32
  get textSearchManager() {
78
33
  return self.root.textSearchManager;
79
34
  },
80
35
  }))
81
36
  .views(self => ({
82
- /**
83
- * #getter
84
- */
85
37
  get assemblies() {
86
38
  return self.jbrowse.assemblies;
87
39
  },
88
40
  }))
89
41
  .actions(self => ({
90
- /**
91
- * #action
92
- * set the global selection, i.e. the globally-selected object. can be a
93
- * feature, a view, just about anything
94
- */
95
42
  setSelection(thing) {
96
43
  self.selection = thing;
97
44
  },
98
- /**
99
- * #action
100
- * clears the global selection
101
- */
102
45
  clearSelection() {
103
46
  self.selection = undefined;
104
47
  },
105
- /**
106
- * #action
107
- */
108
48
  setHovered(thing) {
109
49
  self.hovered = thing;
110
50
  },
111
51
  }));
112
52
  }
113
- /** Type guard for BaseSession */
114
53
  export function isBaseSession(thing) {
115
54
  return 'id' in thing && 'name' in thing && 'root' in thing;
116
55
  }
117
- /** Type guard for whether a thing is JBrowse session */
118
56
  export function isSession(thing) {
119
57
  return isStateTreeNode(thing) && isBaseSession(thing);
120
58
  }
@@ -1,13 +1,8 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
2
- import { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
- import { IAnyStateTreeNode, Instance } from 'mobx-state-tree';
4
- /**
5
- * #stateModel ConnectionManagementSessionMixin
6
- */
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
+ import type { BaseConnectionConfigModel } from '@jbrowse/core/pluggableElementTypes/models/baseConnectionConfig';
4
+ import type { IAnyStateTreeNode, Instance } from 'mobx-state-tree';
7
5
  export declare function ConnectionManagementSessionMixin(pluginManager: PluginManager): import("mobx-state-tree").IModelType<{
8
- /**
9
- * #property
10
- */
11
6
  connectionInstances: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IModelType<{
12
7
  name: import("mobx-state-tree").ISimpleType<string>;
13
8
  tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>;
@@ -53,35 +48,8 @@ export declare function ConnectionManagementSessionMixin(pluginManager: PluginMa
53
48
  clear(): void;
54
49
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
55
50
  }, {
56
- /**
57
- * #getter
58
- */
59
- readonly connections: ({
60
- [x: string]: any;
61
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
62
- setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
63
- [x: string]: any;
64
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
65
- setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
66
- [x: string]: any;
67
- } & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
68
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration").AnyConfigurationSchemaType>);
69
- } & import("mobx-state-tree").IStateTreeNode<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
70
- name: {
71
- type: string;
72
- defaultValue: string;
73
- description: string;
74
- };
75
- assemblyNames: {
76
- type: string;
77
- defaultValue: never[];
78
- description: string;
79
- };
80
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "connectionId">>>)[];
51
+ readonly connections: BaseConnectionConfigModel[];
81
52
  } & {
82
- /**
83
- * #action
84
- */
85
53
  makeConnection(configuration: AnyConfigurationModel, initialSnapshot?: {}): ({
86
54
  name: string;
87
55
  tracks: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyModelType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>>;
@@ -179,31 +147,12 @@ export declare function ConnectionManagementSessionMixin(pluginManager: PluginMa
179
147
  setTrackConfs(trackConfs: AnyConfigurationModel[]): void;
180
148
  clear(): void;
181
149
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
182
- /**
183
- * #action
184
- */
185
150
  prepareToBreakConnection(configuration: AnyConfigurationModel): (Record<string, number> | (() => void))[] | undefined;
186
- /**
187
- * #action
188
- */
189
151
  breakConnection(configuration: AnyConfigurationModel): void;
190
- /**
191
- * #action
192
- */
193
152
  deleteConnection(configuration: AnyConfigurationModel): any;
194
- /**
195
- * #action
196
- */
197
153
  addConnectionConf(connectionConf: AnyConfigurationModel): any;
198
- /**
199
- * #action
200
- */
201
154
  clearConnections(): void;
202
155
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
203
- /** Session mixin MST type for a session that has connections */
204
156
  export type SessionWithConnectionsType = ReturnType<typeof ConnectionManagementSessionMixin>;
205
- /** Instance of a session that has connections: `connectionInstances`,
206
- * `makeConnection()`, etc. */
207
157
  export type SessionWithConnections = Instance<SessionWithConnectionsType>;
208
- /** Type guard for SessionWithConnections */
209
158
  export declare function isSessionWithConnections(session: IAnyStateTreeNode): session is SessionWithConnections;