react-msaview 3.2.0 → 3.2.2

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 (175) hide show
  1. package/bundle/index.js +13 -13
  2. package/dist/colorSchemes.js +2 -2
  3. package/dist/colorSchemes.js.map +1 -1
  4. package/dist/components/Loading.js +3 -1
  5. package/dist/components/Loading.js.map +1 -1
  6. package/dist/components/ResizeHandles.js +6 -2
  7. package/dist/components/ResizeHandles.js.map +1 -1
  8. package/dist/components/SequenceTextArea.js +9 -3
  9. package/dist/components/SequenceTextArea.js.map +1 -1
  10. package/dist/components/TextTrack.js +1 -1
  11. package/dist/components/TextTrack.js.map +1 -1
  12. package/dist/components/Track.js +6 -2
  13. package/dist/components/Track.js.map +1 -1
  14. package/dist/components/VerticalScrollbar.js +5 -1
  15. package/dist/components/VerticalScrollbar.js.map +1 -1
  16. package/dist/components/dialogs/AboutDialog.js +3 -1
  17. package/dist/components/dialogs/AboutDialog.js.map +1 -1
  18. package/dist/components/dialogs/AddTrackDialog.d.ts +2 -2
  19. package/dist/components/dialogs/AddTrackDialog.js +8 -3
  20. package/dist/components/dialogs/AddTrackDialog.js.map +1 -1
  21. package/dist/components/dialogs/DomainDialog.js +6 -2
  22. package/dist/components/dialogs/DomainDialog.js.map +1 -1
  23. package/dist/components/dialogs/ExportSVGDialog.js +29 -17
  24. package/dist/components/dialogs/ExportSVGDialog.js.map +1 -1
  25. package/dist/components/dialogs/FeatureDialog.js +8 -4
  26. package/dist/components/dialogs/FeatureDialog.js.map +1 -1
  27. package/dist/components/dialogs/InterProScanDialog.js +23 -9
  28. package/dist/components/dialogs/InterProScanDialog.js.map +1 -1
  29. package/dist/components/dialogs/MetadataDialog.js +3 -1
  30. package/dist/components/dialogs/MetadataDialog.js.map +1 -1
  31. package/dist/components/dialogs/SettingsDialog.js +61 -23
  32. package/dist/components/dialogs/SettingsDialog.js.map +1 -1
  33. package/dist/components/dialogs/TracklistDialog.d.ts +2 -2
  34. package/dist/components/dialogs/TracklistDialog.js +8 -3
  35. package/dist/components/dialogs/TracklistDialog.js.map +1 -1
  36. package/dist/components/dialogs/UserProvidedDomainsDialog.js +10 -4
  37. package/dist/components/dialogs/UserProvidedDomainsDialog.js.map +1 -1
  38. package/dist/components/header/Header.js +3 -1
  39. package/dist/components/header/Header.js.map +1 -1
  40. package/dist/components/header/HeaderInfoArea.js +5 -2
  41. package/dist/components/header/HeaderInfoArea.js.map +1 -1
  42. package/dist/components/header/HeaderMenu.js +12 -4
  43. package/dist/components/header/HeaderMenu.js.map +1 -1
  44. package/dist/components/header/HeaderMenuExtra.js +34 -16
  45. package/dist/components/header/HeaderMenuExtra.js.map +1 -1
  46. package/dist/components/header/ZoomControls.js +18 -6
  47. package/dist/components/header/ZoomControls.js.map +1 -1
  48. package/dist/components/import/ImportForm.d.ts +2 -2
  49. package/dist/components/import/ImportForm.js +15 -2
  50. package/dist/components/import/ImportForm.js.map +1 -1
  51. package/dist/components/import/ImportFormExamples.js +44 -31
  52. package/dist/components/import/ImportFormExamples.js.map +1 -1
  53. package/dist/components/minimap/Minimap.js +12 -4
  54. package/dist/components/minimap/Minimap.js.map +1 -1
  55. package/dist/components/msa/MSACanvasBlock.js +5 -3
  56. package/dist/components/msa/MSACanvasBlock.js.map +1 -1
  57. package/dist/components/msa/MSAMouseoverCanvas.d.ts +1 -1
  58. package/dist/components/msa/MSAMouseoverCanvas.js +1 -1
  59. package/dist/components/msa/MSAMouseoverCanvas.js.map +1 -1
  60. package/dist/components/msa/renderBoxFeatureCanvasBlock.js +2 -2
  61. package/dist/components/msa/renderBoxFeatureCanvasBlock.js.map +1 -1
  62. package/dist/components/msa/renderMSABlock.js +28 -24
  63. package/dist/components/msa/renderMSABlock.js.map +1 -1
  64. package/dist/components/msa/renderMSAMouseover.js +3 -3
  65. package/dist/components/msa/renderMSAMouseover.js.map +1 -1
  66. package/dist/components/tree/TreeBranchMenu.js +6 -3
  67. package/dist/components/tree/TreeBranchMenu.js.map +1 -1
  68. package/dist/components/tree/TreeCanvasBlock.js +11 -4
  69. package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
  70. package/dist/components/tree/TreeNodeMenu.js +1 -1
  71. package/dist/components/tree/TreeNodeMenu.js.map +1 -1
  72. package/dist/components/tree/dialogs/TreeNodeInfoDialog.d.ts +2 -2
  73. package/dist/components/tree/dialogs/TreeNodeInfoDialog.js +7 -5
  74. package/dist/components/tree/dialogs/TreeNodeInfoDialog.js.map +1 -1
  75. package/dist/components/tree/renderTreeCanvas.js +5 -5
  76. package/dist/components/tree/renderTreeCanvas.js.map +1 -1
  77. package/dist/components/util.js +0 -3
  78. package/dist/components/util.js.map +1 -1
  79. package/dist/ggplotPalettes.js.map +1 -1
  80. package/dist/launchInterProScan.js +4 -4
  81. package/dist/launchInterProScan.js.map +1 -1
  82. package/dist/model/DialogQueue.d.ts +1 -1
  83. package/dist/model/DialogQueue.js +0 -1
  84. package/dist/model/DialogQueue.js.map +1 -1
  85. package/dist/model.d.ts +59 -25
  86. package/dist/model.js +123 -62
  87. package/dist/model.js.map +1 -1
  88. package/dist/parseGFF.js +8 -6
  89. package/dist/parseGFF.js.map +1 -1
  90. package/dist/parseNewick.d.ts +4 -4
  91. package/dist/parseNewick.js +7 -8
  92. package/dist/parseNewick.js.map +1 -1
  93. package/dist/parsers/ClustalMSA.d.ts +5 -5
  94. package/dist/parsers/ClustalMSA.js +2 -2
  95. package/dist/parsers/ClustalMSA.js.map +1 -1
  96. package/dist/parsers/EmfMSA.d.ts +27 -0
  97. package/dist/parsers/EmfMSA.js +53 -0
  98. package/dist/parsers/EmfMSA.js.map +1 -0
  99. package/dist/parsers/EmfTree.d.ts +5 -0
  100. package/dist/parsers/EmfTree.js +8 -0
  101. package/dist/parsers/EmfTree.js.map +1 -0
  102. package/dist/parsers/FastaMSA.js +5 -5
  103. package/dist/parsers/FastaMSA.js.map +1 -1
  104. package/dist/parsers/StockholmMSA.d.ts +6 -6
  105. package/dist/parsers/StockholmMSA.js +6 -6
  106. package/dist/parsers/StockholmMSA.js.map +1 -1
  107. package/dist/renderToSvg.js +3 -6
  108. package/dist/renderToSvg.js.map +1 -1
  109. package/dist/reparseTree.js +2 -2
  110. package/dist/reparseTree.js.map +1 -1
  111. package/dist/rowCoordinateCalculations.d.ts +2 -0
  112. package/dist/rowCoordinateCalculations.js +26 -0
  113. package/dist/rowCoordinateCalculations.js.map +1 -0
  114. package/dist/rowCoordinateCalculations.test.d.ts +1 -0
  115. package/dist/rowCoordinateCalculations.test.js +18 -0
  116. package/dist/rowCoordinateCalculations.test.js.map +1 -0
  117. package/dist/util.d.ts +3 -3
  118. package/dist/util.js +1 -1
  119. package/dist/util.js.map +1 -1
  120. package/dist/version.d.ts +1 -1
  121. package/dist/version.js +1 -1
  122. package/package.json +8 -3
  123. package/src/colorSchemes.ts +4 -4
  124. package/src/components/Loading.tsx +7 -1
  125. package/src/components/ResizeHandles.tsx +6 -2
  126. package/src/components/SequenceTextArea.tsx +10 -4
  127. package/src/components/TextTrack.tsx +2 -2
  128. package/src/components/Track.tsx +8 -4
  129. package/src/components/VerticalScrollbar.tsx +6 -2
  130. package/src/components/dialogs/AboutDialog.tsx +7 -1
  131. package/src/components/dialogs/AddTrackDialog.tsx +13 -3
  132. package/src/components/dialogs/DomainDialog.tsx +9 -2
  133. package/src/components/dialogs/ExportSVGDialog.tsx +36 -17
  134. package/src/components/dialogs/FeatureDialog.tsx +7 -5
  135. package/src/components/dialogs/InterProScanDialog.tsx +20 -10
  136. package/src/components/dialogs/MetadataDialog.tsx +8 -1
  137. package/src/components/dialogs/SettingsDialog.tsx +76 -32
  138. package/src/components/dialogs/TracklistDialog.tsx +17 -3
  139. package/src/components/dialogs/UserProvidedDomainsDialog.tsx +11 -5
  140. package/src/components/header/Header.tsx +3 -1
  141. package/src/components/header/HeaderInfoArea.tsx +3 -2
  142. package/src/components/header/HeaderMenu.tsx +12 -7
  143. package/src/components/header/HeaderMenuExtra.tsx +28 -16
  144. package/src/components/header/ZoomControls.tsx +22 -6
  145. package/src/components/import/ImportForm.tsx +14 -2
  146. package/src/components/import/ImportFormExamples.tsx +59 -48
  147. package/src/components/minimap/Minimap.tsx +21 -9
  148. package/src/components/msa/MSACanvasBlock.tsx +5 -3
  149. package/src/components/msa/MSAMouseoverCanvas.tsx +5 -1
  150. package/src/components/msa/renderBoxFeatureCanvasBlock.ts +4 -4
  151. package/src/components/msa/renderMSABlock.ts +42 -38
  152. package/src/components/msa/renderMSAMouseover.ts +3 -3
  153. package/src/components/tree/TreeBranchMenu.tsx +5 -3
  154. package/src/components/tree/TreeCanvasBlock.tsx +11 -4
  155. package/src/components/tree/TreeNodeMenu.tsx +1 -1
  156. package/src/components/tree/dialogs/TreeNodeInfoDialog.tsx +17 -4
  157. package/src/components/tree/renderTreeCanvas.ts +2 -2
  158. package/src/components/util.ts +1 -4
  159. package/src/ggplotPalettes.ts +1 -1
  160. package/src/launchInterProScan.ts +5 -5
  161. package/src/model/DialogQueue.ts +0 -1
  162. package/src/model.ts +136 -74
  163. package/src/parseGFF.ts +13 -11
  164. package/src/parseNewick.ts +10 -10
  165. package/src/parsers/ClustalMSA.ts +4 -4
  166. package/src/parsers/EmfMSA.ts +66 -0
  167. package/src/parsers/EmfTree.ts +9 -0
  168. package/src/parsers/FastaMSA.ts +6 -6
  169. package/src/parsers/StockholmMSA.ts +12 -12
  170. package/src/renderToSvg.tsx +1 -2
  171. package/src/reparseTree.ts +3 -3
  172. package/src/rowCoordinateCalculations.test.ts +19 -0
  173. package/src/rowCoordinateCalculations.ts +26 -0
  174. package/src/util.ts +5 -5
  175. package/src/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ClustalMSA.js","sourceRoot":"","sources":["../../src/parsers/ClustalMSA.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,CAAC,OAAO,OAAO,UAAU;IACrB,GAAG,CAA0B;IAErC,YAAY,IAAY;QACtB,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAA;IAC9D,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAA;IACpC,CAAC;IAED,UAAU;QACR,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAA;IACxB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACzC,CAAC;IAED,aAAa;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO;QACL,OAAO;YACL,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtC,EAAE,EAAE,IAAI;gBACR,IAAI;gBACJ,SAAS,EAAE,EAAE;aACd,CAAC,CAAC;SACJ,CAAA;IACH,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAA;IAC3B,CAAC;IACD,IAAI,2BAA2B;QAC7B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,EAAE,CAAA;IACX,CAAC;CACF"}
