react-msaview 5.5.0 → 5.6.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 +173 -162
- package/bundle/index.js.map +4 -4
- package/dist/components/ConservationTrack.js +20 -26
- package/dist/components/ConservationTrack.js.map +1 -1
- package/dist/components/MSAViewer.d.ts +7 -1
- package/dist/components/MSAViewer.js +4 -1
- package/dist/components/MSAViewer.js.map +1 -1
- package/dist/components/SequenceTextArea.js +1 -1
- package/dist/components/SequenceTextArea.js.map +1 -1
- package/dist/components/TextTrack.js +20 -27
- package/dist/components/TextTrack.js.map +1 -1
- package/dist/components/Track.js +1 -1
- package/dist/components/Track.js.map +1 -1
- package/dist/components/dialogs/TrackInfoDialog.js +1 -1
- package/dist/components/dialogs/TrackInfoDialog.js.map +1 -1
- package/dist/components/header/ColorSchemeMenu.js +1 -1
- package/dist/components/header/ColorSchemeMenu.js.map +1 -1
- package/dist/components/header/FileMenu.js +1 -16
- package/dist/components/header/FileMenu.js.map +1 -1
- package/dist/components/header/Header.js +6 -5
- package/dist/components/header/Header.js.map +1 -1
- package/dist/components/header/HeaderInfoArea.js +1 -1
- package/dist/components/header/HeaderInfoArea.js.map +1 -1
- package/dist/components/header/HeaderStatusArea.js +1 -1
- package/dist/components/header/HeaderStatusArea.js.map +1 -1
- package/dist/components/header/MSASettingsMenu.js +1 -1
- package/dist/components/header/MSASettingsMenu.js.map +1 -1
- package/dist/components/header/TreeSettingsMenu.js +1 -1
- package/dist/components/header/TreeSettingsMenu.js.map +1 -1
- package/dist/components/header/ZoomControls.js +14 -12
- package/dist/components/header/ZoomControls.js.map +1 -1
- package/dist/components/header/ZoomMenu.js +1 -10
- package/dist/components/header/ZoomMenu.js.map +1 -1
- package/dist/components/header/settingsMenuItems.js +9 -1
- package/dist/components/header/settingsMenuItems.js.map +1 -1
- package/dist/components/{header/HeaderMenu.d.ts → msa/ColumnStats.d.ts} +3 -3
- package/dist/components/msa/ColumnStats.js +42 -0
- package/dist/components/msa/ColumnStats.js.map +1 -0
- package/dist/components/msa/DomainLegend.js +1 -1
- package/dist/components/msa/DomainLegend.js.map +1 -1
- package/dist/components/msa/MSACanvasBlock.js +39 -39
- package/dist/components/msa/MSACanvasBlock.js.map +1 -1
- package/dist/components/msa/MSAMouseoverCanvas.js +6 -12
- package/dist/components/msa/MSAMouseoverCanvas.js.map +1 -1
- package/dist/components/msa/renderBoxFeatureCanvasBlock.js +3 -1
- package/dist/components/msa/renderBoxFeatureCanvasBlock.js.map +1 -1
- package/dist/components/msa/renderMSAMouseover.js +1 -2
- package/dist/components/msa/renderMSAMouseover.js.map +1 -1
- package/dist/components/overlayColors.d.ts +3 -0
- package/dist/components/overlayColors.js +11 -0
- package/dist/components/overlayColors.js.map +1 -0
- package/dist/components/tracks/renderTracksSvg.d.ts +6 -3
- package/dist/components/tracks/renderTracksSvg.js +17 -8
- package/dist/components/tracks/renderTracksSvg.js.map +1 -1
- package/dist/components/tree/TreeCanvas.js +31 -38
- package/dist/components/tree/TreeCanvas.js.map +1 -1
- package/dist/components/tree/TreeCanvasBlock.js +12 -47
- package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
- package/dist/components/tree/clickMap.d.ts +24 -0
- package/dist/components/tree/clickMap.js +33 -0
- package/dist/components/tree/clickMap.js.map +1 -0
- package/dist/components/tree/renderTreeCanvas.d.ts +1 -21
- package/dist/components/tree/renderTreeCanvas.js +8 -7
- package/dist/components/tree/renderTreeCanvas.js.map +1 -1
- package/dist/constants.d.ts +1 -0
- package/dist/constants.js +1 -0
- package/dist/constants.js.map +1 -1
- package/dist/fetchUtils.d.ts +2 -1
- package/dist/fetchUtils.js +3 -2
- package/dist/fetchUtils.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/model/msaModel.d.ts +25 -2
- package/dist/model/msaModel.js +15 -3
- package/dist/model/msaModel.js.map +1 -1
- package/dist/model/treeModel.d.ts +46 -5
- package/dist/model/treeModel.js +20 -7
- package/dist/model/treeModel.js.map +1 -1
- package/dist/model.d.ts +545 -132
- package/dist/model.js +101 -75
- package/dist/model.js.map +1 -1
- package/dist/propertyConservation.d.ts +7 -0
- package/dist/propertyConservation.js +66 -0
- package/dist/propertyConservation.js.map +1 -0
- package/dist/types.d.ts +4 -1
- package/dist/useCanvasAutorun.d.ts +2 -0
- package/dist/useCanvasAutorun.js +23 -0
- package/dist/useCanvasAutorun.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +4 -6
- package/src/colorSchemes.docs.test.ts +55 -0
- package/src/columnStats.test.ts +94 -0
- package/src/components/ConservationTrack.tsx +17 -15
- package/src/components/MSAViewer.tsx +12 -0
- package/src/components/SequenceTextArea.tsx +1 -1
- package/src/components/TextTrack.tsx +7 -11
- package/src/components/Track.tsx +1 -1
- package/src/components/dialogs/TrackInfoDialog.tsx +1 -1
- package/src/components/header/ColorSchemeMenu.tsx +1 -0
- package/src/components/header/FileMenu.tsx +1 -15
- package/src/components/header/Header.tsx +11 -8
- package/src/components/header/HeaderInfoArea.tsx +1 -1
- package/src/components/header/HeaderStatusArea.tsx +1 -1
- package/src/components/header/MSASettingsMenu.tsx +1 -0
- package/src/components/header/TreeSettingsMenu.tsx +1 -0
- package/src/components/header/ZoomControls.tsx +24 -17
- package/src/components/header/ZoomMenu.tsx +1 -10
- package/src/components/header/settingsMenuItems.ts +9 -1
- package/src/components/msa/ColumnStats.tsx +54 -0
- package/src/components/msa/DomainLegend.tsx +5 -1
- package/src/components/msa/MSACanvasBlock.tsx +29 -26
- package/src/components/msa/MSAMouseoverCanvas.tsx +10 -13
- package/src/components/msa/renderBoxFeatureCanvasBlock.ts +3 -1
- package/src/components/msa/renderMSAMouseover.ts +2 -2
- package/src/components/overlayColors.ts +12 -0
- package/src/components/tracks/renderTracksSvg.ts +22 -8
- package/src/components/tree/TreeCanvas.tsx +47 -54
- package/src/components/tree/TreeCanvasBlock.tsx +10 -68
- package/src/components/tree/clickMap.ts +55 -0
- package/src/components/tree/renderTreeCanvas.ts +10 -34
- package/src/constants.ts +1 -0
- package/src/fetchUtils.ts +6 -3
- package/src/index.ts +1 -1
- package/src/model/msaModel.ts +21 -3
- package/src/model/treeModel.ts +21 -7
- package/src/model.ts +116 -117
- package/src/propertyConservation.test.ts +47 -0
- package/src/propertyConservation.ts +73 -0
- package/src/stripDefaultSnapshot.test.ts +54 -0
- package/src/types.ts +7 -1
- package/src/useCanvasAutorun.ts +28 -0
- package/src/version.ts +1 -1
- package/dist/components/dialogs/SettingsDialog.d.ts +0 -7
- package/dist/components/dialogs/SettingsDialog.js +0 -100
- package/dist/components/dialogs/SettingsDialog.js.map +0 -1
- package/dist/components/header/HeaderMenu.js +0 -27
- package/dist/components/header/HeaderMenu.js.map +0 -1
- package/src/components/dialogs/SettingsDialog.tsx +0 -234
- package/src/components/header/HeaderMenu.tsx +0 -38
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import React, { useEffect, useRef, useState } from 'react';
|
|
2
|
+
import { makeStyles } from '@jbrowse/core/util/tss-react';
|
|
2
3
|
import { useTheme } from '@mui/material';
|
|
3
|
-
import Flatbush from 'flatbush';
|
|
4
|
-
import { autorun } from 'mobx';
|
|
5
4
|
import { observer } from 'mobx-react';
|
|
6
|
-
import { makeStyles } from 'tss-react/mui';
|
|
7
5
|
import TreeBranchMenu from "./TreeBranchMenu.js";
|
|
8
6
|
import TreeNodeMenu from "./TreeNodeMenu.js";
|
|
7
|
+
import { ClickMapIndex } from "./clickMap.js";
|
|
9
8
|
import { padding, renderTreeCanvas } from "./renderTreeCanvas.js";
|
|
9
|
+
import { useCanvasAutorun } from "../../useCanvasAutorun.js";
|
|
10
10
|
const useStyles = makeStyles()(theme => ({
|
|
11
11
|
tooltip: {
|
|
12
12
|
position: 'fixed',
|
|
@@ -23,38 +23,9 @@ const useStyles = makeStyles()(theme => ({
|
|
|
23
23
|
textOverflow: 'ellipsis',
|
|
24
24
|
},
|
|
25
25
|
}));
|
|
26
|
-
class ClickMapIndex {
|
|
27
|
-
flatbush = null;
|
|
28
|
-
entries = [];
|
|
29
|
-
clear() {
|
|
30
|
-
this.flatbush = null;
|
|
31
|
-
this.entries = [];
|
|
32
|
-
}
|
|
33
|
-
insert(entry) {
|
|
34
|
-
this.entries.push(entry);
|
|
35
|
-
}
|
|
36
|
-
finish() {
|
|
37
|
-
if (this.entries.length === 0) {
|
|
38
|
-
this.flatbush = null;
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
this.flatbush = new Flatbush(this.entries.length);
|
|
42
|
-
for (const entry of this.entries) {
|
|
43
|
-
this.flatbush.add(entry.minX, entry.minY, entry.maxX, entry.maxY);
|
|
44
|
-
}
|
|
45
|
-
this.flatbush.finish();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
search(box) {
|
|
49
|
-
return (this.flatbush
|
|
50
|
-
?.search(box.minX, box.minY, box.maxX, box.maxY)
|
|
51
|
-
.map(i => this.entries[i]) ?? []);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
26
|
const TreeCanvasBlock = observer(function ({ model, offsetY, }) {
|
|
55
27
|
const { classes } = useStyles();
|
|
56
28
|
const theme = useTheme();
|
|
57
|
-
const ref = useRef(null);
|
|
58
29
|
const clickMap = useRef(new ClickMapIndex());
|
|
59
30
|
const mouseoverRef = useRef(null);
|
|
60
31
|
const [branchMenu, setBranchMenu] = useState();
|
|
@@ -66,21 +37,15 @@ const TreeCanvasBlock = observer(function ({ model, offsetY, }) {
|
|
|
66
37
|
const height = blockSize;
|
|
67
38
|
const w2 = width * highResScaleFactor;
|
|
68
39
|
const h2 = height * highResScaleFactor;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
ctx,
|
|
79
|
-
model,
|
|
80
|
-
offsetY,
|
|
81
|
-
clickMap: clickMap.current,
|
|
82
|
-
theme,
|
|
83
|
-
});
|
|
40
|
+
const ref = useCanvasAutorun(ctx => {
|
|
41
|
+
ctx.resetTransform();
|
|
42
|
+
ctx.clearRect(0, 0, w2, h2);
|
|
43
|
+
renderTreeCanvas({
|
|
44
|
+
ctx,
|
|
45
|
+
model,
|
|
46
|
+
offsetY,
|
|
47
|
+
clickMap: clickMap.current,
|
|
48
|
+
theme,
|
|
84
49
|
});
|
|
85
50
|
}, [model, blockSize, highResScaleFactor, treeAreaWidth, offsetY, theme]);
|
|
86
51
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeCanvasBlock.js","sourceRoot":"","sources":["../../../src/components/tree/TreeCanvasBlock.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE1D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"TreeCanvasBlock.js","sourceRoot":"","sources":["../../../src/components/tree/TreeCanvasBlock.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface ClickEntry {
|
|
2
|
+
name: string;
|
|
3
|
+
id: string;
|
|
4
|
+
branch?: boolean;
|
|
5
|
+
minX: number;
|
|
6
|
+
maxX: number;
|
|
7
|
+
minY: number;
|
|
8
|
+
maxY: number;
|
|
9
|
+
}
|
|
10
|
+
interface Box {
|
|
11
|
+
minX: number;
|
|
12
|
+
maxX: number;
|
|
13
|
+
minY: number;
|
|
14
|
+
maxY: number;
|
|
15
|
+
}
|
|
16
|
+
export declare class ClickMapIndex {
|
|
17
|
+
private flatbush;
|
|
18
|
+
private entries;
|
|
19
|
+
clear(): void;
|
|
20
|
+
insert(entry: ClickEntry): void;
|
|
21
|
+
finish(): void;
|
|
22
|
+
search(box: Box): ClickEntry[];
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import Flatbush from 'flatbush';
|
|
2
|
+
// Spatial index of clickable tree elements (leaf labels, node bubbles,
|
|
3
|
+
// collapsed-clade triangles). Entries are collected during a render pass, then
|
|
4
|
+
// finish() builds the Flatbush index queried by hit-testing.
|
|
5
|
+
export class ClickMapIndex {
|
|
6
|
+
flatbush = null;
|
|
7
|
+
entries = [];
|
|
8
|
+
clear() {
|
|
9
|
+
this.flatbush = null;
|
|
10
|
+
this.entries = [];
|
|
11
|
+
}
|
|
12
|
+
insert(entry) {
|
|
13
|
+
this.entries.push(entry);
|
|
14
|
+
}
|
|
15
|
+
finish() {
|
|
16
|
+
if (this.entries.length === 0) {
|
|
17
|
+
this.flatbush = null;
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
this.flatbush = new Flatbush(this.entries.length);
|
|
21
|
+
for (const entry of this.entries) {
|
|
22
|
+
this.flatbush.add(entry.minX, entry.minY, entry.maxX, entry.maxY);
|
|
23
|
+
}
|
|
24
|
+
this.flatbush.finish();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
search(box) {
|
|
28
|
+
return (this.flatbush
|
|
29
|
+
?.search(box.minX, box.minY, box.maxX, box.maxY)
|
|
30
|
+
.map(i => this.entries[i]) ?? []);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=clickMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clickMap.js","sourceRoot":"","sources":["../../../src/components/tree/clickMap.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAA;AAmB/B,uEAAuE;AACvE,+EAA+E;AAC/E,6DAA6D;AAC7D,MAAM,OAAO,aAAa;IAChB,QAAQ,GAAoB,IAAI,CAAA;IAChC,OAAO,GAAiB,EAAE,CAAA;IAElC,KAAK;QACH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACpB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;IACnB,CAAC;IAED,MAAM,CAAC,KAAiB;QACtB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACtB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YACjD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YACnE,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;QACxB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,GAAQ;QACb,OAAO,CACL,IAAI,CAAC,QAAQ;YACX,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC;aAC/C,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CACpC,CAAA;IACH,CAAC;CACF"}
|
|
@@ -1,27 +1,8 @@
|
|
|
1
|
+
import type { ClickMapIndex } from './clickMap.ts';
|
|
1
2
|
import type { MsaViewModel } from '../../model.ts';
|
|
2
3
|
import type { RenderCtx } from '../renderCtx.ts';
|
|
3
4
|
import type { Theme } from '@mui/material';
|
|
4
5
|
export declare const padding = 600;
|
|
5
|
-
interface ClickEntry {
|
|
6
|
-
name: string;
|
|
7
|
-
id: string;
|
|
8
|
-
branch?: boolean;
|
|
9
|
-
minX: number;
|
|
10
|
-
maxX: number;
|
|
11
|
-
minY: number;
|
|
12
|
-
maxY: number;
|
|
13
|
-
}
|
|
14
|
-
interface ClickMapIndex {
|
|
15
|
-
clear(): void;
|
|
16
|
-
insert(entry: ClickEntry): void;
|
|
17
|
-
finish(): void;
|
|
18
|
-
search(box: {
|
|
19
|
-
minX: number;
|
|
20
|
-
maxX: number;
|
|
21
|
-
minY: number;
|
|
22
|
-
maxY: number;
|
|
23
|
-
}): ClickEntry[];
|
|
24
|
-
}
|
|
25
6
|
export declare function renderTree({ offsetY, ctx, model, theme, maxBranchLen, maxDepthToLeaf, blockSizeYOverride, }: {
|
|
26
7
|
offsetY: number;
|
|
27
8
|
ctx: RenderCtx;
|
|
@@ -69,4 +50,3 @@ export declare function renderTreeCanvas({ model, clickMap, ctx, offsetY, theme,
|
|
|
69
50
|
highResScaleFactorOverride?: number;
|
|
70
51
|
blockSizeYOverride?: number;
|
|
71
52
|
}): void;
|
|
72
|
-
export {};
|
|
@@ -4,6 +4,11 @@ export const padding = 600;
|
|
|
4
4
|
const extendBounds = 5;
|
|
5
5
|
const radius = 2.5;
|
|
6
6
|
const d = radius * 2;
|
|
7
|
+
// whether a node's row-center y falls within the block being drawn, padded by
|
|
8
|
+
// extendBounds so bubbles/labels/triangles straddling the edge still render
|
|
9
|
+
function inYBlock(y, offsetY, by) {
|
|
10
|
+
return y > offsetY - extendBounds && y < offsetY + by + extendBounds;
|
|
11
|
+
}
|
|
7
12
|
// Calculate node x-coordinate for both phylogram (with branch lengths) and cladogram (topology only) modes
|
|
8
13
|
// For cladograms: x = (maxDepthToLeaf - nodeDepthToLeaf) / maxDepthToLeaf * maxWidth
|
|
9
14
|
// This positions: leaves at maxWidth (rightmost), root at 0 (leftmost), internal nodes proportionally in between
|
|
@@ -53,7 +58,7 @@ export function renderCollapsedTriangles({ ctx, clickMap, offsetY, model, theme,
|
|
|
53
58
|
if (collapsed.includes(id)) {
|
|
54
59
|
const apexX = getNodeX(node, showBranchLen, maxBranchLen, maxDepthToLeaf);
|
|
55
60
|
const y = node.x;
|
|
56
|
-
const inBlock = y
|
|
61
|
+
const inBlock = inYBlock(y, offsetY, by);
|
|
57
62
|
// in cladogram mode the hidden tips align at the right edge, otherwise use
|
|
58
63
|
// the branch-length extent recorded in the model's hierarchy getter
|
|
59
64
|
const baseX = showBranchLen
|
|
@@ -104,9 +109,7 @@ export function renderNodeBubbles({ ctx, clickMap, offsetY, model, maxBranchLen,
|
|
|
104
109
|
const { data } = node;
|
|
105
110
|
const y = node.x;
|
|
106
111
|
const { id, name } = data;
|
|
107
|
-
if (node.height >= 1 &&
|
|
108
|
-
y > offsetY - extendBounds &&
|
|
109
|
-
y < offsetY + by + extendBounds) {
|
|
112
|
+
if (node.height >= 1 && inYBlock(y, offsetY, by)) {
|
|
110
113
|
const isCollapsed = collapsed.includes(id);
|
|
111
114
|
ctx.strokeStyle = 'black';
|
|
112
115
|
ctx.fillStyle = isCollapsed ? 'black' : 'white';
|
|
@@ -148,9 +151,7 @@ export function renderTreeLabels({ theme, model, offsetY, ctx, clickMap, maxBran
|
|
|
148
151
|
// a collapsed clade is drawn as a triangle + tip count; suppress its leaf
|
|
149
152
|
// label when the "name" is just the auto-generated internal-node id
|
|
150
153
|
const isAnonymousCollapsed = collapsed.includes(id) && name === id;
|
|
151
|
-
if (!isAnonymousCollapsed &&
|
|
152
|
-
y > offsetY - extendBounds &&
|
|
153
|
-
y < offsetY + by + extendBounds) {
|
|
154
|
+
if (!isAnonymousCollapsed && inYBlock(y, offsetY, by)) {
|
|
154
155
|
// note: +rowHeight/4 matches with -rowHeight/4 in msa
|
|
155
156
|
const yp = y + fontSize / 4;
|
|
156
157
|
let xp = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTreeCanvas.js","sourceRoot":"","sources":["../../../src/components/tree/renderTreeCanvas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,WAAW,GACZ,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"renderTreeCanvas.js","sourceRoot":"","sources":["../../../src/components/tree/renderTreeCanvas.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export declare const minRowHeight = 1;
|
|
|
18
18
|
export declare const maxCellSize = 80;
|
|
19
19
|
export declare const defaultBgColor = true;
|
|
20
20
|
export declare const defaultColorSchemeName = "maeditor";
|
|
21
|
+
export declare const defaultShowColumnStats = true;
|
|
21
22
|
export declare const defaultDrawLabels = true;
|
|
22
23
|
export declare const defaultLabelsAlignRight = false;
|
|
23
24
|
export declare const defaultTreeAreaWidth = 400;
|
package/dist/constants.js
CHANGED
|
@@ -36,6 +36,7 @@ export const maxCellSize = 80;
|
|
|
36
36
|
// MSA model defaults
|
|
37
37
|
export const defaultBgColor = true;
|
|
38
38
|
export const defaultColorSchemeName = 'maeditor';
|
|
39
|
+
export const defaultShowColumnStats = true;
|
|
39
40
|
// Tree model defaults
|
|
40
41
|
export const defaultDrawLabels = true;
|
|
41
42
|
export const defaultLabelsAlignRight = false;
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,sBAAsB;AACtB,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAClC,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAA;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;AAChC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAA;AAC/B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAA;AAC/B,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAA;AACxC,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAA;AACvC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAA;AACnC,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAA;AAC1C,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAA;AAC1C,gEAAgE;AAChE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAEpC,8EAA8E;AAC9E,+EAA+E;AAC/E,6EAA6E;AAC7E,sEAAsE;AACtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IACzC,MAAM;IACN,KAAK;IACL,gBAAgB;IAChB,iBAAiB;IACjB,KAAK;IACL,QAAQ;CACT,CAAC,CAAA;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;AACnD,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAA;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAA;AAEtC,+EAA+E;AAC/E,iFAAiF;AACjF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAA;AAC9B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAA;AAC7B,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAA;AAE7B,qBAAqB;AACrB,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAA;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,sBAAsB;AACtB,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAClC,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAA;AACjC,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,CAAA;AAChC,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAA;AAC/B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAA;AAC/B,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAA;AACxC,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAA;AACvC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAA;AACnC,MAAM,CAAC,MAAM,uBAAuB,GAAG,GAAG,CAAA;AAC1C,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAA;AAC1C,gEAAgE;AAChE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAEpC,8EAA8E;AAC9E,+EAA+E;AAC/E,6EAA6E;AAC7E,sEAAsE;AACtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IACzC,MAAM;IACN,KAAK;IACL,gBAAgB;IAChB,iBAAiB;IACjB,KAAK;IACL,QAAQ;CACT,CAAC,CAAA;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;AACnD,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAA;AACzC,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAA;AAEtC,+EAA+E;AAC/E,iFAAiF;AACjF,0BAA0B;AAC1B,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,CAAA;AAC9B,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAA;AAC7B,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAA;AAE7B,qBAAqB;AACrB,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAA;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAA;AAChD,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAA;AAE1C,sBAAsB;AACtB,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAA;AACrC,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAA;AAC5C,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,CAAA;AACvC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAA;AACnC,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAA;AACxC,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,CAAA;AACnC,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAA"}
|
package/dist/fetchUtils.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { fetchAndMaybeUnzipText } from '@jbrowse/core/util';
|
|
2
|
+
import type { RpcStatus } from '@jbrowse/core/util';
|
|
2
3
|
export interface FetchStatus {
|
|
3
4
|
msg: string;
|
|
4
5
|
url?: string;
|
|
@@ -7,7 +8,7 @@ export interface FetchStatus {
|
|
|
7
8
|
type Filehandle = Parameters<typeof fetchAndMaybeUnzipText>[0];
|
|
8
9
|
type ProgressFetcher = (loc: Filehandle, opts: {
|
|
9
10
|
signal: AbortSignal;
|
|
10
|
-
statusCallback: (
|
|
11
|
+
statusCallback: (status: RpcStatus) => void;
|
|
11
12
|
}) => Promise<string>;
|
|
12
13
|
/**
|
|
13
14
|
* Fetch text from a filehandle while reporting download/unzip progress through
|
package/dist/fetchUtils.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { fetchAndMaybeUnzipText } from '@jbrowse/core/util';
|
|
1
|
+
import { fetchAndMaybeUnzipText, statusMessageText } from '@jbrowse/core/util';
|
|
2
2
|
/**
|
|
3
3
|
* Fetch text from a filehandle while reporting download/unzip progress through
|
|
4
4
|
* setStatus, and wiring a Cancel handler that aborts the underlying request.
|
|
@@ -10,7 +10,8 @@ export async function fetchTextWithProgress(loc, setStatus, fetcher = fetchAndMa
|
|
|
10
10
|
try {
|
|
11
11
|
return await fetcher(loc, {
|
|
12
12
|
signal: controller.signal,
|
|
13
|
-
statusCallback:
|
|
13
|
+
statusCallback: status => {
|
|
14
|
+
const msg = statusMessageText(status);
|
|
14
15
|
setStatus(msg
|
|
15
16
|
? {
|
|
16
17
|
msg,
|
package/dist/fetchUtils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchUtils.js","sourceRoot":"","sources":["../src/fetchUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"fetchUtils.js","sourceRoot":"","sources":["../src/fetchUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAiB9E;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAAe,EACf,SAAyC,EACzC,UAA2B,sBAAsB;IAEjD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;IACxC,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,GAAG,EAAE;YACxB,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,cAAc,EAAE,MAAM,CAAC,EAAE;gBACvB,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;gBACrC,SAAS,CACP,GAAG;oBACD,CAAC,CAAC;wBACE,GAAG;wBACH,QAAQ,EAAE,GAAG,EAAE;4BACb,UAAU,CAAC,KAAK,EAAE,CAAA;wBACpB,CAAC;qBACF;oBACH,CAAC,CAAC,SAAS,CACd,CAAA;YACH,CAAC;SACF,CAAC,CAAA;IACJ,CAAC;YAAS,CAAC;QACT,SAAS,CAAC,SAAS,CAAC,CAAA;IACtB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAW,EAAE,IAAkB;IAC3D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAEvC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,QAAQ,QAAQ,CAAC,MAAM,aAAa,GAAG,IAAI,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,CACnE,CAAA;IACH,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW,EAAE,IAAkB;IAC7D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACzC,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAI,GAAW,EAAE,IAAkB;IAChE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACzC,OAAO,QAAQ,CAAC,IAAI,EAAO,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAY,EAAE,MAAoB;IACxD,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;YACpC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;gBACrC,YAAY,CAAC,EAAE,CAAC,CAAA;gBAChB,MAAM,CAAC,IAAI,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;YACnD,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,CAAU;IACrC,OAAO,CAAC,YAAY,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,CAAA;AAC7D,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ export { renderToSvg } from './renderToSvg.tsx';
|
|
|
2
2
|
export { default as MSAView } from './components/Loading.tsx';
|
|
3
3
|
export { default as MSAViewer } from './components/MSAViewer.tsx';
|
|
4
4
|
export { type MsaViewModel, default as MSAModelF } from './model.ts';
|
|
5
|
-
export type { MSAParserType } from 'msa-parsers';
|
|
5
|
+
export type { MSAFormat, MSAParserType } from 'msa-parsers';
|
|
6
6
|
export type { HierarchyNode } from './hierarchy.ts';
|
|
7
7
|
export type { InterProScanResults } from './launchInterProScan.ts';
|
|
8
8
|
export type { Accession, BasicTrack, BasicTrackModel, Node, NodeWithIds, NodeWithIdsAndLength, TextTrackModel, } from './types.ts';
|
package/dist/model/msaModel.d.ts
CHANGED
|
@@ -3,8 +3,27 @@ import type { MSAFormat } from 'msa-parsers';
|
|
|
3
3
|
* #stateModel MSAModel
|
|
4
4
|
*/
|
|
5
5
|
export declare function MSAModelF(): import("@jbrowse/mobx-state-tree").IModelType<{
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
/**
|
|
7
|
+
* #property
|
|
8
|
+
* draw MSA tiles with a background color
|
|
9
|
+
*/
|
|
10
|
+
bgColor: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
11
|
+
/**
|
|
12
|
+
* #property
|
|
13
|
+
* default color scheme name
|
|
14
|
+
*/
|
|
15
|
+
colorSchemeName: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
16
|
+
/**
|
|
17
|
+
* #property
|
|
18
|
+
* show a per-column statistics tooltip (consensus, conservation, gaps,
|
|
19
|
+
* residue distribution) while hovering the alignment
|
|
20
|
+
*/
|
|
21
|
+
showColumnStats: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
22
|
+
/**
|
|
23
|
+
* #property
|
|
24
|
+
* force the MSA data to be parsed as a specific format instead of relying
|
|
25
|
+
* on auto-detection (which is ambiguous between e.g. fasta and a3m)
|
|
26
|
+
*/
|
|
8
27
|
msaFormat: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<MSAFormat>>;
|
|
9
28
|
}, {
|
|
10
29
|
/**
|
|
@@ -16,6 +35,10 @@ export declare function MSAModelF(): import("@jbrowse/mobx-state-tree").IModelTy
|
|
|
16
35
|
* #action
|
|
17
36
|
*/
|
|
18
37
|
setBgColor(arg: boolean): void;
|
|
38
|
+
/**
|
|
39
|
+
* #action
|
|
40
|
+
*/
|
|
41
|
+
setShowColumnStats(arg: boolean): void;
|
|
19
42
|
/**
|
|
20
43
|
* #action
|
|
21
44
|
* force a specific MSA parser, or pass undefined to auto-detect
|
package/dist/model/msaModel.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { types } from '@jbrowse/mobx-state-tree';
|
|
2
|
-
import { defaultBgColor, defaultColorSchemeName } from "../constants.js";
|
|
2
|
+
import { defaultBgColor, defaultColorSchemeName, defaultShowColumnStats, } from "../constants.js";
|
|
3
3
|
const msaFormats = ['stockholm', 'a3m', 'fasta', 'emf', 'clustal'];
|
|
4
4
|
/**
|
|
5
5
|
* #stateModel MSAModel
|
|
@@ -11,12 +11,18 @@ export function MSAModelF() {
|
|
|
11
11
|
* #property
|
|
12
12
|
* draw MSA tiles with a background color
|
|
13
13
|
*/
|
|
14
|
-
bgColor: defaultBgColor,
|
|
14
|
+
bgColor: types.stripDefault(types.boolean, defaultBgColor),
|
|
15
15
|
/**
|
|
16
16
|
* #property
|
|
17
17
|
* default color scheme name
|
|
18
18
|
*/
|
|
19
|
-
colorSchemeName: defaultColorSchemeName,
|
|
19
|
+
colorSchemeName: types.stripDefault(types.string, defaultColorSchemeName),
|
|
20
|
+
/**
|
|
21
|
+
* #property
|
|
22
|
+
* show a per-column statistics tooltip (consensus, conservation, gaps,
|
|
23
|
+
* residue distribution) while hovering the alignment
|
|
24
|
+
*/
|
|
25
|
+
showColumnStats: types.stripDefault(types.boolean, defaultShowColumnStats),
|
|
20
26
|
/**
|
|
21
27
|
* #property
|
|
22
28
|
* force the MSA data to be parsed as a specific format instead of relying
|
|
@@ -38,6 +44,12 @@ export function MSAModelF() {
|
|
|
38
44
|
setBgColor(arg) {
|
|
39
45
|
self.bgColor = arg;
|
|
40
46
|
},
|
|
47
|
+
/**
|
|
48
|
+
* #action
|
|
49
|
+
*/
|
|
50
|
+
setShowColumnStats(arg) {
|
|
51
|
+
self.showColumnStats = arg;
|
|
52
|
+
},
|
|
41
53
|
/**
|
|
42
54
|
* #action
|
|
43
55
|
* force a specific MSA parser, or pass undefined to auto-detect
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"msaModel.js","sourceRoot":"","sources":["../../src/model/msaModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD,OAAO,
|
|
1
|
+
{"version":3,"file":"msaModel.js","sourceRoot":"","sources":["../../src/model/msaModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,iBAAiB,CAAA;AAIxB,MAAM,UAAU,GAAgB,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;AAE/E;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,KAAK;SACT,KAAK,CAAC;QACL;;;WAGG;QACH,OAAO,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC;QAE1D;;;WAGG;QACH,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,sBAAsB,CAAC;QAEzE;;;;WAIG;QACH,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,sBAAsB,CAAC;QAE1E;;;;WAIG;QACH,SAAS,EAAE,KAAK,CAAC,KAAK,CACpB,KAAK,CAAC,WAAW,CAAY,WAAW,EAAE,UAAU,CAAC,CACtD;KACF,CAAC;SACD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChB;;;WAGG;QACH,kBAAkB,CAAC,IAAY;YAC7B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAA;QAC7B,CAAC;QAED;;WAEG;QACH,UAAU,CAAC,GAAY;YACrB,IAAI,CAAC,OAAO,GAAG,GAAG,CAAA;QACpB,CAAC;QAED;;WAEG;QACH,kBAAkB,CAAC,GAAY;YAC7B,IAAI,CAAC,eAAe,GAAG,GAAG,CAAA;QAC5B,CAAC;QAED;;;WAGG;QACH,YAAY,CAAC,GAAe;YAC1B,IAAI,CAAC,SAAS,GAAG,GAAG,CAAA;QACtB,CAAC;KACF,CAAC,CAAC,CAAA;AACP,CAAC"}
|
|
@@ -2,13 +2,50 @@
|
|
|
2
2
|
* #stateModel Tree
|
|
3
3
|
*/
|
|
4
4
|
export declare function TreeModelF(): import("@jbrowse/mobx-state-tree").IModelType<{
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/**
|
|
6
|
+
* #property
|
|
7
|
+
*/
|
|
8
|
+
drawLabels: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
9
|
+
/**
|
|
10
|
+
* #property
|
|
11
|
+
* right-align the labels
|
|
12
|
+
*/
|
|
13
|
+
labelsAlignRight: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
14
|
+
/**
|
|
15
|
+
* #property
|
|
16
|
+
* width of the area the tree is drawn in, px
|
|
17
|
+
*/
|
|
7
18
|
treeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
19
|
+
/**
|
|
20
|
+
* #property
|
|
21
|
+
* width of the tree within the treeArea, px. automatically synced to
|
|
22
|
+
* fit within treeAreaWidth
|
|
23
|
+
*/
|
|
8
24
|
treeWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
25
|
+
/**
|
|
26
|
+
* #property
|
|
27
|
+
* use "branch length" e.g. evolutionary distance to draw tree branch
|
|
28
|
+
* lengths. if false, the layout is a "cladogram" that does not take into
|
|
29
|
+
* account evolutionary distances
|
|
30
|
+
*/
|
|
31
|
+
showBranchLen: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
32
|
+
/**
|
|
33
|
+
* #property
|
|
34
|
+
* draw tree, boolean
|
|
35
|
+
*/
|
|
36
|
+
drawTree: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
37
|
+
/**
|
|
38
|
+
* #property
|
|
39
|
+
* draw clickable node bubbles on the tree
|
|
40
|
+
*/
|
|
41
|
+
drawNodeBubbles: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
42
|
+
/**
|
|
43
|
+
* #property
|
|
44
|
+
* auto-size treeAreaWidth to fit the row labels (plus the tree, if drawn)
|
|
45
|
+
* instead of using a fixed width. useful when there is no tree, so the
|
|
46
|
+
* label gutter isn't padded out to the default 400px
|
|
47
|
+
*/
|
|
48
|
+
autoTreeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
12
49
|
}, {
|
|
13
50
|
/**
|
|
14
51
|
* #action
|
|
@@ -28,6 +65,10 @@ export declare function TreeModelF(): import("@jbrowse/mobx-state-tree").IModelT
|
|
|
28
65
|
* #action
|
|
29
66
|
*/
|
|
30
67
|
setDrawTree(arg: boolean): void;
|
|
68
|
+
/**
|
|
69
|
+
* #action
|
|
70
|
+
*/
|
|
71
|
+
setAutoTreeAreaWidth(arg: boolean): void;
|
|
31
72
|
/**
|
|
32
73
|
* #action
|
|
33
74
|
*/
|
package/dist/model/treeModel.js
CHANGED
|
@@ -9,40 +9,47 @@ export function TreeModelF() {
|
|
|
9
9
|
/**
|
|
10
10
|
* #property
|
|
11
11
|
*/
|
|
12
|
-
drawLabels: defaultDrawLabels,
|
|
12
|
+
drawLabels: types.stripDefault(types.boolean, defaultDrawLabels),
|
|
13
13
|
/**
|
|
14
14
|
* #property
|
|
15
15
|
* right-align the labels
|
|
16
16
|
*/
|
|
17
|
-
labelsAlignRight: defaultLabelsAlignRight,
|
|
17
|
+
labelsAlignRight: types.stripDefault(types.boolean, defaultLabelsAlignRight),
|
|
18
18
|
/**
|
|
19
19
|
* #property
|
|
20
20
|
* width of the area the tree is drawn in, px
|
|
21
21
|
*/
|
|
22
|
-
treeAreaWidth: types.
|
|
22
|
+
treeAreaWidth: types.stripDefault(types.number, defaultTreeAreaWidth),
|
|
23
23
|
/**
|
|
24
24
|
* #property
|
|
25
25
|
* width of the tree within the treeArea, px. automatically synced to
|
|
26
26
|
* fit within treeAreaWidth
|
|
27
27
|
*/
|
|
28
|
-
treeWidth: types.
|
|
28
|
+
treeWidth: types.stripDefault(types.number, defaultTreeWidth),
|
|
29
29
|
/**
|
|
30
30
|
* #property
|
|
31
31
|
* use "branch length" e.g. evolutionary distance to draw tree branch
|
|
32
32
|
* lengths. if false, the layout is a "cladogram" that does not take into
|
|
33
33
|
* account evolutionary distances
|
|
34
34
|
*/
|
|
35
|
-
showBranchLen: defaultShowBranchLen,
|
|
35
|
+
showBranchLen: types.stripDefault(types.boolean, defaultShowBranchLen),
|
|
36
36
|
/**
|
|
37
37
|
* #property
|
|
38
38
|
* draw tree, boolean
|
|
39
39
|
*/
|
|
40
|
-
drawTree: defaultDrawTree,
|
|
40
|
+
drawTree: types.stripDefault(types.boolean, defaultDrawTree),
|
|
41
41
|
/**
|
|
42
42
|
* #property
|
|
43
43
|
* draw clickable node bubbles on the tree
|
|
44
44
|
*/
|
|
45
|
-
drawNodeBubbles: defaultDrawNodeBubbles,
|
|
45
|
+
drawNodeBubbles: types.stripDefault(types.boolean, defaultDrawNodeBubbles),
|
|
46
|
+
/**
|
|
47
|
+
* #property
|
|
48
|
+
* auto-size treeAreaWidth to fit the row labels (plus the tree, if drawn)
|
|
49
|
+
* instead of using a fixed width. useful when there is no tree, so the
|
|
50
|
+
* label gutter isn't padded out to the default 400px
|
|
51
|
+
*/
|
|
52
|
+
autoTreeAreaWidth: types.stripDefault(types.boolean, false),
|
|
46
53
|
})
|
|
47
54
|
.actions(self => ({
|
|
48
55
|
/**
|
|
@@ -71,6 +78,12 @@ export function TreeModelF() {
|
|
|
71
78
|
setDrawTree(arg) {
|
|
72
79
|
self.drawTree = arg;
|
|
73
80
|
},
|
|
81
|
+
/**
|
|
82
|
+
* #action
|
|
83
|
+
*/
|
|
84
|
+
setAutoTreeAreaWidth(arg) {
|
|
85
|
+
self.autoTreeAreaWidth = arg;
|
|
86
|
+
},
|
|
74
87
|
/**
|
|
75
88
|
* #action
|
|
76
89
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treeModel.js","sourceRoot":"","sources":["../../src/model/treeModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,iBAAiB,CAAA;AAExB;;GAEG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,KAAK;SACT,KAAK,CAAC;QACL;;WAEG;QACH,UAAU,EAAE,iBAAiB;
|
|
1
|
+
{"version":3,"file":"treeModel.js","sourceRoot":"","sources":["../../src/model/treeModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,eAAe,EACf,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,iBAAiB,CAAA;AAExB;;GAEG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,KAAK;SACT,KAAK,CAAC;QACL;;WAEG;QACH,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC;QAChE;;;WAGG;QACH,gBAAgB,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,uBAAuB,CAAC;QAE5E;;;WAGG;QACH,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,oBAAoB,CAAC;QAErE;;;;WAIG;QACH,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,gBAAgB,CAAC;QAE7D;;;;;WAKG;QACH,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAEtE;;;WAGG;QACH,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,eAAe,CAAC;QAE5D;;;WAGG;QACH,eAAe,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,sBAAsB,CAAC;QAE1E;;;;;WAKG;QACH,iBAAiB,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC;KAC5D,CAAC;SACD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChB;;;WAGG;QACH,gBAAgB,CAAC,CAAS;YACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QACpC,CAAC;QACD;;;WAGG;QACH,YAAY,CAAC,CAAS;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAChC,CAAC;QAED;;WAEG;QACH,mBAAmB,CAAC,GAAY;YAC9B,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAA;QAC7B,CAAC;QACD;;WAEG;QACH,WAAW,CAAC,GAAY;YACtB,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAA;QACrB,CAAC;QACD;;WAEG;QACH,oBAAoB,CAAC,GAAY;YAC/B,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAA;QAC9B,CAAC;QAED;;WAEG;QACH,gBAAgB,CAAC,GAAY;YAC3B,IAAI,CAAC,aAAa,GAAG,GAAG,CAAA;QAC1B,CAAC;QAED;;WAEG;QACH,kBAAkB,CAAC,GAAY;YAC7B,IAAI,CAAC,eAAe,GAAG,GAAG,CAAA;QAC5B,CAAC;QACD;;WAEG;QACH,aAAa,CAAC,GAAY;YACxB,IAAI,CAAC,UAAU,GAAG,GAAG,CAAA;QACvB,CAAC;KACF,CAAC,CAAC,CAAA;AACP,CAAC"}
|