@jbrowse/plugin-linear-genome-view 2.8.0 → 2.10.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.
- package/dist/BaseLinearDisplay/components/Tooltip.js +18 -50
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +4 -16
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js +8 -1
- package/dist/BasicTrack/configSchema.d.ts +5 -0
- package/dist/FeatureTrack/configSchema.d.ts +5 -0
- package/dist/LaunchLinearGenomeView/index.js +16 -14
- package/dist/LinearBareDisplay/model.d.ts +8 -11
- package/dist/LinearBareDisplay/model.js +2 -1
- package/dist/LinearBasicDisplay/model.d.ts +30 -33
- package/dist/LinearBasicDisplay/model.js +3 -0
- package/dist/LinearGenomeView/components/CenterLine.js +1 -1
- package/dist/LinearGenomeView/components/Cytobands.d.ts +18 -6
- package/dist/LinearGenomeView/components/Cytobands.js +8 -2
- package/dist/LinearGenomeView/components/ImportForm.js +26 -74
- package/dist/LinearGenomeView/components/ImportFormRefNameAutocomplete.d.ts +12 -0
- package/dist/LinearGenomeView/components/ImportFormRefNameAutocomplete.js +29 -0
- package/dist/LinearGenomeView/components/OverviewScalebar.js +1 -1
- package/dist/LinearGenomeView/components/SearchBox.js +19 -56
- package/dist/LinearGenomeView/components/TracksContainer.js +1 -1
- package/dist/LinearGenomeView/model.d.ts +18 -2
- package/dist/LinearGenomeView/model.js +19 -0
- package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.d.ts +0 -7
- package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +11 -13
- package/dist/LinearGenomeView/svgcomponents/util.d.ts +8 -0
- package/dist/LinearGenomeView/svgcomponents/util.js +9 -0
- package/dist/index.d.ts +776 -7
- package/dist/index.js +5 -4
- package/dist/searchUtils.d.ts +26 -0
- package/dist/searchUtils.js +90 -0
- package/esm/BaseLinearDisplay/components/Tooltip.js +16 -28
- package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +4 -16
- package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js +8 -1
- package/esm/BasicTrack/configSchema.d.ts +5 -0
- package/esm/FeatureTrack/configSchema.d.ts +5 -0
- package/esm/LaunchLinearGenomeView/index.js +16 -14
- package/esm/LinearBareDisplay/model.d.ts +8 -11
- package/esm/LinearBareDisplay/model.js +2 -1
- package/esm/LinearBasicDisplay/model.d.ts +30 -33
- package/esm/LinearBasicDisplay/model.js +3 -0
- package/esm/LinearGenomeView/components/CenterLine.js +1 -1
- package/esm/LinearGenomeView/components/Cytobands.d.ts +18 -6
- package/esm/LinearGenomeView/components/Cytobands.js +8 -2
- package/esm/LinearGenomeView/components/ImportForm.js +26 -74
- package/esm/LinearGenomeView/components/ImportFormRefNameAutocomplete.d.ts +12 -0
- package/esm/LinearGenomeView/components/ImportFormRefNameAutocomplete.js +24 -0
- package/esm/LinearGenomeView/components/OverviewScalebar.js +1 -1
- package/esm/LinearGenomeView/components/SearchBox.js +20 -57
- package/esm/LinearGenomeView/components/TracksContainer.js +1 -1
- package/esm/LinearGenomeView/model.d.ts +18 -2
- package/esm/LinearGenomeView/model.js +19 -0
- package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.d.ts +0 -7
- package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +9 -10
- package/esm/LinearGenomeView/svgcomponents/util.d.ts +8 -0
- package/esm/LinearGenomeView/svgcomponents/util.js +5 -0
- package/esm/index.d.ts +776 -7
- package/esm/index.js +4 -3
- package/esm/searchUtils.d.ts +26 -0
- package/esm/searchUtils.js +79 -0
- package/package.json +4 -6
|
@@ -1,35 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
4
|
};
|
|
25
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
const react_1 =
|
|
6
|
+
const react_1 = __importDefault(require("react"));
|
|
27
7
|
const configuration_1 = require("@jbrowse/core/configuration");
|
|
28
8
|
const ui_1 = require("@jbrowse/core/ui");
|
|
29
9
|
const mobx_react_1 = require("mobx-react");
|
|
30
10
|
const material_1 = require("@mui/material");
|
|
31
11
|
const mui_1 = require("tss-react/mui");
|
|
32
|
-
const
|
|
12
|
+
const react_2 = require("@floating-ui/react");
|
|
33
13
|
function round(value) {
|
|
34
14
|
return Math.round(value * 1e5) / 1e5;
|
|
35
15
|
}
|
|
@@ -52,39 +32,27 @@ const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
52
32
|
const TooltipContents = react_1.default.forwardRef(function TooltipContents2({ message }, ref) {
|
|
53
33
|
return (react_1.default.createElement("div", { ref: ref }, react_1.default.isValidElement(message) ? (message) : message ? (react_1.default.createElement(ui_1.SanitizedHTML, { html: String(message) })) : null));
|
|
54
34
|
});
|
|
55
|
-
const Tooltip = (0, mobx_react_1.observer)(({ model, clientMouseCoord, })
|
|
35
|
+
const Tooltip = (0, mobx_react_1.observer)(function ({ model, clientMouseCoord, }) {
|
|
56
36
|
var _a, _b;
|
|
57
37
|
const { theme, classes } = useStyles();
|
|
58
38
|
const { featureUnderMouse } = model;
|
|
59
|
-
const
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return {
|
|
67
|
-
top: y,
|
|
68
|
-
left: x,
|
|
69
|
-
bottom: y,
|
|
70
|
-
right: x,
|
|
71
|
-
width: 0,
|
|
72
|
-
height: 0,
|
|
73
|
-
x,
|
|
74
|
-
y,
|
|
75
|
-
toJSON() { },
|
|
76
|
-
};
|
|
77
|
-
},
|
|
78
|
-
}), [clientMouseCoord, width]);
|
|
79
|
-
const { styles, attributes } = (0, react_popper_1.usePopper)(virtElement, popperElt);
|
|
39
|
+
const x = clientMouseCoord[0] + 15;
|
|
40
|
+
const y = clientMouseCoord[1];
|
|
41
|
+
const { refs, floatingStyles, context } = (0, react_2.useFloating)({
|
|
42
|
+
placement: 'right',
|
|
43
|
+
});
|
|
44
|
+
const clientPoint = (0, react_2.useClientPoint)(context, { x, y });
|
|
45
|
+
const { getFloatingProps } = (0, react_2.useInteractions)([clientPoint]);
|
|
80
46
|
const contents = featureUnderMouse
|
|
81
47
|
? (0, configuration_1.getConf)(model, 'mouseover', { feature: featureUnderMouse })
|
|
82
48
|
: undefined;
|
|
83
49
|
const popperTheme = (_a = theme === null || theme === void 0 ? void 0 : theme.components) === null || _a === void 0 ? void 0 : _a.MuiPopper;
|
|
84
50
|
return featureUnderMouse && contents ? (react_1.default.createElement(material_1.Portal, { container: (_b = popperTheme === null || popperTheme === void 0 ? void 0 : popperTheme.defaultProps) === null || _b === void 0 ? void 0 : _b.container },
|
|
85
|
-
react_1.default.createElement("div", {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
51
|
+
react_1.default.createElement("div", { className: classes.tooltip, ref: refs.setFloating, style: {
|
|
52
|
+
...floatingStyles,
|
|
53
|
+
zIndex: 100000,
|
|
54
|
+
pointerEvents: 'none',
|
|
55
|
+
}, ...getFloatingProps() },
|
|
56
|
+
react_1.default.createElement(TooltipContents, { message: contents })))) : null;
|
|
89
57
|
});
|
|
90
58
|
exports.default = Tooltip;
|
|
@@ -69,11 +69,7 @@ export declare const BaseLinearDisplay: import("mobx-state-tree").IModelType<{
|
|
|
69
69
|
setMessage(messageText: string): void;
|
|
70
70
|
setRendered(props: {
|
|
71
71
|
reactElement: React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
72
|
-
features: Map<string, Feature>;
|
|
73
|
-
* #getter
|
|
74
|
-
* a CompositeMap of `featureId -> feature obj` that
|
|
75
|
-
* just looks in all the block data for that feature
|
|
76
|
-
*/
|
|
72
|
+
features: Map<string, Feature>;
|
|
77
73
|
layout: any;
|
|
78
74
|
maxHeightReached: boolean;
|
|
79
75
|
renderProps: any;
|
|
@@ -132,9 +128,7 @@ export declare const BaseLinearDisplay: import("mobx-state-tree").IModelType<{
|
|
|
132
128
|
message: string | undefined;
|
|
133
129
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
134
130
|
onHorizontalScroll?: Function | undefined;
|
|
135
|
-
blockState?: Record<string, any> | undefined;
|
|
136
|
-
* #property
|
|
137
|
-
*/
|
|
131
|
+
blockState?: Record<string, any> | undefined;
|
|
138
132
|
}>;
|
|
139
133
|
readonly DisplayBlurb: React.FC<{
|
|
140
134
|
model: {
|
|
@@ -142,9 +136,7 @@ export declare const BaseLinearDisplay: import("mobx-state-tree").IModelType<{
|
|
|
142
136
|
type: string;
|
|
143
137
|
rpcDriverName: string | undefined;
|
|
144
138
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
145
|
-
rendererTypeName: string;
|
|
146
|
-
* #getter
|
|
147
|
-
*/
|
|
139
|
+
rendererTypeName: string;
|
|
148
140
|
error: unknown;
|
|
149
141
|
message: string | undefined;
|
|
150
142
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
@@ -361,11 +353,7 @@ export declare const BaseLinearDisplay: import("mobx-state-tree").IModelType<{
|
|
|
361
353
|
setMessage(messageText: string): void;
|
|
362
354
|
setRendered(props: {
|
|
363
355
|
reactElement: React.ReactElement<any, string | React.JSXElementConstructor<any>>;
|
|
364
|
-
features: Map<string, Feature>;
|
|
365
|
-
* #getter
|
|
366
|
-
* a CompositeMap of `featureId -> feature obj` that
|
|
367
|
-
* just looks in all the block data for that feature
|
|
368
|
-
*/
|
|
356
|
+
features: Map<string, Feature>;
|
|
369
357
|
layout: any;
|
|
370
358
|
maxHeightReached: boolean;
|
|
371
359
|
renderProps: any;
|
|
@@ -44,7 +44,14 @@ const FeatureDensityMixin_1 = __importDefault(require("./FeatureDensityMixin"));
|
|
|
44
44
|
/**
|
|
45
45
|
* #stateModel BaseLinearDisplay
|
|
46
46
|
* #category display
|
|
47
|
-
*
|
|
47
|
+
*
|
|
48
|
+
* BaseLinearDisplay is used as the basis for many linear genome view tracks.
|
|
49
|
+
* It is block based, and can use 'static blocks' or 'dynamic blocks'
|
|
50
|
+
*
|
|
51
|
+
* extends
|
|
52
|
+
* - [BaseDisplay](../basedisplay)
|
|
53
|
+
* - [TrackHeightMixin](../trackheightmixin)
|
|
54
|
+
* - [FeatureDensityMixin](../featuredensitymixin)
|
|
48
55
|
*/
|
|
49
56
|
function stateModelFactory() {
|
|
50
57
|
return mobx_state_tree_1.types
|
|
@@ -58,6 +58,11 @@ declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/c
|
|
|
58
58
|
defaultValue: number;
|
|
59
59
|
description: string;
|
|
60
60
|
};
|
|
61
|
+
maxDepth: {
|
|
62
|
+
type: string;
|
|
63
|
+
defaultValue: number;
|
|
64
|
+
description: string;
|
|
65
|
+
};
|
|
61
66
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
62
67
|
formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
63
68
|
config: {
|
|
@@ -58,6 +58,11 @@ declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/c
|
|
|
58
58
|
defaultValue: number;
|
|
59
59
|
description: string;
|
|
60
60
|
};
|
|
61
|
+
maxDepth: {
|
|
62
|
+
type: string;
|
|
63
|
+
defaultValue: number;
|
|
64
|
+
description: string;
|
|
65
|
+
};
|
|
61
66
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
62
67
|
formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
63
68
|
config: {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const util_1 = require("@jbrowse/core/util");
|
|
4
|
+
const searchUtils_1 = require("..//searchUtils");
|
|
4
5
|
exports.default = (pluginManager) => {
|
|
5
6
|
pluginManager.addToExtensionPoint('LaunchView-LinearGenomeView',
|
|
6
7
|
// @ts-expect-error
|
|
@@ -16,21 +17,9 @@ exports.default = (pluginManager) => {
|
|
|
16
17
|
if (!asm) {
|
|
17
18
|
throw new Error(`Assembly "${assembly}" not found when launching linear genome view`);
|
|
18
19
|
}
|
|
19
|
-
await
|
|
20
|
+
await (0, searchUtils_1.handleSelectedRegion)({ input: loc, model: view, assembly: asm });
|
|
20
21
|
const idsNotFound = [];
|
|
21
|
-
tracks.forEach(track =>
|
|
22
|
-
try {
|
|
23
|
-
view.showTrack(track);
|
|
24
|
-
}
|
|
25
|
-
catch (e) {
|
|
26
|
-
if (`${e}`.match('Could not resolve identifier')) {
|
|
27
|
-
idsNotFound.push(track);
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
throw e;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
});
|
|
22
|
+
tracks.forEach(track => tryTrack(view, track, idsNotFound));
|
|
34
23
|
if (idsNotFound.length) {
|
|
35
24
|
throw new Error(`Could not resolve identifiers: ${idsNotFound.join(',')}`);
|
|
36
25
|
}
|
|
@@ -41,3 +30,16 @@ exports.default = (pluginManager) => {
|
|
|
41
30
|
}
|
|
42
31
|
});
|
|
43
32
|
};
|
|
33
|
+
function tryTrack(model, trackId, idsNotFound) {
|
|
34
|
+
try {
|
|
35
|
+
model.showTrack(trackId);
|
|
36
|
+
}
|
|
37
|
+
catch (e) {
|
|
38
|
+
if (`${e}`.match('Could not resolve identifier')) {
|
|
39
|
+
idsNotFound.push(trackId);
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
throw e;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -3,7 +3,8 @@ import { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
|
3
3
|
/**
|
|
4
4
|
* #stateModel LinearBareDisplay
|
|
5
5
|
* #category display
|
|
6
|
-
* extends
|
|
6
|
+
* extends
|
|
7
|
+
* - [BaseLinearDisplay](../baselineardisplay)
|
|
7
8
|
*/
|
|
8
9
|
export declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): import("mobx-state-tree").IModelType<{
|
|
9
10
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
@@ -76,9 +77,7 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
76
77
|
type: string;
|
|
77
78
|
defaultValue: number;
|
|
78
79
|
description: string;
|
|
79
|
-
};
|
|
80
|
-
* #getter
|
|
81
|
-
*/
|
|
80
|
+
};
|
|
82
81
|
mouseover: {
|
|
83
82
|
type: string;
|
|
84
83
|
description: string;
|
|
@@ -98,9 +97,7 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
98
97
|
}, {
|
|
99
98
|
rendererTypeName: string;
|
|
100
99
|
error: unknown;
|
|
101
|
-
message: string | undefined;
|
|
102
|
-
* #property
|
|
103
|
-
*/
|
|
100
|
+
message: string | undefined;
|
|
104
101
|
} & {
|
|
105
102
|
readonly RenderingComponent: import("react").FC<{
|
|
106
103
|
model: {
|
|
@@ -160,7 +157,9 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
160
157
|
} & {
|
|
161
158
|
readonly height: number;
|
|
162
159
|
} & {
|
|
163
|
-
setScrollTop(scrollTop: number): void;
|
|
160
|
+
setScrollTop(scrollTop: number): void; /**
|
|
161
|
+
* #method
|
|
162
|
+
*/
|
|
164
163
|
setHeight(displayHeight: number): number;
|
|
165
164
|
resizeHeight(distance: number): number;
|
|
166
165
|
} & {
|
|
@@ -303,9 +302,7 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
303
302
|
type: string;
|
|
304
303
|
defaultValue: number;
|
|
305
304
|
description: string;
|
|
306
|
-
};
|
|
307
|
-
* #getter
|
|
308
|
-
*/
|
|
305
|
+
};
|
|
309
306
|
mouseover: {
|
|
310
307
|
type: string;
|
|
311
308
|
description: string;
|
|
@@ -8,7 +8,8 @@ const BaseLinearDisplay_1 = require("../BaseLinearDisplay");
|
|
|
8
8
|
/**
|
|
9
9
|
* #stateModel LinearBareDisplay
|
|
10
10
|
* #category display
|
|
11
|
-
* extends
|
|
11
|
+
* extends
|
|
12
|
+
* - [BaseLinearDisplay](../baselineardisplay)
|
|
12
13
|
*/
|
|
13
14
|
function stateModelFactory(configSchema) {
|
|
14
15
|
return mobx_state_tree_1.types
|
|
@@ -7,6 +7,9 @@ import { Instance } from 'mobx-state-tree';
|
|
|
7
7
|
* #category display
|
|
8
8
|
* used by `FeatureTrack`, has simple settings like "show/hide feature labels",
|
|
9
9
|
* etc.
|
|
10
|
+
*
|
|
11
|
+
* extends
|
|
12
|
+
* - [BaseLinearDisplay](../baselineardisplay)
|
|
10
13
|
*/
|
|
11
14
|
declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): import("mobx-state-tree").IModelType<{
|
|
12
15
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
@@ -34,7 +37,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
34
37
|
isLeftEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
35
38
|
isRightEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
36
39
|
}, {
|
|
37
|
-
renderInProgress: AbortController | undefined;
|
|
40
|
+
renderInProgress: AbortController | undefined; /**
|
|
41
|
+
* #property
|
|
42
|
+
*/
|
|
38
43
|
filled: boolean;
|
|
39
44
|
reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
|
|
40
45
|
features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
|
|
@@ -52,9 +57,7 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
52
57
|
afterAttach(): void;
|
|
53
58
|
setStatus(message: string): void;
|
|
54
59
|
setLoading(abortController: AbortController): void;
|
|
55
|
-
setMessage(messageText: string): void;
|
|
56
|
-
* #method
|
|
57
|
-
*/
|
|
60
|
+
setMessage(messageText: string): void;
|
|
58
61
|
setRendered(props: {
|
|
59
62
|
reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
60
63
|
features: Map<string, import("@jbrowse/core/util").Feature>;
|
|
@@ -81,15 +84,11 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
81
84
|
type: string;
|
|
82
85
|
defaultValue: number;
|
|
83
86
|
description: string;
|
|
84
|
-
};
|
|
85
|
-
* #property
|
|
86
|
-
*/
|
|
87
|
+
};
|
|
87
88
|
mouseover: {
|
|
88
89
|
type: string;
|
|
89
90
|
description: string;
|
|
90
|
-
defaultValue: string;
|
|
91
|
-
* #property
|
|
92
|
-
*/
|
|
91
|
+
defaultValue: string;
|
|
93
92
|
contextVariable: string[];
|
|
94
93
|
};
|
|
95
94
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
|
|
@@ -127,9 +126,7 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
127
126
|
model: {
|
|
128
127
|
id: string;
|
|
129
128
|
type: string;
|
|
130
|
-
rpcDriverName: string | undefined;
|
|
131
|
-
* #property
|
|
132
|
-
*/
|
|
129
|
+
rpcDriverName: string | undefined;
|
|
133
130
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
134
131
|
rendererTypeName: string;
|
|
135
132
|
error: unknown;
|
|
@@ -160,13 +157,14 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
160
157
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
161
158
|
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
162
159
|
}, {
|
|
163
|
-
rendererTypeName: string;
|
|
164
|
-
* #action
|
|
165
|
-
*/
|
|
160
|
+
rendererTypeName: string;
|
|
166
161
|
error: unknown;
|
|
167
162
|
message: string | undefined;
|
|
168
163
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
169
164
|
}> | null;
|
|
165
|
+
/**
|
|
166
|
+
* #action
|
|
167
|
+
*/
|
|
170
168
|
readonly adapterConfig: any;
|
|
171
169
|
readonly parentTrack: any;
|
|
172
170
|
renderProps(): any;
|
|
@@ -195,10 +193,11 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
195
193
|
} & {
|
|
196
194
|
readonly currentBytesRequested: number;
|
|
197
195
|
readonly currentFeatureScreenDensity: number;
|
|
198
|
-
|
|
199
|
-
readonly featureDensityStatsReady: boolean; /**
|
|
196
|
+
/**
|
|
200
197
|
* #getter
|
|
201
198
|
*/
|
|
199
|
+
readonly maxFeatureScreenDensity: any;
|
|
200
|
+
readonly featureDensityStatsReady: boolean;
|
|
202
201
|
readonly maxAllowableBytes: number;
|
|
203
202
|
} & {
|
|
204
203
|
afterAttach(): void;
|
|
@@ -219,9 +218,7 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
219
218
|
featureIdUnderMouse: string | undefined;
|
|
220
219
|
contextMenuFeature: import("@jbrowse/core/util").Feature | undefined;
|
|
221
220
|
} & {
|
|
222
|
-
readonly blockType: "dynamicBlocks" | "staticBlocks";
|
|
223
|
-
* #getter
|
|
224
|
-
*/
|
|
221
|
+
readonly blockType: "dynamicBlocks" | "staticBlocks";
|
|
225
222
|
readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
|
|
226
223
|
} & {
|
|
227
224
|
readonly renderDelay: number;
|
|
@@ -278,7 +275,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
278
275
|
readonly rendererConfig: {
|
|
279
276
|
[x: string]: any;
|
|
280
277
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
281
|
-
setSubschema(slotName: string, data: unknown): any;
|
|
278
|
+
setSubschema(slotName: string, data: unknown): any; /**
|
|
279
|
+
* #property
|
|
280
|
+
*/
|
|
282
281
|
} & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>;
|
|
283
282
|
} & {
|
|
284
283
|
/**
|
|
@@ -305,7 +304,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
305
304
|
config: {
|
|
306
305
|
[x: string]: any;
|
|
307
306
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
308
|
-
setSubschema(slotName: string, data: unknown): any;
|
|
307
|
+
setSubschema(slotName: string, data: unknown): any; /**
|
|
308
|
+
* #property
|
|
309
|
+
*/
|
|
309
310
|
} & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>;
|
|
310
311
|
};
|
|
311
312
|
/**
|
|
@@ -340,7 +341,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
340
341
|
isLeftEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
341
342
|
isRightEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
342
343
|
}, {
|
|
343
|
-
renderInProgress: AbortController | undefined;
|
|
344
|
+
renderInProgress: AbortController | undefined; /**
|
|
345
|
+
* #property
|
|
346
|
+
*/
|
|
344
347
|
filled: boolean;
|
|
345
348
|
reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
|
|
346
349
|
features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
|
|
@@ -358,9 +361,7 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
358
361
|
afterAttach(): void;
|
|
359
362
|
setStatus(message: string): void;
|
|
360
363
|
setLoading(abortController: AbortController): void;
|
|
361
|
-
setMessage(messageText: string): void;
|
|
362
|
-
* #method
|
|
363
|
-
*/
|
|
364
|
+
setMessage(messageText: string): void;
|
|
364
365
|
setRendered(props: {
|
|
365
366
|
reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
366
367
|
features: Map<string, import("@jbrowse/core/util").Feature>;
|
|
@@ -387,15 +388,11 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
387
388
|
type: string;
|
|
388
389
|
defaultValue: number;
|
|
389
390
|
description: string;
|
|
390
|
-
};
|
|
391
|
-
* #property
|
|
392
|
-
*/
|
|
391
|
+
};
|
|
393
392
|
mouseover: {
|
|
394
393
|
type: string;
|
|
395
394
|
description: string;
|
|
396
|
-
defaultValue: string;
|
|
397
|
-
* #property
|
|
398
|
-
*/
|
|
395
|
+
defaultValue: string;
|
|
399
396
|
contextVariable: string[];
|
|
400
397
|
};
|
|
401
398
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
|
|
@@ -40,6 +40,9 @@ const SetMaxHeightDlg = (0, react_1.lazy)(() => Promise.resolve().then(() => __i
|
|
|
40
40
|
* #category display
|
|
41
41
|
* used by `FeatureTrack`, has simple settings like "show/hide feature labels",
|
|
42
42
|
* etc.
|
|
43
|
+
*
|
|
44
|
+
* extends
|
|
45
|
+
* - [BaseLinearDisplay](../baselineardisplay)
|
|
43
46
|
*/
|
|
44
47
|
function stateModelFactory(configSchema) {
|
|
45
48
|
return mobx_state_tree_1.types
|
|
@@ -30,7 +30,7 @@ const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
30
30
|
centerLineContainer: {
|
|
31
31
|
background: 'transparent',
|
|
32
32
|
height: '100%',
|
|
33
|
-
zIndex: 5,
|
|
33
|
+
zIndex: 5, // above the track but under menu
|
|
34
34
|
position: 'absolute',
|
|
35
35
|
border: `1px ${theme.palette.action.active} dashed`,
|
|
36
36
|
borderTop: 'none',
|
|
@@ -53,11 +53,17 @@ declare const Cytobands: ({ overview, block, assembly, }: {
|
|
|
53
53
|
load(): Promise<void>;
|
|
54
54
|
loadPre(): Promise<void>;
|
|
55
55
|
} & {
|
|
56
|
-
getAdapterMapEntry(adapterConf:
|
|
57
|
-
|
|
56
|
+
getAdapterMapEntry(adapterConf: {
|
|
57
|
+
[x: string]: unknown;
|
|
58
|
+
}, options: import("@jbrowse/core/data_adapters/BaseAdapter").BaseOptions): Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameMap>;
|
|
59
|
+
getRefNameMapForAdapter(adapterConf: {
|
|
60
|
+
[x: string]: unknown;
|
|
61
|
+
}, opts: import("@jbrowse/core/data_adapters/BaseAdapter").BaseOptions): Promise<{
|
|
58
62
|
[x: string]: string | undefined;
|
|
59
63
|
}>;
|
|
60
|
-
getReverseRefNameMapForAdapter(adapterConf:
|
|
64
|
+
getReverseRefNameMapForAdapter(adapterConf: {
|
|
65
|
+
[x: string]: unknown;
|
|
66
|
+
}, opts: import("@jbrowse/core/data_adapters/BaseAdapter").BaseOptions): Promise<{
|
|
61
67
|
[x: string]: string | undefined;
|
|
62
68
|
}>;
|
|
63
69
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
@@ -109,11 +115,17 @@ declare const Cytobands: ({ overview, block, assembly, }: {
|
|
|
109
115
|
load(): Promise<void>;
|
|
110
116
|
loadPre(): Promise<void>;
|
|
111
117
|
} & {
|
|
112
|
-
getAdapterMapEntry(adapterConf:
|
|
113
|
-
|
|
118
|
+
getAdapterMapEntry(adapterConf: {
|
|
119
|
+
[x: string]: unknown;
|
|
120
|
+
}, options: import("@jbrowse/core/data_adapters/BaseAdapter").BaseOptions): Promise<import("@jbrowse/core/assemblyManager/assembly").RefNameMap>;
|
|
121
|
+
getRefNameMapForAdapter(adapterConf: {
|
|
122
|
+
[x: string]: unknown;
|
|
123
|
+
}, opts: import("@jbrowse/core/data_adapters/BaseAdapter").BaseOptions): Promise<{
|
|
114
124
|
[x: string]: string | undefined;
|
|
115
125
|
}>;
|
|
116
|
-
getReverseRefNameMapForAdapter(adapterConf:
|
|
126
|
+
getReverseRefNameMapForAdapter(adapterConf: {
|
|
127
|
+
[x: string]: unknown;
|
|
128
|
+
}, opts: import("@jbrowse/core/data_adapters/BaseAdapter").BaseOptions): Promise<{
|
|
117
129
|
[x: string]: string | undefined;
|
|
118
130
|
}>;
|
|
119
131
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
|
|
@@ -71,10 +71,16 @@ const Cytobands = (0, mobx_react_1.observer)(function ({ overview, block, assemb
|
|
|
71
71
|
const c = colorMap[type];
|
|
72
72
|
if (type === 'acen' && !centromereSeen) {
|
|
73
73
|
centromereSeen = true; // the next acen entry is drawn with different right triangle
|
|
74
|
-
|
|
74
|
+
const tri = reversed
|
|
75
|
+
? rightTriangle(s - w, 0, w, h)
|
|
76
|
+
: leftTriangle(s, 0, w, h);
|
|
77
|
+
return react_1.default.createElement("polygon", { key: k, points: tri, fill: c });
|
|
75
78
|
}
|
|
76
79
|
else if (type === 'acen' && centromereSeen) {
|
|
77
|
-
|
|
80
|
+
const tri = reversed
|
|
81
|
+
? leftTriangle(s - w, 0, w, h)
|
|
82
|
+
: rightTriangle(s, 0, w, h);
|
|
83
|
+
return react_1.default.createElement("polygon", { key: k, points: tri, fill: c });
|
|
78
84
|
}
|
|
79
85
|
else if (lcap === index) {
|
|
80
86
|
return react_1.default.createElement("path", { key: k, d: leftRoundedRect(l, 0, w, h, 8), fill: c });
|