react-msaview 1.3.2 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/bundle/index.js +285 -97099
  2. package/dist/StructureModel.d.ts +9 -0
  3. package/dist/StructureModel.js +11 -0
  4. package/dist/StructureModel.js.map +1 -0
  5. package/dist/UniprotTrack.d.ts +27 -0
  6. package/dist/UniprotTrack.js +53 -0
  7. package/dist/UniprotTrack.js.map +1 -0
  8. package/dist/colorSchemes.d.ts +5 -11
  9. package/dist/colorSchemes.js +27 -32
  10. package/dist/colorSchemes.js.map +1 -0
  11. package/dist/components/BoxTrack.d.ts +6 -6
  12. package/dist/components/BoxTrack.js +9 -137
  13. package/dist/components/BoxTrack.js.map +1 -0
  14. package/dist/components/BoxTrackBlock.d.ts +8 -0
  15. package/dist/components/BoxTrackBlock.js +136 -0
  16. package/dist/components/BoxTrackBlock.js.map +1 -0
  17. package/dist/components/Header.d.ts +2 -2
  18. package/dist/components/Header.js +55 -48
  19. package/dist/components/Header.js.map +1 -0
  20. package/dist/components/ImportForm.d.ts +2 -2
  21. package/dist/components/ImportForm.js +59 -71
  22. package/dist/components/ImportForm.js.map +1 -0
  23. package/dist/components/MSABlock.d.ts +8 -0
  24. package/dist/components/MSABlock.js +103 -0
  25. package/dist/components/MSABlock.js.map +1 -0
  26. package/dist/components/MSACanvas.d.ts +2 -2
  27. package/dist/components/MSACanvas.js +32 -133
  28. package/dist/components/MSACanvas.js.map +1 -0
  29. package/dist/components/MSAMouseoverCanvas.d.ts +6 -0
  30. package/dist/components/MSAMouseoverCanvas.js +52 -0
  31. package/dist/components/MSAMouseoverCanvas.js.map +1 -0
  32. package/dist/components/MSAView.d.ts +2 -2
  33. package/dist/components/MSAView.js +17 -62
  34. package/dist/components/MSAView.js.map +1 -0
  35. package/dist/components/MultiAlignmentSelector.d.ts +6 -0
  36. package/dist/components/MultiAlignmentSelector.js +13 -0
  37. package/dist/components/MultiAlignmentSelector.js.map +1 -0
  38. package/dist/components/ResizeHandles.d.ts +5 -5
  39. package/dist/components/ResizeHandles.js +31 -32
  40. package/dist/components/ResizeHandles.js.map +1 -0
  41. package/dist/components/Rubberband.d.ts +3 -2
  42. package/dist/components/Rubberband.js +41 -64
  43. package/dist/components/Rubberband.js.map +1 -0
  44. package/dist/components/Ruler.d.ts +2 -16
  45. package/dist/components/Ruler.js +19 -88
  46. package/dist/components/Ruler.js.map +1 -0
  47. package/dist/components/TextTrack.d.ts +5 -5
  48. package/dist/components/TextTrack.js +23 -24
  49. package/dist/components/TextTrack.js.map +1 -0
  50. package/dist/components/Track.d.ts +5 -5
  51. package/dist/components/Track.js +41 -40
  52. package/dist/components/Track.js.map +1 -0
  53. package/dist/components/TreeBranchMenu.d.ts +14 -0
  54. package/dist/components/TreeBranchMenu.js +26 -0
  55. package/dist/components/TreeBranchMenu.js.map +1 -0
  56. package/dist/components/TreeCanvas.d.ts +2 -2
  57. package/dist/components/TreeCanvas.js +24 -356
  58. package/dist/components/TreeCanvas.js.map +1 -0
  59. package/dist/components/TreeCanvasBlock.d.ts +7 -0
  60. package/dist/components/TreeCanvasBlock.js +252 -0
  61. package/dist/components/TreeCanvasBlock.js.map +1 -0
  62. package/dist/components/TreeMenu.d.ts +12 -0
  63. package/dist/components/TreeMenu.js +56 -0
  64. package/dist/components/TreeMenu.js.map +1 -0
  65. package/dist/components/TreeRuler.d.ts +2 -2
  66. package/dist/components/TreeRuler.js +3 -3
  67. package/dist/components/TreeRuler.js.map +1 -0
  68. package/dist/components/VerticalGuide.d.ts +7 -0
  69. package/dist/components/VerticalGuide.js +30 -0
  70. package/dist/components/VerticalGuide.js.map +1 -0
  71. package/dist/components/ZoomControls.d.ts +6 -0
  72. package/dist/components/ZoomControls.js +58 -0
  73. package/dist/components/ZoomControls.js.map +1 -0
  74. package/dist/components/data/seq2.d.ts +3 -3
  75. package/dist/components/data/seq2.js +33 -3
  76. package/dist/components/data/seq2.js.map +1 -0
  77. package/dist/components/dialogs/AboutDlg.d.ts +4 -0
  78. package/dist/components/dialogs/AboutDlg.js +40 -0
  79. package/dist/components/dialogs/AboutDlg.js.map +1 -0
  80. package/{bundle/components → dist/components/dialogs}/AddTrackDlg.d.ts +3 -3
  81. package/dist/components/dialogs/AddTrackDlg.js +26 -0
  82. package/dist/components/dialogs/AddTrackDlg.js.map +1 -0
  83. package/dist/components/{AnnotationDlg.d.ts → dialogs/AnnotationDlg.d.ts} +3 -3
  84. package/dist/components/dialogs/AnnotationDlg.js +65 -0
  85. package/dist/components/dialogs/AnnotationDlg.js.map +1 -0
  86. package/dist/components/dialogs/DetailsDlg.d.ts +7 -0
  87. package/dist/components/dialogs/DetailsDlg.js +13 -0
  88. package/dist/components/dialogs/DetailsDlg.js.map +1 -0
  89. package/dist/components/dialogs/MoreInfoDlg.d.ts +6 -0
  90. package/dist/components/dialogs/MoreInfoDlg.js +11 -0
  91. package/dist/components/dialogs/MoreInfoDlg.js.map +1 -0
  92. package/dist/components/dialogs/SettingsDlg.d.ts +7 -0
  93. package/dist/components/dialogs/SettingsDlg.js +48 -0
  94. package/dist/components/dialogs/SettingsDlg.js.map +1 -0
  95. package/dist/components/dialogs/TrackInfoDlg.d.ts +9 -0
  96. package/{bundle/components → dist/components/dialogs}/TrackInfoDlg.js +12 -13
  97. package/dist/components/dialogs/TrackInfoDlg.js.map +1 -0
  98. package/dist/components/dialogs/TracklistDlg.d.ts +7 -0
  99. package/dist/components/dialogs/TracklistDlg.js +18 -0
  100. package/dist/components/dialogs/TracklistDlg.js.map +1 -0
  101. package/{bundle/components/Ruler.d.ts → dist/components/util.d.ts} +1 -6
  102. package/dist/components/util.js +68 -0
  103. package/dist/components/util.js.map +1 -0
  104. package/dist/index.d.ts +2 -4
  105. package/dist/index.js +3 -3
  106. package/dist/index.js.map +1 -0
  107. package/dist/layout.js +14 -20
  108. package/dist/layout.js.map +1 -0
  109. package/dist/model.d.ts +114 -97
  110. package/dist/model.js +248 -486
  111. package/dist/model.js.map +1 -0
  112. package/dist/parseNewick.d.ts +1 -5
  113. package/dist/parseNewick.js +11 -8
  114. package/dist/parseNewick.js.map +1 -0
  115. package/dist/parsers/ClustalMSA.d.ts +6 -18
  116. package/dist/parsers/ClustalMSA.js +55 -64
  117. package/dist/parsers/ClustalMSA.js.map +1 -0
  118. package/dist/parsers/FastaMSA.d.ts +5 -12
  119. package/dist/parsers/FastaMSA.js +55 -64
  120. package/dist/parsers/FastaMSA.js.map +1 -0
  121. package/dist/parsers/StockholmMSA.d.ts +10 -17
  122. package/dist/parsers/StockholmMSA.js +81 -110
  123. package/dist/parsers/StockholmMSA.js.map +1 -0
  124. package/dist/util.d.ts +34 -7
  125. package/dist/util.js +76 -24
  126. package/dist/util.js.map +1 -0
  127. package/dist/version.d.ts +1 -0
  128. package/dist/version.js +2 -0
  129. package/dist/version.js.map +1 -0
  130. package/package.json +34 -34
  131. package/src/StructureModel.ts +11 -0
  132. package/src/UniprotTrack.ts +59 -0
  133. package/src/colorSchemes.ts +520 -0
  134. package/src/components/BoxTrack.tsx +33 -0
  135. package/src/components/BoxTrackBlock.tsx +198 -0
  136. package/src/components/Header.tsx +106 -0
  137. package/src/components/ImportForm.tsx +192 -0
  138. package/src/components/MSABlock.tsx +164 -0
  139. package/src/components/MSACanvas.tsx +142 -0
  140. package/src/components/MSAMouseoverCanvas.tsx +87 -0
  141. package/src/components/MSAView.tsx +88 -0
  142. package/src/components/MultiAlignmentSelector.tsx +33 -0
  143. package/src/components/ResizeHandles.tsx +137 -0
  144. package/src/components/Rubberband.tsx +270 -0
  145. package/src/components/Ruler.tsx +123 -0
  146. package/src/components/TextTrack.tsx +120 -0
  147. package/src/components/Track.tsx +153 -0
  148. package/src/components/TreeBranchMenu.tsx +67 -0
  149. package/src/components/TreeCanvas.tsx +128 -0
  150. package/src/components/TreeCanvasBlock.tsx +359 -0
  151. package/src/components/TreeMenu.tsx +105 -0
  152. package/src/components/TreeRuler.tsx +12 -0
  153. package/src/components/VerticalGuide.tsx +50 -0
  154. package/src/components/ZoomControls.tsx +78 -0
  155. package/src/components/data/seq2.ts +35 -0
  156. package/src/components/dialogs/AboutDlg.tsx +58 -0
  157. package/src/components/dialogs/AddTrackDlg.tsx +74 -0
  158. package/src/components/dialogs/AnnotationDlg.tsx +144 -0
  159. package/src/components/dialogs/DetailsDlg.tsx +28 -0
  160. package/src/components/dialogs/MoreInfoDlg.tsx +21 -0
  161. package/src/components/dialogs/SettingsDlg.tsx +154 -0
  162. package/src/components/dialogs/TrackInfoDlg.tsx +59 -0
  163. package/src/components/dialogs/TracklistDlg.tsx +59 -0
  164. package/src/components/util.ts +93 -0
  165. package/src/declare.d.ts +1 -0
  166. package/src/index.ts +2 -0
  167. package/src/layout.ts +83 -0
  168. package/src/model.ts +793 -0
  169. package/{bundle/parseNewick.d.ts → src/parseNewick.ts} +35 -5
  170. package/src/parsers/ClustalMSA.ts +79 -0
  171. package/src/parsers/FastaMSA.ts +82 -0
  172. package/src/parsers/StockholmMSA.ts +137 -0
  173. package/src/util.ts +142 -0
  174. package/src/version.ts +1 -0
  175. package/bundle/colorSchemes.d.ts +0 -16
  176. package/bundle/colorSchemes.js +0 -455
  177. package/bundle/components/AboutDlg.d.ts +0 -5
  178. package/bundle/components/AboutDlg.js +0 -47
  179. package/bundle/components/AddTrackDlg.js +0 -26
  180. package/bundle/components/AnnotationDlg.d.ts +0 -11
  181. package/bundle/components/AnnotationDlg.js +0 -77
  182. package/bundle/components/BoxTrack.d.ts +0 -7
  183. package/bundle/components/BoxTrack.js +0 -143
  184. package/bundle/components/DetailsDlg.d.ts +0 -8
  185. package/bundle/components/DetailsDlg.js +0 -12
  186. package/bundle/components/Header.d.ts +0 -6
  187. package/bundle/components/Header.js +0 -63
  188. package/bundle/components/ImportForm.d.ts +0 -6
  189. package/bundle/components/ImportForm.js +0 -89
  190. package/bundle/components/MSACanvas.d.ts +0 -6
  191. package/bundle/components/MSACanvas.js +0 -210
  192. package/bundle/components/MSAView.d.ts +0 -6
  193. package/bundle/components/MSAView.js +0 -88
  194. package/bundle/components/MoreInfoDlg.d.ts +0 -6
  195. package/bundle/components/MoreInfoDlg.js +0 -11
  196. package/bundle/components/ResizeHandles.d.ts +0 -8
  197. package/bundle/components/ResizeHandles.js +0 -110
  198. package/bundle/components/Rubberband.d.ts +0 -7
  199. package/bundle/components/Rubberband.js +0 -196
  200. package/bundle/components/Ruler.js +0 -121
  201. package/bundle/components/SettingsDlg.d.ts +0 -8
  202. package/bundle/components/SettingsDlg.js +0 -40
  203. package/bundle/components/TextTrack.d.ts +0 -7
  204. package/bundle/components/TextTrack.js +0 -72
  205. package/bundle/components/Track.d.ts +0 -11
  206. package/bundle/components/Track.js +0 -81
  207. package/bundle/components/TrackInfoDlg.d.ts +0 -6
  208. package/bundle/components/TracklistDlg.d.ts +0 -8
  209. package/bundle/components/TracklistDlg.js +0 -18
  210. package/bundle/components/TreeCanvas.d.ts +0 -6
  211. package/bundle/components/TreeCanvas.js +0 -431
  212. package/bundle/components/TreeRuler.d.ts +0 -6
  213. package/bundle/components/TreeRuler.js +0 -8
  214. package/bundle/components/data/seq2.d.ts +0 -3
  215. package/bundle/components/data/seq2.js +0 -3
  216. package/bundle/index.d.ts +0 -4
  217. package/bundle/layout.d.ts +0 -23
  218. package/bundle/layout.js +0 -53
  219. package/bundle/model.d.ts +0 -364
  220. package/bundle/model.js +0 -894
  221. package/bundle/parseNewick.js +0 -94
  222. package/bundle/parsers/ClustalMSA.d.ts +0 -39
  223. package/bundle/parsers/ClustalMSA.js +0 -77
  224. package/bundle/parsers/FastaMSA.d.ts +0 -26
  225. package/bundle/parsers/FastaMSA.js +0 -78
  226. package/bundle/parsers/StockholmMSA.d.ts +0 -75
  227. package/bundle/parsers/StockholmMSA.js +0 -142
  228. package/bundle/util.d.ts +0 -17
  229. package/bundle/util.js +0 -33
  230. package/dist/components/AboutDlg.d.ts +0 -5
  231. package/dist/components/AboutDlg.js +0 -50
  232. package/dist/components/AddTrackDlg.d.ts +0 -8
  233. package/dist/components/AddTrackDlg.js +0 -26
  234. package/dist/components/AnnotationDlg.js +0 -77
  235. package/dist/components/DetailsDlg.d.ts +0 -8
  236. package/dist/components/DetailsDlg.js +0 -12
  237. package/dist/components/MoreInfoDlg.d.ts +0 -6
  238. package/dist/components/MoreInfoDlg.js +0 -11
  239. package/dist/components/SettingsDlg.d.ts +0 -8
  240. package/dist/components/SettingsDlg.js +0 -40
  241. package/dist/components/TrackInfoDlg.d.ts +0 -6
  242. package/dist/components/TrackInfoDlg.js +0 -33
  243. package/dist/components/TracklistDlg.d.ts +0 -8
  244. package/dist/components/TracklistDlg.js +0 -18
  245. package/dist/components/package.json +0 -62
