@jbrowse/product-core 5.0.0-beta.1 → 5.0.0-beta.11

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 (105) hide show
  1. package/esm/RootModel/BaseRootModel.d.ts +24 -158
  2. package/esm/RootModel/BaseRootModel.js +7 -4
  3. package/esm/RootModel/HierarchicalConfig.d.ts +21 -47
  4. package/esm/RootModel/PreferencesConfig.d.ts +20 -36
  5. package/esm/RootModel/PreferencesConfig.js +17 -3
  6. package/esm/RootModel/createConfigModel.d.ts +148 -123
  7. package/esm/RootModel/createConfigModel.js +35 -14
  8. package/esm/RootModel/menuItems.js +7 -9
  9. package/esm/Session/BaseSession.d.ts +60 -85
  10. package/esm/Session/BaseSession.js +106 -172
  11. package/esm/Session/Connections.d.ts +4 -3
  12. package/esm/Session/Connections.js +4 -3
  13. package/esm/Session/DrawerWidgets.d.ts +32 -1
  14. package/esm/Session/DrawerWidgets.js +71 -11
  15. package/esm/Session/MultipleViews.d.ts +85 -333
  16. package/esm/Session/MultipleViews.js +50 -10
  17. package/esm/Session/Preferences.d.ts +53 -329
  18. package/esm/Session/Preferences.js +6 -2
  19. package/esm/Session/SessionTracks.d.ts +180 -396
  20. package/esm/Session/SessionTracks.js +291 -238
  21. package/esm/Session/Themes.d.ts +79 -30
  22. package/esm/Session/Themes.js +153 -40
  23. package/esm/Session/TrackMenu.d.ts +4 -28
  24. package/esm/Session/TrackMenu.js +28 -53
  25. package/esm/Session/TrackMenuSessionMixin.js +2 -1
  26. package/esm/Session/Tracks.d.ts +75 -341
  27. package/esm/Session/Tracks.js +192 -133
  28. package/esm/Session/copyTrackSnapshot.d.ts +21 -0
  29. package/esm/Session/copyTrackSnapshot.js +20 -0
  30. package/esm/Session/developerMode.d.ts +7 -0
  31. package/esm/Session/developerMode.js +43 -0
  32. package/esm/Session/finalizeSession.d.ts +1 -2
  33. package/esm/Session/finalizeSession.js +1 -2
  34. package/esm/Session/hydratedForms.d.ts +16 -0
  35. package/esm/Session/hydratedForms.js +13 -0
  36. package/esm/Session/index.d.ts +8 -3
  37. package/esm/Session/index.js +6 -3
  38. package/esm/Session/pluginExtraTrackItems.d.ts +11 -0
  39. package/esm/Session/pluginExtraTrackItems.js +13 -0
  40. package/esm/Session/readdedTrackConf.d.ts +8 -0
  41. package/esm/Session/readdedTrackConf.js +24 -0
  42. package/esm/Session/shareableSnapshot.d.ts +6 -60
  43. package/esm/Session/shareableSnapshot.js +8 -138
  44. package/esm/Session/temporaryAssemblyTracks.d.ts +4 -3
  45. package/esm/Session/temporaryAssemblyTracks.js +6 -7
  46. package/esm/controllerTracks.d.ts +31 -11
  47. package/esm/controllerTracks.js +63 -15
  48. package/esm/embeddedController.d.ts +57 -0
  49. package/esm/embeddedController.js +100 -0
  50. package/esm/index.d.ts +12 -11
  51. package/esm/index.js +9 -9
  52. package/esm/loadPlugins.d.ts +8 -3
  53. package/esm/loadPlugins.js +11 -4
  54. package/esm/observeSession.d.ts +4 -5
  55. package/esm/observeSession.js +3 -4
  56. package/esm/parallelChunkLoading.d.ts +30 -0
  57. package/esm/parallelChunkLoading.js +71 -0
  58. package/esm/pruneUnbuildableNodes.js +18 -24
  59. package/esm/resolveAssemblies.d.ts +36 -12
  60. package/esm/resolveAssemblies.js +38 -16
  61. package/esm/rpcWorker.d.ts +11 -5
  62. package/esm/rpcWorker.js +41 -16
  63. package/esm/sessionMigrations/index.d.ts +10 -48
  64. package/esm/sessionMigrations/index.js +116 -370
  65. package/esm/sessionUrl.d.ts +7 -8
  66. package/esm/sessionUrl.js +27 -14
  67. package/esm/sessionUtils.d.ts +6 -1
  68. package/esm/sessionUtils.js +78 -92
  69. package/esm/ui/AboutDialog.d.ts +10 -2
  70. package/esm/ui/AboutDialog.js +11 -2
  71. package/esm/ui/AboutDialogContents.js +5 -29
  72. package/esm/ui/AssemblyInfoPanel.js +4 -10
  73. package/esm/ui/DescriptionPanel.d.ts +3 -0
  74. package/esm/ui/DescriptionPanel.js +62 -0
  75. package/esm/ui/FileInfoPanel.js +12 -11
  76. package/esm/ui/GeneralPreferencesTab.d.ts +17 -0
  77. package/esm/ui/GeneralPreferencesTab.js +34 -0
  78. package/esm/ui/HeaderButtons.d.ts +1 -6
  79. package/esm/ui/HeaderButtons.js +5 -12
  80. package/esm/ui/ModalWidget.d.ts +2 -1
  81. package/esm/ui/ModalWidget.js +18 -3
  82. package/esm/ui/PreferenceCheckbox.d.ts +6 -0
  83. package/esm/ui/PreferenceCheckbox.js +16 -0
  84. package/esm/ui/PreferencesDialog.d.ts +5 -27
  85. package/esm/ui/PreferencesDialog.js +29 -119
  86. package/esm/ui/RefNameInfoDialog.js +13 -25
  87. package/esm/ui/ViewPreferencesTab.d.ts +12 -0
  88. package/esm/ui/ViewPreferencesTab.js +15 -0
  89. package/esm/ui/aboutTestUtils.d.ts +140 -0
  90. package/esm/ui/aboutTestUtils.js +25 -0
  91. package/esm/ui/descriptionHtml.d.ts +47 -0
  92. package/esm/ui/descriptionHtml.js +117 -0
  93. package/esm/ui/index.d.ts +2 -0
  94. package/esm/ui/index.js +1 -0
  95. package/esm/ui/preferencesReset.d.ts +18 -0
  96. package/esm/ui/preferencesReset.js +69 -0
  97. package/esm/ui/util.d.ts +9 -27
  98. package/esm/ui/util.js +12 -31
  99. package/esm/useEngineLifecycle.d.ts +7 -1
  100. package/esm/useEngineLifecycle.js +24 -2
  101. package/package.json +11 -10
  102. package/esm/scheduleDetachedDestroy.d.ts +0 -18
  103. package/esm/scheduleDetachedDestroy.js +0 -24
  104. package/esm/ui/DisplayDefaultsSection.d.ts +0 -36
  105. package/esm/ui/DisplayDefaultsSection.js +0 -65
