@jbrowse/plugin-linear-genome-view 3.0.5 → 3.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 (63) hide show
  1. package/dist/BaseLinearDisplay/components/BlockErrorMessage.d.ts +7 -0
  2. package/dist/BaseLinearDisplay/components/{BlockError.js → BlockErrorMessage.js} +6 -3
  3. package/dist/BaseLinearDisplay/components/BlockLoadingMessage.d.ts +6 -0
  4. package/dist/BaseLinearDisplay/components/BlockLoadingMessage.js +26 -0
  5. package/dist/BaseLinearDisplay/components/BlockMsg.js +4 -2
  6. package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +4 -24
  7. package/dist/LinearGenomeView/components/CenterLine.js +1 -1
  8. package/dist/LinearGenomeView/components/Gridlines.d.ts +2 -1
  9. package/dist/LinearGenomeView/components/Gridlines.js +3 -4
  10. package/dist/LinearGenomeView/components/Header.js +2 -0
  11. package/dist/LinearGenomeView/components/LinearGenomeView.js +2 -49
  12. package/dist/LinearGenomeView/components/LinearGenomeViewContainer.d.ts +5 -0
  13. package/dist/LinearGenomeView/components/LinearGenomeViewContainer.js +98 -0
  14. package/dist/LinearGenomeView/components/MiniControls.js +0 -1
  15. package/dist/LinearGenomeView/components/NoTracksActiveButton.js +1 -1
  16. package/dist/LinearGenomeView/components/OverviewRubberband.js +0 -1
  17. package/dist/LinearGenomeView/components/Rubberband.js +25 -2
  18. package/dist/LinearGenomeView/components/RubberbandSpan.d.ts +3 -1
  19. package/dist/LinearGenomeView/components/RubberbandSpan.js +8 -6
  20. package/dist/LinearGenomeView/components/Scalebar.js +2 -2
  21. package/dist/LinearGenomeView/components/TrackContainer.js +9 -4
  22. package/dist/LinearGenomeView/components/TrackLabel.js +1 -1
  23. package/dist/LinearGenomeView/components/TrackLabelContainer.js +1 -1
  24. package/dist/LinearGenomeView/components/TrackLabelMenu.js +21 -0
  25. package/dist/LinearGenomeView/components/TrackRenderingContainer.js +0 -1
  26. package/dist/LinearGenomeView/components/TracksContainer.js +3 -4
  27. package/dist/LinearGenomeView/components/VerticalGuide.js +30 -5
  28. package/dist/LinearGenomeView/model.d.ts +4 -0
  29. package/dist/LinearGenomeView/model.js +27 -0
  30. package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +2 -2
  31. package/esm/BaseLinearDisplay/components/BlockErrorMessage.d.ts +7 -0
  32. package/esm/BaseLinearDisplay/components/{BlockError.js → BlockErrorMessage.js} +6 -3
  33. package/esm/BaseLinearDisplay/components/BlockLoadingMessage.d.ts +6 -0
  34. package/esm/BaseLinearDisplay/components/BlockLoadingMessage.js +24 -0
  35. package/esm/BaseLinearDisplay/components/BlockMsg.js +4 -2
  36. package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +4 -24
  37. package/esm/LinearGenomeView/components/CenterLine.js +1 -1
  38. package/esm/LinearGenomeView/components/Gridlines.d.ts +2 -1
  39. package/esm/LinearGenomeView/components/Gridlines.js +3 -4
  40. package/esm/LinearGenomeView/components/Header.js +2 -0
  41. package/esm/LinearGenomeView/components/LinearGenomeView.js +3 -50
  42. package/esm/LinearGenomeView/components/LinearGenomeViewContainer.d.ts +5 -0
  43. package/esm/LinearGenomeView/components/LinearGenomeViewContainer.js +60 -0
  44. package/esm/LinearGenomeView/components/MiniControls.js +0 -1
  45. package/esm/LinearGenomeView/components/NoTracksActiveButton.js +1 -1
  46. package/esm/LinearGenomeView/components/OverviewRubberband.js +0 -1
  47. package/esm/LinearGenomeView/components/Rubberband.js +26 -3
  48. package/esm/LinearGenomeView/components/RubberbandSpan.d.ts +3 -1
  49. package/esm/LinearGenomeView/components/RubberbandSpan.js +8 -6
  50. package/esm/LinearGenomeView/components/Scalebar.js +2 -2
  51. package/esm/LinearGenomeView/components/TrackContainer.js +9 -4
  52. package/esm/LinearGenomeView/components/TrackLabel.js +1 -1
  53. package/esm/LinearGenomeView/components/TrackLabelContainer.js +1 -1
  54. package/esm/LinearGenomeView/components/TrackLabelMenu.js +21 -0
  55. package/esm/LinearGenomeView/components/TrackRenderingContainer.js +0 -1
  56. package/esm/LinearGenomeView/components/TracksContainer.js +3 -4
  57. package/esm/LinearGenomeView/components/VerticalGuide.js +32 -7
  58. package/esm/LinearGenomeView/model.d.ts +4 -0
  59. package/esm/LinearGenomeView/model.js +27 -0
  60. package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +2 -2
  61. package/package.json +3 -3
  62. package/dist/BaseLinearDisplay/components/BlockError.d.ts +0 -4
  63. package/esm/BaseLinearDisplay/components/BlockError.d.ts +0 -4
