react-msaview 8.1.0 → 8.3.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 +104 -117
- package/bundle/index.js.map +4 -4
- 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/MSAViewer.d.ts +12 -1
- package/dist/components/MSAViewer.js +12 -1
- package/dist/components/MSAViewer.js.map +1 -1
- 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 +3 -3
- 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/getVisibleLeaves.d.ts +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/Header.js +6 -7
- package/dist/components/header/Header.js.map +1 -1
- package/dist/components/header/{HeaderStatusArea.d.ts → RowSearch.d.ts} +2 -2
- package/dist/components/header/RowSearch.js +15 -0
- package/dist/components/header/RowSearch.js.map +1 -0
- package/dist/components/header/revealRow.d.ts +3 -0
- package/dist/components/header/revealRow.js +15 -0
- package/dist/components/header/revealRow.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 +6 -1
- package/dist/components/msa/MSACanvas.js.map +1 -1
- package/dist/components/msa/MSACanvasBlock.js +3 -7
- package/dist/components/msa/MSACanvasBlock.js.map +1 -1
- package/dist/components/msa/msaKeys.d.ts +5 -0
- package/dist/components/msa/msaKeys.js +35 -0
- package/dist/components/msa/msaKeys.js.map +1 -0
- package/dist/components/msa/useMsaBlockMouse.d.ts +2 -4
- package/dist/components/msa/useMsaBlockMouse.js +18 -5
- package/dist/components/msa/useMsaBlockMouse.js.map +1 -1
- package/dist/components/rowpanels/RowPanelBlock.js +10 -14
- package/dist/components/rowpanels/RowPanelBlock.js.map +1 -1
- 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 +1 -5
- package/dist/components/tracks/useTrackHover.js +5 -5
- 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/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 +4 -1
- package/dist/constants.js +12 -3
- package/dist/constants.js.map +1 -1
- package/dist/expandSpec.d.ts +46 -0
- package/dist/expandSpec.js +127 -0
- package/dist/expandSpec.js.map +1 -0
- package/dist/exportFileName.d.ts +3 -3
- package/dist/exportFileName.js +4 -4
- package/dist/exportFileName.js.map +1 -1
- 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 +4 -2
- package/dist/index.js +2 -0
- package/dist/index.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 +188 -47
- package/dist/model.js +482 -192
- 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 +114 -20
- package/dist/types.d.ts +25 -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/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/MSAViewer.tsx +26 -0
- package/src/components/SequenceTextArea.tsx +54 -8
- package/src/components/StatusMessage.tsx +70 -0
- package/src/components/Track.tsx +8 -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/header/FileMenu.tsx +9 -0
- package/src/components/header/GappynessSlider.tsx +17 -4
- package/src/components/header/Header.tsx +7 -8
- package/src/components/header/RowSearch.tsx +34 -0
- package/src/components/header/revealRow.ts +17 -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 +8 -0
- package/src/components/msa/MSACanvasBlock.tsx +5 -11
- package/src/components/msa/msaKeys.ts +39 -0
- package/src/components/msa/useMsaBlockMouse.ts +23 -7
- package/src/components/rowpanels/RowPanelBlock.tsx +16 -23
- package/src/components/tracks/drawTracks.ts +15 -2
- package/src/components/tracks/useTrackHover.ts +5 -5
- 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/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/expandSpec.ts +196 -0
- package/src/exportFileName.ts +4 -3
- package/src/hierarchy.ts +151 -4
- package/src/index.ts +11 -1
- package/src/model/treeModel.ts +22 -0
- package/src/model.ts +588 -221
- package/src/renderToSvg.tsx +6 -9
- package/src/rerootTree.ts +172 -0
- package/src/types.ts +34 -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,144 @@
|
|
|
1
|
+
function preorder(root) {
|
|
2
|
+
const order = [];
|
|
3
|
+
const parents = new Map();
|
|
4
|
+
const stack = [root];
|
|
5
|
+
while (stack.length > 0) {
|
|
6
|
+
const node = stack.pop();
|
|
7
|
+
order.push(node);
|
|
8
|
+
for (const child of (node.children ?? [])) {
|
|
9
|
+
parents.set(child, node);
|
|
10
|
+
stack.push(child);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
return { order, parents };
|
|
14
|
+
}
|
|
15
|
+
function hasLengths(order) {
|
|
16
|
+
return order.some(n => n.length !== undefined);
|
|
17
|
+
}
|
|
18
|
+
// the root's two children make one branch of the unrooted tree, which is the
|
|
19
|
+
// branch a rerooting at either of them splits
|
|
20
|
+
function mergedSibling(root, target) {
|
|
21
|
+
return root.children?.length === 2
|
|
22
|
+
? root.children.find(c => c !== target)
|
|
23
|
+
: undefined;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The tree rooted on the branch above `target`, `offset` up from it, or at the
|
|
27
|
+
* middle of that branch without one. Where the root has two children, their
|
|
28
|
+
* branches are one branch of the unrooted tree, and `offset` runs across both.
|
|
29
|
+
*
|
|
30
|
+
* The nodes between `target` and the old root turn over. A name on one of them
|
|
31
|
+
* labels the branch above it, which is where a support value sits, so the name
|
|
32
|
+
* follows that branch to the node now at its lower end. A two-child root has
|
|
33
|
+
* nothing left to split once one child leaves, so it drops out and its
|
|
34
|
+
* branches join.
|
|
35
|
+
*/
|
|
36
|
+
export function rerootTree(root, target, offset) {
|
|
37
|
+
const { order, parents } = preorder(root);
|
|
38
|
+
if (!parents.has(target)) {
|
|
39
|
+
return root;
|
|
40
|
+
}
|
|
41
|
+
const lengths = hasLengths(order);
|
|
42
|
+
const sibling = parents.get(target) === root ? mergedSibling(root, target) : undefined;
|
|
43
|
+
const branch = (target.length ?? 0) + (sibling?.length ?? 0);
|
|
44
|
+
const at = Math.min(Math.max(offset ?? branch / 2, 0), branch);
|
|
45
|
+
const length = (n) => (lengths ? n : undefined);
|
|
46
|
+
const path = [target];
|
|
47
|
+
for (let n = parents.get(target); n; n = parents.get(n)) {
|
|
48
|
+
path.push(n);
|
|
49
|
+
}
|
|
50
|
+
// Built from the old root down, so the node each turned node now hangs
|
|
51
|
+
// `above` it already exists. undefined where the old root dropped out.
|
|
52
|
+
let above;
|
|
53
|
+
for (let i = path.length - 1; i >= 1; i--) {
|
|
54
|
+
const node = path[i];
|
|
55
|
+
const below = path[i - 1];
|
|
56
|
+
const children = node.children.filter(c => c !== below);
|
|
57
|
+
if (above) {
|
|
58
|
+
children.push(above);
|
|
59
|
+
}
|
|
60
|
+
if (children.length === 0) {
|
|
61
|
+
above = undefined;
|
|
62
|
+
}
|
|
63
|
+
else if (i === path.length - 1 && children.length === 1) {
|
|
64
|
+
const only = children[0];
|
|
65
|
+
above = {
|
|
66
|
+
...only,
|
|
67
|
+
length: length((only.length ?? 0) + (below.length ?? 0) - (i === 1 ? at : 0)),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
above = {
|
|
72
|
+
...node,
|
|
73
|
+
name: i === 1 ? undefined : below.name,
|
|
74
|
+
children,
|
|
75
|
+
length: length((below.length ?? 0) - (i === 1 ? at : 0)),
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return {
|
|
80
|
+
children: [{ ...target, length: length(at) }, ...(above ? [above] : [])],
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* The tree rooted halfway along the longest path between two tips, which is
|
|
85
|
+
* where a clock would put the root: the usual choice for the unrooted tree
|
|
86
|
+
* FastTree, IQ-TREE or neighbor joining writes. A tree with no branch lengths
|
|
87
|
+
* counts branches.
|
|
88
|
+
*/
|
|
89
|
+
export function midpointRoot(root) {
|
|
90
|
+
const { order, parents } = preorder(root);
|
|
91
|
+
const tips = order.filter(n => !n.children?.length);
|
|
92
|
+
if (tips.length < 2) {
|
|
93
|
+
return root;
|
|
94
|
+
}
|
|
95
|
+
const lengths = hasLengths(order);
|
|
96
|
+
const weight = (n) => (lengths ? (n.length ?? 0) : 1);
|
|
97
|
+
// distance from `from` to every node over the unrooted tree, and the
|
|
98
|
+
// neighbor each was reached through
|
|
99
|
+
function reach(from) {
|
|
100
|
+
const dist = new Map([[from, 0]]);
|
|
101
|
+
const via = new Map();
|
|
102
|
+
const stack = [from];
|
|
103
|
+
while (stack.length > 0) {
|
|
104
|
+
const node = stack.pop();
|
|
105
|
+
const d = dist.get(node);
|
|
106
|
+
const parent = parents.get(node);
|
|
107
|
+
if (parent && !dist.has(parent)) {
|
|
108
|
+
dist.set(parent, d + weight(node));
|
|
109
|
+
via.set(parent, node);
|
|
110
|
+
stack.push(parent);
|
|
111
|
+
}
|
|
112
|
+
for (const child of (node.children ?? [])) {
|
|
113
|
+
if (!dist.has(child)) {
|
|
114
|
+
dist.set(child, d + weight(child));
|
|
115
|
+
via.set(child, node);
|
|
116
|
+
stack.push(child);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
return { dist, via };
|
|
121
|
+
}
|
|
122
|
+
function farthest(dist) {
|
|
123
|
+
return tips.reduce((best, tip) => dist.get(tip) > dist.get(best) ? tip : best);
|
|
124
|
+
}
|
|
125
|
+
const a = farthest(reach(tips[0]).dist);
|
|
126
|
+
const { dist, via } = reach(a);
|
|
127
|
+
const b = farthest(dist);
|
|
128
|
+
if (b === a) {
|
|
129
|
+
return root;
|
|
130
|
+
}
|
|
131
|
+
const half = dist.get(b) / 2;
|
|
132
|
+
let node = b;
|
|
133
|
+
let next = via.get(node);
|
|
134
|
+
while (dist.get(next) > half) {
|
|
135
|
+
node = next;
|
|
136
|
+
next = via.get(node);
|
|
137
|
+
}
|
|
138
|
+
// the midpoint lies on the branch between `node` and `next`, and whichever
|
|
139
|
+
// of them is the child carries that branch
|
|
140
|
+
return parents.get(node) === next
|
|
141
|
+
? rerootTree(root, node, dist.get(node) - half)
|
|
142
|
+
: rerootTree(root, next, half - dist.get(next));
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=rerootTree.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rerootTree.js","sourceRoot":"","sources":["../src/rerootTree.ts"],"names":[],"mappings":"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"}
|
package/dist/svgTestUtil.d.ts
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import MSAModelF from './model.ts';
|
|
2
2
|
type Snapshot = NonNullable<Parameters<ReturnType<typeof MSAModelF>['create']>[0]>;
|
|
3
3
|
export declare function installSvgTestEnv(contextExtras?: Partial<CanvasRenderingContext2D>): void;
|
|
4
|
-
export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?: number): import("@jbrowse/mobx-state-tree").ModelInstanceTypeProps<Omit<Omit<Omit<{}, "autoTreeAreaWidth" | "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeWidth"> & {
|
|
4
|
+
export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?: number): import("@jbrowse/mobx-state-tree").ModelInstanceTypeProps<Omit<Omit<Omit<{}, "autoTreeAreaWidth" | "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeOrder" | "treeWidth"> & {
|
|
5
5
|
drawLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
6
6
|
labelsAlignRight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
7
7
|
treeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
8
8
|
treeWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
9
9
|
showBranchLen: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
10
|
+
treeOrder: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<import("./types.ts").TreeOrder>, [undefined]>;
|
|
10
11
|
drawTree: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
11
12
|
drawNodeBubbles: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
12
13
|
drawNodeLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
@@ -18,7 +19,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
18
19
|
colorSchemeName: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
19
20
|
showColumnStats: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
20
21
|
msaFormat: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<import("msa-parsers").MSAFormat>>;
|
|
21
|
-
}, "allowedGappyness" | "clades" | "colWidth" | "collapsed" | "columnTracks" | "currentAlignment" | "data" | "drawMsaLetters" | "encodings" | "gffFilehandle" | "height" | "hideGaps" | "highlightColumns" | "highlights" | "id" | "msaFilehandle" | "relativeTo" | "residueMappings" | "rowHeight" | "rowPanels" | "scrollX" | "scrollY" | "scrollZoom" | "scrollZoomAxis" | "showDomainLegend" | "showDomains" | "showOnly" | "subFeatureRows" | "trackHeights" | "treeFilehandle" | "treeMetadataFilehandle" | "turnedOffFeatures" | "turnedOffTracks" | "type"> & {
|
|
22
|
+
}, "allowedGappyness" | "clades" | "colWidth" | "collapsed" | "columnTracks" | "currentAlignment" | "data" | "drawMsaLetters" | "encodings" | "gffFilehandle" | "height" | "hideGaps" | "highlightColumns" | "highlights" | "id" | "msaFilehandle" | "region" | "relativeTo" | "residueMappings" | "rotated" | "rowHeight" | "rowPanels" | "scrollX" | "scrollY" | "scrollZoom" | "scrollZoomAxis" | "showDomainLegend" | "showDomains" | "showOnly" | "subFeatureRows" | "trackHeights" | "treeFilehandle" | "treeMetadataFilehandle" | "treeRoot" | "turnedOffFeatures" | "turnedOffTracks" | "type"> & {
|
|
22
23
|
id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
23
24
|
showDomains: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
24
25
|
showDomainLegend: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
@@ -412,6 +413,8 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
412
413
|
}>, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
|
|
413
414
|
currentAlignment: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
414
415
|
collapsed: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").ISimpleType<string>>, [undefined]>;
|
|
416
|
+
rotated: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").ISimpleType<string>>, [undefined]>;
|
|
417
|
+
treeRoot: import("@jbrowse/mobx-state-tree").IType<import("./types.ts").TreeRoot | undefined, import("./types.ts").TreeRoot | undefined, import("./types.ts").TreeRoot | undefined>;
|
|
415
418
|
showOnly: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
416
419
|
turnedOffTracks: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>, [undefined]>;
|
|
417
420
|
trackHeights: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").ISimpleType<number>>, [undefined]>;
|
|
@@ -434,6 +437,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
434
437
|
relativeTo: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
435
438
|
highlightColumns: import("@jbrowse/mobx-state-tree").IType<number[] | undefined, number[] | undefined, number[] | undefined>;
|
|
436
439
|
highlights: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<import("./types.ts").Highlight, import("./types.ts").Highlight, import("./types.ts").Highlight>>, [undefined]>;
|
|
440
|
+
region: import("@jbrowse/mobx-state-tree").IType<import("./types.ts").Region | undefined, import("./types.ts").Region | undefined, import("./types.ts").Region | undefined>;
|
|
437
441
|
clades: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<import("./types.ts").Clade, import("./types.ts").Clade, import("./types.ts").Clade>>, [undefined]>;
|
|
438
442
|
encodings: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<import("./types.ts").Encoding, import("./types.ts").Encoding, import("./types.ts").Encoding>>, [undefined]>;
|
|
439
443
|
rowPanels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<import("./types.ts").RowPanelSpec, import("./types.ts").RowPanelSpec, import("./types.ts").RowPanelSpec>>, [undefined]>;
|
|
@@ -452,6 +456,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
452
456
|
setDrawTree(arg: boolean): void;
|
|
453
457
|
setAutoTreeAreaWidth(arg: boolean): void;
|
|
454
458
|
setShowBranchLen(arg: boolean): void;
|
|
459
|
+
setTreeOrder(order: import("./types.ts").TreeOrder): void;
|
|
455
460
|
setDrawNodeBubbles(arg: boolean): void;
|
|
456
461
|
setDrawNodeLabels(arg: boolean): void;
|
|
457
462
|
setShowTreeOverview(arg: boolean): void;
|
|
@@ -488,7 +493,8 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
488
493
|
minimapHeight: number;
|
|
489
494
|
marginLeft: number;
|
|
490
495
|
error: unknown;
|
|
491
|
-
|
|
496
|
+
loadWarnings: string[];
|
|
497
|
+
dismissedWarnings: string[];
|
|
492
498
|
resetCount: number;
|
|
493
499
|
hostCarriesData: boolean;
|
|
494
500
|
annotations: import("msa-parsers").Annotation[];
|
|
@@ -503,10 +509,10 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
503
509
|
setHeight(height: number): void;
|
|
504
510
|
setError(error?: unknown): void;
|
|
505
511
|
addWarning(warning: string): void;
|
|
506
|
-
clearWarnings(): void;
|
|
507
512
|
setHostCarriesData(arg: boolean): void;
|
|
508
513
|
setMousePos(col?: number, row?: number): void;
|
|
509
514
|
setHighlightedColumns(columns?: number[]): void;
|
|
515
|
+
setRegion(region?: import("./types.ts").Region): void;
|
|
510
516
|
setHighlights(highlights: import("./types.ts").Highlight[]): void;
|
|
511
517
|
setClades(clades: import("./types.ts").Clade[]): void;
|
|
512
518
|
applyHighlight(owner: string, highlights: import("./types.ts").Highlight[]): void;
|
|
@@ -519,6 +525,9 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
519
525
|
setColWidth(n: number): void;
|
|
520
526
|
setCurrentAlignment(n: number): void;
|
|
521
527
|
toggleCollapsed(node: string): void;
|
|
528
|
+
toggleRotated(node: string): void;
|
|
529
|
+
clearRotated(): void;
|
|
530
|
+
setTreeRoot(treeRoot?: import("./types.ts").TreeRoot): void;
|
|
522
531
|
setShowOnly(node?: string): void;
|
|
523
532
|
setData(data: {
|
|
524
533
|
msa?: string;
|
|
@@ -565,6 +574,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
565
574
|
readonly rowFields: string[];
|
|
566
575
|
readonly MSA: import("msa-parsers").MSAParserType | null;
|
|
567
576
|
readonly numColumns: number;
|
|
577
|
+
readonly inputTree: import("./types.ts").NodeWithIds;
|
|
568
578
|
readonly tree: import("./types.ts").NodeWithIds;
|
|
569
579
|
readonly rowNames: string[];
|
|
570
580
|
readonly rowNamesSet: Map<string, number>;
|
|
@@ -577,6 +587,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
577
587
|
letters: string;
|
|
578
588
|
} | undefined;
|
|
579
589
|
readonly root: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
|
|
590
|
+
readonly treeNewick: string;
|
|
580
591
|
readonly treeOverviewHeight: number;
|
|
581
592
|
readonly treeOverviewLayout: {
|
|
582
593
|
root: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
|
|
@@ -616,9 +627,14 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
616
627
|
readonly conservation: number[];
|
|
617
628
|
readonly alphabetMaxBits: number;
|
|
618
629
|
readonly propertyConservation: number[];
|
|
619
|
-
readonly
|
|
630
|
+
readonly treeLayout: {
|
|
631
|
+
root: import("./hierarchy.ts").LaidOutNode<import("./types.ts").NodeWithIds>;
|
|
632
|
+
leaves: import("./hierarchy.ts").LaidOutNode<import("./types.ts").NodeWithIds>[];
|
|
633
|
+
rootToTipLength: number;
|
|
634
|
+
};
|
|
635
|
+
readonly hierarchy: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
|
|
620
636
|
readonly totalHeight: number;
|
|
621
|
-
readonly leaves: import("./hierarchy.ts").HierarchyNode<import("./types.ts").
|
|
637
|
+
readonly leaves: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>[];
|
|
622
638
|
readonly rootToTipLength: number;
|
|
623
639
|
readonly maxBranchLength: number;
|
|
624
640
|
readonly pxPerBranchLength: number;
|
|
@@ -644,7 +660,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
644
660
|
readonly labelWidthScale: number;
|
|
645
661
|
readonly labelsWidth: number;
|
|
646
662
|
readonly secondaryStructureConsensus: string | undefined;
|
|
647
|
-
readonly seqConsensus: string | undefined;
|
|
648
663
|
readonly secondaryStructureArcs: import("./types.ts").Arc[] | undefined;
|
|
649
664
|
readonly adapterTrackModels: import("./types.ts").BasicTrack[];
|
|
650
665
|
readonly basePairTrackModels: import("./types.ts").BasicTrack[];
|
|
@@ -658,6 +673,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
658
673
|
globalColToVisibleCol(globalCol: number): number | undefined;
|
|
659
674
|
visibleColToGlobalCol(visibleCol: number): number;
|
|
660
675
|
seqPosToGlobalCol(rowName: string, seqPos: number): number | undefined;
|
|
676
|
+
seqEndToGlobalCol(rowName: string, seqPos: number): number | undefined;
|
|
661
677
|
seqPosToVisibleCol(rowName: string, seqPos: number): number | undefined;
|
|
662
678
|
visibleSpan({ row, start: rawStart, end: rawEnd }: import("./types.ts").Region): {
|
|
663
679
|
startCol: number;
|
|
@@ -690,19 +706,26 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
690
706
|
readonly blocksX: number[];
|
|
691
707
|
readonly blocksY: number[];
|
|
692
708
|
} & {
|
|
709
|
+
readonly verticalScrollbarWidth: 0 | 20;
|
|
710
|
+
readonly msaCanvasWidth: number;
|
|
711
|
+
readonly maxScrollX: number;
|
|
693
712
|
readonly blocks2d: (readonly [number, number])[];
|
|
694
713
|
readonly isLoading: boolean;
|
|
695
|
-
readonly
|
|
714
|
+
readonly dataWarnings: string[];
|
|
715
|
+
readonly warnings: string[];
|
|
696
716
|
readonly maxScrollY: number;
|
|
697
717
|
readonly wheelZoomAxis: import("./constants.ts").ScrollZoomAxis;
|
|
698
718
|
} & {
|
|
699
719
|
setDrawMsaLetters(arg: boolean): void;
|
|
720
|
+
clearWarnings(): void;
|
|
700
721
|
setScrollZoom(arg: boolean): void;
|
|
701
722
|
setScrollZoomAxis(arg: import("./constants.ts").ScrollZoomAxis): void;
|
|
702
723
|
setHoveredTreeNode(nodeId?: string): void;
|
|
703
724
|
calculateNeighborJoiningTreeFromMSA(): void;
|
|
725
|
+
rerootAt(nodeId: string): void;
|
|
704
726
|
replaceTree(newick: string): void;
|
|
705
727
|
resetZoom(): void;
|
|
728
|
+
zoomAtCenter(scaleFactor: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
|
|
706
729
|
zoomOutHorizontal(): void;
|
|
707
730
|
zoomInHorizontal(): void;
|
|
708
731
|
zoomInVertical(): void;
|
|
@@ -728,8 +751,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
728
751
|
onCancel?: () => void;
|
|
729
752
|
}): void;
|
|
730
753
|
} & {
|
|
731
|
-
readonly verticalScrollbarWidth: 0 | 20;
|
|
732
|
-
readonly msaCanvasWidth: number;
|
|
733
754
|
cellAt(visibleCol: number, rowIndex?: number): import("./types.ts").Cell;
|
|
734
755
|
readonly hoveredCell: import("./types.ts").Cell | undefined;
|
|
735
756
|
readonly clickedCell: import("./types.ts").Cell | undefined;
|
|
@@ -758,6 +779,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
758
779
|
start: number;
|
|
759
780
|
end: number;
|
|
760
781
|
}[];
|
|
782
|
+
fillHighlightLabel(label: string, row?: string, start?: number): string;
|
|
761
783
|
readonly resolvedHighlights: import("./types.ts").ResolvedHighlight[];
|
|
762
784
|
columnStatsAt(col: number): import("./columnStats.ts").ColumnStats | undefined;
|
|
763
785
|
getRowData(name: string): {
|
|
@@ -769,6 +791,26 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
769
791
|
rowData: Record<string, string> | undefined;
|
|
770
792
|
};
|
|
771
793
|
readonly resolvedEncodings: import("./types.ts").ResolvedEncoding[];
|
|
794
|
+
readonly rowPanelScales: ({
|
|
795
|
+
header: string;
|
|
796
|
+
legend: import("./types.ts").LegendEntry[];
|
|
797
|
+
legendTitle?: string;
|
|
798
|
+
kind: 'strip';
|
|
799
|
+
field: string;
|
|
800
|
+
colors: Map<string, string>;
|
|
801
|
+
} | {
|
|
802
|
+
header: string;
|
|
803
|
+
legend: import("./types.ts").LegendEntry[];
|
|
804
|
+
legendTitle?: string;
|
|
805
|
+
kind: 'features';
|
|
806
|
+
x: 'column' | 'position';
|
|
807
|
+
field?: string;
|
|
808
|
+
colors: Map<import("msa-parsers").Annotation, {
|
|
809
|
+
fill: string;
|
|
810
|
+
stroke: string;
|
|
811
|
+
}>;
|
|
812
|
+
labels?: Map<import("msa-parsers").Annotation, string>;
|
|
813
|
+
})[];
|
|
772
814
|
readonly resolvedRowPanels: import("./types.ts").ResolvedRowPanel[];
|
|
773
815
|
readonly featureAlignShifts: Map<string, Map<string, number>>;
|
|
774
816
|
readonly tipLabelColors: Map<string, string> | undefined;
|
|
@@ -781,18 +823,20 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
781
823
|
setTrackHeight(heightKey: string, height: number): void;
|
|
782
824
|
reset(): void;
|
|
783
825
|
exportSVG(opts: import("./renderToSvg.tsx").ExportSvgOptions): Promise<void>;
|
|
826
|
+
exportNewick(): void;
|
|
784
827
|
setFilter(accession: string, shown: boolean): void;
|
|
785
828
|
fit(): void;
|
|
786
829
|
fitVertically(): void;
|
|
787
830
|
zoomToRegion(region: import("./types.ts").Region): void;
|
|
788
831
|
fitHorizontally(): void;
|
|
789
832
|
afterCreate(): void;
|
|
790
|
-
} & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<Omit<Omit<Omit<{}, "autoTreeAreaWidth" | "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeWidth"> & {
|
|
833
|
+
} & import("@jbrowse/mobx-state-tree").IStateTreeNode<import("@jbrowse/mobx-state-tree").IModelType<Omit<Omit<Omit<{}, "autoTreeAreaWidth" | "drawLabels" | "drawNodeBubbles" | "drawNodeLabels" | "drawTree" | "labelsAlignRight" | "overviewHeight" | "showBranchLen" | "showTreeOverview" | "treeAreaWidth" | "treeOrder" | "treeWidth"> & {
|
|
791
834
|
drawLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
792
835
|
labelsAlignRight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
793
836
|
treeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
794
837
|
treeWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
795
838
|
showBranchLen: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
839
|
+
treeOrder: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<import("./types.ts").TreeOrder>, [undefined]>;
|
|
796
840
|
drawTree: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
797
841
|
drawNodeBubbles: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
798
842
|
drawNodeLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
@@ -804,7 +848,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
804
848
|
colorSchemeName: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
805
849
|
showColumnStats: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
806
850
|
msaFormat: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<import("msa-parsers").MSAFormat>>;
|
|
807
|
-
}, "allowedGappyness" | "clades" | "colWidth" | "collapsed" | "columnTracks" | "currentAlignment" | "data" | "drawMsaLetters" | "encodings" | "gffFilehandle" | "height" | "hideGaps" | "highlightColumns" | "highlights" | "id" | "msaFilehandle" | "relativeTo" | "residueMappings" | "rowHeight" | "rowPanels" | "scrollX" | "scrollY" | "scrollZoom" | "scrollZoomAxis" | "showDomainLegend" | "showDomains" | "showOnly" | "subFeatureRows" | "trackHeights" | "treeFilehandle" | "treeMetadataFilehandle" | "turnedOffFeatures" | "turnedOffTracks" | "type"> & {
|
|
851
|
+
}, "allowedGappyness" | "clades" | "colWidth" | "collapsed" | "columnTracks" | "currentAlignment" | "data" | "drawMsaLetters" | "encodings" | "gffFilehandle" | "height" | "hideGaps" | "highlightColumns" | "highlights" | "id" | "msaFilehandle" | "region" | "relativeTo" | "residueMappings" | "rotated" | "rowHeight" | "rowPanels" | "scrollX" | "scrollY" | "scrollZoom" | "scrollZoomAxis" | "showDomainLegend" | "showDomains" | "showOnly" | "subFeatureRows" | "trackHeights" | "treeFilehandle" | "treeMetadataFilehandle" | "treeRoot" | "turnedOffFeatures" | "turnedOffTracks" | "type"> & {
|
|
808
852
|
id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
809
853
|
showDomains: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
810
854
|
showDomainLegend: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
@@ -1198,6 +1242,8 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1198
1242
|
}>, import("@jbrowse/mobx-state-tree")._NotCustomized>>;
|
|
1199
1243
|
currentAlignment: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
1200
1244
|
collapsed: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").ISimpleType<string>>, [undefined]>;
|
|
1245
|
+
rotated: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").ISimpleType<string>>, [undefined]>;
|
|
1246
|
+
treeRoot: import("@jbrowse/mobx-state-tree").IType<import("./types.ts").TreeRoot | undefined, import("./types.ts").TreeRoot | undefined, import("./types.ts").TreeRoot | undefined>;
|
|
1201
1247
|
showOnly: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
1202
1248
|
turnedOffTracks: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>>, [undefined]>;
|
|
1203
1249
|
trackHeights: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IMapType<import("@jbrowse/mobx-state-tree").ISimpleType<number>>, [undefined]>;
|
|
@@ -1220,6 +1266,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1220
1266
|
relativeTo: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
1221
1267
|
highlightColumns: import("@jbrowse/mobx-state-tree").IType<number[] | undefined, number[] | undefined, number[] | undefined>;
|
|
1222
1268
|
highlights: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<import("./types.ts").Highlight, import("./types.ts").Highlight, import("./types.ts").Highlight>>, [undefined]>;
|
|
1269
|
+
region: import("@jbrowse/mobx-state-tree").IType<import("./types.ts").Region | undefined, import("./types.ts").Region | undefined, import("./types.ts").Region | undefined>;
|
|
1223
1270
|
clades: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<import("./types.ts").Clade, import("./types.ts").Clade, import("./types.ts").Clade>>, [undefined]>;
|
|
1224
1271
|
encodings: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<import("./types.ts").Encoding, import("./types.ts").Encoding, import("./types.ts").Encoding>>, [undefined]>;
|
|
1225
1272
|
rowPanels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IType<import("./types.ts").RowPanelSpec, import("./types.ts").RowPanelSpec, import("./types.ts").RowPanelSpec>>, [undefined]>;
|
|
@@ -1238,6 +1285,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1238
1285
|
setDrawTree(arg: boolean): void;
|
|
1239
1286
|
setAutoTreeAreaWidth(arg: boolean): void;
|
|
1240
1287
|
setShowBranchLen(arg: boolean): void;
|
|
1288
|
+
setTreeOrder(order: import("./types.ts").TreeOrder): void;
|
|
1241
1289
|
setDrawNodeBubbles(arg: boolean): void;
|
|
1242
1290
|
setDrawNodeLabels(arg: boolean): void;
|
|
1243
1291
|
setShowTreeOverview(arg: boolean): void;
|
|
@@ -1274,7 +1322,8 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1274
1322
|
minimapHeight: number;
|
|
1275
1323
|
marginLeft: number;
|
|
1276
1324
|
error: unknown;
|
|
1277
|
-
|
|
1325
|
+
loadWarnings: string[];
|
|
1326
|
+
dismissedWarnings: string[];
|
|
1278
1327
|
resetCount: number;
|
|
1279
1328
|
hostCarriesData: boolean;
|
|
1280
1329
|
annotations: import("msa-parsers").Annotation[];
|
|
@@ -1289,10 +1338,10 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1289
1338
|
setHeight(height: number): void;
|
|
1290
1339
|
setError(error?: unknown): void;
|
|
1291
1340
|
addWarning(warning: string): void;
|
|
1292
|
-
clearWarnings(): void;
|
|
1293
1341
|
setHostCarriesData(arg: boolean): void;
|
|
1294
1342
|
setMousePos(col?: number, row?: number): void;
|
|
1295
1343
|
setHighlightedColumns(columns?: number[]): void;
|
|
1344
|
+
setRegion(region?: import("./types.ts").Region): void;
|
|
1296
1345
|
setHighlights(highlights: import("./types.ts").Highlight[]): void;
|
|
1297
1346
|
setClades(clades: import("./types.ts").Clade[]): void;
|
|
1298
1347
|
applyHighlight(owner: string, highlights: import("./types.ts").Highlight[]): void;
|
|
@@ -1305,6 +1354,9 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1305
1354
|
setColWidth(n: number): void;
|
|
1306
1355
|
setCurrentAlignment(n: number): void;
|
|
1307
1356
|
toggleCollapsed(node: string): void;
|
|
1357
|
+
toggleRotated(node: string): void;
|
|
1358
|
+
clearRotated(): void;
|
|
1359
|
+
setTreeRoot(treeRoot?: import("./types.ts").TreeRoot): void;
|
|
1308
1360
|
setShowOnly(node?: string): void;
|
|
1309
1361
|
setData(data: {
|
|
1310
1362
|
msa?: string;
|
|
@@ -1351,6 +1403,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1351
1403
|
readonly rowFields: string[];
|
|
1352
1404
|
readonly MSA: import("msa-parsers").MSAParserType | null;
|
|
1353
1405
|
readonly numColumns: number;
|
|
1406
|
+
readonly inputTree: import("./types.ts").NodeWithIds;
|
|
1354
1407
|
readonly tree: import("./types.ts").NodeWithIds;
|
|
1355
1408
|
readonly rowNames: string[];
|
|
1356
1409
|
readonly rowNamesSet: Map<string, number>;
|
|
@@ -1363,6 +1416,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1363
1416
|
letters: string;
|
|
1364
1417
|
} | undefined;
|
|
1365
1418
|
readonly root: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
|
|
1419
|
+
readonly treeNewick: string;
|
|
1366
1420
|
readonly treeOverviewHeight: number;
|
|
1367
1421
|
readonly treeOverviewLayout: {
|
|
1368
1422
|
root: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
|
|
@@ -1402,9 +1456,14 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1402
1456
|
readonly conservation: number[];
|
|
1403
1457
|
readonly alphabetMaxBits: number;
|
|
1404
1458
|
readonly propertyConservation: number[];
|
|
1405
|
-
readonly
|
|
1459
|
+
readonly treeLayout: {
|
|
1460
|
+
root: import("./hierarchy.ts").LaidOutNode<import("./types.ts").NodeWithIds>;
|
|
1461
|
+
leaves: import("./hierarchy.ts").LaidOutNode<import("./types.ts").NodeWithIds>[];
|
|
1462
|
+
rootToTipLength: number;
|
|
1463
|
+
};
|
|
1464
|
+
readonly hierarchy: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
|
|
1406
1465
|
readonly totalHeight: number;
|
|
1407
|
-
readonly leaves: import("./hierarchy.ts").HierarchyNode<import("./types.ts").
|
|
1466
|
+
readonly leaves: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>[];
|
|
1408
1467
|
readonly rootToTipLength: number;
|
|
1409
1468
|
readonly maxBranchLength: number;
|
|
1410
1469
|
readonly pxPerBranchLength: number;
|
|
@@ -1430,7 +1489,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1430
1489
|
readonly labelWidthScale: number;
|
|
1431
1490
|
readonly labelsWidth: number;
|
|
1432
1491
|
readonly secondaryStructureConsensus: string | undefined;
|
|
1433
|
-
readonly seqConsensus: string | undefined;
|
|
1434
1492
|
readonly secondaryStructureArcs: import("./types.ts").Arc[] | undefined;
|
|
1435
1493
|
readonly adapterTrackModels: import("./types.ts").BasicTrack[];
|
|
1436
1494
|
readonly basePairTrackModels: import("./types.ts").BasicTrack[];
|
|
@@ -1444,6 +1502,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1444
1502
|
globalColToVisibleCol(globalCol: number): number | undefined;
|
|
1445
1503
|
visibleColToGlobalCol(visibleCol: number): number;
|
|
1446
1504
|
seqPosToGlobalCol(rowName: string, seqPos: number): number | undefined;
|
|
1505
|
+
seqEndToGlobalCol(rowName: string, seqPos: number): number | undefined;
|
|
1447
1506
|
seqPosToVisibleCol(rowName: string, seqPos: number): number | undefined;
|
|
1448
1507
|
visibleSpan({ row, start: rawStart, end: rawEnd }: import("./types.ts").Region): {
|
|
1449
1508
|
startCol: number;
|
|
@@ -1476,19 +1535,26 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1476
1535
|
readonly blocksX: number[];
|
|
1477
1536
|
readonly blocksY: number[];
|
|
1478
1537
|
} & {
|
|
1538
|
+
readonly verticalScrollbarWidth: 0 | 20;
|
|
1539
|
+
readonly msaCanvasWidth: number;
|
|
1540
|
+
readonly maxScrollX: number;
|
|
1479
1541
|
readonly blocks2d: (readonly [number, number])[];
|
|
1480
1542
|
readonly isLoading: boolean;
|
|
1481
|
-
readonly
|
|
1543
|
+
readonly dataWarnings: string[];
|
|
1544
|
+
readonly warnings: string[];
|
|
1482
1545
|
readonly maxScrollY: number;
|
|
1483
1546
|
readonly wheelZoomAxis: import("./constants.ts").ScrollZoomAxis;
|
|
1484
1547
|
} & {
|
|
1485
1548
|
setDrawMsaLetters(arg: boolean): void;
|
|
1549
|
+
clearWarnings(): void;
|
|
1486
1550
|
setScrollZoom(arg: boolean): void;
|
|
1487
1551
|
setScrollZoomAxis(arg: import("./constants.ts").ScrollZoomAxis): void;
|
|
1488
1552
|
setHoveredTreeNode(nodeId?: string): void;
|
|
1489
1553
|
calculateNeighborJoiningTreeFromMSA(): void;
|
|
1554
|
+
rerootAt(nodeId: string): void;
|
|
1490
1555
|
replaceTree(newick: string): void;
|
|
1491
1556
|
resetZoom(): void;
|
|
1557
|
+
zoomAtCenter(scaleFactor: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
|
|
1492
1558
|
zoomOutHorizontal(): void;
|
|
1493
1559
|
zoomInHorizontal(): void;
|
|
1494
1560
|
zoomInVertical(): void;
|
|
@@ -1514,8 +1580,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1514
1580
|
onCancel?: () => void;
|
|
1515
1581
|
}): void;
|
|
1516
1582
|
} & {
|
|
1517
|
-
readonly verticalScrollbarWidth: 0 | 20;
|
|
1518
|
-
readonly msaCanvasWidth: number;
|
|
1519
1583
|
cellAt(visibleCol: number, rowIndex?: number): import("./types.ts").Cell;
|
|
1520
1584
|
readonly hoveredCell: import("./types.ts").Cell | undefined;
|
|
1521
1585
|
readonly clickedCell: import("./types.ts").Cell | undefined;
|
|
@@ -1544,6 +1608,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1544
1608
|
start: number;
|
|
1545
1609
|
end: number;
|
|
1546
1610
|
}[];
|
|
1611
|
+
fillHighlightLabel(label: string, row?: string, start?: number): string;
|
|
1547
1612
|
readonly resolvedHighlights: import("./types.ts").ResolvedHighlight[];
|
|
1548
1613
|
columnStatsAt(col: number): import("./columnStats.ts").ColumnStats | undefined;
|
|
1549
1614
|
getRowData(name: string): {
|
|
@@ -1555,6 +1620,26 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1555
1620
|
rowData: Record<string, string> | undefined;
|
|
1556
1621
|
};
|
|
1557
1622
|
readonly resolvedEncodings: import("./types.ts").ResolvedEncoding[];
|
|
1623
|
+
readonly rowPanelScales: ({
|
|
1624
|
+
header: string;
|
|
1625
|
+
legend: import("./types.ts").LegendEntry[];
|
|
1626
|
+
legendTitle?: string;
|
|
1627
|
+
kind: 'strip';
|
|
1628
|
+
field: string;
|
|
1629
|
+
colors: Map<string, string>;
|
|
1630
|
+
} | {
|
|
1631
|
+
header: string;
|
|
1632
|
+
legend: import("./types.ts").LegendEntry[];
|
|
1633
|
+
legendTitle?: string;
|
|
1634
|
+
kind: 'features';
|
|
1635
|
+
x: 'column' | 'position';
|
|
1636
|
+
field?: string;
|
|
1637
|
+
colors: Map<import("msa-parsers").Annotation, {
|
|
1638
|
+
fill: string;
|
|
1639
|
+
stroke: string;
|
|
1640
|
+
}>;
|
|
1641
|
+
labels?: Map<import("msa-parsers").Annotation, string>;
|
|
1642
|
+
})[];
|
|
1558
1643
|
readonly resolvedRowPanels: import("./types.ts").ResolvedRowPanel[];
|
|
1559
1644
|
readonly featureAlignShifts: Map<string, Map<string, number>>;
|
|
1560
1645
|
readonly tipLabelColors: Map<string, string> | undefined;
|
|
@@ -1567,6 +1652,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1567
1652
|
setTrackHeight(heightKey: string, height: number): void;
|
|
1568
1653
|
reset(): void;
|
|
1569
1654
|
exportSVG(opts: import("./renderToSvg.tsx").ExportSvgOptions): Promise<void>;
|
|
1655
|
+
exportNewick(): void;
|
|
1570
1656
|
setFilter(accession: string, shown: boolean): void;
|
|
1571
1657
|
fit(): void;
|
|
1572
1658
|
fitVertically(): void;
|
|
@@ -1583,6 +1669,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1583
1669
|
treeAreaWidth: number;
|
|
1584
1670
|
treeWidth: number;
|
|
1585
1671
|
showBranchLen: boolean;
|
|
1672
|
+
treeOrder: import("./types.ts").TreeOrder;
|
|
1586
1673
|
drawTree: boolean;
|
|
1587
1674
|
drawNodeBubbles: boolean;
|
|
1588
1675
|
drawNodeLabels: boolean;
|
|
@@ -1687,6 +1774,8 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1687
1774
|
} | undefined;
|
|
1688
1775
|
currentAlignment: number;
|
|
1689
1776
|
collapsed: string[];
|
|
1777
|
+
rotated: string[];
|
|
1778
|
+
treeRoot: import("./types.ts").TreeRoot | undefined;
|
|
1690
1779
|
showOnly: string | undefined;
|
|
1691
1780
|
turnedOffTracks: import("mobx").IKeyValueMap<boolean>;
|
|
1692
1781
|
trackHeights: import("mobx").IKeyValueMap<number>;
|
|
@@ -1695,6 +1784,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1695
1784
|
relativeTo: string | undefined;
|
|
1696
1785
|
highlightColumns: number[] | undefined;
|
|
1697
1786
|
highlights: import("./types.ts").Highlight[];
|
|
1787
|
+
region: import("./types.ts").Region | undefined;
|
|
1698
1788
|
clades: import("./types.ts").Clade[];
|
|
1699
1789
|
encodings: import("./types.ts").Encoding[];
|
|
1700
1790
|
rowPanels: import("./types.ts").RowPanelSpec[];
|
|
@@ -1714,6 +1804,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1714
1804
|
treeAreaWidth: number;
|
|
1715
1805
|
treeWidth: number;
|
|
1716
1806
|
showBranchLen: boolean;
|
|
1807
|
+
treeOrder: import("./types.ts").TreeOrder;
|
|
1717
1808
|
drawTree: boolean;
|
|
1718
1809
|
drawNodeBubbles: boolean;
|
|
1719
1810
|
drawNodeLabels: boolean;
|
|
@@ -1818,6 +1909,8 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1818
1909
|
} | undefined;
|
|
1819
1910
|
currentAlignment: number;
|
|
1820
1911
|
collapsed: string[];
|
|
1912
|
+
rotated: string[];
|
|
1913
|
+
treeRoot: import("./types.ts").TreeRoot | undefined;
|
|
1821
1914
|
showOnly: string | undefined;
|
|
1822
1915
|
turnedOffTracks: import("mobx").IKeyValueMap<boolean>;
|
|
1823
1916
|
trackHeights: import("mobx").IKeyValueMap<number>;
|
|
@@ -1826,6 +1919,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
|
|
|
1826
1919
|
relativeTo: string | undefined;
|
|
1827
1920
|
highlightColumns: number[] | undefined;
|
|
1828
1921
|
highlights: import("./types.ts").Highlight[];
|
|
1922
|
+
region: import("./types.ts").Region | undefined;
|
|
1829
1923
|
clades: import("./types.ts").Clade[];
|
|
1830
1924
|
encodings: import("./types.ts").Encoding[];
|
|
1831
1925
|
rowPanels: import("./types.ts").RowPanelSpec[];
|