react-msaview 5.2.1 → 5.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/bundle/index.js +2 -2
  2. package/bundle/index.js.map +1 -1
  3. package/dist/components/Loading.js +6 -4
  4. package/dist/components/Loading.js.map +1 -1
  5. package/dist/components/MSAViewer.d.ts +3 -1
  6. package/dist/components/MSAViewer.js +2 -1
  7. package/dist/components/MSAViewer.js.map +1 -1
  8. package/dist/components/renderCtx.d.ts +1 -1
  9. package/dist/components/tree/TreeNodeMenu.js +1 -1
  10. package/dist/components/tree/TreeNodeMenu.js.map +1 -1
  11. package/dist/components/tree/renderTreeCanvas.d.ts +10 -0
  12. package/dist/components/tree/renderTreeCanvas.js +81 -12
  13. package/dist/components/tree/renderTreeCanvas.js.map +1 -1
  14. package/dist/fetchUtils.d.ts +19 -0
  15. package/dist/fetchUtils.js +28 -0
  16. package/dist/fetchUtils.js.map +1 -1
  17. package/dist/hierarchy.d.ts +9 -1
  18. package/dist/hierarchy.js +34 -0
  19. package/dist/hierarchy.js.map +1 -1
  20. package/dist/model/msaModel.d.ts +7 -0
  21. package/dist/model/msaModel.js +14 -0
  22. package/dist/model/msaModel.js.map +1 -1
  23. package/dist/model.d.ts +5 -2
  24. package/dist/model.js +65 -16
  25. package/dist/model.js.map +1 -1
  26. package/dist/version.d.ts +1 -1
  27. package/dist/version.js +1 -1
  28. package/package.json +3 -3
  29. package/src/components/Loading.tsx +15 -5
  30. package/src/components/MSAViewer.tsx +4 -0
  31. package/src/components/renderCtx.ts +1 -0
  32. package/src/components/tree/TreeNodeMenu.tsx +1 -1
  33. package/src/components/tree/renderTreeCanvas.ts +113 -11
  34. package/src/fetchUtils.test.ts +66 -0
  35. package/src/fetchUtils.ts +48 -0
  36. package/src/hierarchy.test.ts +56 -0
  37. package/src/hierarchy.ts +41 -1
  38. package/src/impgRender.test.tsx +125 -0
  39. package/src/model/msaModel.ts +19 -0
  40. package/src/model.ts +67 -21
  41. package/src/version.ts +1 -1
package/dist/model.js CHANGED
@@ -1,4 +1,4 @@
1
- import { clamp, fetchAndMaybeUnzipText, groupBy, notEmpty, sum, } from '@jbrowse/core/util';
1
+ import { clamp, groupBy, notEmpty, sum } from '@jbrowse/core/util';
2
2
  import { openLocation } from '@jbrowse/core/util/io';
3
3
  import { ElementId, FileLocation } from '@jbrowse/core/util/types/mst';
4
4
  import { addDisposer, cast, types } from '@jbrowse/mobx-state-tree';
@@ -12,8 +12,9 @@ import ConservationTrack from "./components/ConservationTrack.js";
12
12
  import TextTrack from "./components/TextTrack.js";
13
13
  import { defaultAllowedGappyness, defaultBgColor, defaultColWidth, defaultColorSchemeName, defaultCurrentAlignment, defaultDrawLabels, defaultDrawMsaLetters, defaultDrawNodeBubbles, defaultDrawTree, defaultHeight, defaultHideGaps, defaultLabelsAlignRight, defaultRowHeight, defaultScrollX, defaultScrollY, defaultScrollZoom, defaultShowBranchLen, defaultShowDomains, defaultSubFeatureRows, defaultTreeAreaWidth, defaultTreeWidth, maxCellSize, minColWidth, minRowHeight, } from "./constants.js";
14
14
  import { createPaletteMap } from "./createPaletteMap.js";
15
+ import { fetchTextWithProgress, isAbortError } from "./fetchUtils.js";
15
16
  import { flatToTree } from "./flatToTree.js";
16
- import { calcDepthToLeaf, clusterLayout, collapse, find, findMaxBranchLen, hierarchy, leaves, links, maxLength, setBrLength, sort, sum as hierarchySum, } from "./hierarchy.js";
17
+ import { calcDepthToLeaf, clusterLayout, collapse, collapsedSubtreeLengthExtent, find, findMaxBranchLen, forEachDescendant, hierarchy, leaves, links, maxLength, setBrLength, sort, sum as hierarchySum, } from "./hierarchy.js";
17
18
  import { measureTextCanvas } from "./measureTextCanvas.js";
