react-msaview 9.0.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 (352) hide show
  1. package/README.md +19 -10
  2. package/bundle/index.js +111 -115
  3. package/bundle/index.js.map +4 -4
  4. package/dist/blosum62.d.ts +3 -0
  5. package/dist/blosum62.js +43 -0
  6. package/dist/blosum62.js.map +1 -0
  7. package/dist/colorSchemes.js +2 -3
  8. package/dist/colorSchemes.js.map +1 -1
  9. package/dist/columnCounts.d.ts +0 -1
  10. package/dist/columnCounts.js +1 -1
  11. package/dist/columnCounts.js.map +1 -1
  12. package/dist/components/Loading.d.ts +3 -2
  13. package/dist/components/Loading.js +7 -7
  14. package/dist/components/Loading.js.map +1 -1
  15. package/dist/components/MSAView.d.ts +3 -2
  16. package/dist/components/MSAView.js +7 -4
  17. package/dist/components/MSAView.js.map +1 -1
  18. package/dist/components/MSAViewer.d.ts +1941 -4
  19. package/dist/components/MSAViewer.js +144 -201
  20. package/dist/components/MSAViewer.js.map +1 -1
  21. package/dist/components/MetadataTable.d.ts +4 -1
  22. package/dist/components/MetadataTable.js +55 -16
  23. package/dist/components/MetadataTable.js.map +1 -1
  24. package/dist/components/ResizeHandles.js +3 -2
  25. package/dist/components/ResizeHandles.js.map +1 -1
  26. package/dist/components/Track.js +8 -1
  27. package/dist/components/Track.js.map +1 -1
  28. package/dist/components/controls.d.ts +11 -0
  29. package/dist/components/controls.js +49 -0
  30. package/dist/components/controls.js.map +1 -0
  31. package/dist/components/dialogs/AnnotationFileDialog.js +12 -18
  32. package/dist/components/dialogs/AnnotationFileDialog.js.map +1 -1
  33. package/dist/components/dialogs/ExportSVGDialog.js +5 -7
  34. package/dist/components/dialogs/ExportSVGDialog.js.map +1 -1
  35. package/dist/components/dialogs/FeatureDialog.js +2 -2
  36. package/dist/components/dialogs/FeatureDialog.js.map +1 -1
  37. package/dist/components/{header/TreeSettingsMenu.d.ts → dialogs/GapThresholdDialog.d.ts} +3 -2
  38. package/dist/components/dialogs/GapThresholdDialog.js +15 -0
  39. package/dist/components/dialogs/GapThresholdDialog.js.map +1 -0
  40. package/dist/components/{header → dialogs}/GappynessSlider.d.ts +1 -1
  41. package/dist/components/{header → dialogs}/GappynessSlider.js +3 -10
  42. package/dist/components/dialogs/GappynessSlider.js.map +1 -0
  43. package/dist/components/{header → dialogs}/GoToBox.d.ts +4 -2
  44. package/dist/components/dialogs/GoToBox.js +48 -0
  45. package/dist/components/dialogs/GoToBox.js.map +1 -0
  46. package/dist/components/dialogs/GoToDialog.d.ts +6 -0
  47. package/dist/components/dialogs/GoToDialog.js +10 -0
  48. package/dist/components/dialogs/GoToDialog.js.map +1 -0
  49. package/dist/components/dialogs/HelpDialog.d.ts +6 -0
  50. package/dist/components/dialogs/HelpDialog.js +30 -0
  51. package/dist/components/dialogs/HelpDialog.js.map +1 -0
  52. package/dist/components/dialogs/MetadataDialog.js +11 -3
  53. package/dist/components/dialogs/MetadataDialog.js.map +1 -1
  54. package/dist/components/dialogs/goTo.d.ts +5 -0
  55. package/dist/components/{header → dialogs}/goTo.js +1 -1
  56. package/dist/components/dialogs/goTo.js.map +1 -0
  57. package/dist/components/dialogs/metadataLabels.d.ts +4 -0
  58. package/dist/components/dialogs/metadataLabels.js +52 -0
  59. package/dist/components/dialogs/metadataLabels.js.map +1 -0
  60. package/dist/components/dialogs/metadataRecord.d.ts +1 -0
  61. package/dist/components/dialogs/metadataRecord.js +38 -0
  62. package/dist/components/dialogs/metadataRecord.js.map +1 -0
  63. package/dist/components/header/Header.d.ts +6 -2
  64. package/dist/components/header/Header.js +30 -34
  65. package/dist/components/header/Header.js.map +1 -1
  66. package/dist/components/header/HiddenColumnsChip.d.ts +6 -0
  67. package/dist/components/header/HiddenColumnsChip.js +15 -0
  68. package/dist/components/header/HiddenColumnsChip.js.map +1 -0
  69. package/dist/components/header/{FileMenu.d.ts → MenuBar.d.ts} +3 -3
  70. package/dist/components/header/MenuBar.js +33 -0
  71. package/dist/components/header/MenuBar.js.map +1 -0
  72. package/dist/components/header/ScrollZoomCheckbox.d.ts +7 -0
  73. package/dist/components/header/ScrollZoomCheckbox.js +19 -0
  74. package/dist/components/header/ScrollZoomCheckbox.js.map +1 -0
  75. package/dist/components/header/ZoomControls.js +12 -48
  76. package/dist/components/header/ZoomControls.js.map +1 -1
  77. package/dist/components/header/colorSchemeMenuItems.d.ts +4 -0
  78. package/dist/components/header/colorSchemeMenuItems.js +106 -0
  79. package/dist/components/header/colorSchemeMenuItems.js.map +1 -0
  80. package/dist/components/header/getAnnotationsMenu.d.ts +3 -30
  81. package/dist/components/header/getAnnotationsMenu.js +48 -54
  82. package/dist/components/header/getAnnotationsMenu.js.map +1 -1
  83. package/dist/components/header/menuBarItems.d.ts +11 -0
  84. package/dist/components/header/menuBarItems.js +277 -0
  85. package/dist/components/header/menuBarItems.js.map +1 -0
  86. package/dist/components/import/ImportForm.js +12 -6
  87. package/dist/components/import/ImportForm.js.map +1 -1
  88. package/dist/components/import/data/seq2.d.ts +0 -1
  89. package/dist/components/import/data/seq2.js +0 -17
  90. package/dist/components/import/data/seq2.js.map +1 -1
  91. package/dist/components/minimap/Minimap.js +7 -3
  92. package/dist/components/minimap/Minimap.js.map +1 -1
  93. package/dist/components/minimap/MinimapSVG.js +2 -1
  94. package/dist/components/minimap/MinimapSVG.js.map +1 -1
  95. package/dist/components/minimap/minimapLayout.d.ts +12 -0
  96. package/dist/components/minimap/minimapLayout.js +20 -0
  97. package/dist/components/minimap/minimapLayout.js.map +1 -1
  98. package/dist/components/msa/MSACanvas.js +28 -10
  99. package/dist/components/msa/MSACanvas.js.map +1 -1
  100. package/dist/components/msa/MSACanvasBlock.js +17 -16
  101. package/dist/components/msa/MSACanvasBlock.js.map +1 -1
  102. package/dist/components/msa/MSAMouseoverCanvas.js +2 -2
  103. package/dist/components/msa/MSAMouseoverCanvas.js.map +1 -1
  104. package/dist/components/msa/WheelZoomHint.d.ts +7 -0
  105. package/dist/components/msa/WheelZoomHint.js +38 -0
  106. package/dist/components/msa/WheelZoomHint.js.map +1 -0
  107. package/dist/components/msa/drawFeatureSpans.d.ts +50 -11
  108. package/dist/components/msa/drawFeatureSpans.js +99 -56
  109. package/dist/components/msa/drawFeatureSpans.js.map +1 -1
  110. package/dist/components/msa/msaKeys.js +3 -0
  111. package/dist/components/msa/msaKeys.js.map +1 -1
  112. package/dist/components/msa/msaRaster.d.ts +14 -2
  113. package/dist/components/msa/msaRaster.js +20 -10
  114. package/dist/components/msa/msaRaster.js.map +1 -1
  115. package/dist/components/msa/renderBoxFeatureCanvasBlock.d.ts +9 -0
  116. package/dist/components/msa/renderBoxFeatureCanvasBlock.js +39 -8
  117. package/dist/components/msa/renderBoxFeatureCanvasBlock.js.map +1 -1
  118. package/dist/components/msa/renderHighlights.d.ts +2 -5
  119. package/dist/components/msa/renderHighlights.js +5 -6
  120. package/dist/components/msa/renderHighlights.js.map +1 -1
  121. package/dist/components/msa/renderMSABlock.d.ts +6 -1
  122. package/dist/components/msa/renderMSABlock.js +44 -17
  123. package/dist/components/msa/renderMSABlock.js.map +1 -1
  124. package/dist/components/msa/renderMSAMouseover.js +2 -1
  125. package/dist/components/msa/renderMSAMouseover.js.map +1 -1
  126. package/dist/components/msa/tileColor.js +7 -0
  127. package/dist/components/msa/tileColor.js.map +1 -1
  128. package/dist/components/renderCtx.d.ts +1 -1
  129. package/dist/components/rowpanels/RowPanelBlock.js +2 -2
  130. package/dist/components/rowpanels/RowPanelBlock.js.map +1 -1
  131. package/dist/components/rowpanels/renderFeaturePanel.d.ts +5 -1
  132. package/dist/components/rowpanels/renderFeaturePanel.js +12 -5
  133. package/dist/components/rowpanels/renderFeaturePanel.js.map +1 -1
  134. package/dist/components/settings/MenuItemsForm.d.ts +10 -0
  135. package/dist/components/settings/MenuItemsForm.js +80 -0
  136. package/dist/components/settings/MenuItemsForm.js.map +1 -0
  137. package/dist/components/settings/SettingsPanel.d.ts +12 -0
  138. package/dist/components/settings/SettingsPanel.js +92 -0
  139. package/dist/components/settings/SettingsPanel.js.map +1 -0
  140. package/dist/components/{header/ZoomMenu.d.ts → settings/TrackList.d.ts} +2 -2
  141. package/dist/components/settings/TrackList.js +55 -0
  142. package/dist/components/settings/TrackList.js.map +1 -0
  143. package/dist/components/tracks/TrackBlocks.js +2 -2
  144. package/dist/components/tracks/TrackBlocks.js.map +1 -1
  145. package/dist/components/tracks/drawTracks.d.ts +1 -53
  146. package/dist/components/tracks/drawTracks.js +5 -5
  147. package/dist/components/tracks/drawTracks.js.map +1 -1
  148. package/dist/components/tree/CladeLabels.d.ts +1 -1
  149. package/dist/components/tree/CladeLabels.js +22 -34
  150. package/dist/components/tree/CladeLabels.js.map +1 -1
  151. package/dist/components/tree/TreeCanvasBlock.js +2 -2
  152. package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
  153. package/dist/components/tree/TreeMenu.js +4 -6
  154. package/dist/components/tree/TreeMenu.js.map +1 -1
  155. package/dist/components/tree/TreeOverview.js +2 -2
  156. package/dist/components/tree/TreeOverview.js.map +1 -1
  157. package/dist/components/tree/cladeBrackets.d.ts +17 -10
  158. package/dist/components/tree/cladeBrackets.js +33 -3
  159. package/dist/components/tree/cladeBrackets.js.map +1 -1
  160. package/dist/components/tree/renderTreeCanvas.js +2 -8
  161. package/dist/components/tree/renderTreeCanvas.js.map +1 -1
  162. package/dist/components/tree/renderTreeOverview.js +4 -11
  163. package/dist/components/tree/renderTreeOverview.js.map +1 -1
  164. package/dist/constants.d.ts +4 -1
  165. package/dist/constants.js +7 -1
  166. package/dist/constants.js.map +1 -1
  167. package/dist/darkReader.d.ts +7 -0
  168. package/dist/darkReader.js +42 -0
  169. package/dist/darkReader.js.map +1 -0
  170. package/dist/element.js +25 -53
  171. package/dist/element.js.map +1 -1
  172. package/dist/exportLayout.d.ts +39 -0
  173. package/dist/exportLayout.js +78 -0
  174. package/dist/exportLayout.js.map +1 -0
  175. package/dist/featurePanels.d.ts +37 -0
  176. package/dist/featurePanels.js +187 -0
  177. package/dist/featurePanels.js.map +1 -0
  178. package/dist/filehandleLoader.d.ts +41 -0
  179. package/dist/filehandleLoader.js +99 -0
  180. package/dist/filehandleLoader.js.map +1 -0
  181. package/dist/headlessRenderEnv.d.ts +12 -39
  182. package/dist/headlessRenderEnv.js +18 -12
  183. package/dist/headlessRenderEnv.js.map +1 -1
  184. package/dist/hierarchy.d.ts +5 -8
  185. package/dist/hierarchy.js +5 -79
  186. package/dist/hierarchy.js.map +1 -1
  187. package/dist/index.d.ts +6 -1
  188. package/dist/index.js +6 -1
  189. package/dist/index.js.map +1 -1
  190. package/dist/measureTextCanvas.d.ts +7 -0
  191. package/dist/measureTextCanvas.js +8 -6
  192. package/dist/measureTextCanvas.js.map +1 -1
  193. package/dist/model/treeModel.d.ts +6 -2
  194. package/dist/model/treeModel.js +8 -4
  195. package/dist/model/treeModel.js.map +1 -1
  196. package/dist/model.d.ts +180 -76
  197. package/dist/model.js +358 -618
  198. package/dist/model.js.map +1 -1
  199. package/dist/neighborJoining.js +1 -40
  200. package/dist/neighborJoining.js.map +1 -1
  201. package/dist/renderToSvg.d.ts +2 -7
  202. package/dist/renderToSvg.js +33 -133
  203. package/dist/renderToSvg.js.map +1 -1
  204. package/dist/rerootTree.d.ts +1 -0
  205. package/dist/rerootTree.js +7 -6
  206. package/dist/rerootTree.js.map +1 -1
  207. package/dist/schemeResidueColor.d.ts +12 -0
  208. package/dist/schemeResidueColor.js +33 -0
  209. package/dist/schemeResidueColor.js.map +1 -0
  210. package/dist/similarityColors.d.ts +11 -0
  211. package/dist/similarityColors.js +90 -0
  212. package/dist/similarityColors.js.map +1 -0
  213. package/dist/svgTestUtil.d.ts +74 -32
  214. package/dist/treeDisplay.d.ts +37 -0
  215. package/dist/treeDisplay.js +209 -0
  216. package/dist/treeDisplay.js.map +1 -0
  217. package/dist/types.d.ts +6 -3
  218. package/dist/useWheelScroll.d.ts +3 -1
  219. package/dist/useWheelScroll.js +36 -17
  220. package/dist/useWheelScroll.js.map +1 -1
  221. package/dist/util.d.ts +2 -0
  222. package/dist/util.js +2 -0
  223. package/dist/util.js.map +1 -1
  224. package/dist/version.d.ts +1 -1
  225. package/dist/version.js +1 -1
  226. package/dist/viewerSnapshot.d.ts +169 -0
  227. package/dist/viewerSnapshot.js +100 -0
  228. package/dist/viewerSnapshot.js.map +1 -0
  229. package/dist/wheelZoom.d.ts +8 -3
  230. package/dist/wheelZoom.js +44 -32
  231. package/dist/wheelZoom.js.map +1 -1
  232. package/dist/zoomSnapshot.d.ts +29 -0
  233. package/dist/zoomSnapshot.js +47 -0
  234. package/dist/zoomSnapshot.js.map +1 -0
  235. package/package.json +11 -11
  236. package/src/blosum62.ts +45 -0
  237. package/src/colorSchemes.ts +2 -4
  238. package/src/columnCounts.ts +1 -1
  239. package/src/components/Loading.tsx +25 -14
  240. package/src/components/MSAView.tsx +22 -5
  241. package/src/components/MSAViewer.tsx +275 -251
  242. package/src/components/MetadataTable.tsx +83 -26
  243. package/src/components/ResizeHandles.tsx +9 -2
  244. package/src/components/Track.tsx +15 -1
  245. package/src/components/controls.ts +62 -0
  246. package/src/components/dialogs/AnnotationFileDialog.tsx +16 -21
  247. package/src/components/dialogs/ExportSVGDialog.tsx +8 -19
  248. package/src/components/dialogs/FeatureDialog.tsx +2 -5
  249. package/src/components/dialogs/GapThresholdDialog.tsx +36 -0
  250. package/src/components/{header → dialogs}/GappynessSlider.tsx +3 -10
  251. package/src/components/{header → dialogs}/GoToBox.tsx +36 -10
  252. package/src/components/dialogs/GoToDialog.tsx +30 -0
  253. package/src/components/dialogs/HelpDialog.tsx +79 -0
  254. package/src/components/dialogs/MetadataDialog.tsx +32 -4
  255. package/src/components/{header → dialogs}/goTo.ts +1 -1
  256. package/src/components/dialogs/metadataLabels.ts +54 -0
  257. package/src/components/dialogs/metadataRecord.tsx +61 -0
  258. package/src/components/header/Header.tsx +75 -44
  259. package/src/components/header/HiddenColumnsChip.tsx +39 -0
  260. package/src/components/header/MenuBar.tsx +64 -0
  261. package/src/components/header/ScrollZoomCheckbox.tsx +46 -0
  262. package/src/components/header/ZoomControls.tsx +23 -74
  263. package/src/components/header/colorSchemeMenuItems.ts +121 -0
  264. package/src/components/header/getAnnotationsMenu.ts +52 -56
  265. package/src/components/header/menuBarItems.ts +357 -0
  266. package/src/components/import/ImportForm.tsx +19 -7
  267. package/src/components/import/data/seq2.ts +0 -18
  268. package/src/components/minimap/Minimap.tsx +11 -3
  269. package/src/components/minimap/MinimapSVG.tsx +17 -1
  270. package/src/components/minimap/minimapLayout.ts +27 -0
  271. package/src/components/msa/MSACanvas.tsx +24 -4
  272. package/src/components/msa/MSACanvasBlock.tsx +20 -17
  273. package/src/components/msa/MSAMouseoverCanvas.tsx +2 -2
  274. package/src/components/msa/WheelZoomHint.tsx +56 -0
  275. package/src/components/msa/drawFeatureSpans.ts +160 -79
  276. package/src/components/msa/msaKeys.ts +3 -0
  277. package/src/components/msa/msaRaster.ts +26 -10
  278. package/src/components/msa/renderBoxFeatureCanvasBlock.ts +62 -24
  279. package/src/components/msa/renderHighlights.ts +5 -6
  280. package/src/components/msa/renderMSABlock.ts +51 -15
  281. package/src/components/msa/renderMSAMouseover.ts +5 -1
  282. package/src/components/msa/tileColor.ts +7 -0
  283. package/src/components/renderCtx.ts +0 -1
  284. package/src/components/rowpanels/RowPanelBlock.tsx +2 -2
  285. package/src/components/rowpanels/renderFeaturePanel.ts +26 -7
  286. package/src/components/settings/MenuItemsForm.tsx +225 -0
  287. package/src/components/settings/SettingsPanel.tsx +156 -0
  288. package/src/components/settings/TrackList.tsx +119 -0
  289. package/src/components/tracks/TrackBlocks.tsx +2 -2
  290. package/src/components/tracks/drawTracks.ts +5 -5
  291. package/src/components/tree/CladeLabels.tsx +30 -54
  292. package/src/components/tree/TreeCanvasBlock.tsx +2 -2
  293. package/src/components/tree/TreeMenu.tsx +4 -6
  294. package/src/components/tree/TreeOverview.tsx +2 -2
  295. package/src/components/tree/cladeBrackets.ts +50 -3
  296. package/src/components/tree/renderTreeCanvas.ts +2 -13
  297. package/src/components/tree/renderTreeOverview.ts +7 -14
  298. package/src/constants.ts +9 -1
  299. package/src/darkReader.ts +57 -0
  300. package/src/element.ts +37 -64
  301. package/src/exportLayout.ts +134 -0
  302. package/src/featurePanels.ts +269 -0
  303. package/src/filehandleLoader.ts +136 -0
  304. package/src/headlessRenderEnv.ts +24 -11
  305. package/src/hierarchy.ts +5 -88
  306. package/src/index.ts +9 -5
  307. package/src/measureTextCanvas.ts +8 -6
  308. package/src/model/treeModel.ts +9 -3
  309. package/src/model.ts +452 -807
  310. package/src/neighborJoining.ts +1 -42
  311. package/src/renderToSvg.tsx +56 -207
  312. package/src/rerootTree.ts +7 -6
  313. package/src/schemeResidueColor.ts +37 -0
  314. package/src/similarityColors.ts +112 -0
  315. package/src/treeDisplay.ts +278 -0
  316. package/src/types.ts +6 -4
  317. package/src/useWheelScroll.ts +43 -22
  318. package/src/util.ts +3 -0
  319. package/src/version.ts +1 -1
  320. package/src/viewerSnapshot.ts +147 -0
  321. package/src/wheelZoom.ts +55 -33
  322. package/src/zoomSnapshot.ts +80 -0
  323. package/dist/components/header/ColorSchemeMenu.d.ts +0 -12
  324. package/dist/components/header/ColorSchemeMenu.js +0 -37
  325. package/dist/components/header/ColorSchemeMenu.js.map +0 -1
  326. package/dist/components/header/FileMenu.js +0 -66
  327. package/dist/components/header/FileMenu.js.map +0 -1
  328. package/dist/components/header/GappynessSlider.js.map +0 -1
  329. package/dist/components/header/GoToBox.js +0 -31
  330. package/dist/components/header/GoToBox.js.map +0 -1
  331. package/dist/components/header/MSASettingsMenu.d.ts +0 -6
  332. package/dist/components/header/MSASettingsMenu.js +0 -11
  333. package/dist/components/header/MSASettingsMenu.js.map +0 -1
  334. package/dist/components/header/ScrollZoomIcons.d.ts +0 -6
  335. package/dist/components/header/ScrollZoomIcons.js +0 -35
  336. package/dist/components/header/ScrollZoomIcons.js.map +0 -1
  337. package/dist/components/header/TreeSettingsMenu.js +0 -42
  338. package/dist/components/header/TreeSettingsMenu.js.map +0 -1
  339. package/dist/components/header/ZoomMenu.js +0 -37
  340. package/dist/components/header/ZoomMenu.js.map +0 -1
  341. package/dist/components/header/goTo.d.ts +0 -20
  342. package/dist/components/header/goTo.js.map +0 -1
  343. package/dist/components/header/settingsMenuItems.d.ts +0 -4
  344. package/dist/components/header/settingsMenuItems.js +0 -127
  345. package/dist/components/header/settingsMenuItems.js.map +0 -1
  346. package/src/components/header/ColorSchemeMenu.tsx +0 -56
  347. package/src/components/header/FileMenu.tsx +0 -81
  348. package/src/components/header/MSASettingsMenu.tsx +0 -26
  349. package/src/components/header/ScrollZoomIcons.tsx +0 -52
  350. package/src/components/header/TreeSettingsMenu.tsx +0 -60
  351. package/src/components/header/ZoomMenu.tsx +0 -48
  352. package/src/components/header/settingsMenuItems.ts +0 -157
