react-msaview 9.1.0 → 9.1.1

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 (272) hide show
  1. package/bundle/index.js +111 -115
  2. package/bundle/index.js.map +4 -4
  3. package/dist/blosum62.d.ts +3 -0
  4. package/dist/blosum62.js +43 -0
  5. package/dist/blosum62.js.map +1 -0
  6. package/dist/colorSchemes.js +1 -0
  7. package/dist/colorSchemes.js.map +1 -1
  8. package/dist/components/Loading.d.ts +3 -2
  9. package/dist/components/Loading.js +2 -2
  10. package/dist/components/Loading.js.map +1 -1
  11. package/dist/components/MSAView.d.ts +3 -2
  12. package/dist/components/MSAView.js +7 -4
  13. package/dist/components/MSAView.js.map +1 -1
  14. package/dist/components/MSAViewer.d.ts +62 -12
  15. package/dist/components/MetadataTable.d.ts +4 -1
  16. package/dist/components/MetadataTable.js +55 -16
  17. package/dist/components/MetadataTable.js.map +1 -1
  18. package/dist/components/Track.js +6 -0
  19. package/dist/components/Track.js.map +1 -1
  20. package/dist/components/controls.js +2 -1
  21. package/dist/components/controls.js.map +1 -1
  22. package/dist/components/dialogs/AnnotationFileDialog.js +7 -2
  23. package/dist/components/dialogs/AnnotationFileDialog.js.map +1 -1
  24. package/dist/components/dialogs/FeatureDialog.js +2 -2
  25. package/dist/components/dialogs/FeatureDialog.js.map +1 -1
  26. package/dist/components/{header/MSASettingsMenu.d.ts → dialogs/GapThresholdDialog.d.ts} +3 -2
  27. package/dist/components/dialogs/GapThresholdDialog.js +15 -0
  28. package/dist/components/dialogs/GapThresholdDialog.js.map +1 -0
  29. package/dist/components/{header → dialogs}/GappynessSlider.d.ts +1 -1
  30. package/dist/components/{header → dialogs}/GappynessSlider.js +3 -10
  31. package/dist/components/dialogs/GappynessSlider.js.map +1 -0
  32. package/dist/components/{header → dialogs}/GoToBox.d.ts +4 -2
  33. package/dist/components/dialogs/GoToBox.js +48 -0
  34. package/dist/components/dialogs/GoToBox.js.map +1 -0
  35. package/dist/components/dialogs/GoToDialog.d.ts +6 -0
  36. package/dist/components/dialogs/GoToDialog.js +10 -0
  37. package/dist/components/dialogs/GoToDialog.js.map +1 -0
  38. package/dist/components/dialogs/MetadataDialog.js +11 -3
  39. package/dist/components/dialogs/MetadataDialog.js.map +1 -1
  40. package/dist/components/dialogs/goTo.d.ts +5 -0
  41. package/dist/components/{header → dialogs}/goTo.js +1 -1
  42. package/dist/components/dialogs/goTo.js.map +1 -0
  43. package/dist/components/dialogs/metadataLabels.d.ts +4 -0
  44. package/dist/components/dialogs/metadataLabels.js +52 -0
  45. package/dist/components/dialogs/metadataLabels.js.map +1 -0
  46. package/dist/components/dialogs/metadataRecord.d.ts +1 -0
  47. package/dist/components/dialogs/metadataRecord.js +38 -0
  48. package/dist/components/dialogs/metadataRecord.js.map +1 -0
  49. package/dist/components/header/Header.d.ts +6 -2
  50. package/dist/components/header/Header.js +30 -32
  51. package/dist/components/header/Header.js.map +1 -1
  52. package/dist/components/header/{TreeSettingsMenu.d.ts → HiddenColumnsChip.d.ts} +2 -2
  53. package/dist/components/header/HiddenColumnsChip.js +15 -0
  54. package/dist/components/header/HiddenColumnsChip.js.map +1 -0
  55. package/dist/components/header/MenuBar.d.ts +6 -0
  56. package/dist/components/header/MenuBar.js +33 -0
  57. package/dist/components/header/MenuBar.js.map +1 -0
  58. package/dist/components/header/ScrollZoomCheckbox.d.ts +7 -0
  59. package/dist/components/header/ScrollZoomCheckbox.js +19 -0
  60. package/dist/components/header/ScrollZoomCheckbox.js.map +1 -0
  61. package/dist/components/header/ZoomControls.js +10 -30
  62. package/dist/components/header/ZoomControls.js.map +1 -1
  63. package/dist/components/header/colorSchemeMenuItems.d.ts +4 -0
  64. package/dist/components/header/colorSchemeMenuItems.js +106 -0
  65. package/dist/components/header/colorSchemeMenuItems.js.map +1 -0
  66. package/dist/components/header/getAnnotationsMenu.d.ts +3 -30
  67. package/dist/components/header/getAnnotationsMenu.js +48 -54
  68. package/dist/components/header/getAnnotationsMenu.js.map +1 -1
  69. package/dist/components/header/menuBarItems.d.ts +11 -0
  70. package/dist/components/header/menuBarItems.js +277 -0
  71. package/dist/components/header/menuBarItems.js.map +1 -0
  72. package/dist/components/import/ImportForm.js +12 -6
  73. package/dist/components/import/ImportForm.js.map +1 -1
  74. package/dist/components/minimap/Minimap.js +7 -3
  75. package/dist/components/minimap/Minimap.js.map +1 -1
  76. package/dist/components/minimap/MinimapSVG.js +2 -1
  77. package/dist/components/minimap/MinimapSVG.js.map +1 -1
  78. package/dist/components/minimap/minimapLayout.d.ts +12 -0
  79. package/dist/components/minimap/minimapLayout.js +20 -0
  80. package/dist/components/minimap/minimapLayout.js.map +1 -1
  81. package/dist/components/msa/MSACanvas.js +26 -9
  82. package/dist/components/msa/MSACanvas.js.map +1 -1
  83. package/dist/components/msa/MSACanvasBlock.js +15 -11
  84. package/dist/components/msa/MSACanvasBlock.js.map +1 -1
  85. package/dist/components/msa/MSAMouseoverCanvas.js +2 -2
  86. package/dist/components/msa/MSAMouseoverCanvas.js.map +1 -1
  87. package/dist/components/msa/WheelZoomHint.d.ts +7 -0
  88. package/dist/components/msa/WheelZoomHint.js +38 -0
  89. package/dist/components/msa/WheelZoomHint.js.map +1 -0
  90. package/dist/components/msa/msaKeys.js +3 -0
  91. package/dist/components/msa/msaKeys.js.map +1 -1
  92. package/dist/components/msa/msaRaster.d.ts +4 -5
  93. package/dist/components/msa/msaRaster.js +5 -5
  94. package/dist/components/msa/msaRaster.js.map +1 -1
  95. package/dist/components/msa/renderBoxFeatureCanvasBlock.js +22 -2
  96. package/dist/components/msa/renderBoxFeatureCanvasBlock.js.map +1 -1
  97. package/dist/components/msa/renderHighlights.d.ts +0 -3
  98. package/dist/components/msa/renderHighlights.js +3 -3
  99. package/dist/components/msa/renderHighlights.js.map +1 -1
  100. package/dist/components/msa/renderMSABlock.d.ts +6 -1
  101. package/dist/components/msa/renderMSABlock.js +44 -17
  102. package/dist/components/msa/renderMSABlock.js.map +1 -1
  103. package/dist/components/msa/tileColor.js +7 -0
  104. package/dist/components/msa/tileColor.js.map +1 -1
  105. package/dist/components/rowpanels/RowPanelBlock.js +2 -2
  106. package/dist/components/rowpanels/RowPanelBlock.js.map +1 -1
  107. package/dist/components/settings/MenuItemsForm.d.ts +10 -0
  108. package/dist/components/settings/MenuItemsForm.js +80 -0
  109. package/dist/components/settings/MenuItemsForm.js.map +1 -0
  110. package/dist/components/settings/SettingsPanel.d.ts +12 -0
  111. package/dist/components/settings/SettingsPanel.js +92 -0
  112. package/dist/components/settings/SettingsPanel.js.map +1 -0
  113. package/dist/components/{header/FileMenu.d.ts → settings/TrackList.d.ts} +2 -2
  114. package/dist/components/settings/TrackList.js +55 -0
  115. package/dist/components/settings/TrackList.js.map +1 -0
  116. package/dist/components/tracks/TrackBlocks.js +2 -2
  117. package/dist/components/tracks/TrackBlocks.js.map +1 -1
  118. package/dist/components/tree/TreeCanvasBlock.js +2 -2
  119. package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
  120. package/dist/components/tree/TreeMenu.js +4 -6
  121. package/dist/components/tree/TreeMenu.js.map +1 -1
  122. package/dist/components/tree/TreeOverview.js +2 -2
  123. package/dist/components/tree/TreeOverview.js.map +1 -1
  124. package/dist/constants.d.ts +4 -1
  125. package/dist/constants.js +7 -1
  126. package/dist/constants.js.map +1 -1
  127. package/dist/darkReader.d.ts +7 -0
  128. package/dist/darkReader.js +42 -0
  129. package/dist/darkReader.js.map +1 -0
  130. package/dist/element.js +22 -47
  131. package/dist/element.js.map +1 -1
  132. package/dist/featurePanels.d.ts +37 -0
  133. package/dist/featurePanels.js +187 -0
  134. package/dist/featurePanels.js.map +1 -0
  135. package/dist/filehandleLoader.d.ts +41 -0
  136. package/dist/filehandleLoader.js +99 -0
  137. package/dist/filehandleLoader.js.map +1 -0
  138. package/dist/index.d.ts +3 -0
  139. package/dist/index.js +2 -0
  140. package/dist/index.js.map +1 -1
  141. package/dist/model/treeModel.d.ts +9 -0
  142. package/dist/model/treeModel.js +12 -1
  143. package/dist/model/treeModel.js.map +1 -1
  144. package/dist/model.d.ts +142 -32
  145. package/dist/model.js +268 -569
  146. package/dist/model.js.map +1 -1
  147. package/dist/neighborJoining.js +1 -40
  148. package/dist/neighborJoining.js.map +1 -1
  149. package/dist/renderToSvg.js +1 -13
  150. package/dist/renderToSvg.js.map +1 -1
  151. package/dist/rerootTree.d.ts +1 -0
  152. package/dist/rerootTree.js +7 -6
  153. package/dist/rerootTree.js.map +1 -1
  154. package/dist/schemeResidueColor.d.ts +12 -0
  155. package/dist/schemeResidueColor.js +33 -0
  156. package/dist/schemeResidueColor.js.map +1 -0
  157. package/dist/similarityColors.d.ts +11 -0
  158. package/dist/similarityColors.js +90 -0
  159. package/dist/similarityColors.js.map +1 -0
  160. package/dist/svgTestUtil.d.ts +62 -12
  161. package/dist/treeDisplay.d.ts +37 -0
  162. package/dist/treeDisplay.js +209 -0
  163. package/dist/treeDisplay.js.map +1 -0
  164. package/dist/types.d.ts +6 -2
  165. package/dist/useWheelScroll.d.ts +3 -1
  166. package/dist/useWheelScroll.js +36 -17
  167. package/dist/useWheelScroll.js.map +1 -1
  168. package/dist/util.d.ts +2 -0
  169. package/dist/util.js +2 -0
  170. package/dist/util.js.map +1 -1
  171. package/dist/version.d.ts +1 -1
  172. package/dist/version.js +1 -1
  173. package/dist/wheelZoom.d.ts +8 -3
  174. package/dist/wheelZoom.js +44 -32
  175. package/dist/wheelZoom.js.map +1 -1
  176. package/dist/zoomSnapshot.d.ts +29 -0
  177. package/dist/zoomSnapshot.js +47 -0
  178. package/dist/zoomSnapshot.js.map +1 -0
  179. package/package.json +11 -11
  180. package/src/blosum62.ts +45 -0
  181. package/src/colorSchemes.ts +1 -0
  182. package/src/components/Loading.tsx +6 -2
  183. package/src/components/MSAView.tsx +22 -5
  184. package/src/components/MetadataTable.tsx +83 -26
  185. package/src/components/Track.tsx +13 -0
  186. package/src/components/controls.ts +2 -1
  187. package/src/components/dialogs/AnnotationFileDialog.tsx +12 -1
  188. package/src/components/dialogs/FeatureDialog.tsx +2 -5
  189. package/src/components/dialogs/GapThresholdDialog.tsx +36 -0
  190. package/src/components/{header → dialogs}/GappynessSlider.tsx +3 -10
  191. package/src/components/{header → dialogs}/GoToBox.tsx +36 -10
  192. package/src/components/dialogs/GoToDialog.tsx +30 -0
  193. package/src/components/dialogs/MetadataDialog.tsx +32 -4
  194. package/src/components/{header → dialogs}/goTo.ts +1 -1
  195. package/src/components/dialogs/metadataLabels.ts +54 -0
  196. package/src/components/dialogs/metadataRecord.tsx +61 -0
  197. package/src/components/header/Header.tsx +75 -42
  198. package/src/components/header/HiddenColumnsChip.tsx +39 -0
  199. package/src/components/header/MenuBar.tsx +64 -0
  200. package/src/components/header/ScrollZoomCheckbox.tsx +46 -0
  201. package/src/components/header/ZoomControls.tsx +20 -35
  202. package/src/components/header/colorSchemeMenuItems.ts +121 -0
  203. package/src/components/header/getAnnotationsMenu.ts +52 -56
  204. package/src/components/header/menuBarItems.ts +357 -0
  205. package/src/components/import/ImportForm.tsx +19 -7
  206. package/src/components/minimap/Minimap.tsx +11 -3
  207. package/src/components/minimap/MinimapSVG.tsx +17 -1
  208. package/src/components/minimap/minimapLayout.ts +27 -0
  209. package/src/components/msa/MSACanvas.tsx +22 -3
  210. package/src/components/msa/MSACanvasBlock.tsx +18 -11
  211. package/src/components/msa/MSAMouseoverCanvas.tsx +2 -2
  212. package/src/components/msa/WheelZoomHint.tsx +56 -0
  213. package/src/components/msa/msaKeys.ts +3 -0
  214. package/src/components/msa/msaRaster.ts +6 -8
  215. package/src/components/msa/renderBoxFeatureCanvasBlock.ts +28 -5
  216. package/src/components/msa/renderHighlights.ts +3 -3
  217. package/src/components/msa/renderMSABlock.ts +51 -15
  218. package/src/components/msa/tileColor.ts +7 -0
  219. package/src/components/rowpanels/RowPanelBlock.tsx +2 -2
  220. package/src/components/settings/MenuItemsForm.tsx +225 -0
  221. package/src/components/settings/SettingsPanel.tsx +156 -0
  222. package/src/components/settings/TrackList.tsx +119 -0
  223. package/src/components/tracks/TrackBlocks.tsx +2 -2
  224. package/src/components/tree/TreeCanvasBlock.tsx +2 -2
  225. package/src/components/tree/TreeMenu.tsx +4 -6
  226. package/src/components/tree/TreeOverview.tsx +2 -2
  227. package/src/constants.ts +9 -1
  228. package/src/darkReader.ts +57 -0
  229. package/src/element.ts +34 -57
  230. package/src/featurePanels.ts +269 -0
  231. package/src/filehandleLoader.ts +136 -0
  232. package/src/index.ts +4 -0
  233. package/src/model/treeModel.ts +13 -0
  234. package/src/model.ts +345 -748
  235. package/src/neighborJoining.ts +1 -42
  236. package/src/renderToSvg.tsx +1 -13
  237. package/src/rerootTree.ts +7 -6
  238. package/src/schemeResidueColor.ts +37 -0
  239. package/src/similarityColors.ts +112 -0
  240. package/src/treeDisplay.ts +278 -0
  241. package/src/types.ts +6 -3
  242. package/src/useWheelScroll.ts +43 -22
  243. package/src/util.ts +3 -0
  244. package/src/version.ts +1 -1
  245. package/src/wheelZoom.ts +55 -33
  246. package/src/zoomSnapshot.ts +80 -0
  247. package/dist/components/header/ColorSchemeMenu.d.ts +0 -12
  248. package/dist/components/header/ColorSchemeMenu.js +0 -37
  249. package/dist/components/header/ColorSchemeMenu.js.map +0 -1
  250. package/dist/components/header/FileMenu.js +0 -92
  251. package/dist/components/header/FileMenu.js.map +0 -1
  252. package/dist/components/header/GappynessSlider.js.map +0 -1
  253. package/dist/components/header/GoToBox.js +0 -31
  254. package/dist/components/header/GoToBox.js.map +0 -1
  255. package/dist/components/header/MSASettingsMenu.js +0 -11
  256. package/dist/components/header/MSASettingsMenu.js.map +0 -1
  257. package/dist/components/header/ScrollZoomIcons.d.ts +0 -6
  258. package/dist/components/header/ScrollZoomIcons.js +0 -35
  259. package/dist/components/header/ScrollZoomIcons.js.map +0 -1
  260. package/dist/components/header/TreeSettingsMenu.js +0 -11
  261. package/dist/components/header/TreeSettingsMenu.js.map +0 -1
  262. package/dist/components/header/goTo.d.ts +0 -20
  263. package/dist/components/header/goTo.js.map +0 -1
  264. package/dist/components/header/settingsMenuItems.d.ts +0 -5
  265. package/dist/components/header/settingsMenuItems.js +0 -171
  266. package/dist/components/header/settingsMenuItems.js.map +0 -1
  267. package/src/components/header/ColorSchemeMenu.tsx +0 -56
  268. package/src/components/header/FileMenu.tsx +0 -107
  269. package/src/components/header/MSASettingsMenu.tsx +0 -26
  270. package/src/components/header/ScrollZoomIcons.tsx +0 -52
  271. package/src/components/header/TreeSettingsMenu.tsx +0 -30
  272. package/src/components/header/settingsMenuItems.ts +0 -216
