@jbrowse/plugin-linear-genome-view 2.6.3 → 2.7.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 (111) hide show
  1. package/dist/BaseLinearDisplay/components/LinearBlocks.d.ts +4 -14
  2. package/dist/BaseLinearDisplay/components/LinearBlocks.js +4 -5
  3. package/dist/BaseLinearDisplay/components/Tooltip.js +1 -1
  4. package/dist/BaseLinearDisplay/models/util.d.ts +2 -6
  5. package/dist/LinearBasicDisplay/components/SetMaxHeight.d.ts +4 -5
  6. package/dist/LinearBasicDisplay/components/SetMaxHeight.js +3 -3
  7. package/dist/LinearBasicDisplay/model.d.ts +3 -1
  8. package/dist/LinearGenomeView/components/CenterLine.d.ts +3 -4
  9. package/dist/LinearGenomeView/components/CenterLine.js +3 -3
  10. package/dist/LinearGenomeView/components/Cytobands.d.ts +6 -2
  11. package/dist/LinearGenomeView/components/Cytobands.js +37 -38
  12. package/dist/LinearGenomeView/components/GetSequenceDialog.d.ts +3 -4
  13. package/dist/LinearGenomeView/components/GetSequenceDialog.js +3 -3
  14. package/dist/LinearGenomeView/components/Gridlines.d.ts +3 -4
  15. package/dist/LinearGenomeView/components/Gridlines.js +21 -18
  16. package/dist/LinearGenomeView/components/ImportForm.d.ts +2 -2
  17. package/dist/LinearGenomeView/components/ImportForm.js +2 -1
  18. package/dist/LinearGenomeView/components/LinearGenomeView.js +19 -1
  19. package/dist/LinearGenomeView/components/MiniControls.js +13 -5
  20. package/dist/LinearGenomeView/components/OverviewRubberband.d.ts +2 -2
  21. package/dist/LinearGenomeView/components/OverviewRubberband.js +2 -1
  22. package/dist/LinearGenomeView/components/OverviewScalebar.d.ts +2 -2
  23. package/dist/LinearGenomeView/components/OverviewScalebar.js +41 -13
  24. package/dist/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +2 -2
  25. package/dist/LinearGenomeView/components/RefNameAutocomplete/index.js +2 -1
  26. package/dist/LinearGenomeView/components/RefNameAutocomplete/util.d.ts +1 -3
  27. package/dist/LinearGenomeView/components/Rubberband.d.ts +4 -5
  28. package/dist/LinearGenomeView/components/Rubberband.js +3 -3
  29. package/dist/LinearGenomeView/components/Scalebar.d.ts +2 -2
  30. package/dist/LinearGenomeView/components/Scalebar.js +29 -24
  31. package/dist/LinearGenomeView/components/SearchBox.d.ts +4 -5
  32. package/dist/LinearGenomeView/components/SearchBox.js +3 -3
  33. package/dist/LinearGenomeView/components/SequenceSearchDialog.d.ts +4 -5
  34. package/dist/LinearGenomeView/components/SequenceSearchDialog.js +20 -18
  35. package/dist/LinearGenomeView/components/TrackContainer.d.ts +2 -2
  36. package/dist/LinearGenomeView/components/TrackContainer.js +2 -1
  37. package/dist/LinearGenomeView/components/TrackLabel.d.ts +2 -2
  38. package/dist/LinearGenomeView/components/TrackLabel.js +3 -3
  39. package/dist/LinearGenomeView/components/TrackRenderingContainer.d.ts +2 -2
  40. package/dist/LinearGenomeView/components/TrackRenderingContainer.js +2 -1
  41. package/dist/LinearGenomeView/components/TracksContainer.d.ts +2 -2
  42. package/dist/LinearGenomeView/components/TracksContainer.js +2 -1
  43. package/dist/LinearGenomeView/components/VerticalGuide.d.ts +3 -4
  44. package/dist/LinearGenomeView/components/VerticalGuide.js +3 -3
  45. package/dist/LinearGenomeView/components/ZoomControls.d.ts +3 -4
  46. package/dist/LinearGenomeView/components/ZoomControls.js +3 -3
  47. package/dist/LinearGenomeView/components/util.d.ts +1 -1
  48. package/dist/LinearGenomeView/model.d.ts +6 -6
  49. package/dist/LinearGenomeView/model.js +33 -0
  50. package/dist/LinearGenomeView/svgcomponents/SVGBackground.js +2 -2
  51. package/dist/LinearGenomeView/svgcomponents/SVGHeader.js +1 -4
  52. package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +1 -0
  53. package/dist/LinearGenomeView/svgcomponents/SVGRuler.js +2 -3
  54. package/dist/LinearGenomeView/svgcomponents/SVGScalebar.js +1 -2
  55. package/dist/index.d.ts +37 -37
  56. package/esm/BaseLinearDisplay/components/LinearBlocks.d.ts +4 -14
  57. package/esm/BaseLinearDisplay/components/LinearBlocks.js +4 -4
  58. package/esm/BaseLinearDisplay/components/Tooltip.js +1 -1
  59. package/esm/BaseLinearDisplay/models/util.d.ts +2 -6
  60. package/esm/LinearBasicDisplay/components/SetMaxHeight.d.ts +4 -5
  61. package/esm/LinearBasicDisplay/components/SetMaxHeight.js +3 -3
  62. package/esm/LinearBasicDisplay/model.d.ts +3 -1
  63. package/esm/LinearGenomeView/components/CenterLine.d.ts +3 -4
  64. package/esm/LinearGenomeView/components/CenterLine.js +3 -3
  65. package/esm/LinearGenomeView/components/Cytobands.d.ts +6 -2
  66. package/esm/LinearGenomeView/components/Cytobands.js +37 -38
  67. package/esm/LinearGenomeView/components/GetSequenceDialog.d.ts +3 -4
  68. package/esm/LinearGenomeView/components/GetSequenceDialog.js +3 -3
  69. package/esm/LinearGenomeView/components/Gridlines.d.ts +3 -4
  70. package/esm/LinearGenomeView/components/Gridlines.js +21 -18
  71. package/esm/LinearGenomeView/components/ImportForm.d.ts +2 -2
  72. package/esm/LinearGenomeView/components/ImportForm.js +2 -1
  73. package/esm/LinearGenomeView/components/LinearGenomeView.js +20 -2
  74. package/esm/LinearGenomeView/components/MiniControls.js +13 -5
  75. package/esm/LinearGenomeView/components/OverviewRubberband.d.ts +2 -2
  76. package/esm/LinearGenomeView/components/OverviewRubberband.js +2 -1
  77. package/esm/LinearGenomeView/components/OverviewScalebar.d.ts +2 -2
  78. package/esm/LinearGenomeView/components/OverviewScalebar.js +18 -13
  79. package/esm/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +2 -2
  80. package/esm/LinearGenomeView/components/RefNameAutocomplete/index.js +2 -1
  81. package/esm/LinearGenomeView/components/RefNameAutocomplete/util.d.ts +1 -3
  82. package/esm/LinearGenomeView/components/Rubberband.d.ts +4 -5
  83. package/esm/LinearGenomeView/components/Rubberband.js +3 -3
  84. package/esm/LinearGenomeView/components/Scalebar.d.ts +2 -2
  85. package/esm/LinearGenomeView/components/Scalebar.js +29 -24
  86. package/esm/LinearGenomeView/components/SearchBox.d.ts +4 -5
  87. package/esm/LinearGenomeView/components/SearchBox.js +3 -3
  88. package/esm/LinearGenomeView/components/SequenceSearchDialog.d.ts +4 -5
  89. package/esm/LinearGenomeView/components/SequenceSearchDialog.js +21 -19
  90. package/esm/LinearGenomeView/components/TrackContainer.d.ts +2 -2
  91. package/esm/LinearGenomeView/components/TrackContainer.js +2 -1
  92. package/esm/LinearGenomeView/components/TrackLabel.d.ts +2 -2
  93. package/esm/LinearGenomeView/components/TrackLabel.js +3 -3
  94. package/esm/LinearGenomeView/components/TrackRenderingContainer.d.ts +2 -2
  95. package/esm/LinearGenomeView/components/TrackRenderingContainer.js +2 -1
  96. package/esm/LinearGenomeView/components/TracksContainer.d.ts +2 -2
  97. package/esm/LinearGenomeView/components/TracksContainer.js +2 -1
  98. package/esm/LinearGenomeView/components/VerticalGuide.d.ts +3 -4
  99. package/esm/LinearGenomeView/components/VerticalGuide.js +3 -3
  100. package/esm/LinearGenomeView/components/ZoomControls.d.ts +3 -4
  101. package/esm/LinearGenomeView/components/ZoomControls.js +3 -3
  102. package/esm/LinearGenomeView/components/util.d.ts +1 -1
  103. package/esm/LinearGenomeView/model.d.ts +6 -6
  104. package/esm/LinearGenomeView/model.js +33 -0
  105. package/esm/LinearGenomeView/svgcomponents/SVGBackground.js +2 -2
  106. package/esm/LinearGenomeView/svgcomponents/SVGHeader.js +2 -5
  107. package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +1 -0
  108. package/esm/LinearGenomeView/svgcomponents/SVGRuler.js +3 -4
  109. package/esm/LinearGenomeView/svgcomponents/SVGScalebar.js +2 -3
  110. package/esm/index.d.ts +37 -37
  111. package/package.json +4 -5
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import { LinearGenomeViewModel } from '..';
3
- declare function ZoomControls({ model }: {
3
+ declare const ZoomControls: ({ model, }: {
4
4
  model: LinearGenomeViewModel;
5
- }): React.JSX.Element;
6
- declare const _default: typeof ZoomControls;
7
- export default _default;
5
+ }) => React.JSX.Element;
6
+ export default ZoomControls;
@@ -15,7 +15,7 @@ const useStyles = makeStyles()(theme => ({
15
15
  color: theme.palette.text.secondary,
16
16
  },
17
17
  }));
