react-msaview 9.0.0 → 9.1.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 (157) hide show
  1. package/README.md +19 -10
  2. package/bundle/index.js +74 -74
  3. package/bundle/index.js.map +4 -4
  4. package/dist/colorSchemes.js +1 -3
  5. package/dist/colorSchemes.js.map +1 -1
  6. package/dist/columnCounts.d.ts +0 -1
  7. package/dist/columnCounts.js +1 -1
  8. package/dist/columnCounts.js.map +1 -1
  9. package/dist/components/Loading.js +5 -5
  10. package/dist/components/Loading.js.map +1 -1
  11. package/dist/components/MSAViewer.d.ts +1891 -4
  12. package/dist/components/MSAViewer.js +144 -201
  13. package/dist/components/MSAViewer.js.map +1 -1
  14. package/dist/components/ResizeHandles.js +3 -2
  15. package/dist/components/ResizeHandles.js.map +1 -1
  16. package/dist/components/Track.js +2 -1
  17. package/dist/components/Track.js.map +1 -1
  18. package/dist/components/controls.d.ts +11 -0
  19. package/dist/components/controls.js +48 -0
  20. package/dist/components/controls.js.map +1 -0
  21. package/dist/components/dialogs/AnnotationFileDialog.js +5 -16
  22. package/dist/components/dialogs/AnnotationFileDialog.js.map +1 -1
  23. package/dist/components/dialogs/ExportSVGDialog.js +5 -7
  24. package/dist/components/dialogs/ExportSVGDialog.js.map +1 -1
  25. package/dist/components/dialogs/HelpDialog.d.ts +6 -0
  26. package/dist/components/dialogs/HelpDialog.js +30 -0
  27. package/dist/components/dialogs/HelpDialog.js.map +1 -0
  28. package/dist/components/header/FileMenu.js +33 -7
  29. package/dist/components/header/FileMenu.js.map +1 -1
  30. package/dist/components/header/Header.js +4 -6
  31. package/dist/components/header/Header.js.map +1 -1
  32. package/dist/components/header/TreeSettingsMenu.d.ts +1 -1
  33. package/dist/components/header/TreeSettingsMenu.js +1 -32
  34. package/dist/components/header/TreeSettingsMenu.js.map +1 -1
  35. package/dist/components/header/ZoomControls.js +28 -44
  36. package/dist/components/header/ZoomControls.js.map +1 -1
  37. package/dist/components/header/settingsMenuItems.d.ts +1 -0
  38. package/dist/components/header/settingsMenuItems.js +44 -0
  39. package/dist/components/header/settingsMenuItems.js.map +1 -1
  40. package/dist/components/import/data/seq2.d.ts +0 -1
  41. package/dist/components/import/data/seq2.js +0 -17
  42. package/dist/components/import/data/seq2.js.map +1 -1
  43. package/dist/components/msa/MSACanvas.js +2 -1
  44. package/dist/components/msa/MSACanvas.js.map +1 -1
  45. package/dist/components/msa/MSACanvasBlock.js +2 -5
  46. package/dist/components/msa/MSACanvasBlock.js.map +1 -1
  47. package/dist/components/msa/drawFeatureSpans.d.ts +50 -11
  48. package/dist/components/msa/drawFeatureSpans.js +99 -56
  49. package/dist/components/msa/drawFeatureSpans.js.map +1 -1
  50. package/dist/components/msa/msaRaster.d.ts +14 -1
  51. package/dist/components/msa/msaRaster.js +19 -9
  52. package/dist/components/msa/msaRaster.js.map +1 -1
  53. package/dist/components/msa/renderBoxFeatureCanvasBlock.d.ts +9 -0
  54. package/dist/components/msa/renderBoxFeatureCanvasBlock.js +19 -8
  55. package/dist/components/msa/renderBoxFeatureCanvasBlock.js.map +1 -1
  56. package/dist/components/msa/renderHighlights.d.ts +2 -2
  57. package/dist/components/msa/renderHighlights.js +2 -3
  58. package/dist/components/msa/renderHighlights.js.map +1 -1
  59. package/dist/components/msa/renderMSAMouseover.js +2 -1
  60. package/dist/components/msa/renderMSAMouseover.js.map +1 -1
  61. package/dist/components/renderCtx.d.ts +1 -1
  62. package/dist/components/rowpanels/renderFeaturePanel.d.ts +5 -1
  63. package/dist/components/rowpanels/renderFeaturePanel.js +12 -5
  64. package/dist/components/rowpanels/renderFeaturePanel.js.map +1 -1
  65. package/dist/components/tracks/drawTracks.d.ts +1 -53
  66. package/dist/components/tracks/drawTracks.js +5 -5
  67. package/dist/components/tracks/drawTracks.js.map +1 -1
  68. package/dist/components/tree/CladeLabels.d.ts +1 -1
  69. package/dist/components/tree/CladeLabels.js +22 -34
  70. package/dist/components/tree/CladeLabels.js.map +1 -1
  71. package/dist/components/tree/cladeBrackets.d.ts +17 -10
  72. package/dist/components/tree/cladeBrackets.js +33 -3
  73. package/dist/components/tree/cladeBrackets.js.map +1 -1
  74. package/dist/components/tree/renderTreeCanvas.js +2 -8
  75. package/dist/components/tree/renderTreeCanvas.js.map +1 -1
  76. package/dist/components/tree/renderTreeOverview.js +4 -11
  77. package/dist/components/tree/renderTreeOverview.js.map +1 -1
  78. package/dist/element.js +3 -6
  79. package/dist/element.js.map +1 -1
  80. package/dist/exportLayout.d.ts +39 -0
  81. package/dist/exportLayout.js +78 -0
  82. package/dist/exportLayout.js.map +1 -0
  83. package/dist/headlessRenderEnv.d.ts +12 -39
  84. package/dist/headlessRenderEnv.js +18 -12
  85. package/dist/headlessRenderEnv.js.map +1 -1
  86. package/dist/hierarchy.d.ts +5 -8
  87. package/dist/hierarchy.js +5 -79
  88. package/dist/hierarchy.js.map +1 -1
  89. package/dist/index.d.ts +3 -1
  90. package/dist/index.js +4 -1
  91. package/dist/index.js.map +1 -1
  92. package/dist/measureTextCanvas.d.ts +7 -0
  93. package/dist/measureTextCanvas.js +8 -6
  94. package/dist/measureTextCanvas.js.map +1 -1
  95. package/dist/model/treeModel.d.ts +0 -5
  96. package/dist/model/treeModel.js +0 -7
  97. package/dist/model/treeModel.js.map +1 -1
  98. package/dist/model.d.ts +38 -44
  99. package/dist/model.js +153 -112
  100. package/dist/model.js.map +1 -1
  101. package/dist/renderToSvg.d.ts +2 -7
  102. package/dist/renderToSvg.js +32 -120
  103. package/dist/renderToSvg.js.map +1 -1
  104. package/dist/svgTestUtil.d.ts +12 -20
  105. package/dist/types.d.ts +0 -1
  106. package/dist/version.d.ts +1 -1
  107. package/dist/version.js +1 -1
  108. package/dist/viewerSnapshot.d.ts +169 -0
  109. package/dist/viewerSnapshot.js +100 -0
  110. package/dist/viewerSnapshot.js.map +1 -0
  111. package/package.json +3 -3
  112. package/src/colorSchemes.ts +1 -4
  113. package/src/columnCounts.ts +1 -1
  114. package/src/components/Loading.tsx +19 -12
  115. package/src/components/MSAViewer.tsx +275 -251
  116. package/src/components/ResizeHandles.tsx +9 -2
  117. package/src/components/Track.tsx +2 -1
  118. package/src/components/controls.ts +61 -0
  119. package/src/components/dialogs/AnnotationFileDialog.tsx +5 -21
  120. package/src/components/dialogs/ExportSVGDialog.tsx +8 -19
  121. package/src/components/dialogs/HelpDialog.tsx +79 -0
  122. package/src/components/header/FileMenu.tsx +33 -7
  123. package/src/components/header/Header.tsx +4 -6
  124. package/src/components/header/TreeSettingsMenu.tsx +2 -32
  125. package/src/components/header/ZoomControls.tsx +30 -66
  126. package/src/components/header/settingsMenuItems.ts +59 -0
  127. package/src/components/import/data/seq2.ts +0 -18
  128. package/src/components/msa/MSACanvas.tsx +2 -1
  129. package/src/components/msa/MSACanvasBlock.tsx +2 -6
  130. package/src/components/msa/drawFeatureSpans.ts +160 -79
  131. package/src/components/msa/msaRaster.ts +27 -9
  132. package/src/components/msa/renderBoxFeatureCanvasBlock.ts +39 -24
  133. package/src/components/msa/renderHighlights.ts +2 -3
  134. package/src/components/msa/renderMSAMouseover.ts +5 -1
  135. package/src/components/renderCtx.ts +0 -1
  136. package/src/components/rowpanels/renderFeaturePanel.ts +26 -7
  137. package/src/components/tracks/drawTracks.ts +5 -5
  138. package/src/components/tree/CladeLabels.tsx +30 -54
  139. package/src/components/tree/cladeBrackets.ts +50 -3
  140. package/src/components/tree/renderTreeCanvas.ts +2 -13
  141. package/src/components/tree/renderTreeOverview.ts +7 -14
  142. package/src/element.ts +3 -7
  143. package/src/exportLayout.ts +134 -0
  144. package/src/headlessRenderEnv.ts +24 -11
  145. package/src/hierarchy.ts +5 -88
  146. package/src/index.ts +5 -5
  147. package/src/measureTextCanvas.ts +8 -6
  148. package/src/model/treeModel.ts +0 -7
  149. package/src/model.ts +170 -122
  150. package/src/renderToSvg.tsx +55 -194
  151. package/src/types.ts +0 -1
  152. package/src/version.ts +1 -1
  153. package/src/viewerSnapshot.ts +147 -0
  154. package/dist/components/header/ZoomMenu.d.ts +0 -6
  155. package/dist/components/header/ZoomMenu.js +0 -37
  156. package/dist/components/header/ZoomMenu.js.map +0 -1
  157. package/src/components/header/ZoomMenu.tsx +0 -48
