react-msaview 9.1.0 → 9.2.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 (278) 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 +64 -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 +58 -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/tracks/TrackTooltipContent.js +2 -1
  119. package/dist/components/tracks/TrackTooltipContent.js.map +1 -1
  120. package/dist/components/tracks/drawTracks.js +13 -6
  121. package/dist/components/tracks/drawTracks.js.map +1 -1
  122. package/dist/components/tree/TreeCanvasBlock.js +2 -2
  123. package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
  124. package/dist/components/tree/TreeMenu.js +4 -6
  125. package/dist/components/tree/TreeMenu.js.map +1 -1
  126. package/dist/components/tree/TreeOverview.js +2 -2
  127. package/dist/components/tree/TreeOverview.js.map +1 -1
  128. package/dist/constants.d.ts +4 -1
  129. package/dist/constants.js +7 -1
  130. package/dist/constants.js.map +1 -1
  131. package/dist/darkReader.d.ts +7 -0
  132. package/dist/darkReader.js +42 -0
  133. package/dist/darkReader.js.map +1 -0
  134. package/dist/element.js +22 -47
  135. package/dist/element.js.map +1 -1
  136. package/dist/featurePanels.d.ts +37 -0
  137. package/dist/featurePanels.js +187 -0
  138. package/dist/featurePanels.js.map +1 -0
  139. package/dist/filehandleLoader.d.ts +41 -0
  140. package/dist/filehandleLoader.js +99 -0
  141. package/dist/filehandleLoader.js.map +1 -0
  142. package/dist/index.d.ts +3 -0
  143. package/dist/index.js +2 -0
  144. package/dist/index.js.map +1 -1
  145. package/dist/model/treeModel.d.ts +9 -0
  146. package/dist/model/treeModel.js +12 -1
  147. package/dist/model/treeModel.js.map +1 -1
  148. package/dist/model.d.ts +148 -32
  149. package/dist/model.js +291 -569
  150. package/dist/model.js.map +1 -1
  151. package/dist/neighborJoining.js +1 -40
  152. package/dist/neighborJoining.js.map +1 -1
  153. package/dist/renderToSvg.js +1 -13
  154. package/dist/renderToSvg.js.map +1 -1
  155. package/dist/rerootTree.d.ts +1 -0
  156. package/dist/rerootTree.js +7 -6
  157. package/dist/rerootTree.js.map +1 -1
  158. package/dist/schemeResidueColor.d.ts +12 -0
  159. package/dist/schemeResidueColor.js +33 -0
  160. package/dist/schemeResidueColor.js.map +1 -0
  161. package/dist/similarityColors.d.ts +11 -0
  162. package/dist/similarityColors.js +90 -0
  163. package/dist/similarityColors.js.map +1 -0
  164. package/dist/svgTestUtil.d.ts +64 -12
  165. package/dist/treeDisplay.d.ts +37 -0
  166. package/dist/treeDisplay.js +209 -0
  167. package/dist/treeDisplay.js.map +1 -0
  168. package/dist/types.d.ts +7 -3
  169. package/dist/useWheelScroll.d.ts +3 -1
  170. package/dist/useWheelScroll.js +36 -17
  171. package/dist/useWheelScroll.js.map +1 -1
  172. package/dist/util.d.ts +2 -0
  173. package/dist/util.js +2 -0
  174. package/dist/util.js.map +1 -1
  175. package/dist/version.d.ts +1 -1
  176. package/dist/version.js +1 -1
  177. package/dist/wheelZoom.d.ts +8 -3
  178. package/dist/wheelZoom.js +44 -32
  179. package/dist/wheelZoom.js.map +1 -1
  180. package/dist/zoomSnapshot.d.ts +29 -0
  181. package/dist/zoomSnapshot.js +47 -0
  182. package/dist/zoomSnapshot.js.map +1 -0
  183. package/package.json +11 -11
  184. package/src/blosum62.ts +45 -0
  185. package/src/colorSchemes.ts +1 -0
  186. package/src/components/Loading.tsx +6 -2
  187. package/src/components/MSAView.tsx +22 -5
  188. package/src/components/MetadataTable.tsx +83 -26
  189. package/src/components/Track.tsx +13 -0
  190. package/src/components/controls.ts +2 -1
  191. package/src/components/dialogs/AnnotationFileDialog.tsx +12 -1
  192. package/src/components/dialogs/FeatureDialog.tsx +2 -5
  193. package/src/components/dialogs/GapThresholdDialog.tsx +36 -0
  194. package/src/components/{header → dialogs}/GappynessSlider.tsx +3 -10
  195. package/src/components/{header → dialogs}/GoToBox.tsx +36 -10
  196. package/src/components/dialogs/GoToDialog.tsx +30 -0
  197. package/src/components/dialogs/MetadataDialog.tsx +32 -4
  198. package/src/components/{header → dialogs}/goTo.ts +1 -1
  199. package/src/components/dialogs/metadataLabels.ts +54 -0
  200. package/src/components/dialogs/metadataRecord.tsx +61 -0
  201. package/src/components/header/Header.tsx +75 -42
  202. package/src/components/header/HiddenColumnsChip.tsx +39 -0
  203. package/src/components/header/MenuBar.tsx +64 -0
  204. package/src/components/header/ScrollZoomCheckbox.tsx +46 -0
  205. package/src/components/header/ZoomControls.tsx +20 -35
  206. package/src/components/header/colorSchemeMenuItems.ts +121 -0
  207. package/src/components/header/getAnnotationsMenu.ts +52 -56
  208. package/src/components/header/menuBarItems.ts +357 -0
  209. package/src/components/import/ImportForm.tsx +19 -7
  210. package/src/components/minimap/Minimap.tsx +11 -3
  211. package/src/components/minimap/MinimapSVG.tsx +17 -1
  212. package/src/components/minimap/minimapLayout.ts +27 -0
  213. package/src/components/msa/MSACanvas.tsx +22 -3
  214. package/src/components/msa/MSACanvasBlock.tsx +18 -11
  215. package/src/components/msa/MSAMouseoverCanvas.tsx +2 -2
  216. package/src/components/msa/WheelZoomHint.tsx +56 -0
  217. package/src/components/msa/msaKeys.ts +3 -0
  218. package/src/components/msa/msaRaster.ts +6 -8
  219. package/src/components/msa/renderBoxFeatureCanvasBlock.ts +28 -5
  220. package/src/components/msa/renderHighlights.ts +3 -3
  221. package/src/components/msa/renderMSABlock.ts +51 -15
  222. package/src/components/msa/tileColor.ts +7 -0
  223. package/src/components/rowpanels/RowPanelBlock.tsx +2 -2
  224. package/src/components/settings/MenuItemsForm.tsx +225 -0
  225. package/src/components/settings/SettingsPanel.tsx +156 -0
  226. package/src/components/settings/TrackList.tsx +124 -0
  227. package/src/components/tracks/TrackBlocks.tsx +2 -2
  228. package/src/components/tracks/TrackTooltipContent.tsx +2 -1
  229. package/src/components/tracks/drawTracks.ts +15 -7
  230. package/src/components/tree/TreeCanvasBlock.tsx +2 -2
  231. package/src/components/tree/TreeMenu.tsx +4 -6
  232. package/src/components/tree/TreeOverview.tsx +2 -2
  233. package/src/constants.ts +9 -1
  234. package/src/darkReader.ts +57 -0
  235. package/src/element.ts +34 -57
  236. package/src/featurePanels.ts +269 -0
  237. package/src/filehandleLoader.ts +136 -0
  238. package/src/index.ts +4 -0
  239. package/src/model/treeModel.ts +13 -0
  240. package/src/model.ts +370 -748
  241. package/src/neighborJoining.ts +1 -42
  242. package/src/renderToSvg.tsx +1 -13
  243. package/src/rerootTree.ts +7 -6
  244. package/src/schemeResidueColor.ts +37 -0
  245. package/src/similarityColors.ts +112 -0
  246. package/src/treeDisplay.ts +278 -0
  247. package/src/types.ts +7 -4
  248. package/src/useWheelScroll.ts +43 -22
  249. package/src/util.ts +3 -0
  250. package/src/version.ts +1 -1
  251. package/src/wheelZoom.ts +55 -33
  252. package/src/zoomSnapshot.ts +80 -0
  253. package/dist/components/header/ColorSchemeMenu.d.ts +0 -12
  254. package/dist/components/header/ColorSchemeMenu.js +0 -37
  255. package/dist/components/header/ColorSchemeMenu.js.map +0 -1
  256. package/dist/components/header/FileMenu.js +0 -92
  257. package/dist/components/header/FileMenu.js.map +0 -1
  258. package/dist/components/header/GappynessSlider.js.map +0 -1
  259. package/dist/components/header/GoToBox.js +0 -31
  260. package/dist/components/header/GoToBox.js.map +0 -1
  261. package/dist/components/header/MSASettingsMenu.js +0 -11
  262. package/dist/components/header/MSASettingsMenu.js.map +0 -1
  263. package/dist/components/header/ScrollZoomIcons.d.ts +0 -6
  264. package/dist/components/header/ScrollZoomIcons.js +0 -35
  265. package/dist/components/header/ScrollZoomIcons.js.map +0 -1
  266. package/dist/components/header/TreeSettingsMenu.js +0 -11
  267. package/dist/components/header/TreeSettingsMenu.js.map +0 -1
  268. package/dist/components/header/goTo.d.ts +0 -20
  269. package/dist/components/header/goTo.js.map +0 -1
  270. package/dist/components/header/settingsMenuItems.d.ts +0 -5
  271. package/dist/components/header/settingsMenuItems.js +0 -171
  272. package/dist/components/header/settingsMenuItems.js.map +0 -1
  273. package/src/components/header/ColorSchemeMenu.tsx +0 -56
  274. package/src/components/header/FileMenu.tsx +0 -107
  275. package/src/components/header/MSASettingsMenu.tsx +0 -26
  276. package/src/components/header/ScrollZoomIcons.tsx +0 -52
  277. package/src/components/header/TreeSettingsMenu.tsx +0 -30
  278. package/src/components/header/settingsMenuItems.ts +0 -216