@@ -0,0 +1,9 @@
1
+ export declare const StructureModel: import("mobx-state-tree").IModelType<{
2
+ id: import("mobx-state-tree").ISimpleType<string>;
3
+ structure: import("mobx-state-tree").IModelType<{
4
+ pdb: import("mobx-state-tree").ISimpleType<string>;
5
+ startPos: import("mobx-state-tree").ISimpleType<number>;
6
+ endPos: import("mobx-state-tree").ISimpleType<number>;
7
+ }, {}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
8
+ range: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
9
+ }, {}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
@@ -0,0 +1,11 @@
1
+ import { types } from 'mobx-state-tree';
2
+ export const StructureModel = types.model({
3
+ id: types.identifier,
4
+ structure: types.model({
5
+ pdb: types.string,
6
+ startPos: types.number,
7
+ endPos: types.number,
8
+ }),
9
+ range: types.maybe(types.string),
10
+ });
11
+ //# sourceMappingURL=StructureModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StructureModel.js","sourceRoot":"","sources":["../src/StructureModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAEvC,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC;IACxC,EAAE,EAAE,KAAK,CAAC,UAAU;IACpB,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC;QACrB,GAAG,EAAE,KAAK,CAAC,MAAM;QACjB,QAAQ,EAAE,KAAK,CAAC,MAAM;QACtB,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC;IACF,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;CACjC,CAAC,CAAA"}
@@ -0,0 +1,27 @@
1
+ export declare const UniprotTrack: import("mobx-state-tree").IModelType<{
2
+ id: import("mobx-state-tree").ISimpleType<string>;
3
+ accession: import("mobx-state-tree").ISimpleType<string>;
4
+ name: import("mobx-state-tree").ISimpleType<string>;
5
+ associatedRowName: import("mobx-state-tree").ISimpleType<string>;
6
+ height: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
7
+ }, {
8
+ error: unknown;
9
+ data: string | undefined;
10
+ } & {
11
+ setError(error: unknown): void;
12
+ setData(data: string): void;
13
+ } & {
14
+ afterCreate(): void;
15
+ } & {
16
+ readonly loading: boolean;
17
+ readonly features: {
18
+ seq_id: string;
19
+ source: string;
20
+ type: string;
21
+ start: number;
22
+ end: number;
23
+ score: number;
24
+ strand: string;
25
+ phase: string;
26
+ }[] | undefined;
27
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
@@ -0,0 +1,53 @@
1
+ import { types, addDisposer } from 'mobx-state-tree';
2
+ import { autorun } from 'mobx';
3
+ // locals
4
+ import { parseGFF } from './util';
5
+ export const UniprotTrack = types
6
+ .model({
7
+ id: types.string,
8
+ accession: types.string,
9
+ name: types.string,
10
+ associatedRowName: types.string,
11
+ height: types.optional(types.number, 100),
12
+ })
13
+ .volatile(() => ({
14
+ error: undefined,
15
+ data: undefined,
16
+ }))
17
+ .actions(self => ({
18
+ setError(error) {
19
+ self.error = error;
20
+ },
21
+ setData(data) {
22
+ self.data = data;
23
+ },
24
+ }))
25
+ .actions(self => ({
26
+ afterCreate() {
27
+ addDisposer(self, autorun(async () => {
28
+ try {
29
+ const { accession } = self;
30
+ const accessionSansVersion = accession === null || accession === void 0 ? void 0 : accession.replace(/\.[^/.]+$/, '');
31
+ const url = `https://rest.uniprot.org/uniprotkb/${accessionSansVersion}.gff`;
32
+ const res = await fetch(url);
33
+ if (!res.ok) {
34
+ throw new Error(`HTTP ${res.status} fetching ${url}: ${await res.text()}`);
35
+ }
36
+ self.setData(await res.text());
37
+ }
38
+ catch (e) {
39
+ console.error(e);
40
+ self.setError(e);
41
+ }
42
+ }));
43
+ },
44
+ }))
45
+ .views(self => ({
46
+ get loading() {
47
+ return !self.data;
48
+ },
49
+ get features() {
50
+ return parseGFF(self.data);
51
+ },
52
+ }));
53
+ //# sourceMappingURL=UniprotTrack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UniprotTrack.js","sourceRoot":"","sources":["../src/UniprotTrack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAE9B,SAAS;AACT,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEjC,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK;KAC9B,KAAK,CAAC;IACL,EAAE,EAAE,KAAK,CAAC,MAAM;IAChB,SAAS,EAAE,KAAK,CAAC,MAAM;IACvB,IAAI,EAAE,KAAK,CAAC,MAAM;IAClB,iBAAiB,EAAE,KAAK,CAAC,MAAM;IAC/B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC;CAC1C,CAAC;KACD,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;IACf,KAAK,EAAE,SAAoB;IAC3B,IAAI,EAAE,SAA+B;CACtC,CAAC,CAAC;KACF,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,QAAQ,CAAC,KAAc;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IACD,OAAO,CAAC,IAAY;QAClB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;CACF,CAAC,CAAC;KACF,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,WAAW;QACT,WAAW,CACT,IAAI,EACJ,OAAO,CAAC,KAAK,IAAI,EAAE;YACjB,IAAI;gBACF,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAA;gBAC1B,MAAM,oBAAoB,GAAG,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;gBAChE,MAAM,GAAG,GAAG,sCAAsC,oBAAoB,MAAM,CAAA;gBAC5E,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;oBACX,MAAM,IAAI,KAAK,CACb,QAAQ,GAAG,CAAC,MAAM,aAAa,GAAG,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAC1D,CAAA;iBACF;gBACD,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;aAC/B;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBAChB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;aACjB;QACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC;CACF,CAAC,CAAC;KACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACd,IAAI,OAAO;QACT,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA;IACnB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5B,CAAC;CACF,CAAC,CAAC,CAAA"}
@@ -1,16 +1,10 @@
1
1
  declare const _default: {
2
- [k: string]: {
3
- [key: string]: string;
4
- };
2
+ [k: string]: Record<string, string>;
5
3
  };
6
4
  export default _default;
7
- export declare function getClustalXColor(stats: {
8
- [key: string]: number;
9
- }, model: {
5
+ export declare function getClustalXColor(stats: Record<string, number>, model: {
10
6
  columns: Record<string, string>;
11
- }, row: number, col: number): "rgb(128,179,230)" | "#d88" | "rgb(192, 72, 192)" | "rgb(204, 77, 204)" | "#8f8" | "rgb(26,204,26)" | "rgb(240, 128, 128)" | "rgb(240, 144, 72)" | "rgb(204, 204, 0)" | "rgb(26, 179, 179)" | undefined;
12
- export declare function getPercentIdentityColor(stats: {
13
- [key: string]: number;
14
- }, model: {
7
+ }, row: string, col: number): "rgb(128,179,230)" | "#d88" | "rgb(192, 72, 192)" | "rgb(204, 77, 204)" | "#8f8" | "rgb(26,204,26)" | "rgb(240, 128, 128)" | "rgb(240, 144, 72)" | "rgb(204, 204, 0)" | "rgb(26, 179, 179)" | undefined;
8
+ export declare function getPercentIdentityColor(stats: Record<string, number>, model: {
15
9
  columns: Record<string, string>;
16
- }, row: number, col: number): string | undefined;
10
+ }, row: string, col: number): string | undefined;
@@ -1,6 +1,6 @@
1
1
  import Color from 'color';
2
2
  import { transform } from './util';
3
- var colorSchemes = {
3
+ const colorSchemes = {
4
4
  clustal: {
5
5
  G: 'orange',
6
6
  P: 'orange',
@@ -62,7 +62,7 @@ var colorSchemes = {
62
62
  T: 'red',
63
63
  },
64
64
  percent_identity_dynamic: {},
65
- //https://github.com/biotite-dev/biotite/blob/8c460972f8ab904312f130dfb80f3efc8c9bd7c5/src/biotite/sequence/graphics/color_schemes/flower.json
65
+ // https://github.com/biotite-dev/biotite/blob/8c460972f8ab904312f130dfb80f3efc8c9bd7c5/src/biotite/sequence/graphics/color_schemes/flower.json
66
66
  flower: {
67
67
  A: '#b18a51',
68
68
  C: '#ff5701',
@@ -92,7 +92,7 @@ var colorSchemes = {
92
92
  T: '#f53737',
93
93
  U: '#f53737',
94
94
  },
95
- //https://github.com/biotite-dev/biotite/blob/8c460972f8ab904312f130dfb80f3efc8c9bd7c5/src/biotite/sequence/graphics/color_schemes/clustalx_protein.json
95
+ // https://github.com/biotite-dev/biotite/blob/8c460972f8ab904312f130dfb80f3efc8c9bd7c5/src/biotite/sequence/graphics/color_schemes/clustalx_protein.json
96
96
  clustalx_protein: {
97
97
  A: '#197fe5',
98
98
  C: '#e57f7f',
@@ -323,30 +323,24 @@ var colorSchemes = {
323
323
  };
324
324
  // turn all supplied colors to hex colors which getContrastText from mui
325
325
  // requires
326
- export default transform(colorSchemes, function (_a) {
327
- var key = _a[0], val = _a[1];
328
- return [
329
- key,
330
- transform(val, function (_a) {
331
- var letter = _a[0], color = _a[1];
332
- return [letter, Color(color).hex()];
333
- }),
334
- ];
335
- });
326
+ export default transform(colorSchemes, ([key, val]) => [
327
+ key,
328
+ transform(val, ([letter, color]) => [letter, Color(color).hex()]),
329
+ ]);
336
330
  // info http://www.jalview.org/help/html/colourSchemes/clustal.html
337
331
  // modifications:
338
332
  // reference to clustalX source code scheme modifies what the jalview.org
339
333
  // scheme says there the jalview.org colorscheme says WLVIMAFCHP but it
340
334
  // should be WLVIMAFCHPY, colprot.xml says e.g. %#ACFHILMVWYPp" which has Y
341
335
  export function getClustalXColor(stats, model, row, col) {
342
- var total = Object.values(stats).reduce(function (a, b) { return a + b; }, 0);
343
- var l = model.columns[row][col];
344
- var _a = stats.W, W = _a === void 0 ? 0 : _a, _b = stats.L, L = _b === void 0 ? 0 : _b, _c = stats.V, V = _c === void 0 ? 0 : _c, _d = stats.I, I = _d === void 0 ? 0 : _d, _e = stats.M, M = _e === void 0 ? 0 : _e, _f = stats.A, A = _f === void 0 ? 0 : _f, _g = stats.F, F = _g === void 0 ? 0 : _g, _h = stats.C, C = _h === void 0 ? 0 : _h, _j = stats.H, H = _j === void 0 ? 0 : _j, _k = stats.P, P = _k === void 0 ? 0 : _k, _l = stats.R, R = _l === void 0 ? 0 : _l, _m = stats.K, K = _m === void 0 ? 0 : _m, _o = stats.Q, Q = _o === void 0 ? 0 : _o, _p = stats.E, E = _p === void 0 ? 0 : _p, _q = stats.D, D = _q === void 0 ? 0 : _q, _r = stats.T, T = _r === void 0 ? 0 : _r, _s = stats.S, S = _s === void 0 ? 0 : _s, _t = stats.G, G = _t === void 0 ? 0 : _t, _u = stats.Y, Y = _u === void 0 ? 0 : _u, _v = stats.N, N = _v === void 0 ? 0 : _v;
345
- var WLVIMAFCHP = W + L + V + I + M + A + F + C + H + P + Y;
346
- var KR = K + R;
347
- var QE = Q + E;
348
- var ED = E + D;
349
- var TS = T + S;
336
+ const total = Object.values(stats).reduce((a, b) => a + b, 0);
337
+ const l = model.columns[row][col];
338
+ const { W = 0, L = 0, V = 0, I = 0, M = 0, A = 0, F = 0, C = 0, H = 0, P = 0, R = 0, K = 0, Q = 0, E = 0, D = 0, T = 0, S = 0, G = 0, Y = 0, N = 0, } = stats;
339
+ const WLVIMAFCHP = W + L + V + I + M + A + F + C + H + P + Y;
340
+ const KR = K + R;
341
+ const QE = Q + E;
342
+ const ED = E + D;
343
+ const TS = T + S;
350
344
  if (WLVIMAFCHP / total > 0.6) {
351
345
  if (l === 'W' ||
352
346
  l === 'L' ||
@@ -434,22 +428,23 @@ export function getClustalXColor(stats, model, row, col) {
434
428
  // scheme says there the jalview.org colorscheme says WLVIMAFCHP but it
435
429
  // should be WLVIMAFCHPY, colprot.xml says e.g. %#ACFHILMVWYPp" which has Y
436
430
  export function getPercentIdentityColor(stats, model, row, col) {
437
- var total = Object.values(stats).reduce(function (a, b) { return a + b; }, 0);
438
- var l = model.columns[row][col];
439
- var entries = Object.entries(stats);
440
- var ent = 0;
441
- var letter = '';
442
- for (var i = 0; i < entries.length; i++) {
443
- if (entries[i][1] > ent && entries[i][0] !== '-') {
444
- letter = entries[i][0];
445
- ent = entries[i][1];
431
+ const total = Object.values(stats).reduce((a, b) => a + b, 0);
432
+ const l = model.columns[row][col];
433
+ const entries = Object.entries(stats);
434
+ let ent = 0;
435
+ let letter = '';
436
+ for (const entry of entries) {
437
+ if (entry[1] > ent && entry[0] !== '-') {
438
+ letter = entry[0];
439
+ ent = entry[1];
446
440
  }
447
441
  }
448
- var proportion = ent / total;
449
- var thresh = "hsl(240, 30%, ".concat(100 * Math.max(1 - ent / total / 3, 0.3), "%)");
442
+ const proportion = ent / total;
443
+ const thresh = `hsl(240, 30%, ${100 * Math.max(1 - ent / total / 3, 0.3)}%)`;
450
444
  if (proportion > 0.4) {
451
445
  if (l === letter) {
452
446
  return thresh;
453
447
  }
454
448
  }
455
449
  }
450
+ //# sourceMappingURL=colorSchemes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colorSchemes.js","sourceRoot":"","sources":["../src/colorSchemes.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- /// <reference types="react" />
2
- import { MsaViewModel } from '../model';
3
- declare const AnnotationTrack: ({ model, track }: {
1
+ import React from 'react';
2
+ import { IBoxTrack, MsaViewModel } from '../model';
3
+ declare const BoxTrack: ({ model, track, }: {
4
4
  model: MsaViewModel;
5
- track: any;
6
- }) => JSX.Element;
7
- export default AnnotationTrack;
5
+ track: IBoxTrack;
6
+ }) => React.JSX.Element;
7
+ export default BoxTrack;
@@ -1,143 +1,15 @@
1
- import React, { useRef, useMemo, useEffect } from 'react';
1
+ import React from 'react';
2
2
  import { observer } from 'mobx-react';
3
- import { getSnapshot, isStateTreeNode } from 'mobx-state-tree';
4
- import Layout from '../layout';
5
- var AnnotationBlock = observer(function (_a) {
6
- var track = _a.track, model = _a.model, offsetX = _a.offsetX;
7
- var blockSize = model.blockSize, colWidth = model.colWidth, blanks = model.blanks, rowHeight = model.rowHeight, highResScaleFactor = model.highResScaleFactor, scrollX = model.scrollX;
8
- var _b = track.model, height = _b.height, features = _b.features, associatedRowName = _b.associatedRowName;
9
- var feats = isStateTreeNode(features)
10
- ? getSnapshot(features)
11
- : features;
12
- var layout = useMemo(function () {
13
- var temp = new Layout();
14
- feats === null || feats === void 0 ? void 0 : feats.forEach(function (feature, index) {
15
- var start = feature.start, end = feature.end;
16
- if (associatedRowName) {
17
- var s = model.rowSpecificBpToPx(associatedRowName, start - 1);
18
- var e = model.rowSpecificBpToPx(associatedRowName, end);
19
- temp.addRect("".concat(index), s, e, rowHeight, feature);
20
- }
21
- else {
22
- var s = model.globalBpToPx(start - 1);
23
- var e = model.globalBpToPx(end);
24
- temp.addRect("".concat(index), s, e, rowHeight, feature);
25
- }
26
- });
27
- return temp;
28
- }, [rowHeight, feats, associatedRowName, model, blanks]);
29
- var ref = useRef(null);
30
- var labelRef = useRef(null);
31
- var mouseoverRef = useRef(null);
32
- useEffect(function () {
33
- if (!ref.current) {
34
- return;
35
- }
36
- var ctx = ref.current.getContext('2d');
37
- if (!ctx) {
38
- return;
39
- }
40
- ctx.resetTransform();
41
- ctx.scale(highResScaleFactor, highResScaleFactor);
42
- ctx.clearRect(0, 0, blockSize, height);
43
- ctx.translate(-offsetX, 0);
44
- ctx.textAlign = 'center';
45
- ctx.font = ctx.font.replace(/\d+px/, "".concat(Math.max(8, rowHeight - 8), "px"));
46
- var xStart = Math.max(0, Math.floor(offsetX / colWidth));
47
- ctx.fillStyle = 'goldenrod';
48
- layout.rectangles.forEach(function (value) {
49
- var minX = value.minX, maxX = value.maxX, minY = value.minY, maxY = value.maxY;
50
- var x1 = (minX - xStart) * colWidth + offsetX - (offsetX % colWidth);
51
- var x2 = (maxX - xStart) * colWidth + offsetX - (offsetX % colWidth);
52
- if (x2 - x1 > 0) {
53
- ctx.fillRect(x1, minY, x2 - x1, (maxY - minY) / 2);
54
- }
55
- });
56
- }, [
57
- associatedRowName,
58
- blockSize,
59
- colWidth,
60
- layout.rectangles,
61
- model,
62
- rowHeight,
63
- height,
64
- offsetX,
65
- highResScaleFactor,
66
- features,
67
- blanks,
68
- ]);
69
- useEffect(function () {
70
- if (!labelRef.current) {
71
- return;
72
- }
73
- var ctx = labelRef.current.getContext('2d');
74
- if (!ctx) {
75
- return;
76
- }
77
- // this logic is very similar to MSACanvas
78
- ctx.resetTransform();
79
- ctx.scale(highResScaleFactor, highResScaleFactor);
80
- ctx.clearRect(0, 0, blockSize, height);
81
- ctx.translate(-offsetX, 0);
82
- ctx.textAlign = 'center';
83
- ctx.font = ctx.font.replace(/\d+px/, "".concat(Math.max(8, rowHeight - 8), "px"));
84
- ctx.fillStyle = 'black';
85
- ctx.textAlign = 'left';
86
- layout.rectangles.forEach(function (value) {
87
- var _a, _b, _c, _d;
88
- var minX = value.minX, maxX = value.maxX, maxY = value.maxY, minY = value.minY;
89
- var feature = value.data;
90
- var x1 = minX * colWidth;
91
- var x2 = maxX * colWidth;
92
- if (x2 - x1 > 0) {
93
- var note = (_b = (_a = feature.attributes) === null || _a === void 0 ? void 0 : _a.Note) === null || _b === void 0 ? void 0 : _b[0];
94
- var name_1 = (_d = (_c = feature.attributes) === null || _c === void 0 ? void 0 : _c.Name) === null || _d === void 0 ? void 0 : _d[0];
95
- var type = feature.type;
96
- ctx.fillText([type, name_1, note].filter(function (f) { return !!f; }).join(' - '), Math.max(Math.min(-scrollX, x2), x1), minY + (maxY - minY));
97
- }
98
- });
99
- }, [
100
- blockSize,
101
- colWidth,
102
- scrollX,
103
- highResScaleFactor,
104
- height,
105
- layout.rectangles,
106
- offsetX,
107
- features,
108
- model,
109
- rowHeight,
110
- blanks,
111
- ]);
112
- return !features ? null : (React.createElement(React.Fragment, null,
113
- React.createElement("canvas", { ref: ref, height: height * highResScaleFactor, width: blockSize * highResScaleFactor, style: {
114
- position: 'absolute',
115
- left: scrollX + offsetX,
116
- width: blockSize,
117
- height: height,
118
- } }),
119
- React.createElement("canvas", { ref: labelRef, height: height * highResScaleFactor, width: blockSize * highResScaleFactor, style: {
120
- position: 'absolute',
121
- left: scrollX + offsetX,
122
- width: blockSize,
123
- height: height,
124
- } }),
125
- React.createElement("canvas", { ref: mouseoverRef, height: height * highResScaleFactor, width: blockSize * highResScaleFactor, style: {
126
- position: 'absolute',
127
- left: scrollX + offsetX,
128
- width: blockSize,
129
- height: height,
130
- } })));
131
- });
132
- var AnnotationTrack = observer(function (_a) {
133
- var model = _a.model, track = _a.track;
134
- var blocksX = model.blocksX, msaAreaWidth = model.msaAreaWidth;
135
- var height = track.model.height;
3
+ import BoxTrackBlock from './BoxTrackBlock';
4
+ const BoxTrack = observer(function ({ model, track, }) {
5
+ const { blocksX, msaAreaWidth } = model;
6
+ const { height } = track.model;
136
7
  return (React.createElement("div", { style: {
137
8
  position: 'relative',
138
- height: height,
9
+ height,
139
10
  width: msaAreaWidth,
140
11
  overflow: 'hidden',
141
- } }, blocksX.map(function (bx) { return (React.createElement(AnnotationBlock, { track: track, key: bx, model: model, offsetX: bx })); })));
12
+ } }, blocksX.map(bx => (React.createElement(BoxTrackBlock, { track: track, key: bx, model: model, offsetX: bx })))));
142
13
  });
143
- export default AnnotationTrack;
14
+ export default BoxTrack;
15
+ //# sourceMappingURL=BoxTrack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoxTrack.js","sourceRoot":"","sources":["../../src/components/BoxTrack.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAIrC,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAE3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,EAClC,KAAK,EACL,KAAK,GAIN;IACC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,KAAK,CAAA;IACvC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAA;IAC9B,OAAO,CACL,6BACE,KAAK,EAAE;YACL,QAAQ,EAAE,UAAU;YACpB,MAAM;YACN,KAAK,EAAE,YAAY;YACnB,QAAQ,EAAE,QAAQ;SACnB,IAEA,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CACjB,oBAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAI,CACpE,CAAC,CACE,CACP,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,QAAQ,CAAA"}
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { IBoxTrack, MsaViewModel } from '../model';
3
+ declare const BoxTrackBlock: ({ track, model, offsetX, }: {
4
+ track: IBoxTrack;
5
+ model: MsaViewModel;
6
+ offsetX: number;
7
+ }) => React.JSX.Element | null;
8
+ export default BoxTrackBlock;
@@ -0,0 +1,136 @@
1
+ import React, { useRef, useMemo, useEffect } from 'react';
2
+ import { observer } from 'mobx-react';
3
+ import { getSnapshot, isStateTreeNode } from 'mobx-state-tree';
4
+ import Layout from '../layout';
5
+ const BoxTrackBlock = observer(function ({ track, model, offsetX, }) {
6
+ const { blockSize, colWidth, blanks, rowHeight, highResScaleFactor, scrollX, } = model;
7
+ const { height, features, associatedRowName } = track.model;
8
+ const feats = isStateTreeNode(features)
9
+ ? // @ts-expect-error
10
+ getSnapshot(features)
11
+ : features;
12
+ const layout = useMemo(() => {
13
+ const temp = new Layout();
14
+ feats === null || feats === void 0 ? void 0 : feats.forEach((feature, index) => {
15
+ const { start, end } = feature;
16
+ if (associatedRowName) {
17
+ const s = model.rowSpecificBpToPx(associatedRowName, start - 1);
18
+ const e = model.rowSpecificBpToPx(associatedRowName, end);
19
+ temp.addRect(`${index}`, s, e, rowHeight, feature);
20
+ }
21
+ else {
22
+ const s = model.globalBpToPx(start - 1);
23
+ const e = model.globalBpToPx(end);
24
+ temp.addRect(`${index}`, s, e, rowHeight, feature);
25
+ }
26
+ });
27
+ return temp;
28
+ // might convert to autorun based drawing
29
+ // eslint-disable-next-line react-hooks/exhaustive-deps
30
+ }, [rowHeight, feats, associatedRowName, model, blanks]);
31
+ const ref = useRef(null);
32
+ const labelRef = useRef(null);
33
+ const mouseoverRef = useRef(null);
34
+ useEffect(() => {
35
+ if (!ref.current) {
36
+ return;
37
+ }
38
+ const ctx = ref.current.getContext('2d');
39
+ if (!ctx) {
40
+ return;
41
+ }
42
+ ctx.resetTransform();
43
+ ctx.scale(highResScaleFactor, highResScaleFactor);
44
+ ctx.clearRect(0, 0, blockSize, height);
45
+ ctx.translate(-offsetX, 0);
46
+ ctx.textAlign = 'center';
47
+ ctx.font = ctx.font.replace(/\d+px/, `${Math.max(8, rowHeight - 8)}px`);
48
+ const xStart = Math.max(0, Math.floor(offsetX / colWidth));
49
+ ctx.fillStyle = 'goldenrod';
50
+ layout.rectangles.forEach(value => {
51
+ const { minX, maxX, minY, maxY } = value;
52
+ const x1 = (minX - xStart) * colWidth + offsetX - (offsetX % colWidth);
53
+ const x2 = (maxX - xStart) * colWidth + offsetX - (offsetX % colWidth);
54
+ if (x2 - x1 > 0) {
55
+ ctx.fillRect(x1, minY, x2 - x1, (maxY - minY) / 2);
56
+ }
57
+ });
58
+ }, [
59
+ associatedRowName,
60
+ blockSize,
61
+ colWidth,
62
+ layout.rectangles,
63
+ model,
64
+ rowHeight,
65
+ height,
66
+ offsetX,
67
+ highResScaleFactor,
68
+ features,
69
+ blanks,
70
+ ]);
71
+ useEffect(() => {
72
+ var _a, _b, _c, _d;
73
+ if (!labelRef.current) {
74
+ return;
75
+ }
76
+ const ctx = labelRef.current.getContext('2d');
77
+ if (!ctx) {
78
+ return;
79
+ }
80
+ // this logic is very similar to MSACanvas
81
+ ctx.resetTransform();
82
+ ctx.scale(highResScaleFactor, highResScaleFactor);
83
+ ctx.clearRect(0, 0, blockSize, height);
84
+ ctx.translate(-offsetX, 0);
85
+ ctx.textAlign = 'center';
86
+ ctx.font = ctx.font.replace(/\d+px/, `${Math.max(8, rowHeight - 8)}px`);
87
+ ctx.fillStyle = 'black';
88
+ ctx.textAlign = 'left';
89
+ for (const value of layout.rectangles.values()) {
90
+ const { minX, maxX, maxY, minY, data } = value;
91
+ const x1 = minX * colWidth;
92
+ const x2 = maxX * colWidth;
93
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
94
+ const feature = data;
95
+ if (x2 - x1 > 0) {
96
+ const note = (_b = (_a = feature.attributes) === null || _a === void 0 ? void 0 : _a.Note) === null || _b === void 0 ? void 0 : _b[0];
97
+ const name = (_d = (_c = feature.attributes) === null || _c === void 0 ? void 0 : _c.Name) === null || _d === void 0 ? void 0 : _d[0];
98
+ const type = feature.type;
99
+ ctx.fillText([type, name, note].filter(f => !!f).join(' - '), Math.max(Math.min(-scrollX, x2), x1), minY + (maxY - minY));
100
+ }
101
+ }
102
+ }, [
103
+ blockSize,
104
+ colWidth,
105
+ scrollX,
106
+ highResScaleFactor,
107
+ height,
108
+ layout.rectangles,
109
+ offsetX,
110
+ features,
111
+ model,
112
+ rowHeight,
113
+ blanks,
114
+ ]);
115
+ return !features ? null : (React.createElement(React.Fragment, null,
116
+ React.createElement("canvas", { ref: ref, height: height * highResScaleFactor, width: blockSize * highResScaleFactor, style: {
117
+ position: 'absolute',
118
+ left: scrollX + offsetX,
119
+ width: blockSize,
120
+ height,
121
+ } }),
122
+ React.createElement("canvas", { ref: labelRef, height: height * highResScaleFactor, width: blockSize * highResScaleFactor, style: {
123
+ position: 'absolute',
124
+ left: scrollX + offsetX,
125
+ width: blockSize,
126
+ height,
127
+ } }),
128
+ React.createElement("canvas", { ref: mouseoverRef, height: height * highResScaleFactor, width: blockSize * highResScaleFactor, style: {
129
+ position: 'absolute',
130
+ left: scrollX + offsetX,
131
+ width: blockSize,
132
+ height,
133
+ } })));
134
+ });
135
+ export default BoxTrackBlock;
136
+ //# sourceMappingURL=BoxTrackBlock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BoxTrackBlock.js","sourceRoot":"","sources":["../../src/components/BoxTrackBlock.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAI9D,OAAO,MAAM,MAAM,WAAW,CAAA;AAO9B,MAAM,aAAa,GAAG,QAAQ,CAAC,UAAU,EACvC,KAAK,EACL,KAAK,EACL,OAAO,GAKR;IACC,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,MAAM,EACN,SAAS,EACT,kBAAkB,EAClB,OAAO,GACR,GAAG,KAAK,CAAA;IACT,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAC,KAAK,CAAA;IAE3D,MAAM,KAAK,GAAW,eAAe,CAAC,QAAQ,CAAC;QAC7C,CAAC,CAAC,mBAAmB;YACnB,WAAW,CAAC,QAAQ,CAAC;QACvB,CAAC,CAAC,QAAQ,CAAA;IAEZ,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1B,MAAM,IAAI,GAAG,IAAI,MAAM,EAAE,CAAA;QAEzB,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,OAAO,CAAA;YAC9B,IAAI,iBAAiB,EAAE;gBACrB,MAAM,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;gBAC/D,MAAM,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAA;gBACzD,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;aACnD;iBAAM;gBACL,MAAM,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;gBACvC,MAAM,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;gBACjC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;aACnD;QACH,CAAC,CAAC,CAAA;QACF,OAAO,IAAI,CAAA;QAEX,yCAAyC;QACzC,uDAAuD;IACzD,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;IAExD,MAAM,GAAG,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAA;IAC3C,MAAM,QAAQ,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAA;IAChD,MAAM,YAAY,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAA;IAEpD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,OAAM;SACP;QAED,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,GAAG,EAAE;YACR,OAAM;SACP;QAED,GAAG,CAAC,cAAc,EAAE,CAAA;QACpB,GAAG,CAAC,KAAK,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAA;QACjD,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QACtC,GAAG,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;QAC1B,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAA;QACxB,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;QAEvE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAA;QAC1D,GAAG,CAAC,SAAS,GAAG,WAAW,CAAA;QAC3B,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAChC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;YAExC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,QAAQ,GAAG,OAAO,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAA;YACtE,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,QAAQ,GAAG,OAAO,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,CAAA;YAEtE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;gBACf,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;aACnD;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE;QACD,iBAAiB;QACjB,SAAS;QACT,QAAQ;QACR,MAAM,CAAC,UAAU;QACjB,KAAK;QACL,SAAS;QACT,MAAM;QACN,OAAO;QACP,kBAAkB;QAClB,QAAQ;QACR,MAAM;KACP,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;;QACb,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;YACrB,OAAM;SACP;QAED,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC7C,IAAI,CAAC,GAAG,EAAE;YACR,OAAM;SACP;QAED,0CAA0C;QAC1C,GAAG,CAAC,cAAc,EAAE,CAAA;QACpB,GAAG,CAAC,KAAK,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAA;QACjD,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QACtC,GAAG,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;QAC1B,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAA;QACxB,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;QAEvE,GAAG,CAAC,SAAS,GAAG,OAAO,CAAA;QACvB,GAAG,CAAC,SAAS,GAAG,MAAM,CAAA;QACtB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE;YAC9C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;YAE9C,MAAM,EAAE,GAAG,IAAI,GAAG,QAAQ,CAAA;YAC1B,MAAM,EAAE,GAAG,IAAI,GAAG,QAAQ,CAAA;YAC1B,8DAA8D;YAC9D,MAAM,OAAO,GAAG,IAAW,CAAA;YAE3B,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;gBACf,MAAM,IAAI,GAAG,MAAA,MAAA,OAAO,CAAC,UAAU,0CAAE,IAAI,0CAAG,CAAC,CAAC,CAAA;gBAC1C,MAAM,IAAI,GAAG,MAAA,MAAA,OAAO,CAAC,UAAU,0CAAE,IAAI,0CAAG,CAAC,CAAC,CAAA;gBAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;gBACzB,GAAG,CAAC,QAAQ,CACV,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EACpC,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CACrB,CAAA;aACF;SACF;IACH,CAAC,EAAE;QACD,SAAS;QACT,QAAQ;QACR,OAAO;QACP,kBAAkB;QAClB,MAAM;QACN,MAAM,CAAC,UAAU;QACjB,OAAO;QACP,QAAQ;QACR,KAAK;QACL,SAAS;QACT,MAAM;KACP,CAAC,CAAA;IAEF,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACxB;QACE,gCACE,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,GAAG,kBAAkB,EACnC,KAAK,EAAE,SAAS,GAAG,kBAAkB,EACrC,KAAK,EAAE;gBACL,QAAQ,EAAE,UAAU;gBACpB,IAAI,EAAE,OAAO,GAAG,OAAO;gBACvB,KAAK,EAAE,SAAS;gBAChB,MAAM;aACP,GACD;QACF,gCACE,GAAG,EAAE,QAAQ,EACb,MAAM,EAAE,MAAM,GAAG,kBAAkB,EACnC,KAAK,EAAE,SAAS,GAAG,kBAAkB,EACrC,KAAK,EAAE;gBACL,QAAQ,EAAE,UAAU;gBACpB,IAAI,EAAE,OAAO,GAAG,OAAO;gBACvB,KAAK,EAAE,SAAS;gBAChB,MAAM;aACP,GACD;QACF,gCACE,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,MAAM,GAAG,kBAAkB,EACnC,KAAK,EAAE,SAAS,GAAG,kBAAkB,EACrC,KAAK,EAAE;gBACL,QAAQ,EAAE,UAAU;gBACpB,IAAI,EAAE,OAAO,GAAG,OAAO;gBACvB,KAAK,EAAE,SAAS;gBAChB,MAAM;aACP,GACD,CACD,CACJ,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,aAAa,CAAA"}
@@ -1,6 +1,6 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { MsaViewModel } from '../model';
3
3
  declare const Header: ({ model }: {
4
4
  model: MsaViewModel;
5
- }) => JSX.Element;
5
+ }) => React.JSX.Element;
6
6
  export default Header;