react-msaview 8.2.0 → 8.4.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.
- package/bundle/index.js +77 -300
- package/bundle/index.js.map +4 -4
- package/dist/blockFasta.d.ts +6 -0
- package/dist/blockFasta.js +12 -0
- package/dist/blockFasta.js.map +1 -0
- package/dist/colorSchemes.d.ts +7 -0
- package/dist/colorSchemes.js +15 -0
- package/dist/colorSchemes.js.map +1 -1
- package/dist/columnCounts.d.ts +4 -3
- package/dist/columnCounts.js +11 -6
- package/dist/columnCounts.js.map +1 -1
- package/dist/components/CopyButton.d.ts +1 -1
- package/dist/components/CopyButton.js +1 -1
- package/dist/components/CopyButton.js.map +1 -1
- package/dist/components/DragHandle.js +14 -2
- package/dist/components/DragHandle.js.map +1 -1
- package/dist/components/Loading.js +10 -11
- package/dist/components/Loading.js.map +1 -1
- package/dist/components/MSAView.js +15 -9
- package/dist/components/MSAView.js.map +1 -1
- package/dist/components/MSAViewer.d.ts +39 -7
- package/dist/components/MSAViewer.js +72 -22
- package/dist/components/MSAViewer.js.map +1 -1
- package/dist/components/MetadataTable.d.ts +5 -0
- package/dist/components/MetadataTable.js +29 -0
- package/dist/components/MetadataTable.js.map +1 -0
- package/dist/components/SequenceTextArea.d.ts +11 -0
- package/dist/components/SequenceTextArea.js +40 -8
- package/dist/components/SequenceTextArea.js.map +1 -1
- package/dist/components/StatusMessage.d.ts +12 -0
- package/dist/components/StatusMessage.js +43 -0
- package/dist/components/StatusMessage.js.map +1 -0
- package/dist/components/Track.js +13 -4
- package/dist/components/Track.js.map +1 -1
- package/dist/components/VerticalScrollbar.js +6 -1
- package/dist/components/VerticalScrollbar.js.map +1 -1
- package/dist/components/dialogs/ExportSVGDialog.d.ts +3 -2
- package/dist/components/dialogs/ExportSVGDialog.js +4 -2
- package/dist/components/dialogs/ExportSVGDialog.js.map +1 -1
- package/dist/components/dialogs/FeatureDialog.js +15 -10
- package/dist/components/dialogs/FeatureDialog.js.map +1 -1
- package/dist/components/dialogs/MetadataDialog.js +5 -6
- package/dist/components/dialogs/MetadataDialog.js.map +1 -1
- package/dist/components/getVisibleLeaves.d.ts +1 -1
- package/dist/components/header/ColorSchemeMenu.d.ts +6 -0
- package/dist/components/header/ColorSchemeMenu.js +23 -5
- package/dist/components/header/ColorSchemeMenu.js.map +1 -1
- package/dist/components/header/FileMenu.js +9 -0
- package/dist/components/header/FileMenu.js.map +1 -1
- package/dist/components/header/GappynessSlider.js +15 -3
- package/dist/components/header/GappynessSlider.js.map +1 -1
- package/dist/components/header/{HeaderStatusArea.d.ts → GoToBox.d.ts} +2 -2
- package/dist/components/header/GoToBox.js +21 -0
- package/dist/components/header/GoToBox.js.map +1 -0
- package/dist/components/header/Header.js +8 -7
- package/dist/components/header/Header.js.map +1 -1
- package/dist/components/header/SelectionMenu.d.ts +12 -0
- package/dist/components/header/SelectionMenu.js +72 -0
- package/dist/components/header/SelectionMenu.js.map +1 -0
- package/dist/components/header/goTo.d.ts +20 -0
- package/dist/components/header/goTo.js +69 -0
- package/dist/components/header/goTo.js.map +1 -0
- package/dist/components/header/settingsMenuItems.js +57 -1
- package/dist/components/header/settingsMenuItems.js.map +1 -1
- package/dist/components/import/ImportForm.js +10 -4
- package/dist/components/import/ImportForm.js.map +1 -1
- package/dist/components/import/ImportFormExamples.js +19 -27
- package/dist/components/import/ImportFormExamples.js.map +1 -1
- package/dist/components/minimap/Minimap.js +6 -1
- package/dist/components/minimap/Minimap.js.map +1 -1
- package/dist/components/msa/AnnotationLegend.js +11 -5
- package/dist/components/msa/AnnotationLegend.js.map +1 -1
- package/dist/components/msa/MSACanvas.js +17 -1
- package/dist/components/msa/MSACanvas.js.map +1 -1
- package/dist/components/msa/MSACanvasBlock.js +6 -6
- package/dist/components/msa/MSACanvasBlock.js.map +1 -1
- package/dist/components/msa/msaKeys.d.ts +5 -0
- package/dist/components/msa/msaKeys.js +41 -0
- package/dist/components/msa/msaKeys.js.map +1 -0
- package/dist/components/msa/msaRaster.js +1 -0
- package/dist/components/msa/msaRaster.js.map +1 -1
- package/dist/components/msa/renderHighlights.d.ts +14 -3
- package/dist/components/msa/renderHighlights.js +29 -4
- package/dist/components/msa/renderHighlights.js.map +1 -1
- package/dist/components/msa/tileColor.js +9 -8
- package/dist/components/msa/tileColor.js.map +1 -1
- package/dist/components/msa/useMsaBlockMouse.d.ts +2 -4
- package/dist/components/msa/useMsaBlockMouse.js +34 -14
- package/dist/components/msa/useMsaBlockMouse.js.map +1 -1
- package/dist/components/overlayColors.d.ts +2 -0
- package/dist/components/overlayColors.js +3 -0
- package/dist/components/overlayColors.js.map +1 -1
- package/dist/components/rowpanels/RowPanelBlock.js +10 -14
- package/dist/components/rowpanels/RowPanelBlock.js.map +1 -1
- package/dist/components/selectionDrag.d.ts +17 -0
- package/dist/components/selectionDrag.js +30 -0
- package/dist/components/selectionDrag.js.map +1 -0
- package/dist/components/tracks/drawTracks.d.ts +1 -0
- package/dist/components/tracks/drawTracks.js +14 -2
- package/dist/components/tracks/drawTracks.js.map +1 -1
- package/dist/components/tracks/useTrackHover.d.ts +4 -6
- package/dist/components/tracks/useTrackHover.js +30 -10
- package/dist/components/tracks/useTrackHover.js.map +1 -1
- package/dist/components/tree/ScaleBarSVG.d.ts +14 -0
- package/dist/components/tree/ScaleBarSVG.js +11 -0
- package/dist/components/tree/ScaleBarSVG.js.map +1 -0
- package/dist/components/tree/TreeCanvas.js +8 -26
- package/dist/components/tree/TreeCanvas.js.map +1 -1
- package/dist/components/tree/TreeCanvasBlock.js +11 -20
- package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
- package/dist/components/tree/{TreeBranchMenu.d.ts → TreeMenu.d.ts} +5 -4
- package/dist/components/tree/TreeMenu.js +48 -0
- package/dist/components/tree/TreeMenu.js.map +1 -0
- package/dist/components/tree/TreeRuler.js +3 -3
- package/dist/components/tree/TreeRuler.js.map +1 -1
- package/dist/components/tree/dialogs/TreeNodeInfoDialog.js +9 -8
- package/dist/components/tree/dialogs/TreeNodeInfoDialog.js.map +1 -1
- package/dist/components/tree/renderTreeCanvas.js +19 -9
- package/dist/components/tree/renderTreeCanvas.js.map +1 -1
- package/dist/components/tree/renderTreeMouseover.d.ts +5 -0
- package/dist/components/tree/renderTreeMouseover.js +20 -0
- package/dist/components/tree/renderTreeMouseover.js.map +1 -0
- package/dist/components/tree/useTreeHover.d.ts +3 -8
- package/dist/components/tree/useTreeHover.js +8 -10
- package/dist/components/tree/useTreeHover.js.map +1 -1
- package/dist/components/useHoverAnchor.d.ts +19 -0
- package/dist/components/useHoverAnchor.js +18 -0
- package/dist/components/useHoverAnchor.js.map +1 -0
- package/dist/constants.d.ts +3 -0
- package/dist/constants.js +12 -3
- package/dist/constants.js.map +1 -1
- package/dist/element.d.ts +7 -3
- package/dist/element.js +32 -4
- package/dist/element.js.map +1 -1
- package/dist/expandSpec.js +3 -3
- package/dist/expandSpec.js.map +1 -1
- package/dist/exportFileName.d.ts +3 -3
- package/dist/exportFileName.js +4 -4
- package/dist/exportFileName.js.map +1 -1
- package/dist/featuresLayer.d.ts +8 -0
- package/dist/featuresLayer.js +42 -0
- package/dist/featuresLayer.js.map +1 -0
- package/dist/hierarchy.d.ts +51 -0
- package/dist/hierarchy.js +125 -0
- package/dist/hierarchy.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/model/DataModel.d.ts +1 -1
- package/dist/model/DataModel.js +3 -3
- package/dist/model/DataModel.js.map +1 -1
- package/dist/model/msaModel.d.ts +14 -1
- package/dist/model/msaModel.js +17 -1
- package/dist/model/msaModel.js.map +1 -1
- package/dist/model/treeModel.d.ts +12 -0
- package/dist/model/treeModel.js +14 -1
- package/dist/model/treeModel.js.map +1 -1
- package/dist/model.d.ts +285 -53
- package/dist/model.js +693 -231
- package/dist/model.js.map +1 -1
- package/dist/renderToSvg.js +2 -4
- package/dist/renderToSvg.js.map +1 -1
- package/dist/rerootTree.d.ts +33 -0
- package/dist/rerootTree.js +144 -0
- package/dist/rerootTree.js.map +1 -0
- package/dist/svgTestUtil.d.ts +172 -26
- package/dist/types.d.ts +75 -12
- package/dist/useMsaSvgFigure.d.ts +2 -1
- package/dist/useMsaSvgFigure.js +11 -4
- package/dist/useMsaSvgFigure.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/writeNewick.d.ts +8 -0
- package/dist/writeNewick.js +34 -0
- package/dist/writeNewick.js.map +1 -0
- package/package.json +3 -3
- package/src/blockFasta.ts +18 -0
- package/src/colorSchemes.ts +20 -0
- package/src/columnCounts.ts +14 -6
- package/src/components/CopyButton.tsx +2 -2
- package/src/components/DragHandle.tsx +21 -1
- package/src/components/Loading.tsx +14 -30
- package/src/components/MSAView.tsx +16 -9
- package/src/components/MSAViewer.tsx +121 -26
- package/src/components/MetadataTable.tsx +55 -0
- package/src/components/SequenceTextArea.tsx +54 -8
- package/src/components/StatusMessage.tsx +70 -0
- package/src/components/Track.tsx +21 -4
- package/src/components/VerticalScrollbar.tsx +7 -0
- package/src/components/dialogs/ExportSVGDialog.tsx +5 -2
- package/src/components/dialogs/FeatureDialog.tsx +59 -38
- package/src/components/dialogs/MetadataDialog.tsx +9 -8
- package/src/components/header/ColorSchemeMenu.tsx +31 -12
- package/src/components/header/FileMenu.tsx +9 -0
- package/src/components/header/GappynessSlider.tsx +17 -4
- package/src/components/header/GoToBox.tsx +50 -0
- package/src/components/header/Header.tsx +11 -8
- package/src/components/header/SelectionMenu.tsx +117 -0
- package/src/components/header/goTo.ts +75 -0
- package/src/components/header/settingsMenuItems.ts +66 -0
- package/src/components/import/ImportForm.tsx +14 -7
- package/src/components/import/ImportFormExamples.tsx +20 -28
- package/src/components/minimap/Minimap.tsx +7 -0
- package/src/components/msa/AnnotationLegend.tsx +12 -6
- package/src/components/msa/MSACanvas.tsx +19 -1
- package/src/components/msa/MSACanvasBlock.tsx +9 -11
- package/src/components/msa/msaKeys.ts +45 -0
- package/src/components/msa/msaRaster.ts +1 -0
- package/src/components/msa/renderHighlights.ts +46 -4
- package/src/components/msa/tileColor.ts +9 -8
- package/src/components/msa/useMsaBlockMouse.ts +44 -31
- package/src/components/overlayColors.ts +4 -0
- package/src/components/rowpanels/RowPanelBlock.tsx +16 -23
- package/src/components/selectionDrag.ts +42 -0
- package/src/components/tracks/drawTracks.ts +15 -2
- package/src/components/tracks/useTrackHover.ts +32 -10
- package/src/components/tree/ScaleBarSVG.tsx +30 -0
- package/src/components/tree/TreeCanvas.tsx +9 -40
- package/src/components/tree/TreeCanvasBlock.tsx +19 -39
- package/src/components/tree/TreeMenu.tsx +129 -0
- package/src/components/tree/TreeRuler.tsx +7 -13
- package/src/components/tree/dialogs/TreeNodeInfoDialog.tsx +14 -16
- package/src/components/tree/renderTreeCanvas.ts +20 -8
- package/src/components/tree/renderTreeMouseover.ts +41 -0
- package/src/components/tree/useTreeHover.ts +8 -17
- package/src/components/useHoverAnchor.ts +31 -0
- package/src/constants.ts +14 -3
- package/src/element.ts +45 -5
- package/src/expandSpec.ts +3 -3
- package/src/exportFileName.ts +4 -3
- package/src/featuresLayer.ts +48 -0
- package/src/hierarchy.ts +151 -4
- package/src/index.ts +8 -1
- package/src/model/DataModel.ts +3 -3
- package/src/model/msaModel.ts +19 -1
- package/src/model/treeModel.ts +22 -0
- package/src/model.ts +841 -272
- package/src/renderToSvg.tsx +6 -9
- package/src/rerootTree.ts +172 -0
- package/src/types.ts +92 -12
- package/src/useMsaSvgFigure.ts +11 -4
- package/src/version.ts +1 -1
- package/src/writeNewick.ts +38 -0
- package/dist/components/PortalTooltip.d.ts +0 -11
- package/dist/components/PortalTooltip.js +0 -29
- package/dist/components/PortalTooltip.js.map +0 -1
- package/dist/components/header/HeaderStatusArea.js +0 -21
- package/dist/components/header/HeaderStatusArea.js.map +0 -1
- package/dist/components/tree/TreeBranchMenu.js +0 -29
- package/dist/components/tree/TreeBranchMenu.js.map +0 -1
- package/dist/components/tree/TreeNodeMenu.d.ts +0 -13
- package/dist/components/tree/TreeNodeMenu.js +0 -41
- package/dist/components/tree/TreeNodeMenu.js.map +0 -1
- package/src/components/PortalTooltip.tsx +0 -47
- package/src/components/header/HeaderStatusArea.tsx +0 -32
- package/src/components/tree/TreeBranchMenu.tsx +0 -68
- package/src/components/tree/TreeNodeMenu.tsx +0 -95
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FASTA for a block of the alignment: each row's letters from column `start`
|
|
3
|
+
* to `end`, 1-based and inclusive, under its name. Gaps stay in, and a row that
|
|
4
|
+
* ends before `end` is padded with gaps, so every record is the block's width.
|
|
5
|
+
*/
|
|
6
|
+
export declare function blockFasta(rows: readonly (readonly [string, string])[], start: number, end: number): string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FASTA for a block of the alignment: each row's letters from column `start`
|
|
3
|
+
* to `end`, 1-based and inclusive, under its name. Gaps stay in, and a row that
|
|
4
|
+
* ends before `end` is padded with gaps, so every record is the block's width.
|
|
5
|
+
*/
|
|
6
|
+
export function blockFasta(rows, start, end) {
|
|
7
|
+
const width = Math.max(0, end - start + 1);
|
|
8
|
+
return rows
|
|
9
|
+
.map(([name, seq]) => `>${name}\n${seq.slice(start - 1, end).padEnd(width, '-')}\n`)
|
|
10
|
+
.join('');
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=blockFasta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blockFasta.js","sourceRoot":"","sources":["../src/blockFasta.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,IAA4C,EAC5C,KAAa,EACb,GAAW;IAEX,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,CAAA;IAC1C,OAAO,IAAI;SACR,GAAG,CACF,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,CACd,IAAI,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAChE;SACA,IAAI,CAAC,EAAE,CAAC,CAAA;AACb,CAAC"}
|
package/dist/colorSchemes.d.ts
CHANGED
|
@@ -2,3 +2,10 @@ declare const _default: {
|
|
|
2
2
|
[k: string]: Record<string, string>;
|
|
3
3
|
};
|
|
4
4
|
export default _default;
|
|
5
|
+
/**
|
|
6
|
+
* A letter map as the renderer looks letters up. The model upper-cases every
|
|
7
|
+
* row before coloring it, so a table keys its letters in upper case and a map
|
|
8
|
+
* may key them in either. The table is cached per map, so its identity is
|
|
9
|
+
* stable enough for the raster cache to key on.
|
|
10
|
+
*/
|
|
11
|
+
export declare function letterColorTable(map: Record<string, string>): Record<string, string>;
|
package/dist/colorSchemes.js
CHANGED
|
@@ -343,4 +343,19 @@ export default transform(colorSchemes, ([key, val]) => [
|
|
|
343
343
|
key,
|
|
344
344
|
transform(val, ([letter, color]) => [letter, colord(color).toHex()]),
|
|
345
345
|
]);
|
|
346
|
+
const letterTables = new WeakMap();
|
|
347
|
+
/**
|
|
348
|
+
* A letter map as the renderer looks letters up. The model upper-cases every
|
|
349
|
+
* row before coloring it, so a table keys its letters in upper case and a map
|
|
350
|
+
* may key them in either. The table is cached per map, so its identity is
|
|
351
|
+
* stable enough for the raster cache to key on.
|
|
352
|
+
*/
|
|
353
|
+
export function letterColorTable(map) {
|
|
354
|
+
let table = letterTables.get(map);
|
|
355
|
+
if (!table) {
|
|
356
|
+
table = transform(map, ([letter, color]) => [letter.toUpperCase(), color]);
|
|
357
|
+
letterTables.set(map, table);
|
|
358
|
+
}
|
|
359
|
+
return table;
|
|
360
|
+
}
|
|
346
361
|
//# sourceMappingURL=colorSchemes.js.map
|
package/dist/colorSchemes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorSchemes.js","sourceRoot":"","sources":["../src/colorSchemes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"colorSchemes.js","sourceRoot":"","sources":["../src/colorSchemes.ts"],"names":[],"mappings":"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"}
|
package/dist/columnCounts.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare class ColumnCounts {
|
|
|
5
5
|
readonly totals: Uint32Array;
|
|
6
6
|
private readonly slotTotals;
|
|
7
7
|
constructor(numColumns: number);
|
|
8
|
+
/** tallies a row, counting the columns past a short row's end as gaps */
|
|
8
9
|
addRow(row: string): void;
|
|
9
10
|
add(col: number, letter: string): void;
|
|
10
11
|
total(col: number): number;
|
|
@@ -32,10 +33,10 @@ export declare function residueSlotOfLetter(letter: string): number;
|
|
|
32
33
|
export declare const numResidueSlots = 32;
|
|
33
34
|
/**
|
|
34
35
|
* Tally counts from alignment rows (gapped sequence strings, one per row). The
|
|
35
|
-
* column count
|
|
36
|
-
*
|
|
36
|
+
* column count defaults to the longest row, and a shorter row counts as gapped
|
|
37
|
+
* to the end.
|
|
37
38
|
*/
|
|
38
|
-
export declare function columnCountsFromRows(rows: string[]): ColumnCounts;
|
|
39
|
+
export declare function columnCountsFromRows(rows: string[], numColumns?: number): ColumnCounts;
|
|
39
40
|
/**
|
|
40
41
|
* Tally counts from column strings (one string per column, listing that
|
|
41
42
|
* column's residues top to bottom). Convenient for tests and for callers that
|
package/dist/columnCounts.js
CHANGED
|
@@ -52,15 +52,21 @@ export class ColumnCounts {
|
|
|
52
52
|
this.counts = new Uint32Array(numColumns * SLOTS);
|
|
53
53
|
this.totals = new Uint32Array(numColumns);
|
|
54
54
|
}
|
|
55
|
+
/** tallies a row, counting the columns past a short row's end as gaps */
|
|
55
56
|
addRow(row) {
|
|
56
|
-
const { counts, totals, slotTotals } = this;
|
|
57
|
-
const n = Math.min(row.length,
|
|
57
|
+
const { counts, totals, slotTotals, numColumns } = this;
|
|
58
|
+
const n = Math.min(row.length, numColumns);
|
|
58
59
|
for (let col = 0; col < n; col++) {
|
|
59
60
|
const slot = slotOf(row.charCodeAt(col));
|
|
60
61
|
counts[col * SLOTS + slot]++;
|
|
61
62
|
totals[col]++;
|
|
62
63
|
slotTotals[slot]++;
|
|
63
64
|
}
|
|
65
|
+
for (let col = n; col < numColumns; col++) {
|
|
66
|
+
counts[col * SLOTS + DASH]++;
|
|
67
|
+
totals[col]++;
|
|
68
|
+
}
|
|
69
|
+
slotTotals[DASH] += numColumns - n;
|
|
64
70
|
}
|
|
65
71
|
add(col, letter) {
|
|
66
72
|
const slot = slotOf(letter.charCodeAt(0));
|
|
@@ -138,11 +144,10 @@ export function residueSlotOfLetter(letter) {
|
|
|
138
144
|
export const numResidueSlots = SLOTS;
|
|
139
145
|
/**
|
|
140
146
|
* Tally counts from alignment rows (gapped sequence strings, one per row). The
|
|
141
|
-
* column count
|
|
142
|
-
*
|
|
147
|
+
* column count defaults to the longest row, and a shorter row counts as gapped
|
|
148
|
+
* to the end.
|
|
143
149
|
*/
|
|
144
|
-
export function columnCountsFromRows(rows) {
|
|
145
|
-
const numColumns = rows.reduce((max, row) => Math.max(max, row.length), 0);
|
|
150
|
+
export function columnCountsFromRows(rows, numColumns = rows.reduce((max, row) => Math.max(max, row.length), 0)) {
|
|
146
151
|
const counts = new ColumnCounts(numColumns);
|
|
147
152
|
for (const row of rows) {
|
|
148
153
|
counts.addRow(row);
|
package/dist/columnCounts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnCounts.js","sourceRoot":"","sources":["../src/columnCounts.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"columnCounts.js","sourceRoot":"","sources":["../src/columnCounts.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ export default function CopyButton({ text, label = 'Copy to clipboard', }) {
|
|
|
12
12
|
clearTimeout(timer.current);
|
|
13
13
|
}, []);
|
|
14
14
|
return (React.createElement(Button, { variant: "contained", color: "primary", onClick: () => {
|
|
15
|
-
copy(text);
|
|
15
|
+
copy(typeof text === 'string' ? text : text());
|
|
16
16
|
setCopied(true);
|
|
17
17
|
clearTimeout(timer.current);
|
|
18
18
|
timer.current = setTimeout(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../../src/components/CopyButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEtC,OAAO,IAAI,MAAM,8BAA8B,CAAA;AAE/C;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,IAAI,EACJ,KAAK,GAAG,mBAAmB,GAI5B;IACC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAgC,SAAS,CAAC,CAAA;IAE9D,SAAS,CACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC7B,CAAC,EACD,EAAE,CACH,CAAA;IAED,OAAO,CACL,oBAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,CAAC,IAAI,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../../src/components/CopyButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEtC,OAAO,IAAI,MAAM,8BAA8B,CAAA;AAE/C;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,IAAI,EACJ,KAAK,GAAG,mBAAmB,GAI5B;IACC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,MAAM,CAAgC,SAAS,CAAC,CAAA;IAE9D,SAAS,CACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAC7B,CAAC,EACD,EAAE,CACH,CAAA;IAED,OAAO,CACL,oBAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;YAC9C,SAAS,CAAC,IAAI,CAAC,CAAA;YACf,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC3B,KAAK,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC9B,SAAS,CAAC,KAAK,CAAC,CAAA;YAClB,CAAC,EAAE,GAAG,CAAC,CAAA;QACT,CAAC,IAEA,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CACpB,CACV,CAAA;AACH,CAAC"}
|
|
@@ -2,6 +2,9 @@ import React, { useState } from 'react';
|
|
|
2
2
|
import { useTheme } from '@mui/material';
|
|
3
3
|
import { useDragScroll } from '../useDragScroll.js';
|
|
4
4
|
export const scrollbarThumbFill = 'rgba(66,119,127,0.3)';
|
|
5
|
+
// the model's resizeHandleWidth feeds the layout, so a divider keeps its drawn
|
|
6
|
+
// width and widens its target with this much invisible margin each side
|
|
7
|
+
const hitSlop = 4;
|
|
5
8
|
// The scroll thumbs (minimap, vertical scrollbar) and the resize dividers are
|
|
6
9
|
// one widget -- press, drag along an axis, report the pixel delta -- differing
|
|
7
10
|
// only in the affordance they present, so the variant carries the whole
|
|
@@ -38,7 +41,10 @@ export default function DragHandle({ axis, variant, getStart, onDrag, style, })
|
|
|
38
41
|
const [hovered, setHovered] = useState(false);
|
|
39
42
|
const { startDrag } = useDragScroll(axis, onDrag);
|
|
40
43
|
const { fill, fillHovered, cursor, position, zIndex } = variants[variant];
|
|
41
|
-
return (React.createElement("div", {
|
|
44
|
+
return (React.createElement("div", { ...(variant === 'resizer' && {
|
|
45
|
+
role: 'separator',
|
|
46
|
+
'aria-orientation': axis === 'x' ? 'vertical' : 'horizontal',
|
|
47
|
+
}), onMouseEnter: () => {
|
|
42
48
|
setHovered(true);
|
|
43
49
|
}, onMouseLeave: () => {
|
|
44
50
|
setHovered(false);
|
|
@@ -50,6 +56,12 @@ export default function DragHandle({ axis, variant, getStart, onDrag, style, })
|
|
|
50
56
|
cursor: cursor(axis),
|
|
51
57
|
background: hovered ? fillHovered(theme) : fill(theme),
|
|
52
58
|
...style,
|
|
53
|
-
} }
|
|
59
|
+
} }, variant === 'resizer' ? (React.createElement("div", { style: {
|
|
60
|
+
position: 'absolute',
|
|
61
|
+
zIndex: 101,
|
|
62
|
+
...(axis === 'x'
|
|
63
|
+
? { top: 0, bottom: 0, left: -hitSlop, right: -hitSlop }
|
|
64
|
+
: { left: 0, right: 0, top: -hitSlop, bottom: -hitSlop }),
|
|
65
|
+
} })) : null));
|
|
54
66
|
}
|
|
55
67
|
//# sourceMappingURL=DragHandle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DragHandle.js","sourceRoot":"","sources":["../../src/components/DragHandle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAInD,MAAM,CAAC,MAAM,kBAAkB,GAAG,sBAAsB,CAAA;AAExD,8EAA8E;AAC9E,+EAA+E;AAC/E,wEAAwE;AACxE,2DAA2D;AAC3D,MAAM,QAAQ,GASV;IACF,KAAK,EAAE;QACL,IAAI,EAAE,GAAG,EAAE,CAAC,kBAAkB;QAC9B,WAAW,EAAE,GAAG,EAAE,CAAC,sBAAsB;QACzC,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS;QACvB,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,GAAG;KACZ;IACD,OAAO,EAAE;QACP,IAAI,EAAE,KAAK,CAAC,EAAE,CACZ,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;YAC3B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;YACzB,CAAC,CAAC,mBAAmB;QACzB,WAAW,EAAE,KAAK,CAAC,EAAE,CACnB,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;YAC3B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;YACzB,CAAC,CAAC,mBAAmB;QACzB,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;QAC1D,QAAQ,EAAE,UAAU;KACrB;CACF,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,MAAM,EACN,KAAK,GAON;IACC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACjD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;IAEzE,OAAO,CACL,
|
|
1
|
+
{"version":3,"file":"DragHandle.js","sourceRoot":"","sources":["../../src/components/DragHandle.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { ErrorMessage } from '@jbrowse/core/ui';
|
|
3
3
|
import { ErrorBoundary } from '@jbrowse/core/ui/ErrorBoundary';
|
|
4
|
-
import { Button
|
|
4
|
+
import { Button } from '@mui/material';
|
|
5
5
|
import { observer } from 'mobx-react';
|
|
6
6
|
import MSAView from './MSAView.js';
|
|
7
|
+
import StatusMessage from './StatusMessage.js';
|
|
7
8
|
import ImportForm from './import/ImportForm.js';
|
|
8
|
-
const LoadingSpinner = observer(function ({ model }) {
|
|
9
|
-
const { status } = model;
|
|
10
|
-
return (React.createElement("div", { style: { display: 'flex', alignItems: 'center', gap: 12, padding: 20 } },
|
|
11
|
-
React.createElement(CircularProgress, { size: 24 }),
|
|
12
|
-
React.createElement(Typography, { variant: "h6" }, status?.msg ?? 'Loading...'),
|
|
13
|
-
status?.onCancel ? (React.createElement(Button, { variant: "outlined", size: "small", onClick: () => status.onCancel?.() }, "Cancel")) : null));
|
|
14
|
-
});
|
|
15
9
|
const Reset = observer(function ({ model, error, }) {
|
|
16
10
|
return (React.createElement("div", null,
|
|
17
11
|
React.createElement(ErrorMessage, { error: error }),
|
|
@@ -20,9 +14,14 @@ const Reset = observer(function ({ model, error, }) {
|
|
|
20
14
|
} }, "Return to import form")));
|
|
21
15
|
});
|
|
22
16
|
const Loading = observer(function ({ model }) {
|
|
23
|
-
const { isLoading, dataInitialized, error, resetCount, msaFilehandle, treeFilehandle, } = model;
|
|
24
|
-
const
|
|
25
|
-
|
|
17
|
+
const { isLoading, dataInitialized, data, error, resetCount, msaFilehandle, treeFilehandle, } = model;
|
|
18
|
+
const hasData = !!(data.msa || data.tree);
|
|
19
|
+
// a failed load keeps its filehandle, so the error outranks the spinner
|
|
20
|
+
const loading = !error && !!(msaFilehandle || treeFilehandle || isLoading);
|
|
21
|
+
return (React.createElement("div", null, React.createElement(ErrorBoundary, { key: resetCount, FallbackComponent: e => React.createElement(Reset, { model: model, error: e.error }) }, dataInitialized ? (isLoading ? (React.createElement(StatusMessage, { model: model, variant: "page" })) : (React.createElement(MSAView, { model: model }))) : hasData ? (React.createElement(Reset, { model: model, error: error })) : (React.createElement(React.Fragment, null,
|
|
22
|
+
loading ? React.createElement(StatusMessage, { model: model, variant: "page" }) : null,
|
|
23
|
+
React.createElement("div", { style: { display: loading ? 'none' : undefined } },
|
|
24
|
+
React.createElement(ImportForm, { model: model })))))));
|
|
26
25
|
});
|
|
27
26
|
export default Loading;
|
|
28
27
|
//# sourceMappingURL=Loading.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Loading.js","sourceRoot":"","sources":["../../src/components/Loading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"Loading.js","sourceRoot":"","sources":["../../src/components/Loading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,OAAO,MAAM,cAAe,CAAA;AACnC,OAAO,aAAa,MAAM,oBAAqB,CAAA;AAC/C,OAAO,UAAU,MAAM,wBAAyB,CAAA;AAIhD,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,EAC/B,KAAK,EACL,KAAK,GAIN;IACC,OAAO,CACL;QACE,oBAAC,YAAY,IAAC,KAAK,EAAE,KAAK,GAAI;QAC9B,oBAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,GAAG,EAAE;gBACZ,KAAK,CAAC,KAAK,EAAE,CAAA;YACf,CAAC,4BAGM,CACL,CACP,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,KAAK,EAA2B;IACnE,MAAM,EACJ,SAAS,EACT,eAAe,EACf,IAAI,EACJ,KAAK,EACL,UAAU,EACV,aAAa,EACb,cAAc,GACf,GAAG,KAAK,CAAA;IACT,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAA;IACzC,wEAAwE;IACxE,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,aAAa,IAAI,cAAc,IAAI,SAAS,CAAC,CAAA;IAE1E,OAAO,CACL,iCAIE,oBAAC,aAAa,IACZ,GAAG,EAAE,UAAU,EACf,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,oBAAC,KAAK,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,GAAI,IAE9D,eAAe,CAAC,CAAC,CAAC,CACjB,SAAS,CAAC,CAAC,CAAC,CACV,oBAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAC,MAAM,GAAG,CAC/C,CAAC,CAAC,CAAC,CACF,oBAAC,OAAO,IAAC,KAAK,EAAE,KAAK,GAAI,CAC1B,CACF,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACZ,oBAAC,KAAK,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAI,CACtC,CAAC,CAAC,CAAC,CACF;QACG,OAAO,CAAC,CAAC,CAAC,oBAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI;QAChE,6BAAK,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE;YACnD,oBAAC,UAAU,IAAC,KAAK,EAAE,KAAK,GAAI,CACxB,CACL,CACJ,CACa,CACZ,CACP,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,OAAO,CAAA"}
|
|
@@ -6,7 +6,7 @@ import VerticalScrollbar from './VerticalScrollbar.js';
|
|
|
6
6
|
import Header from './header/Header.js';
|
|
7
7
|
import Minimap from './minimap/Minimap.js';
|
|
8
8
|
import MSAPanel from './msa/MSAPanel.js';
|
|
9
|
-
import { clickColor, hoverColor } from './overlayColors.js';
|
|
9
|
+
import { clickColor, hoverColor, selectionFill } from './overlayColors.js';
|
|
10
10
|
import RowPanelHeaders from './rowpanels/RowPanelHeaders.js';
|
|
11
11
|
import RowPanels from './rowpanels/RowPanels.js';
|
|
12
12
|
import TreeOverview from './tree/TreeOverview.js';
|
|
@@ -26,11 +26,17 @@ const TopArea = observer(function ({ model }) {
|
|
|
26
26
|
showHorizontalScrollbar ? React.createElement(Minimap, { model: model }) : null));
|
|
27
27
|
});
|
|
28
28
|
const TrackColumnIndicator = observer(function ({ model, }) {
|
|
29
|
-
const { mouseCol, mouseClickCol, colWidth, scrollX, treeAreaWidth, rowPanelsWidth, resizeHandleWidth, totalTrackAreaHeight, msaCanvasWidth, } = model;
|
|
30
|
-
// hovered column, then the pinned one, matching
|
|
29
|
+
const { mouseCol, mouseClickCol, colWidth, scrollX, treeAreaWidth, rowPanelsWidth, resizeHandleWidth, totalTrackAreaHeight, msaCanvasWidth, resolvedSelection, } = model;
|
|
30
|
+
// the selected columns, the hovered column, then the pinned one, matching
|
|
31
|
+
// the alignment's own overlay
|
|
31
32
|
const bands = [
|
|
32
|
-
{
|
|
33
|
-
|
|
33
|
+
{
|
|
34
|
+
start: resolvedSelection?.startCol,
|
|
35
|
+
end: resolvedSelection?.endCol,
|
|
36
|
+
color: selectionFill,
|
|
37
|
+
},
|
|
38
|
+
{ start: mouseCol, end: mouseCol, color: hoverColor },
|
|
39
|
+
{ start: mouseClickCol, end: mouseClickCol, color: clickColor },
|
|
34
40
|
];
|
|
35
41
|
return (React.createElement("div", { style: {
|
|
36
42
|
position: 'absolute',
|
|
@@ -40,11 +46,11 @@ const TrackColumnIndicator = observer(function ({ model, }) {
|
|
|
40
46
|
height: totalTrackAreaHeight,
|
|
41
47
|
overflow: 'hidden',
|
|
42
48
|
pointerEvents: 'none',
|
|
43
|
-
} }, bands.map(({
|
|
49
|
+
} }, bands.map(({ start, end, color }) => start === undefined || end === undefined ? null : (React.createElement("div", { key: color, style: {
|
|
44
50
|
position: 'absolute',
|
|
45
|
-
left:
|
|
51
|
+
left: start * colWidth + scrollX,
|
|
46
52
|
top: 0,
|
|
47
|
-
width: colWidth,
|
|
53
|
+
width: (end - start + 1) * colWidth,
|
|
48
54
|
height: totalTrackAreaHeight,
|
|
49
55
|
backgroundColor: color,
|
|
50
56
|
zIndex: 100,
|
|
@@ -77,7 +83,7 @@ const View = observer(function ({ model }) {
|
|
|
77
83
|
const MSAView = observer(function ({ model }) {
|
|
78
84
|
const { height, hideHeader, viewInitialized, DialogComponent, DialogProps } = model;
|
|
79
85
|
return (React.createElement("div", null, viewInitialized ? (React.createElement(React.Fragment, null,
|
|
80
|
-
React.createElement("div", { style: { height, overflow: '
|
|
86
|
+
React.createElement("div", { style: { height, overflow: 'clip' } },
|
|
81
87
|
hideHeader ? null : React.createElement(Header, { model: model }),
|
|
82
88
|
React.createElement(View, { model: model })),
|
|
83
89
|
React.createElement(HorizontalResizeHandle, { model: model }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MSAView.js","sourceRoot":"","sources":["../../src/components/MSAView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,OAAO,EACL,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,oBAAqB,CAAA;AAC5B,OAAO,KAAK,MAAM,YAAa,CAAA;AAC/B,OAAO,iBAAiB,MAAM,wBAAyB,CAAA;AACvD,OAAO,MAAM,MAAM,oBAAqB,CAAA;AACxC,OAAO,OAAO,MAAM,sBAAuB,CAAA;AAC3C,OAAO,QAAQ,MAAM,mBAAoB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"MSAView.js","sourceRoot":"","sources":["../../src/components/MSAView.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { MsaViewModel } from '../model.ts';
|
|
3
|
-
import type { Cell, Clade, ColumnTrackSpec, Encoding, Highlight, Region, ResidueEncoding, ResidueMapping, RowPanelSpec, Viewport } from '../types.ts';
|
|
3
|
+
import type { Cell, Clade, ColorScheme, ColumnTrackSpec, Encoding, Feature, Highlight, MsaSelection, Region, ResidueEncoding, ResidueMapping, RowDataInput, RowPanelSpec, TreeOrder, TreeRoot, Viewport } from '../types.ts';
|
|
4
4
|
import type { FileLocation as FileLocationType } from '@jbrowse/core/util/types';
|
|
5
5
|
import type { ThemeOptions } from '@mui/material/styles';
|
|
6
6
|
export interface MSAViewerProps {
|
|
@@ -10,7 +10,11 @@ export interface MSAViewerProps {
|
|
|
10
10
|
msaFilehandle?: FileLocationType;
|
|
11
11
|
treeFilehandle?: FileLocationType;
|
|
12
12
|
gffFilehandle?: FileLocationType;
|
|
13
|
-
|
|
13
|
+
/**
|
|
14
|
+
* a scheme name from the built-in table, or `{map}`, a color per residue
|
|
15
|
+
* letter that leaves every other letter uncolored
|
|
16
|
+
*/
|
|
17
|
+
colorScheme?: ColorScheme;
|
|
14
18
|
height?: number;
|
|
15
19
|
/** initial per-column pixel width (zoom level) */
|
|
16
20
|
colWidth?: number;
|
|
@@ -28,6 +32,13 @@ export interface MSAViewerProps {
|
|
|
28
32
|
* for whole rows, each with an optional `label` and `color`
|
|
29
33
|
*/
|
|
30
34
|
highlights?: Highlight[];
|
|
35
|
+
/**
|
|
36
|
+
* features on the rows as data, drawn with the GFF's: `{row, start, end}` in
|
|
37
|
+
* residues of that row, 1-based and inclusive, with an optional `name`,
|
|
38
|
+
* `description`, `type`, `strand` and `color`, and any other field an
|
|
39
|
+
* encoding reads (see docs/layers.md)
|
|
40
|
+
*/
|
|
41
|
+
features?: Feature[];
|
|
31
42
|
/**
|
|
32
43
|
* clades of the tree with a mark drawn over them: `{mrca, tips, mark}` or
|
|
33
44
|
* `{range, tips, mark}`, where `mark` is `highlight`, `bracket`, `collapse`
|
|
@@ -41,7 +52,7 @@ export interface MSAViewerProps {
|
|
|
41
52
|
/** which residue of which structure each row's residues are (see docs/layers.md) */
|
|
42
53
|
residueMappings?: ResidueMapping[];
|
|
43
54
|
/** extra fields per row name, such as a lineage or a host (see docs/layers.md) */
|
|
44
|
-
rowData?:
|
|
55
|
+
rowData?: RowDataInput;
|
|
45
56
|
/**
|
|
46
57
|
* what the viewer's marks read from a table: `{channel, field, scale?}`,
|
|
47
58
|
* where `channel` is `tipLabel`, `rowTint` or `branch` over `rowData`, or
|
|
@@ -62,6 +73,17 @@ export interface MSAViewerProps {
|
|
|
62
73
|
autoTreeAreaWidth?: boolean;
|
|
63
74
|
/** draw branch lengths (default true); false draws a cladogram */
|
|
64
75
|
showBranchLen?: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* the order each node's children draw in: `branchLength` (default,
|
|
78
|
+
* shortest first), `input` (as the file gives them), `ladderize` (fewest
|
|
79
|
+
* tips first) or `ladderizeReverse` (most tips first)
|
|
80
|
+
*/
|
|
81
|
+
treeOrder?: TreeOrder;
|
|
82
|
+
/**
|
|
83
|
+
* reroot the tree: `midpoint`, or `{outgroup: [tip names]}` on the branch
|
|
84
|
+
* above those tips' common ancestor
|
|
85
|
+
*/
|
|
86
|
+
treeRoot?: TreeRoot;
|
|
65
87
|
/**
|
|
66
88
|
* which channel `colorScheme` paints: `fill` (default) colors the background
|
|
67
89
|
* of the cell a residue sits in, `color` colors the letter itself and leaves
|
|
@@ -75,6 +97,11 @@ export interface MSAViewerProps {
|
|
|
75
97
|
* in columns, 1-based and inclusive
|
|
76
98
|
*/
|
|
77
99
|
region?: Region;
|
|
100
|
+
/**
|
|
101
|
+
* the selected block: `{start, end}` columns of the file, 1-based and
|
|
102
|
+
* inclusive, and `rows` by name, every row where absent
|
|
103
|
+
*/
|
|
104
|
+
selection?: MsaSelection;
|
|
78
105
|
/** leave out the toolbar, for a page drawing its own controls */
|
|
79
106
|
hideHeader?: boolean;
|
|
80
107
|
/**
|
|
@@ -88,15 +115,20 @@ export interface MSAViewerProps {
|
|
|
88
115
|
onCellClick?: (cell: Cell | undefined) => void;
|
|
89
116
|
/** the alignment columns on screen, after every scroll, zoom and resize */
|
|
90
117
|
onViewportChange?: (viewport: Viewport | undefined) => void;
|
|
118
|
+
/**
|
|
119
|
+
* the selected block, after each change a drag, the header menu, Escape or
|
|
120
|
+
* the `selection` prop makes, or undefined when it clears
|
|
121
|
+
*/
|
|
122
|
+
onSelectionChange?: (selection: MsaSelection | undefined) => void;
|
|
91
123
|
/**
|
|
92
124
|
* the model the viewer built, for the model API; called again with the new
|
|
93
|
-
* model when msa, tree,
|
|
125
|
+
* model when msa, tree, msaFilehandle or treeFilehandle changes
|
|
94
126
|
*/
|
|
95
127
|
onModel?: (model: MsaViewModel) => void;
|
|
96
128
|
}
|
|
97
129
|
/**
|
|
98
|
-
* A new alignment
|
|
99
|
-
*
|
|
100
|
-
*
|
|
130
|
+
* A new alignment or tree needs a new model, so the viewer remounts when one
|
|
131
|
+
* of those props changes and keeps its model across every other change,
|
|
132
|
+
* including a new annotation file.
|
|
101
133
|
*/
|
|
102
134
|
export default function MSAViewer(props: MSAViewerProps): React.JSX.Element;
|