package/dist/model.d.ts CHANGED
@@ -2,12 +2,11 @@ import type { ColumnStats } from './columnStats.ts';
2
2
  import type { ScrollZoomAxis } from './constants.ts';
3
3
  import type { HierarchyNode } from './hierarchy.ts';
4
4
  import type { ExportSvgOptions } from './renderToSvg.tsx';
5
- import type { Annotation, Arc, BasicTrack, Cell, Clade, ResidueMappingProblem, ColumnTrackSpec, DomainBand, Encoding, Feature, Highlight, Legend, MsaSelection, NodeWithIds, Region, ResidueMapping, ResolvedClade, ResolvedEncoding, ResolvedFeaturePanel, ResolvedHighlight, ResolvedSelection, TreeOrder, TreeRoot, ResolvedRowPanel, ResolvedStripPanel, RowDataInput, RowPanelSpec, RowResidue, StructureResidue, TrackKind, UnshareableData, Viewport } from './types.ts';
5
+ import type { Annotation, Arc, BasicTrack, Cell, Clade, ResidueMappingProblem, ColumnTrackSpec, DomainBand, Encoding, Feature, Highlight, Legend, MsaSelection, NodeWithIds, Region, ResidueMapping, ResolvedClade, ResolvedEncoding, ResolvedFeaturePanel, ResolvedStripPanel, ResolvedHighlight, ResolvedSelection, TreeRoot, ResolvedRowPanel, RowDataInput, RowPanelSpec, RowResidue, StructureResidue, TrackKind, UnshareableData, Viewport } from './types.ts';
6
+ import type { ZoomSnapshot } from './zoomSnapshot.ts';
6
7
  import type { FileLocation as FileLocationType } from '@jbrowse/core/util/types';
