jbrowse-plugin-gwas 2.0.6 → 2.1.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/dist/LinearManhattanDisplay/components/AddFiltersDialog.d.ts +10 -0
- package/dist/LinearManhattanDisplay/components/AddFiltersDialog.js +78 -0
- package/dist/LinearManhattanDisplay/components/AddFiltersDialog.js.map +1 -0
- package/dist/LinearManhattanDisplay/components/TooltipComponent.js.map +1 -0
- package/dist/LinearManhattanDisplay/stateModelFactory.d.ts +110 -22
- package/dist/LinearManhattanDisplay/stateModelFactory.js +94 -7
- package/dist/LinearManhattanDisplay/stateModelFactory.js.map +1 -1
- package/dist/LinearManhattanRenderer/LinearManhattanRenderer.d.ts +30 -14
- package/dist/LinearManhattanRenderer/LinearManhattanRenderer.js +33 -44
- package/dist/LinearManhattanRenderer/LinearManhattanRenderer.js.map +1 -1
- package/dist/LinearManhattanRenderer/util.d.ts +1 -0
- package/dist/LinearManhattanRenderer/util.js +14 -0
- package/dist/LinearManhattanRenderer/util.js.map +1 -0
- package/dist/jbrowse-plugin-gwas.umd.production.min.js +31 -32
- package/dist/jbrowse-plugin-gwas.umd.production.min.js.map +4 -4
- package/package.json +27 -26
- package/src/LinearManhattanDisplay/components/AddFiltersDialog.tsx +130 -0
- package/src/LinearManhattanDisplay/stateModelFactory.ts +141 -46
- package/src/LinearManhattanRenderer/LinearManhattanRenderer.ts +55 -46
- package/src/LinearManhattanRenderer/util.ts +13 -0
- package/dist/LinearManhattanDisplay/TooltipComponent.js.map +0 -1
- package/dist/out.js +0 -48498
- /package/dist/LinearManhattanDisplay/{TooltipComponent.d.ts → components/TooltipComponent.d.ts} +0 -0
- /package/dist/LinearManhattanDisplay/{TooltipComponent.js → components/TooltipComponent.js} +0 -0
- /package/src/LinearManhattanDisplay/{TooltipComponent.tsx → components/TooltipComponent.tsx} +0 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
declare const AddFiltersDialog: ({ model, handleClose, }: {
|
|
3
|
+
model: {
|
|
4
|
+
jexlFilters?: string[];
|
|
5
|
+
activeFilters: string[];
|
|
6
|
+
setJexlFilters: (arg?: string[]) => void;
|
|
7
|
+
};
|
|
8
|
+
handleClose: () => void;
|
|
9
|
+
}) => React.JSX.Element;
|
|
10
|
+
export default AddFiltersDialog;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import React, { useEffect, useState } from 'react';
|
|
2
|
+
import { Dialog } from '@jbrowse/core/ui';
|
|
3
|
+
import { stringToJexlExpression } from '@jbrowse/core/util/jexlStrings';
|
|
4
|
+
import { Button, DialogActions, DialogContent, TextField } from '@mui/material';
|
|
5
|
+
import { observer } from 'mobx-react';
|
|
6
|
+
import { makeStyles } from 'tss-react/mui';
|
|
7
|
+
const useStyles = makeStyles()({
|
|
8
|
+
dialogContent: {
|
|
9
|
+
width: '80em',
|
|
10
|
+
},
|
|
11
|
+
textAreaFont: {
|
|
12
|
+
fontFamily: 'Courier New',
|
|
13
|
+
},
|
|
14
|
+
error: {
|
|
15
|
+
color: 'red',
|
|
16
|
+
fontSize: '0.8em',
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
function checkJexl(code) {
|
|
20
|
+
stringToJexlExpression(code);
|
|
21
|
+
}
|
|
22
|
+
const AddFiltersDialog = observer(function ({ model, handleClose, }) {
|
|
23
|
+
const { classes } = useStyles();
|
|
24
|
+
const { activeFilters } = model;
|
|
25
|
+
const [data, setData] = useState(activeFilters.join('\n'));
|
|
26
|
+
const [error, setError] = useState();
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
try {
|
|
29
|
+
data
|
|
30
|
+
.split('\n')
|
|
31
|
+
.map(line => line.trim())
|
|
32
|
+
.filter(line => !!line)
|
|
33
|
+
.map(line => {
|
|
34
|
+
checkJexl(line.trim());
|
|
35
|
+
});
|
|
36
|
+
setError(undefined);
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
console.error(e);
|
|
40
|
+
setError(e);
|
|
41
|
+
}
|
|
42
|
+
}, [data]);
|
|
43
|
+
return (React.createElement(Dialog, { maxWidth: "xl", open: true, onClose: handleClose, title: "Add track filters" },
|
|
44
|
+
React.createElement(DialogContent, null,
|
|
45
|
+
React.createElement("div", null,
|
|
46
|
+
"Add filters, in jexl format, one per line, starting with the string jexl:. Examples:",
|
|
47
|
+
' ',
|
|
48
|
+
React.createElement("ul", null,
|
|
49
|
+
React.createElement("li", null,
|
|
50
|
+
React.createElement("code", null, "jexl:get(feature,'name')=='BRCA1'"),
|
|
51
|
+
" - show only feature where the name attribute is BRCA1"),
|
|
52
|
+
React.createElement("li", null,
|
|
53
|
+
React.createElement("code", null, "jexl:get(feature,'type')=='gene'"),
|
|
54
|
+
" - show only gene type features in a GFF that has many other feature types"),
|
|
55
|
+
React.createElement("li", null,
|
|
56
|
+
React.createElement("code", null, "jexl:get(feature,'score') > 400"),
|
|
57
|
+
" - show only features that have a score greater than 400"))),
|
|
58
|
+
error ? React.createElement("p", { className: classes.error }, `${error}`) : null,
|
|
59
|
+
React.createElement(TextField, { variant: "outlined", multiline: true, minRows: 5, maxRows: 10, className: classes.dialogContent, fullWidth: true, value: data, onChange: event => {
|
|
60
|
+
setData(event.target.value);
|
|
61
|
+
}, slotProps: {
|
|
62
|
+
input: {
|
|
63
|
+
classes: {
|
|
64
|
+
input: classes.textAreaFont,
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
} })),
|
|
68
|
+
React.createElement(DialogActions, null,
|
|
69
|
+
React.createElement(Button, { variant: "contained", color: "primary", type: "submit", autoFocus: true, disabled: !!error, onClick: () => {
|
|
70
|
+
model.setJexlFilters(data.split('\n'));
|
|
71
|
+
handleClose();
|
|
72
|
+
} }, "Submit"),
|
|
73
|
+
React.createElement(Button, { variant: "contained", color: "secondary", onClick: () => {
|
|
74
|
+
handleClose();
|
|
75
|
+
} }, "Cancel"))));
|
|
76
|
+
});
|
|
77
|
+
export default AddFiltersDialog;
|
|
78
|
+
//# sourceMappingURL=AddFiltersDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddFiltersDialog.js","sourceRoot":"","sources":["../../../src/LinearManhattanDisplay/components/AddFiltersDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TooltipComponent.js","sourceRoot":"","sources":["../../../src/LinearManhattanDisplay/components/TooltipComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAerC,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,CACtC,SAAS,gBAAgB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG;IAC/C,OAAO,CACL,6BAAK,GAAG,EAAE,GAAG;QACX,oBAAC,aAAa,IAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,GAAI,CAC7D,CACP,CAAA;AACH,CAAC,CACF,CAAA;AAID,MAAM,gBAAgB,GAAG,QAAQ,CAAC,UAAU,KAO3C;IACC,OAAO,oBAAC,OAAO,IAAC,eAAe,EAAE,eAAe,KAAM,KAAK,GAAI,CAAA;AACjE,CAAC,CAAC,CAAA;AAEF,eAAe,gBAAgB,CAAA"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import SerializableFilterChain from '@jbrowse/core/pluggableElementTypes/renderers/util/serializableFilterChain';
|
|
1
2
|
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
3
|
+
import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
2
4
|
import type { Feature } from '@jbrowse/core/util';
|
|
3
|
-
export declare function stateModelFactory(pluginManager: PluginManager, configSchema:
|
|
5
|
+
export declare function stateModelFactory(pluginManager: PluginManager, configSchema: AnyConfigurationSchemaType): import("mobx-state-tree").IModelType<{
|
|
4
6
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
5
7
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
6
8
|
rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
@@ -35,7 +37,7 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
35
37
|
status?: string;
|
|
36
38
|
reactElement?: React.ReactElement;
|
|
37
39
|
};
|
|
38
|
-
}) => import("react").JSX.Element | undefined;
|
|
40
|
+
}) => import("react/jsx-runtime").JSX.Element | undefined;
|
|
39
41
|
renderProps: any;
|
|
40
42
|
} & {
|
|
41
43
|
doReload(): void;
|
|
@@ -93,11 +95,20 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
93
95
|
max: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
94
96
|
min: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
95
97
|
}, {}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>;
|
|
96
|
-
configuration:
|
|
98
|
+
configuration: AnyConfigurationSchemaType;
|
|
97
99
|
} & {
|
|
98
100
|
type: import("mobx-state-tree").ISimpleType<"LinearWiggleDisplay">;
|
|
101
|
+
invertedSetting: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<boolean>>;
|
|
99
102
|
} & {
|
|
100
103
|
type: import("mobx-state-tree").ISimpleType<"LinearManhattanDisplay">;
|
|
104
|
+
/**
|
|
105
|
+
* #property
|
|
106
|
+
*/
|
|
107
|
+
configuration: AnyConfigurationSchemaType;
|
|
108
|
+
/**
|
|
109
|
+
* #property
|
|
110
|
+
*/
|
|
111
|
+
jexlFilters: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IArrayType<import("mobx-state-tree").ISimpleType<string>>>;
|
|
101
112
|
}, {
|
|
102
113
|
rendererTypeName: string;
|
|
103
114
|
error: unknown;
|
|
@@ -189,13 +200,13 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
189
200
|
} & {
|
|
190
201
|
readonly statsReadyAndRegionNotTooLarge: boolean;
|
|
191
202
|
regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
|
|
192
|
-
regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react").JSX.Element | null;
|
|
203
|
+
regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react/jsx-runtime").JSX.Element | null;
|
|
193
204
|
} & {
|
|
194
205
|
featureIdUnderMouse: undefined | string;
|
|
195
206
|
contextMenuFeature: undefined | import("@jbrowse/core/util").Feature;
|
|
196
207
|
} & {
|
|
197
|
-
readonly DisplayMessageComponent:
|
|
198
|
-
readonly blockType: "
|
|
208
|
+
readonly DisplayMessageComponent: undefined | React.FC<any>;
|
|
209
|
+
readonly blockType: "staticBlocks" | "dynamicBlocks";
|
|
199
210
|
readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
|
|
200
211
|
} & {
|
|
201
212
|
readonly renderDelay: number;
|
|
@@ -210,7 +221,7 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
210
221
|
} & {
|
|
211
222
|
addBlock(key: string, block: import("@jbrowse/core/util/blockTypes").BaseBlock): void;
|
|
212
223
|
deleteBlock(key: string): void;
|
|
213
|
-
selectFeature(feature: import("@jbrowse/core/util").Feature): void
|
|
224
|
+
selectFeature(feature: import("@jbrowse/core/util").Feature): Promise<void>;
|
|
214
225
|
navToFeature(feature: import("@jbrowse/core/util").Feature): void;
|
|
215
226
|
clearFeatureSelection(): void;
|
|
216
227
|
setFeatureIdUnderMouse(feature?: string): void;
|
|
@@ -222,7 +233,7 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
222
233
|
contextMenuItems(): import("@jbrowse/core/ui").MenuItem[];
|
|
223
234
|
renderProps(): any;
|
|
224
235
|
} & {
|
|
225
|
-
renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react").JSX.Element>;
|
|
236
|
+
renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react/jsx-runtime").JSX.Element>;
|
|
226
237
|
afterAttach(): void;
|
|
227
238
|
} & {
|
|
228
239
|
message: undefined | string;
|
|
@@ -256,11 +267,11 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
256
267
|
setCrossHatches(cross: boolean): void;
|
|
257
268
|
} & {
|
|
258
269
|
readonly adapterTypeName: any;
|
|
259
|
-
readonly rendererTypeNameSimple:
|
|
270
|
+
readonly rendererTypeNameSimple: string;
|
|
260
271
|
readonly filters: undefined;
|
|
261
|
-
readonly scaleType:
|
|
262
|
-
readonly maxScore:
|
|
263
|
-
readonly minScore:
|
|
272
|
+
readonly scaleType: string;
|
|
273
|
+
readonly maxScore: number;
|
|
274
|
+
readonly minScore: number;
|
|
264
275
|
} & {
|
|
265
276
|
readonly adapterCapabilities: string[];
|
|
266
277
|
readonly rendererConfig: {
|
|
@@ -271,10 +282,10 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
271
282
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
272
283
|
setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
|
|
273
284
|
[x: string]: any;
|
|
274
|
-
} & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<
|
|
275
|
-
} & import("mobx-state-tree").IStateTreeNode<
|
|
276
|
-
} & import("mobx-state-tree").IStateTreeNode<
|
|
277
|
-
readonly autoscaleType:
|
|
285
|
+
} & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>);
|
|
286
|
+
} & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>);
|
|
287
|
+
} & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>;
|
|
288
|
+
readonly autoscaleType: string;
|
|
278
289
|
} & {
|
|
279
290
|
readonly domain: number[] | undefined;
|
|
280
291
|
} & {
|
|
@@ -287,9 +298,9 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
287
298
|
scoreMin: number;
|
|
288
299
|
scoreMax: number;
|
|
289
300
|
} | undefined;
|
|
290
|
-
autoscaleType:
|
|
291
|
-
scaleType:
|
|
292
|
-
inverted:
|
|
301
|
+
autoscaleType: string;
|
|
302
|
+
scaleType: string;
|
|
303
|
+
inverted: boolean;
|
|
293
304
|
};
|
|
294
305
|
readonly canHaveFill: boolean;
|
|
295
306
|
readonly displayCrossHatchesSetting: boolean;
|
|
@@ -319,10 +330,14 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
319
330
|
})[];
|
|
320
331
|
} & {
|
|
321
332
|
reload(): Promise<void>;
|
|
333
|
+
} & {
|
|
334
|
+
setInverted(arg: boolean): void;
|
|
322
335
|
} & {
|
|
323
336
|
readonly TooltipComponent: import("@jbrowse/core/util").AnyReactComponentType;
|
|
324
337
|
readonly rendererTypeName: string;
|
|
325
338
|
readonly quantitativeStatsRelevantToCurrentZoom: boolean;
|
|
339
|
+
readonly graphType: boolean;
|
|
340
|
+
readonly inverted: boolean;
|
|
326
341
|
} & {
|
|
327
342
|
adapterProps(): any;
|
|
328
343
|
readonly ticks: {
|
|
@@ -333,12 +348,14 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
333
348
|
} | undefined;
|
|
334
349
|
} & {
|
|
335
350
|
renderProps(): any;
|
|
336
|
-
readonly needsScalebar: boolean;
|
|
337
351
|
readonly fillSetting: 2 | 1 | 0;
|
|
338
352
|
readonly quantitativeStatsReady: boolean;
|
|
339
353
|
} & {
|
|
340
354
|
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 | {
|
|
341
355
|
label: string;
|
|
356
|
+
icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
|
|
357
|
+
muiName: string;
|
|
358
|
+
};
|
|
342
359
|
subMenu: ({
|
|
343
360
|
label: string;
|
|
344
361
|
subMenu: {
|
|
@@ -363,6 +380,13 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
363
380
|
type?: undefined;
|
|
364
381
|
checked?: undefined;
|
|
365
382
|
onClick?: undefined;
|
|
383
|
+
} | {
|
|
384
|
+
label: string;
|
|
385
|
+
type: string;
|
|
386
|
+
checked: boolean;
|
|
387
|
+
onClick: () => void;
|
|
388
|
+
icon?: undefined;
|
|
389
|
+
subMenu?: undefined;
|
|
366
390
|
} | {
|
|
367
391
|
label: string;
|
|
368
392
|
subMenu: {
|
|
@@ -371,11 +395,24 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
371
395
|
checked: boolean;
|
|
372
396
|
onClick: () => void;
|
|
373
397
|
}[];
|
|
398
|
+
icon?: undefined;
|
|
374
399
|
type?: undefined;
|
|
375
400
|
checked?: undefined;
|
|
376
401
|
onClick?: undefined;
|
|
402
|
+
} | {
|
|
403
|
+
label: string;
|
|
404
|
+
icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
|
|
405
|
+
muiName: string;
|
|
406
|
+
};
|
|
407
|
+
onClick: () => void;
|
|
408
|
+
subMenu?: undefined;
|
|
409
|
+
type?: undefined;
|
|
410
|
+
checked?: undefined;
|
|
377
411
|
} | {
|
|
378
412
|
type: string;
|
|
413
|
+
icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
|
|
414
|
+
muiName: string;
|
|
415
|
+
};
|
|
379
416
|
label: string;
|
|
380
417
|
checked: boolean;
|
|
381
418
|
onClick: () => void;
|
|
@@ -383,19 +420,44 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
383
420
|
})[];
|
|
384
421
|
} & {
|
|
385
422
|
afterAttach(): void;
|
|
386
|
-
renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react").JSX.Element>;
|
|
423
|
+
renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react/jsx-runtime").JSX.Element>;
|
|
387
424
|
} & {
|
|
425
|
+
/**
|
|
426
|
+
* #getter
|
|
427
|
+
*/
|
|
388
428
|
readonly TooltipComponent: (props: {
|
|
389
|
-
model: import("./TooltipComponent").Model;
|
|
429
|
+
model: import("./components/TooltipComponent").Model;
|
|
390
430
|
height: number;
|
|
391
431
|
offsetMouseCoord: [number, number];
|
|
392
432
|
clientMouseCoord: [number, number];
|
|
393
433
|
clientRect?: DOMRect;
|
|
394
434
|
TooltipContents?: import("@jbrowse/plugin-wiggle").TooltipContentsComponent;
|
|
395
435
|
}) => import("react").JSX.Element;
|
|
436
|
+
/**
|
|
437
|
+
* #getter
|
|
438
|
+
*/
|
|
396
439
|
readonly rendererTypeName: string;
|
|
440
|
+
/**
|
|
441
|
+
* #getter
|
|
442
|
+
* older way of showing y-scalebar
|
|
443
|
+
*/
|
|
397
444
|
readonly needsScalebar: boolean;
|
|
445
|
+
/**
|
|
446
|
+
* #getter
|
|
447
|
+
* newer way of showing y-scalebar
|
|
448
|
+
*/
|
|
449
|
+
readonly graphType: boolean;
|
|
450
|
+
/**
|
|
451
|
+
* #getter
|
|
452
|
+
* never too large!
|
|
453
|
+
*/
|
|
398
454
|
readonly regionTooLarge: boolean;
|
|
455
|
+
/**
|
|
456
|
+
* #getter
|
|
457
|
+
* config jexlFilters are deferred evaluated so they are prepended with
|
|
458
|
+
* jexl at runtime rather than being stored with jexl in the config
|
|
459
|
+
*/
|
|
460
|
+
readonly activeFilters: any;
|
|
399
461
|
} & {
|
|
400
462
|
/**
|
|
401
463
|
* #action
|
|
@@ -404,5 +466,31 @@ export declare function stateModelFactory(pluginManager: PluginManager, configSc
|
|
|
404
466
|
* model so listeners can detect a click
|
|
405
467
|
*/
|
|
406
468
|
selectFeature(feature: Feature): void;
|
|
469
|
+
/**
|
|
470
|
+
* #action
|
|
471
|
+
*/
|
|
472
|
+
setJexlFilters(f?: string[]): void;
|
|
473
|
+
} & {
|
|
474
|
+
/**
|
|
475
|
+
* #method
|
|
476
|
+
*/
|
|
477
|
+
renderProps(): {
|
|
478
|
+
config: {
|
|
479
|
+
[x: string]: any;
|
|
480
|
+
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
481
|
+
setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
|
|
482
|
+
[x: string]: any;
|
|
483
|
+
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
484
|
+
setSubschema(slotName: string, data: Record<string, unknown>): Record<string, unknown> | ({
|
|
485
|
+
[x: string]: any;
|
|
486
|
+
} & import("mobx-state-tree/dist/internal").NonEmptyObject & any & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>);
|
|
487
|
+
} & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>);
|
|
488
|
+
} & import("mobx-state-tree").IStateTreeNode<AnyConfigurationSchemaType>;
|
|
489
|
+
filters: SerializableFilterChain;
|
|
490
|
+
};
|
|
491
|
+
/**
|
|
492
|
+
* #method
|
|
493
|
+
*/
|
|
494
|
+
trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
|
|
407
495
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|
|
408
496
|
export type LinearManhattanDisplayModel = ReturnType<typeof stateModelFactory>;
|
|
@@ -1,26 +1,69 @@
|
|
|
1
|
+
import { lazy } from 'react';
|
|
2
|
+
import { ConfigurationReference, getConf } from '@jbrowse/core/configuration';
|
|
3
|
+
import SerializableFilterChain from '@jbrowse/core/pluggableElementTypes/renderers/util/serializableFilterChain';
|
|
1
4
|
import { getContainingTrack, getContainingView, getSession, isSelectionContainer, isSessionModelWithWidgets, } from '@jbrowse/core/util';
|
|
2
|
-
import
|
|
5
|
+
import { cast, types } from 'mobx-state-tree';
|
|
6
|
+
import TooltipComponent from './components/TooltipComponent';
|
|
7
|
+
// lazies
|
|
8
|
+
const AddFiltersDialog = lazy(() => import('./components/AddFiltersDialog'));
|
|
3
9
|
export function stateModelFactory(pluginManager, configSchema) {
|
|
4
|
-
const { types } = pluginManager.lib['mobx-state-tree'];
|
|
5
10
|
const WigglePlugin = pluginManager.getPlugin('WigglePlugin');
|
|
6
11
|
const { linearWiggleDisplayModelFactory } = WigglePlugin.exports;
|
|
7
|
-
return types
|
|
8
|
-
.model({
|
|
12
|
+
return types
|
|
13
|
+
.compose('LinearManhattanDisplay', linearWiggleDisplayModelFactory(pluginManager, configSchema), types.model({
|
|
9
14
|
type: types.literal('LinearManhattanDisplay'),
|
|
10
|
-
|
|
11
|
-
|
|
15
|
+
/**
|
|
16
|
+
* #property
|
|
17
|
+
*/
|
|
18
|
+
configuration: ConfigurationReference(configSchema),
|
|
19
|
+
/**
|
|
20
|
+
* #property
|
|
21
|
+
*/
|
|
22
|
+
jexlFilters: types.maybe(types.array(types.string)),
|
|
23
|
+
}))
|
|
24
|
+
.views(self => ({
|
|
25
|
+
/**
|
|
26
|
+
* #getter
|
|
27
|
+
*/
|
|
12
28
|
get TooltipComponent() {
|
|
13
29
|
return TooltipComponent;
|
|
14
30
|
},
|
|
31
|
+
/**
|
|
32
|
+
* #getter
|
|
33
|
+
*/
|
|
15
34
|
get rendererTypeName() {
|
|
16
35
|
return 'LinearManhattanRenderer';
|
|
17
36
|
},
|
|
37
|
+
/**
|
|
38
|
+
* #getter
|
|
39
|
+
* older way of showing y-scalebar
|
|
40
|
+
*/
|
|
18
41
|
get needsScalebar() {
|
|
19
42
|
return true;
|
|
20
43
|
},
|
|
44
|
+
/**
|
|
45
|
+
* #getter
|
|
46
|
+
* newer way of showing y-scalebar
|
|
47
|
+
*/
|
|
48
|
+
get graphType() {
|
|
49
|
+
return true;
|
|
50
|
+
},
|
|
51
|
+
/**
|
|
52
|
+
* #getter
|
|
53
|
+
* never too large!
|
|
54
|
+
*/
|
|
21
55
|
get regionTooLarge() {
|
|
22
56
|
return false;
|
|
23
57
|
},
|
|
58
|
+
/**
|
|
59
|
+
* #getter
|
|
60
|
+
* config jexlFilters are deferred evaluated so they are prepended with
|
|
61
|
+
* jexl at runtime rather than being stored with jexl in the config
|
|
62
|
+
*/
|
|
63
|
+
get activeFilters() {
|
|
64
|
+
var _a;
|
|
65
|
+
return ((_a = self.jexlFilters) !== null && _a !== void 0 ? _a : getConf(self, 'jexlFilters').map((r) => `jexl:${r}`));
|
|
66
|
+
},
|
|
24
67
|
}))
|
|
25
68
|
.actions(self => ({
|
|
26
69
|
/**
|
|
@@ -43,6 +86,50 @@ export function stateModelFactory(pluginManager, configSchema) {
|
|
|
43
86
|
session.setSelection(feature);
|
|
44
87
|
}
|
|
45
88
|
},
|
|
46
|
-
|
|
89
|
+
/**
|
|
90
|
+
* #action
|
|
91
|
+
*/
|
|
92
|
+
setJexlFilters(f) {
|
|
93
|
+
self.jexlFilters = cast(f);
|
|
94
|
+
},
|
|
95
|
+
}))
|
|
96
|
+
.views(self => {
|
|
97
|
+
const { trackMenuItems: superTrackMenuItems, renderProps: superRenderProps, } = self;
|
|
98
|
+
return {
|
|
99
|
+
/**
|
|
100
|
+
* #method
|
|
101
|
+
*/
|
|
102
|
+
renderProps() {
|
|
103
|
+
const superProps = superRenderProps();
|
|
104
|
+
return {
|
|
105
|
+
...superProps,
|
|
106
|
+
config: self.rendererConfig,
|
|
107
|
+
filters: new SerializableFilterChain({
|
|
108
|
+
filters: self.activeFilters,
|
|
109
|
+
}),
|
|
110
|
+
};
|
|
111
|
+
},
|
|
112
|
+
/**
|
|
113
|
+
* #method
|
|
114
|
+
*/
|
|
115
|
+
trackMenuItems() {
|
|
116
|
+
return [
|
|
117
|
+
...superTrackMenuItems(),
|
|
118
|
+
{
|
|
119
|
+
label: 'Edit filters',
|
|
120
|
+
onClick: () => {
|
|
121
|
+
getSession(self).queueDialog(handleClose => [
|
|
122
|
+
AddFiltersDialog,
|
|
123
|
+
{
|
|
124
|
+
model: self,
|
|
125
|
+
handleClose,
|
|
126
|
+
},
|
|
127
|
+
]);
|
|
128
|
+
},
|
|
129
|
+
},
|
|
130
|
+
];
|
|
131
|
+
},
|
|
132
|
+
};
|
|
133
|
+
});
|
|
47
134
|
}
|
|
48
135
|
//# sourceMappingURL=stateModelFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stateModelFactory.js","sourceRoot":"","sources":["../../src/LinearManhattanDisplay/stateModelFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,UAAU,EACV,oBAAoB,EACpB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"stateModelFactory.js","sourceRoot":"","sources":["../../src/LinearManhattanDisplay/stateModelFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,20 @@
|
|
|
1
|
+
import { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
2
|
+
import { Feature, Region } from '@jbrowse/core/util';
|
|
1
3
|
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
|
-
|
|
4
|
+
interface ManhattanProps {
|
|
5
|
+
features: Map<string, Feature>;
|
|
6
|
+
regions: Region[];
|
|
7
|
+
bpPerPx: number;
|
|
8
|
+
statusCallback?: (arg: string) => void;
|
|
9
|
+
config: AnyConfigurationModel;
|
|
10
|
+
scaleOpts: any;
|
|
11
|
+
height: number;
|
|
12
|
+
displayCrossHatches: boolean;
|
|
13
|
+
ticks: {
|
|
14
|
+
values: number[];
|
|
15
|
+
};
|
|
16
|
+
stopToken?: string;
|
|
17
|
+
}
|
|
3
18
|
export default function rendererFactory(pluginManager: PluginManager): {
|
|
4
19
|
new (stuff: {
|
|
5
20
|
name: string;
|
|
@@ -8,50 +23,51 @@ export default function rendererFactory(pluginManager: PluginManager): {
|
|
|
8
23
|
configSchema: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
|
|
9
24
|
pluginManager: PluginManager;
|
|
10
25
|
}): {
|
|
11
|
-
draw(ctx: CanvasRenderingContext2D, props:
|
|
26
|
+
draw(ctx: CanvasRenderingContext2D, props: ManhattanProps): Promise<{
|
|
12
27
|
clickMap: any;
|
|
13
28
|
}>;
|
|
14
29
|
supportsSVG: boolean;
|
|
15
30
|
render(renderProps: import("@jbrowse/plugin-wiggle/dist/WiggleBaseRenderer").RenderArgsDeserialized): Promise<{
|
|
16
|
-
features: Map<string,
|
|
31
|
+
features: Map<string, Feature>;
|
|
17
32
|
height: number;
|
|
18
33
|
width: number;
|
|
19
34
|
containsNoTransferables: boolean;
|
|
20
|
-
canvasRecordedData:
|
|
21
|
-
reactElement?:
|
|
35
|
+
canvasRecordedData: Record<string, unknown>;
|
|
36
|
+
reactElement?: React.ReactElement;
|
|
22
37
|
html?: string;
|
|
23
38
|
} | {
|
|
24
|
-
features: Map<string,
|
|
39
|
+
features: Map<string, Feature>;
|
|
25
40
|
height: number;
|
|
26
41
|
width: number;
|
|
27
42
|
containsNoTransferables: boolean;
|
|
28
|
-
|
|
43
|
+
imageData: any;
|
|
44
|
+
reactElement?: React.ReactElement;
|
|
29
45
|
html?: string;
|
|
30
46
|
} | {
|
|
31
|
-
features: Map<string,
|
|
47
|
+
features: Map<string, Feature>;
|
|
32
48
|
height: number;
|
|
33
49
|
width: number;
|
|
34
50
|
containsNoTransferables: boolean;
|
|
35
|
-
|
|
36
|
-
reactElement?: import("react").ReactElement;
|
|
51
|
+
reactElement: React.ReactElement;
|
|
37
52
|
html?: string;
|
|
38
53
|
}>;
|
|
39
54
|
serializeArgsInClient(args: import("@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType").RenderArgs): import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").RenderArgsSerialized;
|
|
40
55
|
deserializeResultsInClient(result: import("@jbrowse/plugin-wiggle/dist/WiggleBaseRenderer").ResultsSerialized, args: import("@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType").RenderArgs): import("@jbrowse/plugin-wiggle/dist/WiggleBaseRenderer").ResultsDeserialized;
|
|
41
56
|
serializeResultsInWorker(result: import("@jbrowse/plugin-wiggle/dist/WiggleBaseRenderer").RenderResults, args: import("@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType").RenderArgsDeserialized): import("@jbrowse/plugin-wiggle/dist/WiggleBaseRenderer").ResultsSerialized;
|
|
42
57
|
getExpandedRegion(region: import("@jbrowse/core/util").AugmentedRegion, _renderArgs: import("@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType").RenderArgsDeserialized): import("@jbrowse/core/util").AugmentedRegion;
|
|
43
|
-
getFeatures(renderArgs: import("@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType").RenderArgsDeserialized): Promise<Map<string,
|
|
44
|
-
featurePassesFilters(renderArgs: import("@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType").RenderArgsDeserialized, feature:
|
|
58
|
+
getFeatures(renderArgs: import("@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType").RenderArgsDeserialized): Promise<Map<string, Feature>>;
|
|
59
|
+
featurePassesFilters(renderArgs: import("@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType").RenderArgsDeserialized, feature: Feature): boolean;
|
|
45
60
|
deserializeArgsInWorker(args: import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").RenderArgsSerialized): import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").RenderArgsDeserialized;
|
|
46
61
|
renderInClient(rpcManager: import("@jbrowse/core/rpc/RpcManager").default, args: import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").RenderArgs): Promise<import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").ResultsSerialized>;
|
|
47
62
|
renderInWorker(args: import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").RenderArgsSerialized): Promise<import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").ResultsSerialized>;
|
|
48
|
-
freeResourcesInClient(rpcManager: import("@jbrowse/core/rpc/RpcManager").default, args: import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").RenderArgs): Promise<
|
|
63
|
+
freeResourcesInClient(rpcManager: import("@jbrowse/core/rpc/RpcManager").default, args: import("@jbrowse/core/pluggableElementTypes/renderers/ServerSideRendererType").RenderArgs): Promise<void>;
|
|
49
64
|
ReactComponent: import("@jbrowse/core/util").AnyReactComponentType;
|
|
50
65
|
configSchema: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
|
|
51
66
|
pluginManager: PluginManager;
|
|
52
|
-
freeResources():
|
|
67
|
+
freeResources(_args: any): void;
|
|
53
68
|
name: string;
|
|
54
69
|
maybeDisplayName?: string;
|
|
55
70
|
readonly displayName: string;
|
|
56
71
|
};
|
|
57
72
|
};
|
|
73
|
+
export {};
|