@jbrowse/plugin-sv-inspector 2.6.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/LICENSE +201 -0
- package/dist/LaunchSvInspectorView/index.d.ts +3 -0
- package/dist/LaunchSvInspectorView/index.js +27 -0
- package/dist/LaunchSvInspectorView/index.js.map +1 -0
- package/dist/SvInspectorView/components/CircularViewOptions.d.ts +6 -0
- package/dist/SvInspectorView/components/CircularViewOptions.js +22 -0
- package/dist/SvInspectorView/components/CircularViewOptions.js.map +1 -0
- package/dist/SvInspectorView/components/SvInspectorView.d.ts +6 -0
- package/dist/SvInspectorView/components/SvInspectorView.js +51 -0
- package/dist/SvInspectorView/components/SvInspectorView.js.map +1 -0
- package/dist/SvInspectorView/index.d.ts +3 -0
- package/dist/SvInspectorView/index.js +35 -0
- package/dist/SvInspectorView/index.js.map +1 -0
- package/dist/SvInspectorView/models/SvInspectorView.d.ts +881 -0
- package/dist/SvInspectorView/models/SvInspectorView.js +317 -0
- package/dist/SvInspectorView/models/SvInspectorView.js.map +1 -0
- package/dist/SvInspectorView/models/adhocFeatureUtils.d.ts +44 -0
- package/dist/SvInspectorView/models/adhocFeatureUtils.js +97 -0
- package/dist/SvInspectorView/models/adhocFeatureUtils.js.map +1 -0
- package/dist/SvInspectorView/models/breakpointSplitViewFromTableRow.d.ts +4 -0
- package/dist/SvInspectorView/models/breakpointSplitViewFromTableRow.js +49 -0
- package/dist/SvInspectorView/models/breakpointSplitViewFromTableRow.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +35 -0
- package/dist/index.js.map +1 -0
- package/esm/LaunchSvInspectorView/index.d.ts +3 -0
- package/esm/LaunchSvInspectorView/index.js +25 -0
- package/esm/LaunchSvInspectorView/index.js.map +1 -0
- package/esm/SvInspectorView/components/CircularViewOptions.d.ts +6 -0
- package/esm/SvInspectorView/components/CircularViewOptions.js +17 -0
- package/esm/SvInspectorView/components/CircularViewOptions.js.map +1 -0
- package/esm/SvInspectorView/components/SvInspectorView.d.ts +6 -0
- package/esm/SvInspectorView/components/SvInspectorView.js +46 -0
- package/esm/SvInspectorView/components/SvInspectorView.js.map +1 -0
- package/esm/SvInspectorView/index.d.ts +3 -0
- package/esm/SvInspectorView/index.js +30 -0
- package/esm/SvInspectorView/index.js.map +1 -0
- package/esm/SvInspectorView/models/SvInspectorView.d.ts +881 -0
- package/esm/SvInspectorView/models/SvInspectorView.js +312 -0
- package/esm/SvInspectorView/models/SvInspectorView.js.map +1 -0
- package/esm/SvInspectorView/models/adhocFeatureUtils.d.ts +44 -0
- package/esm/SvInspectorView/models/adhocFeatureUtils.js +90 -0
- package/esm/SvInspectorView/models/adhocFeatureUtils.js.map +1 -0
- package/esm/SvInspectorView/models/breakpointSplitViewFromTableRow.d.ts +4 -0
- package/esm/SvInspectorView/models/breakpointSplitViewFromTableRow.js +42 -0
- package/esm/SvInspectorView/models/breakpointSplitViewFromTableRow.js.map +1 -0
- package/esm/index.d.ts +7 -0
- package/esm/index.js +29 -0
- package/esm/index.js.map +1 -0
- package/package.json +62 -0
- package/src/LaunchSvInspectorView/index.ts +41 -0
- package/src/SvInspectorView/components/CircularViewOptions.tsx +47 -0
- package/src/SvInspectorView/components/SvInspectorView.tsx +81 -0
- package/src/SvInspectorView/index.ts +41 -0
- package/src/SvInspectorView/models/SvInspectorView.ts +406 -0
- package/src/SvInspectorView/models/adhocFeatureUtils.js +152 -0
- package/src/SvInspectorView/models/breakpointSplitViewFromTableRow.js +84 -0
- package/src/index.ts +34 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CircularViewOptions.js","sourceRoot":"","sources":["../../../src/SvInspectorView/components/CircularViewOptions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAK1C,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvC,mBAAmB,EAAE;QACnB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;KAC1B;CACF,CAAC,CAAC,CAAA;AAEH,MAAM,mBAAmB,GAAG,QAAQ,CAAC,UAAU,EAC7C,WAAW,GAGZ;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAE/B,OAAO,CACL,oBAAC,IAAI,IACH,SAAS,QACT,SAAS,EAAE,OAAO,CAAC,mBAAmB,EACtC,KAAK,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,4BAA4B,EAAE;QAE3D,oBAAC,IAAI,IAAC,IAAI;YACR,oBAAC,gBAAgB,IACf,OAAO,EACL,oBAAC,QAAQ,IACP,OAAO,EAAE,WAAW,CAAC,wCAAwC,EAC7D,QAAQ,EAAE,CAAC,CAAC,EAAE,CACZ,WAAW,CAAC,2CAA2C,CACrD,CAAC,CAAC,MAAM,CAAC,OAAO,CACjB,GAEH,EAEJ,KAAK,EAAC,6BAA6B,GACnC,CACG,CACF,CACR,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,eAAe,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { observer } from 'mobx-react';
|
|
3
|
+
import { makeStyles } from 'tss-react/mui';
|
|
4
|
+
import { ResizeHandle } from '@jbrowse/core/ui';
|
|
5
|
+
import CircularViewOptions from './CircularViewOptions';
|
|
6
|
+
const useStyles = makeStyles()(theme => ({
|
|
7
|
+
resizeHandleVert: {
|
|
8
|
+
background: theme.palette.action.selected,
|
|
9
|
+
width: 4,
|
|
10
|
+
boxSizing: 'border-box',
|
|
11
|
+
borderTop: '1px solid #fafafa',
|
|
12
|
+
},
|
|
13
|
+
resizeHandleHoriz: {
|
|
14
|
+
background: theme.palette.action.selected,
|
|
15
|
+
height: 4,
|
|
16
|
+
boxSizing: 'border-box',
|
|
17
|
+
borderTop: '1px solid #fafafa',
|
|
18
|
+
},
|
|
19
|
+
viewControls: {
|
|
20
|
+
margin: 0,
|
|
21
|
+
},
|
|
22
|
+
viewsContainer: {
|
|
23
|
+
display: 'flex',
|
|
24
|
+
},
|
|
25
|
+
container: {
|
|
26
|
+
overflow: 'hidden',
|
|
27
|
+
},
|
|
28
|
+
}));
|
|
29
|
+
export default observer(function SvInspectorView({ model, }) {
|
|
30
|
+
const { classes } = useStyles();
|
|
31
|
+
const { SpreadsheetViewReactComponent, CircularViewReactComponent, showCircularView, } = model;
|
|
32
|
+
return (React.createElement("div", { className: classes.container },
|
|
33
|
+
React.createElement("div", { className: classes.viewsContainer },
|
|
34
|
+
React.createElement("div", { style: { width: model.spreadsheetView.width }, className: classes.container },
|
|
35
|
+
React.createElement(SpreadsheetViewReactComponent, { model: model.spreadsheetView })),
|
|
36
|
+
showCircularView ? (React.createElement(React.Fragment, null,
|
|
37
|
+
React.createElement(ResizeHandle, { onDrag: distance => {
|
|
38
|
+
const ret1 = model.circularView.resizeWidth(-distance);
|
|
39
|
+
return model.spreadsheetView.resizeWidth(-ret1);
|
|
40
|
+
}, vertical: true, flexbox: true, className: classes.resizeHandleVert }),
|
|
41
|
+
React.createElement("div", { style: { width: model.circularView.width } },
|
|
42
|
+
React.createElement(CircularViewOptions, { svInspector: model }),
|
|
43
|
+
React.createElement(CircularViewReactComponent, { model: model.circularView })))) : null),
|
|
44
|
+
React.createElement(ResizeHandle, { onDrag: model.resizeHeight, className: classes.resizeHandleHoriz })));
|
|
45
|
+
});
|
|
46
|
+
//# sourceMappingURL=SvInspectorView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SvInspectorView.js","sourceRoot":"","sources":["../../../src/SvInspectorView/components/SvInspectorView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAI/C,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AAEvD,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACvC,gBAAgB,EAAE;QAChB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ;QACzC,KAAK,EAAE,CAAC;QACR,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,mBAAmB;KAC/B;IACD,iBAAiB,EAAE;QACjB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ;QACzC,MAAM,EAAE,CAAC;QACT,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,mBAAmB;KAC/B;IACD,YAAY,EAAE;QACZ,MAAM,EAAE,CAAC;KACV;IACD,cAAc,EAAE;QACd,OAAO,EAAE,MAAM;KAChB;IACD,SAAS,EAAE;QACT,QAAQ,EAAE,QAAQ;KACnB;CACF,CAAC,CAAC,CAAA;AAEH,eAAe,QAAQ,CAAC,SAAS,eAAe,CAAC,EAC/C,KAAK,GAGN;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAE/B,MAAM,EACJ,6BAA6B,EAC7B,0BAA0B,EAC1B,gBAAgB,GACjB,GAAG,KAAK,CAAA;IAET,OAAO,CACL,6BAAK,SAAS,EAAE,OAAO,CAAC,SAAS;QAC/B,6BAAK,SAAS,EAAE,OAAO,CAAC,cAAc;YACpC,6BACE,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,EAC7C,SAAS,EAAE,OAAO,CAAC,SAAS;gBAE5B,oBAAC,6BAA6B,IAAC,KAAK,EAAE,KAAK,CAAC,eAAe,GAAI,CAC3D;YAEL,gBAAgB,CAAC,CAAC,CAAC,CAClB;gBACE,oBAAC,YAAY,IACX,MAAM,EAAE,QAAQ,CAAC,EAAE;wBACjB,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAA;wBACtD,OAAO,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAA;oBACjD,CAAC,EACD,QAAQ,QACR,OAAO,QACP,SAAS,EAAE,OAAO,CAAC,gBAAgB,GACnC;gBACF,6BAAK,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;oBAC7C,oBAAC,mBAAmB,IAAC,WAAW,EAAE,KAAK,GAAI;oBAC3C,oBAAC,0BAA0B,IAAC,KAAK,EAAE,KAAK,CAAC,YAAY,GAAI,CACrD,CACL,CACJ,CAAC,CAAC,CAAC,IAAI,CACJ;QACN,oBAAC,YAAY,IACX,MAAM,EAAE,KAAK,CAAC,YAAY,EAC1B,SAAS,EAAE,OAAO,CAAC,iBAAiB,GACpC,CACE,CACP,CAAA;AACH,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import ViewType from '@jbrowse/core/pluggableElementTypes/ViewType';
|
|
2
|
+
import ReactComponent from './components/SvInspectorView';
|
|
3
|
+
import stateModelFactory from './models/SvInspectorView';
|
|
4
|
+
import { getContainingView, getSession } from '@jbrowse/core/util';
|
|
5
|
+
function defaultOnChordClick(feature, chordTrack, pluginManager) {
|
|
6
|
+
const session = getSession(chordTrack);
|
|
7
|
+
session.setSelection(feature);
|
|
8
|
+
const view = getContainingView(chordTrack);
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
10
|
+
const viewType = pluginManager.getViewType('BreakpointSplitView');
|
|
11
|
+
const viewSnapshot = viewType.snapshotFromBreakendFeature(feature, view);
|
|
12
|
+
// try to center the offsetPx
|
|
13
|
+
viewSnapshot.views[0].offsetPx -= view.width / 2 + 100;
|
|
14
|
+
viewSnapshot.views[1].offsetPx -= view.width / 2 + 100;
|
|
15
|
+
viewSnapshot.featureData = feature.toJSON();
|
|
16
|
+
session.addView('BreakpointSplitView', viewSnapshot);
|
|
17
|
+
}
|
|
18
|
+
export default (pluginManager) => {
|
|
19
|
+
pluginManager.jexl.addFunction('defaultOnChordClick', defaultOnChordClick);
|
|
20
|
+
pluginManager.addViewType(() => {
|
|
21
|
+
const stateModel = stateModelFactory(pluginManager);
|
|
22
|
+
return new ViewType({
|
|
23
|
+
name: 'SvInspectorView',
|
|
24
|
+
displayName: 'SV inspector',
|
|
25
|
+
stateModel,
|
|
26
|
+
ReactComponent,
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/SvInspectorView/index.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,8CAA8C,CAAA;AAEnE,OAAO,cAAc,MAAM,8BAA8B,CAAA;AACzD,OAAO,iBAAiB,MAAM,0BAA0B,CAAA;AACxD,OAAO,EAAW,iBAAiB,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAG3E,SAAS,mBAAmB,CAC1B,OAAgB,EAChB,UAA6B,EAC7B,aAA4B;IAE5B,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;IACtC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;IAC7B,MAAM,IAAI,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAA;IAC1C,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,qBAAqB,CAAQ,CAAA;IACxE,MAAM,YAAY,GAAG,QAAQ,CAAC,2BAA2B,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAExE,6BAA6B;IAC7B,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,GAAG,CAAA;IACtD,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,GAAG,GAAG,CAAA;IACtD,YAAY,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;IAE3C,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAA;AACtD,CAAC;AAED,eAAe,CAAC,aAA4B,EAAE,EAAE;IAC9C,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,qBAAqB,EAAE,mBAAmB,CAAC,CAAA;IAE1E,aAAa,CAAC,WAAW,CAAC,GAAG,EAAE;QAC7B,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAA;QACnD,OAAO,IAAI,QAAQ,CAAC;YAClB,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,cAAc;YAC3B,UAAU;YACV,cAAc;SACf,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
|