18
- function ZoomControls({ model }) {
18
+ const ZoomControls = observer(function ({ model, }) {
19
19
  const { classes } = useStyles();
20
20
  const { maxBpPerPx, minBpPerPx, bpPerPx, scaleFactor } = model;
21
21
  const [value, setValue] = useState(-Math.log2(bpPerPx) * 100);
@@ -28,5 +28,5 @@ function ZoomControls({ model }) {
28
28
  React.createElement(Slider, { size: "small", className: classes.slider, value: value, min: -Math.log2(maxBpPerPx) * 100, max: -Math.log2(minBpPerPx) * 100, onChange: (_, val) => setValue(val), onChangeCommitted: () => model.zoomTo(2 ** (-value / 100)), disabled: scaleFactor !== 1 }),
29
29
  React.createElement(IconButton, { "data-testid": "zoom_in", onClick: () => model.zoom(model.bpPerPx / 2), disabled: bpPerPx <= minBpPerPx + 0.0001 || scaleFactor !== 1, size: "large" },
30
30
  React.createElement(ZoomIn, null))));
31
- }
32
- export default observer(ZoomControls);
31
+ });
32
+ export default ZoomControls;
@@ -20,5 +20,5 @@ export declare function getCytobands(assembly: Assembly | undefined, refName: st
20
20
  refName: string;
21
21
  start: number;
22
22
  end: number;
23
- type: any;
23
+ type: string;
24
24
  }[];
