@jbrowse/plugin-circular-view 3.7.0 → 4.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/CircularView/components/CircularView.d.ts +2 -2
- package/esm/CircularView/components/CircularView.js +21 -15
- package/esm/CircularView/components/Controls.d.ts +2 -2
- package/esm/CircularView/components/Controls.js +3 -3
- package/esm/CircularView/components/ExportSvgDialog.d.ts +1 -1
- package/esm/CircularView/components/ImportForm.d.ts +2 -2
- package/esm/CircularView/components/ImportForm.js +4 -4
- package/esm/CircularView/components/Ruler.d.ts +2 -2
- package/esm/CircularView/components/Ruler.js +7 -7
- package/esm/CircularView/index.js +2 -2
- package/esm/CircularView/model.d.ts +73 -34
- package/esm/CircularView/model.js +146 -54
- package/esm/CircularView/slices.js +9 -1
- package/esm/CircularView/svgcomponents/SVGCircularView.d.ts +1 -1
- package/esm/CircularView/svgcomponents/SVGCircularView.js +3 -4
- package/esm/LaunchCircularView/index.js +6 -12
- package/esm/index.d.ts +1 -2
- package/esm/index.js +4 -7
- package/package.json +26 -32
- package/dist/BaseChordDisplay/components/BaseChordDisplay.d.ts +0 -11
- package/dist/BaseChordDisplay/components/BaseChordDisplay.js +0 -21
- package/dist/BaseChordDisplay/components/DisplayError.d.ts +0 -9
- package/dist/BaseChordDisplay/components/DisplayError.js +0 -9
- package/dist/BaseChordDisplay/components/Loading.d.ts +0 -8
- package/dist/BaseChordDisplay/components/Loading.js +0 -62
- package/dist/BaseChordDisplay/configSchema.d.ts +0 -9
- package/dist/BaseChordDisplay/configSchema.js +0 -16
- package/dist/BaseChordDisplay/index.d.ts +0 -3
- package/dist/BaseChordDisplay/index.js +0 -12
- package/dist/BaseChordDisplay/model.d.ts +0 -109
- package/dist/BaseChordDisplay/model.js +0 -166
- package/dist/BaseChordDisplay/renderReaction.d.ts +0 -27
- package/dist/BaseChordDisplay/renderReaction.js +0 -50
- package/dist/CircularView/components/CircularView.d.ts +0 -5
- package/dist/CircularView/components/CircularView.js +0 -60
- package/dist/CircularView/components/Controls.d.ts +0 -5
- package/dist/CircularView/components/Controls.js +0 -57
- package/dist/CircularView/components/ExportSvgDialog.d.ts +0 -7
- package/dist/CircularView/components/ExportSvgDialog.js +0 -53
- package/dist/CircularView/components/ImportForm.d.ts +0 -5
- package/dist/CircularView/components/ImportForm.js +0 -35
- package/dist/CircularView/components/Ruler.d.ts +0 -7
- package/dist/CircularView/components/Ruler.js +0 -106
- package/dist/CircularView/index.d.ts +0 -2
- package/dist/CircularView/index.js +0 -50
- package/dist/CircularView/model.d.ts +0 -107
- package/dist/CircularView/model.js +0 -376
- package/dist/CircularView/slices.d.ts +0 -45
- package/dist/CircularView/slices.js +0 -57
- package/dist/CircularView/svgcomponents/SVGBackground.d.ts +0 -5
- package/dist/CircularView/svgcomponents/SVGBackground.js +0 -10
- package/dist/CircularView/svgcomponents/SVGCircularView.d.ts +0 -4
- package/dist/CircularView/svgcomponents/SVGCircularView.js +0 -31
- package/dist/CircularView/viewportVisibleRegion.d.ts +0 -6
- package/dist/CircularView/viewportVisibleRegion.js +0 -153
- package/dist/LaunchCircularView/index.d.ts +0 -2
- package/dist/LaunchCircularView/index.js +0 -22
- package/dist/index.d.ts +0 -9
- package/dist/index.js +0 -37
- package/esm/BaseChordDisplay/components/BaseChordDisplay.d.ts +0 -11
- package/esm/BaseChordDisplay/components/BaseChordDisplay.js +0 -16
- package/esm/BaseChordDisplay/components/DisplayError.d.ts +0 -9
- package/esm/BaseChordDisplay/components/DisplayError.js +0 -7
- package/esm/BaseChordDisplay/components/Loading.d.ts +0 -8
- package/esm/BaseChordDisplay/components/Loading.js +0 -60
- package/esm/BaseChordDisplay/configSchema.d.ts +0 -9
- package/esm/BaseChordDisplay/configSchema.js +0 -13
- package/esm/BaseChordDisplay/index.d.ts +0 -3
- package/esm/BaseChordDisplay/index.js +0 -3
- package/esm/BaseChordDisplay/model.d.ts +0 -109
- package/esm/BaseChordDisplay/model.js +0 -163
- package/esm/BaseChordDisplay/renderReaction.d.ts +0 -27
- package/esm/BaseChordDisplay/renderReaction.js +0 -46
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { CircularViewModel } from '../model';
|
|
2
|
-
declare const CircularView: ({ model }: {
|
|
1
|
+
import type { CircularViewModel } from '../model.ts';
|
|
2
|
+
declare const CircularView: ({ model, }: {
|
|
3
3
|
model: CircularViewModel;
|
|
4
4
|
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
5
5
|
export default CircularView;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ResizeHandle } from '@jbrowse/core/ui';
|
|
2
|
+
import { LoadingEllipses, ResizeHandle } from '@jbrowse/core/ui';
|
|
3
3
|
import { assembleLocString } from '@jbrowse/core/util';
|
|
4
|
+
import { makeStyles } from '@jbrowse/core/util/tss-react';
|
|
4
5
|
import { observer } from 'mobx-react';
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import Ruler from './Ruler';
|
|
6
|
+
import Controls from "./Controls.js";
|
|
7
|
+
import ImportForm from "./ImportForm.js";
|
|
8
|
+
import Ruler from "./Ruler.js";
|
|
9
9
|
const dragHandleHeight = 3;
|
|
10
10
|
const useStyles = makeStyles()(theme => ({
|
|
11
11
|
root: {
|
|
@@ -17,22 +17,28 @@ const useStyles = makeStyles()(theme => ({
|
|
|
17
17
|
overflow: 'auto',
|
|
18
18
|
},
|
|
19
19
|
}));
|
|
20
|
-
const Slices = observer(({ model })
|
|
20
|
+
const Slices = observer(function Slices({ model, }) {
|
|
21
21
|
return (_jsxs(_Fragment, { children: [model.staticSlices.map(slice => (_jsx(Ruler, { model: model, slice: slice }, assembleLocString(slice.region.elided ? slice.region.regions[0] : slice.region)))), model.tracks.map(track => {
|
|
22
22
|
const display = track.displays[0];
|
|
23
23
|
return (_jsx(display.RenderingComponent, { display: display, view: model }, display.id));
|
|
24
24
|
})] }));
|
|
25
25
|
});
|
|
26
|
-
const CircularView = observer(({ model })
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
26
|
+
const CircularView = observer(function CircularView({ model, }) {
|
|
27
|
+
const { showLoading, showView, showImportForm, loadingMessage } = model;
|
|
28
|
+
if (showLoading) {
|
|
29
|
+
return _jsx(LoadingEllipses, { variant: "h6", message: loadingMessage });
|
|
30
|
+
}
|
|
31
|
+
else if (showImportForm) {
|
|
32
|
+
return _jsx(ImportForm, { model: model });
|
|
33
|
+
}
|
|
34
|
+
else if (showView) {
|
|
35
|
+
return _jsx(CircularViewLoaded, { model: model });
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
34
40
|
});
|
|
35
|
-
const CircularViewLoaded = observer(function ({ model, }) {
|
|
41
|
+
const CircularViewLoaded = observer(function CircularViewLoaded({ model, }) {
|
|
36
42
|
const { width, height, id, offsetRadians, centerXY, figureWidth, figureHeight, hideVerticalResizeHandle, } = model;
|
|
37
43
|
const { classes } = useStyles();
|
|
38
44
|
return (_jsxs("div", { className: classes.root, style: { width, height }, "data-testid": id, children: [_jsx("div", { className: classes.scroller, style: { width, height }, children: _jsx("svg", { style: {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { CircularViewModel } from '../model';
|
|
2
|
-
declare const Controls: ({ model }: {
|
|
1
|
+
import type { CircularViewModel } from '../model.ts';
|
|
2
|
+
declare const Controls: ({ model, }: {
|
|
3
3
|
model: CircularViewModel;
|
|
4
4
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
export default Controls;
|
|
@@ -3,6 +3,7 @@ import { useState } from 'react';
|
|
|
3
3
|
import { TrackSelector as TrackSelectorIcon } from '@jbrowse/core/ui/Icons';
|
|
4
4
|
import JBrowseMenu from '@jbrowse/core/ui/Menu';
|
|
5
5
|
import { getSession } from '@jbrowse/core/util';
|
|
6
|
+
import { makeStyles } from '@jbrowse/core/util/tss-react';
|
|
6
7
|
import LockIcon from '@mui/icons-material/Lock';
|
|
7
8
|
import LockOpenIcon from '@mui/icons-material/LockOpen';
|
|
8
9
|
import MoreVert from '@mui/icons-material/MoreVert';
|
|
@@ -13,8 +14,7 @@ import ZoomInIcon from '@mui/icons-material/ZoomIn';
|
|
|
13
14
|
import ZoomOutIcon from '@mui/icons-material/ZoomOut';
|
|
14
15
|
import { IconButton } from '@mui/material';
|
|
15
16
|
import { observer } from 'mobx-react';
|
|
16
|
-
import
|
|
17
|
-
import ExportSvgDialog from './ExportSvgDialog';
|
|
17
|
+
import ExportSvgDialog from "./ExportSvgDialog.js";
|
|
18
18
|
const useStyles = makeStyles()(theme => ({
|
|
19
19
|
controls: {
|
|
20
20
|
position: 'absolute',
|
|
@@ -24,7 +24,7 @@ const useStyles = makeStyles()(theme => ({
|
|
|
24
24
|
top: 0,
|
|
25
25
|
},
|
|
26
26
|
}));
|
|
27
|
-
const Controls = observer(function ({ model }) {
|
|
27
|
+
const Controls = observer(function Controls({ model, }) {
|
|
28
28
|
const { classes } = useStyles();
|
|
29
29
|
const [anchorEl, setAnchorEl] = useState(null);
|
|
30
30
|
return (_jsxs("div", { className: classes.controls, children: [_jsx(IconButton, { onClick: model.zoomOutButton, title: model.lockedFitToWindow ? 'unlock to zoom out' : 'zoom out', disabled: model.atMaxBpPerPx || model.lockedFitToWindow, children: _jsx(ZoomOutIcon, {}) }), _jsx(IconButton, { onClick: model.zoomInButton, disabled: model.atMinBpPerPx, title: "zoom in", children: _jsx(ZoomInIcon, {}) }), _jsx(IconButton, { onClick: model.rotateCounterClockwiseButton, title: "rotate counter-clockwise", children: _jsx(RotateLeftIcon, {}) }), _jsx(IconButton, { onClick: model.rotateClockwiseButton, title: "rotate clockwise", children: _jsx(RotateRightIcon, {}) }), _jsx(IconButton, { onClick: model.toggleFitToWindowLock, title: model.lockedFitToWindow
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { CircularViewModel } from '../model';
|
|
2
|
-
declare const ImportForm: ({ model }: {
|
|
1
|
+
import type { CircularViewModel } from '../model.ts';
|
|
2
|
+
declare const ImportForm: ({ model, }: {
|
|
3
3
|
model: CircularViewModel;
|
|
4
4
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
export default ImportForm;
|
|
@@ -2,15 +2,15 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import { AssemblySelector, ErrorMessage } from '@jbrowse/core/ui';
|
|
4
4
|
import { getSession } from '@jbrowse/core/util';
|
|
5
|
+
import { makeStyles } from '@jbrowse/core/util/tss-react';
|
|
5
6
|
import { Button, Container, Grid } from '@mui/material';
|
|
6
7
|
import { observer } from 'mobx-react';
|
|
7
|
-
import { makeStyles } from 'tss-react/mui';
|
|
8
8
|
const useStyles = makeStyles()(theme => ({
|
|
9
9
|
importFormContainer: {
|
|
10
10
|
padding: theme.spacing(6),
|
|
11
11
|
},
|
|
12
12
|
}));
|
|
13
|
-
const ImportForm = observer(function ({ model }) {
|
|
13
|
+
const ImportForm = observer(function ImportForm({ model, }) {
|
|
14
14
|
const { classes } = useStyles();
|
|
15
15
|
const session = getSession(model);
|
|
16
16
|
const { error } = model;
|
|
@@ -18,9 +18,9 @@ const ImportForm = observer(function ({ model }) {
|
|
|
18
18
|
const [selectedAsm, setSelectedAsm] = useState(assemblyNames[0]);
|
|
19
19
|
const assembly = assemblyManager.get(selectedAsm);
|
|
20
20
|
const assemblyError = assemblyNames.length
|
|
21
|
-
? assembly
|
|
21
|
+
? assembly?.error
|
|
22
22
|
: 'No configured assemblies';
|
|
23
|
-
const regions =
|
|
23
|
+
const regions = assembly?.regions || [];
|
|
24
24
|
const err = assemblyError || error;
|
|
25
25
|
return (_jsxs(Container, { className: classes.importFormContainer, children: [err ? (_jsx(Grid, { container: true, spacing: 1, justifyContent: "center", alignItems: "center", children: _jsx(ErrorMessage, { error: err }) })) : null, _jsxs(Grid, { container: true, spacing: 1, justifyContent: "center", alignItems: "center", children: [_jsx(AssemblySelector, { onChange: val => {
|
|
26
26
|
model.setError(undefined);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { CircularViewModel } from '../model';
|
|
2
|
-
import type { Slice } from '../slices';
|
|
1
|
+
import type { CircularViewModel } from '../model.ts';
|
|
2
|
+
import type { Slice } from '../slices.ts';
|
|
3
3
|
declare const Ruler: ({ model, slice, }: {
|
|
4
4
|
model: CircularViewModel;
|
|
5
5
|
slice: Slice;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { assembleLocString, getFillProps, getSession, getStrokeProps, polarToCartesian, radToDeg, } from '@jbrowse/core/util';
|
|
2
|
+
import { assembleLocString, getFillProps, getSession, getStrokeProps, polarToCartesian, radToDeg, toLocale, } from '@jbrowse/core/util';
|
|
3
3
|
import { makeContrasting } from '@jbrowse/core/util/color';
|
|
4
|
+
import { makeStyles } from '@jbrowse/core/util/tss-react';
|
|
4
5
|
import { useTheme } from '@mui/material/styles';
|
|
5
6
|
import { observer } from 'mobx-react';
|
|
6
|
-
import { makeStyles } from 'tss-react/mui';
|
|
7
7
|
const useStyles = makeStyles()({
|
|
8
8
|
rulerLabel: {
|
|
9
9
|
fontSize: '0.8rem',
|
|
@@ -33,7 +33,7 @@ function sliceArcPath(slice, radiusPx, startBase, endBase) {
|
|
|
33
33
|
...endXY,
|
|
34
34
|
].join(' ');
|
|
35
35
|
}
|
|
36
|
-
const ElisionRulerArc = observer(function ({ model, slice, region, }) {
|
|
36
|
+
const ElisionRulerArc = observer(function ElisionRulerArc({ model, slice, region, }) {
|
|
37
37
|
const theme = useTheme();
|
|
38
38
|
const { radiusPx: modelRadiusPx } = model;
|
|
39
39
|
const radiusPx = modelRadiusPx + 1;
|
|
@@ -43,7 +43,7 @@ const ElisionRulerArc = observer(function ({ model, slice, region, }) {
|
|
|
43
43
|
const widthPx = (endRadians - startRadians) * radiusPx;
|
|
44
44
|
const largeArc = endRadians - startRadians > Math.PI ? '1' : '0';
|
|
45
45
|
const centerRadians = (endRadians + startRadians) / 2;
|
|
46
|
-
const regionCount = `[${region.regions.length
|
|
46
|
+
const regionCount = `[${toLocale(region.regions.length)}]`;
|
|
47
47
|
return (_jsxs(_Fragment, { children: [_jsx(RulerLabel, { text: regionCount, view: model, maxWidthPx: widthPx, radians: centerRadians, radiusPx: radiusPx, title: `${regionCount} more regions`, color: theme.palette.text.primary }), _jsx("path", { d: [
|
|
48
48
|
'M',
|
|
49
49
|
...startXY,
|
|
@@ -56,7 +56,7 @@ const ElisionRulerArc = observer(function ({ model, slice, region, }) {
|
|
|
56
56
|
...endXY,
|
|
57
57
|
].join(' '), ...getStrokeProps(theme.palette.text.secondary), strokeWidth: 2, strokeDasharray: "2,2", fill: "none" })] }));
|
|
58
58
|
});
|
|
59
|
-
const RulerLabel = observer(function ({ view, text, maxWidthPx, radians, radiusPx, title, color, }) {
|
|
59
|
+
const RulerLabel = observer(function RulerLabel({ view, text, maxWidthPx, radians, radiusPx, title, color, }) {
|
|
60
60
|
const { classes } = useStyles();
|
|
61
61
|
const textXY = polarToCartesian(radiusPx + 5, radians);
|
|
62
62
|
if (!text) {
|
|
@@ -76,7 +76,7 @@ const RulerLabel = observer(function ({ view, text, maxWidthPx, radians, radiusP
|
|
|
76
76
|
return null;
|
|
77
77
|
}
|
|
78
78
|
});
|
|
79
|
-
const RegionRulerArc = observer(function ({ model, slice, region, }) {
|
|
79
|
+
const RegionRulerArc = observer(function RegionRulerArc({ model, slice, region, }) {
|
|
80
80
|
const theme = useTheme();
|
|
81
81
|
const { radiusPx } = model;
|
|
82
82
|
const { endRadians, startRadians } = slice;
|
|
@@ -98,7 +98,7 @@ const RegionRulerArc = observer(function ({ model, slice, region, }) {
|
|
|
98
98
|
}
|
|
99
99
|
return (_jsxs(_Fragment, { children: [_jsx(RulerLabel, { text: region.refName, view: model, maxWidthPx: widthPx, radians: centerRadians, radiusPx: radiusPx, color: color }), _jsx("path", { d: sliceArcPath(slice, radiusPx + 1, region.start, region.end), stroke: color, strokeWidth: 2, fill: "none" })] }));
|
|
100
100
|
});
|
|
101
|
-
const Ruler = observer(function ({ model, slice, }) {
|
|
101
|
+
const Ruler = observer(function Ruler({ model, slice, }) {
|
|
102
102
|
return slice.region.elided ? (_jsx(ElisionRulerArc, { model: model, region: slice.region, slice: slice }, assembleLocString(slice.region.regions[0]))) : (_jsx(RegionRulerArc, { region: slice.region, model: model, slice: slice }, assembleLocString(slice.region)));
|
|
103
103
|
});
|
|
104
104
|
export default Ruler;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { lazy } from 'react';
|
|
2
2
|
import ViewType from '@jbrowse/core/pluggableElementTypes/ViewType';
|
|
3
|
-
import stateModelFactory from
|
|
3
|
+
import stateModelFactory from "./model.js";
|
|
4
4
|
export default function CircularViewF(pluginManager) {
|
|
5
5
|
pluginManager.addViewType(() => new ViewType({
|
|
6
|
-
ReactComponent: lazy(() => import(
|
|
6
|
+
ReactComponent: lazy(() => import("./components/CircularView.js")),
|
|
7
7
|
stateModel: stateModelFactory(pluginManager),
|
|
8
8
|
name: 'CircularView',
|
|
9
9
|
displayName: 'Circular view',
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
|
-
import type { SliceRegion } from './slices';
|
|
2
|
+
import type { SliceRegion } from './slices.ts';
|
|
3
3
|
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
4
4
|
import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
5
5
|
import type { MenuItem } from '@jbrowse/core/ui';
|
|
6
|
-
import type { Region
|
|
7
|
-
import type {
|
|
8
|
-
|
|
6
|
+
import type { Region } from '@jbrowse/core/util/types';
|
|
7
|
+
import type { Instance } from '@jbrowse/mobx-state-tree';
|
|
8
|
+
export interface CircularViewInit {
|
|
9
|
+
assembly: string;
|
|
10
|
+
tracks?: string[];
|
|
11
|
+
}
|
|
9
12
|
export interface ExportSvgOptions {
|
|
10
13
|
rasterizeLayers?: boolean;
|
|
11
14
|
filename?: string;
|
|
@@ -14,30 +17,31 @@ export interface ExportSvgOptions {
|
|
|
14
17
|
}>;
|
|
15
18
|
themeName?: string;
|
|
16
19
|
}
|
|
17
|
-
declare function stateModelFactory(pluginManager: PluginManager): import("mobx-state-tree").IModelType<{
|
|
18
|
-
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
19
|
-
displayName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
20
|
-
minimized: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
20
|
+
declare function stateModelFactory(pluginManager: PluginManager): import("@jbrowse/mobx-state-tree").IModelType<{
|
|
21
|
+
id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
22
|
+
displayName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
23
|
+
minimized: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
21
24
|
} & {
|
|
22
|
-
type: import("mobx-state-tree").ISimpleType<"CircularView">;
|
|
23
|
-
offsetRadians: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
24
|
-
bpPerPx: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
25
|
-
tracks: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyType>;
|
|
26
|
-
hideVerticalResizeHandle: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
27
|
-
hideTrackSelectorButton: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
28
|
-
lockedFitToWindow: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
29
|
-
disableImportForm: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
30
|
-
height: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
31
|
-
displayedRegions: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IType<
|
|
32
|
-
scrollX: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
33
|
-
scrollY: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
34
|
-
minimumRadiusPx: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
35
|
-
spacingPx: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
36
|
-
paddingPx: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
37
|
-
lockedPaddingPx: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
38
|
-
minVisibleWidth: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
39
|
-
minimumBlockWidth: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
40
|
-
trackSelectorType: import("mobx-state-tree").IType<string | undefined, string, string>;
|
|
25
|
+
type: import("@jbrowse/mobx-state-tree").ISimpleType<"CircularView">;
|
|
26
|
+
offsetRadians: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
27
|
+
bpPerPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
28
|
+
tracks: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IAnyType>;
|
|
29
|
+
hideVerticalResizeHandle: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
30
|
+
hideTrackSelectorButton: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
31
|
+
lockedFitToWindow: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
32
|
+
disableImportForm: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
33
|
+
height: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
34
|
+
displayedRegions: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IType<Region[], Region[], Region[]>, [undefined]>;
|
|
35
|
+
scrollX: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
36
|
+
scrollY: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
37
|
+
minimumRadiusPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
38
|
+
spacingPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
39
|
+
paddingPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
40
|
+
lockedPaddingPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
41
|
+
minVisibleWidth: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
42
|
+
minimumBlockWidth: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
43
|
+
trackSelectorType: import("@jbrowse/mobx-state-tree").IType<string | undefined, string, string>;
|
|
44
|
+
init: import("@jbrowse/mobx-state-tree").IType<CircularViewInit | undefined, CircularViewInit | undefined, CircularViewInit | undefined>;
|
|
41
45
|
}, {
|
|
42
46
|
width: number;
|
|
43
47
|
} & {
|
|
@@ -48,7 +52,7 @@ declare function stateModelFactory(pluginManager: PluginManager): import("mobx-s
|
|
|
48
52
|
setMinimized(flag: boolean): void;
|
|
49
53
|
} & {
|
|
50
54
|
volatileWidth: number | undefined;
|
|
51
|
-
|
|
55
|
+
volatileError: unknown;
|
|
52
56
|
} & {
|
|
53
57
|
readonly width: number;
|
|
54
58
|
readonly visibleSection: {
|
|
@@ -73,10 +77,17 @@ declare function stateModelFactory(pluginManager: PluginManager): import("mobx-s
|
|
|
73
77
|
readonly elidedRegions: SliceRegion[];
|
|
74
78
|
readonly assemblyNames: string[];
|
|
75
79
|
readonly initialized: boolean;
|
|
80
|
+
readonly assemblyErrors: string;
|
|
81
|
+
readonly error: unknown;
|
|
82
|
+
readonly loadingMessage: "Loading" | undefined;
|
|
83
|
+
readonly hasSomethingToShow: boolean;
|
|
84
|
+
readonly showLoading: boolean;
|
|
85
|
+
readonly showView: boolean;
|
|
86
|
+
readonly showImportForm: boolean;
|
|
76
87
|
} & {
|
|
77
|
-
readonly staticSlices: import("./slices").Slice[];
|
|
88
|
+
readonly staticSlices: import("./slices.ts").Slice[];
|
|
78
89
|
} & {
|
|
79
|
-
readonly visibleStaticSlices: import("./slices").Slice[];
|
|
90
|
+
readonly visibleStaticSlices: import("./slices.ts").Slice[];
|
|
80
91
|
} & {
|
|
81
92
|
setWidth(newWidth: number): number;
|
|
82
93
|
setHeight(newHeight: number): number;
|
|
@@ -90,18 +101,46 @@ declare function stateModelFactory(pluginManager: PluginManager): import("mobx-s
|
|
|
90
101
|
zoomOutButton(): void;
|
|
91
102
|
setBpPerPx(newVal: number): void;
|
|
92
103
|
setModelViewWhenAdjust(secondCondition: boolean): void;
|
|
93
|
-
setDisplayedRegions(regions:
|
|
104
|
+
setDisplayedRegions(regions: Region[]): void;
|
|
94
105
|
activateTrackSelector(): import("@jbrowse/core/util").Widget;
|
|
95
|
-
toggleTrack(trackId: string):
|
|
106
|
+
toggleTrack(trackId: string): void;
|
|
96
107
|
setError(error: unknown): void;
|
|
108
|
+
setInit(init?: CircularViewInit): void;
|
|
97
109
|
showTrack(trackId: string, initialSnapshot?: {}): void;
|
|
98
110
|
addTrackConf(configuration: AnyConfigurationModel, initialSnapshot?: {}): void;
|
|
99
|
-
hideTrack(trackId: string):
|
|
111
|
+
hideTrack(trackId: string): void;
|
|
100
112
|
toggleFitToWindowLock(): boolean;
|
|
101
113
|
exportSvg(opts?: ExportSvgOptions): Promise<void>;
|
|
114
|
+
} & {
|
|
115
|
+
afterAttach(): void;
|
|
102
116
|
} & {
|
|
103
117
|
menuItems(): MenuItem[];
|
|
104
|
-
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree").
|
|
118
|
+
}, import("@jbrowse/mobx-state-tree")._NotCustomized, import("@jbrowse/mobx-state-tree").ModelSnapshotType<{
|
|
119
|
+
id: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
120
|
+
displayName: import("@jbrowse/mobx-state-tree").IMaybe<import("@jbrowse/mobx-state-tree").ISimpleType<string>>;
|
|
121
|
+
minimized: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
122
|
+
} & {
|
|
123
|
+
type: import("@jbrowse/mobx-state-tree").ISimpleType<"CircularView">;
|
|
124
|
+
offsetRadians: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
125
|
+
bpPerPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
126
|
+
tracks: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IAnyType>;
|
|
127
|
+
hideVerticalResizeHandle: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
128
|
+
hideTrackSelectorButton: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
129
|
+
lockedFitToWindow: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
130
|
+
disableImportForm: import("@jbrowse/mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
131
|
+
height: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").ISimpleType<number>, [undefined]>;
|
|
132
|
+
displayedRegions: import("@jbrowse/mobx-state-tree").IOptionalIType<import("@jbrowse/mobx-state-tree").IType<Region[], Region[], Region[]>, [undefined]>;
|
|
133
|
+
scrollX: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
134
|
+
scrollY: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
135
|
+
minimumRadiusPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
136
|
+
spacingPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
137
|
+
paddingPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
138
|
+
lockedPaddingPx: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
139
|
+
minVisibleWidth: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
140
|
+
minimumBlockWidth: import("@jbrowse/mobx-state-tree").IType<number | undefined, number, number>;
|
|
141
|
+
trackSelectorType: import("@jbrowse/mobx-state-tree").IType<string | undefined, string, string>;
|
|
142
|
+
init: import("@jbrowse/mobx-state-tree").IType<CircularViewInit | undefined, CircularViewInit | undefined, CircularViewInit | undefined>;
|
|
143
|
+
}>>;
|
|
105
144
|
export type CircularViewStateModel = ReturnType<typeof stateModelFactory>;
|
|
106
145
|
export type CircularViewModel = Instance<CircularViewStateModel>;
|
|
107
146
|
export default stateModelFactory;
|