@jbrowse/plugin-alignments 2.10.1 → 2.10.3
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/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -2
- package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +10 -113
- package/dist/AlignmentsFeatureDetail/BreakendOptionDialog.d.ts +12 -0
- package/dist/AlignmentsFeatureDetail/BreakendOptionDialog.js +89 -0
- package/dist/AlignmentsFeatureDetail/Formatter.d.ts +4 -0
- package/dist/AlignmentsFeatureDetail/Formatter.js +47 -0
- package/dist/AlignmentsFeatureDetail/LaunchBreakpointSplitViewPanel.d.ts +9 -0
- package/dist/AlignmentsFeatureDetail/LaunchBreakpointSplitViewPanel.js +92 -0
- package/dist/AlignmentsFeatureDetail/PairLink.d.ts +6 -0
- package/dist/AlignmentsFeatureDetail/PairLink.js +16 -0
- package/dist/AlignmentsFeatureDetail/SuppAlignments.d.ts +8 -0
- package/dist/AlignmentsFeatureDetail/SuppAlignments.js +26 -0
- package/dist/AlignmentsFeatureDetail/SuppAlignmentsLocStrings.d.ts +6 -0
- package/dist/AlignmentsFeatureDetail/{AlignmentsFeatureSuppAligns.js → SuppAlignmentsLocStrings.js} +8 -7
- package/dist/AlignmentsFeatureDetail/configSchema.d.ts +1 -0
- package/dist/AlignmentsFeatureDetail/configSchema.js +5 -0
- package/dist/AlignmentsFeatureDetail/getSAFeatures.d.ts +23 -0
- package/dist/AlignmentsFeatureDetail/getSAFeatures.js +41 -0
- package/dist/AlignmentsFeatureDetail/index.d.ts +1 -50
- package/dist/AlignmentsFeatureDetail/index.js +6 -17
- package/dist/AlignmentsFeatureDetail/launchBreakpointSplitView.d.ts +22 -0
- package/dist/AlignmentsFeatureDetail/launchBreakpointSplitView.js +50 -0
- package/dist/AlignmentsFeatureDetail/stateModelFactory.d.ts +51 -0
- package/dist/AlignmentsFeatureDetail/stateModelFactory.js +12 -0
- package/dist/AlignmentsFeatureDetail/tagInfo.d.ts +63 -0
- package/dist/AlignmentsFeatureDetail/tagInfo.js +66 -0
- package/dist/BamAdapter/BamAdapter.js +10 -9
- package/dist/CramAdapter/CramAdapter.js +17 -19
- package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +38 -24
- package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +8 -8
- package/dist/LinearPileupDisplay/model.d.ts +24 -26
- package/dist/LinearPileupDisplay/model.js +4 -4
- package/dist/LinearReadArcsDisplay/model.d.ts +8 -8
- package/dist/LinearReadArcsDisplay/model.js +2 -2
- package/dist/LinearReadCloudDisplay/model.d.ts +13 -7
- package/dist/LinearReadCloudDisplay/model.js +2 -2
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +5 -2
- package/dist/LinearSNPCoverageDisplay/models/model.d.ts +11 -2
- package/dist/shared/BaseDisplayComponent.js +3 -1
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -2
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +12 -92
- package/esm/AlignmentsFeatureDetail/BreakendOptionDialog.d.ts +12 -0
- package/esm/AlignmentsFeatureDetail/BreakendOptionDialog.js +64 -0
- package/esm/AlignmentsFeatureDetail/Formatter.d.ts +4 -0
- package/esm/AlignmentsFeatureDetail/Formatter.js +18 -0
- package/esm/AlignmentsFeatureDetail/LaunchBreakpointSplitViewPanel.d.ts +9 -0
- package/esm/AlignmentsFeatureDetail/LaunchBreakpointSplitViewPanel.js +66 -0
- package/esm/AlignmentsFeatureDetail/PairLink.d.ts +6 -0
- package/esm/AlignmentsFeatureDetail/PairLink.js +10 -0
- package/esm/AlignmentsFeatureDetail/SuppAlignments.d.ts +8 -0
- package/esm/AlignmentsFeatureDetail/SuppAlignments.js +20 -0
- package/esm/AlignmentsFeatureDetail/SuppAlignmentsLocStrings.d.ts +6 -0
- package/esm/AlignmentsFeatureDetail/{AlignmentsFeatureSuppAligns.js → SuppAlignmentsLocStrings.js} +7 -6
- package/esm/AlignmentsFeatureDetail/configSchema.d.ts +1 -0
- package/esm/AlignmentsFeatureDetail/configSchema.js +2 -0
- package/esm/AlignmentsFeatureDetail/getSAFeatures.d.ts +23 -0
- package/esm/AlignmentsFeatureDetail/getSAFeatures.js +37 -0
- package/esm/AlignmentsFeatureDetail/index.d.ts +1 -50
- package/esm/AlignmentsFeatureDetail/index.js +4 -13
- package/esm/AlignmentsFeatureDetail/launchBreakpointSplitView.d.ts +22 -0
- package/esm/AlignmentsFeatureDetail/launchBreakpointSplitView.js +46 -0
- package/esm/AlignmentsFeatureDetail/stateModelFactory.d.ts +51 -0
- package/esm/AlignmentsFeatureDetail/stateModelFactory.js +8 -0
- package/esm/AlignmentsFeatureDetail/tagInfo.d.ts +63 -0
- package/esm/AlignmentsFeatureDetail/tagInfo.js +63 -0
- package/esm/BamAdapter/BamAdapter.js +10 -9
- package/esm/CramAdapter/CramAdapter.js +18 -20
- package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +38 -24
- package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +8 -8
- package/esm/LinearPileupDisplay/model.d.ts +24 -26
- package/esm/LinearPileupDisplay/model.js +4 -4
- package/esm/LinearReadArcsDisplay/model.d.ts +8 -8
- package/esm/LinearReadArcsDisplay/model.js +2 -2
- package/esm/LinearReadCloudDisplay/model.d.ts +13 -7
- package/esm/LinearReadCloudDisplay/model.js +2 -2
- package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +5 -2
- package/esm/LinearSNPCoverageDisplay/models/model.d.ts +11 -2
- package/esm/shared/BaseDisplayComponent.js +3 -1
- package/package.json +2 -2
- package/dist/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.d.ts +0 -6
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.d.ts +0 -6
- /package/dist/AlignmentsFeatureDetail/{AlignmentsFeatureFlags.d.ts → Flags.d.ts} +0 -0
- /package/dist/AlignmentsFeatureDetail/{AlignmentsFeatureFlags.js → Flags.js} +0 -0
- /package/esm/AlignmentsFeatureDetail/{AlignmentsFeatureFlags.d.ts → Flags.d.ts} +0 -0
- /package/esm/AlignmentsFeatureDetail/{AlignmentsFeatureFlags.js → Flags.js} +0 -0
|
@@ -46,28 +46,32 @@ export declare function SharedLinearPileupDisplayMixin(configSchema: AnyConfigur
|
|
|
46
46
|
message: string | undefined;
|
|
47
47
|
maxHeightReached: boolean;
|
|
48
48
|
ReactComponent: ({ model, }: {
|
|
49
|
-
model:
|
|
50
|
-
|
|
49
|
+
model: {
|
|
50
|
+
error?: unknown;
|
|
51
|
+
reload: () => void;
|
|
52
|
+
message: import("react").ReactNode;
|
|
53
|
+
filled?: boolean | undefined;
|
|
54
|
+
status?: string | undefined;
|
|
55
|
+
reactElement?: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
|
|
56
|
+
};
|
|
57
|
+
}) => import("react").JSX.Element | undefined;
|
|
51
58
|
renderProps: any;
|
|
52
59
|
} & {
|
|
53
60
|
doReload(): void;
|
|
54
61
|
afterAttach(): void;
|
|
55
62
|
setStatus(message: string): void;
|
|
56
63
|
setLoading(abortController: AbortController): void;
|
|
57
|
-
setMessage(messageText: string): void;
|
|
64
|
+
setMessage(messageText: string): void; /**
|
|
65
|
+
* #action
|
|
66
|
+
*/
|
|
58
67
|
setRendered(props: {
|
|
59
68
|
reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
60
|
-
/**
|
|
61
|
-
* #action
|
|
62
|
-
*/
|
|
63
69
|
features: Map<string, Feature>;
|
|
64
70
|
layout: any;
|
|
65
71
|
maxHeightReached: boolean;
|
|
66
72
|
renderProps: any;
|
|
67
73
|
} | undefined): void;
|
|
68
|
-
setError(error: unknown): void;
|
|
69
|
-
* #action
|
|
70
|
-
*/
|
|
74
|
+
setError(error: unknown): void;
|
|
71
75
|
reload(): void;
|
|
72
76
|
beforeDestroy(): void;
|
|
73
77
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
@@ -173,11 +177,11 @@ export declare function SharedLinearPileupDisplayMixin(configSchema: AnyConfigur
|
|
|
173
177
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
174
178
|
rendererTypeName: string;
|
|
175
179
|
error: unknown;
|
|
176
|
-
message: string | undefined;
|
|
177
|
-
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
178
|
-
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>; /**
|
|
180
|
+
message: string | undefined; /**
|
|
179
181
|
* #property
|
|
180
182
|
*/
|
|
183
|
+
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
184
|
+
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
181
185
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
182
186
|
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
183
187
|
}, {
|
|
@@ -220,7 +224,9 @@ export declare function SharedLinearPileupDisplayMixin(configSchema: AnyConfigur
|
|
|
220
224
|
} & {
|
|
221
225
|
afterAttach(): void;
|
|
222
226
|
} & {
|
|
223
|
-
setCurrStatsBpPerPx(n: number): void;
|
|
227
|
+
setCurrStatsBpPerPx(n: number): void; /**
|
|
228
|
+
* #property
|
|
229
|
+
*/
|
|
224
230
|
setFeatureDensityStatsLimit(stats?: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | undefined): void;
|
|
225
231
|
getFeatureDensityStats(): Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats>;
|
|
226
232
|
setFeatureDensityStatsP(arg: any): void;
|
|
@@ -241,13 +247,17 @@ export declare function SharedLinearPileupDisplayMixin(configSchema: AnyConfigur
|
|
|
241
247
|
} & {
|
|
242
248
|
readonly renderDelay: number;
|
|
243
249
|
readonly TooltipComponent: import("react").FC<any>;
|
|
244
|
-
readonly selectedFeatureId: string | undefined;
|
|
250
|
+
readonly selectedFeatureId: string | undefined; /**
|
|
251
|
+
* #action
|
|
252
|
+
*/
|
|
245
253
|
readonly DisplayMessageComponent: import("react").FC<any> | undefined;
|
|
246
254
|
} & {
|
|
247
255
|
readonly features: import("@jbrowse/core/util/compositeMap").default<string, Feature>;
|
|
248
256
|
readonly featureUnderMouse: Feature | undefined;
|
|
249
257
|
getFeatureOverlapping(blockKey: string, x: number, y: number): string | undefined;
|
|
250
|
-
getFeatureByID(blockKey: string, id: string): [number, number, number, number] | undefined;
|
|
258
|
+
getFeatureByID(blockKey: string, id: string): [number, number, number, number] | undefined; /**
|
|
259
|
+
* #action
|
|
260
|
+
*/
|
|
251
261
|
searchFeatureByID(id: string): [number, number, number, number] | undefined;
|
|
252
262
|
} & {
|
|
253
263
|
addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
|
|
@@ -450,28 +460,32 @@ export declare function SharedLinearPileupDisplayMixin(configSchema: AnyConfigur
|
|
|
450
460
|
message: string | undefined;
|
|
451
461
|
maxHeightReached: boolean;
|
|
452
462
|
ReactComponent: ({ model, }: {
|
|
453
|
-
model:
|
|
454
|
-
|
|
463
|
+
model: {
|
|
464
|
+
error?: unknown;
|
|
465
|
+
reload: () => void;
|
|
466
|
+
message: import("react").ReactNode;
|
|
467
|
+
filled?: boolean | undefined;
|
|
468
|
+
status?: string | undefined;
|
|
469
|
+
reactElement?: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
|
|
470
|
+
};
|
|
471
|
+
}) => import("react").JSX.Element | undefined;
|
|
455
472
|
renderProps: any;
|
|
456
473
|
} & {
|
|
457
474
|
doReload(): void;
|
|
458
475
|
afterAttach(): void;
|
|
459
476
|
setStatus(message: string): void;
|
|
460
477
|
setLoading(abortController: AbortController): void;
|
|
461
|
-
setMessage(messageText: string): void;
|
|
478
|
+
setMessage(messageText: string): void; /**
|
|
479
|
+
* #action
|
|
480
|
+
*/
|
|
462
481
|
setRendered(props: {
|
|
463
482
|
reactElement: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
|
|
464
|
-
/**
|
|
465
|
-
* #action
|
|
466
|
-
*/
|
|
467
483
|
features: Map<string, Feature>;
|
|
468
484
|
layout: any;
|
|
469
485
|
maxHeightReached: boolean;
|
|
470
486
|
renderProps: any;
|
|
471
487
|
} | undefined): void;
|
|
472
|
-
setError(error: unknown): void;
|
|
473
|
-
* #action
|
|
474
|
-
*/
|
|
488
|
+
setError(error: unknown): void;
|
|
475
489
|
reload(): void;
|
|
476
490
|
beforeDestroy(): void;
|
|
477
491
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
@@ -17,10 +17,10 @@ import { getUniqueTagValues, FilterModel } from '../shared';
|
|
|
17
17
|
import { createAutorun } from '../util';
|
|
18
18
|
import { ColorByModel } from '../shared/color';
|
|
19
19
|
// async
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const
|
|
20
|
+
const FilterByTagDialog = lazy(() => import('../shared/FilterByTag'));
|
|
21
|
+
const ColorByTagDialog = lazy(() => import('./components/ColorByTag'));
|
|
22
|
+
const SetFeatureHeightDialog = lazy(() => import('./components/SetFeatureHeight'));
|
|
23
|
+
const SetMaxHeightDialog = lazy(() => import('./components/SetMaxHeight'));
|
|
24
24
|
// using a map because it preserves order
|
|
25
25
|
const rendererTypes = new Map([
|
|
26
26
|
['pileup', 'PileupRenderer'],
|
|
@@ -392,7 +392,7 @@ export function SharedLinearPileupDisplayMixin(configSchema) {
|
|
|
392
392
|
label: 'Color by tag...',
|
|
393
393
|
onClick: () => {
|
|
394
394
|
getSession(self).queueDialog(doneCallback => [
|
|
395
|
-
|
|
395
|
+
ColorByTagDialog,
|
|
396
396
|
{ model: self, handleClose: doneCallback },
|
|
397
397
|
]);
|
|
398
398
|
},
|
|
@@ -410,7 +410,7 @@ export function SharedLinearPileupDisplayMixin(configSchema) {
|
|
|
410
410
|
icon: FilterListIcon,
|
|
411
411
|
onClick: () => {
|
|
412
412
|
getSession(self).queueDialog(doneCallback => [
|
|
413
|
-
|
|
413
|
+
FilterByTagDialog,
|
|
414
414
|
{ model: self, handleClose: doneCallback },
|
|
415
415
|
]);
|
|
416
416
|
},
|
|
@@ -436,7 +436,7 @@ export function SharedLinearPileupDisplayMixin(configSchema) {
|
|
|
436
436
|
label: 'Manually set height',
|
|
437
437
|
onClick: () => {
|
|
438
438
|
getSession(self).queueDialog(doneCallback => [
|
|
439
|
-
|
|
439
|
+
SetFeatureHeightDialog,
|
|
440
440
|
{ model: self, handleClose: doneCallback },
|
|
441
441
|
]);
|
|
442
442
|
},
|
|
@@ -447,7 +447,7 @@ export function SharedLinearPileupDisplayMixin(configSchema) {
|
|
|
447
447
|
label: 'Set max height...',
|
|
448
448
|
onClick: () => {
|
|
449
449
|
getSession(self).queueDialog(doneCallback => [
|
|
450
|
-
|
|
450
|
+
SetMaxHeightDialog,
|
|
451
451
|
{ model: self, handleClose: doneCallback },
|
|
452
452
|
]);
|
|
453
453
|
},
|
|
@@ -43,11 +43,15 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
43
43
|
message: string | undefined;
|
|
44
44
|
maxHeightReached: boolean;
|
|
45
45
|
ReactComponent: ({ model, }: {
|
|
46
|
-
model:
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
46
|
+
model: {
|
|
47
|
+
error?: unknown;
|
|
48
|
+
reload: () => void;
|
|
49
|
+
message: import("react").ReactNode;
|
|
50
|
+
filled?: boolean | undefined;
|
|
51
|
+
status?: string | undefined;
|
|
52
|
+
reactElement?: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
|
|
53
|
+
};
|
|
54
|
+
}) => import("react").JSX.Element | undefined;
|
|
51
55
|
renderProps: any;
|
|
52
56
|
} & {
|
|
53
57
|
doReload(): void;
|
|
@@ -77,12 +81,6 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
77
81
|
defaultValue: number;
|
|
78
82
|
description: string;
|
|
79
83
|
};
|
|
80
|
-
/**
|
|
81
|
-
* #stateModel LinearPileupDisplay
|
|
82
|
-
* #category display
|
|
83
|
-
* extends
|
|
84
|
-
*- [SharedLinearPileupDisplayMixin](../sharedlinearpileupdisplaymixin)
|
|
85
|
-
*/
|
|
86
84
|
height: {
|
|
87
85
|
type: string;
|
|
88
86
|
defaultValue: number;
|
|
@@ -98,6 +96,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
98
96
|
} & {
|
|
99
97
|
configuration: AnyConfigurationSchemaType;
|
|
100
98
|
featureHeight: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
99
|
+
/**
|
|
100
|
+
* #action
|
|
101
|
+
*/
|
|
101
102
|
noSpacing: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<boolean>>;
|
|
102
103
|
fadeLikelihood: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<boolean>>;
|
|
103
104
|
trackMaxHeight: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
@@ -162,15 +163,15 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
162
163
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
163
164
|
rendererTypeName: string;
|
|
164
165
|
error: unknown;
|
|
165
|
-
message: string | undefined;
|
|
166
|
+
message: string | undefined; /**
|
|
167
|
+
* #action
|
|
168
|
+
*/
|
|
166
169
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
167
170
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
168
171
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
169
172
|
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
170
173
|
}, {
|
|
171
|
-
rendererTypeName: string;
|
|
172
|
-
* #action
|
|
173
|
-
*/
|
|
174
|
+
rendererTypeName: string;
|
|
174
175
|
error: unknown;
|
|
175
176
|
message: string | undefined;
|
|
176
177
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
@@ -184,7 +185,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
184
185
|
readonly viewMenuActions: import("@jbrowse/core/ui").MenuItem[];
|
|
185
186
|
regionCannotBeRendered(): null;
|
|
186
187
|
} & {
|
|
187
|
-
setMessage(arg?: string | undefined): void;
|
|
188
|
+
setMessage(arg?: string | undefined): void; /**
|
|
189
|
+
* #getter
|
|
190
|
+
*/
|
|
188
191
|
setError(error?: unknown): void;
|
|
189
192
|
setRpcDriverName(rpcDriverName: string): void;
|
|
190
193
|
reload(): void;
|
|
@@ -201,9 +204,7 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
201
204
|
featureDensityStats: import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | undefined;
|
|
202
205
|
currStatsBpPerPx: number;
|
|
203
206
|
} & {
|
|
204
|
-
readonly currentBytesRequested: number;
|
|
205
|
-
* #property
|
|
206
|
-
*/
|
|
207
|
+
readonly currentBytesRequested: number;
|
|
207
208
|
readonly currentFeatureScreenDensity: number;
|
|
208
209
|
readonly maxFeatureScreenDensity: any;
|
|
209
210
|
readonly featureDensityStatsReady: boolean;
|
|
@@ -224,18 +225,13 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
224
225
|
regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
|
|
225
226
|
regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react").JSX.Element | null;
|
|
226
227
|
} & {
|
|
227
|
-
featureIdUnderMouse: string | undefined;
|
|
228
|
-
* #action
|
|
229
|
-
*/
|
|
228
|
+
featureIdUnderMouse: string | undefined;
|
|
230
229
|
contextMenuFeature: import("@jbrowse/core/util").Feature | undefined;
|
|
231
230
|
} & {
|
|
232
231
|
readonly blockType: "dynamicBlocks" | "staticBlocks";
|
|
233
232
|
readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
|
|
234
233
|
} & {
|
|
235
234
|
readonly renderDelay: number;
|
|
236
|
-
/**
|
|
237
|
-
* #action
|
|
238
|
-
*/
|
|
239
235
|
readonly TooltipComponent: import("react").FC<any>;
|
|
240
236
|
readonly selectedFeatureId: string | undefined;
|
|
241
237
|
readonly DisplayMessageComponent: import("react").FC<any> | undefined;
|
|
@@ -263,7 +259,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
263
259
|
afterAttach(): void;
|
|
264
260
|
} & {
|
|
265
261
|
colorTagMap: import("mobx").ObservableMap<string, string>;
|
|
266
|
-
featureUnderMouseVolatile: import("@jbrowse/core/util").Feature | undefined;
|
|
262
|
+
featureUnderMouseVolatile: import("@jbrowse/core/util").Feature | undefined; /**
|
|
263
|
+
* #action
|
|
264
|
+
*/
|
|
267
265
|
tagsReady: boolean;
|
|
268
266
|
} & {
|
|
269
267
|
readonly autorunReady: boolean;
|
|
@@ -12,8 +12,8 @@ import SortIcon from '@mui/icons-material/Sort';
|
|
|
12
12
|
import { SharedLinearPileupDisplayMixin } from './SharedLinearPileupDisplayMixin';
|
|
13
13
|
import { observable } from 'mobx';
|
|
14
14
|
// async
|
|
15
|
-
const
|
|
16
|
-
const
|
|
15
|
+
const SortByTagDialog = lazy(() => import('./components/SortByTag'));
|
|
16
|
+
const ModificationsDialog = lazy(() => import('./components/ColorByModifications'));
|
|
17
17
|
/**
|
|
18
18
|
* #stateModel LinearPileupDisplay
|
|
19
19
|
* #category display
|
|
@@ -237,7 +237,7 @@ function stateModelFactory(configSchema) {
|
|
|
237
237
|
label: 'Sort by tag...',
|
|
238
238
|
onClick: () => {
|
|
239
239
|
getSession(self).queueDialog(handleClose => [
|
|
240
|
-
|
|
240
|
+
SortByTagDialog,
|
|
241
241
|
{ model: self, handleClose },
|
|
242
242
|
]);
|
|
243
243
|
},
|
|
@@ -259,7 +259,7 @@ function stateModelFactory(configSchema) {
|
|
|
259
259
|
label: 'Modifications or methylation',
|
|
260
260
|
onClick: () => {
|
|
261
261
|
getSession(self).queueDialog(doneCallback => [
|
|
262
|
-
|
|
262
|
+
ModificationsDialog,
|
|
263
263
|
{ model: self, handleClose: doneCallback },
|
|
264
264
|
]);
|
|
265
265
|
},
|
|
@@ -61,7 +61,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
61
61
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
62
62
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
63
63
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
64
|
-
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
64
|
+
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>; /**
|
|
65
|
+
* #property
|
|
66
|
+
*/
|
|
65
67
|
}, {
|
|
66
68
|
rendererTypeName: string;
|
|
67
69
|
error: unknown;
|
|
@@ -80,7 +82,9 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
80
82
|
error: unknown;
|
|
81
83
|
message: string | undefined;
|
|
82
84
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
83
|
-
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
85
|
+
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>; /**
|
|
86
|
+
* #action
|
|
87
|
+
*/
|
|
84
88
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
85
89
|
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
86
90
|
}, {
|
|
@@ -90,17 +94,13 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
90
94
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
91
95
|
}> | null;
|
|
92
96
|
readonly adapterConfig: any;
|
|
93
|
-
readonly parentTrack: any;
|
|
94
|
-
* #action
|
|
95
|
-
*/
|
|
97
|
+
readonly parentTrack: any;
|
|
96
98
|
renderProps(): any;
|
|
97
99
|
readonly rendererType: import("@jbrowse/core/pluggableElementTypes").RendererType;
|
|
98
100
|
readonly DisplayMessageComponent: React.FC<any> | undefined;
|
|
99
101
|
trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
|
|
100
102
|
readonly viewMenuActions: import("@jbrowse/core/ui").MenuItem[];
|
|
101
|
-
regionCannotBeRendered(): null;
|
|
102
|
-
* #getter
|
|
103
|
-
*/
|
|
103
|
+
regionCannotBeRendered(): null;
|
|
104
104
|
} & {
|
|
105
105
|
setMessage(arg?: string | undefined): void;
|
|
106
106
|
setError(error?: unknown): void; /**
|
|
@@ -10,7 +10,7 @@ import FilterListIcon from '@mui/icons-material/ClearAll';
|
|
|
10
10
|
// locals
|
|
11
11
|
import { FilterModel } from '../shared';
|
|
12
12
|
// async
|
|
13
|
-
const
|
|
13
|
+
const FilterByTagDialog = lazy(() => import('../shared/FilterByTag'));
|
|
14
14
|
/**
|
|
15
15
|
* #stateModel LinearReadArcsDisplay
|
|
16
16
|
* the arc display is a non-block-based track, so draws to a single canvas and
|
|
@@ -192,7 +192,7 @@ function stateModelFactory(configSchema) {
|
|
|
192
192
|
icon: FilterListIcon,
|
|
193
193
|
onClick: () => {
|
|
194
194
|
getSession(self).queueDialog(handleClose => [
|
|
195
|
-
|
|
195
|
+
FilterByTagDialog,
|
|
196
196
|
{ model: self, handleClose },
|
|
197
197
|
]);
|
|
198
198
|
},
|
|
@@ -44,6 +44,14 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
44
44
|
message: string | undefined;
|
|
45
45
|
} & {
|
|
46
46
|
readonly RenderingComponent: React.FC<{
|
|
47
|
+
/**
|
|
48
|
+
* #stateModel LinearReadCloudDisplay
|
|
49
|
+
* it is not a block based track, hence not BaseLinearDisplay
|
|
50
|
+
* extends
|
|
51
|
+
* - [BaseDisplay](../basedisplay)
|
|
52
|
+
* - [TrackHeightMixin](../trackheightmixin)
|
|
53
|
+
* - [FeatureDensityMixin](../featuredensitymixin)
|
|
54
|
+
*/
|
|
47
55
|
model: {
|
|
48
56
|
id: string;
|
|
49
57
|
type: string;
|
|
@@ -55,9 +63,6 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
55
63
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
56
64
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
57
65
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
58
|
-
/**
|
|
59
|
-
* #property
|
|
60
|
-
*/
|
|
61
66
|
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
62
67
|
}, {
|
|
63
68
|
rendererTypeName: string;
|
|
@@ -78,7 +83,11 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
78
83
|
message: string | undefined;
|
|
79
84
|
} & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
80
85
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
81
|
-
type: import("mobx-state-tree").ISimpleType<string>;
|
|
86
|
+
type: import("mobx-state-tree").ISimpleType<string>; /**
|
|
87
|
+
* #action
|
|
88
|
+
* internal, a reference to a HTMLCanvas because we use a autorun to draw
|
|
89
|
+
* the canvas
|
|
90
|
+
*/
|
|
82
91
|
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
83
92
|
}, {
|
|
84
93
|
rendererTypeName: string;
|
|
@@ -130,9 +139,6 @@ declare function stateModelFactory(configSchema: AnyConfigurationSchemaType): im
|
|
|
130
139
|
readonly regionTooLarge: boolean;
|
|
131
140
|
readonly regionTooLargeReason: string;
|
|
132
141
|
} & {
|
|
133
|
-
/**
|
|
134
|
-
* #method
|
|
135
|
-
*/
|
|
136
142
|
regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
|
|
137
143
|
regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): React.JSX.Element | null;
|
|
138
144
|
} & {
|
|
@@ -10,7 +10,7 @@ import FilterListIcon from '@mui/icons-material/ClearAll';
|
|
|
10
10
|
// locals
|
|
11
11
|
import { FilterModel } from '../shared';
|
|
12
12
|
// async
|
|
13
|
-
const
|
|
13
|
+
const FilterByTagDialog = lazy(() => import('../shared/FilterByTag'));
|
|
14
14
|
/**
|
|
15
15
|
* #stateModel LinearReadCloudDisplay
|
|
16
16
|
* it is not a block based track, hence not BaseLinearDisplay
|
|
@@ -142,7 +142,7 @@ function stateModelFactory(configSchema) {
|
|
|
142
142
|
icon: FilterListIcon,
|
|
143
143
|
onClick: () => {
|
|
144
144
|
getSession(self).queueDialog(handleClose => [
|
|
145
|
-
|
|
145
|
+
FilterByTagDialog,
|
|
146
146
|
{ model: self, handleClose },
|
|
147
147
|
]);
|
|
148
148
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { observer } from 'mobx-react';
|
|
3
|
+
import { toLocale } from '@jbrowse/core/util';
|
|
3
4
|
import { Tooltip } from '@jbrowse/plugin-wiggle';
|
|
4
|
-
const en = (n) => n.toLocaleString('en-US');
|
|
5
5
|
const toP = (s = 0) => +(+s).toFixed(1);
|
|
6
6
|
const pct = (n, total) => `${toP((n / (total || 1)) * 100)}%`;
|
|
7
7
|
const TooltipContents = React.forwardRef(function TooltipContents2({ feature }, reactRef) {
|
|
@@ -9,7 +9,10 @@ const TooltipContents = React.forwardRef(function TooltipContents2({ feature },
|
|
|
9
9
|
const end = feature.get('end');
|
|
10
10
|
const name = feature.get('refName');
|
|
11
11
|
const { refbase, all, total, ref, '-1': rn1, '1': r1, '0': r0, ...info } = feature.get('snpinfo');
|
|
12
|
-
const loc = [
|
|
12
|
+
const loc = [
|
|
13
|
+
name,
|
|
14
|
+
start === end ? toLocale(start) : `${toLocale(start)}..${toLocale(end)}`,
|
|
15
|
+
]
|
|
13
16
|
.filter(f => !!f)
|
|
14
17
|
.join(':');
|
|
15
18
|
return (React.createElement("div", { ref: reactRef },
|
|
@@ -42,8 +42,17 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
|
|
|
42
42
|
message: string | undefined;
|
|
43
43
|
maxHeightReached: boolean;
|
|
44
44
|
ReactComponent: ({ model, }: {
|
|
45
|
-
model:
|
|
46
|
-
|
|
45
|
+
model: {
|
|
46
|
+
error?: unknown;
|
|
47
|
+
reload: () => void;
|
|
48
|
+
message: import("react").ReactNode; /**
|
|
49
|
+
* #property
|
|
50
|
+
*/
|
|
51
|
+
filled?: boolean | undefined;
|
|
52
|
+
status?: string | undefined;
|
|
53
|
+
reactElement?: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | undefined;
|
|
54
|
+
};
|
|
55
|
+
}) => import("react").JSX.Element | undefined;
|
|
47
56
|
renderProps: any;
|
|
48
57
|
} & {
|
|
49
58
|
doReload(): void;
|
|
@@ -4,6 +4,7 @@ import { BlockMsg, } from '@jbrowse/plugin-linear-genome-view';
|
|
|
4
4
|
import { makeStyles } from 'tss-react/mui';
|
|
5
5
|
import { observer } from 'mobx-react';
|
|
6
6
|
import { getContainingView } from '@jbrowse/core/util';
|
|
7
|
+
import { Button, Tooltip } from '@mui/material';
|
|
7
8
|
const useStyles = makeStyles()(theme => ({
|
|
8
9
|
loading: {
|
|
9
10
|
backgroundColor: theme.palette.background.default,
|
|
@@ -19,7 +20,8 @@ const useStyles = makeStyles()(theme => ({
|
|
|
19
20
|
}));
|
|
20
21
|
const BaseDisplayComponent = observer(function ({ model, children, }) {
|
|
21
22
|
const { error, regionTooLarge } = model;
|
|
22
|
-
return error ? (React.createElement(BlockMsg, { message: `${error}`, severity: "error",
|
|
23
|
+
return error ? (React.createElement(BlockMsg, { message: `${error}`, severity: "error", action: React.createElement(Tooltip, { title: "Reload" },
|
|
24
|
+
React.createElement(Button, { "data-testid": "reload_button", onClick: () => model.reload() }, "Reload")) })) : regionTooLarge ? (model.regionCannotBeRendered()) : (React.createElement(DataDisplay, { model: model }, children));
|
|
23
25
|
});
|
|
24
26
|
const DataDisplay = observer(function ({ model, children, }) {
|
|
25
27
|
const { drawn, loading } = model;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jbrowse/plugin-alignments",
|
|
3
|
-
"version": "2.10.
|
|
3
|
+
"version": "2.10.3",
|
|
4
4
|
"description": "JBrowse 2 alignments adapters, tracks, etc.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jbrowse",
|
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
"distModule": "esm/index.js",
|
|
64
64
|
"srcModule": "src/index.ts",
|
|
65
65
|
"module": "esm/index.js",
|
|
66
|
-
"gitHead": "
|
|
66
|
+
"gitHead": "c8fc800cd17decd72b2e971c7a6add3b95214e72"
|
|
67
67
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|