18
19
  import { DataModelF } from "./model/DataModel.js";
19
20
  import { DialogQueueSessionMixin } from "./model/DialogQueue.js";
@@ -534,7 +535,9 @@ function stateModelFactory() {
534
535
  const text = self.data.msa;
535
536
  // uses parseMSA so the named MSAParserType return type is portable
536
537
  // to downstream consumers (avoids TS2883 with default exports)
537
- return text ? parseMSA(text, self.currentAlignment) : null;
538
+ return text
539
+ ? parseMSA(text, self.currentAlignment, self.msaFormat)
540
+ : null;
538
541
  },
539
542
  /**
540
543
  * #getter
@@ -859,7 +862,18 @@ function stateModelFactory() {
859
862
  clusterLayout(r, this.totalHeight, self.treeWidth);
860
863
  r.data.length = 0;
861
864
  const max = maxLength(r);
862
- setBrLength(r, 0, max ? self.treeWidth / max : 0);
865
+ const k = max ? self.treeWidth / max : 0;
866
+ setBrLength(r, 0, k);
867
+ // for each collapsed clade, record the pixel x-positions of its
868
+ // nearest/farthest tips so the renderer can draw a triangle that spans
869
+ // the branch-length extent of the hidden subtree
870
+ forEachDescendant(r, node => {
871
+ if (node._children) {
872
+ const { min, max: mx } = collapsedSubtreeLengthExtent(node);
873
+ node.collapsedTipXNear = (node.len ?? 0) + min * k;
874
+ node.collapsedTipXFar = (node.len ?? 0) + mx * k;
875
+ }
876
+ });
863
877
  return r;
864
878
  },
865
879
  /**
@@ -1491,7 +1505,11 @@ function stateModelFactory() {
1491
1505
  const generation = ++treeGeneration;
1492
1506
  try {
1493
1507
  self.setLoadingTree(true);
1494
- const text = await fetchAndMaybeUnzipText(openLocation(treeFilehandle));
1508
+ const text = await fetchTextWithProgress(openLocation(treeFilehandle), status => {
1509
+ if (generation === treeGeneration) {
1510
+ self.setStatus(status);
1511
+ }
1512
+ });
1495
1513
  if (generation === treeGeneration) {
1496
1514
  transaction(() => {
1497
1515
  self.setTree(text);
@@ -1504,8 +1522,15 @@ function stateModelFactory() {
1504
1522
  }
1505
1523
  catch (e) {
1506
1524
  if (generation === treeGeneration) {
1507
- console.error(e);
1508
- self.setError(e);
1525
+ if (isAbortError(e)) {
1526
+ // cancelled by the user: drop the filehandle so the view
1527
+ // returns to the import form instead of a stuck spinner
1528
+ self.setTreeFilehandle(undefined);
1529
+ }
1530
+ else {
1531
+ console.error(e);
1532
+ self.setError(e);
1533
+ }
1509
1534
  }
1510
1535
  }
1511
1536
  finally {
@@ -1520,11 +1545,16 @@ function stateModelFactory() {
1520
1545
  const { treeMetadataFilehandle } = self;
1521
1546
  if (treeMetadataFilehandle) {
1522
1547
  try {
1523
- self.setTreeMetadata(await fetchAndMaybeUnzipText(openLocation(treeMetadataFilehandle)));
1548
+ self.setTreeMetadata(await fetchTextWithProgress(openLocation(treeMetadataFilehandle), status => {
1549
+ self.setStatus(status);
1550
+ }));
1524
1551
  }
1525
1552
  catch (e) {
1526
- console.error(e);
1527
- self.setError(e);
1553
+ // ignore user cancel (isAbortError); treeMetadata is optional
1554
+ if (!isAbortError(e)) {
1555
+ console.error(e);
1556
+ self.setError(e);
1557
+ }
1528
1558
  }
1529
1559
  }
1530
1560
  }));
@@ -1546,15 +1576,23 @@ function stateModelFactory() {
1546
1576
  const { gffFilehandle } = self;
1547
1577
  if (gffFilehandle) {
1548
1578
  try {
1549
- const gffText = await fetchAndMaybeUnzipText(openLocation(gffFilehandle));
1579
+ const gffText = await fetchTextWithProgress(openLocation(gffFilehandle), status => {
1580
+ self.setStatus(status);
1581
+ });
1550
1582
  self.applyGFFText(gffText);
1551
1583
  if (gffFilehandle.locationType === 'BlobLocation') {
1552
1584
  self.setGFFFilehandle(undefined);
1553
1585
  }
1554
1586
  }
1555
1587
  catch (e) {
1556
- console.error(e);
1557
- self.setError(e);
1588
+ // on user cancel (isAbortError) drop the filehandle
1589
+ if (isAbortError(e)) {
1590
+ self.setGFFFilehandle(undefined);
1591
+ }
1592
+ else {
1593
+ console.error(e);
1594
+ self.setError(e);
1595
+ }
1558
1596
  }
1559
1597
  }
1560
1598
  }));
@@ -1567,7 +1605,11 @@ function stateModelFactory() {
1567
1605
  try {
1568
1606
  self.setLoadingMSA(true);
1569
1607
  self.setError(undefined);
1570
- const txt = await fetchAndMaybeUnzipText(openLocation(msaFilehandle));
1608
+ const txt = await fetchTextWithProgress(openLocation(msaFilehandle), status => {
1609
+ if (generation === msaGeneration) {
1610
+ self.setStatus(status);
1611
+ }
1612
+ });
1571
1613
  if (generation === msaGeneration) {
1572
1614
  transaction(() => {
1573
1615
  self.setMSA(txt);
@@ -1580,8 +1622,15 @@ function stateModelFactory() {
1580
1622
  }
1581
1623
  catch (e) {
1582
1624
  if (generation === msaGeneration) {
1583
- console.error(e);
1584
- self.setError(e);
1625
+ if (isAbortError(e)) {
1626
+ // cancelled by the user: drop the filehandle so the view
1627
+ // returns to the import form instead of a stuck spinner
1628
+ self.setMSAFilehandle(undefined);
1629
+ }
1630
+ else {
1631
+ console.error(e);
1632
+ self.setError(e);
1633
+ }
1585
1634
  }
1586
1635
  }
1587
1636
  finally {
package/dist/model.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "5.2.1";
1
+ export declare const version = "5.4.0";
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '5.2.1';
1
+ export const version = '5.4.0';
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "react-msaview",
3
3
  "author": "Colin",
4
- "version": "5.2.1",
4
+ "version": "5.4.0",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
7
  "repository": {
@@ -42,8 +42,8 @@
42
42
  "@mui/material": "^7.3.11",
43
43
  "colord": "^2.9.3",
44
44
  "flatbush": "^4.6.1",
45
- "@jbrowse/svgcanvas": "5.2.1",
46
- "msa-parsers": "5.2.1"
45
+ "@jbrowse/svgcanvas": "5.4.0",
46
+ "msa-parsers": "5.4.0"
47
47
  },
48
48
  "scripts": {
49
49
  "clean": "rimraf dist bundle",
@@ -10,7 +10,8 @@ import ImportForm from './import/ImportForm.tsx'
10
10
 
11
11
  import type { MsaViewModel } from '../model.ts'
12
12
 
13
- function LoadingSpinner() {
13
+ const LoadingSpinner = observer(function ({ model }: { model: MsaViewModel }) {
14
+ const { status } = model
14
15
  return (
15
16
  <div
16
17
  style={{ display: 'flex', alignItems: 'center', gap: 12, padding: 20 }}
@@ -44,10 +45,19 @@ function LoadingSpinner() {
44
45
  }}
45
46
  />
46
47
  </svg>
47
- <Typography variant="h6">Loading...</Typography>
48
+ <Typography variant="h6">{status?.msg ?? 'Loading...'}</Typography>
49
+ {status?.onCancel ? (
50
+ <Button
51
+ variant="outlined"
52
+ size="small"
53
+ onClick={() => status.onCancel?.()}
54
+ >
55
+ Cancel
56
+ </Button>
57
+ ) : null}
48
58
  </div>
49
59
  )
50
- }
60
+ })
51
61
 
52
62
  const Reset = observer(function ({
53
63
  model,
@@ -83,12 +93,12 @@ const Loading = observer(function ({ model }: { model: MsaViewModel }) {
83
93
  >
84
94
  {dataInitialized ? (
85
95
  isLoading ? (
86
- <LoadingSpinner />
96
+ <LoadingSpinner model={model} />
87
97
  ) : (
88
98
  <MSAView model={model} />
89
99
  )
90
100
  ) : hasPendingFilehandle || isLoading ? (
91
- <LoadingSpinner />
101
+ <LoadingSpinner model={model} />
92
102
  ) : (
93
103
  <ImportForm model={model} />
94
104
  )}
@@ -18,6 +18,8 @@ interface MSAViewerProps {
18
18
  gffFilehandle?: FileLocationType
19
19
  colorScheme?: string
20
20
  height?: number
21
+ /** row name to diff every other row against (matches render as ".") */
22
+ relativeTo?: string
21
23
  }
