react-msaview 9.1.0 → 9.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/bundle/index.js +111 -115
  2. package/bundle/index.js.map +4 -4
  3. package/dist/blosum62.d.ts +3 -0
  4. package/dist/blosum62.js +43 -0
  5. package/dist/blosum62.js.map +1 -0
  6. package/dist/colorSchemes.js +1 -0
  7. package/dist/colorSchemes.js.map +1 -1
  8. package/dist/components/Loading.d.ts +3 -2
  9. package/dist/components/Loading.js +2 -2
  10. package/dist/components/Loading.js.map +1 -1
  11. package/dist/components/MSAView.d.ts +3 -2
  12. package/dist/components/MSAView.js +7 -4
  13. package/dist/components/MSAView.js.map +1 -1
  14. package/dist/components/MSAViewer.d.ts +62 -12
  15. package/dist/components/MetadataTable.d.ts +4 -1
  16. package/dist/components/MetadataTable.js +55 -16
  17. package/dist/components/MetadataTable.js.map +1 -1
  18. package/dist/components/Track.js +6 -0
  19. package/dist/components/Track.js.map +1 -1
  20. package/dist/components/controls.js +2 -1
  21. package/dist/components/controls.js.map +1 -1
  22. package/dist/components/dialogs/AnnotationFileDialog.js +7 -2
  23. package/dist/components/dialogs/AnnotationFileDialog.js.map +1 -1
  24. package/dist/components/dialogs/FeatureDialog.js +2 -2
  25. package/dist/components/dialogs/FeatureDialog.js.map +1 -1
  26. package/dist/components/{header/MSASettingsMenu.d.ts → dialogs/GapThresholdDialog.d.ts} +3 -2
  27. package/dist/components/dialogs/GapThresholdDialog.js +15 -0
  28. package/dist/components/dialogs/GapThresholdDialog.js.map +1 -0
  29. package/dist/components/{header → dialogs}/GappynessSlider.d.ts +1 -1
  30. package/dist/components/{header → dialogs}/GappynessSlider.js +3 -10
  31. package/dist/components/dialogs/GappynessSlider.js.map +1 -0
  32. package/dist/components/{header → dialogs}/GoToBox.d.ts +4 -2
  33. package/dist/components/dialogs/GoToBox.js +48 -0
  34. package/dist/components/dialogs/GoToBox.js.map +1 -0
  35. package/dist/components/dialogs/GoToDialog.d.ts +6 -0
  36. package/dist/components/dialogs/GoToDialog.js +10 -0
  37. package/dist/components/dialogs/GoToDialog.js.map +1 -0
  38. package/dist/components/dialogs/MetadataDialog.js +11 -3
  39. package/dist/components/dialogs/MetadataDialog.js.map +1 -1
  40. package/dist/components/dialogs/goTo.d.ts +5 -0
  41. package/dist/components/{header → dialogs}/goTo.js +1 -1
  42. package/dist/components/dialogs/goTo.js.map +1 -0
  43. package/dist/components/dialogs/metadataLabels.d.ts +4 -0
  44. package/dist/components/dialogs/metadataLabels.js +52 -0
  45. package/dist/components/dialogs/metadataLabels.js.map +1 -0
  46. package/dist/components/dialogs/metadataRecord.d.ts +1 -0
  47. package/dist/components/dialogs/metadataRecord.js +38 -0
  48. package/dist/components/dialogs/metadataRecord.js.map +1 -0
  49. package/dist/components/header/Header.d.ts +6 -2
  50. package/dist/components/header/Header.js +30 -32
  51. package/dist/components/header/Header.js.map +1 -1
  52. package/dist/components/header/{TreeSettingsMenu.d.ts → HiddenColumnsChip.d.ts} +2 -2
  53. package/dist/components/header/HiddenColumnsChip.js +15 -0
  54. package/dist/components/header/HiddenColumnsChip.js.map +1 -0
  55. package/dist/components/header/MenuBar.d.ts +6 -0
  56. package/dist/components/header/MenuBar.js +33 -0
  57. package/dist/components/header/MenuBar.js.map +1 -0
  58. package/dist/components/header/ScrollZoomCheckbox.d.ts +7 -0
  59. package/dist/components/header/ScrollZoomCheckbox.js +19 -0
  60. package/dist/components/header/ScrollZoomCheckbox.js.map +1 -0
  61. package/dist/components/header/ZoomControls.js +10 -30
  62. package/dist/components/header/ZoomControls.js.map +1 -1
  63. package/dist/components/header/colorSchemeMenuItems.d.ts +4 -0
  64. package/dist/components/header/colorSchemeMenuItems.js +106 -0
  65. package/dist/components/header/colorSchemeMenuItems.js.map +1 -0
  66. package/dist/components/header/getAnnotationsMenu.d.ts +3 -30
  67. package/dist/components/header/getAnnotationsMenu.js +48 -54
  68. package/dist/components/header/getAnnotationsMenu.js.map +1 -1
  69. package/dist/components/header/menuBarItems.d.ts +11 -0
  70. package/dist/components/header/menuBarItems.js +277 -0
  71. package/dist/components/header/menuBarItems.js.map +1 -0
  72. package/dist/components/import/ImportForm.js +12 -6
  73. package/dist/components/import/ImportForm.js.map +1 -1
  74. package/dist/components/minimap/Minimap.js +7 -3
  75. package/dist/components/minimap/Minimap.js.map +1 -1
  76. package/dist/components/minimap/MinimapSVG.js +2 -1
  77. package/dist/components/minimap/MinimapSVG.js.map +1 -1
  78. package/dist/components/minimap/minimapLayout.d.ts +12 -0
  79. package/dist/components/minimap/minimapLayout.js +20 -0
  80. package/dist/components/minimap/minimapLayout.js.map +1 -1
  81. package/dist/components/msa/MSACanvas.js +26 -9
  82. package/dist/components/msa/MSACanvas.js.map +1 -1
  83. package/dist/components/msa/MSACanvasBlock.js +15 -11
  84. package/dist/components/msa/MSACanvasBlock.js.map +1 -1
  85. package/dist/components/msa/MSAMouseoverCanvas.js +2 -2
  86. package/dist/components/msa/MSAMouseoverCanvas.js.map +1 -1
  87. package/dist/components/msa/WheelZoomHint.d.ts +7 -0
  88. package/dist/components/msa/WheelZoomHint.js +38 -0
  89. package/dist/components/msa/WheelZoomHint.js.map +1 -0
  90. package/dist/components/msa/msaKeys.js +3 -0
  91. package/dist/components/msa/msaKeys.js.map +1 -1
  92. package/dist/components/msa/msaRaster.d.ts +4 -5
  93. package/dist/components/msa/msaRaster.js +5 -5
  94. package/dist/components/msa/msaRaster.js.map +1 -1
  95. package/dist/components/msa/renderBoxFeatureCanvasBlock.js +22 -2
  96. package/dist/components/msa/renderBoxFeatureCanvasBlock.js.map +1 -1
  97. package/dist/components/msa/renderHighlights.d.ts +0 -3
  98. package/dist/components/msa/renderHighlights.js +3 -3
  99. package/dist/components/msa/renderHighlights.js.map +1 -1
  100. package/dist/components/msa/renderMSABlock.d.ts +6 -1
  101. package/dist/components/msa/renderMSABlock.js +44 -17
  102. package/dist/components/msa/renderMSABlock.js.map +1 -1
  103. package/dist/components/msa/tileColor.js +7 -0
  104. package/dist/components/msa/tileColor.js.map +1 -1
  105. package/dist/components/rowpanels/RowPanelBlock.js +2 -2
  106. package/dist/components/rowpanels/RowPanelBlock.js.map +1 -1
  107. package/dist/components/settings/MenuItemsForm.d.ts +10 -0
  108. package/dist/components/settings/MenuItemsForm.js +80 -0
  109. package/dist/components/settings/MenuItemsForm.js.map +1 -0
  110. package/dist/components/settings/SettingsPanel.d.ts +12 -0
  111. package/dist/components/settings/SettingsPanel.js +92 -0
  112. package/dist/components/settings/SettingsPanel.js.map +1 -0
  113. package/dist/components/{header/FileMenu.d.ts → settings/TrackList.d.ts} +2 -2
  114. package/dist/components/settings/TrackList.js +55 -0
  115. package/dist/components/settings/TrackList.js.map +1 -0
  116. package/dist/components/tracks/TrackBlocks.js +2 -2
  117. package/dist/components/tracks/TrackBlocks.js.map +1 -1
  118. package/dist/components/tree/TreeCanvasBlock.js +2 -2
  119. package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
  120. package/dist/components/tree/TreeMenu.js +4 -6
  121. package/dist/components/tree/TreeMenu.js.map +1 -1
  122. package/dist/components/tree/TreeOverview.js +2 -2
  123. package/dist/components/tree/TreeOverview.js.map +1 -1
  124. package/dist/constants.d.ts +4 -1
  125. package/dist/constants.js +7 -1
  126. package/dist/constants.js.map +1 -1
  127. package/dist/darkReader.d.ts +7 -0
  128. package/dist/darkReader.js +42 -0
  129. package/dist/darkReader.js.map +1 -0
  130. package/dist/element.js +22 -47
  131. package/dist/element.js.map +1 -1
  132. package/dist/featurePanels.d.ts +37 -0
  133. package/dist/featurePanels.js +187 -0
  134. package/dist/featurePanels.js.map +1 -0
  135. package/dist/filehandleLoader.d.ts +41 -0
  136. package/dist/filehandleLoader.js +99 -0
  137. package/dist/filehandleLoader.js.map +1 -0
  138. package/dist/index.d.ts +3 -0
  139. package/dist/index.js +2 -0
  140. package/dist/index.js.map +1 -1
  141. package/dist/model/treeModel.d.ts +9 -0
  142. package/dist/model/treeModel.js +12 -1
  143. package/dist/model/treeModel.js.map +1 -1
  144. package/dist/model.d.ts +142 -32
  145. package/dist/model.js +268 -569
  146. package/dist/model.js.map +1 -1
  147. package/dist/neighborJoining.js +1 -40
  148. package/dist/neighborJoining.js.map +1 -1
  149. package/dist/renderToSvg.js +1 -13
  150. package/dist/renderToSvg.js.map +1 -1
  151. package/dist/rerootTree.d.ts +1 -0
  152. package/dist/rerootTree.js +7 -6
  153. package/dist/rerootTree.js.map +1 -1
  154. package/dist/schemeResidueColor.d.ts +12 -0
  155. package/dist/schemeResidueColor.js +33 -0
  156. package/dist/schemeResidueColor.js.map +1 -0
  157. package/dist/similarityColors.d.ts +11 -0
  158. package/dist/similarityColors.js +90 -0
  159. package/dist/similarityColors.js.map +1 -0
  160. package/dist/svgTestUtil.d.ts +62 -12
  161. package/dist/treeDisplay.d.ts +37 -0
  162. package/dist/treeDisplay.js +209 -0
  163. package/dist/treeDisplay.js.map +1 -0
  164. package/dist/types.d.ts +6 -2
  165. package/dist/useWheelScroll.d.ts +3 -1
  166. package/dist/useWheelScroll.js +36 -17
  167. package/dist/useWheelScroll.js.map +1 -1
  168. package/dist/util.d.ts +2 -0
  169. package/dist/util.js +2 -0
  170. package/dist/util.js.map +1 -1
  171. package/dist/version.d.ts +1 -1
  172. package/dist/version.js +1 -1
  173. package/dist/wheelZoom.d.ts +8 -3
  174. package/dist/wheelZoom.js +44 -32
  175. package/dist/wheelZoom.js.map +1 -1
  176. package/dist/zoomSnapshot.d.ts +29 -0
  177. package/dist/zoomSnapshot.js +47 -0
  178. package/dist/zoomSnapshot.js.map +1 -0
  179. package/package.json +11 -11
  180. package/src/blosum62.ts +45 -0
  181. package/src/colorSchemes.ts +1 -0
  182. package/src/components/Loading.tsx +6 -2
  183. package/src/components/MSAView.tsx +22 -5
  184. package/src/components/MetadataTable.tsx +83 -26
  185. package/src/components/Track.tsx +13 -0
  186. package/src/components/controls.ts +2 -1
  187. package/src/components/dialogs/AnnotationFileDialog.tsx +12 -1
  188. package/src/components/dialogs/FeatureDialog.tsx +2 -5
  189. package/src/components/dialogs/GapThresholdDialog.tsx +36 -0
  190. package/src/components/{header → dialogs}/GappynessSlider.tsx +3 -10
  191. package/src/components/{header → dialogs}/GoToBox.tsx +36 -10
  192. package/src/components/dialogs/GoToDialog.tsx +30 -0
  193. package/src/components/dialogs/MetadataDialog.tsx +32 -4
  194. package/src/components/{header → dialogs}/goTo.ts +1 -1
  195. package/src/components/dialogs/metadataLabels.ts +54 -0
  196. package/src/components/dialogs/metadataRecord.tsx +61 -0
  197. package/src/components/header/Header.tsx +75 -42
  198. package/src/components/header/HiddenColumnsChip.tsx +39 -0
  199. package/src/components/header/MenuBar.tsx +64 -0
  200. package/src/components/header/ScrollZoomCheckbox.tsx +46 -0
  201. package/src/components/header/ZoomControls.tsx +20 -35
  202. package/src/components/header/colorSchemeMenuItems.ts +121 -0
  203. package/src/components/header/getAnnotationsMenu.ts +52 -56
  204. package/src/components/header/menuBarItems.ts +357 -0
  205. package/src/components/import/ImportForm.tsx +19 -7
  206. package/src/components/minimap/Minimap.tsx +11 -3
  207. package/src/components/minimap/MinimapSVG.tsx +17 -1
  208. package/src/components/minimap/minimapLayout.ts +27 -0
  209. package/src/components/msa/MSACanvas.tsx +22 -3
  210. package/src/components/msa/MSACanvasBlock.tsx +18 -11
  211. package/src/components/msa/MSAMouseoverCanvas.tsx +2 -2
  212. package/src/components/msa/WheelZoomHint.tsx +56 -0
  213. package/src/components/msa/msaKeys.ts +3 -0
  214. package/src/components/msa/msaRaster.ts +6 -8
  215. package/src/components/msa/renderBoxFeatureCanvasBlock.ts +28 -5
  216. package/src/components/msa/renderHighlights.ts +3 -3
  217. package/src/components/msa/renderMSABlock.ts +51 -15
  218. package/src/components/msa/tileColor.ts +7 -0
  219. package/src/components/rowpanels/RowPanelBlock.tsx +2 -2
  220. package/src/components/settings/MenuItemsForm.tsx +225 -0
  221. package/src/components/settings/SettingsPanel.tsx +156 -0
  222. package/src/components/settings/TrackList.tsx +119 -0
  223. package/src/components/tracks/TrackBlocks.tsx +2 -2
  224. package/src/components/tree/TreeCanvasBlock.tsx +2 -2
  225. package/src/components/tree/TreeMenu.tsx +4 -6
  226. package/src/components/tree/TreeOverview.tsx +2 -2
  227. package/src/constants.ts +9 -1
  228. package/src/darkReader.ts +57 -0
  229. package/src/element.ts +34 -57
  230. package/src/featurePanels.ts +269 -0
  231. package/src/filehandleLoader.ts +136 -0
  232. package/src/index.ts +4 -0
  233. package/src/model/treeModel.ts +13 -0
  234. package/src/model.ts +345 -748
  235. package/src/neighborJoining.ts +1 -42
  236. package/src/renderToSvg.tsx +1 -13
  237. package/src/rerootTree.ts +7 -6
  238. package/src/schemeResidueColor.ts +37 -0
  239. package/src/similarityColors.ts +112 -0
  240. package/src/treeDisplay.ts +278 -0
  241. package/src/types.ts +6 -3
  242. package/src/useWheelScroll.ts +43 -22
  243. package/src/util.ts +3 -0
  244. package/src/version.ts +1 -1
  245. package/src/wheelZoom.ts +55 -33
  246. package/src/zoomSnapshot.ts +80 -0
  247. package/dist/components/header/ColorSchemeMenu.d.ts +0 -12
  248. package/dist/components/header/ColorSchemeMenu.js +0 -37
  249. package/dist/components/header/ColorSchemeMenu.js.map +0 -1
  250. package/dist/components/header/FileMenu.js +0 -92
  251. package/dist/components/header/FileMenu.js.map +0 -1
  252. package/dist/components/header/GappynessSlider.js.map +0 -1
  253. package/dist/components/header/GoToBox.js +0 -31
  254. package/dist/components/header/GoToBox.js.map +0 -1
  255. package/dist/components/header/MSASettingsMenu.js +0 -11
  256. package/dist/components/header/MSASettingsMenu.js.map +0 -1
  257. package/dist/components/header/ScrollZoomIcons.d.ts +0 -6
  258. package/dist/components/header/ScrollZoomIcons.js +0 -35
  259. package/dist/components/header/ScrollZoomIcons.js.map +0 -1
  260. package/dist/components/header/TreeSettingsMenu.js +0 -11
  261. package/dist/components/header/TreeSettingsMenu.js.map +0 -1
  262. package/dist/components/header/goTo.d.ts +0 -20
  263. package/dist/components/header/goTo.js.map +0 -1
  264. package/dist/components/header/settingsMenuItems.d.ts +0 -5
  265. package/dist/components/header/settingsMenuItems.js +0 -171
  266. package/dist/components/header/settingsMenuItems.js.map +0 -1
  267. package/src/components/header/ColorSchemeMenu.tsx +0 -56
  268. package/src/components/header/FileMenu.tsx +0 -107
  269. package/src/components/header/MSASettingsMenu.tsx +0 -26
  270. package/src/components/header/ScrollZoomIcons.tsx +0 -52
  271. package/src/components/header/TreeSettingsMenu.tsx +0 -30
  272. package/src/components/header/settingsMenuItems.ts +0 -216