@@ -4,7 +4,7 @@ import { when } from 'mobx';
4
4
  import { visibleRowRange } from './components/getVisibleLeaves.js';
5
5
  import MinimapSVG from './components/minimap/MinimapSVG.js';
6
6
  import { legendRows } from './components/msa/legendRows.js';
7
- import { rasterImageHref, rasterSupported } from './components/msa/msaRaster.js';
7
+ import { rasterApplies, rasterImageHref } from './components/msa/msaRaster.js';
8
8
  import { renderBoxFeatureCanvasBlock } from './components/msa/renderBoxFeatureCanvasBlock.js';
9
9
  import { renderPersistentHighlights } from './components/msa/renderHighlights.js';
10
10
  import { renderMSABlock } from './components/msa/renderMSABlock.js';
@@ -13,78 +13,15 @@ import { headerRunsAcross } from './components/rowpanels/headerLayout.js';
13
13
  import { renderRowPanels } from './components/rowpanels/renderRowPanel.js';
14
14
  import { renderAllTracks } from './components/tracks/drawTracks.js';
15
15
  import ScaleBarSVG from './components/tree/ScaleBarSVG.js';
16
- import { bracketGap, cladeHeight, cladeInGutter, cladeLabelHorizontal, cladeLabelOffset, } from './components/tree/cladeBrackets.js';
16
+ import { cladeLabelBoxes } from './components/tree/cladeBrackets.js';
17
+ import { ellipsize } from './components/tree/ellipsize.js';
17
18
  import { renderTreeCanvas } from './components/tree/renderTreeCanvas.js';
18
19
  import { renderTreeOverview } from './components/tree/renderTreeOverview.js';
19
20
  import { treeScaleBarHeight } from './constants.js';
21
+ import { LEGEND_CHAR_W, LEGEND_FONT, LEGEND_PAD, LEGEND_ROW_H, LEGEND_SWATCH, LEGEND_TEXT_X, exportPageSize, getLayout, legendHeight, } from './exportLayout.js';
20
22
  import { measureTextCanvas } from './measureTextCanvas.js';
21
23
  import { renderToStaticMarkup, svgSafeColors } from './renderToStaticMarkup.js';
22
24
  import { outlineColor } from './util.js';