@@ -48,7 +48,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
48
48
  error: unknown;
49
49
  loadingP: Promise<void> | undefined;
50
50
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
51
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
51
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
52
52
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
53
53
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
54
54
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -86,7 +86,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
86
86
  afterAttach(): void;
87
87
  } & {
88
88
  readonly initialized: boolean;
89
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
90
89
  readonly allRefNames: string[] | undefined;
91
90
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
92
91
  readonly rpcManager: RpcManager;
@@ -104,6 +103,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
104
103
  getCanonicalRefName2(refName: string): string;
105
104
  isValidRefName(refName: string): boolean;
106
105
  } & {
106
+ getRefNamePosition(refName: string): number | undefined;
107
107
  getAliasesForRefName(refName: string): string[];
108
108
  getRefNameMapForAdapter(adapterConf: {
109
109
  [x: string]: unknown;
@@ -119,141 +119,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
119
119
  } | undefined;
120
120
  };
121
121
  } & {
122
- readonly assemblyNameMap: Record<string, import("@jbrowse/mobx-state-tree").ModelInstanceTypeProps<{
123
- configuration: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").IReferenceType<IAnyType>>;
124
- }> & {
125
- error: unknown;
126
- loadingP: Promise<void> | undefined;
127
- adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
128
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
129
- refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
130
- canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
131
- cytobands: import("@jbrowse/core/util").Feature[] | undefined;
132
- loadedGeneticCodes: Record<string, number> | undefined;
133
- lowerCaseRefNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
134
- statusMessage: string | undefined;
135
- statusProgress: number | undefined;
136
- statusSource: string | undefined;
137
- refNameMismatches: Map<string, import("@jbrowse/core/assemblyManager/assembly").RefNameMismatch>;
138
- } & {
139
- getConf(arg: string): any;
140
- } & {
141
- readonly name: string;
142
- readonly aliases: string[];
143
- readonly displayName: string;
144
- readonly refNameColors: string[];
145
- } & {
146
- readonly allAliases: string[];
147
- hasName(name: string): boolean;
148
- } & {
149
- setStatus(status?: import("@jbrowse/core/util").RpcStatus): void;
150
- setRefNameMismatch(adapterCacheKey: string, mismatch: import("@jbrowse/core/assemblyManager/assembly").RefNameMismatch): void;
151
- } & {
152
- setLoaded({ regions, refNameAliases, lowerCaseRefNameAliases, canonicalToSeqAdapterRefNames, cytobands, geneticCodes }: import("@jbrowse/core/assemblyManager/assembly").RefNameMaps & {
153
- regions: import("@jbrowse/core/util").Region[];
154
- cytobands: import("@jbrowse/core/util").Feature[];
155
- geneticCodes: Record<string, number>;
156
- }): void;
157
- setError(e: unknown): void;
158
- setLoadingP(p?: Promise<void>): void;
159
- loadPre(): Promise<void>;
160
- } & {
161
- load(): Promise<void>;
162
- } & {
163
- afterAttach(): void;
164
- } & {
165
- readonly initialized: boolean;
166
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
167
- readonly allRefNames: string[] | undefined;
168
- readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
169
- readonly rpcManager: RpcManager;
170
- } & {
171
- readonly refNames: string[] | undefined;
172
- } & {
173
- readonly refNameToIndex: Map<string, number> | undefined;
174
- } & {
175
- getCanonicalRefName(refName: string): string | undefined;
176
- getRefNameColor(refName: string): string | undefined;
177
- getRegionForRefName(refName: string): import("@jbrowse/core/assemblyManager/assembly").BasicRegion | undefined;
178
- getGeneticCodeId(refName: string): number;
179
- getSeqAdapterRefName(canonicalRefName: string): string;
180
- } & {
181
- getCanonicalRefName2(refName: string): string;
182
- isValidRefName(refName: string): boolean;
183
- } & {
184
- getAliasesForRefName(refName: string): string[];
185
- getRefNameMapForAdapter(adapterConf: {
186
- [x: string]: unknown;
187
- }, options: import("@jbrowse/core/data_adapters/BaseAdapter").BaseOptions): Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>;
188
- getRefNameMismatch(adapterCacheKey: string): import("@jbrowse/core/assemblyManager/assembly").RefNameMismatch | undefined;
189
- } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<{
190
- configuration: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").IReferenceType<IAnyType>>;
191
- }, {
192
- error: unknown;
193
- loadingP: Promise<void> | undefined;
194
- adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
195
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
196
- refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
197
- canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
198
- cytobands: import("@jbrowse/core/util").Feature[] | undefined;
199
- loadedGeneticCodes: Record<string, number> | undefined;
200
- lowerCaseRefNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
201
- statusMessage: string | undefined;
202
- statusProgress: number | undefined;
203
- statusSource: string | undefined;
204
- refNameMismatches: Map<string, import("@jbrowse/core/assemblyManager/assembly").RefNameMismatch>;
205
- } & {
206
- getConf(arg: string): any;
207
- } & {
208
- readonly name: string;
209
- readonly aliases: string[];
210
- readonly displayName: string;
211
- readonly refNameColors: string[];
212
- } & {
213
- readonly allAliases: string[];
214
- hasName(name: string): boolean;
215
- } & {
216
- setStatus(status?: import("@jbrowse/core/util").RpcStatus): void;
217
- setRefNameMismatch(adapterCacheKey: string, mismatch: import("@jbrowse/core/assemblyManager/assembly").RefNameMismatch): void;
218
- } & {
219
- setLoaded({ regions, refNameAliases, lowerCaseRefNameAliases, canonicalToSeqAdapterRefNames, cytobands, geneticCodes }: import("@jbrowse/core/assemblyManager/assembly").RefNameMaps & {
220
- regions: import("@jbrowse/core/util").Region[];
221
- cytobands: import("@jbrowse/core/util").Feature[];
222
- geneticCodes: Record<string, number>;
223
- }): void;
224
- setError(e: unknown): void;
225
- setLoadingP(p?: Promise<void>): void;
226
- loadPre(): Promise<void>;
227
- } & {
228
- load(): Promise<void>;
229
- } & {
230
- afterAttach(): void;
231
- } & {
232
- readonly initialized: boolean;
233
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
234
- readonly allRefNames: string[] | undefined;
235
- readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
236
- readonly rpcManager: RpcManager;
237
- } & {
238
- readonly refNames: string[] | undefined;
239
- } & {
240
- readonly refNameToIndex: Map<string, number> | undefined;
241
- } & {
242
- getCanonicalRefName(refName: string): string | undefined;
243
- getRefNameColor(refName: string): string | undefined;
244
- getRegionForRefName(refName: string): import("@jbrowse/core/assemblyManager/assembly").BasicRegion | undefined;
245
- getGeneticCodeId(refName: string): number;
246
- getSeqAdapterRefName(canonicalRefName: string): string;
247
- } & {
248
- getCanonicalRefName2(refName: string): string;
249
- isValidRefName(refName: string): boolean;
250
- } & {
251
- getAliasesForRefName(refName: string): string[];
252
- getRefNameMapForAdapter(adapterConf: {
253
- [x: string]: unknown;
254
- }, options: import("@jbrowse/core/data_adapters/BaseAdapter").BaseOptions): Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>;
255
- getRefNameMismatch(adapterCacheKey: string): import("@jbrowse/core/assemblyManager/assembly").RefNameMismatch | undefined;
256
- }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>>;
122
+ readonly assemblyNameMap: Record<string, import("@jbrowse/core/assemblyManager/assembly").Assembly>;
257
123
  } & {
258
124
  getCanonicalAssemblyName(asmName: string): string | undefined;
259
125
  getDisplayName(asmName: string): string;
@@ -263,7 +129,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
263
129
  error: unknown;
264
130
  loadingP: Promise<void> | undefined;
265
131
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
266
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
132
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
267
133
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
268
134
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
269
135
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -301,7 +167,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
301
167
  afterAttach(): void;
302
168
  } & {
303
169
  readonly initialized: boolean;
304
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
305
170
  readonly allRefNames: string[] | undefined;
306
171
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
307
172
  readonly rpcManager: RpcManager;
@@ -319,6 +184,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
319
184
  getCanonicalRefName2(refName: string): string;
320
185
  isValidRefName(refName: string): boolean;
321
186
  } & {
187
+ getRefNamePosition(refName: string): number | undefined;
322
188
  getAliasesForRefName(refName: string): string[];
323
189
  getRefNameMapForAdapter(adapterConf: {
324
190
  [x: string]: unknown;
@@ -330,7 +196,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
330
196
  error: unknown;
331
197
  loadingP: Promise<void> | undefined;
332
198
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
333
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
199
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
334
200
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
335
201
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
336
202
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -368,7 +234,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
368
234
  afterAttach(): void;
369
235
  } & {
370
236
  readonly initialized: boolean;
371
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
372
237
  readonly allRefNames: string[] | undefined;
373
238
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
374
239
  readonly rpcManager: RpcManager;
@@ -386,6 +251,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
386
251
  getCanonicalRefName2(refName: string): string;
387
252
  isValidRefName(refName: string): boolean;
388
253
  } & {
254
+ getRefNamePosition(refName: string): number | undefined;
389
255
  getAliasesForRefName(refName: string): string[];
390
256
  getRefNameMapForAdapter(adapterConf: {
391
257
  [x: string]: unknown;
@@ -399,7 +265,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
399
265
  error: unknown;
400
266
  loadingP: Promise<void> | undefined;
401
267
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
402
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
268
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
403
269
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
404
270
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
405
271
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -437,7 +303,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
437
303
  afterAttach(): void;
438
304
  } & {
439
305
  readonly initialized: boolean;
440
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
441
306
  readonly allRefNames: string[] | undefined;
442
307
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
443
308
  readonly rpcManager: RpcManager;
@@ -455,6 +320,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
455
320
  getCanonicalRefName2(refName: string): string;
456
321
  isValidRefName(refName: string): boolean;
457
322
  } & {
323
+ getRefNamePosition(refName: string): number | undefined;
458
324
  getAliasesForRefName(refName: string): string[];
459
325
  getRefNameMapForAdapter(adapterConf: {
460
326
  [x: string]: unknown;
@@ -466,7 +332,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
466
332
  error: unknown;
467
333
  loadingP: Promise<void> | undefined;
468
334
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
469
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
335
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
470
336
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
471
337
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
472
338
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -504,7 +370,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
504
370
  afterAttach(): void;
505
371
  } & {
506
372
  readonly initialized: boolean;
507
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
508
373
  readonly allRefNames: string[] | undefined;
509
374
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
510
375
  readonly rpcManager: RpcManager;
@@ -522,6 +387,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
522
387
  getCanonicalRefName2(refName: string): string;
523
388
  isValidRefName(refName: string): boolean;
524
389
  } & {
390
+ getRefNamePosition(refName: string): number | undefined;
525
391
  getAliasesForRefName(refName: string): string[];
526
392
  getRefNameMapForAdapter(adapterConf: {
527
393
  [x: string]: unknown;
@@ -529,11 +395,8 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
529
395
  getRefNameMismatch(adapterCacheKey: string): import("@jbrowse/core/assemblyManager/assembly").RefNameMismatch | undefined;
530
396
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree")._NotCustomized>>) | undefined;
531
397
  readonly assemblyNamesList: string[];
532
- readonly configuredAssemblyNames: Set<string>;
533
- readonly assemblyList: (import("@jbrowse/mobx-state-tree").ModelInstanceTypeProps<Record<string, any>> & {
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>)[];
398
+ readonly confByName: Map<string, import("@jbrowse/core/configuration").AnyConfigurationModel>;
399
+ readonly assemblyList: import("@jbrowse/core/configuration").AnyConfigurationModel[];
537
400
  readonly rpcManager: RpcManager;
538
401
  } & {
539
402
  settleAssemblyResolution(assemblyName: string): Promise<void>;
@@ -544,7 +407,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
544
407
  error: unknown;
545
408
  loadingP: Promise<void> | undefined;
546
409
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
547
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
410
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
548
411
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
549
412
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
550
413
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -582,7 +445,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
582
445
  afterAttach(): void;
583
446
  } & {
584
447
  readonly initialized: boolean;
585
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
586
448
  readonly allRefNames: string[] | undefined;
587
449
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
588
450
  readonly rpcManager: RpcManager;
@@ -600,6 +462,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
600
462
  getCanonicalRefName2(refName: string): string;
601
463
  isValidRefName(refName: string): boolean;
602
464
  } & {
465
+ getRefNamePosition(refName: string): number | undefined;
603
466
  getAliasesForRefName(refName: string): string[];
604
467
  getRefNameMapForAdapter(adapterConf: {
605
468
  [x: string]: unknown;
@@ -611,7 +474,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
611
474
  error: unknown;
612
475
  loadingP: Promise<void> | undefined;
613
476
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
614
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
477
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
615
478
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
616
479
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
617
480
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -649,7 +512,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
649
512
  afterAttach(): void;
650
513
  } & {
651
514
  readonly initialized: boolean;
652
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
653
515
  readonly allRefNames: string[] | undefined;
654
516
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
655
517
  readonly rpcManager: RpcManager;
@@ -667,6 +529,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
667
529
  getCanonicalRefName2(refName: string): string;
668
530
  isValidRefName(refName: string): boolean;
669
531
  } & {
532
+ getRefNamePosition(refName: string): number | undefined;
670
533
  getAliasesForRefName(refName: string): string[];
671
534
  getRefNameMapForAdapter(adapterConf: {
672
535
  [x: string]: unknown;
@@ -679,7 +542,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
679
542
  error: unknown;
680
543
  loadingP: Promise<void> | undefined;
681
544
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
682
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
545
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
683
546
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
684
547
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
685
548
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -717,7 +580,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
717
580
  afterAttach(): void;
718
581
  } & {
719
582
  readonly initialized: boolean;
720
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
721
583
  readonly allRefNames: string[] | undefined;
722
584
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
723
585
  readonly rpcManager: RpcManager;
@@ -735,6 +597,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
735
597
  getCanonicalRefName2(refName: string): string;
736
598
  isValidRefName(refName: string): boolean;
737
599
  } & {
600
+ getRefNamePosition(refName: string): number | undefined;
738
601
  getAliasesForRefName(refName: string): string[];
739
602
  getRefNameMapForAdapter(adapterConf: {
740
603
  [x: string]: unknown;
@@ -746,7 +609,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
746
609
  error: unknown;
747
610
  loadingP: Promise<void> | undefined;
748
611
  adapterLoads: import("@jbrowse/quick-lru").default<string, Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameAliases>>;
749
- volatileRegions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
612
+ regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
750
613
  refNameAliases: import("@jbrowse/core/assemblyManager/assembly").RefNameAliases | undefined;
751
614
  canonicalToSeqAdapterRefNames: Record<string, string> | undefined;
752
615
  cytobands: import("@jbrowse/core/util").Feature[] | undefined;
@@ -784,7 +647,6 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
784
647
  afterAttach(): void;
785
648
  } & {
786
649
  readonly initialized: boolean;
787
- readonly regions: import("@jbrowse/core/assemblyManager/assembly").BasicRegion[] | undefined;
788
650
  readonly allRefNames: string[] | undefined;
789
651
  readonly namesByCanonicalRefName: Map<string, string[]> | undefined;
790
652
  readonly rpcManager: RpcManager;
@@ -802,6 +664,7 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
802
664
  getCanonicalRefName2(refName: string): string;
803
665
  isValidRefName(refName: string): boolean;
804
666
  } & {
667
+ getRefNamePosition(refName: string): number | undefined;
805
668
  getAliasesForRefName(refName: string): string[];
806
669
  getRefNameMapForAdapter(adapterConf: {
807
670
  [x: string]: unknown;
@@ -857,6 +720,9 @@ export declare function BaseRootModelFactory({ pluginManager, jbrowseModelType,
857
720
  setSession(sessionSnapshot?: SnapshotIn<IAnyType>): void;
858
721
  /**
859
722
  * #action
723
+ * Starts a new session from the config's defaultSession. An `id` in it
724
+ * (a pasted session export carries one) is dropped, since sessions are
725
+ * autosaved by id and each new one would otherwise overwrite the last.
860
726
  */
861
727
  setDefaultSession(): void;
862
728
  /**
@@ -1,9 +1,9 @@
1
1
  import TextSearchManager from '@jbrowse/core/TextSearch/TextSearchManager';
2
2
  import assemblyManagerFactory from '@jbrowse/core/assemblyManager';
3
3
  import RpcManager from '@jbrowse/core/rpc/RpcManager';
4
+ import { scheduleDetachedDestroy } from '@jbrowse/core/util';
4
5
  import { cast, detach, getType, isStateTreeNode, types, } from '@jbrowse/mobx-state-tree';
5
6
  import { describeUnbuildableNodes, pruneUnbuildableNodes, } from '../pruneUnbuildableNodes.js';
6
- import { scheduleDetachedDestroy } from '../scheduleDetachedDestroy.js';
7
7
  import { migrateSessionSnapshot } from '../sessionMigrations/index.js';
8
8
  import { filterSessionInPlace } from '../sessionUtils.js';
9
9
  // `session` is a `types.maybe(sessionModelType)` where `sessionModelType` is the
@@ -87,9 +87,10 @@ export function BaseRootModelFactory({ pluginManager, jbrowseModelType, sessionM
87
87
  const unbuildable = [];
88
88
  let migrated = sessionSnapshot;
89
89
  if (sessionSnapshot && typeof sessionSnapshot === 'object') {
90
+ pluginManager.assertSessionTypesLoaded(sessionSnapshot);
90
91
  // before the cast, because a type this build has no plugin for is a
91
92
  // union failure the try below never gets to see
92
- const pruned = pruneUnbuildableNodes(migrateSessionSnapshot(sessionSnapshot), pluginManager, sessionModelType);
93
+ const pruned = pruneUnbuildableNodes(migrateSessionSnapshot(sessionSnapshot, pluginManager), pluginManager, sessionModelType);
93
94
  migrated = pruned.snapshot;
94
95
  unbuildable.push(...pruned.dropped);
95
96
  }
@@ -138,12 +139,14 @@ export function BaseRootModelFactory({ pluginManager, jbrowseModelType, sessionM
138
139
  },
139
140
  /**
140
141
  * #action
142
+ * Starts a new session from the config's defaultSession. An `id` in it
143
+ * (a pasted session export carries one) is dropped, since sessions are
144
+ * autosaved by id and each new one would otherwise overwrite the last.
141
145
  */
142
146
  setDefaultSession() {
143
- const { defaultSession } = self.jbrowse;
147
+ const { id: _id, ...defaultSession } = self.jbrowse.defaultSession;
144
148
  this.setSession({
145
149
  ...defaultSession,
146
- // timestamp the name so repeated "new session" names don't collide
147
150
  name: `${defaultSession.name || 'New session'} ${new Date().toLocaleString()}`,
148
151
  });
149
152
  },
@@ -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
- readonly type: "boolean";
16
- readonly defaultValue: false;
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
- readonly type: "boolean";
26
- readonly defaultValue: false;
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>, any>>;
32
19
  readonly defaultFolderCategories: {
33
- readonly type: "stringArray";
34
- readonly description: "list of category names to display as folders by default";
35
- readonly defaultValue: readonly [];
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
- readonly type: "stringArray";
46
- readonly defaultValue: readonly [];
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
- readonly type: "boolean";
55
- readonly defaultValue: false;
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
- readonly type: "boolean";
64
- readonly defaultValue: false;
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>, any>>;
41
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
@@ -7,47 +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
- readonly model: import("@jbrowse/mobx-state-tree").ISimpleType<"disabled" | "enabled" | "system">;
18
- readonly type: "stringEnum";
19
- readonly defaultValue: "enabled";
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
- readonly type: "boolean";
28
- readonly defaultValue: false;
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
- readonly type: "boolean";
40
- readonly defaultValue: true;
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
- readonly type: "boolean";
51
- readonly defaultValue: false;
28
+ type: "boolean";
29
+ } & {
30
+ defaultValue: boolean;
52
31
  };
53
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
32
+ readonly developerMode: {
33
+ type: "boolean";
34
+ } & {
35
+ defaultValue: boolean;
36
+ };
37
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined, undefined, import("@jbrowse/core/configuration").ConfigurationSchemaRequirement<Partial<Record<string, string[]>>, string>, any>>;
@@ -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
- * — `chr1:1,234,567`. Turn it off to render them bare, which is what you
41
- * want if you copy coordinates out of JBrowse into tools that won't accept
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: {
@@ -57,5 +56,20 @@ export function PreferencesConfigSchemaFactory() {
57
56
  type: 'boolean',
58
57
  defaultValue: false,
59
58
  },
59
+ /**
60
+ * #slot configuration.preferences.developerMode
61
+ * when true, the ordering-contract checks a display or plugin can break
62
+ * report themselves in the app rather than only in a development build.
63
+ * Off by default and deliberately not in the Preferences dialog: the
64
+ * messages are about code, and a reader who cannot change the code cannot
65
+ * act on one. Turn it on for a site that is running a plugin under
66
+ * development; a plugin author needs nothing here, since a plugin served
67
+ * from localhost arms the same channel on its own, as does
68
+ * `localStorage.jbrowseDeveloperMode`. Takes effect on reload.
69
+ */
70
+ developerMode: {
71
+ type: 'boolean',
72
+ defaultValue: false,
73
+ },
60
74
  });
61
75
  }