@jbrowse/plugin-wiggle 2.17.0 → 3.0.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/BigWigAdapter/BigWigAdapter.d.ts +4 -3
- package/dist/BigWigAdapter/BigWigAdapter.js +3 -8
- package/dist/BigWigAdapter/configSchema.d.ts +0 -9
- package/dist/BigWigAdapter/configSchema.js +1 -13
- package/dist/BigWigAdapter/index.d.ts +1 -1
- package/dist/BigWigAdapter/index.js +17 -7
- package/dist/CreateMultiWiggleExtension/ConfirmDialog.d.ts +2 -3
- package/dist/CreateMultiWiggleExtension/ConfirmDialog.js +14 -49
- package/dist/CreateMultiWiggleExtension/index.d.ts +1 -1
- package/dist/CreateMultiWiggleExtension/index.js +43 -33
- package/dist/DensityRenderer/DensityRenderer.d.ts +2 -1
- package/dist/DensityRenderer/DensityRenderer.js +35 -2
- package/dist/DensityRenderer/configSchema.js +1 -7
- package/dist/DensityRenderer/index.d.ts +1 -1
- package/dist/DensityRenderer/index.js +1 -1
- package/dist/GuessAdapter/index.d.ts +2 -0
- package/dist/GuessAdapter/index.js +25 -0
- package/dist/LinePlotRenderer/LinePlotRenderer.d.ts +3 -2
- package/dist/LinePlotRenderer/LinePlotRenderer.js +35 -2
- package/dist/LinePlotRenderer/configSchema.d.ts +0 -3
- package/dist/LinePlotRenderer/configSchema.js +1 -10
- package/dist/LinePlotRenderer/index.d.ts +1 -1
- package/dist/LinearWiggleDisplay/components/SetColorDialog.d.ts +1 -2
- package/dist/LinearWiggleDisplay/components/SetColorDialog.js +23 -59
- package/dist/LinearWiggleDisplay/components/Tooltip.d.ts +3 -4
- package/dist/LinearWiggleDisplay/components/Tooltip.js +5 -18
- package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +2 -3
- package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js +11 -14
- package/dist/LinearWiggleDisplay/configSchema.d.ts +1 -12
- package/dist/LinearWiggleDisplay/configSchema.js +0 -15
- package/dist/LinearWiggleDisplay/index.d.ts +1 -1
- package/dist/LinearWiggleDisplay/index.js +18 -8
- package/dist/LinearWiggleDisplay/model.d.ts +44 -79
- package/dist/LinearWiggleDisplay/model.js +39 -71
- package/dist/LinearWiggleDisplay/renderSvg.d.ts +3 -4
- package/dist/LinearWiggleDisplay/renderSvg.js +2 -6
- package/dist/MultiDensityRenderer/MultiDensityRenderer.d.ts +4 -3
- package/dist/MultiDensityRenderer/MultiDensityRenderer.js +40 -6
- package/dist/MultiDensityRenderer/configSchema.js +1 -7
- package/dist/MultiDensityRenderer/index.d.ts +1 -1
- package/dist/MultiLineRenderer/MultiLineRenderer.d.ts +3 -2
- package/dist/MultiLineRenderer/MultiLineRenderer.js +35 -3
- package/dist/MultiLineRenderer/configSchema.d.ts +0 -6
- package/dist/MultiLineRenderer/configSchema.js +1 -13
- package/dist/MultiLineRenderer/index.d.ts +1 -1
- package/dist/MultiLinearWiggleDisplay/components/ColorLegend.d.ts +3 -5
- package/dist/MultiLinearWiggleDisplay/components/ColorLegend.js +5 -15
- package/dist/MultiLinearWiggleDisplay/components/FullHeightScaleBar.d.ts +7 -0
- package/dist/MultiLinearWiggleDisplay/components/FullHeightScaleBar.js +17 -0
- package/dist/MultiLinearWiggleDisplay/components/IndividualScaleBars.d.ts +7 -0
- package/dist/MultiLinearWiggleDisplay/components/IndividualScaleBars.js +15 -0
- package/dist/MultiLinearWiggleDisplay/components/LegendItem.d.ts +11 -0
- package/dist/MultiLinearWiggleDisplay/components/LegendItem.js +19 -0
- package/dist/MultiLinearWiggleDisplay/components/RectBg.d.ts +1 -2
- package/dist/MultiLinearWiggleDisplay/components/RectBg.js +2 -5
- package/dist/MultiLinearWiggleDisplay/components/ScoreLegend.d.ts +2 -3
- package/dist/MultiLinearWiggleDisplay/components/ScoreLegend.js +2 -4
- package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +2 -3
- package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js +21 -60
- package/dist/MultiLinearWiggleDisplay/components/SourcesGrid.d.ts +2 -3
- package/dist/MultiLinearWiggleDisplay/components/SourcesGrid.js +80 -97
- package/dist/MultiLinearWiggleDisplay/components/Tooltip.d.ts +4 -5
- package/dist/MultiLinearWiggleDisplay/components/Tooltip.js +8 -23
- package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +2 -3
- package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +2 -4
- package/dist/MultiLinearWiggleDisplay/components/YScaleBars.d.ts +2 -3
- package/dist/MultiLinearWiggleDisplay/components/YScaleBars.js +7 -27
- package/dist/MultiLinearWiggleDisplay/components/util.d.ts +1 -1
- package/dist/MultiLinearWiggleDisplay/components/util.js +1 -1
- package/dist/MultiLinearWiggleDisplay/configSchema.d.ts +1 -10
- package/dist/MultiLinearWiggleDisplay/configSchema.js +1 -19
- package/dist/MultiLinearWiggleDisplay/index.d.ts +1 -1
- package/dist/MultiLinearWiggleDisplay/index.js +18 -8
- package/dist/MultiLinearWiggleDisplay/model.d.ts +27 -146
- package/dist/MultiLinearWiggleDisplay/model.js +44 -128
- package/dist/MultiLinearWiggleDisplay/renderSvg.d.ts +3 -4
- package/dist/MultiLinearWiggleDisplay/renderSvg.js +2 -5
- package/dist/MultiLinearWiggleDisplay/util.d.ts +1 -0
- package/dist/MultiLinearWiggleDisplay/util.js +10 -0
- package/dist/MultiQuantitativeTrack/configSchema.d.ts +1 -1
- package/dist/MultiQuantitativeTrack/configSchema.js +1 -7
- package/dist/MultiQuantitativeTrack/index.d.ts +1 -1
- package/dist/MultiQuantitativeTrack/index.js +1 -1
- package/dist/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +3 -2
- package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js +35 -3
- package/dist/MultiRowLineRenderer/configSchema.d.ts +0 -6
- package/dist/MultiRowLineRenderer/configSchema.js +2 -14
- package/dist/MultiRowLineRenderer/index.d.ts +1 -1
- package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +3 -2
- package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +35 -3
- package/dist/MultiRowXYPlotRenderer/configSchema.d.ts +0 -12
- package/dist/MultiRowXYPlotRenderer/configSchema.js +2 -20
- package/dist/MultiRowXYPlotRenderer/index.d.ts +1 -1
- package/dist/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +4 -3
- package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js +8 -13
- package/dist/MultiWiggleAdapter/configSchema.d.ts +0 -6
- package/dist/MultiWiggleAdapter/configSchema.js +1 -10
- package/dist/MultiWiggleAdapter/index.d.ts +1 -1
- package/dist/MultiWiggleAdapter/index.js +18 -8
- package/dist/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.d.ts +4 -4
- package/dist/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.js +63 -104
- package/dist/MultiWiggleAddTrackWorkflow/index.d.ts +1 -1
- package/dist/MultiWiggleAddTrackWorkflow/index.js +18 -9
- package/dist/MultiWiggleRendering.d.ts +4 -5
- package/dist/MultiWiggleRendering.js +6 -29
- package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +3 -2
- package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js +36 -4
- package/dist/MultiXYPlotRenderer/configSchema.d.ts +0 -12
- package/dist/MultiXYPlotRenderer/configSchema.js +1 -19
- package/dist/MultiXYPlotRenderer/index.d.ts +1 -1
- package/dist/QuantitativeTrack/configSchema.d.ts +1 -1
- package/dist/QuantitativeTrack/configSchema.js +1 -7
- package/dist/QuantitativeTrack/index.d.ts +1 -1
- package/dist/QuantitativeTrack/index.js +1 -1
- package/dist/Tooltip.d.ts +2 -3
- package/dist/Tooltip.js +7 -34
- package/dist/WiggleBaseRenderer.d.ts +8 -11
- package/dist/WiggleBaseRenderer.js +0 -1
- package/dist/WiggleRPC/MultiWiggleGetSources.d.ts +5 -12
- package/dist/WiggleRPC/MultiWiggleGetSources.js +2 -29
- package/dist/WiggleRPC/WiggleGetGlobalQuantitativeStats.d.ts +5 -7
- package/dist/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +2 -15
- package/dist/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.d.ts +4 -11
- package/dist/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +2 -29
- package/dist/WiggleRendering.d.ts +3 -4
- package/dist/WiggleRendering.js +5 -30
- package/dist/XYPlotRenderer/XYPlotRenderer.d.ts +3 -2
- package/dist/XYPlotRenderer/XYPlotRenderer.js +37 -6
- package/dist/XYPlotRenderer/configSchema.d.ts +0 -12
- package/dist/XYPlotRenderer/configSchema.js +2 -20
- package/dist/XYPlotRenderer/index.d.ts +1 -1
- package/dist/configSchema.d.ts +0 -18
- package/dist/configSchema.js +1 -23
- package/dist/drawDensity.d.ts +3 -3
- package/dist/drawDensity.js +0 -4
- package/dist/drawLine.d.ts +3 -3
- package/dist/drawLine.js +0 -5
- package/dist/drawXY.d.ts +4 -3
- package/dist/drawXY.js +28 -12
- package/dist/getMultiWiggleSourcesAutorun.d.ts +2 -2
- package/dist/getMultiWiggleSourcesAutorun.js +10 -7
- package/dist/getQuantitativeStats.d.ts +3 -3
- package/dist/getQuantitativeStats.js +2 -10
- package/dist/getQuantitativeStatsAutorun.d.ts +3 -3
- package/dist/getQuantitativeStatsAutorun.js +18 -20
- package/dist/index.d.ts +7 -7
- package/dist/index.js +40 -58
- package/dist/shared/SetMinMaxDialog.d.ts +1 -2
- package/dist/shared/SetMinMaxDialog.js +12 -42
- package/dist/shared/SharedWiggleConfigSchema.d.ts +0 -26
- package/dist/shared/SharedWiggleConfigSchema.js +1 -30
- package/dist/shared/SharedWiggleMixin.d.ts +26 -231
- package/dist/shared/SharedWiggleMixin.js +24 -184
- package/dist/shared/YScaleBar.d.ts +1 -2
- package/dist/shared/YScaleBar.js +2 -5
- package/dist/util.d.ts +0 -28
- package/dist/util.js +1 -45
- package/esm/BigWigAdapter/BigWigAdapter.d.ts +4 -3
- package/esm/BigWigAdapter/BigWigAdapter.js +5 -10
- package/esm/BigWigAdapter/configSchema.d.ts +0 -9
- package/esm/BigWigAdapter/configSchema.js +1 -13
- package/esm/BigWigAdapter/index.d.ts +1 -1
- package/esm/CreateMultiWiggleExtension/ConfirmDialog.d.ts +2 -3
- package/esm/CreateMultiWiggleExtension/ConfirmDialog.js +14 -26
- package/esm/CreateMultiWiggleExtension/index.d.ts +1 -1
- package/esm/CreateMultiWiggleExtension/index.js +26 -26
- package/esm/DensityRenderer/DensityRenderer.d.ts +2 -1
- package/esm/DensityRenderer/DensityRenderer.js +1 -1
- package/esm/DensityRenderer/configSchema.js +1 -7
- package/esm/DensityRenderer/index.d.ts +1 -1
- package/esm/DensityRenderer/index.js +1 -1
- package/esm/GuessAdapter/index.d.ts +2 -0
- package/esm/GuessAdapter/index.js +22 -0
- package/esm/LinePlotRenderer/LinePlotRenderer.d.ts +3 -2
- package/esm/LinePlotRenderer/LinePlotRenderer.js +1 -1
- package/esm/LinePlotRenderer/configSchema.d.ts +0 -3
- package/esm/LinePlotRenderer/configSchema.js +1 -10
- package/esm/LinePlotRenderer/index.d.ts +1 -1
- package/esm/LinearWiggleDisplay/components/SetColorDialog.d.ts +1 -2
- package/esm/LinearWiggleDisplay/components/SetColorDialog.js +23 -36
- package/esm/LinearWiggleDisplay/components/Tooltip.d.ts +3 -4
- package/esm/LinearWiggleDisplay/components/Tooltip.js +5 -18
- package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +2 -3
- package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.js +12 -15
- package/esm/LinearWiggleDisplay/configSchema.d.ts +1 -12
- package/esm/LinearWiggleDisplay/configSchema.js +0 -15
- package/esm/LinearWiggleDisplay/index.d.ts +1 -1
- package/esm/LinearWiggleDisplay/index.js +1 -1
- package/esm/LinearWiggleDisplay/model.d.ts +44 -79
- package/esm/LinearWiggleDisplay/model.js +24 -66
- package/esm/LinearWiggleDisplay/renderSvg.d.ts +3 -4
- package/esm/LinearWiggleDisplay/renderSvg.js +2 -6
- package/esm/MultiDensityRenderer/MultiDensityRenderer.d.ts +4 -3
- package/esm/MultiDensityRenderer/MultiDensityRenderer.js +5 -4
- package/esm/MultiDensityRenderer/configSchema.js +1 -7
- package/esm/MultiDensityRenderer/index.d.ts +1 -1
- package/esm/MultiLineRenderer/MultiLineRenderer.d.ts +3 -2
- package/esm/MultiLineRenderer/MultiLineRenderer.js +1 -2
- package/esm/MultiLineRenderer/configSchema.d.ts +0 -6
- package/esm/MultiLineRenderer/configSchema.js +1 -13
- package/esm/MultiLineRenderer/index.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/ColorLegend.d.ts +3 -5
- package/esm/MultiLinearWiggleDisplay/components/ColorLegend.js +5 -15
- package/esm/MultiLinearWiggleDisplay/components/FullHeightScaleBar.d.ts +7 -0
- package/esm/MultiLinearWiggleDisplay/components/FullHeightScaleBar.js +12 -0
- package/esm/MultiLinearWiggleDisplay/components/IndividualScaleBars.d.ts +7 -0
- package/esm/MultiLinearWiggleDisplay/components/IndividualScaleBars.js +10 -0
- package/esm/MultiLinearWiggleDisplay/components/LegendItem.d.ts +11 -0
- package/esm/MultiLinearWiggleDisplay/components/LegendItem.js +14 -0
- package/esm/MultiLinearWiggleDisplay/components/RectBg.d.ts +1 -2
- package/esm/MultiLinearWiggleDisplay/components/RectBg.js +2 -2
- package/esm/MultiLinearWiggleDisplay/components/ScoreLegend.d.ts +2 -3
- package/esm/MultiLinearWiggleDisplay/components/ScoreLegend.js +3 -5
- package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +2 -3
- package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.js +22 -38
- package/esm/MultiLinearWiggleDisplay/components/SourcesGrid.d.ts +2 -3
- package/esm/MultiLinearWiggleDisplay/components/SourcesGrid.js +64 -91
- package/esm/MultiLinearWiggleDisplay/components/Tooltip.d.ts +4 -5
- package/esm/MultiLinearWiggleDisplay/components/Tooltip.js +8 -23
- package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +2 -3
- package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +2 -4
- package/esm/MultiLinearWiggleDisplay/components/YScaleBars.d.ts +2 -3
- package/esm/MultiLinearWiggleDisplay/components/YScaleBars.js +8 -28
- package/esm/MultiLinearWiggleDisplay/components/util.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/util.js +1 -1
- package/esm/MultiLinearWiggleDisplay/configSchema.d.ts +1 -10
- package/esm/MultiLinearWiggleDisplay/configSchema.js +1 -19
- package/esm/MultiLinearWiggleDisplay/index.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/index.js +1 -1
- package/esm/MultiLinearWiggleDisplay/model.d.ts +27 -146
- package/esm/MultiLinearWiggleDisplay/model.js +27 -121
- package/esm/MultiLinearWiggleDisplay/renderSvg.d.ts +3 -4
- package/esm/MultiLinearWiggleDisplay/renderSvg.js +2 -5
- package/esm/MultiLinearWiggleDisplay/util.d.ts +1 -0
- package/esm/MultiLinearWiggleDisplay/util.js +7 -0
- package/esm/MultiQuantitativeTrack/configSchema.d.ts +1 -1
- package/esm/MultiQuantitativeTrack/configSchema.js +1 -7
- package/esm/MultiQuantitativeTrack/index.d.ts +1 -1
- package/esm/MultiQuantitativeTrack/index.js +1 -1
- package/esm/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +3 -2
- package/esm/MultiRowLineRenderer/MultiRowLineRenderer.js +1 -2
- package/esm/MultiRowLineRenderer/configSchema.d.ts +0 -6
- package/esm/MultiRowLineRenderer/configSchema.js +2 -14
- package/esm/MultiRowLineRenderer/index.d.ts +1 -1
- package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +3 -2
- package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +1 -2
- package/esm/MultiRowXYPlotRenderer/configSchema.d.ts +0 -12
- package/esm/MultiRowXYPlotRenderer/configSchema.js +2 -20
- package/esm/MultiRowXYPlotRenderer/index.d.ts +1 -1
- package/esm/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +4 -3
- package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js +9 -14
- package/esm/MultiWiggleAdapter/configSchema.d.ts +0 -6
- package/esm/MultiWiggleAdapter/configSchema.js +1 -10
- package/esm/MultiWiggleAdapter/index.d.ts +1 -1
- package/esm/MultiWiggleAdapter/index.js +1 -1
- package/esm/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.d.ts +4 -4
- package/esm/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.js +63 -80
- package/esm/MultiWiggleAddTrackWorkflow/index.d.ts +1 -1
- package/esm/MultiWiggleAddTrackWorkflow/index.js +1 -2
- package/esm/MultiWiggleRendering.d.ts +4 -5
- package/esm/MultiWiggleRendering.js +6 -6
- package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +3 -2
- package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.js +2 -3
- package/esm/MultiXYPlotRenderer/configSchema.d.ts +0 -12
- package/esm/MultiXYPlotRenderer/configSchema.js +1 -19
- package/esm/MultiXYPlotRenderer/index.d.ts +1 -1
- package/esm/QuantitativeTrack/configSchema.d.ts +1 -1
- package/esm/QuantitativeTrack/configSchema.js +1 -7
- package/esm/QuantitativeTrack/index.d.ts +1 -1
- package/esm/QuantitativeTrack/index.js +1 -1
- package/esm/Tooltip.d.ts +2 -3
- package/esm/Tooltip.js +7 -11
- package/esm/WiggleBaseRenderer.d.ts +8 -11
- package/esm/WiggleBaseRenderer.js +0 -1
- package/esm/WiggleRPC/MultiWiggleGetSources.d.ts +5 -12
- package/esm/WiggleRPC/MultiWiggleGetSources.js +2 -29
- package/esm/WiggleRPC/WiggleGetGlobalQuantitativeStats.d.ts +5 -7
- package/esm/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +2 -15
- package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.d.ts +4 -11
- package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +2 -29
- package/esm/WiggleRendering.d.ts +3 -4
- package/esm/WiggleRendering.js +5 -7
- package/esm/XYPlotRenderer/XYPlotRenderer.d.ts +3 -2
- package/esm/XYPlotRenderer/XYPlotRenderer.js +3 -5
- package/esm/XYPlotRenderer/configSchema.d.ts +0 -12
- package/esm/XYPlotRenderer/configSchema.js +2 -20
- package/esm/XYPlotRenderer/index.d.ts +1 -1
- package/esm/configSchema.d.ts +0 -18
- package/esm/configSchema.js +1 -23
- package/esm/drawDensity.d.ts +3 -3
- package/esm/drawDensity.js +1 -5
- package/esm/drawLine.d.ts +3 -3
- package/esm/drawLine.js +1 -6
- package/esm/drawXY.d.ts +4 -3
- package/esm/drawXY.js +29 -13
- package/esm/getMultiWiggleSourcesAutorun.d.ts +2 -2
- package/esm/getMultiWiggleSourcesAutorun.js +9 -6
- package/esm/getQuantitativeStats.d.ts +3 -3
- package/esm/getQuantitativeStats.js +3 -11
- package/esm/getQuantitativeStatsAutorun.d.ts +3 -3
- package/esm/getQuantitativeStatsAutorun.js +18 -20
- package/esm/index.d.ts +7 -7
- package/esm/index.js +14 -42
- package/esm/shared/SetMinMaxDialog.d.ts +1 -2
- package/esm/shared/SetMinMaxDialog.js +12 -19
- package/esm/shared/SharedWiggleConfigSchema.d.ts +0 -26
- package/esm/shared/SharedWiggleConfigSchema.js +1 -30
- package/esm/shared/SharedWiggleMixin.d.ts +26 -231
- package/esm/shared/SharedWiggleMixin.js +8 -178
- package/esm/shared/YScaleBar.d.ts +1 -2
- package/esm/shared/YScaleBar.js +2 -2
- package/esm/util.d.ts +0 -28
- package/esm/util.js +1 -45
- package/package.json +3 -6
- package/dist/MultiLinearWiggleDisplay/components/DraggableDialog.d.ts +0 -6
- package/dist/MultiLinearWiggleDisplay/components/DraggableDialog.js +0 -66
- package/esm/MultiLinearWiggleDisplay/components/DraggableDialog.d.ts +0 -6
- package/esm/MultiLinearWiggleDisplay/components/DraggableDialog.js +0 -38
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { getContainingView } from '@jbrowse/core/util';
|
|
3
|
+
import { observer } from 'mobx-react';
|
|
4
|
+
import ColorLegend from './ColorLegend';
|
|
5
|
+
import { getOffset } from './util';
|
|
6
|
+
import YScaleBar from '../../shared/YScaleBar';
|
|
7
|
+
const FullHeightScaleBar = observer(function ({ model, orientation, exportSVG, }) {
|
|
8
|
+
const { labelWidth } = model;
|
|
9
|
+
const { width: viewWidth } = getContainingView(model);
|
|
10
|
+
return (_jsxs(_Fragment, { children: [_jsx("g", { transform: `translate(${!exportSVG ? getOffset(model) : 0},0)`, children: _jsx(YScaleBar, { model: model, orientation: orientation }) }), _jsx("g", { transform: `translate(${viewWidth - labelWidth - 100},0)`, children: _jsx(ColorLegend, { exportSVG: exportSVG, model: model, rowHeight: 12 }) })] }));
|
|
11
|
+
});
|
|
12
|
+
export default FullHeightScaleBar;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { WiggleDisplayModel } from '../model';
|
|
2
|
+
declare const IndividualScaleBars: ({ model, orientation, exportSVG, }: {
|
|
3
|
+
model: WiggleDisplayModel;
|
|
4
|
+
orientation?: string;
|
|
5
|
+
exportSVG?: boolean;
|
|
6
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
7
|
+
export default IndividualScaleBars;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { observer } from 'mobx-react';
|
|
3
|
+
import ColorLegend from './ColorLegend';
|
|
4
|
+
import ScoreLegend from './ScoreLegend';
|
|
5
|
+
import YScaleBar from '../../shared/YScaleBar';
|
|
6
|
+
const IndividualScaleBars = observer(function ({ model, orientation, exportSVG, }) {
|
|
7
|
+
const { sources, rowHeight, rowHeightTooSmallForScalebar, needsCustomLegend, ticks, } = model;
|
|
8
|
+
return (sources === null || sources === void 0 ? void 0 : sources.length) ? (_jsxs(_Fragment, { children: [_jsx(ColorLegend, { exportSVG: exportSVG, model: model, rowHeight: model.rowHeight }), rowHeightTooSmallForScalebar || needsCustomLegend ? (_jsx(ScoreLegend, { model: model })) : (sources.map((_source, idx) => (_jsx("g", { transform: `translate(0 ${rowHeight * idx})`, children: _jsx(YScaleBar, { model: model, orientation: orientation }) }, `${JSON.stringify(ticks)}-${idx}`))))] })) : null;
|
|
9
|
+
});
|
|
10
|
+
export default IndividualScaleBars;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Source } from '../../util';
|
|
2
|
+
import type { WiggleDisplayModel } from '../model';
|
|
3
|
+
declare const LegendItem: ({ source, idx, rowHeight, labelWidth, model, exportSVG, }: {
|
|
4
|
+
source: Source;
|
|
5
|
+
idx: number;
|
|
6
|
+
rowHeight: number;
|
|
7
|
+
labelWidth: number;
|
|
8
|
+
model: WiggleDisplayModel;
|
|
9
|
+
exportSVG?: boolean;
|
|
10
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export default LegendItem;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import RectBg from './RectBg';
|
|
3
|
+
const LegendItem = function ({ source, idx, rowHeight, labelWidth, model, exportSVG, }) {
|
|
4
|
+
const boxHeight = Math.min(20, rowHeight);
|
|
5
|
+
const { needsCustomLegend, needsScalebar, needsFullHeightScalebar, rowHeightTooSmallForScalebar, renderColorBoxes, } = model;
|
|
6
|
+
const svgFontSize = Math.min(rowHeight, 12);
|
|
7
|
+
const canDisplayLabel = rowHeight > 11;
|
|
8
|
+
const colorBoxWidth = renderColorBoxes ? 15 : 0;
|
|
9
|
+
const legendWidth = labelWidth + colorBoxWidth + 5;
|
|
10
|
+
const svgOffset = exportSVG ? 10 : 0;
|
|
11
|
+
const extraOffset = svgOffset || (needsScalebar && !rowHeightTooSmallForScalebar ? 50 : 0);
|
|
12
|
+
return (_jsxs(_Fragment, { children: [needsFullHeightScalebar ? null : (_jsx(RectBg, { y: idx * rowHeight + 1, x: extraOffset, width: legendWidth, height: boxHeight })), source.color ? (_jsx(RectBg, { y: idx * rowHeight + 1, x: extraOffset, width: colorBoxWidth, height: needsCustomLegend ? rowHeight : boxHeight, color: source.color })) : null, canDisplayLabel ? (_jsx("text", { y: idx * rowHeight + 13, x: extraOffset + colorBoxWidth + 2, fontSize: svgFontSize, children: source.name })) : null] }));
|
|
13
|
+
};
|
|
14
|
+
export default LegendItem;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
2
|
import { getFillProps } from '@jbrowse/core/util';
|
|
2
|
-
import React from 'react';
|
|
3
3
|
const RectBg = (props) => {
|
|
4
4
|
const { color = 'rgb(255,255,255,0.8)' } = props;
|
|
5
|
-
return
|
|
5
|
+
return _jsx("rect", { ...props, ...getFillProps(color) });
|
|
6
6
|
};
|
|
7
7
|
export default RectBg;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { WiggleDisplayModel } from '../model';
|
|
1
|
+
import type { WiggleDisplayModel } from '../model';
|
|
3
2
|
declare const ScoreLegend: ({ model }: {
|
|
4
3
|
model: WiggleDisplayModel;
|
|
5
|
-
}) =>
|
|
4
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
6
5
|
export default ScoreLegend;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { getContainingView, measureText } from '@jbrowse/core/util';
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
4
|
import RectBg from './RectBg';
|
|
5
5
|
const ScoreLegend = observer(({ model }) => {
|
|
@@ -9,8 +9,6 @@ const ScoreLegend = observer(({ model }) => {
|
|
|
9
9
|
const len = measureText(legend, 14);
|
|
10
10
|
const padding = 25;
|
|
11
11
|
const xpos = width - len - padding;
|
|
12
|
-
return (
|
|
13
|
-
React.createElement(RectBg, { y: 0, x: xpos, width: len + 6, height: 16 }),
|
|
14
|
-
React.createElement("text", { y: 13, x: xpos }, legend)));
|
|
12
|
+
return (_jsxs(_Fragment, { children: [_jsx(RectBg, { y: 0, x: xpos, width: len + 6, height: 16 }), _jsx("text", { y: 13, x: xpos, children: legend })] }));
|
|
15
13
|
});
|
|
16
14
|
export default ScoreLegend;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Source } from '../../util';
|
|
1
|
+
import type { Source } from '../../util';
|
|
3
2
|
export default function SetColorDialog({ model, handleClose, }: {
|
|
4
3
|
model: {
|
|
5
4
|
sources?: Source[];
|
|
@@ -7,4 +6,4 @@ export default function SetColorDialog({ model, handleClose, }: {
|
|
|
7
6
|
clearLayout: () => void;
|
|
8
7
|
};
|
|
9
8
|
handleClose: () => void;
|
|
10
|
-
}):
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,49 +1,33 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import DraggableDialog from '@jbrowse/core/ui/DraggableDialog';
|
|
4
4
|
import { useLocalStorage } from '@jbrowse/core/util';
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
import DraggableDialog from './DraggableDialog';
|
|
5
|
+
import { Button, DialogActions, DialogContent } from '@mui/material';
|
|
6
|
+
import { makeStyles } from 'tss-react/mui';
|
|
8
7
|
import SourcesGrid from './SourcesGrid';
|
|
9
8
|
const useStyles = makeStyles()({
|
|
10
9
|
content: {
|
|
11
10
|
minWidth: 800,
|
|
12
11
|
},
|
|
12
|
+
float: {
|
|
13
|
+
float: 'right',
|
|
14
|
+
},
|
|
13
15
|
});
|
|
14
16
|
export default function SetColorDialog({ model, handleClose, }) {
|
|
15
17
|
const { classes } = useStyles();
|
|
16
18
|
const { sources } = model;
|
|
17
|
-
const [currLayout, setCurrLayout] = useState(
|
|
18
|
-
const [showTips, setShowTips] = useLocalStorage('multiwiggle-showTips',
|
|
19
|
-
return (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
React.createElement("li", null, "Sorting the data grid itself can also re-arrange subtracks"),
|
|
32
|
-
React.createElement("li", null, "Changes are applied when you hit Submit"),
|
|
33
|
-
React.createElement("li", null, "You can click and drag the dialog box to move it on the screen"),
|
|
34
|
-
React.createElement("li", null, "Columns in the table can be hidden using a vertical '...' menu on the right side of each column")))) : null,
|
|
35
|
-
React.createElement(SourcesGrid, { rows: currLayout, onChange: setCurrLayout, showTips: showTips })),
|
|
36
|
-
React.createElement(DialogActions, null,
|
|
37
|
-
React.createElement(Button, { variant: "contained", type: "submit", color: "inherit", onClick: () => {
|
|
38
|
-
model.clearLayout();
|
|
39
|
-
setCurrLayout(model.sources || []);
|
|
40
|
-
} }, "Clear custom settings"),
|
|
41
|
-
React.createElement(Button, { variant: "contained", color: "secondary", onClick: () => {
|
|
42
|
-
handleClose();
|
|
43
|
-
setCurrLayout([...(model.sources || [])]);
|
|
44
|
-
} }, "Cancel"),
|
|
45
|
-
React.createElement(Button, { variant: "contained", color: "primary", type: "submit", onClick: () => {
|
|
46
|
-
model.setLayout(currLayout);
|
|
47
|
-
handleClose();
|
|
48
|
-
} }, "Submit"))));
|
|
19
|
+
const [currLayout, setCurrLayout] = useState(structuredClone(sources || []));
|
|
20
|
+
const [showTips, setShowTips] = useLocalStorage('multiwiggle-showTips', false);
|
|
21
|
+
return (_jsxs(DraggableDialog, { open: true, onClose: handleClose, maxWidth: "xl", title: "Multi-wiggle color/arrangement editor", children: [_jsxs(DialogContent, { className: classes.content, children: [_jsx(Button, { variant: "contained", className: classes.float, onClick: () => {
|
|
22
|
+
setShowTips(!showTips);
|
|
23
|
+
}, children: showTips ? 'Hide tips' : 'Show tips' }), _jsx("br", {}), showTips ? (_jsxs(_Fragment, { children: ["Helpful tips", _jsxs("ul", { children: [_jsx("li", { children: "You can select rows in the table with the checkboxes" }), _jsx("li", { children: "Multi-select is enabled with shift-click and control-click" }), _jsx("li", { children: "The \"Move selected items up/down\" can re-arrange subtracks" }), _jsx("li", { children: "Sorting the data grid itself can also re-arrange subtracks" }), _jsx("li", { children: "Changes are applied when you hit Submit" }), _jsx("li", { children: "You can click and drag the dialog box to move it on the screen" }), _jsx("li", { children: "Columns in the table can be hidden using a vertical '...' menu on the right side of each column" })] })] })) : null, _jsx(SourcesGrid, { rows: currLayout, onChange: setCurrLayout, showTips: showTips })] }), _jsxs(DialogActions, { children: [_jsx(Button, { variant: "contained", type: "submit", color: "inherit", onClick: () => {
|
|
24
|
+
model.clearLayout();
|
|
25
|
+
setCurrLayout(model.sources || []);
|
|
26
|
+
}, children: "Clear custom settings" }), _jsx(Button, { variant: "contained", color: "secondary", onClick: () => {
|
|
27
|
+
handleClose();
|
|
28
|
+
setCurrLayout([...(model.sources || [])]);
|
|
29
|
+
}, children: "Cancel" }), _jsx(Button, { variant: "contained", color: "primary", type: "submit", onClick: () => {
|
|
30
|
+
model.setLayout(currLayout);
|
|
31
|
+
handleClose();
|
|
32
|
+
}, children: "Submit" })] })] }));
|
|
49
33
|
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Source } from '../../util';
|
|
1
|
+
import type { Source } from '../../util';
|
|
3
2
|
declare function SourcesGrid({ rows, onChange, showTips, }: {
|
|
4
3
|
rows: Source[];
|
|
5
4
|
onChange: (arg: Source[]) => void;
|
|
6
5
|
showTips: boolean;
|
|
7
|
-
}):
|
|
6
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
8
7
|
export default SourcesGrid;
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import { getStr, measureGridWidth } from '@jbrowse/core/util';
|
|
4
|
-
import { DataGrid } from '@mui/x-data-grid';
|
|
5
|
-
import { makeStyles } from 'tss-react/mui';
|
|
6
|
-
import ColorPicker, { ColorPopover } from '@jbrowse/core/ui/ColorPicker';
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
7
3
|
import { SanitizedHTML } from '@jbrowse/core/ui';
|
|
8
|
-
|
|
9
|
-
import {
|
|
10
|
-
// icons
|
|
11
|
-
import KeyboardDoubleArrowUpIcon from '@mui/icons-material/KeyboardDoubleArrowUp';
|
|
12
|
-
import KeyboardDoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';
|
|
4
|
+
import ColorPicker, { ColorPopover } from '@jbrowse/core/ui/ColorPicker';
|
|
5
|
+
import { getStr, measureGridWidth } from '@jbrowse/core/util';
|
|
13
6
|
import KeyboardArrowDownIcon from '@mui/icons-material/KeyboardArrowDown';
|
|
14
7
|
import KeyboardArrowUpIcon from '@mui/icons-material/KeyboardArrowUp';
|
|
8
|
+
import KeyboardDoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';
|
|
9
|
+
import KeyboardDoubleArrowUpIcon from '@mui/icons-material/KeyboardDoubleArrowUp';
|
|
10
|
+
import { Button } from '@mui/material';
|
|
11
|
+
import { DataGrid } from '@mui/x-data-grid';
|
|
12
|
+
import { makeStyles } from 'tss-react/mui';
|
|
13
|
+
import { moveDown, moveUp } from './util';
|
|
15
14
|
const useStyles = makeStyles()({
|
|
16
15
|
cell: {
|
|
17
16
|
whiteSpace: 'nowrap',
|
|
@@ -29,91 +28,65 @@ function SourcesGrid({ rows, onChange, showTips, }) {
|
|
|
29
28
|
idx: 0,
|
|
30
29
|
field: null,
|
|
31
30
|
});
|
|
32
|
-
return (
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
if (elt) {
|
|
61
|
-
elt.color = c;
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
onChange([...rows]);
|
|
65
|
-
}, onClose: () => {
|
|
66
|
-
setAnchorEl(null);
|
|
67
|
-
} }),
|
|
68
|
-
React.createElement("div", { style: { height: 400, width: '100%' } },
|
|
69
|
-
React.createElement(DataGrid, { getRowId: row => row.name, checkboxSelection: true, disableRowSelectionOnClick: true, onRowSelectionModelChange: arg => {
|
|
70
|
-
setSelected(arg);
|
|
71
|
-
}, rows: rows, rowHeight: 25, columnHeaderHeight: 33, columns: [
|
|
72
|
-
{
|
|
73
|
-
field: 'color',
|
|
74
|
-
headerName: 'Color',
|
|
75
|
-
renderCell: params => {
|
|
76
|
-
const { value, id } = params;
|
|
77
|
-
return (React.createElement(ColorPicker, { color: value || 'blue', onChange: c => {
|
|
31
|
+
return (_jsxs("div", { children: [_jsx(Button, { disabled: !selected.length, onClick: event => {
|
|
32
|
+
setAnchorEl(event.currentTarget);
|
|
33
|
+
}, children: "Change color of selected items" }), _jsxs(Button, { onClick: () => {
|
|
34
|
+
onChange(moveUp([...rows], selected));
|
|
35
|
+
}, disabled: !selected.length, children: [_jsx(KeyboardArrowUpIcon, {}), showTips ? 'Move selected items up' : null] }), _jsxs(Button, { onClick: () => {
|
|
36
|
+
onChange(moveDown([...rows], selected));
|
|
37
|
+
}, disabled: !selected.length, children: [_jsx(KeyboardArrowDownIcon, {}), showTips ? 'Move selected items down' : null] }), _jsxs(Button, { onClick: () => {
|
|
38
|
+
onChange(moveUp([...rows], selected, rows.length));
|
|
39
|
+
}, disabled: !selected.length, children: [_jsx(KeyboardDoubleArrowUpIcon, {}), showTips ? 'Move selected items to top' : null] }), _jsxs(Button, { onClick: () => {
|
|
40
|
+
onChange(moveDown([...rows], selected, rows.length));
|
|
41
|
+
}, disabled: !selected.length, children: [_jsx(KeyboardDoubleArrowDownIcon, {}), showTips ? 'Move selected items to bottom' : null] }), _jsx(ColorPopover, { anchorEl: anchorEl, color: widgetColor, onChange: c => {
|
|
42
|
+
setWidgetColor(c);
|
|
43
|
+
selected.forEach(id => {
|
|
44
|
+
const elt = rows.find(f => f.name === id);
|
|
45
|
+
if (elt) {
|
|
46
|
+
elt.color = c;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
onChange([...rows]);
|
|
50
|
+
}, onClose: () => {
|
|
51
|
+
setAnchorEl(null);
|
|
52
|
+
} }), _jsx("div", { style: { height: 400, width: '100%' }, children: _jsx(DataGrid, { getRowId: row => row.name, checkboxSelection: true, disableRowSelectionOnClick: true, onRowSelectionModelChange: arg => {
|
|
53
|
+
setSelected(arg);
|
|
54
|
+
}, rows: rows, rowHeight: 25, columnHeaderHeight: 33, columns: [
|
|
55
|
+
{
|
|
56
|
+
field: 'color',
|
|
57
|
+
headerName: 'Color',
|
|
58
|
+
renderCell: ({ value, id }) => (_jsx(ColorPicker, { color: value || 'blue', onChange: c => {
|
|
78
59
|
const elt = rows.find(f => f.name === id);
|
|
79
60
|
if (elt) {
|
|
80
61
|
elt.color = c;
|
|
81
62
|
}
|
|
82
63
|
onChange([...rows]);
|
|
83
|
-
} }))
|
|
64
|
+
} })),
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
field: 'name',
|
|
68
|
+
headerName: 'Name',
|
|
69
|
+
width: measureGridWidth(rows.map(r => r.name)),
|
|
84
70
|
},
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
const idx = (currSort.idx + 1) % 2;
|
|
106
|
-
const field = sort.field || currSort.field;
|
|
107
|
-
setCurrSort({ idx, field });
|
|
108
|
-
onChange(field
|
|
109
|
-
? [...rows].sort((a, b) => {
|
|
110
|
-
const aa = getStr(a[field]);
|
|
111
|
-
const bb = getStr(b[field]);
|
|
112
|
-
return idx === 1
|
|
113
|
-
? aa.localeCompare(bb)
|
|
114
|
-
: bb.localeCompare(aa);
|
|
115
|
-
})
|
|
116
|
-
: rows);
|
|
117
|
-
} }))));
|
|
71
|
+
...Object.keys(rest).map(val => ({
|
|
72
|
+
field: val,
|
|
73
|
+
renderCell: ({ value }) => (_jsx("div", { className: classes.cell, children: _jsx(SanitizedHTML, { html: getStr(value) }) })),
|
|
74
|
+
width: measureGridWidth(rows.map(r => `${r[val]}`)),
|
|
75
|
+
})),
|
|
76
|
+
], sortModel: [], onSortModelChange: args => {
|
|
77
|
+
const sort = args[0];
|
|
78
|
+
const idx = (currSort.idx + 1) % 2;
|
|
79
|
+
const field = sort.field || currSort.field;
|
|
80
|
+
setCurrSort({ idx, field });
|
|
81
|
+
onChange(field
|
|
82
|
+
? [...rows].sort((a, b) => {
|
|
83
|
+
const aa = getStr(a[field]);
|
|
84
|
+
const bb = getStr(b[field]);
|
|
85
|
+
return idx === 1
|
|
86
|
+
? aa.localeCompare(bb)
|
|
87
|
+
: bb.localeCompare(aa);
|
|
88
|
+
})
|
|
89
|
+
: rows);
|
|
90
|
+
} }) })] }));
|
|
118
91
|
}
|
|
119
92
|
export default SourcesGrid;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { TooltipContentsComponent } from '../../Tooltip';
|
|
1
|
+
import type { TooltipContentsComponent } from '../../Tooltip';
|
|
2
|
+
import type { Source } from '../../util';
|
|
3
|
+
import type { Feature } from '@jbrowse/core/util';
|
|
5
4
|
type Coord = [number, number];
|
|
6
5
|
declare const WiggleTooltip: (props: {
|
|
7
6
|
model: {
|
|
@@ -14,6 +13,6 @@ declare const WiggleTooltip: (props: {
|
|
|
14
13
|
clientMouseCoord: Coord;
|
|
15
14
|
clientRect?: DOMRect;
|
|
16
15
|
TooltipContents?: TooltipContentsComponent;
|
|
17
|
-
}) =>
|
|
16
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
18
17
|
export default WiggleTooltip;
|
|
19
18
|
export { default as Tooltip } from '../../Tooltip';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from 'react';
|
|
2
3
|
import { observer } from 'mobx-react';
|
|
3
|
-
// locals
|
|
4
|
-
import { toP } from '../../util';
|
|
5
4
|
import Tooltip from '../../Tooltip';
|
|
5
|
+
import { toP } from '../../util';
|
|
6
6
|
const en = (n) => n.toLocaleString('en-US');
|
|
7
|
-
const TooltipContents =
|
|
7
|
+
const TooltipContents = forwardRef(function TooltipContents2({ model, feature }, ref) {
|
|
8
8
|
const start = feature.get('start');
|
|
9
9
|
const end = feature.get('end');
|
|
10
10
|
const refName = feature.get('refName');
|
|
@@ -13,27 +13,12 @@ const TooltipContents = React.forwardRef(function TooltipContents2({ model, feat
|
|
|
13
13
|
const source = feature.get('source');
|
|
14
14
|
const summary = feature.get('summary');
|
|
15
15
|
const obj = Object.fromEntries(model.sources.map(ent => [ent.name, ent]));
|
|
16
|
-
return (
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
sources ? (React.createElement("table", null,
|
|
20
|
-
React.createElement("thead", null,
|
|
21
|
-
React.createElement("tr", null,
|
|
22
|
-
React.createElement("th", null, "color"),
|
|
23
|
-
React.createElement("th", null, "source"),
|
|
24
|
-
React.createElement("th", null, "score"))),
|
|
25
|
-
React.createElement("tbody", null, Object.entries(sources).map(([source, data]) => (React.createElement("tr", { key: source },
|
|
26
|
-
React.createElement("td", { style: { background: obj[source].color } }, " "),
|
|
27
|
-
React.createElement("td", null, source),
|
|
28
|
-
React.createElement("td", null, toP(data.score)))))))) : (React.createElement("span", null,
|
|
29
|
-
source,
|
|
30
|
-
' ',
|
|
31
|
-
summary
|
|
32
|
-
? `min:${toP(feature.get('minScore'))} avg:${toP(feature.get('score'))} max:${toP(feature.get('maxScore'))}`
|
|
33
|
-
: toP(feature.get('score'))))));
|
|
16
|
+
return (_jsxs("div", { ref: ref, children: [[refName, coord].filter(f => !!f).join(':'), _jsx("br", {}), sources ? (_jsxs("table", { children: [_jsx("thead", { children: _jsxs("tr", { children: [_jsx("th", { children: "color" }), _jsx("th", { children: "source" }), _jsx("th", { children: "score" })] }) }), _jsx("tbody", { children: Object.entries(sources).map(([source, data]) => (_jsxs("tr", { children: [_jsx("td", { style: { background: obj[source].color }, children: " " }), _jsx("td", { children: source }), _jsx("td", { children: toP(data.score) })] }, source))) })] })) : (_jsxs("span", { children: [source, ' ', summary
|
|
17
|
+
? `min:${toP(feature.get('minScore'))} avg:${toP(feature.get('score'))} max:${toP(feature.get('maxScore'))}`
|
|
18
|
+
: toP(feature.get('score'))] }))] }));
|
|
34
19
|
});
|
|
35
20
|
const WiggleTooltip = observer((props) => {
|
|
36
|
-
return
|
|
21
|
+
return _jsx(Tooltip, { useClientY: true, TooltipContents: TooltipContents, ...props });
|
|
37
22
|
});
|
|
38
23
|
export default WiggleTooltip;
|
|
39
24
|
export { default as Tooltip } from '../../Tooltip';
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { WiggleDisplayModel } from '../model';
|
|
1
|
+
import type { WiggleDisplayModel } from '../model';
|
|
3
2
|
declare const MultiLinearWiggleDisplayComponent: (props: {
|
|
4
3
|
model: WiggleDisplayModel;
|
|
5
|
-
}) =>
|
|
4
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
6
5
|
export default MultiLinearWiggleDisplayComponent;
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { BaseLinearDisplayComponent } from '@jbrowse/plugin-linear-genome-view';
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
4
|
import YScaleBars from './YScaleBars';
|
|
5
5
|
const MultiLinearWiggleDisplayComponent = observer(function (props) {
|
|
6
6
|
const { model } = props;
|
|
7
|
-
return (
|
|
8
|
-
React.createElement(BaseLinearDisplayComponent, { ...props }),
|
|
9
|
-
React.createElement(YScaleBars, { model: model })));
|
|
7
|
+
return (_jsxs("div", { children: [_jsx(BaseLinearDisplayComponent, { ...props }), _jsx(YScaleBars, { model: model })] }));
|
|
10
8
|
});
|
|
11
9
|
export default MultiLinearWiggleDisplayComponent;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { WiggleDisplayModel } from '../model';
|
|
1
|
+
import type { WiggleDisplayModel } from '../model';
|
|
3
2
|
export declare const YScaleBars: (props: {
|
|
4
3
|
model: WiggleDisplayModel;
|
|
5
4
|
orientation?: string;
|
|
6
5
|
exportSVG?: boolean;
|
|
7
|
-
}) =>
|
|
6
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
8
7
|
export default YScaleBars;
|
|
@@ -1,42 +1,22 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { getContainingView } from '@jbrowse/core/util';
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import ScoreLegend from './ScoreLegend';
|
|
7
|
-
import { getOffset } from './util';
|
|
4
|
+
import FullHeightScaleBar from './FullHeightScaleBar';
|
|
5
|
+
import IndividualScaleBars from './IndividualScaleBars';
|
|
8
6
|
const Wrapper = observer(function ({ children, model, exportSVG, }) {
|
|
9
7
|
const { height } = model;
|
|
10
|
-
return exportSVG ? (children) : (
|
|
8
|
+
return exportSVG ? (children) : (_jsx("svg", { style: {
|
|
11
9
|
position: 'absolute',
|
|
12
10
|
top: 0,
|
|
13
11
|
left: 0,
|
|
14
12
|
pointerEvents: 'none',
|
|
15
13
|
height,
|
|
16
14
|
width: getContainingView(model).width,
|
|
17
|
-
}
|
|
15
|
+
}, children: children }));
|
|
18
16
|
});
|
|
19
17
|
export const YScaleBars = observer(function (props) {
|
|
20
18
|
const { model, orientation, exportSVG } = props;
|
|
21
|
-
const { stats,
|
|
22
|
-
|
|
23
|
-
const canDisplayLabel = rowHeight > 11;
|
|
24
|
-
const { width: viewWidth } = getContainingView(model);
|
|
25
|
-
const minWidth = 20;
|
|
26
|
-
const ready = stats && sources;
|
|
27
|
-
if (!ready) {
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
const labelWidth = Math.max(...sources
|
|
31
|
-
.map(s => measureText(s.name, svgFontSize))
|
|
32
|
-
.map(width => (canDisplayLabel ? width : minWidth)));
|
|
33
|
-
return (React.createElement(Wrapper, { ...props }, needsFullHeightScalebar ? (React.createElement(React.Fragment, null,
|
|
34
|
-
React.createElement("g", { transform: `translate(${!exportSVG ? getOffset(model) : 0},0)` },
|
|
35
|
-
React.createElement(YScaleBar, { model: model, orientation: orientation })),
|
|
36
|
-
React.createElement("g", { transform: `translate(${viewWidth - labelWidth - 100},0)` },
|
|
37
|
-
React.createElement(ColorLegend, { exportSVG: exportSVG, model: model, rowHeight: 12, labelWidth: labelWidth })))) : (React.createElement(React.Fragment, null,
|
|
38
|
-
React.createElement(ColorLegend, { exportSVG: exportSVG, model: model, rowHeight: model.rowHeight, labelWidth: labelWidth }),
|
|
39
|
-
rowHeightTooSmallForScalebar || needsCustomLegend ? (React.createElement(ScoreLegend, { ...props })) : (sources.map((_source, idx) => (React.createElement("g", { transform: `translate(0 ${rowHeight * idx})`, key: `${JSON.stringify(ticks)}-${idx}` },
|
|
40
|
-
React.createElement(YScaleBar, { model: model, orientation: orientation })))))))));
|
|
19
|
+
const { stats, needsFullHeightScalebar, sources } = model;
|
|
20
|
+
return stats && sources ? (_jsx(Wrapper, { ...props, children: needsFullHeightScalebar ? (_jsx(FullHeightScaleBar, { model: model, orientation: orientation, exportSVG: exportSVG })) : (_jsx(IndividualScaleBars, { model: model, orientation: orientation, exportSVG: exportSVG })) })) : null;
|
|
41
21
|
});
|
|
42
22
|
export default YScaleBars;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { getContainingTrack, getContainingView, measureText, } from '@jbrowse/core/util';
|
|
2
1
|
import { getConf } from '@jbrowse/core/configuration';
|
|
2
|
+
import { getContainingTrack, getContainingView, measureText, } from '@jbrowse/core/util';
|
|
3
3
|
export function moveUp(arr, sel, by = 1) {
|
|
4
4
|
const idxs = sel
|
|
5
5
|
.map(l => arr.findIndex(v => v.name === l))
|
|
@@ -1,16 +1,10 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
2
|
export default function WiggleConfigFactory(pluginManager: PluginManager): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
3
|
-
/**
|
|
4
|
-
* #slot
|
|
5
|
-
*/
|
|
6
3
|
defaultRendering: {
|
|
7
4
|
type: string;
|
|
8
5
|
model: import("mobx-state-tree").ISimpleType<string>;
|
|
9
6
|
defaultValue: string;
|
|
10
7
|
};
|
|
11
|
-
/**
|
|
12
|
-
* #slot
|
|
13
|
-
*/
|
|
14
8
|
renderers: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
15
9
|
MultiXYPlotRenderer: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
|
|
16
10
|
MultiDensityRenderer: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
|
|
@@ -18,9 +12,6 @@ export default function WiggleConfigFactory(pluginManager: PluginManager): impor
|
|
|
18
12
|
MultiLineRenderer: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
|
|
19
13
|
MultiRowLineRenderer: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
|
|
20
14
|
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
21
|
-
/**
|
|
22
|
-
* #slot
|
|
23
|
-
*/
|
|
24
15
|
height: {
|
|
25
16
|
type: string;
|
|
26
17
|
defaultValue: number;
|