package/dist/index.js CHANGED
@@ -21,6 +21,8 @@ export { default as MSAView } from './components/Loading.js';
21
21
  export { default as MSAViewer } from './components/MSAViewer.js';
22
22
  // the snapshot MSAViewer builds from its props, for the CLI's --props
23
23
  export { resolveTheme, viewerSnapshot } from './viewerSnapshot.js';
24
+ // the active scheme's hex color for a row residue, to paint a structure with
25
+ export { schemeResidueColor } from './schemeResidueColor.js';
24
26
  export { mount } from './mount.js';
25
27
  export { defineMsaElement } from './element.js';
26
28
  export { useMsaSvgFigure } from './useMsaSvgFigure.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,yDAAyD;AACzD,6EAA6E;AAC7E,+DAA+D;AAC/D,gFAAgF;AAChF,0EAA0E;AAC1E,yEAAyE;AACzE,8EAA8E;AAC9E,mEAAmE;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAmB,CAAA;AAE/C,8EAA8E;AAC9E,yDAAyD;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,4EAA4E;AAC5E,mCAAmC;AACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,6EAA6E;AAC7E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAO1D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAA0B,CAAA;AAC7D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA4B,CAAA;AAEjE,sEAAsE;AACtE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAa,CAAA;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAGtD,OAAO,EAAqB,OAAO,IAAI,SAAS,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,yDAAyD;AACzD,6EAA6E;AAC7E,+DAA+D;AAC/D,gFAAgF;AAChF,0EAA0E;AAC1E,yEAAyE;AACzE,8EAA8E;AAC9E,mEAAmE;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAmB,CAAA;AAE/C,8EAA8E;AAC9E,yDAAyD;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,4EAA4E;AAC5E,mCAAmC;AACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,6EAA6E;AAC7E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAO1D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAA0B,CAAA;AAE7D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA4B,CAAA;AAEjE,sEAAsE;AACtE,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClE,6EAA6E;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAa,CAAA;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAGtD,OAAO,EAAqB,OAAO,IAAI,SAAS,EAAE,MAAM,YAAY,CAAA"}