23
- // legend geometry, shared by the width calculation and the renderer so the
24
- // reserved column on the right exactly fits the drawn legends
25
- const LEGEND_PAD = 8;
26
- const LEGEND_ROW_H = 16;
27
- const LEGEND_SWATCH = 12;
28
- const LEGEND_FONT = 12;
29
- const LEGEND_CHAR_W = 7;
30
- // the width of a character as a fraction of the font size, close enough for a
31
- // sans-serif average
32
- const CHAR_WIDTH = 0.6;
33
- const LEGEND_MAX_W = 360;
34
- const LEGEND_TEXT_X = LEGEND_PAD + LEGEND_SWATCH + 6;
35
- function getLegendWidth(rows) {
36
- const maxLen = rows.reduce((a, r) => Math.max(a, r.label.length), 0);
37
- const w = LEGEND_TEXT_X + LEGEND_PAD + maxLen * LEGEND_CHAR_W;
38
- return Math.min(LEGEND_MAX_W, Math.max(120, w));
39
- }
40
- function legendHeight(rows) {
41
- return LEGEND_PAD * 2 + rows.length * LEGEND_ROW_H;
42
- }
43
- function getLayout(model, opts) {
44
- const { scrollX, scrollY, totalWidth, totalHeight, effectiveTreeAreaWidth, rowPanelsWidth, rowPanelsHeaderHeight, totalTrackAreaHeight, minimapHeight, msaAreaHeight, msaCanvasWidth, showHorizontalScrollbar, treeOverviewHeight, treeScaleBar, } = model;
45
- const trackHeight = opts.includeTracks ? totalTrackAreaHeight : 0;
46
- // the minimap reflects the live viewport scroll position, so it's only
47
- // meaningful for a viewport export, never for the entire alignment -- and
48
- // only when the live view shows one at all, since a minimap over an alignment
49
- // that already fits marks a viewport wider than the bar
50
- const includeMinimap = opts.exportType === 'viewport' &&
51
- !!opts.includeMinimap &&
52
- showHorizontalScrollbar;
53
- const rows = legendRows(model.legends);
54
- const legendWidth = rows.length > 0 ? getLegendWidth(rows) : 0;
55
- const topHeight = Math.max(includeMinimap ? minimapHeight : 0, rowPanelsHeaderHeight, treeOverviewHeight + (treeScaleBar ? treeScaleBarHeight : 0));
56
- const gutterWidth = effectiveTreeAreaWidth + rowPanelsWidth;
57
- // width stays content-only; the legend occupies an extra column added at the
58
- // svg root in MsaSvg. The viewport export takes the alignment canvas's own
59
- // size rather than the widget's -- the widget box also covers the header, the
60
- // resize handle and the scrollbars, and rendering that box exports rows and
61
- // columns the scrollbars hide on screen
62
- return opts.exportType === 'entire'
63
- ? {
64
- width: totalWidth + gutterWidth,
65
- msaAreaWidth: totalWidth,
66
- height: totalHeight + trackHeight + topHeight,
67
- contentHeight: totalHeight,
68
- trackHeight,
69
- topHeight,
70
- offsetX: 0,
71
- offsetY: 0,
72
- includeMinimap,
73
- legendWidth,
74
- }
75
- : {
76
- width: msaCanvasWidth + gutterWidth,
77
- msaAreaWidth: msaCanvasWidth,
78
- height: msaAreaHeight + topHeight + trackHeight,
79
- contentHeight: msaAreaHeight,
80
- trackHeight,
81
- topHeight,
82
- offsetX: -scrollX,
83
- offsetY: -scrollY,
84
- includeMinimap,
85
- legendWidth,
86
- };
87
- }
88
25
  export async function renderToSvg(model, opts) {
89
26
  // dataInitialized stays false while the model holds a load error, so waiting
90
27
  // on it alone would never settle
@@ -99,27 +36,26 @@ export async function renderToSvg(model, opts) {
99
36
  // into the page as strings.
100
37
  const layers = new Map();
101
38
  const markup = renderToStaticMarkup(React.createElement(MsaSvg, { model: model, theme: opts.theme, Context: Context, layout: getLayout(model, opts), layers: layers }));
39
+ // innerHTML serializes as HTML, and an XML parser rejects its  
102
40
  return svgSafeColors(markup.replaceAll(/<g data-layer="([^"]+)"><\/g>/g, (match, id) => {
103
41
  const ctx = layers.get(id);
104
42
  return ctx ? `<g id="${id}">${ctx.getSvg().innerHTML}</g>` : match;
105
- }));
43
+ })).replaceAll('&nbsp;', '&#160;');
106
44
  }