@@ -1 +1 @@
1
- {"version":3,"file":"Track.js","sourceRoot":"","sources":["../../src/components/Track.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Track.js","sourceRoot":"","sources":["../../src/components/Track.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export interface Control {
2
+ label: string;
3
+ action: string;
4
+ }
5
+ export interface KeyControl extends Control {
6
+ keys: string[];
7
+ shiftKey?: boolean;
8
+ }
9
+ export declare const keyboardControls: KeyControl[];
10
+ export declare const mouseControls: Control[];
11
+ export declare const alignmentAriaLabel: string;
@@ -0,0 +1,49 @@
1
+ const arrows = ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown'];
2
+ export const keyboardControls = [
3
+ { label: 'Arrow keys', action: 'Scroll one cell', keys: arrows },
4
+ {
5
+ label: 'Shift + arrow keys',
6
+ action: 'Scroll one page',
7
+ keys: arrows,
8
+ shiftKey: true,
9
+ },
10
+ { label: '+ and -', action: 'Zoom in and out', keys: ['+', '=', '-'] },
11
+ { label: '0', action: 'Reset to the default cell size', keys: ['0'] },
12
+ {
13
+ label: 'Home and End',
14
+ action: 'Jump to the first and last column',
15
+ keys: ['Home', 'End'],
16
+ },
17
+ { label: 'Escape', action: 'Clear the selection', keys: ['Escape'] },
18
+ ];
19
+ const selectCells = {
20
+ label: 'Shift + drag',
21
+ action: 'Select a block of cells',
22
+ };
23
+ export const mouseControls = [
24
+ { label: 'Drag', action: 'Pan the alignment' },
25
+ {
26
+ label: 'Wheel',
27
+ action: 'Scroll, or zoom with Zoom on scroll checked',
28
+ },
29
+ { label: 'Ctrl + wheel', action: 'Zoom at the cursor' },
30
+ selectCells,
31
+ {
32
+ label: 'Drag along a track',
33
+ action: 'Select a range of columns across every row',
34
+ },
35
+ {
36
+ label: 'Click a tree node',
37
+ action: 'Collapse, rotate, reroot or show only that clade',
38
+ },
39
+ {
40
+ label: 'Click the tree overview',
41
+ action: 'Show only the clade under the pointer',
42
+ },
43
+ { label: 'Drag a divider', action: 'Resize the tree area or a track' },
44
+ ];
45
+ export const alignmentAriaLabel = [
46
+ 'Alignment',
47
+ ...[...keyboardControls, selectCells].map(c => `${c.label}: ${c.action}`),
48
+ ].join('. ');
49
+ //# sourceMappingURL=controls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controls.js","sourceRoot":"","sources":["../../src/components/controls.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,CAAC,CAAA;AAElE,MAAM,CAAC,MAAM,gBAAgB,GAAiB;IAC5C,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE;IAChE;QACE,KAAK,EAAE,oBAAoB;QAC3B,MAAM,EAAE,iBAAiB;QACzB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;KACf;IACD,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;IACtE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,gCAAgC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE;IACrE;QACE,KAAK,EAAE,cAAc;QACrB,MAAM,EAAE,mCAAmC;QAC3C,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;KACtB;IACD,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE;CACrE,CAAA;AAED,MAAM,WAAW,GAAY;IAC3B,KAAK,EAAE,cAAc;IACrB,MAAM,EAAE,yBAAyB;CAClC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAc;IACtC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE;IAC9C;QACE,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,6CAA6C;KACtD;IACD,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,oBAAoB,EAAE;IACvD,WAAW;IACX;QACE,KAAK,EAAE,oBAAoB;QAC3B,MAAM,EAAE,4CAA4C;KACrD;IACD;QACE,KAAK,EAAE,mBAAmB;QAC1B,MAAM,EAAE,kDAAkD;KAC3D;IACD;QACE,KAAK,EAAE,yBAAyB;QAChC,MAAM,EAAE,uCAAuC;KAChD;IACD,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,iCAAiC,EAAE;CACvE,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,WAAW;IACX,GAAG,CAAC,GAAG,gBAAgB,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;CAC1E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA"}
@@ -1,19 +1,9 @@
1
1
  import React, { useState } from 'react';
2
2
  import { Dialog, ErrorMessage } from '@jbrowse/core/ui';
3
- import { Button, DialogActions, DialogContent, FormControl, FormControlLabel, Radio, RadioGroup, TextField, Typography, } from '@mui/material';
3
+ import { Button, DialogActions, DialogContent, FormControl, FormControlLabel, Link, Radio, RadioGroup, TextField, Typography, } from '@mui/material';
4
4
  import { observer } from 'mobx-react';
5
- import { annotationsToGFF, interProScanResponseToAnnotations, } from 'msa-parsers';
6
- // GFF3 as the CLI writes it, or the JSON an InterProScan run returns. Both
7
- // arrive as text and the model keeps GFF, so the JSON is converted on the way
8
- // in rather than given a second path through the model
9
- function toGFF(text) {
10
- const trimmed = text.trimStart();
11
- if (!trimmed.startsWith('{')) {
12
- return text;
13
- }
14
- const response = JSON.parse(trimmed);
15
- return annotationsToGFF(interProScanResponseToAnnotations(response));
16
- }
5
+ import { annotationTextToGFF } from 'msa-parsers';
6
+ const domainsTutorial = 'https://gmod.org/JBrowseMSA/tutorials/protein_family';
17
7
  async function fetchText(url) {
18
8
  const response = await fetch(url);
19
9
  if (!response.ok) {
@@ -36,7 +26,10 @@ const AnnotationFileDialog = observer(function ({ handleClose, model, }) {
36
26
  }, open: true },
37
27
  React.createElement(DialogContent, null,
38
28
  error ? React.createElement(ErrorMessage, { error: error }) : null,
39
- React.createElement(Typography, null, "Open a GFF3 file of annotations, such as the one `react-msaview-cli interpro` writes, or the JSON an InterProScan run returns."),
29
+ React.createElement(Typography, null,
30
+ "Open a GFF3 file of annotations, such as the one `react-msaview-cli interpro` writes, or the JSON an InterProScan run returns.",
31
+ ' ',
32
+ React.createElement(Link, { href: domainsTutorial, target: "_blank", rel: "noopener noreferrer" }, "How to make one")),
40
33
  React.createElement("div", { style: { display: 'flex', margin: 30 } },
41
34
  React.createElement(FormControl, { component: "fieldset" },
42
35
  React.createElement(RadioGroup, { value: choice, onChange: event => {
@@ -71,11 +64,12 @@ const AnnotationFileDialog = observer(function ({ handleClose, model, }) {
71
64
  ? file.text()
72
65
  : fetchText(url));
73
66
  // through the model's own GFF text, so the annotations travel
74
- // in the snapshot and the shared URL like every other layer.
75
- // Setting them straight onto the volatile left a view whose
76
- // link opened without them
77
- model.setGFF(toGFF(text));
67
+ // in the snapshot and the shared URL like every other layer. A
68
+ // filehandle left set would make the snapshot drop that text
69
+ model.setGFFFilehandle(undefined);
70
+ model.setGFF(annotationTextToGFF(text));
78
71
  model.setShowDomains(true);
72
+ model.setCellFill('domain');
79
73
  handleClose();
80
74
  }
81
75
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"AnnotationFileDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/AnnotationFileDialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnnotationFileDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/AnnotationFileDialog.tsx"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import React, { useState } from 'react';
2
2
  import { Dialog, ErrorMessage } from '@jbrowse/core/ui';
3
3
  import { Alert, Button, CircularProgress, DialogActions, DialogContent, FormControl, FormControlLabel, FormLabel, Radio, RadioGroup, Typography, useTheme, } from '@mui/material';
4
4
  import { observer } from 'mobx-react';
5
+ import { exportPageSize, getLayout } from '../../exportLayout.js';
5
6
  import Checkbox2 from '../Checkbox2.js';
6
7
  // Run after the browser has painted. A requestAnimationFrame callback still
7
8
  // runs *before* the frame it was queued for, so one alone hands the main thread
@@ -19,12 +20,9 @@ const ExportSVGDialog = observer(function ({ model, onClose, }) {
19
20
  const [error, setError] = useState();
20
21
  const [exporting, setExporting] = useState(false);
21
22
  const theme = useTheme();
22
- const { totalWidth, totalHeight, effectiveTreeAreaWidth, rowPanelsWidth, turnedOnTracks, totalTrackAreaHeight, numColumns, leaves, showMsaLetters, treeOverviewHeight, } = model;
23
+ const { turnedOnTracks, numColumns, leaves, showMsaLetters } = model;
23
24
  const hasTracks = turnedOnTracks.length > 0;
24
- const entireWidth = totalWidth + effectiveTreeAreaWidth + rowPanelsWidth;
25
- const entireHeight = totalHeight +
26
- (includeTracks ? totalTrackAreaHeight : 0) +
27
- treeOverviewHeight;
25
+ const entire = exportPageSize(model, getLayout(model, { theme, exportType: 'entire', includeTracks }));
28
26
  // the background is one raster image whatever its size, so what the figure
29
27
  // actually costs is its residue letters: each is an svg element of its own.
30
28
  // Past roughly this many the export runs to tens of seconds and can exhaust
@@ -56,9 +54,9 @@ const ExportSVGDialog = observer(function ({ model, onClose, }) {
56
54
  React.createElement(FormControlLabel, { value: "viewport", control: React.createElement(Radio, null), label: "Current viewport only" })))),
57
55
  isLargeExport ? (React.createElement(Alert, { severity: "warning", style: { marginTop: 8 } },
58
56
  "The entire MSA is ",
59
- Math.round(entireWidth),
57
+ Math.round(entire.width),
60
58
  "x",
61
- Math.round(entireHeight),
59
+ Math.round(entire.height),
62
60
  " pixels and draws",
63
61
  ' ',
64
62
  Math.round(glyphs / 1000),
@@ -1 +1 @@
1
- {"version":3,"file":"ExportSVGDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/ExportSVGDialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExportSVGDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/ExportSVGDialog.tsx"],"names":[],"mappings":"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"}
@@ -49,8 +49,8 @@ const FeatureTable = observer(function ({ model }) {
49
49
  React.createElement(TableCell, null, "description"))),
50
50
  React.createElement(TableBody, null, types.map(({ accession, name, description }) => (React.createElement(TableRow, { key: accession },
51
51
  React.createElement(TableCell, { padding: "checkbox" },
52
- React.createElement(Checkbox, { checked: !model.turnedOffFeatures.get(accession), onChange: () => {
53
- model.setFilter(accession, !!model.turnedOffFeatures.get(accession));
52
+ React.createElement(Checkbox, { checked: !model.featureOff(accession), onChange: () => {
53
+ model.setFilter(accession, model.featureOff(accession));
54
54
  } })),
55
55
  React.createElement(TableCell, null,
56
56
  React.createElement("div", { style: {
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/FeatureDialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FeatureDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/FeatureDialog.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
2
  import type { MsaViewModel } from '../../model.ts';
3
- declare const TreeSettingsMenu: ({ model, }: {
3
+ declare const GapThresholdDialog: ({ model, onClose, }: {
4
4
  model: MsaViewModel;
5
+ onClose: () => void;
5
6
  }) => React.JSX.Element;
6
- export default TreeSettingsMenu;
7
+ export default GapThresholdDialog;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import { Dialog } from '@jbrowse/core/ui';
3
+ import { Button, DialogActions, DialogContent, Typography } from '@mui/material';
4
+ import { observer } from 'mobx-react';
5
+ import GappynessSlider from './GappynessSlider.js';
6
+ const GapThresholdDialog = observer(function ({ model, onClose, }) {
7
+ return (React.createElement(Dialog, { open: true, onClose: onClose, title: "Hide gappy columns" },
8
+ React.createElement(DialogContent, null,
9
+ React.createElement(Typography, { variant: "body2", sx: { mb: 2 } }, "The viewer hides each column where at least this share of the rows has a gap."),
10
+ React.createElement(GappynessSlider, { model: model })),
11
+ React.createElement(DialogActions, null,
12
+ React.createElement(Button, { variant: "contained", onClick: onClose }, "Close"))));
13
+ });
14
+ export default GapThresholdDialog;
15
+ //# sourceMappingURL=GapThresholdDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GapThresholdDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/GapThresholdDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,eAAe,MAAM,sBAAuB,CAAA;AAInD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,UAAU,EAC5C,KAAK,EACL,OAAO,GAIR;IACC,OAAO,CACL,oBAAC,MAAM,IAAC,IAAI,QAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAC,oBAAoB;QACvD,oBAAC,aAAa;YACZ,oBAAC,UAAU,IAAC,OAAO,EAAC,OAAO,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,oFAG5B;YACb,oBAAC,eAAe,IAAC,KAAK,EAAE,KAAK,GAAI,CACnB;QAChB,oBAAC,aAAa;YACZ,oBAAC,MAAM,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,OAAO,YAEnC,CACK,CACT,CACV,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,kBAAkB,CAAA"}
@@ -2,5 +2,5 @@ import React from 'react';
2
2
  import type { MsaViewModel } from '../../model.ts';
3
3
  declare const GappynessSlider: ({ model, }: {
4
4
  model: MsaViewModel;
5
- }) => React.JSX.Element | null;
5
+ }) => React.JSX.Element;
6
6
  export default GappynessSlider;
@@ -2,15 +2,11 @@ import React, { useState } from 'react';
2
2
  import { Slider, Typography } from '@mui/material';
3
3
  import { observer } from 'mobx-react';
4
4
  const GappynessSlider = observer(function GappynessSlider({ model, }) {
5
- const { hideGaps, allowedGappyness } = model;
6
5
  const [dragValue, setDragValue] = useState();
7
- const value = dragValue ?? allowedGappyness;
8
- if (!hideGaps) {
9
- return null;
10
- }
6
+ const value = dragValue ?? model.allowedGappyness;
11
7
  return (React.createElement("div", { style: { display: 'flex', alignItems: 'center', gap: 8 } },
12
8
  React.createElement(Typography, { style: { whiteSpace: 'nowrap' } },
13
- "Hide columns w/ \u2265",
9
+ "\u2265",
14
10
  value,
15
11
  "% gaps"),
16
12
  React.createElement(Slider
@@ -25,10 +21,7 @@ const GappynessSlider = observer(function GappynessSlider({ model, }) {
25
21
  // The thumb follows local state while dragging and the model takes the
26
22
  // value on release, since each write recomputes the gap columns over
27
23
  // the whole alignment.
28
- //
29
- // The thumb centers on the track's ends, so the margin keeps its
30
- // overhang off the label and the row search beside it.
31
- , { "data-testid": "gappyness_slider", style: { width: 100, marginInline: 10 }, min: 1, max: 100, value: value, onChange: (_, val) => {
24
+ , { "data-testid": "gappyness_slider", style: { width: 200, marginInline: 10 }, min: 1, max: 100, value: value, onChange: (_, val) => {
32
25
  setDragValue(val);
33
26
  }, onChangeCommitted: (_, val) => {
34
27
  model.setAllowedGappyness(val);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GappynessSlider.js","sourceRoot":"","sources":["../../../src/components/dialogs/GappynessSlider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEvC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAIrC,MAAM,eAAe,GAAG,QAAQ,CAAC,SAAS,eAAe,CAAC,EACxD,KAAK,GAGN;IACC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,EAAU,CAAA;IACpD,MAAM,KAAK,GAAG,SAAS,IAAI,KAAK,CAAC,gBAAgB,CAAA;IACjD,OAAO,CACL,6BAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE;QAI3D,oBAAC,UAAU,IAAC,KAAK,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE;;YACpC,KAAK;qBACC;QACb,oBAAC,MAAM;QACL,qEAAqE;QACrE,6DAA6D;QAC7D,wEAAwE;QACxE,yCAAyC;QACzC,EAAE;QACF,sEAAsE;QACtE,0DAA0D;QAC1D,EAAE;QACF,uEAAuE;QACvE,qEAAqE;QACrE,uBAAuB;2BACX,kBAAkB,EAC9B,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,EACvC,GAAG,EAAE,CAAC,EACN,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;gBACnB,YAAY,CAAC,GAAG,CAAC,CAAA;YACnB,CAAC,EACD,iBAAiB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;gBAC5B,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAA;gBAC9B,YAAY,CAAC,SAAS,CAAC,CAAA;YACzB,CAAC,GACD,CACE,CACP,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,eAAe,CAAA"}
@@ -332,7 +332,9 @@ export declare function labelledInput(params: AutocompleteRenderInputParams): {
332
332
  'aria-label': string;
333
333
  };
334
334
  };
335
- declare const GoToBox: ({ model }: {
335
+ export declare function canGoTo(model: MsaViewModel): boolean;
336
+ declare const GoToBox: ({ model, onFound, }: {
336
337
  model: MsaViewModel;
337
- }) => React.JSX.Element | null;
338
+ onFound?: () => void;
339
+ }) => React.JSX.Element;
338
340
  export default GoToBox;
@@ -0,0 +1,48 @@
1
+ import React, { useState } from 'react';
2
+ import { Autocomplete, TextField } from '@mui/material';
3
+ import { observer } from 'mobx-react';
4
+ import { findableRowNames, goTo, rowNameSuggestions } from './goTo.js';
5
+ const label = 'Go to row or column';
6
+ // MUI 9 hands renderInput `slotProps`; MUI 7, which every released JBrowse host
7
+ // serves, hands it `inputProps` and no `slotProps` at all
8
+ export function labelledInput(params) {
9
+ const { slotProps, inputProps } = params;
10
+ return slotProps
11
+ ? {
12
+ slotProps: {
13
+ ...slotProps,
14
+ htmlInput: { ...slotProps.htmlInput, 'aria-label': label },
15
+ },
16
+ }
17
+ : { inputProps: { ...inputProps, 'aria-label': label } };
18
+ }
19
+ // the menu that opens the dialog hands focus back to its button as it closes,
20
+ // after an autoFocus input would have taken it
21
+ function focusNextFrame(el) {
22
+ if (el) {
23
+ requestAnimationFrame(() => {
24
+ el.focus();
25
+ });
26
+ }
27
+ }
28
+ export function canGoTo(model) {
29
+ return findableRowNames(model).length > 1 || model.numColumns > 0;
30
+ }
31
+ const GoToBox = observer(function ({ model, onFound, }) {
32
+ const [missed, setMissed] = useState(false);
33
+ return (React.createElement(Autocomplete, { freeSolo: true, options: findableRowNames(model), filterOptions: (options, { inputValue }) => rowNameSuggestions(options, inputValue), value: null, blurOnSelect: true, onInputChange: () => {
34
+ setMissed(false);
35
+ }, onChange: (_, text) => {
36
+ if (text) {
37
+ const found = goTo(model, text);
38
+ setMissed(!found);
39
+ if (found) {
40
+ onFound?.();
41
+ }
42
+ }
43
+ }, renderInput: params => (React.createElement(TextField, { ...params, inputRef: focusNextFrame, error: missed, placeholder: "Row name or column number", helperText: missed
44
+ ? 'No row or column matches'
45
+ : 'Or name:N for residue N of that row', ...labelledInput(params) })) }));
46
+ });
47
+ export default GoToBox;
48
+ //# sourceMappingURL=GoToBox.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GoToBox.js","sourceRoot":"","sources":["../../../src/components/dialogs/GoToBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEvC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAKtE,MAAM,KAAK,GAAG,qBAAqB,CAAA;AAEnC,gFAAgF;AAChF,0DAA0D;AAC1D,MAAM,UAAU,aAAa,CAAC,MAAqC;IACjE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAEjC,CAAA;IACD,OAAO,SAAS;QACd,CAAC,CAAC;YACE,SAAS,EAAE;gBACT,GAAG,SAAS;gBACZ,SAAS,EAAE,EAAE,GAAG,SAAS,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,EAAE;aAC3D;SACF;QACH,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,CAAA;AAC5D,CAAC;AAED,8EAA8E;AAC9E,+CAA+C;AAC/C,SAAS,cAAc,CAAC,EAA2B;IACjD,IAAI,EAAE,EAAE,CAAC;QACP,qBAAqB,CAAC,GAAG,EAAE;YACzB,EAAE,CAAC,KAAK,EAAE,CAAA;QACZ,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAmB;IACzC,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,CAAA;AACnE,CAAC;AAED,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,EACjC,KAAK,EACL,OAAO,GAIR;IACC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC3C,OAAO,CACL,oBAAC,YAAY,IACX,QAAQ,QACR,OAAO,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAChC,aAAa,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,CACzC,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,EAEzC,KAAK,EAAE,IAAI,EACX,YAAY,QACZ,aAAa,EAAE,GAAG,EAAE;YAClB,SAAS,CAAC,KAAK,CAAC,CAAA;QAClB,CAAC,EACD,QAAQ,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;YACpB,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;gBAC/B,SAAS,CAAC,CAAC,KAAK,CAAC,CAAA;gBACjB,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,EAAE,EAAE,CAAA;gBACb,CAAC;YACH,CAAC;QACH,CAAC,EACD,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC,CACrB,oBAAC,SAAS,OACJ,MAAM,EACV,QAAQ,EAAE,cAAc,EACxB,KAAK,EAAE,MAAM,EACb,WAAW,EAAC,2BAA2B,EACvC,UAAU,EACR,MAAM;gBACJ,CAAC,CAAC,0BAA0B;gBAC5B,CAAC,CAAC,qCAAqC,KAEvC,aAAa,CAAC,MAAM,CAAC,GACzB,CACH,GACD,CACH,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,OAAO,CAAA"}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import type { MsaViewModel } from '../../model.ts';
3
+ export default function GoToDialog({ model, onClose, }: {
4
+ model: MsaViewModel;
5
+ onClose: () => void;
6
+ }): React.JSX.Element;
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { Dialog } from '@jbrowse/core/ui';
3
+ import { DialogContent } from '@mui/material';
4
+ import GoToBox from './GoToBox.js';
5
+ export default function GoToDialog({ model, onClose, }) {
6
+ return (React.createElement(Dialog, { open: true, onClose: onClose, title: "Go to row or column", maxWidth: "xs", fullWidth: true },
7
+ React.createElement(DialogContent, null,
8
+ React.createElement(GoToBox, { model: model, onFound: onClose }))));
9
+ }
10
+ //# sourceMappingURL=GoToDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GoToDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/GoToDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,OAAO,OAAO,MAAM,cAAe,CAAA;AAInC,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,KAAK,EACL,OAAO,GAIR;IACC,OAAO,CACL,oBAAC,MAAM,IACL,IAAI,QACJ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAC,qBAAqB,EAC3B,QAAQ,EAAC,IAAI,EACb,SAAS;QAET,oBAAC,aAAa;YACZ,oBAAC,OAAO,IAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAI,CAC7B,CACT,CACV,CAAA;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ import type { MsaViewModel } from '../../model.ts';
3
+ export default function HelpDialog({ model, onClose, }: {
4
+ model: MsaViewModel;
5
+ onClose: () => void;
6
+ }): React.JSX.Element;
@@ -0,0 +1,30 @@
1
+ import React, { lazy } from 'react';
2
+ import { Dialog } from '@jbrowse/core/ui';
3
+ import { Button, DialogActions, DialogContent, Table, TableBody, TableCell, TableRow, Typography, } from '@mui/material';
4
+ import { version } from '../../version.js';
5
+ import { keyboardControls, mouseControls } from '../controls.js';
6
+ const AboutDialog = lazy(() => import('./AboutDialog.js'));
7
+ function ControlTable({ title, rows }) {
8
+ return (React.createElement(React.Fragment, null,
9
+ React.createElement(Typography, { variant: "subtitle2", sx: { mt: 1 } }, title),
10
+ React.createElement(Table, { size: "small", "aria-label": title },
11
+ React.createElement(TableBody, null, rows.map(({ label, action }) => (React.createElement(TableRow, { key: label },
12
+ React.createElement(TableCell, { sx: { whiteSpace: 'nowrap', fontWeight: 500 } }, label),
13
+ React.createElement(TableCell, null, action))))))));
14
+ }
15
+ export default function HelpDialog({ model, onClose, }) {
16
+ return (React.createElement(Dialog, { open: true, title: "Mouse & keyboard", onClose: onClose },
17
+ React.createElement(DialogContent, null,
18
+ React.createElement(ControlTable, { title: "Mouse", rows: mouseControls }),
19
+ React.createElement(ControlTable, { title: "Keyboard (click the alignment first)", rows: keyboardControls })),
20
+ React.createElement(DialogActions, null,
21
+ React.createElement(Typography, { variant: "caption", sx: { mr: 'auto', pl: 1 } },
22
+ "MSAView ",
23
+ version),
24
+ React.createElement(Button, { onClick: () => {
25
+ model.queueDialog(done => [AboutDialog, { onClose: done }]);
26
+ onClose();
27
+ } }, "About & credits"),
28
+ React.createElement(Button, { variant: "contained", onClick: onClose }, "Close"))));
29
+ }
30
+ //# sourceMappingURL=HelpDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HelpDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/HelpDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAEnC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,KAAK,EACL,SAAS,EACT,SAAS,EACT,QAAQ,EACR,UAAU,GACX,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAKhE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,kBAAmB,CAAC,CAAC,CAAA;AAE3D,SAAS,YAAY,CAAC,EAAE,KAAK,EAAE,IAAI,EAAsC;IACvE,OAAO,CACL;QACE,oBAAC,UAAU,IAAC,OAAO,EAAC,WAAW,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAC1C,KAAK,CACK;QACb,oBAAC,KAAK,IAAC,IAAI,EAAC,OAAO,gBAAa,KAAK;YACnC,oBAAC,SAAS,QACP,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAC/B,oBAAC,QAAQ,IAAC,GAAG,EAAE,KAAK;gBAClB,oBAAC,SAAS,IAAC,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,IACrD,KAAK,CACI;gBACZ,oBAAC,SAAS,QAAE,MAAM,CAAa,CACtB,CACZ,CAAC,CACQ,CACN,CACP,CACJ,CAAA;AACH,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,KAAK,EACL,OAAO,GAIR;IACC,OAAO,CACL,oBAAC,MAAM,IAAC,IAAI,QAAC,KAAK,EAAC,kBAAkB,EAAC,OAAO,EAAE,OAAO;QACpD,oBAAC,aAAa;YACZ,oBAAC,YAAY,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,EAAE,aAAa,GAAI;YACnD,oBAAC,YAAY,IACX,KAAK,EAAC,sCAAsC,EAC5C,IAAI,EAAE,gBAAgB,GACtB,CACY;QAChB,oBAAC,aAAa;YACZ,oBAAC,UAAU,IAAC,OAAO,EAAC,SAAS,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE;;gBAC5C,OAAO,CACL;YACb,oBAAC,MAAM,IACL,OAAO,EAAE,GAAG,EAAE;oBACZ,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;oBAC3D,OAAO,EAAE,CAAA;gBACX,CAAC,sBAGM;YACT,oBAAC,MAAM,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,OAAO,YAEnC,CACK,CACT,CACV,CAAA;AACH,CAAC"}
@@ -2,15 +2,23 @@ import React from 'react';
2
2
  import { Dialog } from '@jbrowse/core/ui';
3
3
  import { DialogContent, Typography } from '@mui/material';
4
4
  import { observer } from 'mobx-react';
5
- import MetadataTable, { isEmpty } from '../MetadataTable.js';
5
+ import MetadataTable, { isEmpty, isRecord } from '../MetadataTable.js';
6
6
  import SequenceTextArea from '../SequenceTextArea.js';
7
+ import { gfLabels, monospaceKeys, sectionLabels } from './metadataLabels.js';
8
+ import { groupGeneral } from './metadataRecord.js';
7
9
  const MetadataDialog = observer(function ({ model, onClose, }) {
8
- const { header } = model;
10
+ const entries = Object.entries(model.header).filter(([, value]) => value != null && !isEmpty(value));
11
+ const fields = Object.fromEntries(entries.filter(([, value]) => !isRecord(value)));
12
+ const sections = entries.filter(([, value]) => isRecord(value));
9
13
  return (React.createElement(Dialog, { onClose: () => {
10
14
  onClose();
11
15
  }, open: true, title: "Metadata", maxWidth: "xl" },
12
16
  React.createElement(DialogContent, null,
13
- Object.values(header).every(isEmpty) ? (React.createElement(Typography, null, "This alignment has no metadata.")) : (React.createElement(MetadataTable, { record: header })),
17
+ entries.length === 0 ? (React.createElement(Typography, null, "This alignment has no metadata.")) : (React.createElement(React.Fragment, null,
18
+ Object.keys(fields).length > 0 ? (React.createElement(MetadataTable, { record: fields })) : null,
19
+ sections.map(([section, value]) => (React.createElement("div", { key: section },
20
+ React.createElement(Typography, { variant: "h6" }, sectionLabels[section] ?? section),
21
+ section === 'General' ? (React.createElement(MetadataTable, { record: groupGeneral(value), labels: gfLabels, monospaceKeys: monospaceKeys })) : (React.createElement(MetadataTable, { record: value }))))))),
14
22
  React.createElement(Typography, { variant: "h6" }, "Sequences"),
15
23
  React.createElement(SequenceTextArea, { str: model.rows }))));
16
24
  });
@@ -1 +1 @@
1
- {"version":3,"file":"MetadataDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/MetadataDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,aAAa,EAAE,EAAE,OAAO,EAAE,MAAM,qBAAsB,CAAA;AAC7D,OAAO,gBAAgB,MAAM,wBAAyB,CAAA;AAItD,MAAM,cAAc,GAAG,QAAQ,CAAC,UAAU,EACxC,KAAK,EACL,OAAO,GAIR;IACC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IACxB,OAAO,CACL,oBAAC,MAAM,IACL,OAAO,EAAE,GAAG,EAAE;YACZ,OAAO,EAAE,CAAA;QACX,CAAC,EACD,IAAI,QACJ,KAAK,EAAC,UAAU,EAChB,QAAQ,EAAC,IAAI;QAEb,oBAAC,aAAa;YACX,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CACtC,oBAAC,UAAU,0CAA6C,CACzD,CAAC,CAAC,CAAC,CACF,oBAAC,aAAa,IAAC,MAAM,EAAE,MAAM,GAAI,CAClC;YACD,oBAAC,UAAU,IAAC,OAAO,EAAC,IAAI,gBAAuB;YAC/C,oBAAC,gBAAgB,IAAC,GAAG,EAAE,KAAK,CAAC,IAAI,GAAI,CACvB,CACT,CACV,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"MetadataDialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/MetadataDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,aAAa,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAsB,CAAA;AACvE,OAAO,gBAAgB,MAAM,wBAAyB,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAsB,CAAA;AAInD,MAAM,cAAc,GAAG,QAAQ,CAAC,UAAU,EACxC,KAAK,EACL,OAAO,GAIR;IACC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CACjD,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAChD,CAAA;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAC/B,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAChD,CAAA;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/D,OAAO,CACL,oBAAC,MAAM,IACL,OAAO,EAAE,GAAG,EAAE;YACZ,OAAO,EAAE,CAAA;QACX,CAAC,EACD,IAAI,QACJ,KAAK,EAAC,UAAU,EAChB,QAAQ,EAAC,IAAI;QAEb,oBAAC,aAAa;YACX,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CACtB,oBAAC,UAAU,0CAA6C,CACzD,CAAC,CAAC,CAAC,CACF;gBACG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAChC,oBAAC,aAAa,IAAC,MAAM,EAAE,MAAM,GAAI,CAClC,CAAC,CAAC,CAAC,IAAI;gBACP,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAClC,6BAAK,GAAG,EAAE,OAAO;oBACf,oBAAC,UAAU,IAAC,OAAO,EAAC,IAAI,IACrB,aAAa,CAAC,OAAO,CAAC,IAAI,OAAO,CACvB;oBACZ,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CACvB,oBAAC,aAAa,IACZ,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,EAC3B,MAAM,EAAE,QAAQ,EAChB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC,CAAC,CAAC,CACF,oBAAC,aAAa,IAAC,MAAM,EAAE,KAAgC,GAAI,CAC5D,CACG,CACP,CAAC,CACD,CACJ;YACD,oBAAC,UAAU,IAAC,OAAO,EAAC,IAAI,gBAAuB;YAC/C,oBAAC,gBAAgB,IAAC,GAAG,EAAE,KAAK,CAAC,IAAI,GAAI,CACvB,CACT,CACV,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,cAAc,CAAA"}
@@ -0,0 +1,5 @@
1
+ import type { MsaViewModel } from '../../model.ts';
2
+ export declare function findableRowNames(model: MsaViewModel): string[];
3
+ export declare function rowNameSuggestions(names: string[], input: string, limit?: number): string[];
4
+ /** centers the view on the entry's target and lights it; false if none */
5
+ export declare function goTo(model: MsaViewModel, text: string): boolean;
@@ -17,7 +17,7 @@ export function rowNameSuggestions(names, input, limit = 50) {
17
17
  * column the ruler numbers N, or residue N of a row written `name:N`. A name
18
18
  * is tried whole first, so a row called `chr1:100` stays reachable.
19
19
  */
20
- export function resolveGoTo(model, text) {
20
+ function resolveGoTo(model, text) {
21
21
  const query = text.trim();
22
22
  const row = model.rowNamesSet.get(query);
23
23
  if (row !== undefined) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"goTo.js","sourceRoot":"","sources":["../../../src/components/dialogs/goTo.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare const sectionLabels: Record<string, string>;
2
+ export declare const gfLabels: Record<string, string>;
3
+ export declare const referenceFieldLabels: Record<string, string>;
4
+ export declare const monospaceKeys: Set<string>;
@@ -0,0 +1,52 @@
1
+ export const sectionLabels = {
2
+ General: 'Alignment',
3
+ Accessions: 'Row accessions',
4
+ Dbxref: 'Row cross-references',
5
+ };
6
+ export const gfLabels = {
7
+ ID: 'Identifier',
8
+ AC: 'Accession',
9
+ DE: 'Description',
10
+ AU: 'Authors',
11
+ SE: 'Source of seed',
12
+ SS: 'Source of structure',
13
+ BM: 'Build method',
14
+ SM: 'Search method',
15
+ GA: 'Gathering threshold',
16
+ TC: 'Trusted cutoff',
17
+ NC: 'Noise cutoff',
18
+ TP: 'Family type',
19
+ CL: 'Clan',
20
+ MB: 'Clan members',
21
+ PI: 'Previous identifiers',
22
+ DR: 'Database references',
23
+ CC: 'Comment',
24
+ WK: 'Wikipedia',
25
+ NE: 'Pfam family nested in this one',
26
+ NL: 'Nesting location',
27
+ NH: 'Tree (Newick)',
28
+ SQ: 'Number of sequences',
29
+ RC: 'Reference comment',
30
+ RN: 'Reference number',
31
+ RM: 'PubMed ID',
32
+ RT: 'Reference title',
33
+ RA: 'Reference authors',
34
+ RL: 'Reference journal',
35
+ CB: 'Curation: build',
36
+ DC: 'Database comment',
37
+ DW: 'Database web link',
38
+ OS: 'Organism',
39
+ OC: 'Organism classification',
40
+ AM: 'Alignment method',
41
+ FT: 'Feature',
42
+ SO: 'Sequence Ontology term',
43
+ };
44
+ export const referenceFieldLabels = {
45
+ RT: 'Title',
46
+ RA: 'Authors',
47
+ RL: 'Journal',
48
+ RM: 'PubMed',
49
+ RC: 'Comment',
50
+ };
51
+ export const monospaceKeys = new Set(['NH']);
52
+ //# sourceMappingURL=metadataLabels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadataLabels.js","sourceRoot":"","sources":["../../../src/components/dialogs/metadataLabels.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAA2B;IACnD,OAAO,EAAE,WAAW;IACpB,UAAU,EAAE,gBAAgB;IAC5B,MAAM,EAAE,sBAAsB;CAC/B,CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAA2B;IAC9C,EAAE,EAAE,YAAY;IAChB,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,aAAa;IACjB,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,gBAAgB;IACpB,EAAE,EAAE,qBAAqB;IACzB,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,eAAe;IACnB,EAAE,EAAE,qBAAqB;IACzB,EAAE,EAAE,gBAAgB;IACpB,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,aAAa;IACjB,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,cAAc;IAClB,EAAE,EAAE,sBAAsB;IAC1B,EAAE,EAAE,qBAAqB;IACzB,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,gCAAgC;IACpC,EAAE,EAAE,kBAAkB;IACtB,EAAE,EAAE,eAAe;IACnB,EAAE,EAAE,qBAAqB;IACzB,EAAE,EAAE,mBAAmB;IACvB,EAAE,EAAE,kBAAkB;IACtB,EAAE,EAAE,WAAW;IACf,EAAE,EAAE,iBAAiB;IACrB,EAAE,EAAE,mBAAmB;IACvB,EAAE,EAAE,mBAAmB;IACvB,EAAE,EAAE,iBAAiB;IACrB,EAAE,EAAE,kBAAkB;IACtB,EAAE,EAAE,mBAAmB;IACvB,EAAE,EAAE,UAAU;IACd,EAAE,EAAE,yBAAyB;IAC7B,EAAE,EAAE,kBAAkB;IACtB,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,wBAAwB;CAC7B,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAA2B;IAC1D,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,SAAS;CACd,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA"}
@@ -0,0 +1 @@
1
+ export declare function groupGeneral(general: unknown): Record<string, unknown>;