@@ -62,6 +62,11 @@ export declare function TreeModelF(): import("@jbrowse/mobx-state-tree").IModelT
62
62
  * subtree boxed. A click on it focuses the subtree under the pointer
63
63
  */
64
64
  showTreeOverview: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
65
+ /**
66
+ * #property
67
+ * draw the branch-length scale bar above the tree of a phylogram
68
+ */
69
+ showTreeScaleBar: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
65
70
  /**
66
71
  * #property
67
72
  * height of the tree overview band, px
@@ -108,6 +113,10 @@ export declare function TreeModelF(): import("@jbrowse/mobx-state-tree").IModelT
108
113
  * #action
109
114
  */
110
115
  setShowTreeOverview(arg: boolean): void;
116
+ /**
117
+ * #action
118
+ */
119
+ setShowTreeScaleBar(arg: boolean): void;
111
120
  /**
112
121
  * #action
113
122
  */
@@ -1,5 +1,5 @@
1
1
  import { types } from '@jbrowse/mobx-state-tree';
2
- import { defaultDrawLabels, defaultDrawNodeBubbles, defaultDrawNodeLabels, defaultDrawTree, defaultLabelsAlignRight, defaultOverviewHeight, defaultShowBranchLen, defaultTreeOrder, defaultShowTreeOverview, treeOrders, } from '../constants.js';
2
+ import { defaultDrawLabels, defaultDrawNodeBubbles, defaultDrawNodeLabels, defaultDrawTree, defaultLabelsAlignRight, defaultOverviewHeight, defaultShowBranchLen, defaultTreeOrder, defaultShowTreeOverview, defaultShowTreeScaleBar, treeOrders, } from '../constants.js';
3
3
  import { stripDefault } from '../stripDefault.js';
