react-msaview 8.4.1 → 9.1.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 (193) hide show
  1. package/README.md +19 -10
  2. package/bundle/index.js +74 -74
  3. package/bundle/index.js.map +4 -4
  4. package/dist/colorSchemes.js +1 -3
  5. package/dist/colorSchemes.js.map +1 -1
  6. package/dist/columnCounts.d.ts +0 -1
  7. package/dist/columnCounts.js +1 -1
  8. package/dist/columnCounts.js.map +1 -1
  9. package/dist/components/Loading.js +5 -5
  10. package/dist/components/Loading.js.map +1 -1
  11. package/dist/components/MSAView.js +2 -2
  12. package/dist/components/MSAView.js.map +1 -1
  13. package/dist/components/MSAViewer.d.ts +1892 -7
  14. package/dist/components/MSAViewer.js +144 -202
  15. package/dist/components/MSAViewer.js.map +1 -1
  16. package/dist/components/ResizeHandles.js +4 -3
  17. package/dist/components/ResizeHandles.js.map +1 -1
  18. package/dist/components/Track.js +3 -2
  19. package/dist/components/Track.js.map +1 -1
  20. package/dist/components/controls.d.ts +11 -0
  21. package/dist/components/controls.js +48 -0
  22. package/dist/components/controls.js.map +1 -0
  23. package/dist/components/dialogs/AnnotationFileDialog.js +5 -16
  24. package/dist/components/dialogs/AnnotationFileDialog.js.map +1 -1
  25. package/dist/components/dialogs/ExportSVGDialog.js +5 -7
  26. package/dist/components/dialogs/ExportSVGDialog.js.map +1 -1
  27. package/dist/components/dialogs/HelpDialog.d.ts +6 -0
  28. package/dist/components/dialogs/HelpDialog.js +30 -0
  29. package/dist/components/dialogs/HelpDialog.js.map +1 -0
  30. package/dist/components/header/FileMenu.js +33 -7
  31. package/dist/components/header/FileMenu.js.map +1 -1
  32. package/dist/components/header/Header.js +4 -6
  33. package/dist/components/header/Header.js.map +1 -1
  34. package/dist/components/header/TreeSettingsMenu.d.ts +1 -1
  35. package/dist/components/header/TreeSettingsMenu.js +1 -32
  36. package/dist/components/header/TreeSettingsMenu.js.map +1 -1
  37. package/dist/components/header/ZoomControls.js +28 -44
  38. package/dist/components/header/ZoomControls.js.map +1 -1
  39. package/dist/components/header/settingsMenuItems.d.ts +1 -0
  40. package/dist/components/header/settingsMenuItems.js +48 -1
  41. package/dist/components/header/settingsMenuItems.js.map +1 -1
  42. package/dist/components/import/data/seq2.d.ts +0 -1
  43. package/dist/components/import/data/seq2.js +0 -17
  44. package/dist/components/import/data/seq2.js.map +1 -1
  45. package/dist/components/msa/MSACanvas.js +2 -1
  46. package/dist/components/msa/MSACanvas.js.map +1 -1
  47. package/dist/components/msa/MSACanvasBlock.js +2 -5
  48. package/dist/components/msa/MSACanvasBlock.js.map +1 -1
  49. package/dist/components/msa/drawFeatureSpans.d.ts +50 -11
  50. package/dist/components/msa/drawFeatureSpans.js +99 -56
  51. package/dist/components/msa/drawFeatureSpans.js.map +1 -1
  52. package/dist/components/msa/msaRaster.d.ts +14 -1
  53. package/dist/components/msa/msaRaster.js +19 -9
  54. package/dist/components/msa/msaRaster.js.map +1 -1
  55. package/dist/components/msa/renderBoxFeatureCanvasBlock.d.ts +9 -0
  56. package/dist/components/msa/renderBoxFeatureCanvasBlock.js +19 -8
  57. package/dist/components/msa/renderBoxFeatureCanvasBlock.js.map +1 -1
  58. package/dist/components/msa/renderHighlights.d.ts +2 -2
  59. package/dist/components/msa/renderHighlights.js +2 -3
  60. package/dist/components/msa/renderHighlights.js.map +1 -1
  61. package/dist/components/msa/renderMSAMouseover.js +2 -1
  62. package/dist/components/msa/renderMSAMouseover.js.map +1 -1
  63. package/dist/components/renderCtx.d.ts +1 -1
  64. package/dist/components/rowpanels/renderFeaturePanel.d.ts +5 -1
  65. package/dist/components/rowpanels/renderFeaturePanel.js +12 -5
  66. package/dist/components/rowpanels/renderFeaturePanel.js.map +1 -1
  67. package/dist/components/tracks/drawTracks.d.ts +1 -53
  68. package/dist/components/tracks/drawTracks.js +5 -5
  69. package/dist/components/tracks/drawTracks.js.map +1 -1
  70. package/dist/components/tree/CladeLabels.d.ts +1 -1
  71. package/dist/components/tree/CladeLabels.js +22 -34
  72. package/dist/components/tree/CladeLabels.js.map +1 -1
  73. package/dist/components/tree/TreeCanvas.js +4 -4
  74. package/dist/components/tree/TreeCanvas.js.map +1 -1
  75. package/dist/components/tree/TreeCanvasBlock.js +4 -4
  76. package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
  77. package/dist/components/tree/TreeOverview.js +10 -5
  78. package/dist/components/tree/TreeOverview.js.map +1 -1
  79. package/dist/components/tree/TreePanel.js +6 -2
  80. package/dist/components/tree/TreePanel.js.map +1 -1
  81. package/dist/components/tree/TreeRuler.js +2 -2
  82. package/dist/components/tree/TreeRuler.js.map +1 -1
  83. package/dist/components/tree/cladeBrackets.d.ts +22 -17
  84. package/dist/components/tree/cladeBrackets.js +40 -9
  85. package/dist/components/tree/cladeBrackets.js.map +1 -1
  86. package/dist/components/tree/clickMap.d.ts +2 -0
  87. package/dist/components/tree/clickMap.js.map +1 -1
  88. package/dist/components/tree/ellipsize.d.ts +8 -0
  89. package/dist/components/tree/ellipsize.js +20 -0
  90. package/dist/components/tree/ellipsize.js.map +1 -0
  91. package/dist/components/tree/renderTreeCanvas.js +30 -32
  92. package/dist/components/tree/renderTreeCanvas.js.map +1 -1
  93. package/dist/components/tree/renderTreeMouseover.js +1 -1
  94. package/dist/components/tree/renderTreeMouseover.js.map +1 -1
  95. package/dist/components/tree/renderTreeOverview.js +4 -11
  96. package/dist/components/tree/renderTreeOverview.js.map +1 -1
  97. package/dist/constants.d.ts +6 -3
  98. package/dist/constants.js +16 -6
  99. package/dist/constants.js.map +1 -1
  100. package/dist/element.js +3 -6
  101. package/dist/element.js.map +1 -1
  102. package/dist/exportLayout.d.ts +39 -0
  103. package/dist/exportLayout.js +78 -0
  104. package/dist/exportLayout.js.map +1 -0
  105. package/dist/headlessRenderEnv.d.ts +12 -39
  106. package/dist/headlessRenderEnv.js +18 -12
  107. package/dist/headlessRenderEnv.js.map +1 -1
  108. package/dist/hierarchy.d.ts +5 -8
  109. package/dist/hierarchy.js +5 -79
  110. package/dist/hierarchy.js.map +1 -1
  111. package/dist/index.d.ts +3 -1
  112. package/dist/index.js +4 -1
  113. package/dist/index.js.map +1 -1
  114. package/dist/measureTextCanvas.d.ts +7 -0
  115. package/dist/measureTextCanvas.js +10 -8
  116. package/dist/measureTextCanvas.js.map +1 -1
  117. package/dist/model/treeModel.d.ts +14 -25
  118. package/dist/model/treeModel.js +16 -30
  119. package/dist/model/treeModel.js.map +1 -1
  120. package/dist/model.d.ts +108 -79
  121. package/dist/model.js +258 -209
  122. package/dist/model.js.map +1 -1
  123. package/dist/renderToSvg.d.ts +2 -7
  124. package/dist/renderToSvg.js +49 -135
  125. package/dist/renderToSvg.js.map +1 -1
  126. package/dist/svgTestUtil.d.ts +48 -48
  127. package/dist/tipLabels.d.ts +8 -0
  128. package/dist/tipLabels.js +46 -0
  129. package/dist/tipLabels.js.map +1 -0
  130. package/dist/types.d.ts +0 -1
  131. package/dist/version.d.ts +1 -1
  132. package/dist/version.js +1 -1
  133. package/dist/viewerSnapshot.d.ts +169 -0
  134. package/dist/viewerSnapshot.js +100 -0
  135. package/dist/viewerSnapshot.js.map +1 -0
  136. package/package.json +3 -3
  137. package/src/colorSchemes.ts +1 -4
  138. package/src/columnCounts.ts +1 -1
  139. package/src/components/Loading.tsx +19 -12
  140. package/src/components/MSAView.tsx +2 -2
  141. package/src/components/MSAViewer.tsx +276 -256
  142. package/src/components/ResizeHandles.tsx +10 -3
  143. package/src/components/Track.tsx +3 -2
  144. package/src/components/controls.ts +61 -0
  145. package/src/components/dialogs/AnnotationFileDialog.tsx +5 -21
  146. package/src/components/dialogs/ExportSVGDialog.tsx +8 -19
  147. package/src/components/dialogs/HelpDialog.tsx +79 -0
  148. package/src/components/header/FileMenu.tsx +33 -7
  149. package/src/components/header/Header.tsx +4 -6
  150. package/src/components/header/TreeSettingsMenu.tsx +2 -32
  151. package/src/components/header/ZoomControls.tsx +30 -66
  152. package/src/components/header/settingsMenuItems.ts +67 -0
  153. package/src/components/import/data/seq2.ts +0 -18
  154. package/src/components/msa/MSACanvas.tsx +2 -1
  155. package/src/components/msa/MSACanvasBlock.tsx +2 -6
  156. package/src/components/msa/drawFeatureSpans.ts +160 -79
  157. package/src/components/msa/msaRaster.ts +27 -9
  158. package/src/components/msa/renderBoxFeatureCanvasBlock.ts +39 -24
  159. package/src/components/msa/renderHighlights.ts +2 -3
  160. package/src/components/msa/renderMSAMouseover.ts +5 -1
  161. package/src/components/renderCtx.ts +0 -1
  162. package/src/components/rowpanels/renderFeaturePanel.ts +26 -7
  163. package/src/components/tracks/drawTracks.ts +5 -5
  164. package/src/components/tree/CladeLabels.tsx +30 -54
  165. package/src/components/tree/TreeCanvas.tsx +10 -4
  166. package/src/components/tree/TreeCanvasBlock.tsx +4 -4
  167. package/src/components/tree/TreeOverview.tsx +10 -5
  168. package/src/components/tree/TreePanel.tsx +8 -2
  169. package/src/components/tree/TreeRuler.tsx +7 -3
  170. package/src/components/tree/cladeBrackets.ts +59 -19
  171. package/src/components/tree/clickMap.ts +2 -0
  172. package/src/components/tree/ellipsize.ts +24 -0
  173. package/src/components/tree/renderTreeCanvas.ts +37 -36
  174. package/src/components/tree/renderTreeMouseover.ts +1 -1
  175. package/src/components/tree/renderTreeOverview.ts +7 -14
  176. package/src/constants.ts +17 -6
  177. package/src/element.ts +3 -7
  178. package/src/exportLayout.ts +134 -0
  179. package/src/headlessRenderEnv.ts +24 -11
  180. package/src/hierarchy.ts +5 -88
  181. package/src/index.ts +5 -5
  182. package/src/measureTextCanvas.ts +10 -8
  183. package/src/model/treeModel.ts +17 -34
  184. package/src/model.ts +296 -243
  185. package/src/renderToSvg.tsx +72 -209
  186. package/src/tipLabels.ts +51 -0
  187. package/src/types.ts +0 -1
  188. package/src/version.ts +1 -1
  189. package/src/viewerSnapshot.ts +147 -0
  190. package/dist/components/header/ZoomMenu.d.ts +0 -6
  191. package/dist/components/header/ZoomMenu.js +0 -37
  192. package/dist/components/header/ZoomMenu.js.map +0 -1
  193. package/src/components/header/ZoomMenu.tsx +0 -48