7
8
  import type { Instance } from '@jbrowse/mobx-state-tree';
8
9
  export declare const defaultTrackHeights: Partial<Record<TrackKind, number>>;
9
- type StripPanelScale = Omit<ResolvedStripPanel, 'id' | 'width' | 'offsetX'>;
10
- type FeaturePanelScale = Omit<ResolvedFeaturePanel, 'id' | 'width' | 'offsetX' | 'spans'>;
11
10
  /**
12
11
  * The snapshot properties reset() carries across a return to the import form:
13
12
  * display preferences and layout, nothing derived from the loaded file.
@@ -21,6 +20,8 @@ type FeaturePanelScale = Omit<ResolvedFeaturePanel, 'id' | 'width' | 'offsetX' |
21
20
  * Exported for modelReset.test.ts.
22
21
  */
23
22
  export declare const preservedOnReset: Set<string>;
23
+ type StripPanelScale = Omit<ResolvedStripPanel, 'id' | 'width' | 'offsetX'>;
24
+ type FeaturePanelScale = Omit<ResolvedFeaturePanel, 'id' | 'width' | 'offsetX' | 'spans'>;
24
25
  /**
25
26
  * #stateModel MsaView
26
27
  *
@@ -48,17 +49,18 @@ export declare const preservedOnReset: Set<string>;
48
49
  */