4
4
  /**
5
5
  * #stateModel Tree
@@ -66,6 +66,11 @@ export function TreeModelF() {
66
66
  * subtree boxed. A click on it focuses the subtree under the pointer
67
67
  */
68
68
  showTreeOverview: stripDefault(types.boolean, defaultShowTreeOverview),
69
+ /**
70
+ * #property
71
+ * draw the branch-length scale bar above the tree of a phylogram
72
+ */
73
+ showTreeScaleBar: stripDefault(types.boolean, defaultShowTreeScaleBar),
69
74
  /**
70
75
  * #property
71
76
  * height of the tree overview band, px
@@ -132,6 +137,12 @@ export function TreeModelF() {
132
137
  setShowTreeOverview(arg) {
133
138
  self.showTreeOverview = arg;
134
139
  },
140
+ /**
141
+ * #action
142
+ */
143
+ setShowTreeScaleBar(arg) {
144
+ self.showTreeScaleBar = arg;
145
+ },
135
146
  /**
136
147
  * #action
137
148
  */
@@ -1 +1 @@
1
- {"version":3,"file":"treeModel.js","sourceRoot":"","sources":["../../src/model/treeModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,UAAU,GACX,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAIjD;;GAEG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,KAAK;SACT,KAAK,CAAC;QACL;;WAEG;QACH,UAAU,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC;QAC1D;;;WAGG;QACH,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,uBAAuB,CAAC;QAEtE;;;;;WAKG;QACH,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAExC;;;;;WAKG;QACH,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAEpC;;;;;WAKG;QACH,aAAa,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAEhE;;;;;WAKG;QACH,SAAS,EAAE,YAAY,CACrB,KAAK,CAAC,WAAW,CAAY,WAAW,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC,EAC1D,gBAAgB,CACjB;QAED;;;WAGG;QACH,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC;QAEtD;;;WAGG;QACH,eAAe,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,sBAAsB,CAAC;QAEpE;;;;WAIG;QACH,cAAc,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,qBAAqB,CAAC;QAElE;;;;WAIG;QACH,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,uBAAuB,CAAC;QAEtE;;;WAGG;QACH,cAAc,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,qBAAqB,CAAC;KAClE,CAAC;SACD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChB;;;;WAIG;QACH,gBAAgB,CAAC,CAAqB;YACpC,IAAI,CAAC,aAAa,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAChE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC5B,CAAC;QACD;;;;WAIG;QACH,YAAY,CAAC,CAAqB;YAChC,IAAI,CAAC,SAAS,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC9D,CAAC;QAED;;WAEG;QACH,mBAAmB,CAAC,GAAY;YAC9B,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAA;QAC7B,CAAC;QACD;;WAEG;QACH,WAAW,CAAC,GAAY;YACtB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAA;QACrB,CAAC;QAED;;WAEG;QACH,gBAAgB,CAAC,GAAY;YAC3B,IAAI,CAAC,aAAa,GAAG,GAAG,CAAA;QAC1B,CAAC;QAED;;WAEG;QACH,YAAY,CAAC,KAAgB;YAC3B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;QACxB,CAAC;QAED;;WAEG;QACH,kBAAkB,CAAC,GAAY;YAC7B,IAAI,CAAC,eAAe,GAAG,GAAG,CAAA;QAC5B,CAAC;QACD;;WAEG;QACH,iBAAiB,CAAC,GAAY;YAC5B,IAAI,CAAC,cAAc,GAAG,GAAG,CAAA;QAC3B,CAAC;QACD;;WAEG;QACH,mBAAmB,CAAC,GAAY;YAC9B,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAA;QAC7B,CAAC;QACD;;WAEG;QACH,aAAa,CAAC,GAAY;YACxB,IAAI,CAAC,UAAU,GAAG,GAAG,CAAA;QACvB,CAAC;KACF,CAAC,CAAC,CAAA;AACP,CAAC"}
1
+ {"version":3,"file":"treeModel.js","sourceRoot":"","sources":["../../src/model/treeModel.ts"],"names":[],"mappings":"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"}
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).
@@ -1534,6 +1594,12 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1534
1594
  * and the alphabet, not on zoom