107
45
  function MsaSvg({ model, theme, Context, layout, layers, }) {
108
46
  const { width, trackHeight, includeMinimap, legendWidth, topHeight } = layout;
109
47
  const { effectiveTreeAreaWidth, rowPanelsWidth } = model;
110
- const totalWidth = width + legendWidth;
48
+ const { width: totalWidth, height } = exportPageSize(model, layout);
111
49
  const legendTop = topHeight;
112
- // a short alignment with many legend entries has a key taller than its rows,
113
- // and the page has to hold the whole key
114
- const height = legendWidth > 0
115
- ? Math.max(layout.height, legendTop + legendHeight(legendRows(model.legends)))
116
- : layout.height;
117
50
  const props = { Context, model, theme, layout, layers };
118
51
  const body = (React.createElement(React.Fragment, null,
119
52
  trackHeight > 0 ? React.createElement(TrackRendering, { ...props }) : null,
120
53
  React.createElement("g", { transform: trackHeight > 0 ? `translate(0 ${trackHeight})` : undefined },
121
54
  React.createElement(CoreRendering, { ...props }))));
122
- return (React.createElement("svg", { width: totalWidth, height: height, xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", viewBox: `0 0 ${totalWidth} ${height}` },
55
+ return (React.createElement("svg", { width: totalWidth, height: height, xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", viewBox: `0 0 ${totalWidth} ${height}`,
56
+ // the canvas layers name sans-serif on each glyph; the legend, labels
57
+ // and headers inherit it here instead of an editor's default serif
58
+ fontFamily: "sans-serif" },
123
59
  React.createElement("rect", { width: "100%", height: "100%", fill: theme.palette.background.default }),
124
60
  topHeight > 0 ? (React.createElement(React.Fragment, null,
125
61
  includeMinimap ? (React.createElement("g", { id: "minimap-panel", transform: `translate(${effectiveTreeAreaWidth + rowPanelsWidth} 0)` },
@@ -171,49 +107,27 @@ function RowPanelHeadersSVG({ model, theme, bandHeight, }) {
171
107
  const center = effectiveTreeAreaWidth + panel.offsetX + panel.width / 2;
172
108
  const x = across ? center : center + size / 3;
173
109
  const room = across ? panel.width : y - LEGEND_PAD;
174
- const maxChars = Math.floor(room / (size * CHAR_WIDTH));
175
110
  return size < 5 ? null : (React.createElement("text", { key: panel.id, x: x, y: y, ...(across
176
111
  ? { textAnchor: 'middle' }
177
- : { transform: `rotate(-90 ${x} ${y})` }), fontSize: size, fill: theme.palette.text.primary }, panel.header.length > maxChars
178
- ? `${panel.header.slice(0, Math.max(1, maxChars - 1))}…`
179
- : panel.header));
112
+ : { transform: `rotate(-90 ${x} ${y})` }), fontSize: size, fill: theme.palette.text.primary }, ellipsize(t => measureTextCanvas(t, size), panel.header, room)
113
+ .text));
180
114
  })));
181
115
  }
182
- // A label past the room it has, cut to what fits with an ellipsis. The measure
183
- // is the one cladeGutterWidth sizes the gutter with, so a label the gutter
184
- // holds keeps every character.
185
- function clipCladeLabel(label, room, fontSize) {
186
- const width = measureTextCanvas(label, fontSize);
187
- if (width <= room) {
188
- return label;
189
- }
190
- const fits = Math.floor((label.length * room) / width);
191
- return `${label.slice(0, Math.max(1, fits - 1))}…`;
192
- }
193
116
  // Each bracket's label in the gutter beside its bar, where the live view puts
194
117
  // it (see CladeLabels). The canvas layer draws the bar; a label longer than the
195
118
  // gutter or the clade is clipped, since text that overruns runs off the figure.
119
+ // cladeGutterWidth sizes the gutter with the same measureTextCanvas, so a label
120
+ // the gutter holds keeps every character.
196
121
  function CladeLabelsSVG({ model, theme, offsetY, }) {
197
- const { resolvedClades, cladeGutterWidth, rowHeight, effectiveTreeAreaWidth, fontSize, } = model;
198
- if (cladeGutterWidth === 0) {
199
- return null;
200
- }
201
- const gutterLeft = effectiveTreeAreaWidth - cladeGutterWidth;
202
- return (React.createElement("g", { id: "clade-labels" }, resolvedClades.map((clade, index) => {
203
- const { label, markColor, rows } = clade;
204
- if (!label || !cladeInGutter(clade)) {
205
- return null;
206
- }
207
- const left = gutterLeft + cladeLabelOffset(clade);
208
- const top = rows[0] * rowHeight - offsetY;
209
- const height = cladeHeight(clade, rowHeight);
210
- const horizontal = cladeLabelHorizontal(clade, rowHeight, fontSize);
211
- const room = horizontal
212
- ? effectiveTreeAreaWidth - left - bracketGap
213
- : height;
214
- const x = horizontal ? left : left + fontSize;
215
- const y = horizontal ? top + height / 2 + fontSize / 3 : top + height;
216
- return (React.createElement("text", { key: `${rows[0]}-${rows[1]}-${index}`, x: x, y: y, transform: horizontal ? undefined : `rotate(-90 ${x} ${y})`, fontSize: fontSize, fill: markColor ?? theme.palette.text.primary }, clipCladeLabel(label, room, fontSize)));
122
+ const { fontSize } = model;
123
+ const boxes = cladeLabelBoxes(model);
124
+ return boxes.length === 0 ? null : (React.createElement("g", { id: "clade-labels" }, boxes.map(box => {
125
+ const top = box.top - offsetY;
126
+ const x = box.horizontal ? box.left : box.left + fontSize;
127
+ const y = box.horizontal
128
+ ? top + box.height / 2 + fontSize / 3
129
+ : top + box.height;
130
+ return (React.createElement("text", { key: box.key, x: x, y: y, transform: box.horizontal ? undefined : `rotate(-90 ${x} ${y})`, fontSize: fontSize, fill: box.color ?? theme.palette.text.primary }, ellipsize(t => measureTextCanvas(t, fontSize), box.label, box.horizontal ? box.width : box.height).text));
217
131
  })));
218
132
  }
219
133
  // the color keys drawn as a reserved column to the right of the alignment,
@@ -223,16 +137,14 @@ function LegendSVG({ model, theme, width, }) {
223
137
  const boxHeight = legendHeight(rows);
224
138
  // the column is capped at LEGEND_MAX_W, so a name too long for it has to be
225
139
  // clipped here -- text that overruns the reserved width runs off the figure
226
- const maxChars = Math.floor((width - LEGEND_TEXT_X - LEGEND_PAD) / LEGEND_CHAR_W);
140
+ const room = width - LEGEND_TEXT_X - LEGEND_PAD;
227
141
  return (React.createElement("g", null,
228
142
  React.createElement("rect", { x: 0, y: 0, width: width - 4, height: boxHeight, fill: theme.palette.background.paper, stroke: theme.palette.divider, rx: 2 }),
229
143
  rows.map((row, i) => {
230
144
  const y = LEGEND_PAD + i * LEGEND_ROW_H;
231
145
  return (React.createElement("g", { key: row.key },
232
146
  row.color ? (React.createElement("rect", { x: LEGEND_PAD, y: y, width: LEGEND_SWATCH, height: LEGEND_SWATCH, fill: row.color, stroke: outlineColor(row.color) })) : null,
233
- React.createElement("text", { x: row.color ? LEGEND_TEXT_X : LEGEND_PAD, y: y + LEGEND_SWATCH - 1, fontSize: LEGEND_FONT, fontWeight: row.color ? undefined : 'bold', fill: theme.palette.text.primary }, row.label.length > maxChars
234
- ? `${row.label.slice(0, Math.max(1, maxChars - 1))}…`
235
- : row.label)));
147
+ React.createElement("text", { x: row.color ? LEGEND_TEXT_X : LEGEND_PAD, y: y + LEGEND_SWATCH - 1, fontSize: LEGEND_FONT, fontWeight: row.color ? undefined : 'bold', fill: theme.palette.text.primary }, ellipsize(t => t.length * LEGEND_CHAR_W, row.label, room).text)));
236
148
  })));
237
149
  }
238
150
  function CoreRendering({ model, theme, layout, Context, layers }) {
@@ -302,9 +214,8 @@ function CoreRendering({ model, theme, layout, Context, layers }) {
302
214
  React.createElement(ClipGroup, { panelId: "msa-panel", clipId: `msa-${id}`, width: msaAreaWidth, height: contentHeight, transform: `translate(${effectiveTreeAreaWidth + rowPanelsWidth} 0)`, ctx: msaCtx, layers: layers, underlay: raster })));
303
215
  }
304
216
  /**
305
- * The alignment background as a single <image>, under the live canvas's
306
- * conditions: no domain overlay boxes, background coloring on, and a canvas
307
- * that reads back.
217
+ * The alignment background as a single <image>, wherever the live canvas
218
+ * draws the raster.
308
219
  *
309
220
  * The vector path's <rect> per cell exhausts the heap on a real alignment. The
310
221
  * image is one pixel per cell, and image-rendering keeps the upscaled cell
@@ -312,8 +223,8 @@ function CoreRendering({ model, theme, layout, Context, layers }) {
312
223
  */
313
224
  function rasterBackground({ model, theme, layout, }) {
314
225
  const { contentHeight, offsetX, offsetY, msaAreaWidth } = layout;
315
- const { colWidth, rowHeight, actuallyShowDomains, bgColor } = model;
316
- if (actuallyShowDomains || !bgColor || !rasterSupported()) {
226
+ const { colWidth, rowHeight } = model;
227
+ if (!rasterApplies(model)) {
317
228
  return undefined;
318
229
  }
319
230
  const { xStart, xEnd } = visibleColRange({
@@ -369,7 +280,8 @@ function TrackLabelsSVG({ model, theme, }) {
369
280
  const top = turnedOnTracks
370
281
  .slice(0, i)
371
282
  .reduce((acc, t) => acc + t.model.height, 0);
372
- return { id, name, size, baseline: top + height / 2 + size / 3 };
283
+ // pinned to the top of the track, as the live view's flex row pins it
284
+ return { id, name, size, baseline: top + size * 0.8 };
373
285
  });
374
286
  return (React.createElement(React.Fragment, null, labels.map(({ id, name, size, baseline }) => {
375
287
  return size < 5 ? null : (React.createElement("text", { key: id, x: effectiveTreeAreaWidth - 4, y: baseline, fontSize: size, textAnchor: "end", fill: theme.palette.text.primary }, name));
@@ -1 +1 @@
1
- {"version":3,"file":"renderToSvg.js","sourceRoot":"","sources":["../src/renderToSvg.tsx"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AAClE,OAAO,UAAU,MAAM,oCAAqC,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,iDAAiD,CAAA;AAC7F,OAAO,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAA;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,WAAW,MAAM,kCAAmC,CAAA;AAC3D,OAAO,EACL,UAAU,EACV,WAAW,EACX,aAAa,EACb,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAA;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAcxC,2EAA2E;AAC3E,8DAA8D;AAC9D,MAAM,UAAU,GAAG,CAAC,CAAA;AACpB,MAAM,YAAY,GAAG,EAAE,CAAA;AACvB,MAAM,aAAa,GAAG,EAAE,CAAA;AACxB,MAAM,WAAW,GAAG,EAAE,CAAA;AACtB,MAAM,aAAa,GAAG,CAAC,CAAA;AAEvB,8EAA8E;AAC9E,qBAAqB;AACrB,MAAM,UAAU,GAAG,GAAG,CAAA;AAEtB,MAAM,YAAY,GAAG,GAAG,CAAA;AACxB,MAAM,aAAa,GAAG,UAAU,GAAG,aAAa,GAAG,CAAC,CAAA;AAEpD,SAAS,cAAc,CAAC,IAAiB;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;IACpE,MAAM,CAAC,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,aAAa,CAAA;IAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;AACjD,CAAC;AAED,SAAS,YAAY,CAAC,IAAiB;IACrC,OAAO,UAAU,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,YAAY,CAAA;AACpD,CAAC;AAoBD,SAAS,SAAS,CAAC,KAAmB,EAAE,IAAsB;IAC5D,MAAM,EACJ,OAAO,EACP,OAAO,EACP,UAAU,EACV,WAAW,EACX,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,YAAY,GACb,GAAG,KAAK,CAAA;IACT,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAA;IACjE,uEAAuE;IACvE,0EAA0E;IAC1E,8EAA8E;IAC9E,wDAAwD;IACxD,MAAM,cAAc,GAClB,IAAI,CAAC,UAAU,KAAK,UAAU;QAC9B,CAAC,CAAC,IAAI,CAAC,cAAc;QACrB,uBAAuB,CAAA;IACzB,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACtC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAClC,qBAAqB,EACrB,kBAAkB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAC7D,CAAA;IACD,MAAM,WAAW,GAAG,sBAAsB,GAAG,cAAc,CAAA;IAE3D,6EAA6E;IAC7E,2EAA2E;IAC3E,8EAA8E;IAC9E,4EAA4E;IAC5E,wCAAwC;IACxC,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ;QACjC,CAAC,CAAC;YACE,KAAK,EAAE,UAAU,GAAG,WAAW;YAC/B,YAAY,EAAE,UAAU;YACxB,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,SAAS;YAC7C,aAAa,EAAE,WAAW;YAC1B,WAAW;YACX,SAAS;YACT,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,cAAc;YACd,WAAW;SACZ;QACH,CAAC,CAAC;YACE,KAAK,EAAE,cAAc,GAAG,WAAW;YACnC,YAAY,EAAE,cAAc;YAC5B,MAAM,EAAE,aAAa,GAAG,SAAS,GAAG,WAAW;YAC/C,aAAa,EAAE,aAAa;YAC5B,WAAW;YACX,SAAS;YACT,OAAO,EAAE,CAAC,OAAO;YACjB,OAAO,EAAE,CAAC,OAAO;YACjB,cAAc;YACd,WAAW;SACZ,CAAA;AACP,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAmB,EAAE,IAAsB;IAC3E,6EAA6E;IAC7E,iCAAiC;IACjC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACxD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC,KAAK,CAAA;IACnB,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;IACtD,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,4BAA4B;IAC5B,MAAM,MAAM,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC7C,MAAM,MAAM,GAAG,oBAAoB,CACjC,oBAAC,MAAM,IACL,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,EAC9B,MAAM,EAAE,MAAM,GACd,CACH,CAAA;IACD,OAAO,aAAa,CAClB,MAAM,CAAC,UAAU,CAAC,gCAAgC,EAAE,CAAC,KAAK,EAAE,EAAU,EAAE,EAAE;QACxE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC1B,OAAO,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,CAAC,CAAC,KAAK,CAAA;IACpE,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAED,SAAS,MAAM,CAAC,EACd,KAAK,EACL,KAAK,EACL,OAAO,EACP,MAAM,EACN,MAAM,GAOP;IACC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,MAAM,CAAA;IAC7E,MAAM,EAAE,sBAAsB,EAAE,cAAc,EAAE,GAAG,KAAK,CAAA;IACxD,MAAM,UAAU,GAAG,KAAK,GAAG,WAAW,CAAA;IACtC,MAAM,SAAS,GAAG,SAAS,CAAA;IAC3B,6EAA6E;IAC7E,yCAAyC;IACzC,MAAM,MAAM,GACV,WAAW,GAAG,CAAC;QACb,CAAC,CAAC,IAAI,CAAC,GAAG,CACN,MAAM,CAAC,MAAM,EACb,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CACpD;QACH,CAAC,CAAC,MAAM,CAAC,MAAM,CAAA;IACnB,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAA;IAEvD,MAAM,IAAI,GAAG,CACX;QACG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAC,cAAc,OAAK,KAAK,GAAI,CAAC,CAAC,CAAC,IAAI;QACvD,2BACE,SAAS,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,WAAW,GAAG,CAAC,CAAC,CAAC,SAAS;YAEtE,oBAAC,aAAa,OAAK,KAAK,GAAI,CAC1B,CACH,CACJ,CAAA;IAED,OAAO,CACL,6BACE,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,KAAK,EAAC,4BAA4B,EAClC,UAAU,EAAC,8BAA8B,EACzC,OAAO,EAAE,OAAO,UAAU,IAAI,MAAM,EAAE;QAKtC,8BACE,KAAK,EAAC,MAAM,EACZ,MAAM,EAAC,MAAM,EACb,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,GACtC;QACD,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CACf;YACG,cAAc,CAAC,CAAC,CAAC,CAChB,2BACE,EAAE,EAAC,eAAe,EAClB,SAAS,EAAE,aAAa,sBAAsB,GAAG,cAAc,KAAK;gBAEpE,oBAAC,UAAU,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAI,CACxC,CACL,CAAC,CAAC,CAAC,IAAI;YACR,oBAAC,kBAAkB,IACjB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,SAAS,GACrB;YACD,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,CACxB,oBAAC,eAAe,IACd,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,GACd,CACH,CAAC,CAAC,CAAC,IAAI;YACR,oBAAC,eAAe,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAI;YAC/C,2BAAG,SAAS,EAAE,eAAe,SAAS,GAAG,IAAG,IAAI,CAAK,CACpD,CACJ,CAAC,CAAC,CAAC,CACF,IAAI,CACL;QACA,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CACjB,2BAAG,EAAE,EAAC,cAAc,EAAC,SAAS,EAAE,aAAa,KAAK,IAAI,SAAS,GAAG;YAChE,oBAAC,SAAS,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,GAAI,CAC3D,CACL,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAA;AACH,CAAC;AAED,+EAA+E;AAC/E,+EAA+E;AAC/E,kDAAkD;AAClD,SAAS,eAAe,CAAC,EACvB,KAAK,EACL,KAAK,EACL,OAAO,EACP,MAAM,GAMP;IACC,MAAM,EAAE,sBAAsB,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;IAC5D,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAA;IAC/D,kBAAkB,CAAC;QACjB,KAAK;QACL,GAAG;QACH,KAAK;QACL,KAAK,EAAE,sBAAsB;QAC7B,MAAM,EAAE,cAAc;KACvB,CAAC,CAAA;IACF,OAAO,CACL,oBAAC,SAAS,IACR,OAAO,EAAC,eAAe,EACvB,MAAM,EAAE,iBAAiB,EAAE,EAAE,EAC7B,KAAK,EAAE,sBAAsB,EAC7B,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,GACd,CACH,CAAA;AACH,CAAC;AAED,gFAAgF;AAChF,4EAA4E;AAC5E,gFAAgF;AAChF,0CAA0C;AAC1C,SAAS,eAAe,CAAC,EACvB,KAAK,EACL,KAAK,GAIN;IACC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,EAAE,kBAAkB,EAAE,GAAG,KAAK,CAAA;IACnE,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,CACL,2BAAG,EAAE,EAAC,eAAe;QACnB,oBAAC,WAAW,IACV,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,UAAU,EACtB,CAAC,EAAE,kBAAkB,GAAG,kBAAkB,EAC1C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,GACjC,CACA,CACL,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,+EAA+E;AAC/E,+EAA+E;AAC/E,wCAAwC;AACxC,SAAS,kBAAkB,CAAC,EAC1B,KAAK,EACL,KAAK,EACL,UAAU,GAKX;IACC,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IACrE,MAAM,CAAC,GAAG,UAAU,GAAG,CAAC,CAAA;IACxB,OAAO,iBAAiB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAC7C,2BAAG,EAAE,EAAC,kBAAkB,IACrB,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC7B,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAChE,MAAM,MAAM,GAAG,sBAAsB,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAA;QACvE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC,CAAA;QAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAA;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC,CAAA;QACvD,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACvB,8BACE,GAAG,EAAE,KAAK,CAAC,EAAE,EACb,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,KACA,CAAC,MAAM;gBACT,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE;gBAC1B,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAC3C,QAAQ,EAAE,IAAI,EACd,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,IAE/B,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,QAAQ;YAC7B,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG;YACxD,CAAC,CAAC,KAAK,CAAC,MAAM,CACX,CACR,CAAA;IACH,CAAC,CAAC,CACA,CACL,CAAA;AACH,CAAC;AAED,+EAA+E;AAC/E,2EAA2E;AAC3E,+BAA+B;AAC/B,SAAS,cAAc,CAAC,KAAa,EAAE,IAAY,EAAE,QAAgB;IACnE,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IAChD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,OAAO,KAAK,CAAA;IACd,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;IACtD,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;AACpD,CAAC;AAED,8EAA8E;AAC9E,gFAAgF;AAChF,gFAAgF;AAChF,SAAS,cAAc,CAAC,EACtB,KAAK,EACL,KAAK,EACL,OAAO,GAKR;IACC,MAAM,EACJ,cAAc,EACd,gBAAgB,EAChB,SAAS,EACT,sBAAsB,EACtB,QAAQ,GACT,GAAG,KAAK,CAAA;IACT,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,UAAU,GAAG,sBAAsB,GAAG,gBAAgB,CAAA;IAC5D,OAAO,CACL,2BAAG,EAAE,EAAC,cAAc,IACjB,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACnC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;QACxC,IAAI,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,IAAI,GAAG,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,OAAO,CAAA;QACzC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QAC5C,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;QACnE,MAAM,IAAI,GAAG,UAAU;YACrB,CAAC,CAAC,sBAAsB,GAAG,IAAI,GAAG,UAAU;YAC5C,CAAC,CAAC,MAAM,CAAA;QACV,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,QAAQ,CAAA;QAC7C,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAA;QACrE,OAAO,CACL,8BACE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,EACrC,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAC3D,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,IAE5C,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CACjC,CACR,CAAA;IACH,CAAC,CAAC,CACA,CACL,CAAA;AACH,CAAC;AAED,2EAA2E;AAC3E,mDAAmD;AACnD,SAAS,SAAS,CAAC,EACjB,KAAK,EACL,KAAK,EACL,KAAK,GAKN;IACC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACtC,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;IACpC,4EAA4E;IAC5E,4EAA4E;IAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CACzB,CAAC,KAAK,GAAG,aAAa,GAAG,UAAU,CAAC,GAAG,aAAa,CACrD,CAAA;IACD,OAAO,CACL;QACE,8BACE,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,KAAK,EAAE,KAAK,GAAG,CAAC,EAChB,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EACpC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,EAC7B,EAAE,EAAE,CAAC,GACL;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACnB,MAAM,CAAC,GAAG,UAAU,GAAG,CAAC,GAAG,YAAY,CAAA;YACvC,OAAO,CACL,2BAAG,GAAG,EAAE,GAAG,CAAC,GAAG;gBACZ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CACX,8BACE,CAAC,EAAE,UAAU,EACb,CAAC,EAAE,CAAC,EACJ,KAAK,EAAE,aAAa,EACpB,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,GAAG,CAAC,KAAK,EACf,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,GAC/B,CACH,CAAC,CAAC,CAAC,IAAI;gBACR,8BACE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,EACzC,CAAC,EAAE,CAAC,GAAG,aAAa,GAAG,CAAC,EACxB,QAAQ,EAAE,WAAW,EACrB,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAC1C,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,IAE/B,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ;oBAC1B,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG;oBACrD,CAAC,CAAC,GAAG,CAAC,KAAK,CACR,CACL,CACL,CAAA;QACH,CAAC,CAAC,CACA,CACL,CAAA;AACH,CAAC;AAYD,SAAS,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAc;IAC1E,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAAA;IAChE,MAAM,EAAE,sBAAsB,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;IAE5D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,sBAAsB,EAAE,aAAa,CAAC,CAAA;IAClE,gBAAgB,CAAC;QACf,KAAK;QACL,KAAK;QACL,GAAG,EAAE,OAAO;QACZ,OAAO;QACP,kBAAkB,EAAE,aAAa;QACjC,0BAA0B,EAAE,CAAC;KAC9B,CAAC,CAAA;IAEF,MAAM,YAAY,GAAG,cAAc;QACjC,CAAC,CAAC,IAAI,OAAO,CAAC,cAAc,EAAE,aAAa,CAAC;QAC5C,CAAC,CAAC,SAAS,CAAA;IACb,IAAI,YAAY,EAAE,CAAC;QACjB,eAAe,CAAC;YACd,KAAK;YACL,KAAK;YACL,GAAG,EAAE,YAAY;YACjB,OAAO;YACP,kBAAkB,EAAE,aAAa;YACjC,0BAA0B,EAAE,CAAC;SAC9B,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IAEzD,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,YAAY,EAAE,aAAa,CAAC,CAAA;IACvD,2BAA2B,CAAC;QAC1B,KAAK;QACL,KAAK;QACL,GAAG,EAAE,MAAM;QACX,OAAO;QACP,OAAO;QACP,0EAA0E;QAC1E,iEAAiE;QACjE,kBAAkB,EAAE,YAAY;QAChC,kBAAkB,EAAE,aAAa;QACjC,0BAA0B,EAAE,CAAC;KAC9B,CAAC,CAAA;IACF,cAAc,CAAC;QACb,KAAK;QACL,KAAK;QACL,GAAG,EAAE,MAAM;QACX,OAAO;QACP,OAAO;QACP,kBAAkB,EAAE,YAAY;QAChC,kBAAkB,EAAE,aAAa;QACjC,0BAA0B,EAAE,CAAC;QAC7B,WAAW,EAAE,CAAC,CAAC,MAAM;KACtB,CAAC,CAAA;IACF,MAAM,CAAC,cAAc,EAAE,CAAA;IACvB,0BAA0B,CAAC;QACzB,GAAG,EAAE,MAAM;QACX,KAAK;QACL,KAAK;QACL,OAAO;QACP,OAAO;QACP,KAAK,EAAE,YAAY;QACnB,MAAM,EAAE,aAAa;KACtB,CAAC,CAAA;IAEF,OAAO,CACL;QACE,oBAAC,SAAS,IACR,OAAO,EAAC,YAAY,EACpB,MAAM,EAAE,QAAQ,EAAE,EAAE,EACpB,KAAK,EAAE,sBAAsB,EAC7B,MAAM,EAAE,aAAa,EACrB,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,MAAM,GACd;QACF,oBAAC,cAAc,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAI;QAC/D,YAAY,CAAC,CAAC,CAAC,CACd,oBAAC,SAAS,IACR,OAAO,EAAC,iBAAiB,EACzB,MAAM,EAAE,aAAa,EAAE,EAAE,EACzB,KAAK,EAAE,cAAc,EACrB,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,aAAa,sBAAsB,KAAK,EACnD,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,MAAM,GACd,CACH,CAAC,CAAC,CAAC,IAAI;QACR,oBAAC,SAAS,IACR,OAAO,EAAC,WAAW,EACnB,MAAM,EAAE,OAAO,EAAE,EAAE,EACnB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,aAAa,sBAAsB,GAAG,cAAc,KAAK,EACpE,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAChB,CACD,CACJ,CAAA;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,EACxB,KAAK,EACL,KAAK,EACL,MAAM,GAKP;IACC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAAA;IAChE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;IACnE,IAAI,mBAAmB,IAAI,CAAC,OAAO,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QAC1D,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC;QACvC,OAAO;QACP,UAAU,EAAE,YAAY;QACxB,QAAQ;KACT,CAAC,CAAA;IACF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC;QACvC,KAAK;QACL,OAAO;QACP,UAAU,EAAE,aAAa;KAC1B,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,GAAG,MAAM,CAAA;IACzD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM,CAAA;IACtD,MAAM,IAAI,GAAG,eAAe,CAAC;QAC3B,KAAK;QACL,KAAK;QACL,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,MAAM;QACZ,OAAO;QACP,OAAO;KACR,CAAC,CAAA;IACF,OAAO,IAAI,CAAC,CAAC,CAAC,CACZ,+BACE,IAAI,EAAE,IAAI,EACV,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,EAC9B,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,EAC/B,KAAK,EAAE,OAAO,GAAG,QAAQ,EACzB,MAAM,EAAE,OAAO,GAAG,SAAS,EAC3B,cAAc,EAAC,WAAW,EAC1B,mBAAmB,EAAC,MAAM,GAC1B,CACH,CAAC,CAAC,CAAC,SAAS,CAAA;AACf,CAAC;AAED,SAAS,cAAc,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAc;IAC3E,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,CAAA;IACrD,MAAM,EAAE,sBAAsB,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;IAE5D,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,YAAY,EAAE,WAAW,CAAC,CAAA;IAClD,eAAe,CAAC;QACd,KAAK;QACL,GAAG;QACH,KAAK;QACL,OAAO;QACP,kBAAkB,EAAE,YAAY;QAChC,0BAA0B,EAAE,CAAC;KAC9B,CAAC,CAAA;IAEF,OAAO,CACL;QACE,oBAAC,cAAc,IAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAI;QAC9C,2BAAG,SAAS,EAAE,aAAa,sBAAsB,GAAG,cAAc,KAAK;YACrE,oBAAC,SAAS,IACR,OAAO,EAAC,cAAc,EACtB,MAAM,EAAE,UAAU,EAAE,EAAE,EACtB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,MAAM,GACd,CACA,CACH,CACJ,CAAA;AACH,CAAC;AAED,iFAAiF;AACjF,+EAA+E;AAC/E,sDAAsD;AACtD,SAAS,cAAc,CAAC,EACtB,KAAK,EACL,KAAK,GAIN;IACC,MAAM,EAAE,cAAc,EAAE,sBAAsB,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,KAAK,CAAA;IAC9E,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QAC7C,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAA;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QACvC,MAAM,GAAG,GAAG,cAAc;aACvB,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC9C,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,GAAG,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAA;IAClE,CAAC,CAAC,CAAA;IACF,OAAO,CACL,0CACG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC3C,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACvB,8BACE,GAAG,EAAE,EAAE,EACP,CAAC,EAAE,sBAAsB,GAAG,CAAC,EAC7B,CAAC,EAAE,QAAQ,EACX,QAAQ,EAAE,IAAI,EACd,UAAU,EAAC,KAAK,EAChB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,IAE/B,IAAI,CACA,CACR,CAAA;IACH,CAAC,CAAC,CACD,CACJ,CAAA;AACH,CAAC;AAED,gFAAgF;AAChF,+EAA+E;AAC/E,uEAAuE;AACvE,EAAE;AACF,0EAA0E;AAC1E,8EAA8E;AAC9E,4EAA4E;AAC5E,SAAS,SAAS,CAAC,EACjB,OAAO,EACP,MAAM,EACN,KAAK,EACL,MAAM,EACN,SAAS,EACT,GAAG,EACH,MAAM,EACN,QAAQ,GAUT;IACC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IACxB,OAAO,CACL;QACE;YACE,kCAAU,EAAE,EAAE,MAAM;gBAClB,8BAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,CACzC,CACN;QACP,2BAAG,QAAQ,EAAE,QAAQ,MAAM,GAAG,EAAE,SAAS,EAAE,SAAS;YACjD,QAAQ;YACT,yCAAe,OAAO,GAAI,CACxB,CACH,CACJ,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"renderToSvg.js","sourceRoot":"","sources":["../src/renderToSvg.tsx"],"names":[],"mappings":"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"}
@@ -405,7 +405,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
405
405
  setDrawNodeBubbles(arg: boolean): void;
406
406
  setDrawNodeLabels(arg: boolean): void;
407
407
  setShowTreeOverview(arg: boolean): void;
408
- setOverviewHeight(n: number): void;
409
408
  setDrawLabels(arg: boolean): void;
410
409
  } & {
411
410
  setColorSchemeName(name: string): void;
@@ -416,6 +415,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
416
415
  } & {
417
416
  headerHeight: number;
418
417
  hideHeader: boolean;
418
+ importForm: boolean;
419
419
  status: {
420
420
  msg: string;
421
421
  onCancel?: () => void;
@@ -494,7 +494,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
494
494
  setGFF(result?: string): void;
495
495
  } & {
496
496
  readonly hideGapsEffective: boolean;
497
- readonly realAllowedGappyness: number;
498
497
  readonly allAnnotations: import("msa-parsers").Annotation[];
499
498
  readonly actuallyShowDomains: boolean;
500
499
  readonly hostRestoresData: boolean;
@@ -552,7 +551,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
552
551
  readonly treeNewick: string;
553
552
  readonly treeOverviewHeight: number;
554
553
  readonly treeOverviewLayout: {
555
- root: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
554
+ root: import("./hierarchy.ts").LaidOutNode<import("./types.ts").NodeWithIds>;
556
555
  numTips: number;
557
556
  maxDepthToLeaf: number;
558
557
  showBranchLen: boolean;
@@ -575,6 +574,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
575
574
  readonly rows: [string, string][];
576
575
  readonly numRows: number;
577
576
  seqPosIndex(rowName: string): Int32Array | undefined;
577
+ rowSequence(name: string): string | undefined;
578
578
  readonly rowMap: Map<string, string>;
579
579
  readonly columns: Map<string, string>;
580
580
  readonly columns2d: string[];
@@ -598,7 +598,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
598
598
  readonly totalHeight: number;
599
599
  readonly leaves: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>[];
600
600
  readonly rootToTipLength: number;
601
- readonly maxBranchLength: number;
602
601
  readonly pxPerBranchLength: number;
603
602
  readonly maxDepthToLeaf: number;
604
603
  readonly allBranchesLength0: boolean;
@@ -684,17 +683,12 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
684
683
  replaceTree(newick: string): void;
685
684
  resetZoom(): void;
686
685
  zoomAtCenter(scaleFactor: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
687
- zoomOutHorizontal(): void;
688
- zoomInHorizontal(): void;
689
- zoomInVertical(): void;
690
- zoomOutVertical(): void;
691
686
  zoomIn(): void;
692
687
  zoomOut(): void;
693
688
  zoomToPos(scaleFactor: number, offsetX: number, offsetY: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
694
689
  doScrollY(deltaY: number): void;
695
690
  setScrollY(n: number): void;
696
691
  setAnnotations(annotations: import("msa-parsers").Annotation[]): void;
697
- setDomains(data?: Record<string, import("msa-parsers").InterProScanResults>): void;
698
692
  applyGFFText(gffText: string): void;
699
693
  doScrollX(deltaX: number): void;
700
694
  setScrollX(n: number): void;
@@ -787,15 +781,17 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
787
781
  } & {
788
782
  setHeaderHeight(arg: number): void;
789
783
  setHideHeader(arg: boolean): void;
784
+ setImportForm(arg: boolean): void;
790
785
  treeOverviewClick(y: number): void;
791
786
  setTrackHeight(heightKey: string, height: number): void;
792
787
  reset(): void;
793
- exportSVG(opts: import("./renderToSvg.tsx").ExportSvgOptions): Promise<void>;
788
+ exportSVG(opts: import("./exportLayout.ts").ExportSvgOptions): Promise<void>;
794
789
  exportNewick(): void;
795
790
  setFilter(accession: string, shown: boolean): void;
796
791
  fit(): void;
797
792
  fitVertically(): void;
798
793
  zoomToRegion(region: import("./types.ts").Region): void;
794
+ revealRegion(region: import("./types.ts").Region): void;
799
795
  zoomToSelection(): void;
800
796
  selectBlock(anchor: {
801
797
  col: number;
@@ -1210,7 +1206,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1210
1206
  setDrawNodeBubbles(arg: boolean): void;
1211
1207
  setDrawNodeLabels(arg: boolean): void;
1212
1208
  setShowTreeOverview(arg: boolean): void;
1213
- setOverviewHeight(n: number): void;
1214
1209
  setDrawLabels(arg: boolean): void;
1215
1210
  } & {
1216
1211
  setColorSchemeName(name: string): void;
@@ -1221,6 +1216,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1221
1216
  } & {
1222
1217
  headerHeight: number;
1223
1218
  hideHeader: boolean;
1219
+ importForm: boolean;
1224
1220
  status: {
1225
1221
  msg: string;
1226
1222
  onCancel?: () => void;
@@ -1299,7 +1295,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1299
1295
  setGFF(result?: string): void;
1300
1296
  } & {
1301
1297
  readonly hideGapsEffective: boolean;
1302
- readonly realAllowedGappyness: number;
1303
1298
  readonly allAnnotations: import("msa-parsers").Annotation[];
1304
1299
  readonly actuallyShowDomains: boolean;
1305
1300
  readonly hostRestoresData: boolean;
@@ -1357,7 +1352,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1357
1352
  readonly treeNewick: string;
1358
1353
  readonly treeOverviewHeight: number;
1359
1354
  readonly treeOverviewLayout: {
1360
- root: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>;
1355
+ root: import("./hierarchy.ts").LaidOutNode<import("./types.ts").NodeWithIds>;
1361
1356
  numTips: number;
1362
1357
  maxDepthToLeaf: number;
1363
1358
  showBranchLen: boolean;
@@ -1380,6 +1375,7 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1380
1375
  readonly rows: [string, string][];
1381
1376
  readonly numRows: number;
1382
1377
  seqPosIndex(rowName: string): Int32Array | undefined;
1378
+ rowSequence(name: string): string | undefined;
1383
1379
  readonly rowMap: Map<string, string>;
1384
1380
  readonly columns: Map<string, string>;
1385
1381
  readonly columns2d: string[];
@@ -1403,7 +1399,6 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1403
1399
  readonly totalHeight: number;
1404
1400
  readonly leaves: import("./hierarchy.ts").HierarchyNode<import("./types.ts").NodeWithIds>[];
1405
1401
  readonly rootToTipLength: number;
1406
- readonly maxBranchLength: number;
1407
1402
  readonly pxPerBranchLength: number;
1408
1403
  readonly maxDepthToLeaf: number;
1409
1404
  readonly allBranchesLength0: boolean;
@@ -1489,17 +1484,12 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1489
1484
  replaceTree(newick: string): void;
1490
1485
  resetZoom(): void;
1491
1486
  zoomAtCenter(scaleFactor: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
1492
- zoomOutHorizontal(): void;
1493
- zoomInHorizontal(): void;
1494
- zoomInVertical(): void;
1495
- zoomOutVertical(): void;
1496
1487
  zoomIn(): void;
1497
1488
  zoomOut(): void;
1498
1489
  zoomToPos(scaleFactor: number, offsetX: number, offsetY: number, axis?: import("./constants.ts").ScrollZoomAxis): void;
1499
1490
  doScrollY(deltaY: number): void;
1500
1491
  setScrollY(n: number): void;
1501
1492
  setAnnotations(annotations: import("msa-parsers").Annotation[]): void;
1502
- setDomains(data?: Record<string, import("msa-parsers").InterProScanResults>): void;
1503
1493
  applyGFFText(gffText: string): void;
1504
1494
  doScrollX(deltaX: number): void;
1505
1495
  setScrollX(n: number): void;
@@ -1592,15 +1582,17 @@ export declare function createTestModel(snapshot: Omit<Snapshot, 'type'>, width?
1592
1582
  } & {
1593
1583
  setHeaderHeight(arg: number): void;
1594
1584
  setHideHeader(arg: boolean): void;
1585
+ setImportForm(arg: boolean): void;
1595
1586
  treeOverviewClick(y: number): void;
1596
1587
  setTrackHeight(heightKey: string, height: number): void;
1597
1588
  reset(): void;
1598
- exportSVG(opts: import("./renderToSvg.tsx").ExportSvgOptions): Promise<void>;
1589
+ exportSVG(opts: import("./exportLayout.ts").ExportSvgOptions): Promise<void>;
1599
1590
  exportNewick(): void;
1600
1591
  setFilter(accession: string, shown: boolean): void;
1601
1592
  fit(): void;
1602
1593
  fitVertically(): void;
1603
1594
  zoomToRegion(region: import("./types.ts").Region): void;
1595
+ revealRegion(region: import("./types.ts").Region): void;
1604
1596
  zoomToSelection(): void;
1605
1597
  selectBlock(anchor: {
1606
1598
  col: number;
package/dist/types.d.ts CHANGED
@@ -44,7 +44,6 @@ export interface ArcTrackModel extends BasicTrackModel {
44
44
  arcColor?: string;
45
45
  }
46
46
  export interface BasicTrack {
47
- ReactComponent: React.FC<any>;
48
47
  model: TextTrackModel & BarTrackModel & ArcTrackModel;
49
48
  }
50
49
  export interface ArcSpec {
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "9.0.0";
1
+ export declare const version = "9.1.0";
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '9.0.0';
1
+ export const version = '9.1.0';
2
2
  //# sourceMappingURL=version.js.map