49
50
  declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
50
51
  maxInlineSnapshotBytes?: number;
51
- }): import("@jbrowse/mobx-state-tree").IModelType<Omit<Omit<Omit<{}, "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeOrder" | "treeWidth"> & {
52
+ }): import("@jbrowse/mobx-state-tree").IModelType<Omit<Omit<Omit<{}, "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "showTreeScaleBar" | "treeAreaWidth" | "treeOrder" | "treeWidth"> & {
52
53
  drawLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
53
54
  labelsAlignRight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
54
55
  treeAreaWidth: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
55
56
  treeWidth: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<number>>;
56
57
  showBranchLen: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
57
- treeOrder: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<TreeOrder>, [undefined]>;
58
+ treeOrder: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<import("./types.ts").TreeOrder>, [undefined]>;
58
59
  drawTree: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
59
60
  drawNodeBubbles: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
60
61
  drawNodeLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
61
62
  showTreeOverview: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
63
+ showTreeScaleBar: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
62
64
  overviewHeight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
63
65
  }, "bgColor" | "colorSchemeName" | "customColorScheme" | "msaFormat" | "showColumnStats"> & {
64
66
  bgColor: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
@@ -66,7 +68,7 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
66
68
  customColorScheme: import("@jbrowse/mobx-state-tree").IType<Record<string, string> | undefined, Record<string, string> | undefined, Record<string, string> | undefined>;
67
69
  showColumnStats: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
68
70
  msaFormat: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<import("msa-parsers").MSAFormat>>;
69
- }, "allowedGappyness" | "clades" | "colWidth" | "collapsed" | "columnTracks" | "currentAlignment" | "data" | "drawMsaLetters" | "encodings" | "features" | "gffFilehandle" | "height" | "hideGaps" | "highlightColumns" | "highlights" | "id" | "msaFilehandle" | "region" | "relativeTo" | "residueMappings" | "rotated" | "rowHeight" | "rowPanels" | "scrollX" | "scrollY" | "scrollZoom" | "scrollZoomAxis" | "selection" | "showDomainLegend" | "showDomains" | "showOnly" | "subFeatureRows" | "trackHeights" | "treeFilehandle" | "treeMetadataFilehandle" | "treeRoot" | "turnedOffFeatures" | "turnedOffTracks" | "type"> & {
71
+ }, "allowedGappyness" | "clades" | "colWidth" | "collapsed" | "columnTracks" | "currentAlignment" | "data" | "domainFill" | "drawMsaLetters" | "embeddedMode" | "encodings" | "features" | "gffFilehandle" | "height" | "hideGaps" | "highlightColumns" | "highlights" | "id" | "msaFilehandle" | "region" | "relativeTo" | "residueMappings" | "rotated" | "rowHeight" | "rowPanels" | "scrollX" | "scrollY" | "scrollZoom" | "scrollZoomAxis" | "selection" | "showDomainLegend" | "showDomains" | "showOnly" | "subFeatureRows" | "trackHeights" | "treeFilehandle" | "treeMetadataFilehandle" | "treeRoot" | "turnedOffFeatures" | "turnedOffTracks" | "type"> & {
70
72
  /**
71
73
  * #property
72
74
  * id of view, randomly generated if not provided
@@ -76,6 +78,13 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
76
78
  * #property
77
79
  */
78
80
  showDomains: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
81
+ /**
82
+ * #property
83
+ * whether shown domains fill the cells they cover. Off, the residue
84
+ * scheme keeps the cells and each domain draws as a bar under its
85
+ * row. See `cellFill`.
86
+ */
87
+ domainFill: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
79
88
  /**
80
89
  * #property
81
90
  * whether the domain legend is expanded. The legend floats over the
@@ -104,6 +113,12 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
104
113
  * #property
105
114
  */
106
115
  drawMsaLetters: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
116
+ /**
117
+ * #property
118
+ * draws the toolbar's menus and Settings as icons without text, for a
119
+ * host with little room, such as a JBrowse view
120
+ */
121
+ embeddedMode: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
107
122
  /**
108
123
  * #property
109
124
  * zoom in/out on plain mouse-wheel without holding ctrl
@@ -556,10 +571,10 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
556
571
  }>, [undefined]>;
557
572
  /**
558
573
  * #property
559
- * the user's explicit hide choices per annotation accession, keyed by
560
- * accession with the value meaning "off", like `turnedOffTracks`. An
561
- * untouched accession is absent and drawn, so the shared URL grows
562
- * only with the user's filters
574
+ * the user's departures from each annotation accession's default,
575
+ * keyed by accession with the value meaning "off", like
576
+ * `turnedOffTracks`. An untouched accession is absent and takes its
577
+ * default, so the shared URL grows only with the user's filters
563
578
  */
564
579
  turnedOffFeatures: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>, [undefined]>;
565
580
  /**
@@ -647,10 +662,11 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
647
662
  setLabelsAlignRight(arg: boolean): void;
648
663
  setDrawTree(arg: boolean): void;
649
664
  setShowBranchLen(arg: boolean): void;
650
- setTreeOrder(order: TreeOrder): void;
665
+ setTreeOrder(order: import("./types.ts").TreeOrder): void;
651
666
  setDrawNodeBubbles(arg: boolean): void;
652
667
  setDrawNodeLabels(arg: boolean): void;
653
668
  setShowTreeOverview(arg: boolean): void;
669
+ setShowTreeScaleBar(arg: boolean): void;
654
670
  setDrawLabels(arg: boolean): void;
655
671
  } & {
656
672
  setColorSchemeName(name: string): void;
@@ -663,6 +679,21 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
663
679
  * #volatile
664
680
  */
665
681
  headerHeight: number;
682
+ /**
683
+ * #volatile
684
+ * whether the settings panel docks beside the alignment, taking
685
+ * `settingsPanelWidth` out of the width the view lays out in
686
+ */
687
+ settingsOpen: boolean;
688
+ /**
689
+ * #volatile
690
+ * the log scale a wheel zoom has gathered against the detent at the
691
+ * default column width and row height, per axis
692
+ */
693
+ zoomHeld: {
694
+ col: number;
695
+ row: number;
696
+ };
666
697
  /**
667
698
  * #volatile
668
699
  * leaves the toolbar out, for a host drawing its own controls. Kept out
@@ -687,6 +718,13 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
687
718
  * canvas scale factor, from the device pixel ratio
688
719
  */
689
720
  highResScaleFactor: number;
721
+ /**
722
+ * #volatile
723
+ * the cell size and block grid the alignment last drew at, held from a
724
+ * wheel-zoom frame until the gesture settles. MSACanvas stretches those
725
+ * blocks to the current cell size with one CSS transform
726
+ */
727
+ zoomSnapshot: ZoomSnapshot | undefined;
690
728
  /**
691
729
  * #volatile
692
730
  */
@@ -820,6 +858,10 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
820
858
  * #action
821
859
  */
822
860
  setWidth(arg: number): void;
861
+ /**
862
+ * #action
863
+ */
864
+ setSettingsOpen(arg: boolean): void;
823
865
  /**
824
866
  * #action
825
867
  * update the canvas scale factor when the device pixel ratio changes
@@ -909,6 +951,16 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
909
951
  * toggle the annotation overlay on the alignment
910
952
  */
911
953
  setShowDomains(arg: boolean): void;
954
+ /**
955
+ * #action
956
+ */
957
+ setDomainFill(arg: boolean): void;
958
+ /**
959
+ * #action
960
+ * hand the cell fill to the residue scheme, the domains, or neither,
961
+ * which colors the letters instead
962
+ */
963
+ setCellFill(mode: 'residue' | 'domain' | 'none'): void;
912
964
  /**
913
965
  * #action
914
966
  * expand or collapse the domain legend that floats over the alignment
@@ -1022,16 +1074,6 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1022
1074
  * allowedGappyness is under 100
1023
1075
  */
1024
1076
  readonly hideGapsEffective: boolean;
1025
- /**
1026
- * #getter
1027
- * the annotations the overlay, the legend and the encodings draw: the
1028
- * GFF's, then the `features` layer's
1029
- */
1030
- readonly allAnnotations: Annotation[];
1031
- /**
1032
- * #getter
1033
- */
1034
- readonly actuallyShowDomains: boolean;
1035
1077
  /**
1036
1078
  * #getter
1037
1079
  * whether the host restores the loaded documents outside the snapshot.
@@ -1127,6 +1169,16 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1127
1169
  * #getter
1128
1170
  */
1129
1171
  readonly MSA: import("msa-parsers").MSAParserType | null;
1172
+ /**
1173
+ * #getter
1174
+ * the annotations the overlay, the legend and the encodings draw: the
1175
+ * GFF's, the `features` layer's, then the file's own per-row lines
1176
+ */
1177
+ readonly allAnnotations: Annotation[];
1178
+ /**
1179
+ * #getter
1180
+ */
1181
+ readonly actuallyShowDomains: boolean;
1130
1182
  /**
1131
1183
  * #getter
1132
1184
  */
@@ -1394,6 +1446,14 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1394
1446
  * ref http://www.jalview.org/help/html/colourSchemes/clustal.html
1395
1447
  */
1396
1448
  readonly colClustalX: Record<string, string>[];
1449
+ /**
1450
+ * #getter
1451
+ * Pre-computed similarity shades per column, for blosum62_dynamic.
1452
+ * Returns a map of letter -> color for each column. Amino acids shade by
1453
+ * BLOSUM62 similarity to the rest of the column, and an alignment of
1454
+ * nucleotides by identity, since the matrix names amino acids.
1455
+ */
1456
+ readonly colSimilarity: Record<string, string>[];
1397
1457
  /**
1398
1458
  * #getter
1399
1459
  * Conservation score per column using Shannon entropy (biojs-msa style).
@@ -1691,8 +1751,9 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1691
1751
  } & {
1692
1752
  /**
1693
1753
  * #getter
1694
- * the branch-length scale bar over the tree, undefined in cladogram mode
1695
- * or when the tree area is too narrow for one
1754
+ * the branch-length scale bar over the tree, undefined while
1755
+ * `showTreeScaleBar` is off, in cladogram mode, or when the tree area is
1756
+ * too narrow for one
1696
1757
  */
1697
1758
  readonly treeScaleBar: {
1698
1759
  step: number;
@@ -1723,7 +1784,24 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1723
1784
  * filter dialog and the palettes
1724
1785
  */
1725
1786
  readonly annotationTypes: Map<string, Annotation>;
1787
+ /**
1788
+ * accessions hidden until the user turns them on, such as a Stockholm
1789
+ * file's #=GR lines
1790
+ */
1791
+ readonly defaultOffAccessions: Set<string>;
1792
+ /**
1793
+ * #method
1794
+ */
1795
+ featureOff(accession: string): boolean;
1726
1796
  readonly filteredAnnotations: Annotation[];
1797
+ /**
1798
+ * #getter
1799
+ * what colors the alignment's cells: the residue scheme, the domains
1800
+ * covering them, or nothing, which leaves the scheme to the letters.
1801
+ * Domains own the fill only while some are drawn, so a file whose
1802
+ * annotations all start hidden keeps its residue colors
1803
+ */
1804
+ readonly cellFill: 'residue' | 'domain' | 'none';
1727
1805
  readonly annotationsByRow: Record<string, Annotation[]>;
1728
1806
  } & {
1729
1807
  /**
@@ -1764,6 +1842,10 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1764
1842
  * #getter
1765
1843
  */
1766
1844
  readonly blocks2d: (readonly [number, number])[];
1845
+ /**
1846
+ * #getter
1847
+ */
1848
+ readonly wheelZooming: boolean;
1767
1849
  /**
1768
1850
  * #getter
1769
1851
  */
@@ -1869,6 +1951,17 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1869
1951
  * other one can change how much of the alignment fits.
1870
1952
  */
1871
1953
  zoomToPos(scaleFactor: number, offsetX: number, offsetY: number, axis?: ScrollZoomAxis): void;
1954
+ /**
1955
+ * #action
1956
+ * zoomToPos for one wheel or pinch frame. The alignment keeps the blocks
1957
+ * it drew at the start of the gesture, scaled, and redraws them only once
1958
+ * they stop covering the viewport; endWheelZoom redraws them sharp
1959
+ */
1960
+ wheelZoomToPos(scaleFactor: number, offsetX: number, offsetY: number): void;
1961
+ /**
1962
+ * #action
1963
+ */
1964
+ endWheelZoom(): void;
1872
1965
  /**
1873
1966
  * #action
1874
1967
  */
@@ -1925,6 +2018,13 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1925
2018
  * #action
1926
2019
  */
1927
2020
  toggleTrack(id: string): void;
2021
+ /**
2022
+ * #action
2023
+ * show or hide several tracks at once, as the track selector's Show all
2024
+ * and Hide all do. A choice matching the track's default is dropped, so
2025
+ * it stays out of the shared URL
2026
+ */
2027
+ setTracksShown(ids: string[], shown: boolean): void;
1928
2028
  /**
1929
2029
  * #action
1930
2030
  */
@@ -2025,9 +2125,9 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2025
2125
  /**
2026
2126
  * #getter
2027
2127
  * whether the overlay marks each domain with a bar under its row instead
2028
- * of filling the row behind the letters. Letter-color mode hands the
2029
- * background to the color scheme, so a filled box would paint over it and
2030
- * leave the setting with nothing to show. Sub-row layout already stacks
2128
+ * of filling the row behind the letters: whenever the domains do not own
2129
+ * the cell fill (`cellFill`), a filled box would paint over the residue
2130
+ * colors the user picked. Sub-row layout already stacks
2031
2131
  * the boxes clear of the letters, and with the letters too small to draw
2032
2132
  * the filled box is the only thing left to read.
2033
2133
  */
@@ -2208,6 +2308,10 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2208
2308
  * #action
2209
2309
  */
2210
2310
  setHideHeader(arg: boolean): void;
2311
+ /**
2312
+ * #action
2313
+ */
2314
+ setEmbeddedMode(arg: boolean): void;
2211
2315
  /**
2212
2316
  * #action
2213
2317
  */
@@ -2242,8 +2346,8 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2242
2346
  exportNewick(): void;
2243
2347
  /**
2244
2348
  * #action
2245
- * show or hide an annotation type. Only hidden types are recorded; see
2246
- * `turnedOffFeatures`
2349
+ * show or hide an annotation type. Only a choice that differs from the
2350
+ * type's default is recorded; see `turnedOffFeatures`
2247
2351
  */
2248
2352
  setFilter(accession: string, shown: boolean): void;
2249
2353
  /**
@@ -2253,7 +2357,7 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2253
2357
  /**
2254
2358
  * #action
2255
2359
  */
2256
- fitVertically(): void;
2360
+ fitVertically(maxRowHeight?: any): void;
2257
2361
  /**
2258
2362
  * #action
2259
2363
  * zoom and scroll so a span fills the alignment's width, in highlight
@@ -2292,7 +2396,7 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2292
2396
  /**
2293
2397
  * #action
2294
2398
  */
2295
- fitHorizontally(): void;
2399
+ fitHorizontally(maxColWidth?: any): void;
2296
2400
  afterCreate(): void;
2297
2401
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, {
2298
2402
  bgColor: boolean;
@@ -2305,21 +2409,24 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2305
2409
  treeAreaWidth: number | undefined;
2306
2410
  treeWidth: number | undefined;
2307
2411
  showBranchLen: boolean;
2308
- treeOrder: TreeOrder;
2412
+ treeOrder: import("./types.ts").TreeOrder;
2309
2413
  drawTree: boolean;
2310
2414
  drawNodeBubbles: boolean;
2311
2415
  drawNodeLabels: boolean;
2312
2416
  showTreeOverview: boolean;
2417
+ showTreeScaleBar: boolean;
2313
2418
  overviewHeight: number;
2314
2419
  columnTracks: ColumnTrackSpec[];
2315
2420
  id: string;
2316
2421
  showDomains: boolean;
2422
+ domainFill: boolean;
2317
2423
  showDomainLegend: boolean;
2318
2424
  hideGaps: boolean;
2319
2425
  allowedGappyness: number;
2320
2426
  subFeatureRows: boolean;
2321
2427
  type: "MsaView";
2322
2428
  drawMsaLetters: boolean;
2429
+ embeddedMode: boolean;
2323
2430
  scrollZoom: boolean;
2324
2431
  scrollZoomAxis: "both" | "horizontal" | "vertical";
2325
2432
  height: number;
@@ -2442,21 +2549,24 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2442
2549
  treeAreaWidth: number | undefined;
2443
2550
  treeWidth: number | undefined;
2444
2551
  showBranchLen: boolean;
2445
- treeOrder: TreeOrder;
2552
+ treeOrder: import("./types.ts").TreeOrder;
2446
2553
  drawTree: boolean;
2447
2554
  drawNodeBubbles: boolean;
2448
2555
  drawNodeLabels: boolean;
2449
2556
  showTreeOverview: boolean;
2557
+ showTreeScaleBar: boolean;
2450
2558
  overviewHeight: number;
2451
2559
  columnTracks?: undefined;
2452
2560
  id: string;
2453
2561
  showDomains: boolean;
2562
+ domainFill: boolean;
2454
2563
  showDomainLegend: boolean;
2455
2564
  hideGaps: boolean;
2456
2565
  allowedGappyness: number;
2457
2566
  subFeatureRows: boolean;
2458
2567
  type: "MsaView";
2459
2568
  drawMsaLetters: boolean;
2569
+ embeddedMode: boolean;
2460
2570
  scrollZoom: boolean;
2461
2571
  scrollZoomAxis: "both" | "horizontal" | "vertical";
2462
2572
  height: number;