@@ -87,12 +87,10 @@ export declare function stateModelFactory(pluginManager: PluginManager): import(
87
87
  volatileWidth: number | undefined;
88
88
  minimumBlockWidth: number;
89
89
  draggingTrackId: string | undefined;
90
- volatileError: Error | undefined;
90
+ volatileError: unknown;
91
91
  afterDisplayedRegionsSetCallbacks: Function[];
92
92
  scaleFactor: number;
93
- trackRefs: {
94
- [key: string]: HTMLDivElement;
95
- };
93
+ trackRefs: Record<string, HTMLDivElement>;
96
94
  coarseDynamicBlocks: BaseBlock[];
97
95
  coarseTotalBp: number;
98
96
  leftOffset: BpOffset | undefined;
@@ -170,7 +168,7 @@ export declare function stateModelFactory(pluginManager: PluginManager): import(
170
168
  /**
171
169
  * #getter
172
170
  */
173
- readonly error: string | Error;
171
+ readonly error: {};
174
172
  /**
175
173
  * #getter
176
174
  */
@@ -224,7 +222,7 @@ export declare function stateModelFactory(pluginManager: PluginManager): import(
224
222
  /**
225
223
  * #action
226
224
  */
227
- setError(error: Error | undefined): void;
225
+ setError(error: unknown): void;
228
226
  /**
229
227
  * #action
230
228
  */
@@ -545,6 +543,8 @@ export declare function stateModelFactory(pluginManager: PluginManager): import(
545
543
  end: number;
546
544
  reversed: boolean;
547
545
  } | undefined;
546
+ } & {
547
+ afterCreate(): void;
548
548
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
549
549
  export type LinearGenomeViewStateModel = ReturnType<typeof stateModelFactory>;
550
550
  export type LinearGenomeViewModel = Instance<LinearGenomeViewStateModel>;
@@ -1227,6 +1227,39 @@ export function stateModelFactory(pluginManager) {
1227
1227
  ? this.pxToBp(self.width / 2)
1228
1228
  : undefined;
1229
1229
  },
1230
+ }))
1231
+ .actions(self => ({
1232
+ afterCreate() {
1233
+ function handler(e) {
1234
+ const session = getSession(self);
1235
+ if (session.focusedViewId === self.id && (e.ctrlKey || e.metaKey)) {
1236
+ if (e.code === 'ArrowLeft') {
1237
+ e.preventDefault();
1238
+ // pan left
1239
+ self.slide(-0.9);
1240
+ }
1241
+ if (e.code === 'ArrowRight') {
1242
+ e.preventDefault();
1243
+ // pan right
1244
+ self.slide(0.9);
1245
+ }
1246
+ if (e.code === 'ArrowUp' && self.scaleFactor === 1) {
1247
+ e.preventDefault();
1248
+ // zoom in
1249
+ self.zoom(self.bpPerPx / 2);
1250
+ }
1251
+ if (e.code === 'ArrowDown' && self.scaleFactor === 1) {
1252
+ e.preventDefault();
1253
+ // zoom out
1254
+ self.zoom(self.bpPerPx * 2);
1255
+ }
1256
+ }
1257
+ }
1258
+ document.addEventListener('keydown', handler);
1259
+ addDisposer(self, () => {
1260
+ document.removeEventListener('keydown', handler);
1261
+ });
1262
+ },
1230
1263
  }));
