react-msaview 5.0.6 → 5.0.13
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 +106 -106
- package/bundle/index.js.LICENSE.txt +1 -1
- package/bundle/index.js.map +1 -1
- package/dist/components/Checkbox2.js +3 -6
- package/dist/components/Checkbox2.js.map +1 -1
- package/dist/components/MSAViewer.d.ts +14 -0
- package/dist/components/MSAViewer.js +34 -0
- package/dist/components/MSAViewer.js.map +1 -0
- package/dist/components/Track.d.ts +0 -4
- package/dist/components/Track.js +6 -26
- package/dist/components/Track.js.map +1 -1
- package/dist/components/dialogs/DomainDialog.js +2 -5
- package/dist/components/dialogs/DomainDialog.js.map +1 -1
- package/dist/components/dialogs/InterProScanDialog.js +7 -7
- package/dist/components/dialogs/InterProScanDialog.js.map +1 -1
- package/dist/components/dialogs/SettingsDialog.js +3 -19
- package/dist/components/dialogs/SettingsDialog.js.map +1 -1
- package/dist/components/header/ColorSchemeMenu.d.ts +6 -0
- package/dist/components/header/ColorSchemeMenu.js +19 -0
- package/dist/components/header/ColorSchemeMenu.js.map +1 -0
- package/dist/components/header/{ZoomStar.d.ts → FileMenu.d.ts} +2 -2
- package/dist/components/header/FileMenu.js +71 -0
- package/dist/components/header/FileMenu.js.map +1 -0
- package/dist/components/header/Header.js +8 -6
- package/dist/components/header/Header.js.map +1 -1
- package/dist/components/header/HeaderMenu.js +3 -145
- package/dist/components/header/HeaderMenu.js.map +1 -1
- package/dist/components/header/MSASettingsMenu.d.ts +6 -0
- package/dist/components/header/MSASettingsMenu.js +36 -0
- package/dist/components/header/MSASettingsMenu.js.map +1 -0
- package/dist/components/header/SettingsMenu.js +1 -21
- package/dist/components/header/SettingsMenu.js.map +1 -1
- package/dist/components/header/TreeSettingsMenu.d.ts +6 -0
- package/dist/components/header/TreeSettingsMenu.js +74 -0
- package/dist/components/header/TreeSettingsMenu.js.map +1 -0
- package/dist/components/header/ZoomMenu.js +0 -8
- package/dist/components/header/ZoomMenu.js.map +1 -1
- package/dist/components/header/getDomainsMenu.d.ts +31 -0
- package/dist/components/header/getDomainsMenu.js +75 -0
- package/dist/components/header/getDomainsMenu.js.map +1 -0
- package/dist/components/import/ImportFormExamples.js +21 -19
- package/dist/components/import/ImportFormExamples.js.map +1 -1
- package/dist/components/msa/MSACanvas.js +13 -89
- package/dist/components/msa/MSACanvas.js.map +1 -1
- package/dist/components/msa/MSACanvasBlock.js +1 -3
- package/dist/components/msa/MSACanvasBlock.js.map +1 -1
- package/dist/components/msa/renderMSABlock.js +2 -4
- package/dist/components/msa/renderMSABlock.js.map +1 -1
- package/dist/components/msa/renderMSAMouseover.js +1 -7
- package/dist/components/msa/renderMSAMouseover.js.map +1 -1
- package/dist/components/tree/TreeCanvas.js +18 -101
- package/dist/components/tree/TreeCanvas.js.map +1 -1
- package/dist/components/tree/TreeCanvasBlock.js +33 -1
- package/dist/components/tree/TreeCanvasBlock.js.map +1 -1
- package/dist/components/tree/TreeNodeMenu.js +5 -16
- package/dist/components/tree/TreeNodeMenu.js.map +1 -1
- package/dist/components/tree/renderTreeCanvas.js +4 -12
- package/dist/components/tree/renderTreeCanvas.js.map +1 -1
- package/dist/constants.d.ts +0 -2
- package/dist/constants.js +0 -2
- package/dist/constants.js.map +1 -1
- package/dist/fetchUtils.d.ts +0 -1
- package/dist/fetchUtils.js +0 -4
- package/dist/fetchUtils.js.map +1 -1
- package/dist/flatToTree.d.ts +0 -5
- package/dist/flatToTree.js +13 -30
- package/dist/flatToTree.js.map +1 -1
- package/dist/hierarchy.d.ts +28 -0
- package/dist/hierarchy.js +164 -0
- package/dist/hierarchy.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/launchInterProScan.d.ts +0 -5
- package/dist/launchInterProScan.js +5 -3
- package/dist/launchInterProScan.js.map +1 -1
- package/dist/model/DataModel.d.ts +9 -0
- package/dist/model/DataModel.js +12 -1
- package/dist/model/DataModel.js.map +1 -1
- package/dist/model/msaModel.d.ts +3 -0
- package/dist/model/msaModel.js +0 -1
- package/dist/model/msaModel.js.map +1 -1
- package/dist/model/treeModel.d.ts +3 -6
- package/dist/model/treeModel.js +3 -15
- package/dist/model/treeModel.js.map +1 -1
- package/dist/model.d.ts +34 -77
- package/dist/model.js +140 -239
- package/dist/model.js.map +1 -1
- package/dist/neighborJoining.js +40 -633
- package/dist/neighborJoining.js.map +1 -1
- package/dist/parseAsn1.d.ts +0 -12
- package/dist/parseAsn1.js +125 -332
- package/dist/parseAsn1.js.map +1 -1
- package/dist/useWheelScroll.d.ts +8 -0
- package/dist/useWheelScroll.js +93 -0
- package/dist/useWheelScroll.js.map +1 -0
- package/dist/util.d.ts +1 -6
- package/dist/util.js +5 -34
- package/dist/util.js.map +1 -1
- package/dist/vendor/copyToClipboard.d.ts +1 -10
- package/dist/vendor/copyToClipboard.js +14 -109
- package/dist/vendor/copyToClipboard.js.map +1 -1
- package/dist/vendor/fileSaver.d.ts +1 -11
- package/dist/vendor/fileSaver.js +7 -76
- package/dist/vendor/fileSaver.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +14 -14
- package/src/collapseLogic.test.ts +115 -0
- package/src/components/Checkbox2.tsx +9 -18
- package/src/components/MSAViewer.tsx +67 -0
- package/src/components/Track.tsx +11 -30
- package/src/components/dialogs/DomainDialog.tsx +4 -5
- package/src/components/dialogs/InterProScanDialog.tsx +7 -7
- package/src/components/dialogs/SettingsDialog.tsx +0 -37
- package/src/components/header/ColorSchemeMenu.tsx +35 -0
- package/src/components/header/FileMenu.tsx +84 -0
- package/src/components/header/Header.tsx +8 -6
- package/src/components/header/HeaderMenu.tsx +4 -155
- package/src/components/header/MSASettingsMenu.tsx +48 -0
- package/src/components/header/SettingsMenu.tsx +0 -23
- package/src/components/header/TreeSettingsMenu.tsx +96 -0
- package/src/components/header/ZoomMenu.tsx +0 -8
- package/src/components/header/getDomainsMenu.ts +83 -0
- package/src/components/import/ImportFormExamples.tsx +37 -34
- package/src/components/msa/MSACanvas.tsx +21 -97
- package/src/components/msa/MSACanvasBlock.tsx +1 -3
- package/src/components/msa/renderBoxFeatureCanvasBlock.ts +1 -1
- package/src/components/msa/renderMSABlock.ts +2 -5
- package/src/components/msa/renderMSAMouseover.ts +0 -6
- package/src/components/tree/TreeCanvas.tsx +48 -111
- package/src/components/tree/TreeCanvasBlock.tsx +44 -0
- package/src/components/tree/TreeNodeMenu.tsx +5 -14
- package/src/components/tree/renderTreeCanvas.ts +8 -21
- package/src/constants.ts +0 -2
- package/src/fetchUtils.ts +0 -5
- package/src/flatToTree.ts +20 -38
- package/src/hierarchy.test.ts +120 -0
- package/src/hierarchy.ts +220 -0
- package/src/index.ts +2 -0
- package/src/launchInterProScan.ts +4 -3
- package/src/model/DataModel.ts +12 -1
- package/src/model/msaModel.ts +0 -2
- package/src/model/treeModel.ts +2 -18
- package/src/model.ts +203 -278
- package/src/neighborJoining.test.ts +15 -7
- package/src/neighborJoining.ts +40 -632
- package/src/parseAsn1.test.ts +5 -2
- package/src/parseAsn1.ts +135 -405
- package/src/useWheelScroll.ts +109 -0
- package/src/util.ts +5 -50
- package/src/vendor/copyToClipboard.ts +14 -122
- package/src/vendor/fileSaver.ts +8 -105
- package/src/version.ts +1 -1
- package/dist/components/dialogs/AddTrackDialog.d.ts +0 -8
- package/dist/components/dialogs/AddTrackDialog.js +0 -30
- package/dist/components/dialogs/AddTrackDialog.js.map +0 -1
- package/dist/components/dialogs/TabPanel.d.ts +0 -6
- package/dist/components/dialogs/TabPanel.js +0 -6
- package/dist/components/dialogs/TabPanel.js.map +0 -1
- package/dist/components/header/ZoomStar.js +0 -40
- package/dist/components/header/ZoomStar.js.map +0 -1
- package/dist/createPaletteMap.test.d.ts +0 -1
- package/dist/createPaletteMap.test.js +0 -49
- package/dist/createPaletteMap.test.js.map +0 -1
- package/dist/layout.d.ts +0 -26
- package/dist/layout.js +0 -74
- package/dist/layout.js.map +0 -1
- package/dist/neighborJoining.test.d.ts +0 -1
- package/dist/neighborJoining.test.js +0 -110
- package/dist/neighborJoining.test.js.map +0 -1
- package/dist/parseAsn1.test.d.ts +0 -1
- package/dist/parseAsn1.test.js +0 -8
- package/dist/parseAsn1.test.js.map +0 -1
- package/dist/reparseTree.d.ts +0 -2
- package/dist/reparseTree.js +0 -15
- package/dist/reparseTree.js.map +0 -1
- package/dist/rowCoordinateCalculations.test.d.ts +0 -1
- package/dist/rowCoordinateCalculations.test.js +0 -224
- package/dist/rowCoordinateCalculations.test.js.map +0 -1
- package/dist/seqPosToGlobalCol.test.d.ts +0 -1
- package/dist/seqPosToGlobalCol.test.js +0 -60
- package/dist/seqPosToGlobalCol.test.js.map +0 -1
- package/src/components/dialogs/AddTrackDialog.tsx +0 -85
- package/src/components/dialogs/TabPanel.tsx +0 -19
- package/src/components/header/ZoomStar.tsx +0 -74
- package/src/createPaletteMap.test.ts +0 -57
- package/src/layout.ts +0 -118
- package/src/reparseTree.ts +0 -18
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { descendants, links } from "../../hierarchy.js";
|
|
1
2
|
export const padding = 600;
|
|
2
3
|
const extendBounds = 5;
|
|
3
4
|
const radius = 2.5;
|
|
@@ -6,7 +7,7 @@ export function renderTree({ offsetY, ctx, model, theme, blockSizeYOverride, })
|
|
|
6
7
|
const { hierarchy, showBranchLenEffective: showBranchLen, blockSize } = model;
|
|
7
8
|
const by = blockSizeYOverride || blockSize;
|
|
8
9
|
ctx.strokeStyle = theme.palette.text.primary;
|
|
9
|
-
for (const link of
|
|
10
|
+
for (const link of links(hierarchy)) {
|
|
10
11
|
const { source, target } = link;
|
|
11
12
|
if (target.height === 0 && !showBranchLen) {
|
|
12
13
|
continue;
|
|
@@ -35,7 +36,7 @@ export function renderTree({ offsetY, ctx, model, theme, blockSizeYOverride, })
|
|
|
35
36
|
export function renderNodeBubbles({ ctx, clickMap, offsetY, model, blockSizeYOverride, }) {
|
|
36
37
|
const { hierarchy, showBranchLenEffective: showBranchLen, collapsed, blockSize, marginLeft: ml, } = model;
|
|
37
38
|
const by = blockSizeYOverride || blockSize;
|
|
38
|
-
for (const node of
|
|
39
|
+
for (const node of descendants(hierarchy)) {
|
|
39
40
|
const x = showBranchLen ? node.len : node.y;
|
|
40
41
|
if (x === undefined) {
|
|
41
42
|
continue;
|
|
@@ -65,7 +66,7 @@ export function renderNodeBubbles({ ctx, clickMap, offsetY, model, blockSizeYOve
|
|
|
65
66
|
}
|
|
66
67
|
}
|
|
67
68
|
export function renderTreeLabels({ theme, model, offsetY, ctx, clickMap, blockSizeYOverride, }) {
|
|
68
|
-
const { fontSize, showBranchLenEffective: showBranchLen, treeMetadata,
|
|
69
|
+
const { fontSize, showBranchLenEffective: showBranchLen, treeMetadata, blockSize, labelsAlignRight, drawTree, treeAreaWidth, treeAreaWidthMinusMargin, marginLeft, leaves, noTree, } = model;
|
|
69
70
|
const by = blockSizeYOverride || blockSize;
|
|
70
71
|
const emHeight = ctx.measureText('M').width;
|
|
71
72
|
if (labelsAlignRight) {
|
|
@@ -87,15 +88,6 @@ export function renderTreeLabels({ theme, model, offsetY, ctx, clickMap, blockSi
|
|
|
87
88
|
let xp = 0;
|
|
88
89
|
if (!noTree) {
|
|
89
90
|
xp = (showBranchLen ? len : x) || 0;
|
|
90
|
-
if (!showBranchLen &&
|
|
91
|
-
!collapsed.includes(id) &&
|
|
92
|
-
!collapsedLeaves.includes(id)) {
|
|
93
|
-
// this subtraction is a hack to compensate for the leafnode rendering
|
|
94
|
-
// glitch (issue #71). the context is that an extra leaf node is added
|
|
95
|
-
// so that 'collapsing/hiding leaf nodes is possible' but this causes
|
|
96
|
-
// weird workarounds
|
|
97
|
-
xp -= treeWidth / hierarchy.height;
|
|
98
|
-
}
|
|
99
91
|
}
|
|
100
92
|
const { width } = ctx.measureText(displayName);
|
|
101
93
|
ctx.fillStyle = theme.palette.text.primary;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTreeCanvas.js","sourceRoot":"","sources":["../../../src/components/tree/renderTreeCanvas.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"renderTreeCanvas.js","sourceRoot":"","sources":["../../../src/components/tree/renderTreeCanvas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAKvD,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAA;AAE1B,MAAM,YAAY,GAAG,CAAC,CAAA;AACtB,MAAM,MAAM,GAAG,GAAG,CAAA;AAClB,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,CAAA;AAwBpB,MAAM,UAAU,UAAU,CAAC,EACzB,OAAO,EACP,GAAG,EACH,KAAK,EACL,KAAK,EACL,kBAAkB,GAOnB;IACC,MAAM,EAAE,SAAS,EAAE,sBAAsB,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,KAAK,CAAA;IAC7E,MAAM,EAAE,GAAG,kBAAkB,IAAI,SAAS,CAAA;IAC1C,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAA;IAC5C,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAC/B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAC1C,SAAQ;QACV,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,CAAC,CAAE,CAAA;QACpB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAE,CAAA;QACpB,MAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;QAChD,MAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;QAChD,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACzC,SAAQ;QACV,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QAC3B,yEAAyE;QACzE,0EAA0E;QAC1E,QAAQ;QACR,IAAI,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,OAAO,EAAE,CAAC;YACxC,GAAG,CAAC,SAAS,EAAE,CAAA;YACf,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YAClB,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YAClB,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YAClB,GAAG,CAAC,MAAM,EAAE,CAAA;QACd,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,EAChC,GAAG,EACH,QAAQ,EACR,OAAO,EACP,KAAK,EACL,kBAAkB,GAOnB;IACC,MAAM,EACJ,SAAS,EACT,sBAAsB,EAAE,aAAa,EACrC,SAAS,EACT,SAAS,EACT,UAAU,EAAE,EAAE,GACf,GAAG,KAAK,CAAA;IACT,MAAM,EAAE,GAAG,kBAAkB,IAAI,SAAS,CAAA;IAC1C,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;QAC3C,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;YACpB,SAAQ;QACV,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;QACrB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAE,CAAA;QACjB,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;QACzB,IACE,IAAI,CAAC,MAAM,GAAG,CAAC;YACf,CAAC,GAAG,OAAO,GAAG,YAAY;YAC1B,CAAC,GAAG,OAAO,GAAG,EAAE,GAAG,YAAY,EAC/B,CAAC;YACD,GAAG,CAAC,WAAW,GAAG,OAAO,CAAA;YACzB,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAA;YAC1D,GAAG,CAAC,SAAS,EAAE,CAAA;YACf,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;YACrC,GAAG,CAAC,IAAI,EAAE,CAAA;YACV,GAAG,CAAC,MAAM,EAAE,CAAA;YAEZ,QAAQ,EAAE,MAAM,CAAC;gBACf,IAAI,EAAE,CAAC,GAAG,MAAM,GAAG,EAAE;gBACrB,IAAI,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE;gBACzB,IAAI,EAAE,CAAC,GAAG,MAAM;gBAChB,IAAI,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC;gBACpB,MAAM,EAAE,IAAI;gBACZ,EAAE;gBACF,IAAI;aACL,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,KAAK,EACL,KAAK,EACL,OAAO,EACP,GAAG,EACH,QAAQ,EACR,kBAAkB,GAQnB;IACC,MAAM,EACJ,QAAQ,EACR,sBAAsB,EAAE,aAAa,EACrC,YAAY,EACZ,SAAS,EACT,gBAAgB,EAChB,QAAQ,EACR,aAAa,EACb,wBAAwB,EACxB,UAAU,EACV,MAAM,EACN,MAAM,GACP,GAAG,KAAK,CAAA;IACT,MAAM,EAAE,GAAG,kBAAkB,IAAI,SAAS,CAAA;IAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,CAAA;IAC3C,IAAI,gBAAgB,EAAE,CAAC;QACrB,GAAG,CAAC,SAAS,GAAG,OAAO,CAAA;QACvB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACzB,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,SAAS,GAAG,OAAO,CAAA;IACzB,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,EACJ,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GACnB,GAAG,IAAI,CAAA;QACR,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;QACpB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAE,CAAA;QACjB,MAAM,CAAC,GAAG,IAAI,CAAC,CAAE,CAAA;QAEjB,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,IAAI,CAAA;QACtD,IAAI,CAAC,GAAG,OAAO,GAAG,YAAY,IAAI,CAAC,GAAG,OAAO,GAAG,EAAE,GAAG,YAAY,EAAE,CAAC;YAClE,sDAAsD;YACtD,MAAM,EAAE,GAAG,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAA;YAC3B,IAAI,EAAE,GAAG,CAAC,CAAA;YACV,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACrC,CAAC;YAED,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;YAE9C,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAA;YAC1C,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,YAAY,GAAG,CAAC,CAAA;gBACtB,MAAM,MAAM,GAAG,wBAAwB,GAAG,YAAY,CAAA;gBACtD,IAAI,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;oBACxB,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;oBAC9B,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,YAAY,GAAG,KAAK,EAAE,CAAC,CAAC,CAAA;oBAC5C,GAAG,CAAC,MAAM,EAAE,CAAA;gBACd,CAAC;gBACD,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;gBACrC,QAAQ,EAAE,MAAM,CAAC;oBACf,IAAI,EAAE,aAAa,GAAG,KAAK;oBAC3B,IAAI,EAAE,aAAa;oBACnB,IAAI,EAAE,EAAE,GAAG,QAAQ;oBACnB,IAAI,EAAE,EAAE;oBACR,IAAI;oBACJ,EAAE;iBACH,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;gBAClC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;gBACrC,QAAQ,EAAE,MAAM,CAAC;oBACf,IAAI,EAAE,MAAM,GAAG,UAAU;oBACzB,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,UAAU;oBACjC,IAAI,EAAE,EAAE,GAAG,QAAQ;oBACnB,IAAI,EAAE,EAAE;oBACR,IAAI;oBACJ,EAAE;iBACH,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;AACrB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,KAAK,EACL,QAAQ,EACR,GAAG,EACH,OAAO,EACP,KAAK,EACL,0BAA0B,EAC1B,kBAAkB,GASnB;IACC,QAAQ,EAAE,KAAK,EAAE,CAAA;IAEjB,yDAAyD;IACzD,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,IAAI;IACJ,8DAA8D;IAC9D,SAAS,EAAE,UAAU,EAAE,iDAAiD;MACzE,GAAG,KAAK,CAAA;IAET,GAAG,CAAC,cAAc,EAAE,CAAA;IAEpB,0EAA0E;IAC1E,yEAAyE;IACzE,0EAA0E;IAC1E,sEAAsE;IACtE,4CAA4C;IAC5C,MAAM,CAAC,GACL,IAAI,GAAG,CAAC;QACN,CAAC,CAAC,MAAM,CAAC,iBAAiB;QAC1B,CAAC,CAAC,0BAA0B,IAAI,kBAAkB,CAAA;IACtD,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACf,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAA;IAEnC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAA;IACrB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,QAAQ,IAAI,CAAC,CAAA;IAEjD,IAAI,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;QACxB,UAAU,CAAC;YACT,GAAG;YACH,OAAO;YACP,KAAK;YACL,KAAK;YACL,kBAAkB;SACnB,CAAC,CAAA;QAEF,IAAI,eAAe,EAAE,CAAC;YACpB,iBAAiB,CAAC;gBAChB,GAAG;gBACH,OAAO;gBACP,QAAQ;gBACR,KAAK;gBACL,kBAAkB;aACnB,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,gBAAgB,CAAC;YACf,GAAG;YACH,OAAO;YACP,KAAK;YACL,QAAQ;YACR,KAAK;YACL,kBAAkB;SACnB,CAAC,CAAA;IACJ,CAAC;IAED,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,EAAE,CAAA;AACpB,CAAC"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -7,7 +7,6 @@ export declare const defaultCurrentAlignment = 0;
|
|
|
7
7
|
export declare const defaultShowDomains = false;
|
|
8
8
|
export declare const defaultHideGaps = true;
|
|
9
9
|
export declare const defaultAllowedGappyness = 100;
|
|
10
|
-
export declare const defaultContrastLettering = true;
|
|
11
10
|
export declare const defaultSubFeatureRows = false;
|
|
12
11
|
export declare const defaultDrawMsaLetters = true;
|
|
13
12
|
export declare const defaultBgColor = true;
|
|
@@ -16,7 +15,6 @@ export declare const defaultDrawLabels = true;
|
|
|
16
15
|
export declare const defaultLabelsAlignRight = false;
|
|
17
16
|
export declare const defaultTreeAreaWidth = 400;
|
|
18
17
|
export declare const defaultTreeWidth = 300;
|
|
19
|
-
export declare const defaultTreeWidthMatchesArea = true;
|
|
20
18
|
export declare const defaultShowBranchLen = true;
|
|
21
19
|
export declare const defaultDrawTree = true;
|
|
22
20
|
export declare const defaultDrawNodeBubbles = true;
|
package/dist/constants.js
CHANGED
|
@@ -8,7 +8,6 @@ export const defaultCurrentAlignment = 0;
|
|
|
8
8
|
export const defaultShowDomains = false;
|
|
9
9
|
export const defaultHideGaps = true;
|
|
10
10
|
export const defaultAllowedGappyness = 100;
|
|
11
|
-
export const defaultContrastLettering = true;
|
|
12
11
|
export const defaultSubFeatureRows = false;
|
|
13
12
|
export const defaultDrawMsaLetters = true;
|
|
14
13
|
// MSA model defaults
|
|
@@ -19,7 +18,6 @@ export const defaultDrawLabels = true;
|
|
|
19
18
|
export const defaultLabelsAlignRight = false;
|
|
20
19
|
export const defaultTreeAreaWidth = 400;
|
|
21
20
|
export const defaultTreeWidth = 300;
|
|
22
|
-
export const defaultTreeWidthMatchesArea = true;
|
|
23
21
|
export const defaultShowBranchLen = true;
|
|
24
22
|
export const defaultDrawTree = true;
|
|
25
23
|
export const defaultDrawNodeBubbles = true;
|
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,
|
|
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,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAA;AAEzC,qBAAqB;AACrB,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,CAAA;AAClC,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAA;AAEhD,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,5 +1,4 @@
|
|
|
1
1
|
export declare function myfetch(url: string, args?: RequestInit): Promise<Response>;
|
|
2
2
|
export declare function textfetch(url: string, args?: RequestInit): Promise<string>;
|
|
3
3
|
export declare function jsonfetch<T>(url: string, args?: RequestInit): Promise<T>;
|
|
4
|
-
export declare function arraybufferfetch(url: string): Promise<ArrayBuffer>;
|
|
5
4
|
export declare function timeout(time: number): Promise<unknown>;
|
package/dist/fetchUtils.js
CHANGED
|
@@ -13,10 +13,6 @@ export async function jsonfetch(url, args) {
|
|
|
13
13
|
const response = await myfetch(url, args);
|
|
14
14
|
return response.json();
|
|
15
15
|
}
|
|
16
|
-
export async function arraybufferfetch(url) {
|
|
17
|
-
const res = await myfetch(url);
|
|
18
|
-
return res.arrayBuffer();
|
|
19
|
-
}
|
|
20
16
|
export function timeout(time) {
|
|
21
17
|
return new Promise(res => setTimeout(res, time));
|
|
22
18
|
}
|
package/dist/fetchUtils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchUtils.js","sourceRoot":"","sources":["../src/fetchUtils.ts"],"names":[],"mappings":"AAAA,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,
|
|
1
|
+
{"version":3,"file":"fetchUtils.js","sourceRoot":"","sources":["../src/fetchUtils.ts"],"names":[],"mappings":"AAAA,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;IAClC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAA;AAClD,CAAC"}
|
package/dist/flatToTree.d.ts
CHANGED
|
@@ -8,10 +8,5 @@ interface TreeNode {
|
|
|
8
8
|
parent?: string;
|
|
9
9
|
children: TreeNode[];
|
|
10
10
|
}
|
|
11
|
-
/**
|
|
12
|
-
* Parses a flat list of items into a tree structure
|
|
13
|
-
* @param items - Array of flat items with id and optional parent
|
|
14
|
-
* @returns Array of root tree nodes
|
|
15
|
-
*/
|
|
16
11
|
export declare function flatToTree(items: FlatItem[]): TreeNode;
|
|
17
12
|
export {};
|
package/dist/flatToTree.js
CHANGED
|
@@ -1,41 +1,24 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Parses a flat list of items into a tree structure
|
|
3
|
-
* @param items - Array of flat items with id and optional parent
|
|
4
|
-
* @returns Array of root tree nodes
|
|
5
|
-
*/
|
|
6
1
|
export function flatToTree(items) {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
items.forEach(item => {
|
|
11
|
-
nodeMap.set(item.id, {
|
|
12
|
-
...item,
|
|
2
|
+
const nodeMap = new Map(items.map(item => [
|
|
3
|
+
item.id,
|
|
4
|
+
{
|
|
13
5
|
id: `${item.id}`,
|
|
14
6
|
name: `${item.id}`,
|
|
15
7
|
parent: item.parent !== undefined ? `${item.parent}` : undefined,
|
|
16
8
|
children: [],
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
const
|
|
21
|
-
items.forEach(item => {
|
|
9
|
+
},
|
|
10
|
+
]));
|
|
11
|
+
let root;
|
|
12
|
+
for (const item of items) {
|
|
22
13
|
const node = nodeMap.get(item.id);
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
if (parentNode) {
|
|
27
|
-
parentNode.children.push(node);
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
// Parent doesn't exist, treat as root
|
|
31
|
-
roots.push(node);
|
|
32
|
-
}
|
|
14
|
+
const parent = item.parent !== undefined ? nodeMap.get(item.parent) : undefined;
|
|
15
|
+
if (parent) {
|
|
16
|
+
parent.children.push(node);
|
|
33
17
|
}
|
|
34
18
|
else {
|
|
35
|
-
|
|
36
|
-
roots.push(node);
|
|
19
|
+
root ??= node;
|
|
37
20
|
}
|
|
38
|
-
}
|
|
39
|
-
return
|
|
21
|
+
}
|
|
22
|
+
return root;
|
|
40
23
|
}
|
|
41
24
|
//# sourceMappingURL=flatToTree.js.map
|
package/dist/flatToTree.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flatToTree.js","sourceRoot":"","sources":["../src/flatToTree.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flatToTree.js","sourceRoot":"","sources":["../src/flatToTree.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,UAAU,CAAC,KAAiB;IAC1C,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAChB,IAAI,CAAC,EAAE;QACP;YACE,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE;YAChB,IAAI,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE;YAClB,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS;YAChE,QAAQ,EAAE,EAAgB;SAC3B;KACF,CAAC,CACH,CAAA;IAED,IAAI,IAA0B,CAAA;IAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAE,CAAA;QAClC,MAAM,MAAM,GACV,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAClE,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,IAAI,KAAK,IAAI,CAAA;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAK,CAAA;AACd,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { NodeWithIds } from './types.ts';
|
|
2
|
+
export interface HierarchyNode<T = NodeWithIds> {
|
|
3
|
+
data: T;
|
|
4
|
+
children: HierarchyNode<T>[] | null;
|
|
5
|
+
parent: HierarchyNode<T> | null;
|
|
6
|
+
depth: number;
|
|
7
|
+
height: number;
|
|
8
|
+
value?: number;
|
|
9
|
+
x?: number;
|
|
10
|
+
y?: number;
|
|
11
|
+
len?: number;
|
|
12
|
+
_children?: HierarchyNode<T>[] | null;
|
|
13
|
+
}
|
|
14
|
+
export interface HierarchyLink<T = NodeWithIds> {
|
|
15
|
+
source: HierarchyNode<T>;
|
|
16
|
+
target: HierarchyNode<T>;
|
|
17
|
+
}
|
|
18
|
+
export declare function hierarchy<T>(data: T, childrenAccessor: (d: T) => T[] | undefined): HierarchyNode<T>;
|
|
19
|
+
export declare function sum<T>(node: HierarchyNode<T>, valueFn: (d: T) => number): HierarchyNode<T>;
|
|
20
|
+
export declare function sort<T>(node: HierarchyNode<T>, compareFn: (a: HierarchyNode<T>, b: HierarchyNode<T>) => number): HierarchyNode<T>;
|
|
21
|
+
export declare function find<T>(node: HierarchyNode<T>, predicate: (n: HierarchyNode<T>) => boolean): HierarchyNode<T> | undefined;
|
|
22
|
+
export declare function leaves<T>(node: HierarchyNode<T>): HierarchyNode<T>[];
|
|
23
|
+
export declare function descendants<T>(node: HierarchyNode<T>): HierarchyNode<T>[];
|
|
24
|
+
export declare function links<T>(node: HierarchyNode<T>): HierarchyLink<T>[];
|
|
25
|
+
export declare function clusterLayout<T>(root: HierarchyNode<T>, sizeX: number, sizeY: number): void;
|
|
26
|
+
export declare function collapse<T>(node: HierarchyNode<T>): void;
|
|
27
|
+
export declare function maxLength(d: HierarchyNode): number;
|
|
28
|
+
export declare function setBrLength(d: HierarchyNode, y0: number, k: number): void;
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
function computeHeight(node) {
|
|
2
|
+
let h = 0;
|
|
3
|
+
if (node.children) {
|
|
4
|
+
for (const child of node.children) {
|
|
5
|
+
const ch = computeHeight(child) + 1;
|
|
6
|
+
if (ch > h) {
|
|
7
|
+
h = ch;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
node.height = h;
|
|
12
|
+
return h;
|
|
13
|
+
}
|
|
14
|
+
function wrap(data, childrenAccessor, parent, depth) {
|
|
15
|
+
const kids = childrenAccessor(data);
|
|
16
|
+
const node = {
|
|
17
|
+
data,
|
|
18
|
+
children: null,
|
|
19
|
+
parent,
|
|
20
|
+
depth,
|
|
21
|
+
height: 0,
|
|
22
|
+
};
|
|
23
|
+
if (kids?.length) {
|
|
24
|
+
node.children = kids.map(d => wrap(d, childrenAccessor, node, depth + 1));
|
|
25
|
+
}
|
|
26
|
+
return node;
|
|
27
|
+
}
|
|
28
|
+
export function hierarchy(data, childrenAccessor) {
|
|
29
|
+
const root = wrap(data, childrenAccessor, null, 0);
|
|
30
|
+
computeHeight(root);
|
|
31
|
+
return root;
|
|
32
|
+
}
|
|
33
|
+
export function sum(node, valueFn) {
|
|
34
|
+
function visit(n) {
|
|
35
|
+
let s = valueFn(n.data);
|
|
36
|
+
if (n.children) {
|
|
37
|
+
for (const child of n.children) {
|
|
38
|
+
s += visit(child);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
n.value = s;
|
|
42
|
+
return s;
|
|
43
|
+
}
|
|
44
|
+
visit(node);
|
|
45
|
+
return node;
|
|
46
|
+
}
|
|
47
|
+
export function sort(node, compareFn) {
|
|
48
|
+
function visit(n) {
|
|
49
|
+
if (n.children) {
|
|
50
|
+
n.children.sort(compareFn);
|
|
51
|
+
for (const child of n.children) {
|
|
52
|
+
visit(child);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
visit(node);
|
|
57
|
+
return node;
|
|
58
|
+
}
|
|
59
|
+
export function find(node, predicate) {
|
|
60
|
+
if (predicate(node)) {
|
|
61
|
+
return node;
|
|
62
|
+
}
|
|
63
|
+
if (node.children) {
|
|
64
|
+
for (const child of node.children) {
|
|
65
|
+
const result = find(child, predicate);
|
|
66
|
+
if (result) {
|
|
67
|
+
return result;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return undefined;
|
|
72
|
+
}
|
|
73
|
+
export function leaves(node) {
|
|
74
|
+
const result = [];
|
|
75
|
+
function visit(n) {
|
|
76
|
+
if (n.children) {
|
|
77
|
+
for (const child of n.children) {
|
|
78
|
+
visit(child);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
result.push(n);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
visit(node);
|
|
86
|
+
return result;
|
|
87
|
+
}
|
|
88
|
+
export function descendants(node) {
|
|
89
|
+
const result = [];
|
|
90
|
+
function visit(n) {
|
|
91
|
+
result.push(n);
|
|
92
|
+
if (n.children) {
|
|
93
|
+
for (const child of n.children) {
|
|
94
|
+
visit(child);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
visit(node);
|
|
99
|
+
return result;
|
|
100
|
+
}
|
|
101
|
+
export function links(node) {
|
|
102
|
+
const result = [];
|
|
103
|
+
function visit(n) {
|
|
104
|
+
if (n.children) {
|
|
105
|
+
for (const child of n.children) {
|
|
106
|
+
result.push({ source: n, target: child });
|
|
107
|
+
visit(child);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
visit(node);
|
|
112
|
+
return result;
|
|
113
|
+
}
|
|
114
|
+
export function clusterLayout(root, sizeX, sizeY) {
|
|
115
|
+
const leafNodes = leaves(root);
|
|
116
|
+
const n = leafNodes.length;
|
|
117
|
+
const step = sizeX / n;
|
|
118
|
+
for (let i = 0; i < n; i++) {
|
|
119
|
+
leafNodes[i].x = (i + 0.5) * step;
|
|
120
|
+
}
|
|
121
|
+
function assignX(node) {
|
|
122
|
+
if (!node.children) {
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
125
|
+
for (const child of node.children) {
|
|
126
|
+
assignX(child);
|
|
127
|
+
}
|
|
128
|
+
let sum = 0;
|
|
129
|
+
for (const child of node.children) {
|
|
130
|
+
sum += child.x;
|
|
131
|
+
}
|
|
132
|
+
node.x = sum / node.children.length;
|
|
133
|
+
}
|
|
134
|
+
assignX(root);
|
|
135
|
+
const rootHeight = root.height;
|
|
136
|
+
function assignY(node, depth) {
|
|
137
|
+
node.y = rootHeight === 0 ? sizeY : (depth / rootHeight) * sizeY;
|
|
138
|
+
if (node.children) {
|
|
139
|
+
for (const child of node.children) {
|
|
140
|
+
assignY(child, depth + 1);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
assignY(root, 0);
|
|
145
|
+
}
|
|
146
|
+
export function collapse(node) {
|
|
147
|
+
if (node.children) {
|
|
148
|
+
node._children = node.children;
|
|
149
|
+
node.children = null;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
export function maxLength(d) {
|
|
153
|
+
return ((d.data.length || 0) +
|
|
154
|
+
(d.children ? d.children.reduce((m, c) => Math.max(m, maxLength(c)), 0) : 0));
|
|
155
|
+
}
|
|
156
|
+
export function setBrLength(d, y0, k) {
|
|
157
|
+
d.len = (y0 += Math.max(d.data.length || 0, 0)) * k;
|
|
158
|
+
if (d.children) {
|
|
159
|
+
for (const child of d.children) {
|
|
160
|
+
setBrLength(child, y0, k);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
//# sourceMappingURL=hierarchy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hierarchy.js","sourceRoot":"","sources":["../src/hierarchy.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { default as MSAView } from './components/Loading.tsx';
|
|
2
|
+
export { default as MSAViewer } from './components/MSAViewer.tsx';
|
|
2
3
|
export { type MsaViewModel, default as MSAModelF } from './model.ts';
|
|
3
4
|
export type { MSAParserType } from 'msa-parsers';
|
|
5
|
+
export type { HierarchyNode } from './hierarchy.ts';
|
|
4
6
|
export type { InterProScanResults } from './launchInterProScan.ts';
|
|
5
7
|
export type { Accession, BasicTrack, BasicTrackModel, Node, NodeWithIds, NodeWithIdsAndLength, TextTrackModel, } from './types.ts';
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAA0B,CAAA;AAC7D,OAAO,EAAqB,OAAO,IAAI,SAAS,EAAE,MAAM,YAAY,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAA0B,CAAA;AAC7D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA4B,CAAA;AACjE,OAAO,EAAqB,OAAO,IAAI,SAAS,EAAE,MAAM,YAAY,CAAA"}
|
|
@@ -20,7 +20,6 @@ export interface InterProScanResults {
|
|
|
20
20
|
export interface InterProScanResponse {
|
|
21
21
|
results: InterProScanResults[];
|
|
22
22
|
}
|
|
23
|
-
export declare function loadInterProScanResults(jobId: string): Promise<InterProScanResponse>;
|
|
24
23
|
export declare function launchInterProScan({ algorithm, seq, programs, onJobId, onProgress, model, }: {
|
|
25
24
|
algorithm: string;
|
|
26
25
|
seq: string;
|
|
@@ -32,7 +31,3 @@ export declare function launchInterProScan({ algorithm, seq, programs, onJobId,
|
|
|
32
31
|
onJobId?: (arg: string) => void;
|
|
33
32
|
model: MsaViewModel;
|
|
34
33
|
}): Promise<void>;
|
|
35
|
-
export declare function loadInterProScanResultsWithStatus({ jobId, model, }: {
|
|
36
|
-
jobId: string;
|
|
37
|
-
model: MsaViewModel;
|
|
38
|
-
}): Promise<void>;
|
|
@@ -17,7 +17,7 @@ async function runInterProScan({ seq, onProgress, onJobId, programs, model, }) {
|
|
|
17
17
|
});
|
|
18
18
|
await loadInterProScanResultsWithStatus({ jobId, model });
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
function loadInterProScanResults(jobId) {
|
|
21
21
|
return jsonfetch(`${base}/iprscan5/result/${jobId}/json`);
|
|
22
22
|
}
|
|
23
23
|
async function wait({ onProgress, jobId, }) {
|
|
@@ -54,13 +54,15 @@ export async function launchInterProScan({ algorithm, seq, programs, onJobId, on
|
|
|
54
54
|
model,
|
|
55
55
|
});
|
|
56
56
|
}
|
|
57
|
-
|
|
57
|
+
else {
|
|
58
|
+
throw new Error('unknown algorithm');
|
|
59
|
+
}
|
|
58
60
|
}
|
|
59
61
|
finally {
|
|
60
62
|
onProgress();
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
|
-
|
|
65
|
+
async function loadInterProScanResultsWithStatus({ jobId, model, }) {
|
|
64
66
|
try {
|
|
65
67
|
model.setStatus({
|
|
66
68
|
msg: `Downloading results of ${jobId} (for larger sequences this can be slow, click status to download and upload in the manual tab)`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launchInterProScan.js","sourceRoot":"","sources":["../src/launchInterProScan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAE/C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAI/D,MAAM,IAAI,GAAG,2CAA2C,CAAA;AAmBxD,KAAK,UAAU,eAAe,CAAC,EAC7B,GAAG,EACH,UAAU,EACV,OAAO,EACP,QAAQ,EACR,KAAK,GAON;IACC,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,GAAG,IAAI,eAAe,EAAE;QACpD,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,eAAe,CAAC;YACxB,KAAK,EAAE,uBAAuB;YAC9B,QAAQ,EAAE,GAAG;YACb,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;SAC7B,CAAC;KACH,CAAC,CAAA;IACF,OAAO,EAAE,CAAC,KAAK,CAAC,CAAA;IAChB,MAAM,IAAI,CAAC;QACT,KAAK;QACL,UAAU;KACX,CAAC,CAAA;IACF,MAAM,iCAAiC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;AAC3D,CAAC;AAED,
|
|
1
|
+
{"version":3,"file":"launchInterProScan.js","sourceRoot":"","sources":["../src/launchInterProScan.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,10 @@ export declare function DataModelF(): import("@jbrowse/mobx-state-tree").IModelT
|
|
|
18
18
|
* #property
|
|
19
19
|
*/
|
|
20
20
|
treeMetadata: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
21
|
+
/**
|
|
22
|
+
* #property
|
|
23
|
+
*/
|
|
24
|
+
gff: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
21
25
|
}, {
|
|
22
26
|
/**
|
|
23
27
|
* #action
|
|
@@ -31,8 +35,13 @@ export declare function DataModelF(): import("@jbrowse/mobx-state-tree").IModelT
|
|
|
31
35
|
* #action
|
|
32
36
|
*/
|
|
33
37
|
setTreeMetadata(treeMetadata?: string): void;
|
|
38
|
+
/**
|
|
39
|
+
* #action
|
|
40
|
+
*/
|
|
41
|
+
setGFF(gff?: string): void;
|
|
34
42
|
}, import("@jbrowse/mobx-state-tree")._NotCustomized, {
|
|
35
43
|
tree: string | undefined;
|
|
36
44
|
msa: string | undefined;
|
|
37
45
|
treeMetadata: string | undefined;
|
|
46
|
+
gff: string | undefined;
|
|
38
47
|
}>;
|
package/dist/model/DataModel.js
CHANGED
|
@@ -21,6 +21,10 @@ export function DataModelF() {
|
|
|
21
21
|
* #property
|
|
22
22
|
*/
|
|
23
23
|
treeMetadata: types.maybe(types.string),
|
|
24
|
+
/**
|
|
25
|
+
* #property
|
|
26
|
+
*/
|
|
27
|
+
gff: types.maybe(types.string),
|
|
24
28
|
})
|
|
25
29
|
.actions(self => ({
|
|
26
30
|
/**
|
|
@@ -41,14 +45,21 @@ export function DataModelF() {
|
|
|
41
45
|
setTreeMetadata(treeMetadata) {
|
|
42
46
|
self.treeMetadata = treeMetadata;
|
|
43
47
|
},
|
|
48
|
+
/**
|
|
49
|
+
* #action
|
|
50
|
+
*/
|
|
51
|
+
setGFF(gff) {
|
|
52
|
+
self.gff = gff;
|
|
53
|
+
},
|
|
44
54
|
}))
|
|
45
55
|
.postProcessSnapshot(snap => {
|
|
46
|
-
const { tree, msa, treeMetadata } = snap;
|
|
56
|
+
const { tree, msa, treeMetadata, gff } = snap;
|
|
47
57
|
const max = 50_000;
|
|
48
58
|
return {
|
|
49
59
|
tree: tree && tree.length > max ? undefined : tree,
|
|
50
60
|
msa: msa && msa.length > max ? undefined : msa,
|
|
51
61
|
treeMetadata: treeMetadata && treeMetadata.length > max ? undefined : treeMetadata,
|
|
62
|
+
gff: gff && gff.length > max ? undefined : gff,
|
|
52
63
|
};
|
|
53
64
|
});
|
|
54
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataModel.js","sourceRoot":"","sources":["../../src/model/DataModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,KAAK;SACT,KAAK,CAAC;QACL;;WAEG;QACH,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAC/B;;WAEG;QACH,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAC9B;;WAEG;QACH,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"DataModel.js","sourceRoot":"","sources":["../../src/model/DataModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD;;;;;;GAMG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,KAAK;SACT,KAAK,CAAC;QACL;;WAEG;QACH,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAC/B;;WAEG;QACH,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAC9B;;WAEG;QACH,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QACvC;;WAEG;QACH,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;KAC/B,CAAC;SACD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChB;;WAEG;QACH,OAAO,CAAC,IAAa;YACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAClB,CAAC;QACD;;WAEG;QACH,MAAM,CAAC,GAAY;YACjB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QAChB,CAAC;QACD;;WAEG;QACH,eAAe,CAAC,YAAqB;YACnC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAClC,CAAC;QACD;;WAEG;QACH,MAAM,CAAC,GAAY;YACjB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;QAChB,CAAC;KACF,CAAC,CAAC;SACF,mBAAmB,CAAC,IAAI,CAAC,EAAE;QAC1B,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;QAC7C,MAAM,GAAG,GAAG,MAAM,CAAA;QAClB,OAAO;YACL,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;YAClD,GAAG,EAAE,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;YAC9C,YAAY,EACV,YAAY,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY;YACtE,GAAG,EAAE,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;SAC/C,CAAA;IACH,CAAC,CAAC,CAAA;AACN,CAAC"}
|
package/dist/model/msaModel.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* #stateModel MSAModel
|
|
3
|
+
*/
|
|
1
4
|
export declare function MSAModelF(): import("@jbrowse/mobx-state-tree").IModelType<{
|
|
2
5
|
bgColor: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
3
6
|
colorSchemeName: import("@jbrowse/mobx-state-tree").IType<string | undefined, string, string>;
|
package/dist/model/msaModel.js
CHANGED
|
@@ -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,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAExE;;GAEG;AACH,
|
|
1
|
+
{"version":3,"file":"msaModel.js","sourceRoot":"","sources":["../../src/model/msaModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAEhD,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAExE;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,KAAK;SACT,KAAK,CAAC;QACL;;;WAGG;QACH,OAAO,EAAE,cAAc;QAEvB;;;WAGG;QACH,eAAe,EAAE,sBAAsB;KACxC,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;KACF,CAAC,CAAC,CAAA;AACP,CAAC"}
|
|
@@ -1,18 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* #stateModel Tree
|
|
3
|
+
*/
|
|
1
4
|
export declare function TreeModelF(): import("@jbrowse/mobx-state-tree").IModelType<{
|
|
2
5
|
drawLabels: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
3
6
|
labelsAlignRight: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
4
7
|
treeAreaWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
5
8
|
treeWidth: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
6
|
-
treeWidthMatchesArea: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
7
9
|
showBranchLen: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
8
10
|
drawTree: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
9
11
|
drawNodeBubbles: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
10
12
|
}, {
|
|
11
|
-
/**
|
|
12
|
-
* #action
|
|
13
|
-
* synchronize the treewidth and treeareawidth
|
|
14
|
-
*/
|
|
15
|
-
setTreeWidthMatchesArea(arg: boolean): void;
|
|
16
13
|
/**
|
|
17
14
|
* #action
|
|
18
15
|
* set tree area width (px)
|