@jbrowse/plugin-arc 2.17.0 → 2.18.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/ArcRenderer/ArcRendering.d.ts +2 -2
- package/dist/ArcRenderer/ArcRendering.js +0 -2
- package/dist/ArcRenderer/configSchema.d.ts +0 -18
- package/dist/ArcRenderer/configSchema.js +1 -22
- package/dist/ArcRenderer/index.d.ts +1 -1
- package/dist/ArcRenderer/index.js +1 -1
- package/dist/ArcTooltip.js +1 -1
- package/dist/LinearArcDisplay/configSchema.d.ts +1 -7
- package/dist/LinearArcDisplay/configSchema.js +1 -10
- package/dist/LinearArcDisplay/index.d.ts +1 -1
- package/dist/LinearArcDisplay/model.d.ts +12 -81
- package/dist/LinearArcDisplay/model.js +2 -40
- package/dist/LinearPairedArcDisplay/afterAttach.d.ts +1 -1
- package/dist/LinearPairedArcDisplay/afterAttach.js +1 -1
- package/dist/LinearPairedArcDisplay/components/Arcs.d.ts +1 -1
- package/dist/LinearPairedArcDisplay/components/Arcs.js +2 -2
- package/dist/LinearPairedArcDisplay/components/BaseDisplayComponent.d.ts +1 -1
- package/dist/LinearPairedArcDisplay/components/BaseDisplayComponent.js +4 -5
- package/dist/LinearPairedArcDisplay/components/ReactComponent.d.ts +1 -1
- package/dist/LinearPairedArcDisplay/components/ReactComponent.js +1 -1
- package/dist/LinearPairedArcDisplay/components/util.d.ts +1 -1
- package/dist/LinearPairedArcDisplay/components/util.js +0 -6
- package/dist/LinearPairedArcDisplay/configSchema.d.ts +0 -6
- package/dist/LinearPairedArcDisplay/configSchema.js +0 -9
- package/dist/LinearPairedArcDisplay/fetchChains.d.ts +1 -1
- package/dist/LinearPairedArcDisplay/fetchChains.js +1 -2
- package/dist/LinearPairedArcDisplay/index.d.ts +1 -1
- package/dist/LinearPairedArcDisplay/index.js +1 -1
- package/dist/LinearPairedArcDisplay/model.d.ts +8 -52
- package/dist/LinearPairedArcDisplay/model.js +2 -41
- package/dist/LinearPairedArcDisplay/renderSvg.d.ts +1 -1
- package/dist/LinearPairedArcDisplay/util.d.ts +4 -4
- package/dist/LinearPairedArcDisplay/util.js +3 -14
- package/dist/index.d.ts +1 -1
- package/dist/index.js +3 -3
- package/esm/ArcRenderer/ArcRendering.d.ts +2 -2
- package/esm/ArcRenderer/ArcRendering.js +2 -4
- package/esm/ArcRenderer/configSchema.d.ts +0 -18
- package/esm/ArcRenderer/configSchema.js +1 -22
- package/esm/ArcRenderer/index.d.ts +1 -1
- package/esm/ArcRenderer/index.js +1 -1
- package/esm/ArcTooltip.js +1 -1
- package/esm/LinearArcDisplay/configSchema.d.ts +1 -7
- package/esm/LinearArcDisplay/configSchema.js +1 -10
- package/esm/LinearArcDisplay/index.d.ts +1 -1
- package/esm/LinearArcDisplay/model.d.ts +12 -81
- package/esm/LinearArcDisplay/model.js +3 -41
- package/esm/LinearPairedArcDisplay/afterAttach.d.ts +1 -1
- package/esm/LinearPairedArcDisplay/afterAttach.js +1 -1
- package/esm/LinearPairedArcDisplay/components/Arcs.d.ts +1 -1
- package/esm/LinearPairedArcDisplay/components/Arcs.js +3 -3
- package/esm/LinearPairedArcDisplay/components/BaseDisplayComponent.d.ts +1 -1
- package/esm/LinearPairedArcDisplay/components/BaseDisplayComponent.js +4 -5
- package/esm/LinearPairedArcDisplay/components/ReactComponent.d.ts +1 -1
- package/esm/LinearPairedArcDisplay/components/ReactComponent.js +1 -1
- package/esm/LinearPairedArcDisplay/components/util.d.ts +1 -1
- package/esm/LinearPairedArcDisplay/components/util.js +0 -6
- package/esm/LinearPairedArcDisplay/configSchema.d.ts +0 -6
- package/esm/LinearPairedArcDisplay/configSchema.js +0 -9
- package/esm/LinearPairedArcDisplay/fetchChains.d.ts +1 -1
- package/esm/LinearPairedArcDisplay/fetchChains.js +1 -2
- package/esm/LinearPairedArcDisplay/index.d.ts +1 -1
- package/esm/LinearPairedArcDisplay/index.js +1 -1
- package/esm/LinearPairedArcDisplay/model.d.ts +8 -52
- package/esm/LinearPairedArcDisplay/model.js +3 -42
- package/esm/LinearPairedArcDisplay/renderSvg.d.ts +1 -1
- package/esm/LinearPairedArcDisplay/util.d.ts +4 -4
- package/esm/LinearPairedArcDisplay/util.js +3 -14
- package/esm/index.d.ts +1 -1
- package/esm/index.js +3 -3
- package/package.json +2 -2
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
import { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
2
|
-
/**
|
|
3
|
-
* #stateModel LinearArcDisplay
|
|
4
|
-
* extends
|
|
5
|
-
* - [BaseLinearDisplay](../baselineardisplay)
|
|
6
|
-
*/
|
|
1
|
+
import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
7
2
|
export declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): import("mobx-state-tree").IModelType<{
|
|
8
3
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
9
4
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
@@ -16,21 +11,12 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
16
11
|
} & {
|
|
17
12
|
blockState: import("mobx-state-tree").IMapType<import("mobx-state-tree").IModelType<{
|
|
18
13
|
key: import("mobx-state-tree").ISimpleType<string>;
|
|
19
|
-
region: import("mobx-state-tree").
|
|
20
|
-
refName: import("mobx-state-tree").ISimpleType<string>;
|
|
21
|
-
start: import("mobx-state-tree").ISimpleType<number>;
|
|
22
|
-
end: import("mobx-state-tree").ISimpleType<number>;
|
|
23
|
-
reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
24
|
-
} & {
|
|
25
|
-
assemblyName: import("mobx-state-tree").ISimpleType<string>;
|
|
26
|
-
}, {
|
|
27
|
-
setRefName(newRefName: string): void;
|
|
28
|
-
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|
|
14
|
+
region: import("mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
|
|
29
15
|
reloadFlag: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
30
16
|
isLeftEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
31
17
|
isRightEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
32
18
|
}, {
|
|
33
|
-
|
|
19
|
+
stopToken: string | undefined;
|
|
34
20
|
filled: boolean;
|
|
35
21
|
reactElement: React.ReactElement | undefined;
|
|
36
22
|
features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
|
|
@@ -54,15 +40,9 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
54
40
|
doReload(): void;
|
|
55
41
|
afterAttach(): void;
|
|
56
42
|
setStatus(message: string): void;
|
|
57
|
-
setLoading(
|
|
43
|
+
setLoading(newStopToken: string): void;
|
|
58
44
|
setMessage(messageText: string): void;
|
|
59
|
-
setRendered(props:
|
|
60
|
-
reactElement: React.ReactElement;
|
|
61
|
-
features: Map<string, import("@jbrowse/core/util").Feature>;
|
|
62
|
-
layout: any;
|
|
63
|
-
maxHeightReached: boolean;
|
|
64
|
-
renderProps: any;
|
|
65
|
-
} | undefined): void;
|
|
45
|
+
setRendered(props: import("@jbrowse/plugin-linear-genome-view/src/BaseLinearDisplay/models/serverSideRenderedBlock").RenderedProps | undefined): void;
|
|
66
46
|
setError(error: unknown): void;
|
|
67
47
|
reload(): void;
|
|
68
48
|
beforeDestroy(): void;
|
|
@@ -96,17 +76,8 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
96
76
|
};
|
|
97
77
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "displayId">>;
|
|
98
78
|
} & {
|
|
99
|
-
/**
|
|
100
|
-
* #property
|
|
101
|
-
*/
|
|
102
79
|
type: import("mobx-state-tree").ISimpleType<"LinearArcDisplay">;
|
|
103
|
-
/**
|
|
104
|
-
* #property
|
|
105
|
-
*/
|
|
106
80
|
configuration: AnyConfigurationSchemaType;
|
|
107
|
-
/**
|
|
108
|
-
* #property
|
|
109
|
-
*/
|
|
110
81
|
displayMode: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
111
82
|
}, {
|
|
112
83
|
rendererTypeName: string;
|
|
@@ -118,9 +89,7 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
118
89
|
id: string;
|
|
119
90
|
type: string;
|
|
120
91
|
rpcDriverName: string | undefined;
|
|
121
|
-
} & import("mobx-state-tree/dist/internal"
|
|
122
|
-
* #getter
|
|
123
|
-
*/).NonEmptyObject & {
|
|
92
|
+
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
124
93
|
rendererTypeName: string;
|
|
125
94
|
error: unknown;
|
|
126
95
|
message: string | undefined;
|
|
@@ -199,6 +168,7 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
199
168
|
readonly regionTooLarge: boolean;
|
|
200
169
|
readonly regionTooLargeReason: string;
|
|
201
170
|
} & {
|
|
171
|
+
readonly statsReadyAndRegionNotTooLarge: boolean;
|
|
202
172
|
regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
|
|
203
173
|
regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react").JSX.Element | null;
|
|
204
174
|
} & {
|
|
@@ -236,27 +206,12 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
236
206
|
renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react").JSX.Element>;
|
|
237
207
|
afterAttach(): void;
|
|
238
208
|
} & {
|
|
239
|
-
/**
|
|
240
|
-
* #getter
|
|
241
|
-
*/
|
|
242
209
|
readonly blockType: string;
|
|
243
|
-
/**
|
|
244
|
-
* #getter
|
|
245
|
-
*/
|
|
246
210
|
readonly renderDelay: number;
|
|
247
|
-
/**
|
|
248
|
-
* #getter
|
|
249
|
-
*/
|
|
250
211
|
readonly rendererTypeName: any;
|
|
251
212
|
} & {
|
|
252
|
-
/**
|
|
253
|
-
* #getter
|
|
254
|
-
*/
|
|
255
213
|
readonly displayModeSetting: any;
|
|
256
214
|
} & {
|
|
257
|
-
/**
|
|
258
|
-
* #getter
|
|
259
|
-
*/
|
|
260
215
|
readonly rendererConfig: {
|
|
261
216
|
[x: string]: any;
|
|
262
217
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
@@ -269,19 +224,10 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
269
224
|
} & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>);
|
|
270
225
|
} & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>;
|
|
271
226
|
} & {
|
|
272
|
-
/**
|
|
273
|
-
* #method
|
|
274
|
-
*/
|
|
275
227
|
renderProps(): any;
|
|
276
228
|
} & {
|
|
277
|
-
/**
|
|
278
|
-
* #action
|
|
279
|
-
*/
|
|
280
229
|
setDisplayMode(flag: string): void;
|
|
281
230
|
} & {
|
|
282
|
-
/**
|
|
283
|
-
* #method
|
|
284
|
-
*/
|
|
285
231
|
trackMenuItems(): (import("@jbrowse/core/ui").MenuDivider | import("@jbrowse/core/ui").MenuSubHeader | import("@jbrowse/core/ui").NormalMenuItem | import("@jbrowse/core/ui").CheckboxMenuItem | import("@jbrowse/core/ui").RadioMenuItem | import("@jbrowse/core/ui").SubMenuItem | {
|
|
286
232
|
label: string;
|
|
287
233
|
subMenu: {
|
|
@@ -305,21 +251,12 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
305
251
|
} & {
|
|
306
252
|
blockState: import("mobx-state-tree").IMapType<import("mobx-state-tree").IModelType<{
|
|
307
253
|
key: import("mobx-state-tree").ISimpleType<string>;
|
|
308
|
-
region: import("mobx-state-tree").
|
|
309
|
-
refName: import("mobx-state-tree").ISimpleType<string>;
|
|
310
|
-
start: import("mobx-state-tree").ISimpleType<number>;
|
|
311
|
-
end: import("mobx-state-tree").ISimpleType<number>;
|
|
312
|
-
reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
313
|
-
} & {
|
|
314
|
-
assemblyName: import("mobx-state-tree").ISimpleType<string>;
|
|
315
|
-
}, {
|
|
316
|
-
setRefName(newRefName: string): void;
|
|
317
|
-
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|
|
254
|
+
region: import("mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
|
|
318
255
|
reloadFlag: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
319
256
|
isLeftEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
320
257
|
isRightEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
321
258
|
}, {
|
|
322
|
-
|
|
259
|
+
stopToken: string | undefined;
|
|
323
260
|
filled: boolean;
|
|
324
261
|
reactElement: React.ReactElement | undefined;
|
|
325
262
|
features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
|
|
@@ -343,15 +280,9 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
343
280
|
doReload(): void;
|
|
344
281
|
afterAttach(): void;
|
|
345
282
|
setStatus(message: string): void;
|
|
346
|
-
setLoading(
|
|
283
|
+
setLoading(newStopToken: string): void;
|
|
347
284
|
setMessage(messageText: string): void;
|
|
348
|
-
setRendered(props:
|
|
349
|
-
reactElement: React.ReactElement;
|
|
350
|
-
features: Map<string, import("@jbrowse/core/util").Feature>;
|
|
351
|
-
layout: any;
|
|
352
|
-
maxHeightReached: boolean;
|
|
353
|
-
renderProps: any;
|
|
354
|
-
} | undefined): void;
|
|
285
|
+
setRendered(props: import("@jbrowse/plugin-linear-genome-view/src/BaseLinearDisplay/models/serverSideRenderedBlock").RenderedProps | undefined): void;
|
|
355
286
|
setError(error: unknown): void;
|
|
356
287
|
reload(): void;
|
|
357
288
|
beforeDestroy(): void;
|
|
@@ -388,8 +319,8 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
388
319
|
type: string;
|
|
389
320
|
id: string;
|
|
390
321
|
configuration: import("mobx-state-tree").ModelSnapshotType<Record<string, any>>;
|
|
391
|
-
heightPreConfig: number | undefined;
|
|
392
322
|
rpcDriverName: string | undefined;
|
|
323
|
+
heightPreConfig: number | undefined;
|
|
393
324
|
userBpPerPxLimit: number | undefined;
|
|
394
325
|
userByteSizeLimit: number | undefined;
|
|
395
326
|
} & import("mobx-state-tree")._NotCustomized>;
|
|
@@ -1,61 +1,32 @@
|
|
|
1
|
-
import { ConfigurationReference, getConf
|
|
2
|
-
import { types } from 'mobx-state-tree';
|
|
3
|
-
import { BaseLinearDisplay } from '@jbrowse/plugin-linear-genome-view';
|
|
1
|
+
import { ConfigurationReference, getConf } from '@jbrowse/core/configuration';
|
|
4
2
|
import { getEnv } from '@jbrowse/core/util';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
* extends
|
|
8
|
-
* - [BaseLinearDisplay](../baselineardisplay)
|
|
9
|
-
*/
|
|
3
|
+
import { BaseLinearDisplay } from '@jbrowse/plugin-linear-genome-view';
|
|
4
|
+
import { types } from 'mobx-state-tree';
|
|
10
5
|
export function stateModelFactory(configSchema) {
|
|
11
6
|
return types
|
|
12
7
|
.compose('LinearArcDisplay', BaseLinearDisplay, types.model({
|
|
13
|
-
/**
|
|
14
|
-
* #property
|
|
15
|
-
*/
|
|
16
8
|
type: types.literal('LinearArcDisplay'),
|
|
17
|
-
/**
|
|
18
|
-
* #property
|
|
19
|
-
*/
|
|
20
9
|
configuration: ConfigurationReference(configSchema),
|
|
21
|
-
/**
|
|
22
|
-
* #property
|
|
23
|
-
*/
|
|
24
10
|
displayMode: types.maybe(types.string),
|
|
25
11
|
}))
|
|
26
12
|
.views(self => ({
|
|
27
|
-
/**
|
|
28
|
-
* #getter
|
|
29
|
-
*/
|
|
30
13
|
get blockType() {
|
|
31
14
|
return 'staticBlocks';
|
|
32
15
|
},
|
|
33
|
-
/**
|
|
34
|
-
* #getter
|
|
35
|
-
*/
|
|
36
16
|
get renderDelay() {
|
|
37
17
|
return 500;
|
|
38
18
|
},
|
|
39
|
-
/**
|
|
40
|
-
* #getter
|
|
41
|
-
*/
|
|
42
19
|
get rendererTypeName() {
|
|
43
20
|
return self.configuration.renderer.type;
|
|
44
21
|
},
|
|
45
22
|
}))
|
|
46
23
|
.views(self => ({
|
|
47
|
-
/**
|
|
48
|
-
* #getter
|
|
49
|
-
*/
|
|
50
24
|
get displayModeSetting() {
|
|
51
25
|
var _a;
|
|
52
26
|
return (_a = self.displayMode) !== null && _a !== void 0 ? _a : getConf(self, ['renderer', 'displayMode']);
|
|
53
27
|
},
|
|
54
28
|
}))
|
|
55
29
|
.views(self => ({
|
|
56
|
-
/**
|
|
57
|
-
* #getter
|
|
58
|
-
*/
|
|
59
30
|
get rendererConfig() {
|
|
60
31
|
const configBlob = getConf(self, ['renderer']) || {};
|
|
61
32
|
const config = configBlob;
|
|
@@ -68,9 +39,6 @@ export function stateModelFactory(configSchema) {
|
|
|
68
39
|
.views(self => {
|
|
69
40
|
const { renderProps: superRenderProps } = self;
|
|
70
41
|
return {
|
|
71
|
-
/**
|
|
72
|
-
* #method
|
|
73
|
-
*/
|
|
74
42
|
renderProps() {
|
|
75
43
|
return {
|
|
76
44
|
...superRenderProps(),
|
|
@@ -82,9 +50,6 @@ export function stateModelFactory(configSchema) {
|
|
|
82
50
|
};
|
|
83
51
|
})
|
|
84
52
|
.actions(self => ({
|
|
85
|
-
/**
|
|
86
|
-
* #action
|
|
87
|
-
*/
|
|
88
53
|
setDisplayMode(flag) {
|
|
89
54
|
self.displayMode = flag;
|
|
90
55
|
},
|
|
@@ -92,9 +57,6 @@ export function stateModelFactory(configSchema) {
|
|
|
92
57
|
.views(self => {
|
|
93
58
|
const superMenuItems = self.trackMenuItems;
|
|
94
59
|
return {
|
|
95
|
-
/**
|
|
96
|
-
* #method
|
|
97
|
-
*/
|
|
98
60
|
trackMenuItems() {
|
|
99
61
|
return [
|
|
100
62
|
...superMenuItems(),
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { IAnyStateTreeNode } from 'mobx-state-tree';
|
|
1
|
+
import type { IAnyStateTreeNode } from 'mobx-state-tree';
|
|
2
2
|
export declare function doAfterAttach<T extends IAnyStateTreeNode>(self: T): void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
import { observer } from 'mobx-react';
|
|
3
|
-
import { getContainingView, getSession, getStrokeProps, } from '@jbrowse/core/util';
|
|
1
|
+
import React, { Suspense, lazy, useRef, useState } from 'react';
|
|
4
2
|
import { getConf } from '@jbrowse/core/configuration';
|
|
3
|
+
import { getContainingView, getSession, getStrokeProps, } from '@jbrowse/core/util';
|
|
4
|
+
import { observer } from 'mobx-react';
|
|
5
5
|
import { makeFeaturePair, makeSummary } from './util';
|
|
6
6
|
const ArcTooltip = lazy(() => import('../../ArcTooltip'));
|
|
7
7
|
const Arc = observer(function ({ model, feature, alt, assembly, view, }) {
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import React, { lazy } from 'react';
|
|
2
|
-
import { IconButton, Tooltip } from '@mui/material';
|
|
3
2
|
import { LoadingEllipses } from '@jbrowse/core/ui';
|
|
3
|
+
import { getSession } from '@jbrowse/core/util';
|
|
4
4
|
import { BlockMsg } from '@jbrowse/plugin-linear-genome-view';
|
|
5
|
-
import { makeStyles } from 'tss-react/mui';
|
|
6
|
-
import { observer } from 'mobx-react';
|
|
7
|
-
// icons
|
|
8
5
|
import RefreshIcon from '@mui/icons-material/Refresh';
|
|
9
6
|
import ReportIcon from '@mui/icons-material/Report';
|
|
10
|
-
import {
|
|
7
|
+
import { IconButton, Tooltip } from '@mui/material';
|
|
8
|
+
import { observer } from 'mobx-react';
|
|
9
|
+
import { makeStyles } from 'tss-react/mui';
|
|
11
10
|
const ErrorMessageStackTraceDialog = lazy(() => import('@jbrowse/core/ui/ErrorMessageStackTraceDialog'));
|
|
12
11
|
const useStyles = makeStyles()(theme => ({
|
|
13
12
|
loading: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { observer } from 'mobx-react';
|
|
3
|
-
import BaseDisplayComponent from './BaseDisplayComponent';
|
|
4
3
|
import Arcs from './Arcs';
|
|
4
|
+
import BaseDisplayComponent from './BaseDisplayComponent';
|
|
5
5
|
const LinearArcReactComponent = observer(function ({ model, exportSVG, }) {
|
|
6
6
|
return (React.createElement(BaseDisplayComponent, { model: model },
|
|
7
7
|
React.createElement(Arcs, { model: model, exportSVG: exportSVG })));
|
|
@@ -13,19 +13,13 @@ export function makeFeaturePair(feature, alt) {
|
|
|
13
13
|
let mateStart = 0;
|
|
14
14
|
let joinDirection = 0;
|
|
15
15
|
let mateDirection = 0;
|
|
16
|
-
// one sided bracket used, because there could be <INS:ME> and we just check
|
|
17
|
-
// startswith below
|
|
18
16
|
const symbolicAlleles = ['<TRA', '<DEL', '<INV', '<INS', '<DUP', '<CNV'];
|
|
19
17
|
if (symbolicAlleles.some(a => alt === null || alt === void 0 ? void 0 : alt.startsWith(a))) {
|
|
20
|
-
// END is defined to be a single value, not an array. CHR2 not defined in
|
|
21
|
-
// VCF spec, but should be similar
|
|
22
18
|
const info = feature.get('INFO');
|
|
23
19
|
const e = (_b = (_a = info === null || info === void 0 ? void 0 : info.END) === null || _a === void 0 ? void 0 : _a[0]) !== null && _b !== void 0 ? _b : end;
|
|
24
20
|
mateRefName = (_d = (_c = info === null || info === void 0 ? void 0 : info.CHR2) === null || _c === void 0 ? void 0 : _c[0]) !== null && _d !== void 0 ? _d : refName;
|
|
25
21
|
mateEnd = e;
|
|
26
22
|
mateStart = e - 1;
|
|
27
|
-
// re-adjust the arc to be from start to end of feature by re-assigning end
|
|
28
|
-
// to the 'mate'
|
|
29
23
|
end = start + 1;
|
|
30
24
|
}
|
|
31
25
|
else if (bnd === null || bnd === void 0 ? void 0 : bnd.MatePosition) {
|
|
@@ -1,13 +1,7 @@
|
|
|
1
1
|
import { ConfigurationSchema } from '@jbrowse/core/configuration';
|
|
2
2
|
import { baseLinearDisplayConfigSchema } from '@jbrowse/plugin-linear-genome-view';
|
|
3
|
-
/**
|
|
4
|
-
* #config LinearPairedArcDisplay
|
|
5
|
-
*/
|
|
6
3
|
export function configSchemaFactory() {
|
|
7
4
|
return ConfigurationSchema('LinearPairedArcDisplay', {
|
|
8
|
-
/**
|
|
9
|
-
* #slot
|
|
10
|
-
*/
|
|
11
5
|
color: {
|
|
12
6
|
type: 'color',
|
|
13
7
|
description: 'the color of the arcs',
|
|
@@ -15,9 +9,6 @@ export function configSchemaFactory() {
|
|
|
15
9
|
contextVariable: ['feature', 'alt'],
|
|
16
10
|
},
|
|
17
11
|
}, {
|
|
18
|
-
/**
|
|
19
|
-
* #baseConfiguration
|
|
20
|
-
*/
|
|
21
12
|
baseConfiguration: baseLinearDisplayConfigSchema,
|
|
22
13
|
explicitlyTyped: true,
|
|
23
14
|
});
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { dedupe, getContainingTrack, getContainingView, getSession, } from '@jbrowse/core/util';
|
|
2
2
|
export async function fetchChains(self) {
|
|
3
|
-
// @ts-expect-error
|
|
4
3
|
const { rpcSessionId: sessionId } = getContainingTrack(self);
|
|
5
4
|
const { rpcManager } = getSession(self);
|
|
6
5
|
const view = getContainingView(self);
|
|
7
|
-
if (!view.initialized || self.error || self.
|
|
6
|
+
if (!view.initialized || self.error || !self.statsReadyAndRegionNotTooLarge) {
|
|
8
7
|
return;
|
|
9
8
|
}
|
|
10
9
|
self.setLoading(true);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
2
|
export default function LinearPairedArcDisplayF(pluginManager: PluginManager): void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { lazy } from 'react';
|
|
1
2
|
import { DisplayType } from '@jbrowse/core/pluggableElementTypes';
|
|
2
3
|
import { configSchemaFactory } from './configSchema';
|
|
3
4
|
import { stateModelFactory } from './model';
|
|
4
|
-
import { lazy } from 'react';
|
|
5
5
|
export default function LinearPairedArcDisplayF(pluginManager) {
|
|
6
6
|
pluginManager.addDisplayType(() => {
|
|
7
7
|
const configSchema = configSchemaFactory();
|
|
@@ -1,17 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
/**
|
|
6
|
-
* #stateModel LinearPairedArcDisplay
|
|
7
|
-
* this is a non-block-based track type, and can connect arcs across multiple
|
|
8
|
-
* displayedRegions
|
|
9
|
-
*
|
|
10
|
-
* extends
|
|
11
|
-
* - [BaseDisplay](../basedisplay)
|
|
12
|
-
* - [TrackHeightMixin](../trackheightmixin)
|
|
13
|
-
* - [FeatureDensityMixin](../featuredensitymixin)
|
|
14
|
-
*/
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
3
|
+
import type { Feature } from '@jbrowse/core/util';
|
|
4
|
+
import type { Instance } from 'mobx-state-tree';
|
|
15
5
|
export declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): import("mobx-state-tree").IModelType<{
|
|
16
6
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
17
7
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
@@ -22,17 +12,8 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
22
12
|
userBpPerPxLimit: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
23
13
|
userByteSizeLimit: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
24
14
|
} & {
|
|
25
|
-
/**
|
|
26
|
-
* #property
|
|
27
|
-
*/
|
|
28
15
|
type: import("mobx-state-tree").ISimpleType<"LinearPairedArcDisplay">;
|
|
29
|
-
/**
|
|
30
|
-
* #property
|
|
31
|
-
*/
|
|
32
16
|
configuration: AnyConfigurationSchemaType;
|
|
33
|
-
/**
|
|
34
|
-
* #property
|
|
35
|
-
*/
|
|
36
17
|
displayMode: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
37
18
|
}, {
|
|
38
19
|
rendererTypeName: string;
|
|
@@ -49,22 +30,14 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
49
30
|
error: unknown;
|
|
50
31
|
message: string | undefined;
|
|
51
32
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
52
|
-
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree"
|
|
53
|
-
* #property
|
|
54
|
-
*/).ISimpleType<string>, [undefined]>;
|
|
33
|
+
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
55
34
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
56
|
-
rpcDriverName: import("mobx-state-tree").IMaybe<import(
|
|
57
|
-
/**
|
|
58
|
-
* #getter
|
|
59
|
-
*/
|
|
60
|
-
"mobx-state-tree").ISimpleType<string>>;
|
|
35
|
+
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
61
36
|
}, {
|
|
62
37
|
rendererTypeName: string;
|
|
63
38
|
error: unknown;
|
|
64
39
|
message: string | undefined;
|
|
65
|
-
}, import("mobx-state-tree"
|
|
66
|
-
* #action
|
|
67
|
-
*/)._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
40
|
+
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
68
41
|
onHorizontalScroll?: () => void;
|
|
69
42
|
blockState?: Record<string, any>;
|
|
70
43
|
}>;
|
|
@@ -131,6 +104,7 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
131
104
|
readonly regionTooLarge: boolean;
|
|
132
105
|
readonly regionTooLargeReason: string;
|
|
133
106
|
} & {
|
|
107
|
+
readonly statsReadyAndRegionNotTooLarge: boolean;
|
|
134
108
|
regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
|
|
135
109
|
regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): React.JSX.Element | null;
|
|
136
110
|
} & {
|
|
@@ -139,32 +113,14 @@ export declare function stateModelFactory(configSchema: AnyConfigurationSchemaTy
|
|
|
139
113
|
loading: boolean;
|
|
140
114
|
drawn: boolean;
|
|
141
115
|
} & {
|
|
142
|
-
/**
|
|
143
|
-
* #getter
|
|
144
|
-
*/
|
|
145
116
|
readonly displayModeSetting: any;
|
|
146
117
|
} & {
|
|
147
|
-
/**
|
|
148
|
-
* #action
|
|
149
|
-
*/
|
|
150
118
|
selectFeature(feature: Feature): void;
|
|
151
|
-
/**
|
|
152
|
-
* #action
|
|
153
|
-
*/
|
|
154
119
|
setLoading(flag: boolean): void;
|
|
155
|
-
/**
|
|
156
|
-
* #action
|
|
157
|
-
*/
|
|
158
120
|
setFeatures(f: Feature[]): void;
|
|
159
|
-
/**
|
|
160
|
-
* #action
|
|
161
|
-
*/
|
|
162
121
|
setDisplayMode(flag: string): void;
|
|
163
122
|
} & {
|
|
164
123
|
afterAttach(): void;
|
|
165
|
-
/**
|
|
166
|
-
* #action
|
|
167
|
-
*/
|
|
168
124
|
renderSvg(opts: {
|
|
169
125
|
rasterizeLayers?: boolean;
|
|
170
126
|
}): Promise<React.ReactNode>;
|
|
@@ -1,32 +1,13 @@
|
|
|
1
|
-
import { ConfigurationReference, getConf
|
|
2
|
-
import { types } from 'mobx-state-tree';
|
|
3
|
-
import { getSession, isSessionModelWithWidgets, getContainingView, getContainingTrack, isSelectionContainer, } from '@jbrowse/core/util';
|
|
1
|
+
import { ConfigurationReference, getConf } from '@jbrowse/core/configuration';
|
|
4
2
|
import { BaseDisplay } from '@jbrowse/core/pluggableElementTypes';
|
|
3
|
+
import { getContainingTrack, getContainingView, getSession, isSelectionContainer, isSessionModelWithWidgets, } from '@jbrowse/core/util';
|
|
5
4
|
import { FeatureDensityMixin, TrackHeightMixin, } from '@jbrowse/plugin-linear-genome-view';
|
|
6
|
-
|
|
7
|
-
* #stateModel LinearPairedArcDisplay
|
|
8
|
-
* this is a non-block-based track type, and can connect arcs across multiple
|
|
9
|
-
* displayedRegions
|
|
10
|
-
*
|
|
11
|
-
* extends
|
|
12
|
-
* - [BaseDisplay](../basedisplay)
|
|
13
|
-
* - [TrackHeightMixin](../trackheightmixin)
|
|
14
|
-
* - [FeatureDensityMixin](../featuredensitymixin)
|
|
15
|
-
*/
|
|
5
|
+
import { types } from 'mobx-state-tree';
|
|
16
6
|
export function stateModelFactory(configSchema) {
|
|
17
7
|
return types
|
|
18
8
|
.compose('LinearPairedArcDisplay', BaseDisplay, TrackHeightMixin(), FeatureDensityMixin(), types.model({
|
|
19
|
-
/**
|
|
20
|
-
* #property
|
|
21
|
-
*/
|
|
22
9
|
type: types.literal('LinearPairedArcDisplay'),
|
|
23
|
-
/**
|
|
24
|
-
* #property
|
|
25
|
-
*/
|
|
26
10
|
configuration: ConfigurationReference(configSchema),
|
|
27
|
-
/**
|
|
28
|
-
* #property
|
|
29
|
-
*/
|
|
30
11
|
displayMode: types.maybe(types.string),
|
|
31
12
|
}))
|
|
32
13
|
.volatile(() => ({
|
|
@@ -36,18 +17,12 @@ export function stateModelFactory(configSchema) {
|
|
|
36
17
|
drawn: true,
|
|
37
18
|
}))
|
|
38
19
|
.views(self => ({
|
|
39
|
-
/**
|
|
40
|
-
* #getter
|
|
41
|
-
*/
|
|
42
20
|
get displayModeSetting() {
|
|
43
21
|
var _a;
|
|
44
22
|
return (_a = self.displayMode) !== null && _a !== void 0 ? _a : getConf(self, ['renderer', 'displayMode']);
|
|
45
23
|
},
|
|
46
24
|
}))
|
|
47
25
|
.actions(self => ({
|
|
48
|
-
/**
|
|
49
|
-
* #action
|
|
50
|
-
*/
|
|
51
26
|
selectFeature(feature) {
|
|
52
27
|
const session = getSession(self);
|
|
53
28
|
if (isSessionModelWithWidgets(session)) {
|
|
@@ -62,28 +37,18 @@ export function stateModelFactory(configSchema) {
|
|
|
62
37
|
session.setSelection(feature);
|
|
63
38
|
}
|
|
64
39
|
},
|
|
65
|
-
/**
|
|
66
|
-
* #action
|
|
67
|
-
*/
|
|
68
40
|
setLoading(flag) {
|
|
69
41
|
self.loading = flag;
|
|
70
42
|
},
|
|
71
|
-
/**
|
|
72
|
-
* #action
|
|
73
|
-
*/
|
|
74
43
|
setFeatures(f) {
|
|
75
44
|
self.features = f;
|
|
76
45
|
},
|
|
77
|
-
/**
|
|
78
|
-
* #action
|
|
79
|
-
*/
|
|
80
46
|
setDisplayMode(flag) {
|
|
81
47
|
self.displayMode = flag;
|
|
82
48
|
},
|
|
83
49
|
}))
|
|
84
50
|
.actions(self => ({
|
|
85
51
|
afterAttach() {
|
|
86
|
-
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
87
52
|
;
|
|
88
53
|
(async () => {
|
|
89
54
|
try {
|
|
@@ -96,12 +61,8 @@ export function stateModelFactory(configSchema) {
|
|
|
96
61
|
}
|
|
97
62
|
})();
|
|
98
63
|
},
|
|
99
|
-
/**
|
|
100
|
-
* #action
|
|
101
|
-
*/
|
|
102
64
|
async renderSvg(opts) {
|
|
103
65
|
const { renderArcSvg } = await import('./renderSvg');
|
|
104
|
-
// @ts-expect-error
|
|
105
66
|
return renderArcSvg(self, opts);
|
|
106
67
|
},
|
|
107
68
|
}));
|