1231
1264
  }
1232
1265
  export { default as ReactComponent, default as LinearGenomeView, } from './components/LinearGenomeView';
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { useTheme } from '@mui/material';
3
- import Color from 'color';
3
+ import { stripAlpha } from '@jbrowse/core/util';
4
4
  export default function SVGBackground({ width, height, shift, }) {
5
5
  const theme = useTheme();
6
- return (React.createElement("rect", { width: width + shift * 2, height: height, fill: Color(theme.palette.background.default).hex() }));
6
+ return (React.createElement("rect", { width: width + shift * 2, height: height, fill: stripAlpha(theme.palette.background.default) }));
7
7
  }
@@ -1,8 +1,7 @@
1
1
  import React from 'react';
2
- import { getSession } from '@jbrowse/core/util';
2
+ import { getSession, stripAlpha } from '@jbrowse/core/util';
3
3
  import Base1DView from '@jbrowse/core/util/Base1DViewModel';
4
4
  import { useTheme } from '@mui/material';
5
- import Color from 'color';
6
5
  // locals
7
6
  import { HEADER_OVERVIEW_HEIGHT } from '..';
8
7
  import Cytobands from '../components/Cytobands';
@@ -15,7 +14,7 @@ export default function SVGHeader({ model, fontSize, cytobandHeight, rulerHeight
15
14
  const assemblyName = assemblyNames.length > 1 ? '' : assemblyNames[0];
16
15
  const assembly = assemblyManager.get(assemblyName);
17
16
  const theme = useTheme();
18
- const c = Color(theme.palette.text.primary).hex();
17
+ const c = stripAlpha(theme.palette.text.primary);
19
18
  const overview = Base1DView.create({
20
19
  displayedRegions: JSON.parse(JSON.stringify(displayedRegions)),
21
20
  interRegionPaddingWidth: 0,
@@ -28,9 +27,7 @@ export default function SVGHeader({ model, fontSize, cytobandHeight, rulerHeight
28
27
  overview.setVolatileWidth(width);
29
28
  overview.showAllRegions();
30
29
  const block = overview.dynamicBlocks.contentBlocks[0];
31
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
32
30
  const first = visibleRegions.at(0);
33
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
34
31
  const last = visibleRegions.at(-1);
35
32
  const firstOverviewPx = overview.bpToPx({
36
33
  ...first,
@@ -1,3 +1,4 @@
1
+ /* eslint-disable react-refresh/only-export-components */
1
2
  import React from 'react';
2
3
  import { renderToStaticMarkup } from 'react-dom/server';
3
4
  import { when } from 'mobx';
@@ -1,14 +1,13 @@
1
1
  import React from 'react';
2
- import { getTickDisplayStr } from '@jbrowse/core/util';
2
+ import { getTickDisplayStr, stripAlpha } from '@jbrowse/core/util';
3
3
  import { useTheme } from '@mui/material';
4
4
  // locals
5
5
  import { makeTicks } from '../util';
6
6
  import SVGRegionSeparators from './SVGRegionSeparators';
7
- import Color from 'color';
8
7
  function Ruler({ start, end, bpPerPx, reversed = false, major = true, minor = true, hideText = false, }) {
9
8
  const ticks = makeTicks(start, end, bpPerPx, major, minor);
10
9
  const theme = useTheme();
11
- const c = Color(theme.palette.text.secondary).hex();
10
+ const c = stripAlpha(theme.palette.text.secondary);
12
11
  return (React.createElement(React.Fragment, null,
13
12
  ticks.map(tick => {
14
13
  const x = (reversed ? end - tick.base : tick.base - start) / bpPerPx;
@@ -27,7 +26,7 @@ export default function SVGRuler({ model, fontSize, }) {
27
26
  const { dynamicBlocks: { contentBlocks }, offsetPx: viewOffsetPx, bpPerPx, } = model;
28
27
  const renderRuler = contentBlocks.length < 5;
29
28
  const theme = useTheme();
30
- const c = Color(theme.palette.text.primary).hex();
29
+ const c = stripAlpha(theme.palette.text.primary);
31
30
  return (React.createElement(React.Fragment, null,
32
31
  React.createElement(SVGRegionSeparators, { model: model, height: 30 }),
33
32
  contentBlocks.map(block => {
@@ -1,14 +1,13 @@
1
1
  import React from 'react';
2
- import { getBpDisplayStr } from '@jbrowse/core/util';
2
+ import { getBpDisplayStr, stripAlpha } from '@jbrowse/core/util';
3
3
  import { useTheme } from '@mui/material';
4
- import Color from 'color';
5
4
  export default function SVGScalebar({ model, fontSize, }) {
6
5
  const { offsetPx, dynamicBlocks: { totalWidthPxWithoutBorders: totalWidthPx, totalBp }, } = model;
7
6
  const theme = useTheme();
8
7
  const displayBp = getBpDisplayStr(totalBp);
9
8
  const x0 = Math.max(-offsetPx, 0);
10
9
  const x1 = x0 + totalWidthPx;
11
- const c = Color(theme.palette.text.secondary).hex();
10
+ const c = stripAlpha(theme.palette.text.secondary);
12
11
  const x = x0 + (x1 - x0) / 2;
13
12
  const y = fontSize;
14
13
  return (React.createElement(React.Fragment, null,
package/esm/index.d.ts CHANGED
@@ -910,12 +910,10 @@ export default class LinearGenomeViewPlugin extends Plugin {
910
910
  volatileWidth: number | undefined;
911
911
  minimumBlockWidth: number;
912
912
  draggingTrackId: string | undefined;
913
- volatileError: Error | undefined;
913
+ volatileError: unknown;
914
914
  afterDisplayedRegionsSetCallbacks: Function[];
915
915
  scaleFactor: number;
916
- trackRefs: {
917
- [key: string]: HTMLDivElement;
918
- };
916
+ trackRefs: Record<string, HTMLDivElement>;
919
917
  coarseDynamicBlocks: import("@jbrowse/core/util/blockTypes").BaseBlock[];
920
918
  coarseTotalBp: number;
921
919
  leftOffset: import("./LinearGenomeView").BpOffset | undefined;
@@ -939,7 +937,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
939
937
  readonly totalBp: number;
940
938
  readonly maxBpPerPx: number;
941
939
  readonly minBpPerPx: number;
942
- readonly error: string | Error;
940
+ readonly error: {};
943
941
  readonly maxOffset: number;
944
942
  readonly minOffset: number;
945
943
  readonly displayedRegionsTotalPx: number;
@@ -956,7 +954,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
956
954
  } & {
957
955
  setShowCytobands(flag: boolean): void;
958
956
  setWidth(newWidth: number): void;
959
- setError(error: Error | undefined): void;
957
+ setError(error: unknown): void;
960
958
  toggleHeader(): void;
961
959
  toggleHeaderOverview(): void;
962
960
  toggleNoTracksActive(): void;
@@ -1058,6 +1056,8 @@ export default class LinearGenomeViewPlugin extends Plugin {
1058
1056
  end: number;
1059
1057
  reversed: boolean;
1060
1058
  } | undefined;
1059
+ } & {
1060
+ afterCreate(): void;
1061
1061
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1062
1062
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
1063
1063
  displayName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
@@ -1098,12 +1098,10 @@ export default class LinearGenomeViewPlugin extends Plugin {
1098
1098
  volatileWidth: number | undefined;
1099
1099
  minimumBlockWidth: number;
1100
1100
  draggingTrackId: string | undefined;
1101
- volatileError: Error | undefined;
1101
+ volatileError: unknown;
1102
1102
  afterDisplayedRegionsSetCallbacks: Function[];
1103
1103
  scaleFactor: number;
1104
- trackRefs: {
1105
- [key: string]: HTMLDivElement;
1106
- };
1104
+ trackRefs: Record<string, HTMLDivElement>;
1107
1105
  coarseDynamicBlocks: import("@jbrowse/core/util/blockTypes").BaseBlock[];
1108
1106
  coarseTotalBp: number;
1109
1107
  leftOffset: import("./LinearGenomeView").BpOffset | undefined;
@@ -1127,7 +1125,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1127
1125
  readonly totalBp: number;
1128
1126
  readonly maxBpPerPx: number;
1129
1127
  readonly minBpPerPx: number;
1130
- readonly error: string | Error;
1128
+ readonly error: {};
1131
1129
  readonly maxOffset: number;
1132
1130
  readonly minOffset: number;
1133
1131
  readonly displayedRegionsTotalPx: number;
@@ -1144,7 +1142,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1144
1142
  } & {
1145
1143
  setShowCytobands(flag: boolean): void;
1146
1144
  setWidth(newWidth: number): void;
1147
- setError(error: Error | undefined): void;
1145
+ setError(error: unknown): void;
1148
1146
  toggleHeader(): void;
1149
1147
  toggleHeaderOverview(): void;
1150
1148
  toggleNoTracksActive(): void;
@@ -1246,9 +1244,11 @@ export default class LinearGenomeViewPlugin extends Plugin {
1246
1244
  end: number;
1247
1245
  reversed: boolean;
1248
1246
  } | undefined;
1247
+ } & {
1248
+ afterCreate(): void;
1249
1249
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
1250
1250
  }) => import("react").JSX.Element;
1251
- ZoomControls: ({ model }: {
1251
+ ZoomControls: ({ model, }: {
1252
1252
  model: {
1253
1253
  id: string;
1254
1254
  displayName: string | undefined;
@@ -1296,12 +1296,10 @@ export default class LinearGenomeViewPlugin extends Plugin {
1296
1296
  volatileWidth: number | undefined;
1297
1297
  minimumBlockWidth: number;
1298
1298
  draggingTrackId: string | undefined;
1299
- volatileError: Error | undefined;
1299
+ volatileError: unknown;
1300
1300
  afterDisplayedRegionsSetCallbacks: Function[];
1301
1301
  scaleFactor: number;
1302
- trackRefs: {
1303
- [key: string]: HTMLDivElement;
1304
- };
1302
+ trackRefs: Record<string, HTMLDivElement>;
1305
1303
  coarseDynamicBlocks: import("@jbrowse/core/util/blockTypes").BaseBlock[];
1306
1304
  coarseTotalBp: number;
1307
1305
  leftOffset: import("./LinearGenomeView").BpOffset | undefined;
@@ -1325,7 +1323,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1325
1323
  readonly totalBp: number;
1326
1324
  readonly maxBpPerPx: number;
1327
1325
  readonly minBpPerPx: number;
1328
- readonly error: string | Error;
1326
+ readonly error: {};
1329
1327
  readonly maxOffset: number;
1330
1328
  readonly minOffset: number;
1331
1329
  readonly displayedRegionsTotalPx: number;
@@ -1342,7 +1340,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1342
1340
  } & {
1343
1341
  setShowCytobands(flag: boolean): void;
1344
1342
  setWidth(newWidth: number): void;
1345
- setError(error: Error | undefined): void;
1343
+ setError(error: unknown): void;
1346
1344
  toggleHeader(): void;
1347
1345
  toggleHeaderOverview(): void;
1348
1346
  toggleNoTracksActive(): void;
@@ -1444,6 +1442,8 @@ export default class LinearGenomeViewPlugin extends Plugin {
1444
1442
  end: number;
1445
1443
  reversed: boolean;
1446
1444
  } | undefined;
1445
+ } & {
1446
+ afterCreate(): void;
1447
1447
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1448
1448
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
1449
1449
  displayName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
@@ -1484,12 +1484,10 @@ export default class LinearGenomeViewPlugin extends Plugin {
1484
1484
  volatileWidth: number | undefined;
1485
1485
  minimumBlockWidth: number;
1486
1486
  draggingTrackId: string | undefined;
1487
- volatileError: Error | undefined;
1487
+ volatileError: unknown;
1488
1488
  afterDisplayedRegionsSetCallbacks: Function[];
1489
1489
  scaleFactor: number;
1490
- trackRefs: {
1491
- [key: string]: HTMLDivElement;
1492
- };
1490
+ trackRefs: Record<string, HTMLDivElement>;
1493
1491
  coarseDynamicBlocks: import("@jbrowse/core/util/blockTypes").BaseBlock[];
1494
1492
  coarseTotalBp: number;
1495
1493
  leftOffset: import("./LinearGenomeView").BpOffset | undefined;
@@ -1513,7 +1511,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1513
1511
  readonly totalBp: number;
1514
1512
  readonly maxBpPerPx: number;
1515
1513
  readonly minBpPerPx: number;
1516
- readonly error: string | Error;
1514
+ readonly error: {};
1517
1515
  readonly maxOffset: number;
1518
1516
  readonly minOffset: number;
1519
1517
  readonly displayedRegionsTotalPx: number;
@@ -1530,7 +1528,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1530
1528
  } & {
1531
1529
  setShowCytobands(flag: boolean): void;
1532
1530
  setWidth(newWidth: number): void;
1533
- setError(error: Error | undefined): void;
1531
+ setError(error: unknown): void;
1534
1532
  toggleHeader(): void;
1535
1533
  toggleHeaderOverview(): void;
1536
1534
  toggleNoTracksActive(): void;
@@ -1632,6 +1630,8 @@ export default class LinearGenomeViewPlugin extends Plugin {
1632
1630
  end: number;
1633
1631
  reversed: boolean;
1634
1632
  } | undefined;
1633
+ } & {
1634
+ afterCreate(): void;
1635
1635
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
1636
1636
  }) => import("react").JSX.Element;
1637
1637
  LinearGenomeView: ({ model }: {
@@ -1682,12 +1682,10 @@ export default class LinearGenomeViewPlugin extends Plugin {
1682
1682
  volatileWidth: number | undefined;
1683
1683
  minimumBlockWidth: number;
1684
1684
  draggingTrackId: string | undefined;
1685
- volatileError: Error | undefined;
1685
+ volatileError: unknown;
1686
1686
  afterDisplayedRegionsSetCallbacks: Function[];
1687
1687
  scaleFactor: number;
1688
- trackRefs: {
1689
- [key: string]: HTMLDivElement;
1690
- };
1688
+ trackRefs: Record<string, HTMLDivElement>;
1691
1689
  coarseDynamicBlocks: import("@jbrowse/core/util/blockTypes").BaseBlock[];
1692
1690
  coarseTotalBp: number;
1693
1691
  leftOffset: import("./LinearGenomeView").BpOffset | undefined;
@@ -1711,7 +1709,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1711
1709
  readonly totalBp: number;
1712
1710
  readonly maxBpPerPx: number;
1713
1711
  readonly minBpPerPx: number;
1714
- readonly error: string | Error;
1712
+ readonly error: {};
1715
1713
  readonly maxOffset: number;
1716
1714
  readonly minOffset: number;
1717
1715
  readonly displayedRegionsTotalPx: number;
@@ -1728,7 +1726,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1728
1726
  } & {
1729
1727
  setShowCytobands(flag: boolean): void;
1730
1728
  setWidth(newWidth: number): void;
1731
- setError(error: Error | undefined): void;
1729
+ setError(error: unknown): void;
1732
1730
  toggleHeader(): void;
1733
1731
  toggleHeaderOverview(): void;
1734
1732
  toggleNoTracksActive(): void;
@@ -1830,6 +1828,8 @@ export default class LinearGenomeViewPlugin extends Plugin {
1830
1828
  end: number;
1831
1829
  reversed: boolean;
1832
1830
  } | undefined;
1831
+ } & {
1832
+ afterCreate(): void;
1833
1833
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1834
1834
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
1835
1835
  displayName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
@@ -1870,12 +1870,10 @@ export default class LinearGenomeViewPlugin extends Plugin {
1870
1870
  volatileWidth: number | undefined;
1871
1871
  minimumBlockWidth: number;
1872
1872
  draggingTrackId: string | undefined;
1873
- volatileError: Error | undefined;
1873
+ volatileError: unknown;
1874
1874
  afterDisplayedRegionsSetCallbacks: Function[];
1875
1875
  scaleFactor: number;
1876
- trackRefs: {
1877
- [key: string]: HTMLDivElement;
1878
- };
1876
+ trackRefs: Record<string, HTMLDivElement>;
1879
1877
  coarseDynamicBlocks: import("@jbrowse/core/util/blockTypes").BaseBlock[];
1880
1878
  coarseTotalBp: number;
1881
1879
  leftOffset: import("./LinearGenomeView").BpOffset | undefined;
@@ -1899,7 +1897,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1899
1897
  readonly totalBp: number;
1900
1898
  readonly maxBpPerPx: number;
1901
1899
  readonly minBpPerPx: number;
1902
- readonly error: string | Error;
1900
+ readonly error: {};
1903
1901
  readonly maxOffset: number;
1904
1902
  readonly minOffset: number;
1905
1903
  readonly displayedRegionsTotalPx: number;
@@ -1916,7 +1914,7 @@ export default class LinearGenomeViewPlugin extends Plugin {
1916
1914
  } & {
1917
1915
  setShowCytobands(flag: boolean): void;
1918
1916
  setWidth(newWidth: number): void;
1919
- setError(error: Error | undefined): void;
1917
+ setError(error: unknown): void;
1920
1918
  toggleHeader(): void;
1921
1919
  toggleHeaderOverview(): void;
1922
1920
  toggleNoTracksActive(): void;
@@ -2018,6 +2016,8 @@ export default class LinearGenomeViewPlugin extends Plugin {
2018
2016
  end: number;
2019
2017
  reversed: boolean;
2020
2018
  } | undefined;
2019
+ } & {
2020
+ afterCreate(): void;
2021
2021
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
2022
2022
  }) => import("react").JSX.Element;
2023
2023
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-linear-genome-view",
3
- "version": "2.6.3",
3
+ "version": "2.7.0",
4
4
  "description": "JBrowse 2 linear genome view",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -43,8 +43,7 @@
43
43
  "@types/file-saver": "^2.0.1",
44
44
  "@types/normalize-wheel": "^1.0.0",
45
45
  "clone": "^2.1.2",
46
- "clsx": "^1.0.4",
47
- "color": "^3.1.3",
46
+ "clsx": "^2.0.0",
48
47
  "copy-to-clipboard": "^3.3.1",
49
48
  "file-saver": "^2.0.0",
50
49
  "material-ui-popup-state": "^5.0.0",
@@ -56,7 +55,7 @@
56
55
  "@jbrowse/core": "^2.0.0",
57
56
  "@mui/material": "^5.0.0",
58
57
  "mobx": "^6.0.0",
59
- "mobx-react": "^7.0.0",
58
+ "mobx-react": "^9.0.0",
60
59
  "mobx-state-tree": "^5.0.0",
61
60
  "react": ">=16.8.0",
62
61
  "react-dom": ">=16.8.0",
@@ -66,5 +65,5 @@
66
65
  "access": "public"
67
66
  },
68
67
  "module": "esm/index.js",
69
- "gitHead": "ed402c87efb0904858d602c363bd1757d5742129"
68
+ "gitHead": "dbe7fb1af01fc89f833d2744635eb44a17365b41"
70
69
  }