@jbrowse/core 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.
- package/BaseFeatureWidget/BaseFeatureDetail/ArrayValue.d.ts +0 -9
- package/BaseFeatureWidget/BaseFeatureDetail/ArrayValue.js +2 -3
- package/BaseFeatureWidget/BaseFeatureDetail/Attributes.d.ts +1 -3
- package/BaseFeatureWidget/BaseFeatureDetail/BasicValue.d.ts +0 -9
- package/BaseFeatureWidget/BaseFeatureDetail/BasicValue.js +2 -3
- package/BaseFeatureWidget/BaseFeatureDetail/DataGridDetails.d.ts +0 -9
- package/BaseFeatureWidget/BaseFeatureDetail/DataGridDetails.js +11 -6
- package/BaseFeatureWidget/BaseFeatureDetail/FieldName.d.ts +0 -9
- package/BaseFeatureWidget/BaseFeatureDetail/FieldName.js +2 -3
- package/BaseFeatureWidget/BaseFeatureDetail/SimpleField.d.ts +0 -9
- package/BaseFeatureWidget/BaseFeatureDetail/SimpleField.js +2 -3
- package/BaseFeatureWidget/BaseFeatureDetail/UriField.d.ts +0 -9
- package/BaseFeatureWidget/BaseFeatureDetail/UriField.js +2 -3
- package/BaseFeatureWidget/BaseFeatureDetail/index.d.ts +2 -11
- package/BaseFeatureWidget/BaseFeatureDetail/index.js +5 -4
- package/BaseFeatureWidget/SequenceFeatureDetails/ProteinSequence.d.ts +1 -3
- package/BaseFeatureWidget/SequenceFeatureDetails/SequencePanel.js +1 -1
- package/BaseFeatureWidget/util.js +0 -4
- package/PluginManager.d.ts +9 -17
- package/ReExports/modules.d.ts +5 -5
- package/ReExports/modules.js +24 -18
- package/TextSearch/TextSearchManager.d.ts +1 -1
- package/assemblyManager/assembly.d.ts +2 -0
- package/assemblyManager/assembly.js +9 -4
- package/assemblyManager/assemblyManager.d.ts +123 -111
- package/assemblyManager/assemblyManager.js +1 -1
- package/configuration/configurationSchema.js +2 -2
- package/configuration/configurationSlot.js +3 -6
- package/data_adapters/BaseAdapter/index.d.ts +1 -3
- package/data_adapters/dataAdapterCache.js +2 -2
- package/package.json +5 -6
- package/pluggableElementTypes/AdapterType.d.ts +2 -2
- package/pluggableElementTypes/models/BaseTrackModel.d.ts +5 -5
- package/pluggableElementTypes/models/BaseTrackModel.js +1 -16
- package/pluggableElementTypes/models/InternetAccountModel.d.ts +2 -2
- package/pluggableElementTypes/models/InternetAccountModel.js +2 -2
- package/pluggableElementTypes/renderers/BoxRendererType.d.ts +1 -3
- package/pluggableElementTypes/renderers/CircularChordRendererType.d.ts +3 -0
- package/pluggableElementTypes/renderers/RpcRenderedSvgGroup.d.ts +7 -3
- package/pluggableElementTypes/renderers/RpcRenderedSvgGroup.js +45 -2
- package/pluggableElementTypes/renderers/ServerSideRenderedContent.d.ts +2 -2
- package/pluggableElementTypes/renderers/ServerSideRenderedContent.js +49 -12
- package/pluggableElementTypes/renderers/util/serializableFilterChain.js +2 -2
- package/rpc/RpcManager.d.ts +2 -2
- package/rpc/WebWorkerRpcDriver.js +3 -3
- package/rpc/methods/CoreGetFeatureDensityStats.js +0 -1
- package/rpc/methods/CoreGetFeatureDetails.js +0 -1
- package/rpc/methods/CoreGetFeatures.js +0 -1
- package/rpc/methods/CoreRender.js +0 -1
- package/rpc/remoteAbortSignals.d.ts +2 -2
- package/tsconfig.build.tsbuildinfo +1 -1
- package/ui/ColorPicker.js +3 -6
- package/ui/Dialog.d.ts +2 -2
- package/ui/Dialog.js +2 -1
- package/ui/DropDownMenu.d.ts +3 -4
- package/ui/DropDownMenu.js +8 -12
- package/ui/EditableTypography.js +7 -5
- package/ui/FactoryResetDialog.d.ts +3 -4
- package/ui/FactoryResetDialog.js +3 -2
- package/ui/FileSelector/FileSelector.d.ts +2 -2
- package/ui/FileSelector/FileSelector.js +2 -1
- package/ui/FileSelector/LocalFileChooser.d.ts +2 -2
- package/ui/FileSelector/LocalFileChooser.js +4 -3
- package/ui/FileSelector/UrlChooser.d.ts +5 -5
- package/ui/FileSelector/UrlChooser.js +2 -2
- package/ui/Menu.js +1 -1
- package/ui/ResizeBar.d.ts +0 -4
- package/ui/ResizeBar.js +12 -31
- package/ui/ResizeHandle.d.ts +3 -2
- package/ui/ResizeHandle.js +10 -7
- package/ui/ReturnToImportFormDialog.d.ts +4 -5
- package/ui/ReturnToImportFormDialog.js +3 -3
- package/ui/SanitizedHTML.d.ts +0 -1
- package/ui/SanitizedHTML.js +0 -2
- package/ui/Snackbar.d.ts +2 -2
- package/ui/Snackbar.js +2 -1
- package/ui/Tooltip.d.ts +4 -7
- package/ui/Tooltip.js +3 -3
- package/ui/theme.d.ts +1 -3
- package/ui/theme.js +2 -2
- package/ui/useResizeBar.d.ts +5 -0
- package/ui/useResizeBar.js +22 -0
- package/util/Base1DUtils.js +0 -1
- package/util/blockTypes.d.ts +1 -9
- package/util/blockTypes.js +5 -21
- package/util/calculateDynamicBlocks.js +3 -2
- package/util/calculateStaticBlocks.js +3 -4
- package/util/colord.d.ts +1 -0
- package/util/colord.js +13 -0
- package/util/dedupe.js +1 -2
- package/util/index.d.ts +13 -16
- package/util/index.js +17 -10
- package/util/io/RemoteFileWithRangeCache.js +2 -2
- package/util/layouts/GranularRectLayout.js +1 -2
- package/util/map-obj.d.ts +1 -1
- package/util/nanoid.d.ts +5 -0
- package/util/nanoid.js +73 -0
- package/util/offscreenCanvasPonyfill.js +1 -2
- package/util/offscreenCanvasUtils.js +1 -0
- package/util/tracks.d.ts +2 -6
- package/util/types/index.d.ts +36 -10
- package/util/types/index.js +5 -1
- package/util/types/mst.js +2 -2
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const useStyles: (params: void, styleOverrides?: {
|
|
3
|
-
props: any;
|
|
4
|
-
ownerState?: Record<string, unknown> | undefined;
|
|
5
|
-
} | undefined) => {
|
|
6
|
-
classes: Record<"field" | "fieldSubvalue", string>;
|
|
7
|
-
theme: import("@mui/material").Theme;
|
|
8
|
-
css: import("tss-react").Css;
|
|
9
|
-
cx: import("tss-react").Cx;
|
|
10
|
-
};
|
|
11
2
|
export default function ArrayValue({ name, value, description, prefix, }: {
|
|
12
3
|
description?: React.ReactNode;
|
|
13
4
|
name: string;
|
|
@@ -3,7 +3,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useStyles = void 0;
|
|
7
6
|
const react_1 = __importDefault(require("react"));
|
|
8
7
|
const is_object_1 = __importDefault(require("is-object"));
|
|
9
8
|
const mui_1 = require("tss-react/mui");
|
|
@@ -11,7 +10,7 @@ const mui_1 = require("tss-react/mui");
|
|
|
11
10
|
const Attributes_1 = __importDefault(require("./Attributes"));
|
|
12
11
|
const FieldName_1 = __importDefault(require("./FieldName"));
|
|
13
12
|
const BasicValue_1 = __importDefault(require("./BasicValue"));
|
|
14
|
-
|
|
13
|
+
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
15
14
|
field: {
|
|
16
15
|
display: 'flex',
|
|
17
16
|
flexWrap: 'wrap',
|
|
@@ -26,7 +25,7 @@ exports.useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
26
25
|
},
|
|
27
26
|
}));
|
|
28
27
|
function ArrayValue({ name, value, description, prefix = [], }) {
|
|
29
|
-
const { classes } =
|
|
28
|
+
const { classes } = useStyles();
|
|
30
29
|
if (value.length === 1) {
|
|
31
30
|
return (0, is_object_1.default)(value[0]) ? (react_1.default.createElement(Attributes_1.default, { attributes: value[0], prefix: [...prefix, name] })) : (react_1.default.createElement("div", { className: classes.field },
|
|
32
31
|
react_1.default.createElement(FieldName_1.default, { prefix: prefix, description: description, name: name }),
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const useStyles: (params: void, styleOverrides?: {
|
|
3
|
-
props: any;
|
|
4
|
-
ownerState?: Record<string, unknown> | undefined;
|
|
5
|
-
} | undefined) => {
|
|
6
|
-
classes: Record<"fieldValue", string>;
|
|
7
|
-
theme: import("@mui/material").Theme;
|
|
8
|
-
css: import("tss-react").Css;
|
|
9
|
-
cx: import("tss-react").Cx;
|
|
10
|
-
};
|
|
11
2
|
export default function BasicValue({ value }: {
|
|
12
3
|
value: unknown;
|
|
13
4
|
}): React.JSX.Element;
|
|
@@ -3,14 +3,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useStyles = void 0;
|
|
7
6
|
const react_1 = __importDefault(require("react"));
|
|
8
7
|
const mui_1 = require("tss-react/mui");
|
|
9
8
|
const is_object_1 = __importDefault(require("is-object"));
|
|
10
9
|
const material_1 = require("@mui/material");
|
|
11
10
|
// locals
|
|
12
11
|
const ui_1 = require("../../ui");
|
|
13
|
-
|
|
12
|
+
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
14
13
|
fieldValue: {
|
|
15
14
|
wordBreak: 'break-word',
|
|
16
15
|
maxHeight: 300,
|
|
@@ -20,7 +19,7 @@ exports.useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
20
19
|
},
|
|
21
20
|
}));
|
|
22
21
|
function BasicValue({ value }) {
|
|
23
|
-
const { classes } =
|
|
22
|
+
const { classes } = useStyles();
|
|
24
23
|
const isLink = `${value}`.match(/^https?:\/\//);
|
|
25
24
|
return (react_1.default.createElement("div", { className: classes.fieldValue }, react_1.default.isValidElement(value) ? (value) : isLink ? (react_1.default.createElement(material_1.Link, { href: `${value}` }, `${value}`)) : (react_1.default.createElement(ui_1.SanitizedHTML, { html: (0, is_object_1.default)(value) ? JSON.stringify(value) : String(value) }))));
|
|
26
25
|
}
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const useStyles: (params: void, styleOverrides?: {
|
|
3
|
-
props: any;
|
|
4
|
-
ownerState?: Record<string, unknown> | undefined;
|
|
5
|
-
} | undefined) => {
|
|
6
|
-
classes: Record<"margin", string>;
|
|
7
|
-
theme: import("@mui/material").Theme;
|
|
8
|
-
css: import("tss-react").Css;
|
|
9
|
-
cx: import("tss-react").Cx;
|
|
10
|
-
};
|
|
11
2
|
export default function DataGridDetails({ value, prefix, name, }: {
|
|
12
3
|
name: string;
|
|
13
4
|
prefix?: string[];
|
|
@@ -26,25 +26,30 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.useStyles = void 0;
|
|
30
29
|
const react_1 = __importStar(require("react"));
|
|
31
30
|
const mui_1 = require("tss-react/mui");
|
|
32
31
|
const x_data_grid_1 = require("@mui/x-data-grid");
|
|
33
32
|
const material_1 = require("@mui/material");
|
|
34
33
|
// locals
|
|
35
34
|
const util_1 = require("../../util");
|
|
36
|
-
const ResizeBar_1 =
|
|
35
|
+
const ResizeBar_1 = __importDefault(require("../../ui/ResizeBar"));
|
|
37
36
|
const FieldName_1 = __importDefault(require("./FieldName"));
|
|
38
37
|
const UriLink_1 = __importDefault(require("./UriLink"));
|
|
39
|
-
|
|
38
|
+
const useResizeBar_1 = require("../../ui/useResizeBar");
|
|
39
|
+
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
40
40
|
margin: {
|
|
41
41
|
margin: theme.spacing(1),
|
|
42
42
|
width: '100%',
|
|
43
43
|
},
|
|
44
|
+
cell: {
|
|
45
|
+
whiteSpace: 'nowrap',
|
|
46
|
+
overflow: 'hidden',
|
|
47
|
+
textOverflow: 'ellipsis',
|
|
48
|
+
},
|
|
44
49
|
}));
|
|
45
50
|
function DataGridDetails({ value, prefix, name, }) {
|
|
46
|
-
const { classes } =
|
|
47
|
-
const { ref, scrollLeft } = (0,
|
|
51
|
+
const { classes } = useStyles();
|
|
52
|
+
const { ref, scrollLeft } = (0, useResizeBar_1.useResizeBar)();
|
|
48
53
|
const [checked, setChecked] = (0, react_1.useState)(false);
|
|
49
54
|
const keys = Object.keys(value[0]).sort();
|
|
50
55
|
const unionKeys = new Set(keys);
|
|
@@ -88,7 +93,7 @@ function DataGridDetails({ value, prefix, name, }) {
|
|
|
88
93
|
field: val,
|
|
89
94
|
renderCell: params => {
|
|
90
95
|
const value = params.value;
|
|
91
|
-
return (0, util_1.isUriLocation)(value) ? (react_1.default.createElement(UriLink_1.default, { value: value })) : (react_1.default.createElement(react_1.default.Fragment, null, (0, util_1.getStr)(value)));
|
|
96
|
+
return (react_1.default.createElement("div", { className: classes.cell }, (0, util_1.isUriLocation)(value) ? (react_1.default.createElement(UriLink_1.default, { value: value })) : (react_1.default.createElement(react_1.default.Fragment, null, (0, util_1.getStr)(value)))));
|
|
92
97
|
},
|
|
93
98
|
width: widths[index],
|
|
94
99
|
})) }))));
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const useStyles: (params: void, styleOverrides?: {
|
|
3
|
-
props: any;
|
|
4
|
-
ownerState?: Record<string, unknown> | undefined;
|
|
5
|
-
} | undefined) => {
|
|
6
|
-
classes: Record<"fieldDescription" | "fieldName", string>;
|
|
7
|
-
theme: import("@mui/material").Theme;
|
|
8
|
-
css: import("tss-react").Css;
|
|
9
|
-
cx: import("tss-react").Cx;
|
|
10
|
-
};
|
|
11
2
|
export default function FieldName({ description, name, width, prefix, }: {
|
|
12
3
|
description?: React.ReactNode;
|
|
13
4
|
name: string;
|
|
@@ -3,11 +3,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useStyles = void 0;
|
|
7
6
|
const react_1 = __importDefault(require("react"));
|
|
8
7
|
const material_1 = require("@mui/material");
|
|
9
8
|
const mui_1 = require("tss-react/mui");
|
|
10
|
-
|
|
9
|
+
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
11
10
|
fieldDescription: {
|
|
12
11
|
'&:hover': {
|
|
13
12
|
background: theme.palette.mode === 'dark' ? '#e65100' : 'yellow',
|
|
@@ -24,7 +23,7 @@ exports.useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
|
24
23
|
},
|
|
25
24
|
}));
|
|
26
25
|
function FieldName({ description, name, width, prefix = [], }) {
|
|
27
|
-
const { classes, cx } =
|
|
26
|
+
const { classes, cx } = useStyles();
|
|
28
27
|
const val = [...prefix, name].join('.');
|
|
29
28
|
return description ? (react_1.default.createElement(material_1.Tooltip, { title: description, placement: "left" },
|
|
30
29
|
react_1.default.createElement("div", { className: cx(classes.fieldDescription, classes.fieldName) }, val))) : (react_1.default.createElement("div", { className: classes.fieldName, style: { width: width } }, val));
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const useStyles: (params: void, styleOverrides?: {
|
|
3
|
-
props: any;
|
|
4
|
-
ownerState?: Record<string, unknown> | undefined;
|
|
5
|
-
} | undefined) => {
|
|
6
|
-
classes: Record<"field", string>;
|
|
7
|
-
theme: import("@mui/material").Theme;
|
|
8
|
-
css: import("tss-react").Css;
|
|
9
|
-
cx: import("tss-react").Cx;
|
|
10
|
-
};
|
|
11
2
|
export default function SimpleField({ name, value, description, prefix, width, }: {
|
|
12
3
|
description?: React.ReactNode;
|
|
13
4
|
name: string;
|
|
@@ -3,19 +3,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useStyles = void 0;
|
|
7
6
|
const react_1 = __importDefault(require("react"));
|
|
8
7
|
const mui_1 = require("tss-react/mui");
|
|
9
8
|
const FieldName_1 = __importDefault(require("./FieldName"));
|
|
10
9
|
const BasicValue_1 = __importDefault(require("./BasicValue"));
|
|
11
|
-
|
|
10
|
+
const useStyles = (0, mui_1.makeStyles)()({
|
|
12
11
|
field: {
|
|
13
12
|
display: 'flex',
|
|
14
13
|
flexWrap: 'wrap',
|
|
15
14
|
},
|
|
16
15
|
});
|
|
17
16
|
function SimpleField({ name, value, description, prefix, width, }) {
|
|
18
|
-
const { classes } =
|
|
17
|
+
const { classes } = useStyles();
|
|
19
18
|
return value !== null && value !== undefined ? (react_1.default.createElement("div", { className: classes.field },
|
|
20
19
|
react_1.default.createElement(FieldName_1.default, { prefix: prefix, description: description, name: name, width: width }),
|
|
21
20
|
react_1.default.createElement(BasicValue_1.default, { value: value }))) : null;
|
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const useStyles: (params: void, styleOverrides?: {
|
|
3
|
-
props: any;
|
|
4
|
-
ownerState?: Record<string, unknown> | undefined;
|
|
5
|
-
} | undefined) => {
|
|
6
|
-
classes: Record<"field", string>;
|
|
7
|
-
theme: import("@mui/material").Theme;
|
|
8
|
-
css: import("tss-react").Css;
|
|
9
|
-
cx: import("tss-react").Cx;
|
|
10
|
-
};
|
|
11
2
|
export default function UriField({ value, prefix, name, }: {
|
|
12
3
|
value: {
|
|
13
4
|
uri: string;
|
|
@@ -3,19 +3,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.useStyles = void 0;
|
|
7
6
|
const react_1 = __importDefault(require("react"));
|
|
8
7
|
const FieldName_1 = __importDefault(require("./FieldName"));
|
|
9
8
|
const mui_1 = require("tss-react/mui");
|
|
10
9
|
const BasicValue_1 = __importDefault(require("./BasicValue"));
|
|
11
|
-
|
|
10
|
+
const useStyles = (0, mui_1.makeStyles)()({
|
|
12
11
|
field: {
|
|
13
12
|
display: 'flex',
|
|
14
13
|
flexWrap: 'wrap',
|
|
15
14
|
},
|
|
16
15
|
});
|
|
17
16
|
function UriField({ value, prefix, name, }) {
|
|
18
|
-
const { classes } =
|
|
17
|
+
const { classes } = useStyles();
|
|
19
18
|
const { uri, baseUri = '' } = value;
|
|
20
19
|
let href;
|
|
21
20
|
try {
|
|
@@ -2,15 +2,6 @@ import React from 'react';
|
|
|
2
2
|
import { IAnyStateTreeNode } from 'mobx-state-tree';
|
|
3
3
|
import { BaseCardProps, BaseProps } from '../types';
|
|
4
4
|
import { SimpleFeatureSerialized } from '../../util';
|
|
5
|
-
export declare const useStyles: (params: void, styleOverrides?: {
|
|
6
|
-
props: any;
|
|
7
|
-
ownerState?: Record<string, unknown> | undefined;
|
|
8
|
-
} | undefined) => {
|
|
9
|
-
classes: Record<"expandIcon" | "expansionPanelDetails", string>;
|
|
10
|
-
theme: import("@mui/material").Theme;
|
|
11
|
-
css: import("tss-react").Css;
|
|
12
|
-
cx: import("tss-react").Cx;
|
|
13
|
-
};
|
|
14
5
|
export declare function BaseCard({ children, title, defaultExpanded, }: BaseCardProps): React.JSX.Element;
|
|
15
6
|
export declare const BaseCoreDetails: (props: BaseProps) => React.JSX.Element;
|
|
16
7
|
export declare const BaseAttributes: (props: BaseProps) => React.JSX.Element;
|
|
@@ -28,6 +19,6 @@ export declare function FeatureDetails(props: {
|
|
|
28
19
|
descriptions?: Record<string, React.ReactNode>;
|
|
29
20
|
formatter?: (val: unknown, key: string) => React.ReactNode;
|
|
30
21
|
}): React.JSX.Element;
|
|
31
|
-
declare const
|
|
32
|
-
export default
|
|
22
|
+
declare const BaseFeatureDetail: ({ model }: BaseInputProps) => React.JSX.Element | null;
|
|
23
|
+
export default BaseFeatureDetail;
|
|
33
24
|
export { default as Attributes } from './Attributes';
|
|
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.Attributes = exports.FeatureDetails = exports.BaseAttributes = exports.BaseCoreDetails = exports.BaseCard =
|
|
29
|
+
exports.Attributes = exports.FeatureDetails = exports.BaseAttributes = exports.BaseCoreDetails = exports.BaseCard = void 0;
|
|
30
30
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
31
31
|
const react_1 = __importStar(require("react"));
|
|
32
32
|
const react_error_boundary_1 = require("react-error-boundary");
|
|
@@ -52,7 +52,7 @@ const coreDetails = [
|
|
|
52
52
|
'description',
|
|
53
53
|
'type',
|
|
54
54
|
];
|
|
55
|
-
|
|
55
|
+
const useStyles = (0, mui_1.makeStyles)()(theme => {
|
|
56
56
|
var _a;
|
|
57
57
|
return ({
|
|
58
58
|
expansionPanelDetails: {
|
|
@@ -65,7 +65,7 @@ exports.useStyles = (0, mui_1.makeStyles)()(theme => {
|
|
|
65
65
|
});
|
|
66
66
|
});
|
|
67
67
|
function BaseCard({ children, title, defaultExpanded = true, }) {
|
|
68
|
-
const { classes } =
|
|
68
|
+
const { classes } = useStyles();
|
|
69
69
|
const [expanded, setExpanded] = (0, react_1.useState)(defaultExpanded);
|
|
70
70
|
return (react_1.default.createElement(material_1.Accordion, { expanded: expanded, onChange: () => setExpanded(s => !s), TransitionProps: { unmountOnExit: true, timeout: 150 } },
|
|
71
71
|
react_1.default.createElement(material_1.AccordionSummary, { expandIcon: react_1.default.createElement(ExpandMore_1.default, { className: classes.expandIcon }) },
|
|
@@ -151,7 +151,7 @@ function FeatureDetails(props) {
|
|
|
151
151
|
(subfeatures === null || subfeatures === void 0 ? void 0 : subfeatures.length) ? (react_1.default.createElement(BaseCard, { title: "Subfeatures", defaultExpanded: depth < 1 }, subfeatures.map((sub, idx) => (react_1.default.createElement(FeatureDetails, { key: JSON.stringify(sub), feature: { ...sub, uniqueId: `${uniqueId}_${idx}` }, model: model, depth: depth + 1 }))))) : null));
|
|
152
152
|
}
|
|
153
153
|
exports.FeatureDetails = FeatureDetails;
|
|
154
|
-
|
|
154
|
+
const BaseFeatureDetail = (0, mobx_react_1.observer)(function ({ model }) {
|
|
155
155
|
const { error, featureData } = model;
|
|
156
156
|
if (error) {
|
|
157
157
|
return react_1.default.createElement(ui_1.ErrorMessage, { error: error });
|
|
@@ -166,5 +166,6 @@ exports.default = (0, mobx_react_1.observer)(function ({ model }) {
|
|
|
166
166
|
const g = JSON.parse(JSON.stringify(featureData, (_, v) => (v === undefined ? null : v)));
|
|
167
167
|
return (0, util_2.isEmpty)(g) ? null : react_1.default.createElement(FeatureDetails, { model: model, feature: g });
|
|
168
168
|
});
|
|
169
|
+
exports.default = BaseFeatureDetail;
|
|
169
170
|
var Attributes_2 = require("./Attributes");
|
|
170
171
|
Object.defineProperty(exports, "Attributes", { enumerable: true, get: function () { return __importDefault(Attributes_2).default; } });
|
|
@@ -10,7 +10,7 @@ const CDNASequence_1 = __importDefault(require("./CDNASequence"));
|
|
|
10
10
|
const ProteinSequence_1 = __importDefault(require("./ProteinSequence"));
|
|
11
11
|
const GenomicSequence_1 = __importDefault(require("./GenomicSequence"));
|
|
12
12
|
const CDSSequence_1 = __importDefault(require("./CDSSequence"));
|
|
13
|
-
const SeqPanel = react_1.default.forwardRef(function (props, ref) {
|
|
13
|
+
const SeqPanel = react_1.default.forwardRef(function SeqPanel2(props, ref) {
|
|
14
14
|
const { feature, mode, intronBp = 10 } = props;
|
|
15
15
|
let { sequence: { seq, upstream = '', downstream = '' }, } = props;
|
|
16
16
|
const { subfeatures = [] } = feature;
|
|
@@ -29,9 +29,7 @@ function calculateUTRs(cds, exons) {
|
|
|
29
29
|
if (!cds.length) {
|
|
30
30
|
return [];
|
|
31
31
|
}
|
|
32
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
33
32
|
const firstCds = cds.at(0);
|
|
34
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
35
33
|
const lastCds = cds.at(-1);
|
|
36
34
|
const firstCdsIdx = exons.findIndex(exon => exon.end >= firstCds.start && exon.start <= firstCds.start);
|
|
37
35
|
const lastCdsIdx = exons.findIndex(exon => exon.end >= lastCds.end && exon.start <= lastCds.end);
|
|
@@ -53,9 +51,7 @@ function calculateUTRs2(cds, parentFeat) {
|
|
|
53
51
|
if (!cds.length) {
|
|
54
52
|
return [];
|
|
55
53
|
}
|
|
56
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
57
54
|
const firstCds = cds.at(0);
|
|
58
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
59
55
|
const lastCds = cds.at(-1);
|
|
60
56
|
const fiveUTRs = [{ start: parentFeat.start, end: firstCds.start }].map(elt => ({ ...elt, type: 'five_prime_UTR' }));
|
|
61
57
|
const threeUTRs = [{ start: lastCds.end, end: parentFeat.end }].map(elt => ({
|
package/PluginManager.d.ts
CHANGED
|
@@ -30,17 +30,11 @@ type PluggableElementTypeGroup = 'renderer' | 'adapter' | 'display' | 'track' |
|
|
|
30
30
|
/** internal class that holds the info for a certain element type */
|
|
31
31
|
declare class TypeRecord<ElementClass extends PluggableElementBase> {
|
|
32
32
|
typeName: string;
|
|
33
|
-
baseClass: {
|
|
34
|
-
new (...args: unknown[]): ElementClass;
|
|
35
|
-
} | (Function & {
|
|
33
|
+
baseClass: (new (...args: unknown[]) => ElementClass) | (Function & {
|
|
36
34
|
prototype: ElementClass;
|
|
37
35
|
});
|
|
38
|
-
registeredTypes:
|
|
39
|
-
|
|
40
|
-
};
|
|
41
|
-
constructor(typeName: string, baseClass: {
|
|
42
|
-
new (...args: unknown[]): ElementClass;
|
|
43
|
-
} | (Function & {
|
|
36
|
+
registeredTypes: Record<string, ElementClass>;
|
|
37
|
+
constructor(typeName: string, baseClass: (new (...args: unknown[]) => ElementClass) | (Function & {
|
|
44
38
|
prototype: ElementClass;
|
|
45
39
|
}));
|
|
46
40
|
add(name: string, t: ElementClass): void;
|
|
@@ -85,9 +79,7 @@ export default class PluginManager {
|
|
|
85
79
|
rootModel?: AbstractRootModel;
|
|
86
80
|
extensionPoints: Map<string, Function[]>;
|
|
87
81
|
constructor(initialPlugins?: (Plugin | PluginLoadRecord)[]);
|
|
88
|
-
pluginConfigurationSchemas():
|
|
89
|
-
[key: string]: unknown;
|
|
90
|
-
};
|
|
82
|
+
pluginConfigurationSchemas(): Record<string, unknown>;
|
|
91
83
|
addPlugin(load: Plugin | PluginLoadRecord | RuntimePluginLoadRecord): this;
|
|
92
84
|
getPlugin(name: string): Plugin | undefined;
|
|
93
85
|
hasPlugin(name: string): boolean;
|
|
@@ -207,9 +199,9 @@ export default class PluginManager {
|
|
|
207
199
|
'@jbrowse/core/util/mst-reflection': typeof import("./util/mst-reflection");
|
|
208
200
|
'@jbrowse/core/util/rxjs': typeof import("./util/rxjs");
|
|
209
201
|
'@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail': {
|
|
210
|
-
Attributes: (
|
|
211
|
-
FeatureDetails: (
|
|
212
|
-
BaseCard: (
|
|
202
|
+
Attributes: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
|
|
203
|
+
FeatureDetails: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
|
|
204
|
+
BaseCard: import("react").ForwardRefExoticComponent<Omit<any, "ref"> & import("react").RefAttributes<unknown>>;
|
|
213
205
|
};
|
|
214
206
|
'@jbrowse/core/data_adapters/BaseAdapter': typeof import("./data_adapters/BaseAdapter");
|
|
215
207
|
mobx: typeof import("mobx");
|
|
@@ -229,8 +221,8 @@ export default class PluginManager {
|
|
|
229
221
|
makeStyles: <Params = void, RuleNameSubsetReferencableInNestedSelectors extends string = never>(params?: {
|
|
230
222
|
name?: string | Record<string, unknown> | undefined;
|
|
231
223
|
uniqId?: string | undefined;
|
|
232
|
-
} | undefined) => <RuleName extends string>(cssObjectByRuleNameOrGetCssObjectByRuleName: Record<RuleName, import("tss-react").CSSObject> | ((theme: import("@mui/material").Theme, params: Params, classes: Record<RuleNameSubsetReferencableInNestedSelectors, string>) => Record<RuleNameSubsetReferencableInNestedSelectors | RuleName, import("tss-react").CSSObject>)) => (params: Params,
|
|
233
|
-
props:
|
|
224
|
+
} | undefined) => <RuleName extends string>(cssObjectByRuleNameOrGetCssObjectByRuleName: Record<RuleName, import("tss-react").CSSObject> | ((theme: import("@mui/material").Theme, params: Params, classes: Record<RuleNameSubsetReferencableInNestedSelectors, string>) => Record<RuleNameSubsetReferencableInNestedSelectors | RuleName, import("tss-react").CSSObject>)) => (params: Params, muiStyleOverridesParams?: {
|
|
225
|
+
props: Record<string, unknown>;
|
|
234
226
|
ownerState?: Record<string, unknown> | undefined;
|
|
235
227
|
} | undefined) => {
|
|
236
228
|
classes: Record<RuleName, string>;
|
package/ReExports/modules.d.ts
CHANGED
|
@@ -124,9 +124,9 @@ declare const libs: {
|
|
|
124
124
|
'@jbrowse/core/util/mst-reflection': typeof coreMstReflection;
|
|
125
125
|
'@jbrowse/core/util/rxjs': typeof rxjs;
|
|
126
126
|
'@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail': {
|
|
127
|
-
Attributes:
|
|
128
|
-
FeatureDetails:
|
|
129
|
-
BaseCard:
|
|
127
|
+
Attributes: React.ForwardRefExoticComponent<Omit<any, "ref"> & React.RefAttributes<unknown>>;
|
|
128
|
+
FeatureDetails: React.ForwardRefExoticComponent<Omit<any, "ref"> & React.RefAttributes<unknown>>;
|
|
129
|
+
BaseCard: React.ForwardRefExoticComponent<Omit<any, "ref"> & React.RefAttributes<unknown>>;
|
|
130
130
|
};
|
|
131
131
|
'@jbrowse/core/data_adapters/BaseAdapter': typeof BaseAdapterExports;
|
|
132
132
|
mobx: typeof mobx;
|
|
@@ -146,8 +146,8 @@ declare const libs: {
|
|
|
146
146
|
makeStyles: <Params = void, RuleNameSubsetReferencableInNestedSelectors extends string = never>(params?: {
|
|
147
147
|
name?: string | Record<string, unknown> | undefined;
|
|
148
148
|
uniqId?: string | undefined;
|
|
149
|
-
} | undefined) => <RuleName extends string>(cssObjectByRuleNameOrGetCssObjectByRuleName: Record<RuleName, import("tss-react").CSSObject> | ((theme: MUIStyles.Theme, params: Params, classes: Record<RuleNameSubsetReferencableInNestedSelectors, string>) => Record<RuleNameSubsetReferencableInNestedSelectors | RuleName, import("tss-react").CSSObject>)) => (params: Params,
|
|
150
|
-
props:
|
|
149
|
+
} | undefined) => <RuleName extends string>(cssObjectByRuleNameOrGetCssObjectByRuleName: Record<RuleName, import("tss-react").CSSObject> | ((theme: MUIStyles.Theme, params: Params, classes: Record<RuleNameSubsetReferencableInNestedSelectors, string>) => Record<RuleNameSubsetReferencableInNestedSelectors | RuleName, import("tss-react").CSSObject>)) => (params: Params, muiStyleOverridesParams?: {
|
|
150
|
+
props: Record<string, unknown>;
|
|
151
151
|
ownerState?: Record<string, unknown> | undefined;
|
|
152
152
|
} | undefined) => {
|
|
153
153
|
classes: Record<RuleName, string>;
|
package/ReExports/modules.js
CHANGED
|
@@ -26,6 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
26
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
/* eslint-disable react-refresh/only-export-components */
|
|
29
30
|
// this is all the stuff that the pluginManager re-exports for plugins to use
|
|
30
31
|
const react_1 = __importStar(require("react"));
|
|
31
32
|
const ReactJSXRuntime = __importStar(require("react/jsx-runtime"));
|
|
@@ -177,12 +178,13 @@ const Entries = {
|
|
|
177
178
|
Tooltip: (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('@mui/material/Tooltip')))),
|
|
178
179
|
Typography: (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('@mui/material/Typography')))),
|
|
179
180
|
};
|
|
180
|
-
const LazyMUICore = Object.fromEntries(Object.entries(Entries).map(([key, ReactComponent]) =>
|
|
181
|
-
key,
|
|
181
|
+
const LazyMUICore = Object.fromEntries(Object.entries(Entries).map(([key, ReactComponent]) => {
|
|
182
182
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
183
|
-
(props) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
184
|
-
react_1.default.createElement(ReactComponent, { ...props })))
|
|
185
|
-
|
|
183
|
+
const Component = react_1.default.forwardRef((props, ref) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
184
|
+
react_1.default.createElement(ReactComponent, { ...props, ref: ref }))));
|
|
185
|
+
Component.displayName = key;
|
|
186
|
+
return [key, Component];
|
|
187
|
+
}));
|
|
186
188
|
const MaterialPrefixMUI = Object.fromEntries(Object.entries(LazyMUICore).map(([key, value]) => [
|
|
187
189
|
'@material-ui/core/' + key,
|
|
188
190
|
value,
|
|
@@ -349,21 +351,25 @@ const DataGridEntries = {
|
|
|
349
351
|
default: module.GridViewStreamIcon,
|
|
350
352
|
}))),
|
|
351
353
|
};
|
|
352
|
-
const LazyDataGridComponents = Object.fromEntries(Object.entries(DataGridEntries).map(([key, ReactComponent]) =>
|
|
353
|
-
key,
|
|
354
|
+
const LazyDataGridComponents = Object.fromEntries(Object.entries(DataGridEntries).map(([key, ReactComponent]) => {
|
|
354
355
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
355
|
-
(props) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
356
|
-
react_1.default.createElement(ReactComponent, { ...props })))
|
|
357
|
-
|
|
356
|
+
const Component = react_1.default.forwardRef((props, ref) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
357
|
+
react_1.default.createElement(ReactComponent, { ...props, ref: ref }))));
|
|
358
|
+
Component.displayName = key;
|
|
359
|
+
return [key, Component];
|
|
360
|
+
}));
|
|
358
361
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
359
|
-
const LazyAttributes = (props) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
360
|
-
react_1.default.createElement(Attributes, { ...props })));
|
|
362
|
+
const LazyAttributes = react_1.default.forwardRef((props, ref) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
363
|
+
react_1.default.createElement(Attributes, { ...props, ref: ref }))));
|
|
364
|
+
LazyAttributes.displayName = 'Attributes';
|
|
361
365
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
362
|
-
const LazyFeatureDetails = (props) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
363
|
-
react_1.default.createElement(FeatureDetails, { ...props })));
|
|
366
|
+
const LazyFeatureDetails = react_1.default.forwardRef((props, ref) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
367
|
+
react_1.default.createElement(FeatureDetails, { ...props, ref: ref }))));
|
|
368
|
+
LazyFeatureDetails.displayName = 'FeatureDetails';
|
|
364
369
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
365
|
-
const LazyBaseCard = (props) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
366
|
-
react_1.default.createElement(BaseCard, { ...props })));
|
|
370
|
+
const LazyBaseCard = react_1.default.forwardRef((props, ref) => (react_1.default.createElement(react_1.Suspense, { fallback: react_1.default.createElement("div", null) },
|
|
371
|
+
react_1.default.createElement(BaseCard, { ...props, ref: ref }))));
|
|
372
|
+
LazyBaseCard.displayName = 'BaseCard';
|
|
367
373
|
const libs = {
|
|
368
374
|
mobx,
|
|
369
375
|
'mobx-state-tree': mst,
|
|
@@ -450,10 +456,10 @@ const libsList = Object.keys(libs);
|
|
|
450
456
|
// systems and such) are included here, and vice versa
|
|
451
457
|
const inLibsOnly = libsList.filter(mod => !list_1.default.includes(mod));
|
|
452
458
|
if (inLibsOnly.length > 0) {
|
|
453
|
-
throw new Error(`The following modules are in the
|
|
459
|
+
throw new Error(`The following modules are in the modules libs, but not the re-exports list: ${inLibsOnly.join(', ')}`);
|
|
454
460
|
}
|
|
455
461
|
const inReExportsOnly = list_1.default.filter(mod => !libsList.includes(mod));
|
|
456
462
|
if (inReExportsOnly.length) {
|
|
457
|
-
throw new Error(`The following modules are in the
|
|
463
|
+
throw new Error(`The following modules are in the re-exports list, but not the modules libs: ${inReExportsOnly.join(', ')}`);
|
|
458
464
|
}
|
|
459
465
|
exports.default = libs;
|
|
@@ -6,7 +6,7 @@ import { AnyConfigurationModel } from '../configuration';
|
|
|
6
6
|
export interface SearchScope {
|
|
7
7
|
includeAggregateIndexes: boolean;
|
|
8
8
|
assemblyName: string;
|
|
9
|
-
tracks?:
|
|
9
|
+
tracks?: string[];
|
|
10
10
|
}
|
|
11
11
|
export default class TextSearchManager {
|
|
12
12
|
pluginManager: PluginManager;
|
|
@@ -36,6 +36,8 @@ export default function assemblyFactory(assemblyConfigType: IAnyType, pm: Plugin
|
|
|
36
36
|
refNameAliases: RefNameAliases | undefined;
|
|
37
37
|
lowerCaseRefNameAliases: RefNameAliases | undefined;
|
|
38
38
|
cytobands: Feature[] | undefined;
|
|
39
|
+
} & {
|
|
40
|
+
getConf(arg: string): any;
|
|
39
41
|
} & {
|
|
40
42
|
/**
|
|
41
43
|
* #getter
|
|
@@ -108,6 +108,11 @@ function assemblyFactory(assemblyConfigType, pm) {
|
|
|
108
108
|
refNameAliases: undefined,
|
|
109
109
|
lowerCaseRefNameAliases: undefined,
|
|
110
110
|
cytobands: undefined,
|
|
111
|
+
}))
|
|
112
|
+
.views(self => ({
|
|
113
|
+
getConf(arg) {
|
|
114
|
+
return self.configuration ? (0, configuration_1.getConf)(self, arg) : undefined;
|
|
115
|
+
},
|
|
111
116
|
}))
|
|
112
117
|
.views(self => ({
|
|
113
118
|
/**
|
|
@@ -122,7 +127,7 @@ function assemblyFactory(assemblyConfigType, pm) {
|
|
|
122
127
|
* #getter
|
|
123
128
|
*/
|
|
124
129
|
get name() {
|
|
125
|
-
return
|
|
130
|
+
return self.getConf('name') || '';
|
|
126
131
|
},
|
|
127
132
|
/**
|
|
128
133
|
* #getter
|
|
@@ -136,13 +141,13 @@ function assemblyFactory(assemblyConfigType, pm) {
|
|
|
136
141
|
* #getter
|
|
137
142
|
*/
|
|
138
143
|
get aliases() {
|
|
139
|
-
return
|
|
144
|
+
return self.getConf('aliases') || [];
|
|
140
145
|
},
|
|
141
146
|
/**
|
|
142
147
|
* #getter
|
|
143
148
|
*/
|
|
144
149
|
get displayName() {
|
|
145
|
-
return
|
|
150
|
+
return self.getConf('displayName');
|
|
146
151
|
},
|
|
147
152
|
/**
|
|
148
153
|
* #getter
|
|
@@ -194,7 +199,7 @@ function assemblyFactory(assemblyConfigType, pm) {
|
|
|
194
199
|
* #getter
|
|
195
200
|
*/
|
|
196
201
|
get refNameColors() {
|
|
197
|
-
const colors =
|
|
202
|
+
const colors = self.getConf('refNameColors') || [];
|
|
198
203
|
return colors.length === 0 ? refNameColors : colors;
|
|
199
204
|
},
|
|
200
205
|
}))
|