1
+ {"version":3,"file":"ClustalMSA.js","sourceRoot":"","sources":["../../src/parsers/ClustalMSA.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,CAAC,OAAO,OAAO,UAAU;IACrB,GAAG,CAA0B;IAErC,YAAY,IAAY;QACtB,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAA;IAC9D,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,MAAM,CAAA;IACrC,CAAC;IAED,UAAU;QACR,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAA;IACxB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACzC,CAAC;IAED,aAAa;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO;QACL,OAAO;YACL,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrC,EAAE,EAAE,IAAI;gBACR,IAAI;gBACJ,QAAQ,EAAE,EAAE;aACb,CAAC,CAAC;SACJ,CAAA;IACH,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAA;IAC3B,CAAC;IACD,IAAI,2BAA2B;QAC7B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,EAAE,CAAA;IACX,CAAC;CACF"}
@@ -0,0 +1,27 @@
1
+ import type { NodeWithIds } from '../util';
2
+ export default class EmfMSA {
3
+ private MSA;
4
+ constructor(text: string);
5
+ getMSA(): {
6
+ species: string;
7
+ protein: string;
8
+ chr: string;
9
+ start: number;
10
+ end: number;
11
+ strand: number;
12
+ geneId: string;
13
+ unknown: string;
14
+ seq: string;
15
+ }[];
16
+ getRow(name: string): string;
17
+ getWidth(): number;
18
+ getRowData(): undefined;
19
+ getHeader(): string;
20
+ getNames(): string[];
21
+ getStructures(): {};
22
+ get alignmentNames(): never[];
23
+ getTree(): NodeWithIds;
24
+ get seqConsensus(): undefined;
25
+ get secondaryStructureConsensus(): undefined;
26
+ get tracks(): never[];
27
+ }
@@ -0,0 +1,53 @@
1
+ import { parseEmfAln } from 'emf-js';
2
+ export default class EmfMSA {
3
+ MSA;
4
+ constructor(text) {
5
+ this.MSA = parseEmfAln(text);
6
+ }
7
+ getMSA() {
8
+ return this.MSA;
9
+ }
10
+ getRow(name) {
11
+ return this.MSA.find(aln => aln.protein === name)?.seq || '';
12
+ }
13
+ getWidth() {
14
+ return this.MSA[0].seq.length;
15
+ }
16
+ getRowData() {
17
+ return undefined;
18
+ }
19
+ getHeader() {
20
+ return '';
21
+ }
22
+ getNames() {
23
+ return this.MSA.map(aln => aln.protein);
24
+ }
25
+ getStructures() {
26
+ return {};
27
+ }
28
+ get alignmentNames() {
29
+ return [];
30
+ }
31
+ getTree() {
32
+ return {
33
+ id: 'root',
34
+ name: 'root',
35
+ noTree: true,
36
+ children: this.getNames().map(name => ({
37
+ id: name,
38
+ name,
39
+ children: [],
40
+ })),
41
+ };
42
+ }
43
+ get seqConsensus() {
44
+ return undefined;
45
+ }
46
+ get secondaryStructureConsensus() {
47
+ return undefined;
48
+ }
49
+ get tracks() {
50
+ return [];
51
+ }
52
+ }
53
+ //# sourceMappingURL=EmfMSA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmfMSA.js","sourceRoot":"","sources":["../../src/parsers/EmfMSA.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAGpC,MAAM,CAAC,OAAO,OAAO,MAAM;IACjB,GAAG,CAAgC;IAE3C,YAAY,IAAY;QACtB,IAAI,CAAC,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAA;IAC9D,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,MAAM,CAAA;IAChC,CAAC;IAED,UAAU;QACR,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,SAAS;QACP,OAAO,EAAE,CAAA;IACX,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACzC,CAAC;IAED,aAAa;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO;QACL,OAAO;YACL,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrC,EAAE,EAAE,IAAI;gBACR,IAAI;gBACJ,QAAQ,EAAE,EAAE;aACb,CAAC,CAAC;SACJ,CAAA;IACH,CAAC;IAED,IAAI,YAAY;QACd,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,2BAA2B;QAC7B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,EAAE,CAAA;IACX,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ import { parseEmfTree } from 'emf-js';
2
+ export default class EmfTree {
3
+ data: ReturnType<typeof parseEmfTree>;
4
+ constructor(text: string);
5
+ }
@@ -0,0 +1,8 @@
1
+ import { parseEmfTree } from 'emf-js';
2
+ export default class EmfTree {
3
+ data;
4
+ constructor(text) {
5
+ this.data = parseEmfTree(text);
6
+ }
7
+ }
8
+ //# sourceMappingURL=EmfTree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EmfTree.js","sourceRoot":"","sources":["../../src/parsers/EmfTree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAA;AAErC,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,IAAI,CAAiC;IAErC,YAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;CACF"}
@@ -15,7 +15,7 @@ export default class FastaMSA {
15
15
  MSA;
16
16
  constructor(text) {
17
17
  this.MSA = {
18
- seqdata: Object.fromEntries(parseSmallFasta(text).map(m => [`${m.id}`, m.sequence])),
18
+ seqdata: Object.fromEntries(parseSmallFasta(text).map(m => [m.id, m.sequence])),
19
19
  };
20
20
  }
21
21
  getMSA() {
@@ -28,10 +28,10 @@ export default class FastaMSA {
28
28
  return Object.keys(this.MSA.seqdata);
29
29
  }
30
30
  getRow(name) {
31
- return this.MSA?.seqdata[name] || '';
31
+ return this.MSA.seqdata[name] || '';
32
32
  }
33
33
  getWidth() {
34
- const name = Object.keys(this.MSA?.seqdata)[0];
34
+ const name = Object.keys(this.MSA.seqdata)[0];
35
35
  return this.getRow(name).length;
36
36
  }
37
37
  getStructures() {
@@ -48,9 +48,9 @@ export default class FastaMSA {
48
48
  id: 'root',
49
49
  name: 'root',
50
50
  noTree: true,
51
- branchset: this.getNames().map(name => ({
51
+ children: this.getNames().map(name => ({
52
52
  id: name,
53
- branchset: [],
53
+ children: [],
54
54
  name,
55
55
  })),
56
56
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FastaMSA.js","sourceRoot":"","sources":["../../src/parsers/FastaMSA.ts"],"names":[],"mappings":"AAEA,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,IAAI;SACR,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACzB,GAAG,CAAC,SAAS,CAAC,EAAE;QACf,MAAM,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,CAAC,EAAE,EAAE,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC/C,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC5C,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACrC,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAClD,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAA;IACtD,CAAC,CAAC,CAAA;AACN,CAAC;AACD,MAAM,CAAC,OAAO,OAAO,QAAQ;IACnB,GAAG,CAAqC;IAChD,YAAY,IAAY;QACtB,IAAI,CAAC,GAAG,GAAG;YACT,OAAO,EAAE,MAAM,CAAC,WAAW,CACzB,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CACxD;SACF,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,UAAU;QACR,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,QAAQ;QACN,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACtC,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;IACtC,CAAC;IAED,QAAQ;QACN,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAA;IACjC,CAAC;IAED,aAAa;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,SAAS;QACP,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO;QACL,OAAO;YACL,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACtC,EAAE,EAAE,IAAI;gBACR,SAAS,EAAE,EAAE;gBACb,IAAI;aACL,CAAC,CAAC;SACJ,CAAA;IACH,CAAC;IAED,IAAI,YAAY;QACd,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,2BAA2B;QAC7B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,EAAE,CAAA;IACX,CAAC;CACF"}
1
+ {"version":3,"file":"FastaMSA.js","sourceRoot":"","sources":["../../src/parsers/FastaMSA.ts"],"names":[],"mappings":"AAEA,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,IAAI;SACR,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACzB,GAAG,CAAC,SAAS,CAAC,EAAE;QACf,MAAM,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACpD,MAAM,CAAC,EAAE,EAAE,GAAG,WAAW,CAAC,GAAG,OAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAChD,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC5C,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACrC,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QAClD,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAA;IACtD,CAAC,CAAC,CAAA;AACN,CAAC;AACD,MAAM,CAAC,OAAO,OAAO,QAAQ;IACnB,GAAG,CAAqC;IAChD,YAAY,IAAY;QACtB,IAAI,CAAC,GAAG,GAAG;YACT,OAAO,EAAE,MAAM,CAAC,WAAW,CACzB,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CACnD;SACF,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;IAED,UAAU;QACR,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,QAAQ;QACN,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IACtC,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;IACrC,CAAC;IAED,QAAQ;QACN,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,CAAA;QAC9C,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAA;IACjC,CAAC;IAED,aAAa;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,SAAS;QACP,OAAO,EAAE,CAAA;IACX,CAAC;IAED,OAAO;QACL,OAAO;YACL,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrC,EAAE,EAAE,IAAI;gBACR,QAAQ,EAAE,EAAE;gBACZ,IAAI;aACL,CAAC,CAAC;SACJ,CAAA;IACH,CAAC;IAED,IAAI,YAAY;QACd,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,2BAA2B;QAC7B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,EAAE,CAAA;IACX,CAAC;CACF"}
@@ -4,9 +4,9 @@ interface StockholmEntry {
4
4
  DE?: string[];
5
5
  NH?: string[];
6
6
  };
7
- gs: {
7
+ gs?: {
8
8
  AC: Record<string, string>;
9
- DR: Record<string, string>;
9
+ DR?: Record<string, string>;
10
10
  };
11
11
  gc?: {
12
12
  SS_cons?: string;
@@ -27,13 +27,13 @@ export default class StockholmMSA {
27
27
  DE?: string[];
28
28
  NH?: string[];
29
29
  };
30
- Accessions: Record<string, string>;
31
- Dbxref: Record<string, string>;
30
+ Accessions: Record<string, string> | undefined;
31
+ Dbxref: Record<string, string> | undefined;
32
32
  };
33
33
  getRowData(rowName: string): {
34
34
  name: string;
35
- accession: string;
36
- dbxref: string;
35
+ accession: string | undefined;
36
+ dbxref: string | undefined;
37
37
  };
38
38
  getNames(): string[];
39
39
  getSeqCoords(): void;
@@ -13,10 +13,10 @@ export default class StockholmMSA {
13
13
  return this.MSA;
14
14
  }
15
15
  getRow(name) {
16
- return this.MSA?.seqdata[name] || '';
16
+ return this.MSA.seqdata[name] || '';
17
17
  }
18
18
  getWidth() {
19
- const name = Object.keys(this.MSA?.seqdata)[0];
19
+ const name = Object.keys(this.MSA.seqdata)[0];
20
20
  return this.getRow(name).length;
21
21
  }
22
22
  get alignmentNames() {
@@ -32,7 +32,7 @@ export default class StockholmMSA {
32
32
  getRowData(rowName) {
33
33
  return {
34
34
  name: rowName,
35
- accession: this.MSA.gs?.AC?.[rowName],
35
+ accession: this.MSA.gs?.AC[rowName],
36
36
  dbxref: this.MSA.gs?.DR?.[rowName],
37
37
  };
38
38
  }
@@ -64,16 +64,16 @@ export default class StockholmMSA {
64
64
  return ret;
65
65
  }
66
66
  getTree() {
67
- const tree = this.MSA?.gf?.NH?.[0];
67
+ const tree = this.MSA.gf.NH?.[0];
68
68
  return tree
69
69
  ? generateNodeIds(parseNewick(tree))
70
70
  : {
71
71
  id: 'root',
72
72
  name: 'root',
73
73
  noTree: true,
74
- branchset: this.getNames().map(name => ({
74
+ children: this.getNames().map(name => ({
75
75
  id: name,
76
- branchset: [],
76
+ children: [],
77
77
  name,
78
78
  })),
79
79
  };
@@ -1 +1 @@
1
- {"version":3,"file":"StockholmMSA.js","sourceRoot":"","sources":["../../src/parsers/StockholmMSA.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StockholmMSA.js","sourceRoot":"","sources":["../../src/parsers/StockholmMSA.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /* eslint-disable react-refresh/only-export-components */
1
2
  import React from 'react';
2
3
  import { createRoot } from 'react-dom/client';
3
4
  import { when } from 'mobx';
@@ -84,12 +85,8 @@ function CoreRendering({ model, theme, width, height, offsetX, offsetY, Context,
84
85
  React.createElement("defs", null,
85
86
  React.createElement("clipPath", { id: clipId2 },
86
87
  React.createElement("rect", { x: 0, y: 0, width: msaAreaWidth, height: height }))),
87
- React.createElement("g", { clipPath: `url(#${clipId1})`,
88
- /* eslint-disable-next-line react/no-danger */
89
- dangerouslySetInnerHTML: { __html: ctx1.getSvg().innerHTML } }),
90
- React.createElement("g", { clipPath: `url(#${clipId2})`, transform: `translate(${treeAreaWidth} 0)`,
91
- /* eslint-disable-next-line react/no-danger */
92
- dangerouslySetInnerHTML: { __html: ctx2.getSvg().innerHTML } })));
88
+ React.createElement("g", { clipPath: `url(#${clipId1})`, dangerouslySetInnerHTML: { __html: ctx1.getSvg().innerHTML } }),
89
+ React.createElement("g", { clipPath: `url(#${clipId2})`, transform: `translate(${treeAreaWidth} 0)`, dangerouslySetInnerHTML: { __html: ctx2.getSvg().innerHTML } })));
93
90
  }
94
91
  function MinimapWrapper({ model, children, }) {
95
92
  const { minimapHeight, treeAreaWidth } = model;
@@ -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":"AAAA,yDAAyD;AACzD,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAKzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEtC,OAAO,UAAU,MAAM,iCAAiC,CAAA;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAA;AAE1F,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,KAAmB,EACnB,IAAoE;IAEpE,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IACzC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;IACjD,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,IAAI,CAAA;IAElD,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,MAAM,CAAC;YACZ,KAAK,EAAE,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa;YAC7C,MAAM,EAAE,KAAK,CAAC,WAAW;YACzB,KAAK;YACL,KAAK;YACL,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,cAAc;SACf,CAAC,CAAA;IACJ,CAAC;IACD,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC;YACZ,KAAK;YACL,MAAM;YACN,KAAK;YACL,KAAK;YACL,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,CAAC,OAAO;YACjB,cAAc;SACf,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;AACxC,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,EACpB,KAAK,EACL,MAAM,EACN,OAAO,EACP,OAAO,EACP,KAAK,EACL,KAAK,EACL,cAAc,GASf;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAA;IAC7C,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAA;IAE7D,OAAO,oBAAoB,CACzB,oBAAC,UAAU,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM;QACtC,oBAAC,OAAO,IAAC,KAAK,EAAE,KAAK;YACnB,oBAAC,aAAa,IACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,GACd,CACM,CACC,EACb,UAAU,CACX,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,KAAK,EACL,KAAK,EACL,KAAK,EACL,MAAM,EACN,OAAO,EACP,OAAO,EACP,OAAO,GAYR;IACC,MAAM,OAAO,GAAG,MAAM,CAAA;IACtB,MAAM,OAAO,GAAG,KAAK,CAAA;IACrB,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,KAAK,CAAA;IAC5C,MAAM,cAAc,GAAG,aAAa,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;IACxD,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACnC,2BAA2B,CAAC;QAC1B,GAAG,EAAE,IAAI;QACT,OAAO;QACP,OAAO;QACP,KAAK;QACL,kBAAkB,EAAE,MAAM;QAC1B,0BAA0B,EAAE,CAAC;KAC9B,CAAC,CAAA;IACF,MAAM,YAAY,GAAG,KAAK,GAAG,aAAa,CAAA;IAC1C,gBAAgB,CAAC;QACf,KAAK;QACL,OAAO;QACP,GAAG,EAAE,IAAI;QACT,KAAK;QACL,kBAAkB,EAAE,MAAM;QAC1B,0BAA0B,EAAE,CAAC;KAC9B,CAAC,CAAA;IACF,cAAc,CAAC;QACb,KAAK;QACL,KAAK;QACL,OAAO;QACP,OAAO;QACP,cAAc;QACd,GAAG,EAAE,IAAI;QACT,kBAAkB,EAAE,YAAY;QAChC,kBAAkB,EAAE,MAAM;QAC1B,0BAA0B,EAAE,CAAC;KAC9B,CAAC,CAAA;IACF,OAAO,CACL;QACE;YACE,kCAAU,EAAE,EAAE,OAAO;gBACnB,8BAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAI,CACjD,CACN;QACP;YACE,kCAAU,EAAE,EAAE,OAAO;gBACnB,8BAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAI,CAChD,CACN;QAEP,2BACE,QAAQ,EAAE,QAAQ,OAAO,GAAG,EAC5B,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,GAC5D;QACF,2BACE,QAAQ,EAAE,QAAQ,OAAO,GAAG,EAC5B,SAAS,EAAE,aAAa,aAAa,KAAK,EAC1C,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,GAC5D,CACD,CACJ,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,EACtB,KAAK,EACL,QAAQ,GAIT;IACC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,KAAK,CAAA;IAE9C,OAAO,CACL;QACE,2BAAG,SAAS,EAAE,aAAa,aAAa,KAAK;YAC3C,oBAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,CAC1B;QAEJ,2BAAG,SAAS,EAAE,eAAe,aAAa,GAAG,IAAG,QAAQ,CAAK,CAC5D,CACJ,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,KAAK,EACL,MAAM,EACN,QAAQ,GAKT;IACC,OAAO,CACL,6BACE,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,KAAK,EAAC,4BAA4B,EAClC,UAAU,EAAC,8BAA8B,EACzC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,QAAQ,EAAE,IAExC,QAAQ,CACL,CACP,CAAA;AACH,CAAC;AAED,SAAS,WAAW,CAAC,EAAE,QAAQ,EAAiC;IAC9D,OAAO,QAAQ,CAAA;AACjB,CAAC"}
@@ -1,10 +1,10 @@
1
1
  export function reparseTree(tree) {
2
2
  return {
3
3
  ...tree,
4
- branchset: tree.branchset.map(r => r.branchset.length
4
+ children: tree.children.map(r => r.children.length
5
5
  ? reparseTree(r)
6
6
  : {
7
- branchset: [r],
7
+ children: [r],
8
8
  id: `${r.id}-leafnode`,
9
9
  name: `${r.name}-hidden`,
10
10
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"reparseTree.js","sourceRoot":"","sources":["../src/reparseTree.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAC,IAAiB;IAC3C,OAAO;QACL,GAAG,IAAI;QACP,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAChC,CAAC,CAAC,SAAS,CAAC,MAAM;YAChB,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YAChB,CAAC,CAAC;gBACE,SAAS,EAAE,CAAC,CAAC,CAAC;gBACd,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,WAAW;gBACtB,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,SAAS;aACzB,CACN;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"reparseTree.js","sourceRoot":"","sources":["../src/reparseTree.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CAAC,IAAiB;IAC3C,OAAO;QACL,GAAG,IAAI;QACP,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC9B,CAAC,CAAC,QAAQ,CAAC,MAAM;YACf,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YAChB,CAAC,CAAC;gBACE,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACb,EAAE,EAAE,GAAG,CAAC,CAAC,EAAE,WAAW;gBACtB,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,SAAS;aACzB,CACN;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function mouseOverCoordToGlobalCoord(blanks: number[], pos: number): number;
2
+ export declare function globalCoordToRowSpecificCoord(seq: string, pos: number): number;
@@ -0,0 +1,26 @@
1
+ export function mouseOverCoordToGlobalCoord(blanks, pos) {
2
+ let i = 0; // 'mouse over coord'
3
+ let j = 0; // 'position in blanks array'
4
+ let k = 0; // 'global coord'/return value
5
+ for (; i < pos; i++, k++) {
6
+ // skip multiple gaps in a row
7
+ while (j < blanks.length && blanks[j] - 1 === k) {
8
+ j++;
9
+ k++;
10
+ }
11
+ }
12
+ return k;
13
+ }
14
+ export function globalCoordToRowSpecificCoord(seq, pos) {
15
+ let k = 0;
16
+ for (let i = 0; i < pos; i++) {
17
+ if (seq[i] !== '-') {
18
+ k++;
19
+ }
20
+ else if (k >= pos) {
21
+ break;
22
+ }
23
+ }
24
+ return k;
25
+ }
26
+ //# sourceMappingURL=rowCoordinateCalculations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowCoordinateCalculations.js","sourceRoot":"","sources":["../src/rowCoordinateCalculations.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,2BAA2B,CAAC,MAAgB,EAAE,GAAW;IACvE,IAAI,CAAC,GAAG,CAAC,CAAA,CAAC,qBAAqB;IAC/B,IAAI,CAAC,GAAG,CAAC,CAAA,CAAC,6BAA6B;IACvC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAC,8BAA8B;IAExC,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QACzB,8BAA8B;QAC9B,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,CAAC,EAAE,CAAA;YACH,CAAC,EAAE,CAAA;QACL,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAAW,EAAE,GAAW;IACpE,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACnB,CAAC,EAAE,CAAA;QACL,CAAC;aAAM,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;YACpB,MAAK;QACP,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,18 @@
1
+ import { expect, test } from 'vitest';
2
+ import { mouseOverCoordToGlobalCoord } from './rowCoordinateCalculations';
3
+ test('blanks3', () => {
4
+ const blanks = [2, 5, 8];
5
+ [
6
+ [0, 0],
7
+ [1, 1],
8
+ [2, 3],
9
+ [3, 4],
10
+ [4, 6],
11
+ [5, 7],
12
+ [6, 9],
13
+ [7, 10],
14
+ ].forEach(r => {
15
+ expect(mouseOverCoordToGlobalCoord(blanks, r[0])).toBe(r[1]);
16
+ });
17
+ });
18
+ //# sourceMappingURL=rowCoordinateCalculations.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowCoordinateCalculations.test.js","sourceRoot":"","sources":["../src/rowCoordinateCalculations.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AACrC,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAA;AACzE,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;IACnB,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CACvB;IACC;QACE,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,CAAC,CAAC;QACN,CAAC,CAAC,EAAE,EAAE,CAAC;KAEV,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACZ,MAAM,CAAC,2BAA2B,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
package/dist/util.d.ts CHANGED
@@ -4,21 +4,21 @@ export declare function transform<T>(obj: Record<string, T>, cb: (arg0: [string,
4
4
  [k: string]: T;
5
5
  };
6
6
  interface Node {
7
- branchset?: Node[];
7
+ children?: Node[];
8
8
  name?: string;
9
9
  [key: string]: unknown;
10
10
  }
11
11
  export interface NodeWithIds {
12
12
  id: string;
13
13
  name: string;
14
- branchset: NodeWithIds[];
14
+ children: NodeWithIds[];
15
15
  length?: number;
16
16
  noTree?: boolean;
17
17
  }
18
18
  export interface NodeWithIdsAndLength {
19
19
  id: string;
20
20
  name: string;
21
- branchset: NodeWithIdsAndLength[];
21
+ children: NodeWithIdsAndLength[];
22
22
  noTree?: boolean;
23
23
  length: number;
24
24
  }
package/dist/util.js CHANGED
@@ -11,7 +11,7 @@ export function generateNodeIds(tree, parent = 'node', depth = 0) {
11
11
  ...tree,
12
12
  id,
13
13
  name: tree.name || id,
14
- branchset: tree.branchset?.map((b, i) => generateNodeIds(b, `${id}-${i}`, depth + 1)) || [],
14
+ children: tree.children?.map((b, i) => generateNodeIds(b, `${id}-${i}`, depth + 1)) || [],
15
15
  };
16
16
  }
17
17
  export function colorContrast(colorScheme, theme) {
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAE9B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,WAAW,MAAM,sBAAsB,CAAA;AAE9C,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;AAErB,MAAM,UAAU,SAAS,CACvB,GAAsB,EACtB,EAAsC;IAEtC,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;AACxD,CAAC;AAwBD,MAAM,UAAU,eAAe,CAC7B,IAAU,EACV,MAAM,GAAG,MAAM,EACf,KAAK,GAAG,CAAC;IAET,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,KAAK,EAAE,CAAA;IAE/B,OAAO;QACL,GAAG,IAAI;QACP,EAAE;QACF,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;QACrB,QAAQ,EACN,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC1B,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,CAC5C,IAAI,EAAE;KACV,CAAA;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,WAAmC,EACnC,KAAY;IAEZ,OAAO,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QACjD,MAAM;QACN,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;KACrD,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAgB,EAAE,GAAsB;IACjE,IAAI,CAAC,GAAG,EAAE,CAAA;IACV,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACpC,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACpB,CAAC,EAAE,CAAA;QACL,CAAC;aAAM,CAAC;YACN,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAA;QACb,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,WAAW,CACzB,CAA6B,EAC7B,EAAU,EACV,CAAS;IAET,mBAAmB;IACnB,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IAEnD,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACrB,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACvB,CAAC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,SAAS,CAAC,CAA6B;IACrD,OAAO,CACL,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC1E,CAAA;AACH,CAAC;AAED,gDAAgD;AAChD,8DAA8D;AAC9D,MAAM,UAAU,QAAQ,CAAC,CAA6B;IACpD,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,mBAAmB;QACnB,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,QAAQ,CAAA;QACxB,mBAAmB;QACnB,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAA;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,GAAW,EAAE,GAAW,EAAE,GAAW;IACzD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAA;AAC1C,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,CAAiC;IACnD,OAAO,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAA;AACxB,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "3.2.0";
1
+ export declare const version = "3.2.2";
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '3.2.0';
1
+ export const version = '3.2.2';
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-msaview",
3
3
  "author": "Colin",
4
- "version": "3.2.0",
4
+ "version": "3.2.2",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -23,8 +23,7 @@
23
23
  "build": "npm run build:esm && npm run build:bundle",
24
24
  "prepack": "npm run build",
25
25
  "postversion": "git push --follow-tags",
26
- "prestatedocs": "yarn tsc --build docgen/tsconfig.json",
27
- "statedocs": "rm -rf apidocs && mkdir apidocs && node docgen/dist/generateStateModelDocs.js",
26
+ "statedocs": "rm -rf apidocs && mkdir apidocs && yarn tsx docgen/generateStateModelDocs.ts",
28
27
  "poststatedocs": "npm run format"
29
28
  },
30
29
  "peerDependencies": {
@@ -38,11 +37,17 @@
38
37
  "react-dom": ">=16.8.0"
39
38
  },
40
39
  "dependencies": {
40
+ "@eslint/js": "^9.8.0",
41
+ "@mui/icons-material": "^5.0.0",
42
+ "@mui/material": "^5.0.0",
43
+ "@types/node": "^22.1.0",
41
44
  "clustal-js": "^2.0.0",
42
45
  "colord": "^2.9.3",
43
46
  "copy-to-clipboard": "^3.3.1",
44
47
  "d3-array": "^3.2.3",
45
48
  "d3-hierarchy": "^3.1.2",
49
+ "emf-js": "^2.0.0",
50
+ "eslint": "^9.8.0",
46
51
  "file-saver": "^2.0.5",
47
52
  "pako": "^2.1.0",
48
53
  "rbush": "^3.0.1",
@@ -357,7 +357,7 @@ export function getClustalXColor(
357
357
  row: string,
358
358
  col: number,
359
359
  ) {
360
- const l = model.columns[row][col]
360
+ const l = model.columns[row]![col]!
361
361
  const {
362
362
  W = 0,
363
363
  L = 0,
@@ -495,8 +495,8 @@ export function getClustalXColor(
495
495
  // info http://www.jalview.org/help/html/colourSchemes/clustal.html
496
496
  // modifications:
497
497
  // reference to clustalX source code scheme modifies what the jalview.org
498
- // scheme says there the jalview.org colorscheme says WLVIMAFCHP but it
499
- // should be WLVIMAFCHPY, colprot.xml says e.g. %#ACFHILMVWYPp" which has Y
498
+ // scheme says there the jalview.org colorscheme says WLVIMAFCHP but it should
499
+ // be WLVIMAFCHPY, colprot.xml says e.g. %#ACFHILMVWYPp" which has Y
500
500
  export function getPercentIdentityColor(
501
501
  stats: Record<string, number>,
502
502
  total: number,
@@ -504,7 +504,7 @@ export function getPercentIdentityColor(
504
504
  row: string,
505
505
  col: number,
506
506
  ) {
507
- const l = model.columns[row][col]
507
+ const l = model.columns[row]![col]!
508
508
  const entries = Object.entries(stats)
509
509
  let ent = 0
510
510
  let letter = ''
@@ -19,7 +19,13 @@ const Reset = observer(function ({
19
19
  return (
20
20
  <div>
21
21
  <ErrorMessage error={error} />
22
- <Button variant="contained" color="primary" onClick={() => model.reset()}>
22
+ <Button
23
+ variant="contained"
24
+ color="primary"
25
+ onClick={() => {
26
+ model.reset()
27
+ }}
28
+ >
23
29
  Return to import form
24
30
  </Button>
25
31
  </div>
@@ -57,7 +57,9 @@ export const VerticalResizeHandle = observer(function ({
57
57
  return (
58
58
  <div>
59
59
  <div
60
- onMouseDown={() => setMouseDragging(true)}
60
+ onMouseDown={() => {
61
+ setMouseDragging(true)
62
+ }}
61
63
  style={{
62
64
  cursor: 'ew-resize',
63
65
  height: '100%',
@@ -123,7 +125,9 @@ export const HorizontalResizeHandle = observer(function ({
123
125
  return (
124
126
  <div>
125
127
  <div
126
- onMouseDown={() => setMouseDragging(true)}
128
+ onMouseDown={() => {
129
+ setMouseDragging(true)
130
+ }}
127
131
  style={{
128
132
  cursor: 'ns-resize',
129
133
  width: '100%',
@@ -25,7 +25,7 @@ export default function SequenceTextArea({ str }: { str: [string, string][] }) {
25
25
  const [showEmpty, setShowEmpty] = useState(false)
26
26
 
27
27
  const disp = str
28
- .map(([s1, s2]) => [s1, showGaps ? s2 : s2.replaceAll('-', '')])
28
+ .map(([s1, s2]) => [s1, showGaps ? s2 : s2.replaceAll('-', '')] as const)
29
29
  .filter(f => (showEmpty ? true : !!f[1]))
30
30
  .map(([s1, s2]) => `>${s1}\n${showGaps ? s2 : s2.replaceAll('-', '')}`)
31
31
  .join('\n')
@@ -37,7 +37,9 @@ export default function SequenceTextArea({ str }: { str: [string, string][] }) {
37
37
  onClick={() => {
38
38
  copy(disp)
39
39
  setCopied(true)
40
- setTimeout(() => setCopied(false), 500)
40
+ setTimeout(() => {
41
+ setCopied(false)
42
+ }, 500)
41
43
  }}
42
44
  >
43
45
  {copied ? 'Copied!' : 'Copy to clipboard'}
@@ -45,12 +47,16 @@ export default function SequenceTextArea({ str }: { str: [string, string][] }) {
45
47
  <Checkbox2
46
48
  label="Show gaps"
47
49
  checked={showGaps}
48
- onChange={() => setShowGaps(!showGaps)}
50
+ onChange={() => {
51
+ setShowGaps(!showGaps)
52
+ }}
49
53
  />
50
54
  <Checkbox2
51
55
  label="Show empty"
52
56
  checked={showEmpty}
53
- onChange={() => setShowEmpty(!showEmpty)}
57
+ onChange={() => {
58
+ setShowEmpty(!showEmpty)
59
+ }}
54
60
  />
55
61
  <TextField
56
62
  variant="outlined"
@@ -55,9 +55,9 @@ const AnnotationBlock = observer(function ({
55
55
 
56
56
  const xStart = Math.max(0, Math.floor(offsetX / colWidth))
57
57
  const xEnd = Math.max(0, Math.ceil((offsetX + blockSize) / colWidth))
58
- const str = data?.slice(xStart, xEnd)
58
+ const str = data.slice(xStart, xEnd)
59
59
  for (let i = 0; str && i < str.length; i++) {
60
- const letter = str[i]
60
+ const letter = str[i]!
61
61
  const color = colorScheme[letter.toUpperCase()]
62
62
  if (bgColor) {
63
63
  const x = i * colWidth + offsetX - (offsetX % colWidth)
@@ -24,7 +24,7 @@ export const TrackLabel = observer(function ({
24
24
  track,
25
25
  }: {
26
26
  model: MsaViewModel
27
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
27
+
28
28
  track: any
29
29
  }) {
30
30
  const [anchorEl, setAnchorEl] = useState<HTMLButtonElement>()
@@ -53,7 +53,9 @@ export const TrackLabel = observer(function ({
53
53
  width: trackLabelHeight,
54
54
  height: trackLabelHeight,
55
55
  }}
56
- onClick={event => setAnchorEl(event.currentTarget)}
56
+ onClick={event => {
57
+ setAnchorEl(event.currentTarget)
58
+ }}
57
59
  >
58
60
  <ArrowDropDownIcon />
59
61
  </IconButton>
@@ -62,7 +64,9 @@ export const TrackLabel = observer(function ({
62
64
  anchorEl={anchorEl}
63
65
  transitionDuration={0}
64
66
  open
65
- onClose={() => setAnchorEl(undefined)}
67
+ onClose={() => {
68
+ setAnchorEl(undefined)
69
+ }}
66
70
  >
67
71
  <MenuItem
68
72
  dense
@@ -96,7 +100,7 @@ const Track = observer(function ({
96
100
  track,
97
101
  }: {
98
102
  model: MsaViewModel
99
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
103
+
100
104
  track: any
101
105
  }) {
102
106
  const { resizeHandleWidth } = model