@jbrowse/core 2.10.3 → 2.11.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/BaseFeatureWidget/BaseFeatureDetail/Attributes.js +1 -1
- package/BaseFeatureWidget/BaseFeatureDetail/index.js +10 -2
- package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeatureDetails.d.ts +7 -2
- package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeatureDetails.js +80 -86
- package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeaturePanel.d.ts +8 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeaturePanel.js +67 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/SequencePanel.d.ts +5 -3
- package/BaseFeatureWidget/SequenceFeatureDetails/SequencePanel.js +7 -7
- package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SettingsDialog.d.ts +7 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/{SequenceFeatureSettingsDialog.js → dialogs/SettingsDialog.js} +20 -10
- package/BaseFeatureWidget/SequenceFeatureDetails/hooks.js +2 -8
- package/BaseFeatureWidget/SequenceFeatureDetails/index.d.ts +1 -3
- package/BaseFeatureWidget/SequenceFeatureDetails/index.js +3 -67
- package/BaseFeatureWidget/SequenceFeatureDetails/model.d.ts +14 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/model.js +40 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/CDNASequence.d.ts +15 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/{CDNASequence.js → seqtypes/CDNASequence.js} +17 -8
- package/BaseFeatureWidget/SequenceFeatureDetails/{CDSSequence.d.ts → seqtypes/CDSSequence.d.ts} +1 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/{CDSSequence.js → seqtypes/CDSSequence.js} +2 -2
- package/BaseFeatureWidget/SequenceFeatureDetails/{GenomicSequence.js → seqtypes/GenomicSequence.js} +1 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/{ProteinSequence.d.ts → seqtypes/ProteinSequence.d.ts} +1 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/{ProteinSequence.js → seqtypes/ProteinSequence.js} +2 -2
- package/BaseFeatureWidget/stateModelFactory.d.ts +32 -0
- package/BaseFeatureWidget/stateModelFactory.js +5 -0
- package/BaseFeatureWidget/types.d.ts +2 -7
- package/BaseFeatureWidget/util.d.ts +4 -2
- package/PluginLoader.d.ts +1 -1
- package/PluginLoader.js +1 -0
- package/PluginManager.d.ts +14 -10
- package/PluginManager.js +8 -3
- package/ReExports/modules.d.ts +9 -3
- package/ReExports/modules.js +16 -5
- package/data_adapters/CytobandAdapter/index.d.ts +1 -2
- package/data_adapters/CytobandAdapter/index.js +3 -2
- package/package.json +3 -3
- package/pluggableElementTypes/models/BaseTrackModel.d.ts +1 -0
- package/pluggableElementTypes/models/BaseTrackModel.js +2 -1
- package/pluggableElementTypes/models/InternetAccountModel.d.ts +1 -0
- package/rpc/BaseRpcDriver.js +1 -0
- package/tsconfig.build.tsbuildinfo +1 -1
- package/ui/AssemblySelector.d.ts +5 -5
- package/ui/CascadingMenuButton.d.ts +6 -6
- package/ui/Dialog.js +1 -1
- package/ui/ErrorMessage.d.ts +2 -1
- package/ui/ErrorMessage.js +16 -3
- package/ui/ErrorMessageStackTraceDialog.d.ts +3 -2
- package/ui/ErrorMessageStackTraceDialog.js +50 -23
- package/ui/FileSelector/FileSelector.d.ts +5 -5
- package/ui/FileSelector/UrlChooser.d.ts +2 -2
- package/ui/MenuButton.d.ts +5 -5
- package/ui/SnackbarModel.d.ts +21 -30
- package/ui/SnackbarModel.js +87 -50
- package/ui/index.d.ts +0 -1
- package/ui/index.js +1 -3
- package/ui/theme.d.ts +38 -0
- package/ui/theme.js +121 -104
- package/util/Base1DViewModel.d.ts +1 -1
- package/util/index.d.ts +11 -1
- package/util/index.js +27 -6
- package/util/io/RemoteFileWithRangeCache.js +14 -31
- package/util/jexl.d.ts +1 -1
- package/util/jexl.js +3 -2
- package/util/offscreenCanvasUtils.js +2 -2
- package/util/simpleFeature.d.ts +4 -0
- package/util/types/index.d.ts +2 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/CDNASequence.d.ts +0 -13
- package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeatureSettingsDialog.d.ts +0 -9
- package/ui/Tooltip.d.ts +0 -11
- package/ui/Tooltip.js +0 -54
- /package/BaseFeatureWidget/SequenceFeatureDetails/{SequenceHelpDialog.d.ts → dialogs/HelpDialog.d.ts} +0 -0
- /package/BaseFeatureWidget/SequenceFeatureDetails/{SequenceHelpDialog.js → dialogs/HelpDialog.js} +0 -0
- /package/BaseFeatureWidget/SequenceFeatureDetails/{GenomicSequence.d.ts → seqtypes/GenomicSequence.d.ts} +0 -0
package/BaseFeatureWidget/SequenceFeatureDetails/{CDNASequence.js → seqtypes/CDNASequence.js}
RENAMED
|
@@ -4,22 +4,31 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
|
-
const
|
|
8
|
-
|
|
7
|
+
const mobx_react_1 = require("mobx-react");
|
|
8
|
+
const util_1 = require("../util");
|
|
9
|
+
const CDNASequence = (0, mobx_react_1.observer)(function ({ utr, cds, exons, sequence, upstream, downstream, includeIntrons, collapseIntron, model, }) {
|
|
10
|
+
const { upperCaseCDS, intronBp } = model;
|
|
11
|
+
const hasCds = cds.length > 0;
|
|
9
12
|
const chunks = (cds.length ? [...cds, ...utr].sort((a, b) => a.start - b.start) : exons).filter(f => f.start !== f.end);
|
|
13
|
+
const toLower = (s) => (upperCaseCDS ? s.toLowerCase() : s);
|
|
14
|
+
const toUpper = (s) => (upperCaseCDS ? s.toUpperCase() : s);
|
|
10
15
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
11
|
-
upstream ? (react_1.default.createElement("span", { style: { background: util_1.updownstreamColor } }, upstream)) : null,
|
|
16
|
+
upstream ? (react_1.default.createElement("span", { style: { background: util_1.updownstreamColor } }, toLower(upstream))) : null,
|
|
12
17
|
chunks.map((chunk, idx) => {
|
|
13
18
|
var _a;
|
|
14
19
|
const intron = sequence.slice(chunk.end, (_a = chunks[idx + 1]) === null || _a === void 0 ? void 0 : _a.start);
|
|
15
20
|
return (react_1.default.createElement(react_1.default.Fragment, { key: JSON.stringify(chunk) },
|
|
16
21
|
react_1.default.createElement("span", { style: {
|
|
17
22
|
background: chunk.type === 'CDS' ? util_1.cdsColor : util_1.utrColor,
|
|
18
|
-
} },
|
|
19
|
-
|
|
23
|
+
} }, hasCds
|
|
24
|
+
? chunk.type === 'CDS'
|
|
25
|
+
? toUpper(sequence.slice(chunk.start, chunk.end))
|
|
26
|
+
: toLower(sequence.slice(chunk.start, chunk.end))
|
|
27
|
+
: toUpper(sequence.slice(chunk.start, chunk.end))),
|
|
28
|
+
includeIntrons && idx < chunks.length - 1 ? (react_1.default.createElement("span", { style: { background: util_1.intronColor } }, toLower(collapseIntron && intron.length > intronBp * 2
|
|
20
29
|
? `${intron.slice(0, intronBp)}...${intron.slice(-intronBp)}`
|
|
21
|
-
: intron)) : null));
|
|
30
|
+
: intron))) : null));
|
|
22
31
|
}),
|
|
23
|
-
downstream ? (react_1.default.createElement("span", { style: { background: util_1.updownstreamColor } }, downstream)) : null));
|
|
24
|
-
}
|
|
32
|
+
downstream ? (react_1.default.createElement("span", { style: { background: util_1.updownstreamColor } }, toLower(downstream))) : null));
|
|
33
|
+
});
|
|
25
34
|
exports.default = CDNASequence;
|
|
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
|
-
const util_1 = require("
|
|
8
|
-
const util_2 = require("
|
|
7
|
+
const util_1 = require("../util");
|
|
8
|
+
const util_2 = require("../../util");
|
|
9
9
|
function CDSSequence({ cds, sequence, }) {
|
|
10
10
|
return react_1.default.createElement("span", { style: { background: util_1.cdsColor } }, (0, util_2.stitch)(cds, sequence));
|
|
11
11
|
}
|
package/BaseFeatureWidget/SequenceFeatureDetails/{GenomicSequence.js → seqtypes/GenomicSequence.js}
RENAMED
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
|
-
const util_1 = require("
|
|
7
|
+
const util_1 = require("../util");
|
|
8
8
|
function GenomicSequence({ sequence, upstream, downstream, }) {
|
|
9
9
|
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
10
10
|
upstream ? (react_1.default.createElement("span", { style: { background: util_1.updownstreamColor } }, upstream)) : null,
|
package/BaseFeatureWidget/SequenceFeatureDetails/{ProteinSequence.js → seqtypes/ProteinSequence.js}
RENAMED
|
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const react_1 = __importDefault(require("react"));
|
|
7
|
-
const util_1 = require("
|
|
8
|
-
const util_2 = require("
|
|
7
|
+
const util_1 = require("../../util");
|
|
8
|
+
const util_2 = require("../util");
|
|
9
9
|
function ProteinSequence({ cds, sequence, codonTable, }) {
|
|
10
10
|
const str = (0, util_1.stitch)(cds, sequence);
|
|
11
11
|
let protein = '';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Instance } from 'mobx-state-tree';
|
|
1
2
|
import PluginManager from '../PluginManager';
|
|
2
3
|
/**
|
|
3
4
|
* #stateModel BaseFeatureWidget
|
|
@@ -47,6 +48,20 @@ export declare function stateModelFactory(pluginManager: PluginManager): import(
|
|
|
47
48
|
* #property
|
|
48
49
|
*/
|
|
49
50
|
maxDepth: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
51
|
+
/**
|
|
52
|
+
* #property
|
|
53
|
+
*/
|
|
54
|
+
sequenceFeatureDetails: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IModelType<{}, {
|
|
55
|
+
intronBp: number;
|
|
56
|
+
upDownBp: number;
|
|
57
|
+
upperCaseCDS: boolean;
|
|
58
|
+
} & {
|
|
59
|
+
setUpDownBp(f: number): void;
|
|
60
|
+
setIntronBp(f: number): void;
|
|
61
|
+
setUpperCaseCDS(f: boolean): void;
|
|
62
|
+
} & {
|
|
63
|
+
afterAttach(): void;
|
|
64
|
+
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>;
|
|
50
65
|
}, {
|
|
51
66
|
error: unknown;
|
|
52
67
|
} & {
|
|
@@ -113,6 +128,20 @@ export declare function stateModelFactory(pluginManager: PluginManager): import(
|
|
|
113
128
|
* #property
|
|
114
129
|
*/
|
|
115
130
|
maxDepth: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
131
|
+
/**
|
|
132
|
+
* #property
|
|
133
|
+
*/
|
|
134
|
+
sequenceFeatureDetails: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IModelType<{}, {
|
|
135
|
+
intronBp: number;
|
|
136
|
+
upDownBp: number;
|
|
137
|
+
upperCaseCDS: boolean;
|
|
138
|
+
} & {
|
|
139
|
+
setUpDownBp(f: number): void;
|
|
140
|
+
setIntronBp(f: number): void;
|
|
141
|
+
setUpperCaseCDS(f: boolean): void;
|
|
142
|
+
} & {
|
|
143
|
+
afterAttach(): void;
|
|
144
|
+
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>;
|
|
116
145
|
}>>, {
|
|
117
146
|
id: string;
|
|
118
147
|
type: "BaseFeatureWidget";
|
|
@@ -122,5 +151,8 @@ export declare function stateModelFactory(pluginManager: PluginManager): import(
|
|
|
122
151
|
trackType: string | undefined;
|
|
123
152
|
maxDepth: number | undefined;
|
|
124
153
|
formattedFields: any;
|
|
154
|
+
sequenceFeatureDetails: import("mobx-state-tree").ModelSnapshotType<{}>;
|
|
125
155
|
finalizedFeatureData: any;
|
|
126
156
|
}>;
|
|
157
|
+
export type BaseFeatureWidgetStateModel = ReturnType<typeof stateModelFactory>;
|
|
158
|
+
export type BaseFeatureWidgetModel = Instance<BaseFeatureWidgetStateModel>;
|
|
@@ -10,6 +10,7 @@ const clone_1 = __importDefault(require("clone"));
|
|
|
10
10
|
const configuration_1 = require("../configuration");
|
|
11
11
|
const util_1 = require("../util");
|
|
12
12
|
const mst_1 = require("../util/types/mst");
|
|
13
|
+
const model_1 = require("./SequenceFeatureDetails/model");
|
|
13
14
|
function formatSubfeatures(obj, depth, parse, currentDepth = 0, returnObj = {}) {
|
|
14
15
|
var _a;
|
|
15
16
|
if (depth <= currentDepth) {
|
|
@@ -70,6 +71,10 @@ function stateModelFactory(pluginManager) {
|
|
|
70
71
|
* #property
|
|
71
72
|
*/
|
|
72
73
|
maxDepth: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.number),
|
|
74
|
+
/**
|
|
75
|
+
* #property
|
|
76
|
+
*/
|
|
77
|
+
sequenceFeatureDetails: mobx_state_tree_1.types.optional((0, model_1.SequenceFeatureDetailsF)(), {}),
|
|
73
78
|
})
|
|
74
79
|
.volatile(() => ({
|
|
75
80
|
error: undefined,
|
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { IAnyStateTreeNode } from 'mobx-state-tree';
|
|
3
2
|
import { SimpleFeatureSerialized } from '../util/simpleFeature';
|
|
4
|
-
import {
|
|
3
|
+
import { BaseFeatureWidgetModel } from './stateModelFactory';
|
|
5
4
|
export interface BaseProps extends BaseCardProps {
|
|
6
5
|
feature: SimpleFeatureSerialized;
|
|
7
6
|
formatter?: (val: unknown, key: string) => React.ReactNode;
|
|
8
7
|
descriptions?: Record<string, React.ReactNode>;
|
|
9
|
-
model?:
|
|
10
|
-
view?: AbstractViewModel & {
|
|
11
|
-
assemblyNames?: string[];
|
|
12
|
-
};
|
|
13
|
-
};
|
|
8
|
+
model?: BaseFeatureWidgetModel;
|
|
14
9
|
}
|
|
15
10
|
export interface BaseCardProps {
|
|
16
11
|
title?: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export interface Feat {
|
|
2
2
|
start: number;
|
|
3
3
|
end: number;
|
|
4
|
-
type
|
|
4
|
+
type?: string;
|
|
5
5
|
name?: string;
|
|
6
6
|
id?: string;
|
|
7
7
|
}
|
|
@@ -25,7 +25,7 @@ export declare function dedupe(list: Feat[]): Feat[];
|
|
|
25
25
|
export declare function revlist(list: Feat[], seqlen: number): {
|
|
26
26
|
start: number;
|
|
27
27
|
end: number;
|
|
28
|
-
type
|
|
28
|
+
type?: string | undefined;
|
|
29
29
|
name?: string | undefined;
|
|
30
30
|
id?: string | undefined;
|
|
31
31
|
}[];
|
|
@@ -33,6 +33,8 @@ export declare function calculateUTRs(cds: Feat[], exons: Feat[]): {
|
|
|
33
33
|
type: string;
|
|
34
34
|
start: number;
|
|
35
35
|
end: number;
|
|
36
|
+
name?: string | undefined;
|
|
37
|
+
id?: string | undefined;
|
|
36
38
|
}[];
|
|
37
39
|
export declare function calculateUTRs2(cds: Feat[], parentFeat: Feat): {
|
|
38
40
|
type: string;
|
package/PluginLoader.d.ts
CHANGED
|
@@ -55,7 +55,7 @@ export default class PluginLoader {
|
|
|
55
55
|
default: PluginConstructor;
|
|
56
56
|
}>;
|
|
57
57
|
loadPlugin(def: PluginDefinition, baseUri?: string): Promise<PluginConstructor>;
|
|
58
|
-
installGlobalReExports(target: WindowOrWorkerGlobalScope):
|
|
58
|
+
installGlobalReExports(target: WindowOrWorkerGlobalScope): this;
|
|
59
59
|
load(baseUri?: string): Promise<{
|
|
60
60
|
plugin: PluginConstructor;
|
|
61
61
|
definition: PluginDefinition;
|
package/PluginLoader.js
CHANGED
|
@@ -152,6 +152,7 @@ class PluginLoader {
|
|
|
152
152
|
target.JBrowseExports = Object.fromEntries(Object.entries(ReExports_1.default).map(([moduleName, module]) => {
|
|
153
153
|
return [moduleName, module];
|
|
154
154
|
}));
|
|
155
|
+
return this;
|
|
155
156
|
}
|
|
156
157
|
async load(baseUri) {
|
|
157
158
|
return Promise.all(this.definitions.map(async (definition) => ({
|
package/PluginManager.d.ts
CHANGED
|
@@ -17,8 +17,6 @@ import ReExports from './ReExports';
|
|
|
17
17
|
import { PluggableElementType, PluggableElementMember } from './pluggableElementTypes';
|
|
18
18
|
import { AbstractRootModel } from './util';
|
|
19
19
|
import { PluginDefinition } from './PluginLoader';
|
|
20
|
-
/** little helper class that keeps groups of callbacks that are
|
|
21
|
-
then run in a specified order by group */
|
|
22
20
|
declare class PhasedScheduler<PhaseName extends string> {
|
|
23
21
|
phaseCallbacks: Map<PhaseName, Function[]>;
|
|
24
22
|
phaseOrder: PhaseName[];
|
|
@@ -44,11 +42,11 @@ declare class TypeRecord<ElementClass extends PluggableElementBase> {
|
|
|
44
42
|
}
|
|
45
43
|
type AnyFunction = (...args: any) => any;
|
|
46
44
|
/**
|
|
47
|
-
* free-form string-to-unknown mapping of metadata related to the instance
|
|
48
|
-
*
|
|
49
|
-
* loaded as part of the "core" set of plugins for this application.
|
|
50
|
-
*
|
|
51
|
-
*
|
|
45
|
+
* free-form string-to-unknown mapping of metadata related to the instance of
|
|
46
|
+
* this plugin. `isCore` is typically set to `Boolean(true)` if the plugin was
|
|
47
|
+
* loaded as part of the "core" set of plugins for this application. Can also
|
|
48
|
+
* use this metadata to stash other things about why the plugin is loaded, such
|
|
49
|
+
* as where it came from, what plugin depends on it, etc.
|
|
52
50
|
*/
|
|
53
51
|
export type PluginMetadata = Record<string, unknown>;
|
|
54
52
|
export interface PluginLoadRecord {
|
|
@@ -232,7 +230,7 @@ export default class PluginManager {
|
|
|
232
230
|
'@mui/x-data-grid': {
|
|
233
231
|
useGridApiContext: typeof import("@mui/x-data-grid").useGridApiContext;
|
|
234
232
|
useGridApiRef: <Api extends import("@mui/x-data-grid").GridApiCommon<any, any> = import("@mui/x-data-grid/internals").GridApiCommunity>() => import("react").MutableRefObject<Api>;
|
|
235
|
-
useGridRootProps: () => import("@mui/x-data-grid/
|
|
233
|
+
useGridRootProps: () => import("@mui/x-data-grid/internals").DataGridProcessedProps<any>;
|
|
236
234
|
};
|
|
237
235
|
'@mui/material/utils': typeof import("@mui/material/utils");
|
|
238
236
|
'@material-ui/core/utils': typeof import("@mui/material/utils");
|
|
@@ -260,8 +258,14 @@ export default class PluginManager {
|
|
|
260
258
|
useTheme: typeof import("@mui/material").useTheme;
|
|
261
259
|
};
|
|
262
260
|
'prop-types': typeof import("prop-types");
|
|
263
|
-
'@mui/material/styles':
|
|
264
|
-
|
|
261
|
+
'@mui/material/styles': {
|
|
262
|
+
MUIStyles: typeof import("@mui/material/styles");
|
|
263
|
+
makeStyles: (args: any) => () => Record<string, string>;
|
|
264
|
+
};
|
|
265
|
+
'@material-ui/core/styles': {
|
|
266
|
+
MUIStyles: typeof import("@mui/material/styles");
|
|
267
|
+
makeStyles: (args: any) => () => Record<string, string>;
|
|
268
|
+
};
|
|
265
269
|
};
|
|
266
270
|
load: <FTYPE extends AnyFunction>(lib: FTYPE) => ReturnType<FTYPE>;
|
|
267
271
|
/**
|
package/PluginManager.js
CHANGED
|
@@ -19,8 +19,8 @@ const configuration_1 = require("./configuration");
|
|
|
19
19
|
const ReExports_1 = __importDefault(require("./ReExports"));
|
|
20
20
|
const CorePlugin_1 = __importDefault(require("./CorePlugin"));
|
|
21
21
|
const jexl_1 = __importDefault(require("./util/jexl"));
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
// helper class that keeps groups of callbacks that are then run in a specified
|
|
23
|
+
// order by group
|
|
24
24
|
class PhasedScheduler {
|
|
25
25
|
constructor(...phaseOrder) {
|
|
26
26
|
this.phaseCallbacks = new Map();
|
|
@@ -119,7 +119,12 @@ class PluginManager {
|
|
|
119
119
|
throw new TypeError('lib passed to jbrequire must be either a string or a function');
|
|
120
120
|
};
|
|
121
121
|
// add the core plugin
|
|
122
|
-
this.addPlugin({
|
|
122
|
+
this.addPlugin({
|
|
123
|
+
plugin: new CorePlugin_1.default(),
|
|
124
|
+
metadata: {
|
|
125
|
+
isCore: true,
|
|
126
|
+
},
|
|
127
|
+
});
|
|
123
128
|
// add all the initial plugins
|
|
124
129
|
initialPlugins.forEach(plugin => {
|
|
125
130
|
this.addPlugin(plugin);
|
package/ReExports/modules.d.ts
CHANGED
|
@@ -138,7 +138,7 @@ declare const libs: {
|
|
|
138
138
|
'@mui/x-data-grid': {
|
|
139
139
|
useGridApiContext: typeof useGridApiContext;
|
|
140
140
|
useGridApiRef: <Api extends import("@mui/x-data-grid").GridApiCommon<any, any> = import("@mui/x-data-grid/internals").GridApiCommunity>() => React.MutableRefObject<Api>;
|
|
141
|
-
useGridRootProps: () => import("@mui/x-data-grid/
|
|
141
|
+
useGridRootProps: () => import("@mui/x-data-grid/internals").DataGridProcessedProps<any>;
|
|
142
142
|
};
|
|
143
143
|
'@mui/material/utils': typeof MUIUtils;
|
|
144
144
|
'@material-ui/core/utils': typeof MUIUtils;
|
|
@@ -166,7 +166,13 @@ declare const libs: {
|
|
|
166
166
|
useTheme: typeof MUIStyles.useTheme;
|
|
167
167
|
};
|
|
168
168
|
'prop-types': typeof PropTypes;
|
|
169
|
-
'@mui/material/styles':
|
|
170
|
-
|
|
169
|
+
'@mui/material/styles': {
|
|
170
|
+
MUIStyles: typeof MUIStyles;
|
|
171
|
+
makeStyles: (args: any) => () => Record<string, string>;
|
|
172
|
+
};
|
|
173
|
+
'@material-ui/core/styles': {
|
|
174
|
+
MUIStyles: typeof MUIStyles;
|
|
175
|
+
makeStyles: (args: any) => () => Record<string, string>;
|
|
176
|
+
};
|
|
171
177
|
};
|
|
172
178
|
export default libs;
|
package/ReExports/modules.js
CHANGED
|
@@ -295,9 +295,6 @@ const DataGridEntries = {
|
|
|
295
295
|
GridPanelWrapper: (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('@mui/x-data-grid'))).then(module => ({
|
|
296
296
|
default: module.GridPanelWrapper,
|
|
297
297
|
}))),
|
|
298
|
-
GridPreferencesPanel: (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('@mui/x-data-grid'))).then(module => ({
|
|
299
|
-
default: module.GridPreferencesPanel,
|
|
300
|
-
}))),
|
|
301
298
|
GridRemoveIcon: (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('@mui/x-data-grid'))).then(module => ({
|
|
302
299
|
default: module.GridRemoveIcon,
|
|
303
300
|
}))),
|
|
@@ -405,8 +402,22 @@ const libs = {
|
|
|
405
402
|
'prop-types': prop_types_1.default,
|
|
406
403
|
// end special case
|
|
407
404
|
// material-ui subcomponents, should get rid of these
|
|
408
|
-
'@mui/material/styles':
|
|
409
|
-
|
|
405
|
+
'@mui/material/styles': {
|
|
406
|
+
MUIStyles,
|
|
407
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
408
|
+
makeStyles: (args) => {
|
|
409
|
+
const useStyles = (0, mui_1.makeStyles)()(args);
|
|
410
|
+
return () => useStyles().classes;
|
|
411
|
+
},
|
|
412
|
+
},
|
|
413
|
+
'@material-ui/core/styles': {
|
|
414
|
+
MUIStyles,
|
|
415
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
416
|
+
makeStyles: (args) => {
|
|
417
|
+
const useStyles = (0, mui_1.makeStyles)()(args);
|
|
418
|
+
return () => useStyles().classes;
|
|
419
|
+
},
|
|
420
|
+
},
|
|
410
421
|
...MaterialPrefixMUI,
|
|
411
422
|
...MuiPrefixMUI,
|
|
412
423
|
// these are core in @mui/material, but used to be in @material-ui/lab
|
|
@@ -28,10 +28,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
const pluggableElementTypes_1 = require("../../pluggableElementTypes");
|
|
30
30
|
const configSchema_1 = __importDefault(require("./configSchema"));
|
|
31
|
-
|
|
31
|
+
function CytobandAdapterF(pluginManager) {
|
|
32
32
|
pluginManager.addAdapterType(() => new pluggableElementTypes_1.AdapterType({
|
|
33
33
|
name: 'CytobandAdapter',
|
|
34
34
|
configSchema: configSchema_1.default,
|
|
35
35
|
getAdapterClass: () => Promise.resolve().then(() => __importStar(require('./CytobandAdapter'))).then(f => f.default),
|
|
36
36
|
}));
|
|
37
|
-
}
|
|
37
|
+
}
|
|
38
|
+
exports.default = CytobandAdapterF;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jbrowse/core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.11.1",
|
|
4
4
|
"description": "JBrowse 2 core libraries used by plugins",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jbrowse",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
},
|
|
59
59
|
"peerDependencies": {
|
|
60
60
|
"@mui/material": "^5.0.0",
|
|
61
|
-
"@mui/x-data-grid": "^
|
|
61
|
+
"@mui/x-data-grid": "^7.0.0",
|
|
62
62
|
"mobx": "^6.0.0",
|
|
63
63
|
"mobx-react": "^9.0.0",
|
|
64
64
|
"mobx-state-tree": "^5.0.0",
|
|
@@ -72,5 +72,5 @@
|
|
|
72
72
|
"access": "public",
|
|
73
73
|
"directory": "dist"
|
|
74
74
|
},
|
|
75
|
-
"gitHead": "
|
|
75
|
+
"gitHead": "11b28d66d782eb06f92ccb993108bb6c3c82819e"
|
|
76
76
|
}
|
|
@@ -10,6 +10,7 @@ export declare function getCompatibleDisplays(self: IAnyStateTreeNode): ({
|
|
|
10
10
|
/**
|
|
11
11
|
* #stateModel BaseTrackModel
|
|
12
12
|
* #category track
|
|
13
|
+
*
|
|
13
14
|
* these MST models only exist for tracks that are *shown*. they should contain
|
|
14
15
|
* only UI state for the track, and have a reference to a track configuration.
|
|
15
16
|
* note that multiple displayed tracks could use the same configuration.
|
|
@@ -20,6 +20,7 @@ exports.getCompatibleDisplays = getCompatibleDisplays;
|
|
|
20
20
|
/**
|
|
21
21
|
* #stateModel BaseTrackModel
|
|
22
22
|
* #category track
|
|
23
|
+
*
|
|
23
24
|
* these MST models only exist for tracks that are *shown*. they should contain
|
|
24
25
|
* only UI state for the track, and have a reference to a track configuration.
|
|
25
26
|
* note that multiple displayed tracks could use the same configuration.
|
|
@@ -97,7 +98,7 @@ function createBaseTrackModel(pm, trackType, baseTrackConfig) {
|
|
|
97
98
|
const { sessionTracks, adminMode } = session;
|
|
98
99
|
return ((0, types_1.isSessionModelWithConfigEditing)(session) &&
|
|
99
100
|
(adminMode ||
|
|
100
|
-
(sessionTracks === null || sessionTracks === void 0 ? void 0 : sessionTracks.find(
|
|
101
|
+
(sessionTracks === null || sessionTracks === void 0 ? void 0 : sessionTracks.find(t => { var _a; return t.trackId === ((_a = self.configuration) === null || _a === void 0 ? void 0 : _a.trackId); }))));
|
|
101
102
|
},
|
|
102
103
|
}))
|
|
103
104
|
.actions(self => ({
|
|
@@ -156,6 +156,7 @@ export declare const InternetAccount: import("mobx-state-tree").IModelType<{
|
|
|
156
156
|
keepalive?: boolean | undefined;
|
|
157
157
|
method?: string | undefined;
|
|
158
158
|
mode?: RequestMode | undefined;
|
|
159
|
+
priority?: RequestPriority | undefined;
|
|
159
160
|
redirect?: RequestRedirect | undefined;
|
|
160
161
|
referrer?: string | undefined;
|
|
161
162
|
referrerPolicy?: ReferrerPolicy | undefined;
|
package/rpc/BaseRpcDriver.js
CHANGED
|
@@ -12,6 +12,7 @@ function isClonable(thing) {
|
|
|
12
12
|
// the worker times out
|
|
13
13
|
async function watchWorker(worker, pingTime, rpcDriverClassName) {
|
|
14
14
|
// after first ping succeeds, apply wait for timeout
|
|
15
|
+
// eslint-disable-next-line no-constant-condition
|
|
15
16
|
while (true) {
|
|
16
17
|
await worker.call('ping', [], {
|
|
17
18
|
timeout: pingTime * 2,
|