@@ -1,11 +1,11 @@
1
1
  import MSAModelF from './model.ts';
2
2
  type Snapshot = NonNullable<Parameters<ReturnType<typeof MSAModelF>['create']>[0]>;
3
3
  export declare function installSvgTestEnv(contextExtras?: Partial<CanvasRenderingContext2D>): void;
4
- export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?: number): import("@jbrowse/mobx-state-tree").ModelInstanceTypeProps<Omit<Omit<Omit<{}, "autoTreeAreaWidth" | "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeOrder" | "treeWidth"> & {
4
+ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?: number): import("@jbrowse/mobx-state-tree").ModelInstanceTypeProps<Omit<Omit<Omit<{}, "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeOrder" | "treeWidth"> & {
5
5
  drawLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
6
6
  labelsAlignRight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
7
- treeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
8
- treeWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
7
+ treeAreaWidth: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
8
+ treeWidth: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
9
9
  showBranchLen: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
10
10
  treeOrder: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<import("./types.ts").TreeOrder>, [undefined]>;
11
11
  drawTree: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
@@ -13,7 +13,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
13
13
  drawNodeLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
14
14
  showTreeOverview: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
15
15
  overviewHeight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
16
- autoTreeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
17
16
  }, "bgColor" | "colorSchemeName" | "customColorScheme" | "msaFormat" | "showColumnStats"> & {
18
17
  bgColor: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
19
18
  colorSchemeName: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
@@ -397,17 +396,15 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
397
396
  removeActiveDialog(): void;
398
397
  queueDialog(cb: (doneCallback: () => void) => [import("@jbrowse/core/util").DialogComponentType, unknown]): void;
399
398
  } & {
400
- setTreeAreaWidth(n: number): void;
401
- setTreeWidth(n: number): void;
399
+ setTreeAreaWidth(n: number | undefined): void;
400
+ setTreeWidth(n: number | undefined): void;
402
401
  setLabelsAlignRight(arg: boolean): void;
403
402
  setDrawTree(arg: boolean): void;
404
- setAutoTreeAreaWidth(arg: boolean): void;
405
403
  setShowBranchLen(arg: boolean): void;
406
404
  setTreeOrder(order: import("./types.ts").TreeOrder): void;
407
405
  setDrawNodeBubbles(arg: boolean): void;
408
406
  setDrawNodeLabels(arg: boolean): void;
409
407
  setShowTreeOverview(arg: boolean): void;
410
- setOverviewHeight(n: number): void;
411
408
  setDrawLabels(arg: boolean): void;
412
409
  } & {
413
410
  setColorSchemeName(name: string): void;
@@ -418,6 +415,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
418
415
  } & {
419
416
  headerHeight: number;
420
417
  hideHeader: boolean;
418
+ importForm: boolean;
421
419
  status: {
422
420
  msg: string;
423
421
  onCancel?: () => void;
@@ -496,7 +494,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
496
494
  setGFF(result?: string): void;
497
495
  } & {
498
496
  readonly hideGapsEffective: boolean;
499
- readonly realAllowedGappyness: number;
500
497
  readonly allAnnotations: import("msa-parsers").Annotation[];
501
498
  readonly actuallyShowDomains: boolean;
502
499
  readonly hostRestoresData: boolean;
@@ -533,6 +530,17 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
533
530
  readonly rowNamesSet: Map<string, number>;
534
531
  readonly resolvedClades: import("./types.ts").ResolvedClade[];
535
532
  readonly cladeGutterWidth: number;
533
+ readonly treeDrawn: boolean;
534
+ readonly treeTips: {
535
+ names: string[];
536
+ depth: number;
537
+ };
538
+ readonly maxTipLabelWidth: number;
539
+ readonly labelColumnWidth: number;
540
+ readonly fittedTreeAreaWidth: number;
541
+ readonly effectiveTreeAreaWidth: number;
542
+ readonly effectiveTreeWidth: number;
543
+ readonly showTreeText: boolean;
536
544
  readonly mouseOverRowName: string | undefined;
537
545
  readonly hoveredInsertion: {
538
546
  rowName: string;
@@ -543,7 +551,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
543
551
  readonly treeNewick: string;
544
552
  readonly treeOverviewHeight: number;
545
553
  readonly treeOverviewLayout: {
546
- root: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
554
+ root: import("./hierarchy.ts").LaidOutNode<import("./types.ts").NodeWithIds>;
547
555
  numTips: number;
548
556
  maxDepthToLeaf: number;
549
557
  showBranchLen: boolean;
@@ -566,6 +574,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
566
574
  readonly rows: [string, string][];
567
575
  readonly numRows: number;
568
576
  seqPosIndex(rowName: string): Int32Array | undefined;
577
+ rowSequence(name: string): string | undefined;
569
578
  readonly rowMap: Map<string, string>;
570
579
  readonly columns: Map<string, string>;
571
580
  readonly columns2d: string[];
@@ -589,7 +598,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
589
598
  readonly totalHeight: number;
590
599
  readonly leaves: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>[];
591
600
  readonly rootToTipLength: number;
592
- readonly maxBranchLength: number;
593
601
  readonly pxPerBranchLength: number;
594
602
  readonly maxDepthToLeaf: number;
595
603
  readonly allBranchesLength0: boolean;
@@ -598,7 +606,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
598
606
  readonly totalWidth: number;
599
607
  } & {
600
608
  readonly showMsaLetters: boolean;
601
- readonly showTreeText: boolean;
602
609
  } & {
603
610
  readonly columnTrackContent: Map<string, {
604
611
  values?: number[];
@@ -609,9 +616,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
609
616
  columnTrackModel(track: import("./types.ts").ColumnTrackSpec): import("./types.ts").BasicTrack;
610
617
  readonly columnTrackModels: import("./types.ts").BasicTrack[];
611
618
  } & {
612
- readonly labelWidthMap: Map<string, number>;
613
- readonly labelWidthScale: number;
614
- readonly labelsWidth: number;
615
619
  readonly secondaryStructureConsensus: string | undefined;
616
620
  readonly secondaryStructureArcs: import("./types.ts").Arc[] | undefined;
617
621
  readonly adapterTrackModels: import("./types.ts").BasicTrack[];
@@ -679,17 +683,12 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
679
683
  replaceTree(newick: string): void;
680
684
  resetZoom(): void;
681
685
  zoomAtCenter(scaleFactor: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
682
- zoomOutHorizontal(): void;
683
- zoomInHorizontal(): void;
684
- zoomInVertical(): void;
685
- zoomOutVertical(): void;
686
686
  zoomIn(): void;
687
687
  zoomOut(): void;
688
688
  zoomToPos(scaleFactor: number, offsetX: number, offsetY: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
689
689
  doScrollY(deltaY: number): void;
690
690
  setScrollY(n: number): void;
691
691
  setAnnotations(annotations: import("msa-parsers").Annotation[]): void;
692
- setDomains(data?: Record<string, import("msa-parsers").InterProScanResults>): void;
693
692
  applyGFFText(gffText: string): void;
694
693
  doScrollX(deltaX: number): void;
695
694
  setScrollX(n: number): void;
@@ -782,15 +781,17 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
782
781
  } & {
783
782
  setHeaderHeight(arg: number): void;
784
783
  setHideHeader(arg: boolean): void;
784
+ setImportForm(arg: boolean): void;
785
785
  treeOverviewClick(y: number): void;
786
786
  setTrackHeight(heightKey: string, height: number): void;
787
787
  reset(): void;
788
- exportSVG(opts: import("./renderToSvg.tsx").ExportSvgOptions): Promise<void>;
788
+ exportSVG(opts: import("./exportLayout.ts").ExportSvgOptions): Promise<void>;
789
789
  exportNewick(): void;
790
790
  setFilter(accession: string, shown: boolean): void;
791
791
  fit(): void;
792
792
  fitVertically(): void;
793
793
  zoomToRegion(region: import("./types.ts").Region): void;
794
+ revealRegion(region: import("./types.ts").Region): void;
794
795
  zoomToSelection(): void;
795
796
  selectBlock(anchor: {
796
797
  col: number;
@@ -801,11 +802,11 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
801
802
  }): void;
802
803
  fitHorizontally(): void;
803
804
  afterCreate(): void;
804
- } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<Omit<Omit<Omit<{}, "autoTreeAreaWidth" | "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeOrder" | "treeWidth"> & {
805
+ } & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<Omit<Omit<Omit<{}, "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeOrder" | "treeWidth"> & {
805
806
  drawLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
806
807
  labelsAlignRight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
807
- treeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
808
- treeWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
808
+ treeAreaWidth: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
809
+ treeWidth: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
809
810
  showBranchLen: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
810
811
  treeOrder: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<import("./types.ts").TreeOrder>, [undefined]>;
811
812
  drawTree: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
@@ -813,7 +814,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
813
814
  drawNodeLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
814
815
  showTreeOverview: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
815
816
  overviewHeight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
816
- autoTreeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
817
817
  }, "bgColor" | "colorSchemeName" | "customColorScheme" | "msaFormat" | "showColumnStats"> & {
818
818
  bgColor: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
819
819
  colorSchemeName: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
@@ -1197,17 +1197,15 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1197
1197
  removeActiveDialog(): void;
1198
1198
  queueDialog(cb: (doneCallback: () => void) => [import("@jbrowse/core/util").DialogComponentType, unknown]): void;
1199
1199
  } & {
1200
- setTreeAreaWidth(n: number): void;
1201
- setTreeWidth(n: number): void;
1200
+ setTreeAreaWidth(n: number | undefined): void;
1201
+ setTreeWidth(n: number | undefined): void;
1202
1202
  setLabelsAlignRight(arg: boolean): void;
1203
1203
  setDrawTree(arg: boolean): void;
1204
- setAutoTreeAreaWidth(arg: boolean): void;
1205
1204
  setShowBranchLen(arg: boolean): void;
1206
1205
  setTreeOrder(order: import("./types.ts").TreeOrder): void;
1207
1206
  setDrawNodeBubbles(arg: boolean): void;
1208
1207
  setDrawNodeLabels(arg: boolean): void;
1209
1208
  setShowTreeOverview(arg: boolean): void;
1210
- setOverviewHeight(n: number): void;
1211
1209
  setDrawLabels(arg: boolean): void;
1212
1210
  } & {
1213
1211
  setColorSchemeName(name: string): void;
@@ -1218,6 +1216,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1218
1216
  } & {
1219
1217
  headerHeight: number;
1220
1218
  hideHeader: boolean;
1219
+ importForm: boolean;
1221
1220
  status: {
1222
1221
  msg: string;
1223
1222
  onCancel?: () => void;
@@ -1296,7 +1295,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1296
1295
  setGFF(result?: string): void;
1297
1296
  } & {
1298
1297
  readonly hideGapsEffective: boolean;
1299
- readonly realAllowedGappyness: number;
1300
1298
  readonly allAnnotations: import("msa-parsers").Annotation[];
1301
1299
  readonly actuallyShowDomains: boolean;
1302
1300
  readonly hostRestoresData: boolean;
@@ -1333,6 +1331,17 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1333
1331
  readonly rowNamesSet: Map<string, number>;
1334
1332
  readonly resolvedClades: import("./types.ts").ResolvedClade[];
1335
1333
  readonly cladeGutterWidth: number;
1334
+ readonly treeDrawn: boolean;
1335
+ readonly treeTips: {
1336
+ names: string[];
1337
+ depth: number;
1338
+ };
1339
+ readonly maxTipLabelWidth: number;
1340
+ readonly labelColumnWidth: number;
1341
+ readonly fittedTreeAreaWidth: number;
1342
+ readonly effectiveTreeAreaWidth: number;
1343
+ readonly effectiveTreeWidth: number;
1344
+ readonly showTreeText: boolean;
1336
1345
  readonly mouseOverRowName: string | undefined;
1337
1346
  readonly hoveredInsertion: {
1338
1347
  rowName: string;
@@ -1343,7 +1352,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1343
1352
  readonly treeNewick: string;
1344
1353
  readonly treeOverviewHeight: number;
1345
1354
  readonly treeOverviewLayout: {
1346
- root: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
1355
+ root: import("./hierarchy.ts").LaidOutNode<import("./types.ts").NodeWithIds>;
1347
1356
  numTips: number;
1348
1357
  maxDepthToLeaf: number;
1349
1358
  showBranchLen: boolean;
@@ -1366,6 +1375,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1366
1375
  readonly rows: [string, string][];
1367
1376
  readonly numRows: number;
1368
1377
  seqPosIndex(rowName: string): Int32Array | undefined;
1378
+ rowSequence(name: string): string | undefined;
1369
1379
  readonly rowMap: Map<string, string>;
1370
1380
  readonly columns: Map<string, string>;
1371
1381
  readonly columns2d: string[];
@@ -1389,7 +1399,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1389
1399
  readonly totalHeight: number;
1390
1400
  readonly leaves: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>[];
1391
1401
  readonly rootToTipLength: number;
1392
- readonly maxBranchLength: number;
1393
1402
  readonly pxPerBranchLength: number;
1394
1403
  readonly maxDepthToLeaf: number;
1395
1404
  readonly allBranchesLength0: boolean;
@@ -1398,7 +1407,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1398
1407
  readonly totalWidth: number;
1399
1408
  } & {
1400
1409
  readonly showMsaLetters: boolean;
1401
- readonly showTreeText: boolean;
1402
1410
  } & {
1403
1411
  readonly columnTrackContent: Map<string, {
1404
1412
  values?: number[];
@@ -1409,9 +1417,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1409
1417
  columnTrackModel(track: import("./types.ts").ColumnTrackSpec): import("./types.ts").BasicTrack;
1410
1418
  readonly columnTrackModels: import("./types.ts").BasicTrack[];
1411
1419
  } & {
1412
- readonly labelWidthMap: Map<string, number>;
1413
- readonly labelWidthScale: number;
1414
- readonly labelsWidth: number;
1415
1420
  readonly secondaryStructureConsensus: string | undefined;
1416
1421
  readonly secondaryStructureArcs: import("./types.ts").Arc[] | undefined;
1417
1422
  readonly adapterTrackModels: import("./types.ts").BasicTrack[];
@@ -1479,17 +1484,12 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1479
1484
  replaceTree(newick: string): void;
1480
1485
  resetZoom(): void;
1481
1486
  zoomAtCenter(scaleFactor: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
1482
- zoomOutHorizontal(): void;
1483
- zoomInHorizontal(): void;
1484
- zoomInVertical(): void;
1485
- zoomOutVertical(): void;
1486
1487
  zoomIn(): void;
1487
1488
  zoomOut(): void;
1488
1489
  zoomToPos(scaleFactor: number, offsetX: number, offsetY: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
1489
1490
  doScrollY(deltaY: number): void;
1490
1491
  setScrollY(n: number): void;
1491
1492
  setAnnotations(annotations: import("msa-parsers").Annotation[]): void;
1492
- setDomains(data?: Record<string, import("msa-parsers").InterProScanResults>): void;
1493
1493
  applyGFFText(gffText: string): void;
1494
1494
  doScrollX(deltaX: number): void;
1495
1495
  setScrollX(n: number): void;
@@ -1582,15 +1582,17 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1582
1582
  } & {
1583
1583
  setHeaderHeight(arg: number): void;
1584
1584
  setHideHeader(arg: boolean): void;
1585
+ setImportForm(arg: boolean): void;
1585
1586
  treeOverviewClick(y: number): void;
1586
1587
  setTrackHeight(heightKey: string, height: number): void;
1587
1588
  reset(): void;
1588
- exportSVG(opts: import("./renderToSvg.tsx").ExportSvgOptions): Promise<void>;
1589
+ exportSVG(opts: import("./exportLayout.ts").ExportSvgOptions): Promise<void>;
1589
1590
  exportNewick(): void;
1590
1591
  setFilter(accession: string, shown: boolean): void;
1591
1592
  fit(): void;
1592
1593
  fitVertically(): void;
1593
1594
  zoomToRegion(region: import("./types.ts").Region): void;
1595
+ revealRegion(region: import("./types.ts").Region): void;
1594
1596
  zoomToSelection(): void;
1595
1597
  selectBlock(anchor: {
1596
1598
  col: number;
@@ -1609,8 +1611,8 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1609
1611
  msaFormat: import("msa-parsers").MSAFormat | undefined;
1610
1612
  drawLabels: boolean;
1611
1613
  labelsAlignRight: boolean;
1612
- treeAreaWidth: number;
1613
- treeWidth: number;
1614
+ treeAreaWidth: number | undefined;
1615
+ treeWidth: number | undefined;
1614
1616
  showBranchLen: boolean;
1615
1617
  treeOrder: import("./types.ts").TreeOrder;
1616
1618
  drawTree: boolean;
@@ -1618,7 +1620,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1618
1620
  drawNodeLabels: boolean;
1619
1621
  showTreeOverview: boolean;
1620
1622
  overviewHeight: number;
1621
- autoTreeAreaWidth: boolean;
1622
1623
  columnTracks: import("./types.ts").ColumnTrackSpec[];
1623
1624
  id: string;
1624
1625
  showDomains: boolean;
@@ -1747,8 +1748,8 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1747
1748
  msaFormat: import("msa-parsers").MSAFormat | undefined;
1748
1749
  drawLabels: boolean;
1749
1750
  labelsAlignRight: boolean;
1750
- treeAreaWidth: number;
1751
- treeWidth: number;
1751
+ treeAreaWidth: number | undefined;
1752
+ treeWidth: number | undefined;
1752
1753
  showBranchLen: boolean;
1753
1754
  treeOrder: import("./types.ts").TreeOrder;
1754
1755
  drawTree: boolean;
@@ -1756,7 +1757,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1756
1757
  drawNodeLabels: boolean;
1757
1758
  showTreeOverview: boolean;
1758
1759
  overviewHeight: number;
1759
- autoTreeAreaWidth: boolean;
1760
1760
  columnTracks?: undefined;
1761
1761
  id: string;
1762
1762
  showDomains: boolean;
@@ -0,0 +1,8 @@
1
+ import type { NodeWithIds } from './types.ts';
2
+ /** the leaf names of a tree, and its depth in levels from the root */
3
+ export declare function treeTips(tree: NodeWithIds): {
4
+ names: string[];
5
+ depth: number;
6
+ };
7
+ /** the width of the widest label at `fontSize`, measuring the longest few */
8
+ export declare function widestLabel(labels: string[], fontSize: number): number;
@@ -0,0 +1,46 @@
1
+ import { measureTextCanvas } from './measureTextCanvas.js';
2
+ // A label's width follows its length closely enough that the widest one is
3
+ // among the longest few, so a 230k-tip tree measures this many strings.
4
+ const measuredLabels = 100;
5
+ /** the leaf names of a tree, and its depth in levels from the root */
6
+ export function treeTips(tree) {
7
+ const names = [];
8
+ let depth = 0;
9
+ const stack = [[tree, 0]];
10
+ for (let entry = stack.pop(); entry; entry = stack.pop()) {
11
+ const [node, level] = entry;
12
+ const { children } = node;
13
+ if (children.length > 0) {
14
+ for (const child of children) {
15
+ stack.push([child, level + 1]);
16
+ }
17
+ }
18
+ else {
19
+ names.push(node.name);
20
+ depth = Math.max(depth, level);
21
+ }
22
+ }
23
+ return { names, depth };
24
+ }
25
+ /** the width of the widest label at `fontSize`, measuring the longest few */
26
+ export function widestLabel(labels, fontSize) {
27
+ const counts = [];
28
+ for (const label of labels) {
29
+ counts[label.length] = (counts[label.length] ?? 0) + 1;
30
+ }
31
+ let shortest = counts.length;
32
+ for (let seen = 0; shortest > 0 && seen < measuredLabels;) {
33
+ shortest--;
34
+ seen += counts[shortest] ?? 0;
35
+ }
36
+ let widest = 0;
37
+ let ties = 0;
38
+ for (const label of labels) {
39
+ if (label.length > shortest ||
40
+ (label.length === shortest && ties++ < measuredLabels)) {
41
+ widest = Math.max(widest, measureTextCanvas(label, fontSize));
42
+ }
43
+ }
44
+ return widest;
45
+ }
46
+ //# sourceMappingURL=tipLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tipLabels.js","sourceRoot":"","sources":["../src/tipLabels.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAI1D,2EAA2E;AAC3E,wEAAwE;AACxE,MAAM,cAAc,GAAG,GAAG,CAAA;AAE1B,sEAAsE;AACtE,MAAM,UAAU,QAAQ,CAAC,IAAiB;IACxC,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,MAAM,KAAK,GAA4B,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAClD,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC;QACzD,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAA;QAC3B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;QACzB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;gBAC7B,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACrB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;AACzB,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,WAAW,CAAC,MAAgB,EAAE,QAAgB;IAC5D,MAAM,MAAM,GAAa,EAAE,CAAA;IAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;IACxD,CAAC;IACD,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAA;IAC5B,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,IAAI,IAAI,GAAG,cAAc,GAAG,CAAC;QAC1D,QAAQ,EAAE,CAAA;QACV,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IACD,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,IAAI,IAAI,GAAG,CAAC,CAAA;IACZ,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IACE,KAAK,CAAC,MAAM,GAAG,QAAQ;YACvB,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,EAAE,GAAG,cAAc,CAAC,EACtD,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;QAC/D,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
package/dist/types.d.ts CHANGED
@@ -44,7 +44,6 @@ export interface ArcTrackModel extends BasicTrackModel {
44
44
  arcColor?: string;
45
45
  }
46
46
  export interface BasicTrack {
47
- ReactComponent: React.FC<any>;
48
47
  model: TextTrackModel & BarTrackModel & ArcTrackModel;
49
48
  }
50
49
  export interface ArcSpec {
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "8.4.1";
1
+ export declare const version = "9.1.0";
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '8.4.1';
1
+ export const version = '9.1.0';
2
2
  //# sourceMappingURL=version.js.map
@@ -0,0 +1,169 @@
1
+ import type { MSAViewerProps } from './components/MSAViewer.tsx';
2
+ import type { ColorScheme, Highlight } from './types.ts';
3
+ export declare function colorSchemeSnapshot(scheme: ColorScheme | undefined): {
4
+ colorSchemeName: string;
5
+ customColorScheme?: undefined;
6
+ } | {
7
+ colorSchemeName?: undefined;
8
+ customColorScheme: Record<string, string>;
9
+ } | {
10
+ colorSchemeName?: undefined;
11
+ customColorScheme?: undefined;
12
+ };
13
+ /**
14
+ * The `highlightColumns` prop as `highlights`: one `{start, end}` per run of
15
+ * adjacent 1-based alignment columns
16
+ */
17
+ export declare function columnHighlights(columns?: number[]): {
18
+ start: number;
19
+ end: number;
20
+ }[];
21
+ export declare function viewerHighlights({ highlights, highlightColumns, }: Pick<MSAViewerProps, 'highlights' | 'highlightColumns'>): Highlight[];
22
+ /** each filehandle prop, or the URL prop standing in for it */
23
+ export declare function fileLocations({ msaFilehandle, treeFilehandle, gffFilehandle, msaUrl, treeUrl, gffUrl, }: MSAViewerProps): {
24
+ msaFilehandle: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
25
+ uri: string;
26
+ locationType: 'UriLocation';
27
+ } | undefined;
28
+ treeFilehandle: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
29
+ uri: string;
30
+ locationType: 'UriLocation';
31
+ } | undefined;
32
+ gffFilehandle: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
33
+ uri: string;
34
+ locationType: 'UriLocation';
35
+ } | undefined;
36
+ };
37
+ export declare function resolveTheme(theme: MSAViewerProps['theme']): import("@mui/material").Theme;
38
+ /**
39
+ * The model snapshot `MSAViewer` creates from its props. The CLI's `--props`
40
+ * reads the same JSON the R and Python widgets send, so a figure exported
41
+ * headlessly draws what the widget drew.
42
+ */
43
+ export declare function viewerSnapshot(props: MSAViewerProps): {
44
+ colorSchemeName: string;
45
+ customColorScheme?: undefined;
46
+ type: 'MsaView';
47
+ data?: {
48
+ msa: string;
49
+ tree: string;
50
+ gff: string | undefined;
51
+ treeMetadata?: string | undefined;
52
+ } | undefined;
53
+ msaFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
54
+ uri: string;
55
+ locationType: 'UriLocation';
56
+ } | undefined;
57
+ treeFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
58
+ uri: string;
59
+ locationType: 'UriLocation';
60
+ } | undefined;
61
+ gffFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
62
+ uri: string;
63
+ locationType: 'UriLocation';
64
+ } | undefined;
65
+ height?: number | undefined;
66
+ colWidth?: number | undefined;
67
+ rowHeight?: number | undefined;
68
+ allowedGappyness?: number | undefined;
69
+ highlights?: Highlight[] | undefined;
70
+ features?: import("./types.ts").Feature[] | undefined;
71
+ selection?: import("./types.ts").MsaSelection | undefined;
72
+ clades?: import("./types.ts").Clade[] | undefined;
73
+ relativeTo?: string | undefined;
74
+ columnTracks?: import("./types.ts").ColumnTrackSpec[] | undefined;
75
+ residueMappings?: import("./types.ts").ResidueMapping[] | undefined;
76
+ encodings?: import("./types.ts").Encoding[] | undefined;
77
+ rowPanels?: import("./types.ts").RowPanelSpec[] | undefined;
78
+ drawTree?: boolean | undefined;
79
+ treeAreaWidth?: number | undefined;
80
+ showBranchLen?: boolean | undefined;
81
+ treeOrder?: import("./types.ts").TreeOrder | undefined;
82
+ treeRoot?: import("./types.ts").TreeRoot | undefined;
83
+ region?: import("./types.ts").Region | undefined;
84
+ bgColor?: boolean | undefined;
85
+ } | {
86
+ colorSchemeName?: undefined;
87
+ customColorScheme: Record<string, string>;
88
+ type: 'MsaView';
89
+ data?: {
90
+ msa: string;
91
+ tree: string;
92
+ gff: string | undefined;
93
+ treeMetadata?: string | undefined;
94
+ } | undefined;
95
+ msaFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
96
+ uri: string;
97
+ locationType: 'UriLocation';
98
+ } | undefined;
99
+ treeFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
100
+ uri: string;
101
+ locationType: 'UriLocation';
102
+ } | undefined;
103
+ gffFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
104
+ uri: string;
105
+ locationType: 'UriLocation';
106
+ } | undefined;
107
+ height?: number | undefined;
108
+ colWidth?: number | undefined;
109
+ rowHeight?: number | undefined;
110
+ allowedGappyness?: number | undefined;
111
+ highlights?: Highlight[] | undefined;
112
+ features?: import("./types.ts").Feature[] | undefined;
113
+ selection?: import("./types.ts").MsaSelection | undefined;
114
+ clades?: import("./types.ts").Clade[] | undefined;
115
+ relativeTo?: string | undefined;
116
+ columnTracks?: import("./types.ts").ColumnTrackSpec[] | undefined;
117
+ residueMappings?: import("./types.ts").ResidueMapping[] | undefined;
118
+ encodings?: import("./types.ts").Encoding[] | undefined;
119
+ rowPanels?: import("./types.ts").RowPanelSpec[] | undefined;
120
+ drawTree?: boolean | undefined;
121
+ treeAreaWidth?: number | undefined;
122
+ showBranchLen?: boolean | undefined;
123
+ treeOrder?: import("./types.ts").TreeOrder | undefined;
124
+ treeRoot?: import("./types.ts").TreeRoot | undefined;
125
+ region?: import("./types.ts").Region | undefined;
126
+ bgColor?: boolean | undefined;
127
+ } | {
128
+ colorSchemeName?: undefined;
129
+ customColorScheme?: undefined;
130
+ type: 'MsaView';
131
+ data?: {
132
+ msa: string;
133
+ tree: string;
134
+ gff: string | undefined;
135
+ treeMetadata?: string | undefined;
136
+ } | undefined;
137
+ msaFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
138
+ uri: string;
139
+ locationType: 'UriLocation';
140
+ } | undefined;
141
+ treeFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
142
+ uri: string;
143
+ locationType: 'UriLocation';
144
+ } | undefined;
145
+ gffFilehandle?: import("@jbrowse/core/util").BlobLocation | import("@jbrowse/core/util").FileHandleLocation | import("@jbrowse/core/util").LocalPathLocation | {
146
+ uri: string;
147
+ locationType: 'UriLocation';
148
+ } | undefined;
149
+ height?: number | undefined;
150
+ colWidth?: number | undefined;
151
+ rowHeight?: number | undefined;
152
+ allowedGappyness?: number | undefined;
153
+ highlights?: Highlight[] | undefined;
154
+ features?: import("./types.ts").Feature[] | undefined;
155
+ selection?: import("./types.ts").MsaSelection | undefined;
156
+ clades?: import("./types.ts").Clade[] | undefined;
157
+ relativeTo?: string | undefined;
158
+ columnTracks?: import("./types.ts").ColumnTrackSpec[] | undefined;
159
+ residueMappings?: import("./types.ts").ResidueMapping[] | undefined;
160
+ encodings?: import("./types.ts").Encoding[] | undefined;
161
+ rowPanels?: import("./types.ts").RowPanelSpec[] | undefined;
162
+ drawTree?: boolean | undefined;
163
+ treeAreaWidth?: number | undefined;
164
+ showBranchLen?: boolean | undefined;
165
+ treeOrder?: import("./types.ts").TreeOrder | undefined;
166
+ treeRoot?: import("./types.ts").TreeRoot | undefined;
167
+ region?: import("./types.ts").Region | undefined;
168
+ bgColor?: boolean | undefined;
169
+ };