22
24
 
23
25
  export default function MSAViewer({
@@ -29,6 +31,7 @@ export default function MSAViewer({
29
31
  gffFilehandle,
30
32
  colorScheme,
31
33
  height,
34
+ relativeTo,
32
35
  }: MSAViewerProps) {
33
36
  const theme = useMemo(() => createJBrowseTheme(), [])
34
37
  const model = useMemo(
@@ -43,6 +46,7 @@ export default function MSAViewer({
43
46
  ...(gffFilehandle ? { gffFilehandle } : {}),
44
47
  ...(colorScheme ? { colorSchemeName: colorScheme } : {}),
45
48
  ...(height ? { height } : {}),
49
+ ...(relativeTo ? { relativeTo } : {}),
46
50
  }),
47
51
  // eslint-disable-next-line react-hooks/exhaustive-deps
48
52
  [],
@@ -9,6 +9,7 @@ export type RenderCtx = Pick<
9
9
  | 'arc'
10
10
  | 'beginPath'
11
11
  | 'clearRect'
12
+ | 'closePath'
12
13
  | 'fill'
13
14
  | 'fillRect'
14
15
  | 'fillStyle'
@@ -67,7 +67,7 @@ const TreeMenu = observer(function ({
67
67
  onClose()
68
68
  }}
69
69
  >
70
- {isCollapsed ? 'Show node' : 'Hide node'}
70
+ {isCollapsed ? 'Expand subtree' : 'Collapse subtree'}
71
71
  </MenuItem>
72
72
  <MenuItem
73
73
  dense
@@ -99,6 +99,84 @@ export function renderTree({
99
99
  })
100
100
  }
101
101
 
102
+ export function renderCollapsedTriangles({
103
+ ctx,
104
+ clickMap,
105
+ offsetY,
106
+ model,
107
+ theme,
108
+ maxBranchLen,
109
+ maxDepthToLeaf,
110
+ blockSizeYOverride,
111
+ }: {
112
+ ctx: RenderCtx
113
+ clickMap?: ClickMapIndex
114
+ offsetY: number
115
+ model: MsaViewModel
116
+ theme: Theme
117
+ maxBranchLen: number
118
+ maxDepthToLeaf: number
119
+ blockSizeYOverride?: number
120
+ }) {
121
+ const {
122
+ hierarchy,
123
+ showBranchLenEffective: showBranchLen,
124
+ collapsed,
125
+ blockSize,
126
+ rowHeight,
127
+ fontSize,
128
+ marginLeft: ml,
129
+ } = model
130
+ const by = blockSizeYOverride ?? blockSize
131
+ const halfHeight = Math.max(2, rowHeight * 0.42)
132
+ forEachDescendant(hierarchy, node => {
133
+ const { id, name } = node.data
134
+ if (collapsed.includes(id)) {
135
+ const apexX = getNodeX(node, showBranchLen, maxBranchLen, maxDepthToLeaf)
136
+ const y = node.x!
137
+ const inBlock = y > offsetY - extendBounds && y < offsetY + by + extendBounds
138
+ // in cladogram mode the hidden tips align at the right edge, otherwise use
139
+ // the branch-length extent recorded in the model's hierarchy getter
140
+ const baseX = showBranchLen
141
+ ? (node.collapsedTipXFar ?? maxBranchLen)
142
+ : maxBranchLen
143
+ if (apexX !== undefined && inBlock && baseX > apexX) {
144
+ ctx.beginPath()
145
+ ctx.moveTo(apexX, y)
146
+ ctx.lineTo(baseX, y - halfHeight)
147
+ ctx.lineTo(baseX, y + halfHeight)
148
+ ctx.closePath()
149
+ ctx.fillStyle = theme.palette.action.disabled
150
+ ctx.fill()
151
+ ctx.strokeStyle = theme.palette.text.primary
152
+ ctx.stroke()
153
+
154
+ // node.value carries the leaf count from the pre-collapse sum() pass
155
+ const count = node.value
156
+ if (count !== undefined && rowHeight >= 8) {
157
+ ctx.fillStyle = theme.palette.text.primary
158
+ ctx.textAlign = 'left'
159
+ ctx.fillText(`${count}`, baseX + 3, y + fontSize / 4)
160
+ }
161
+
162
+ // the whole triangle is a click/hover target that opens the
163
+ // branch menu (Expand this node); the apex bubble's own click entry is
164
+ // skipped for collapsed nodes so this descriptive label wins
165
+ const label = name === id ? 'Collapsed clade' : name
166
+ clickMap?.insert({
167
+ minX: apexX + ml,
168
+ maxX: baseX + ml,
169
+ minY: y - halfHeight,
170
+ maxY: y + halfHeight,
171
+ branch: true,
172
+ id,
173
+ name: count === undefined ? label : `${label} (${count} tips)`,
174
+ })
175
+ }
176
+ }
177
+ })
178
+ }
179
+
102
180
  export function renderNodeBubbles({
103
181
  ctx,
104
182
  clickMap,
@@ -137,22 +215,27 @@ export function renderNodeBubbles({
137
215
  y > offsetY - extendBounds &&
138
216
  y < offsetY + by + extendBounds
139
217
  ) {
218
+ const isCollapsed = collapsed.includes(id)
140
219
  ctx.strokeStyle = 'black'
141
- ctx.fillStyle = collapsed.includes(id) ? 'black' : 'white'
220
+ ctx.fillStyle = isCollapsed ? 'black' : 'white'
142
221
  ctx.beginPath()
143
222
  ctx.arc(x, y, radius, 0, 2 * Math.PI)
144
223
  ctx.fill()
145
224
  ctx.stroke()
146
225
 
147
- clickMap?.insert({
148
- minX: x - radius + ml,
149
- maxX: x - radius + d + ml,
150
- minY: y - radius,
151
- maxY: y - radius + d,
152
- branch: true,
153
- id,
154
- name,
155
- })
226
+ // collapsed nodes get their click/hover target from the triangle pass,
227
+ // which covers the apex bubble and carries a descriptive label
228
+ if (!isCollapsed) {
229
+ clickMap?.insert({
230
+ minX: x - radius + ml,
231
+ maxX: x - radius + d + ml,
232
+ minY: y - radius,
233
+ maxY: y - radius + d,
234
+ branch: true,
235
+ id,
236
+ name,
237
+ })
238
+ }
156
239
  }
157
240
  })
158
241
  }
@@ -189,6 +272,7 @@ export function renderTreeLabels({
189
272
  leaves,
190
273
  noTree,
191
274
  labelWidthMap,
275
+ collapsed,
192
276
  } = model
193
277
  const by = blockSizeYOverride ?? blockSize
194
278
  const emHeight = ctx.measureText('M').width
@@ -205,7 +289,14 @@ export function renderTreeLabels({
205
289
  const y = node.x!
206
290
 
207
291
  const displayName = treeMetadata[name]?.genome || name
208
- if (y > offsetY - extendBounds && y < offsetY + by + extendBounds) {
292
+ // a collapsed clade is drawn as a triangle + tip count; suppress its leaf
293
+ // label when the "name" is just the auto-generated internal-node id
294
+ const isAnonymousCollapsed = collapsed.includes(id) && name === id
295
+ if (
296
+ !isAnonymousCollapsed &&
297
+ y > offsetY - extendBounds &&
298
+ y < offsetY + by + extendBounds
299
+ ) {
209
300
  // note: +rowHeight/4 matches with -rowHeight/4 in msa
210
301
  const yp = y + fontSize / 4
211
302
  let xp = 0
@@ -306,6 +397,17 @@ export function renderTreeCanvas({
306
397
  blockSizeYOverride,
307
398
  })
308
399
 
400
+ renderCollapsedTriangles({
401
+ ctx,
402
+ clickMap,
403
+ offsetY,
404
+ model,
405
+ theme,
406
+ maxBranchLen,
407
+ maxDepthToLeaf,
408
+ blockSizeYOverride,
409
+ })
410
+
309
411
  if (drawNodeBubbles) {
310
412
  renderNodeBubbles({
311
413
  ctx,