1535
1595
  */
1536
1596
  readonly computedTrackModels: BasicTrack[];
1597
+ /**
1598
+ * #getter
1599
+ * the reference row (`relativeTo`) repeated above the alignment, so it
1600
+ * stays in view while the rows compared against it scroll
1601
+ */
1602
+ readonly referenceTrackModels: BasicTrack[];
1537
1603
  readonly tracks: BasicTrack[];
1538
1604
  /**
1539
1605
  * #getter
@@ -1691,8 +1757,9 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1691
1757
  } & {
1692
1758
  /**
1693
1759
  * #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
1760
+ * the branch-length scale bar over the tree, undefined while
1761
+ * `showTreeScaleBar` is off, in cladogram mode, or when the tree area is
1762
+ * too narrow for one
1696
1763
  */
1697
1764
  readonly treeScaleBar: {
1698
1765
  step: number;
@@ -1723,7 +1790,24 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1723
1790
  * filter dialog and the palettes
1724
1791
  */
1725
1792
  readonly annotationTypes: Map<string, Annotation>;
1793
+ /**
1794
+ * accessions hidden until the user turns them on, such as a Stockholm
1795
+ * file's #=GR lines
1796
+ */
1797
+ readonly defaultOffAccessions: Set<string>;
1798
+ /**
1799
+ * #method
1800
+ */
1801
+ featureOff(accession: string): boolean;
1726
1802
  readonly filteredAnnotations: Annotation[];
1803
+ /**
1804
+ * #getter
1805
+ * what colors the alignment's cells: the residue scheme, the domains
1806
+ * covering them, or nothing, which leaves the scheme to the letters.
1807
+ * Domains own the fill only while some are drawn, so a file whose
1808
+ * annotations all start hidden keeps its residue colors
1809
+ */
1810
+ readonly cellFill: 'residue' | 'domain' | 'none';
1727
1811
  readonly annotationsByRow: Record<string, Annotation[]>;
1728
1812
  } & {
1729
1813
  /**
@@ -1764,6 +1848,10 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1764
1848
  * #getter
1765
1849
  */
1766
1850
  readonly blocks2d: (readonly [number, number])[];
1851
+ /**
1852
+ * #getter
1853
+ */
1854
+ readonly wheelZooming: boolean;
1767
1855
  /**
1768
1856
  * #getter
1769
1857
  */
@@ -1869,6 +1957,17 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1869
1957
  * other one can change how much of the alignment fits.
1870
1958
  */
1871
1959
  zoomToPos(scaleFactor: number, offsetX: number, offsetY: number, axis?: ScrollZoomAxis): void;
1960
+ /**
1961
+ * #action
1962
+ * zoomToPos for one wheel or pinch frame. The alignment keeps the blocks
1963
+ * it drew at the start of the gesture, scaled, and redraws them only once
1964
+ * they stop covering the viewport; endWheelZoom redraws them sharp
1965
+ */
1966
+ wheelZoomToPos(scaleFactor: number, offsetX: number, offsetY: number): void;
1967
+ /**
1968
+ * #action
1969
+ */
1970
+ endWheelZoom(): void;
1872
1971
  /**
1873
1972
  * #action
1874
1973
  */
@@ -1925,6 +2024,13 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
1925
2024
  * #action
1926
2025
  */
1927
2026
  toggleTrack(id: string): void;
2027
+ /**
2028
+ * #action
2029
+ * show or hide several tracks at once, as the track selector's Show all
2030
+ * and Hide all do. A choice matching the track's default is dropped, so
2031
+ * it stays out of the shared URL
2032
+ */
2033
+ setTracksShown(ids: string[], shown: boolean): void;
1928
2034
  /**
1929
2035
  * #action
1930
2036
  */
@@ -2025,9 +2131,9 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2025
2131
  /**
2026
2132
  * #getter
2027
2133
  * 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
2134
+ * of filling the row behind the letters: whenever the domains do not own
2135
+ * the cell fill (`cellFill`), a filled box would paint over the residue
2136
+ * colors the user picked. Sub-row layout already stacks
2031
2137
  * the boxes clear of the letters, and with the letters too small to draw
2032
2138
  * the filled box is the only thing left to read.
2033
2139
  */
@@ -2208,6 +2314,10 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2208
2314
  * #action
2209
2315
  */
2210
2316
  setHideHeader(arg: boolean): void;
2317
+ /**
2318
+ * #action
2319
+ */
2320
+ setEmbeddedMode(arg: boolean): void;
2211
2321
  /**
2212
2322
  * #action
2213
2323
  */
@@ -2242,8 +2352,8 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2242
2352
  exportNewick(): void;
2243
2353
  /**
2244
2354
  * #action
2245
- * show or hide an annotation type. Only hidden types are recorded; see
2246
- * `turnedOffFeatures`
2355
+ * show or hide an annotation type. Only a choice that differs from the
2356
+ * type's default is recorded; see `turnedOffFeatures`
2247
2357
  */
2248
2358
  setFilter(accession: string, shown: boolean): void;
2249
2359
  /**
@@ -2253,7 +2363,7 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2253
2363
  /**
2254
2364
  * #action
2255
2365
  */
2256
- fitVertically(): void;
2366
+ fitVertically(maxRowHeight?: any): void;
2257
2367
  /**
2258
2368
  * #action
2259
2369
  * zoom and scroll so a span fills the alignment's width, in highlight
@@ -2292,7 +2402,7 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2292
2402
  /**
2293
2403
  * #action
2294
2404
  */
2295
- fitHorizontally(): void;
2405
+ fitHorizontally(maxColWidth?: any): void;
2296
2406
  afterCreate(): void;
2297
2407
  }, import("@jbrowse/mobx-state-tree")._NotCustomized, {
2298
2408
  bgColor: boolean;
@@ -2305,21 +2415,24 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2305
2415
  treeAreaWidth: number | undefined;
2306
2416
  treeWidth: number | undefined;
2307
2417
  showBranchLen: boolean;
2308
- treeOrder: TreeOrder;
2418
+ treeOrder: import("./types.ts").TreeOrder;
2309
2419
  drawTree: boolean;
2310
2420
  drawNodeBubbles: boolean;
2311
2421
  drawNodeLabels: boolean;
2312
2422
  showTreeOverview: boolean;
2423
+ showTreeScaleBar: boolean;
2313
2424
  overviewHeight: number;
2314
2425
  columnTracks: ColumnTrackSpec[];
2315
2426
  id: string;
2316
2427
  showDomains: boolean;
2428
+ domainFill: boolean;
2317
2429
  showDomainLegend: boolean;
2318
2430
  hideGaps: boolean;
2319
2431
  allowedGappyness: number;
2320
2432
  subFeatureRows: boolean;
2321
2433
  type: "MsaView";
2322
2434
  drawMsaLetters: boolean;
2435
+ embeddedMode: boolean;
2323
2436
  scrollZoom: boolean;
2324
2437
  scrollZoomAxis: "both" | "horizontal" | "vertical";
2325
2438
  height: number;
@@ -2442,21 +2555,24 @@ declare function stateModelFactory({ maxInlineSnapshotBytes, }?: {
2442
2555
  treeAreaWidth: number | undefined;
2443
2556
  treeWidth: number | undefined;
2444
2557
  showBranchLen: boolean;
2445
- treeOrder: TreeOrder;
2558
+ treeOrder: import("./types.ts").TreeOrder;
2446
2559
  drawTree: boolean;
2447
2560
  drawNodeBubbles: boolean;
2448
2561
  drawNodeLabels: boolean;
2449
2562
  showTreeOverview: boolean;
2563
+ showTreeScaleBar: boolean;
2450
2564
  overviewHeight: number;
2451
2565
  columnTracks?: undefined;
2452
2566
  id: string;
2453
2567
  showDomains: boolean;
2568
+ domainFill: boolean;
2454
2569
  showDomainLegend: boolean;
2455
2570
  hideGaps: boolean;
2456
2571
  allowedGappyness: number;
2457
2572
  subFeatureRows: boolean;
2458
2573
  type: "MsaView";
2459
2574
  drawMsaLetters: boolean;
2575
+ embeddedMode: boolean;
2460
2576
  scrollZoom: boolean;
2461
2577
  scrollZoomAxis: "both" | "horizontal" | "vertical";
2462
2578
  height: number;