@@ -1 +1 @@
1
- {"version":3,"file":"renderToSvg.js","sourceRoot":"","sources":["../src/renderToSvg.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderToSvg.js","sourceRoot":"","sources":["../src/renderToSvg.tsx"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface TreeNode {
12
12
  length?: number;
13
13
  children?: TreeNode[];
14
14
  }
15
+ export declare function preorder<N extends TreeNode>(root: N, parents?: Map<N, N>): N[];
15
16
  /**
16
17
  * The tree rooted on the branch above `target`, `offset` up from it, or at the
17
18
  * middle of that branch without one. Where the root has two children, their
@@ -1,16 +1,15 @@
1
- function preorder(root) {
1
+ export function preorder(root, parents) {
2
2
  const order = [];
3
- const parents = new Map();
4
3
  const stack = [root];
5
4
  while (stack.length > 0) {
6
5
  const node = stack.pop();
7
6
  order.push(node);
8
7
  for (const child of (node.children ?? [])) {
9
- parents.set(child, node);
8
+ parents?.set(child, node);
10
9
  stack.push(child);
11
10
  }
12
11
  }
13
- return { order, parents };
12
+ return order;
14
13
  }
15
14
  function hasLengths(order) {
16
15
  return order.some(n => n.length !== undefined);
@@ -34,7 +33,8 @@ function mergedSibling(root, target) {
34
33
  * branches join.
35
34
  */
36
35
  export function rerootTree(root, target, offset) {
37
- const { order, parents } = preorder(root);
36
+ const parents = new Map();
37
+ const order = preorder(root, parents);
38
38
  if (!parents.has(target)) {
39
39
  return root;
40
40
  }
@@ -87,7 +87,8 @@ export function rerootTree(root, target, offset) {
87
87
  * counts branches.
88
88
  */
89
89
  export function midpointRoot(root) {
90
- const { order, parents } = preorder(root);
90
+ const parents = new Map();
91
+ const order = preorder(root, parents);
91
92
  const tips = order.filter(n => !n.children?.length);
92
93
  if (tips.length < 2) {
93
94
  return root;
@@ -1 +1 @@
1
- {"version":3,"file":"rerootTree.js","sourceRoot":"","sources":["../src/rerootTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rerootTree.js","sourceRoot":"","sources":["../src/rerootTree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { MsaViewModel } from './model.ts';
2
+ /**
3
+ * A reader for the color the active scheme gives a row's residue, as hex, for a
4
+ * host that paints another view, such as a structure, with the alignment's own
5
+ * colors. `seqPos` is 1-based, like `structureResidue`. The reader returns
6
+ * undefined where the scheme leaves the residue uncolored, the row lacks it, or
7
+ * its column is hidden.
8
+ *
9
+ * Build it inside a reaction: a new scheme, a hidden gap column or a collapsed
10
+ * clade then re-runs the caller.
11
+ */
12
+ export declare function schemeResidueColor(model: MsaViewModel): (rowName: string, seqPos: number) => string | undefined;
@@ -0,0 +1,33 @@
1
+ import { colord } from 'colord';
2
+ import { tileColorFn } from './components/msa/tileColor.js';
3
+ /**
4
+ * A reader for the color the active scheme gives a row's residue, as hex, for a
5
+ * host that paints another view, such as a structure, with the alignment's own
6
+ * colors. `seqPos` is 1-based, like `structureResidue`. The reader returns
7
+ * undefined where the scheme leaves the residue uncolored, the row lacks it, or
8
+ * its column is hidden.
9
+ *
10
+ * Build it inside a reaction: a new scheme, a hidden gap column or a collapsed
11
+ * clade then re-runs the caller.
12
+ */
13
+ export function schemeResidueColor(model) {
14
+ const colorAt = tileColorFn(model);
15
+ const { columns } = model;
16
+ const hexes = new Map();
17
+ const toHex = (color) => {
18
+ if (!hexes.has(color)) {
19
+ const parsed = colord(color);
20
+ hexes.set(color, parsed.isValid() ? parsed.toHex() : undefined);
21
+ }
22
+ return hexes.get(color);
23
+ };
24
+ return (rowName, seqPos) => {
25
+ const col = model.seqPosToVisibleCol(rowName, seqPos - 1);
26
+ const letter = col === undefined ? undefined : columns.get(rowName)?.[col];
27
+ const color = col === undefined || letter === undefined
28
+ ? undefined
29
+ : colorAt(col, letter);
30
+ return color === undefined ? undefined : toHex(color);
31
+ };
32
+ }
33
+ //# sourceMappingURL=schemeResidueColor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemeResidueColor.js","sourceRoot":"","sources":["../src/schemeResidueColor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAI3D;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAAmB;IACpD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;IAClC,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;IACzB,MAAM,KAAK,GAAG,IAAI,GAAG,EAA8B,CAAA;IACnD,MAAM,KAAK,GAAG,CAAC,KAAa,EAAE,EAAE;QAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;YAC5B,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QACjE,CAAC;QACD,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,CAAA;IACD,OAAO,CAAC,OAAe,EAAE,MAAc,EAAE,EAAE;QACzC,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,CAAA;QACzD,MAAM,MAAM,GAAG,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;QAC1E,MAAM,KAAK,GACT,GAAG,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS;YACvC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAC1B,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACvD,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { ColumnCounts } from './columnCounts.ts';
2
+ /**
3
+ * The amino acids of a column shaded by BLOSUM62 similarity. Letters the matrix
4
+ * does not name, such as U, O and J, count for nothing and take no shade.
5
+ */
6
+ export declare function blosum62ColumnColors(counts: ColumnCounts, col: number): Record<string, string>;
7
+ /**
8
+ * Nucleotides and anything else without a substitution matrix: a residue's
9
+ * similarity is the fraction of the rest of its column that equals it.
10
+ */
11
+ export declare function identityColumnColors(counts: ColumnCounts, col: number): Record<string, string>;
@@ -0,0 +1,90 @@
1
+ // Similarity shading, after biotite's plot_alignment_similarity_based and
2
+ // Jalview's BLOSUM62 score scheme. Each residue takes a shade of one hue by how
3
+ // similar it is, on average, to the other residues of its column.
4
+ import { BLOSUM62, NUM_SYMBOLS, symbolOfCode } from './blosum62.js';
5
+ import { letterOfResidueSlot, numResidueSlots } from './columnCounts.js';
6
+ const AMINO_ACIDS = 20;
7
+ const HUE = 240;
8
+ const SATURATION = 50;
9
+ const LIGHTEST = 96;
10
+ const DARKEST = 40;
11
+ // BLOSUM62 scaled per row to 0..1 over the twenty amino acids, so a residue's
12
+ // own score is 1 and its worst substitution 0. Not symmetric, like biotite's.
13
+ const normalized = new Float32Array(NUM_SYMBOLS * NUM_SYMBOLS);
14
+ for (let a = 0; a < NUM_SYMBOLS; a++) {
15
+ let min = Infinity;
16
+ let max = -Infinity;
17
+ for (let b = 0; b < AMINO_ACIDS; b++) {
18
+ const score = BLOSUM62[a * NUM_SYMBOLS + b];
19
+ min = Math.min(min, score);
20
+ max = Math.max(max, score);
21
+ }
22
+ for (let b = 0; b < NUM_SYMBOLS; b++) {
23
+ const scaled = (BLOSUM62[a * NUM_SYMBOLS + b] - min) / (max - min);
24
+ normalized[a * NUM_SYMBOLS + b] = Math.min(Math.max(scaled, 0), 1);
25
+ }
26
+ }
27
+ // residue slot -> row of the matrix, -1 for a letter the matrix does not name
28
+ const symbolOfSlot = Int8Array.from({ length: numResidueSlots }, (_, slot) => {
29
+ const letter = letterOfResidueSlot(slot);
30
+ return letter.length === 1 ? symbolOfCode[letter.charCodeAt(0)] : -1;
31
+ });
32
+ function shade(similarity) {
33
+ const lightness = Math.round(LIGHTEST - (LIGHTEST - DARKEST) * similarity);
34
+ return `hsl(${HUE}, ${SATURATION}%, ${lightness}%)`;
35
+ }
36
+ /**
37
+ * Shades each residue of one column by its mean similarity to the column's
38
+ * other residues, gaps left out of the mean. A column of fewer than two counted
39
+ * residues has nothing to compare and colors nothing.
40
+ */
41
+ function shadeColumn(counts, col, measure) {
42
+ const { counted, shaded, score } = measure;
43
+ const present = [];
44
+ let total = 0;
45
+ counts.forEachResidue(col, (slot, count) => {
46
+ if (counted(slot)) {
47
+ present.push([slot, count]);
48
+ total += count;
49
+ }
50
+ });
51
+ const colors = {};
52
+ if (total < 2) {
53
+ return colors;
54
+ }
55
+ for (const [a] of present) {
56
+ if (shaded(a)) {
57
+ let sum = -score(a, a);
58
+ for (const [b, count] of present) {
59
+ sum += count * score(a, b);
60
+ }
61
+ colors[letterOfResidueSlot(a)] = shade(sum / (total - 1));
62
+ }
63
+ }
64
+ return colors;
65
+ }
66
+ const blosum62 = {
67
+ counted: slot => symbolOfSlot[slot] >= 0,
68
+ shaded: slot => symbolOfSlot[slot] < AMINO_ACIDS,
69
+ score: (a, b) => normalized[symbolOfSlot[a] * NUM_SYMBOLS + symbolOfSlot[b]],
70
+ };
71
+ const identity = {
72
+ counted: () => true,
73
+ shaded: () => true,
74
+ score: (a, b) => (a === b ? 1 : 0),
75
+ };
76
+ /**
77
+ * The amino acids of a column shaded by BLOSUM62 similarity. Letters the matrix
78
+ * does not name, such as U, O and J, count for nothing and take no shade.
79
+ */
80
+ export function blosum62ColumnColors(counts, col) {
81
+ return shadeColumn(counts, col, blosum62);
82
+ }
83
+ /**
84
+ * Nucleotides and anything else without a substitution matrix: a residue's
85
+ * similarity is the fraction of the rest of its column that equals it.
86
+ */
87
+ export function identityColumnColors(counts, col) {
88
+ return shadeColumn(counts, col, identity);
89
+ }
90
+ //# sourceMappingURL=similarityColors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"similarityColors.js","sourceRoot":"","sources":["../src/similarityColors.ts"],"names":[],"mappings":"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"}