@@ -3,6 +3,7 @@ import { forwardRef } from 'react';
3
3
  import { Paper } from '@mui/material';
4
4
  import { observer } from 'mobx-react';
5
5
  import { makeStyles } from 'tss-react/mui';
6
+ import Gridlines from './Gridlines';
6
7
  import ScalebarCoordinateLabels from './ScalebarCoordinateLabels';
7
8
  import ScalebarRefNameLabels from './ScalebarRefNameLabels';
8
9
  const useStyles = makeStyles()({
@@ -12,7 +13,6 @@ const useStyles = makeStyles()({
12
13
  },
13
14
  zoomContainer: {
14
15
  position: 'relative',
15
- zIndex: 1,
16
16
  },
17
17
  scalebar: {
18
18
  position: 'absolute',
@@ -24,7 +24,7 @@ const Scalebar = observer(forwardRef(function Scalebar2({ model, style, classNam
24
24
  const { classes, cx } = useStyles();
25
25
  const { staticBlocks, offsetPx, scaleFactor } = model;
26
26
  const offsetLeft = staticBlocks.offsetPx - offsetPx;
27
- return (_jsxs(Paper, { "data-resizer": "true", className: cx(classes.container, className), variant: "outlined", ref: ref, style: style, ...other, children: [_jsx("div", { className: classes.zoomContainer, style: {
27
+ return (_jsxs(Paper, { "data-resizer": "true", className: cx(classes.container, className), variant: "outlined", ref: ref, style: style, ...other, children: [_jsx(Gridlines, { model: model, offset: 1 }), _jsx("div", { className: classes.zoomContainer, style: {
28
28
  transform: scaleFactor !== 1 ? `scaleX(${scaleFactor})` : undefined,
29
29
  }, children: _jsx("div", { className: classes.scalebar, style: {
30
30
  left: offsetLeft - 1,
@@ -6,31 +6,36 @@ import { Paper } from '@mui/material';
6
6
  import { observer } from 'mobx-react';
7
7
  import { isAlive } from 'mobx-state-tree';
8
8
  import { makeStyles } from 'tss-react/mui';
9
+ import Gridlines from './Gridlines';
9
10
  import TrackLabelContainer from './TrackLabelContainer';
10
11
  import TrackRenderingContainer from './TrackRenderingContainer';
11
12
  const useStyles = makeStyles()({
12
13
  root: {
13
14
  marginTop: 2,
15
+ overflow: 'hidden',
16
+ position: 'relative',
17
+ },
18
+ unpinnedTrack: {
19
+ background: 'none',
14
20
  },
15
21
  resizeHandle: {
16
22
  height: 3,
17
23
  boxSizing: 'border-box',
18
24
  position: 'relative',
19
- zIndex: 2,
20
25
  },
21
26
  });
22
27
  const TrackContainer = observer(function ({ model, track, }) {
23
- const { classes } = useStyles();
28
+ const { classes, cx } = useStyles();
24
29
  const display = track.displays[0];
25
30
  const { draggingTrackId, showTrackOutlines } = model;
26
31
  const ref = useRef(null);
27
- return (_jsxs(Paper, { ref: ref, className: classes.root, variant: showTrackOutlines ? 'outlined' : undefined, elevation: showTrackOutlines ? undefined : 0, onClick: event => {
32
+ return (_jsxs(Paper, { ref: ref, className: cx(classes.root, track.pinned ? null : classes.unpinnedTrack), variant: showTrackOutlines ? 'outlined' : undefined, elevation: showTrackOutlines ? undefined : 0, onClick: event => {
28
33
  var _a;
29
34
  if (event.detail === 2 && !track.displays[0].featureIdUnderMouse) {
30
35
  const left = ((_a = ref.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().left) || 0;
31
36
  model.zoomTo(model.bpPerPx / 2, event.clientX - left, true);
32
37
  }
33
- }, children: [_jsx(TrackLabelContainer, { track: track, view: model }), _jsx(ErrorBoundary, { FallbackComponent: e => _jsx(ErrorMessage, { error: e.error }), children: _jsx(TrackRenderingContainer, { model: model, track: track, onDragEnter: () => {
38
+ }, children: [track.pinned ? _jsx(Gridlines, { model: model, offset: 1 }) : null, _jsx(TrackLabelContainer, { track: track, view: model }), _jsx(ErrorBoundary, { FallbackComponent: e => _jsx(ErrorMessage, { error: e.error }), children: _jsx(TrackRenderingContainer, { model: model, track: track, onDragEnter: () => {
34
39
  if (isAlive(display) &&
35
40
  draggingTrackId !== undefined &&
36
41
  draggingTrackId !== display.id) {
@@ -29,7 +29,7 @@ const TrackLabel = observer(forwardRef(function TrackLabel2({ track, className }
29
29
  const view = getContainingView(track);
30
30
  const session = getSession(track);
31
31
  const trackConf = track.configuration;
32
- const minimized = track.minimized;
32
+ const { minimized } = track;
33
33
  const trackId = getConf(track, 'trackId');
34
34
  const trackName = getTrackName(trackConf, session);
35
35
  return (_jsxs(Paper, { ref: ref, className: cx(className, classes.root), onClick: event => {
@@ -4,7 +4,7 @@ import { makeStyles } from 'tss-react/mui';
4
4
  import TrackLabel from './TrackLabel';
5
5
  const useStyles = makeStyles()({
6
6
  trackLabel: {
7
- zIndex: 3,
7
+ zIndex: 2,
8
8
  },
9
9
  trackLabelOffset: {
10
10
  position: 'relative',
@@ -8,6 +8,7 @@ import KeyboardDoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrow
8
8
  import KeyboardDoubleArrowUpIcon from '@mui/icons-material/KeyboardDoubleArrowUp';
9
9
  import MinimizeIcon from '@mui/icons-material/Minimize';
10
10
  import MoreVertIcon from '@mui/icons-material/MoreVert';
11
+ import PushPinIcon from '@mui/icons-material/PushPin';
11
12
  import { observer } from 'mobx-react';
12
13
  const TrackLabelMenu = observer(function ({ track, }) {
13
14
  var _a;
@@ -15,7 +16,27 @@ const TrackLabelMenu = observer(function ({ track, }) {
15
16
  const session = getSession(track);
16
17
  const trackConf = track.configuration;
17
18
  const minimized = track.minimized;
19
+ const pinned = track.pinned;
20
+ let lgvHasParentView;
21
+ try {
22
+ getContainingView(view);
23
+ lgvHasParentView = true;
24
+ }
25
+ catch (error) {
26
+ lgvHasParentView = false;
27
+ }
18
28
  const items = [
29
+ ...(lgvHasParentView
30
+ ? []
31
+ : [
32
+ {
33
+ label: pinned ? 'Unpin track' : 'Pin track',
34
+ icon: PushPinIcon,
35
+ onClick: () => {
36
+ track.setPinned(!pinned);
37
+ },
38
+ },
39
+ ]),
19
40
  {
20
41
  label: 'Track order',
21
42
  type: 'subMenu',
@@ -17,7 +17,6 @@ const useStyles = makeStyles()({
17
17
  whiteSpace: 'nowrap',
18
18
  position: 'relative',
19
19
  background: 'none',
20
- zIndex: 2,
21
20
  },
22
21
  });
23
22
  const TrackRenderingContainer = observer(function ({ model, track, onDragEnter, }) {
@@ -18,22 +18,21 @@ const RubberbandSpan = lazy(() => import('./RubberbandSpan'));
18
18
  const useStyles = makeStyles()({
19
19
  tracksContainer: {
20
20
  position: 'relative',
21
- overflow: 'hidden',
22
21
  },
23
22
  });
24
23
  const TracksContainer = observer(function TracksContainer({ children, model, }) {
25
24
  const { classes } = useStyles();
26
25
  const { pluginManager } = getEnv(model);
27
26
  const { mouseDown: mouseDown1, mouseUp } = useSideScroll(model);
28
- const { showGridlines, showCenterLine } = model;
27
+ const { stickyViewHeaders, pinnedTracksTop, showGridlines, showCenterLine } = model;
29
28
  const ref = useRef(null);
30
29
  const { guideX, rubberbandOn, leftBpOffset, rightBpOffset, numOfBpSelected, width, left, anchorPosition, open, handleMenuItemClick, handleClose, mouseMove, mouseDown: mouseDown2, } = useRangeSelect(ref, model, true);
31
30
  useWheelScroll(ref, model);
32
31
  const additional = pluginManager.evaluateExtensionPoint('LinearGenomeView-TracksContainerComponent', undefined, { model });
33
- return (_jsxs("div", { ref: ref, "data-testid": "trackContainer", className: classes.tracksContainer, onMouseDown: event => {
32
+ return (_jsxs("div", { ref: ref, "data-testid": "tracksContainer", className: classes.tracksContainer, onMouseDown: event => {
34
33
  mouseDown1(event);
35
34
  mouseDown2(event);
36
- }, onMouseMove: mouseMove, onMouseUp: mouseUp, children: [showGridlines ? _jsx(Gridlines, { model: model }) : null, _jsx(Suspense, { fallback: null, children: showCenterLine ? _jsx(CenterLine, { model: model }) : null }), guideX !== undefined ? (_jsx(VerticalGuide, { model: model, coordX: guideX })) : rubberbandOn ? (_jsx(Suspense, { fallback: null, children: _jsx(RubberbandSpan, { leftBpOffset: leftBpOffset, rightBpOffset: rightBpOffset, numOfBpSelected: numOfBpSelected, width: width, left: left }) })) : null, anchorPosition ? (_jsx(Menu, { anchorReference: "anchorPosition", anchorPosition: {
35
+ }, onMouseMove: mouseMove, onMouseUp: mouseUp, children: [showGridlines ? _jsx(Gridlines, { model: model }) : null, _jsx(Suspense, { fallback: null, children: showCenterLine ? _jsx(CenterLine, { model: model }) : null }), guideX !== undefined ? (_jsx(VerticalGuide, { model: model, coordX: guideX })) : rubberbandOn ? (_jsx(Suspense, { fallback: null, children: _jsx(RubberbandSpan, { leftBpOffset: leftBpOffset, rightBpOffset: rightBpOffset, numOfBpSelected: numOfBpSelected, width: width, left: left, top: pinnedTracksTop, sticky: stickyViewHeaders }) })) : null, anchorPosition ? (_jsx(Menu, { anchorReference: "anchorPosition", anchorPosition: {
37
36
  left: anchorPosition.clientX,
38
37
  top: anchorPosition.clientY,
39
38
  }, onMenuItemClick: handleMenuItemClick, open: open, onClose: handleClose, menuItems: model.rubberBandMenuItems() })) : null, _jsx(Rubberband, { model: model, ControlComponent: _jsx(Scalebar, { model: model, style: {
@@ -1,22 +1,47 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { stringify } from '@jbrowse/core/util';
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { VIEW_HEADER_HEIGHT } from '@jbrowse/core/ui';
3
+ import { getSession, stringify } from '@jbrowse/core/util';
4
+ import { isSessionWithMultipleViews } from '@jbrowse/product-core';
3
5
  import { Tooltip } from '@mui/material';
4
6
  import { observer } from 'mobx-react';
5
7
  import { makeStyles } from 'tss-react/mui';
8
+ import { HEADER_BAR_HEIGHT, HEADER_OVERVIEW_HEIGHT } from '../consts';
6
9
  const useStyles = makeStyles()({
7
10
  guide: {
8
11
  pointerEvents: 'none',
9
12
  height: '100%',
10
13
  width: 1,
11
14
  position: 'absolute',
12
- zIndex: 10,
15
+ background: 'red',
16
+ zIndex: 4,
17
+ },
18
+ tooltipTarget: {
19
+ position: 'sticky',
20
+ width: 1,
13
21
  },
14
22
  });
15
23
  const VerticalGuide = observer(function VerticalGuide({ model, coordX, }) {
16
24
  const { classes } = useStyles();
17
- return (_jsx(Tooltip, { open: true, placement: "top", title: stringify(model.pxToBp(coordX)), arrow: true, children: _jsx("div", { className: classes.guide, style: {
18
- left: coordX,
19
- background: 'red',
20
- } }) }));
25
+ const session = getSession(model);
26
+ let stickyViewHeaders = false;
27
+ if (isSessionWithMultipleViews(session)) {
28
+ ;
29
+ ({ stickyViewHeaders } = session);
30
+ }
31
+ let tooltipTop = 0;
32
+ if (stickyViewHeaders) {
33
+ tooltipTop = VIEW_HEADER_HEIGHT;
34
+ if (!model.hideHeader) {
35
+ tooltipTop += HEADER_BAR_HEIGHT;
36
+ if (!model.hideHeaderOverview) {
37
+ tooltipTop += HEADER_OVERVIEW_HEIGHT;
38
+ }
39
+ }
40
+ }
41
+ return (_jsxs(_Fragment, { children: [_jsx(Tooltip, { open: true, placement: "top", title: stringify(model.pxToBp(coordX)), arrow: true, children: _jsx("div", { className: classes.tooltipTarget, style: {
42
+ left: coordX + 6,
43
+ top: tooltipTop,
44
+ position: stickyViewHeaders ? 'sticky' : undefined,
45
+ } }) }), _jsx("div", { className: classes.guide, style: { left: coordX } })] }));
21
46
  });
22
47
  export default VerticalGuide;
@@ -51,10 +51,14 @@ export declare function stateModelFactory(pluginManager: PluginManager): import(
51
51
  leftOffset: undefined | BpOffset;
52
52
  rightOffset: undefined | BpOffset;
53
53
  } & {
54
+ readonly pinnedTracks: any[];
55
+ readonly unpinnedTracks: any[];
54
56
  readonly trackLabelsSetting: any;
55
57
  readonly width: number;
56
58
  readonly interRegionPaddingWidth: number;
57
59
  readonly assemblyNames: string[];
60
+ readonly stickyViewHeaders: boolean;
61
+ readonly pinnedTracksTop: number;
58
62
  } & {
59
63
  scaleBarDisplayPrefix(): string | undefined;
60
64
  MiniControlsComponent(): React.FC<any>;
@@ -1,6 +1,7 @@
1
1
  import { lazy } from 'react';
2
2
  import { getConf } from '@jbrowse/core/configuration';
3
3
  import { BaseViewModel } from '@jbrowse/core/pluggableElementTypes/models';
4
+ import { VIEW_HEADER_HEIGHT } from '@jbrowse/core/ui';
4
5
  import { TrackSelector as TrackSelectorIcon } from '@jbrowse/core/ui/Icons';
5
6
  import { assembleLocString, clamp, findLast, getSession, isSessionModelWithWidgets, isSessionWithAddTracks, localStorageGetBoolean, localStorageGetItem, localStorageSetItem, measureText, springAnimate, sum, } from '@jbrowse/core/util';
6
7
  import { bpToPx, moveTo, pxToBp } from '@jbrowse/core/util/Base1DUtils';
@@ -9,6 +10,7 @@ import calculateDynamicBlocks from '@jbrowse/core/util/calculateDynamicBlocks';
9
10
  import calculateStaticBlocks from '@jbrowse/core/util/calculateStaticBlocks';
10
11
  import { getParentRenderProps } from '@jbrowse/core/util/tracks';
11
12
  import { ElementId } from '@jbrowse/core/util/types/mst';
13
+ import { isSessionWithMultipleViews } from '@jbrowse/product-core';
12
14
  import FolderOpenIcon from '@mui/icons-material/FolderOpen';
13
15
  import LabelIcon from '@mui/icons-material/Label';
14
16
  import MenuOpenIcon from '@mui/icons-material/MenuOpen';
@@ -66,6 +68,12 @@ export function stateModelFactory(pluginManager) {
66
68
  rightOffset: undefined,
67
69
  }))
68
70
  .views(self => ({
71
+ get pinnedTracks() {
72
+ return self.tracks.filter(t => t.pinned);
73
+ },
74
+ get unpinnedTracks() {
75
+ return self.tracks.filter(t => !t.pinned);
76
+ },
69
77
  get trackLabelsSetting() {
70
78
  const sessionSetting = getConf(getSession(self), [
71
79
  'LinearGenomeViewPlugin',
@@ -87,6 +95,25 @@ export function stateModelFactory(pluginManager) {
87
95
  ...new Set(self.displayedRegions.map(region => region.assemblyName)),
88
96
  ];
89
97
  },
98
+ get stickyViewHeaders() {
99
+ const session = getSession(self);
100
+ return isSessionWithMultipleViews(session)
101
+ ? session.stickyViewHeaders
102
+ : false;
103
+ },
104
+ get pinnedTracksTop() {
105
+ let pinnedTracksTop = 0;
106
+ if (this.stickyViewHeaders) {
107
+ pinnedTracksTop = VIEW_HEADER_HEIGHT + SCALE_BAR_HEIGHT;
108
+ if (!self.hideHeader) {
109
+ pinnedTracksTop += HEADER_BAR_HEIGHT;
110
+ if (!self.hideHeaderOverview) {
111
+ pinnedTracksTop += HEADER_OVERVIEW_HEIGHT;
112
+ }
113
+ }
114
+ }
115
+ return pinnedTracksTop;
116
+ },
90
117
  }))
91
118
  .views(self => ({
92
119
  scaleBarDisplayPrefix() {
@@ -14,12 +14,12 @@ export async function renderToSvg(model, opts) {
14
14
  const session = getSession(model);
15
15
  const { allThemes } = session;
16
16
  const theme = allThemes === null || allThemes === void 0 ? void 0 : allThemes()[themeName];
17
- const { width, tracks, showCytobands } = model;
17
+ const { width, pinnedTracks, unpinnedTracks, tracks, showCytobands } = model;
18
18
  const shift = 50;
19
19
  const c = +showCytobands * cytobandHeight;
20
20
  const offset = headerHeight + rulerHeight + c + 10;
21
21
  const height = totalHeight(tracks, textHeight, trackLabels) + offset + 100;
22
- const displayResults = await Promise.all(tracks.map(async (track) => {
22
+ const displayResults = await Promise.all([...pinnedTracks, ...unpinnedTracks].map(async (track) => {
23
23
  const display = track.displays[0];
24
24
  await when(() => !display.renderProps().notReady);
25
25
  return { track, result: await display.renderSvg({ ...opts, theme }) };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jbrowse/plugin-linear-genome-view",
3
- "version": "3.0.5",
3
+ "version": "3.1.0",
4
4
  "description": "JBrowse 2 linear genome view",
5
5
  "keywords": [
6
6
  "jbrowse",
@@ -38,7 +38,7 @@
38
38
  "useSrc": "node ../../scripts/useSrc.js"
39
39
  },
40
40
  "dependencies": {
41
- "@jbrowse/core": "^3.0.5",
41
+ "@jbrowse/core": "^3.1.0",
42
42
  "@mui/icons-material": "^6.0.0",
43
43
  "@mui/material": "^6.0.0",
44
44
  "@types/file-saver": "^2.0.1",
@@ -58,5 +58,5 @@
58
58
  "access": "public"
59
59
  },
60
60
  "module": "esm/index.js",
61
- "gitHead": "a03749efe19e51609922272b845a331897346789"
61
+ "gitHead": "91492049ddea0aed90eb24d3c066c2d9f5a6b189"
62
62
  }
@@ -1,4 +0,0 @@
1
- declare const BlockError: ({ model }: {
2
- model: any;
3
- }) => import("react/jsx-runtime").JSX.Element;
4
- export default BlockError;
@@ -1,4 +0,0 @@
1
- declare const BlockError: ({ model }: {
2
- model: any;
3
- }) => import("react/jsx-runtime").JSX.Element;
4
- export default BlockError;