@jbrowse/plugin-wiggle 3.7.0 → 4.0.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/esm/BigWigAdapter/BigWigAdapter.d.ts +14 -1
- package/esm/BigWigAdapter/BigWigAdapter.js +118 -22
- package/esm/BigWigAdapter/configSchema.d.ts +2 -2
- package/esm/BigWigAdapter/configSchema.js +1 -1
- package/esm/BigWigAdapter/index.js +2 -2
- package/esm/CreateMultiWiggleExtension/index.js +1 -1
- package/esm/DensityRenderer/DensityRenderer.d.ts +5 -6
- package/esm/DensityRenderer/DensityRenderer.js +6 -5
- package/esm/DensityRenderer/configSchema.d.ts +3 -3
- package/esm/DensityRenderer/configSchema.js +1 -1
- package/esm/DensityRenderer/index.js +11 -9
- package/esm/DensityRenderer/makeImageData.d.ts +3 -0
- package/esm/DensityRenderer/makeImageData.js +13 -0
- package/esm/DensityRenderer/renderDensity.d.ts +3 -0
- package/esm/DensityRenderer/renderDensity.js +18 -0
- package/esm/LinePlotRenderer/LinePlotRenderer.d.ts +5 -7
- package/esm/LinePlotRenderer/LinePlotRenderer.js +6 -15
- package/esm/LinePlotRenderer/configSchema.d.ts +4 -4
- package/esm/LinePlotRenderer/configSchema.js +1 -1
- package/esm/LinePlotRenderer/index.js +4 -4
- package/esm/LinePlotRenderer/makeImageData.d.ts +3 -0
- package/esm/LinePlotRenderer/makeImageData.js +13 -0
- package/esm/LinePlotRenderer/renderLinePlot.d.ts +3 -0
- package/esm/LinePlotRenderer/renderLinePlot.js +23 -0
- package/esm/LinearWiggleDisplay/components/Tooltip.d.ts +2 -2
- package/esm/LinearWiggleDisplay/components/Tooltip.js +10 -6
- package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +1 -1
- package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.js +2 -2
- package/esm/LinearWiggleDisplay/configSchema.d.ts +9 -9
- package/esm/LinearWiggleDisplay/configSchema.js +2 -2
- package/esm/LinearWiggleDisplay/index.d.ts +3 -3
- package/esm/LinearWiggleDisplay/index.js +6 -6
- package/esm/LinearWiggleDisplay/model.d.ts +1128 -105
- package/esm/LinearWiggleDisplay/model.js +58 -18
- package/esm/LinearWiggleDisplay/renderSvg.d.ts +1 -1
- package/esm/LinearWiggleDisplay/renderSvg.js +3 -2
- package/esm/MultiDensityRenderer/MultiDensityRenderer.d.ts +5 -7
- package/esm/MultiDensityRenderer/MultiDensityRenderer.js +6 -24
- package/esm/MultiDensityRenderer/configSchema.d.ts +3 -3
- package/esm/MultiDensityRenderer/configSchema.js +1 -1
- package/esm/MultiDensityRenderer/index.js +4 -4
- package/esm/MultiDensityRenderer/makeImageData.d.ts +3 -0
- package/esm/MultiDensityRenderer/makeImageData.js +7 -0
- package/esm/MultiDensityRenderer/renderMultiDensity.d.ts +3 -0
- package/esm/MultiDensityRenderer/renderMultiDensity.js +37 -0
- package/esm/MultiLineRenderer/MultiLineRenderer.d.ts +5 -7
- package/esm/MultiLineRenderer/MultiLineRenderer.js +6 -17
- package/esm/MultiLineRenderer/configSchema.d.ts +5 -5
- package/esm/MultiLineRenderer/configSchema.js +2 -2
- package/esm/MultiLineRenderer/index.js +4 -4
- package/esm/MultiLineRenderer/makeImageData.d.ts +3 -0
- package/esm/MultiLineRenderer/makeImageData.js +7 -0
- package/esm/MultiLineRenderer/renderMultiLine.d.ts +3 -0
- package/esm/MultiLineRenderer/renderMultiLine.js +34 -0
- package/esm/MultiLinearWiggleDisplay/components/ColorLegend.d.ts +2 -2
- package/esm/MultiLinearWiggleDisplay/components/ColorLegend.js +11 -6
- package/esm/MultiLinearWiggleDisplay/components/FullHeightScaleBar.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/FullHeightScaleBar.js +4 -4
- package/esm/MultiLinearWiggleDisplay/components/IndividualScaleBars.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/IndividualScaleBars.js +5 -5
- package/esm/MultiLinearWiggleDisplay/components/LegendItem.d.ts +3 -3
- package/esm/MultiLinearWiggleDisplay/components/LegendItem.js +1 -1
- package/esm/MultiLinearWiggleDisplay/components/LegendItemText.d.ts +6 -4
- package/esm/MultiLinearWiggleDisplay/components/LegendItemText.js +2 -2
- package/esm/MultiLinearWiggleDisplay/components/RectBg.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/RectBg.js +4 -3
- package/esm/MultiLinearWiggleDisplay/components/ScoreLegend.d.ts +2 -2
- package/esm/MultiLinearWiggleDisplay/components/ScoreLegend.js +3 -3
- package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.js +2 -2
- package/esm/MultiLinearWiggleDisplay/components/SourcesGrid.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/SourcesGrid.js +2 -2
- package/esm/MultiLinearWiggleDisplay/components/Tooltip.d.ts +2 -4
- package/esm/MultiLinearWiggleDisplay/components/Tooltip.js +8 -9
- package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.js +3 -3
- package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.js +4 -5
- package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.js +12 -17
- package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +2 -2
- package/esm/MultiLinearWiggleDisplay/components/YScaleBars.d.ts +2 -2
- package/esm/MultiLinearWiggleDisplay/components/YScaleBars.js +5 -16
- package/esm/MultiLinearWiggleDisplay/components/YScaleBarsWrapper.d.ts +7 -0
- package/esm/MultiLinearWiggleDisplay/components/YScaleBarsWrapper.js +15 -0
- package/esm/MultiLinearWiggleDisplay/components/types.d.ts +10 -0
- package/esm/MultiLinearWiggleDisplay/components/types.js +1 -0
- package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialog.js +4 -4
- package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialogBulkEditPanel.js +1 -1
- package/esm/MultiLinearWiggleDisplay/components/util.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/configSchema.d.ts +9 -9
- package/esm/MultiLinearWiggleDisplay/configSchema.js +2 -2
- package/esm/MultiLinearWiggleDisplay/index.js +3 -3
- package/esm/MultiLinearWiggleDisplay/model.d.ts +3624 -106
- package/esm/MultiLinearWiggleDisplay/model.js +78 -48
- package/esm/MultiLinearWiggleDisplay/renderSvg.d.ts +1 -1
- package/esm/MultiLinearWiggleDisplay/renderSvg.js +3 -2
- package/esm/MultiQuantitativeTrack/configSchema.d.ts +16 -11
- package/esm/MultiQuantitativeTrack/index.js +13 -2
- package/esm/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +5 -7
- package/esm/MultiRowLineRenderer/MultiRowLineRenderer.js +6 -29
- package/esm/MultiRowLineRenderer/configSchema.d.ts +5 -5
- package/esm/MultiRowLineRenderer/configSchema.js +2 -2
- package/esm/MultiRowLineRenderer/index.js +4 -4
- package/esm/MultiRowLineRenderer/makeImageData.d.ts +3 -0
- package/esm/MultiRowLineRenderer/makeImageData.js +7 -0
- package/esm/MultiRowLineRenderer/renderMultiRowLine.d.ts +3 -0
- package/esm/MultiRowLineRenderer/renderMultiRowLine.js +44 -0
- package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +5 -7
- package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +6 -29
- package/esm/MultiRowXYPlotRenderer/configSchema.d.ts +5 -5
- package/esm/MultiRowXYPlotRenderer/configSchema.js +2 -2
- package/esm/MultiRowXYPlotRenderer/index.js +4 -4
- package/esm/MultiRowXYPlotRenderer/makeImageData.d.ts +3 -0
- package/esm/MultiRowXYPlotRenderer/makeImageData.js +7 -0
- package/esm/MultiRowXYPlotRenderer/renderMultiRowXYPlot.d.ts +3 -0
- package/esm/MultiRowXYPlotRenderer/renderMultiRowXYPlot.js +42 -0
- package/esm/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +5 -0
- package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js +48 -18
- package/esm/MultiWiggleAdapter/configSchema.d.ts +2 -2
- package/esm/MultiWiggleAdapter/index.js +2 -2
- package/esm/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.d.ts +1 -1
- package/esm/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.js +3 -4
- package/esm/MultiWiggleAddTrackWorkflow/index.js +2 -2
- package/esm/MultiWiggleRendering.d.ts +7 -7
- package/esm/MultiWiggleRendering.js +9 -7
- package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +5 -7
- package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.js +6 -20
- package/esm/MultiXYPlotRenderer/configSchema.d.ts +5 -5
- package/esm/MultiXYPlotRenderer/configSchema.js +2 -2
- package/esm/MultiXYPlotRenderer/index.js +4 -4
- package/esm/MultiXYPlotRenderer/makeImageData.d.ts +3 -0
- package/esm/MultiXYPlotRenderer/makeImageData.js +7 -0
- package/esm/MultiXYPlotRenderer/renderMultiXYPlot.d.ts +3 -0
- package/esm/MultiXYPlotRenderer/renderMultiXYPlot.js +35 -0
- package/esm/QuantitativeTrack/configSchema.d.ts +16 -11
- package/esm/QuantitativeTrack/index.js +13 -2
- package/esm/SVGErrorBox.d.ts +5 -0
- package/esm/SVGErrorBox.js +4 -0
- package/esm/Tooltip.d.ts +1 -3
- package/esm/Tooltip.js +7 -7
- package/esm/WiggleRPC/MultiWiggleClusterScoreMatrix.d.ts +2 -10
- package/esm/WiggleRPC/MultiWiggleClusterScoreMatrix.js +3 -15
- package/esm/WiggleRPC/MultiWiggleGetScoreMatrix.d.ts +1 -1
- package/esm/WiggleRPC/MultiWiggleGetScoreMatrix.js +2 -5
- package/esm/WiggleRPC/MultiWiggleGetSources.js +1 -4
- package/esm/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +1 -4
- package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.d.ts +10 -0
- package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +26 -5
- package/esm/WiggleRPC/executeClusterScoreMatrix.d.ts +6 -0
- package/esm/WiggleRPC/executeClusterScoreMatrix.js +15 -0
- package/esm/WiggleRPC/getScoreMatrix.d.ts +1 -1
- package/esm/WiggleRPC/getScoreMatrix.js +9 -6
- package/esm/WiggleRPC/rpcMethods.d.ts +5 -5
- package/esm/WiggleRPC/rpcMethods.js +5 -5
- package/esm/WiggleRPC/types.d.ts +1 -1
- package/esm/WiggleRendering.d.ts +2 -3
- package/esm/WiggleRendering.js +16 -3
- package/esm/XYPlotRenderer/XYPlotRenderer.d.ts +5 -6
- package/esm/XYPlotRenderer/XYPlotRenderer.js +6 -20
- package/esm/XYPlotRenderer/configSchema.d.ts +5 -5
- package/esm/XYPlotRenderer/configSchema.js +2 -2
- package/esm/XYPlotRenderer/index.d.ts +3 -3
- package/esm/XYPlotRenderer/index.js +14 -12
- package/esm/XYPlotRenderer/makeImageData.d.ts +3 -0
- package/esm/XYPlotRenderer/makeImageData.js +13 -0
- package/esm/XYPlotRenderer/renderXYPlot.d.ts +3 -0
- package/esm/XYPlotRenderer/renderXYPlot.js +23 -0
- package/esm/configSchema.d.ts +3 -3
- package/esm/configSchema.js +1 -1
- package/esm/drawDensity.d.ts +4 -2
- package/esm/drawDensity.js +25 -15
- package/esm/drawLine.d.ts +5 -3
- package/esm/drawLine.js +118 -41
- package/esm/drawXY.d.ts +4 -2
- package/esm/drawXY.js +75 -36
- package/esm/getMultiWiggleSourcesAutorun.d.ts +3 -2
- package/esm/getMultiWiggleSourcesAutorun.js +7 -2
- package/esm/getQuantitativeStats.d.ts +4 -2
- package/esm/getQuantitativeStats.js +18 -7
- package/esm/getQuantitativeStatsAutorun.d.ts +3 -2
- package/esm/getQuantitativeStatsAutorun.js +3 -3
- package/esm/index.d.ts +15 -19
- package/esm/index.js +31 -37
- package/esm/multiRendererHelper.d.ts +7 -0
- package/esm/multiRendererHelper.js +12 -0
- package/esm/saveTrackFormats/bedGraph.d.ts +4 -0
- package/esm/saveTrackFormats/bedGraph.js +11 -0
- package/esm/shared/SharedWiggleConfigSchema.d.ts +5 -5
- package/esm/shared/SharedWiggleConfigSchema.js +1 -1
- package/esm/shared/SharedWiggleMixin.d.ts +1081 -133
- package/esm/shared/SharedWiggleMixin.js +48 -26
- package/esm/shared/YScaleBar.d.ts +1 -1
- package/esm/shared/YScaleBar.js +16 -4
- package/esm/shared/axisPropsFromTickScale.d.ts +7 -0
- package/esm/shared/axisPropsFromTickScale.js +12 -0
- package/esm/svgExportUtil.d.ts +9 -0
- package/esm/svgExportUtil.js +6 -0
- package/esm/types.d.ts +24 -0
- package/esm/types.js +1 -0
- package/esm/util.d.ts +34 -1
- package/esm/util.js +60 -1
- package/package.json +35 -38
- package/dist/BigWigAdapter/BigWigAdapter.d.ts +0 -25
- package/dist/BigWigAdapter/BigWigAdapter.js +0 -81
- package/dist/BigWigAdapter/configSchema.d.ts +0 -20
- package/dist/BigWigAdapter/configSchema.js +0 -37
- package/dist/BigWigAdapter/index.d.ts +0 -2
- package/dist/BigWigAdapter/index.js +0 -54
- package/dist/CreateMultiWiggleExtension/ConfirmDialog.d.ts +0 -8
- package/dist/CreateMultiWiggleExtension/ConfirmDialog.js +0 -26
- package/dist/CreateMultiWiggleExtension/index.d.ts +0 -2
- package/dist/CreateMultiWiggleExtension/index.js +0 -95
- package/dist/DensityRenderer/DensityRenderer.d.ts +0 -7
- package/dist/DensityRenderer/DensityRenderer.js +0 -46
- package/dist/DensityRenderer/configSchema.d.ts +0 -37
- package/dist/DensityRenderer/configSchema.js +0 -13
- package/dist/DensityRenderer/index.d.ts +0 -2
- package/dist/DensityRenderer/index.js +0 -17
- package/dist/GuessAdapter/index.d.ts +0 -2
- package/dist/GuessAdapter/index.js +0 -25
- package/dist/LinePlotRenderer/LinePlotRenderer.d.ts +0 -8
- package/dist/LinePlotRenderer/LinePlotRenderer.js +0 -56
- package/dist/LinePlotRenderer/configSchema.d.ts +0 -43
- package/dist/LinePlotRenderer/configSchema.js +0 -19
- package/dist/LinePlotRenderer/index.d.ts +0 -2
- package/dist/LinePlotRenderer/index.js +0 -17
- package/dist/LinearWiggleDisplay/components/SetColorDialog.d.ts +0 -12
- package/dist/LinearWiggleDisplay/components/SetColorDialog.js +0 -31
- package/dist/LinearWiggleDisplay/components/Tooltip.d.ts +0 -15
- package/dist/LinearWiggleDisplay/components/Tooltip.js +0 -32
- package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +0 -5
- package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -28
- package/dist/LinearWiggleDisplay/configSchema.d.ts +0 -78
- package/dist/LinearWiggleDisplay/configSchema.js +0 -29
- package/dist/LinearWiggleDisplay/index.d.ts +0 -5
- package/dist/LinearWiggleDisplay/index.js +0 -65
- package/dist/LinearWiggleDisplay/model.d.ts +0 -434
- package/dist/LinearWiggleDisplay/model.js +0 -262
- package/dist/LinearWiggleDisplay/renderSvg.d.ts +0 -3
- package/dist/LinearWiggleDisplay/renderSvg.js +0 -16
- package/dist/MultiDensityRenderer/MultiDensityRenderer.d.ts +0 -8
- package/dist/MultiDensityRenderer/MultiDensityRenderer.js +0 -65
- package/dist/MultiDensityRenderer/configSchema.d.ts +0 -37
- package/dist/MultiDensityRenderer/configSchema.js +0 -13
- package/dist/MultiDensityRenderer/index.d.ts +0 -2
- package/dist/MultiDensityRenderer/index.js +0 -17
- package/dist/MultiLineRenderer/MultiLineRenderer.d.ts +0 -8
- package/dist/MultiLineRenderer/MultiLineRenderer.js +0 -58
- package/dist/MultiLineRenderer/configSchema.d.ts +0 -49
- package/dist/MultiLineRenderer/configSchema.js +0 -26
- package/dist/MultiLineRenderer/index.d.ts +0 -2
- package/dist/MultiLineRenderer/index.js +0 -17
- package/dist/MultiLinearWiggleDisplay/components/ColorLegend.d.ts +0 -7
- package/dist/MultiLinearWiggleDisplay/components/ColorLegend.js +0 -19
- package/dist/MultiLinearWiggleDisplay/components/FullHeightScaleBar.d.ts +0 -7
- package/dist/MultiLinearWiggleDisplay/components/FullHeightScaleBar.js +0 -17
- package/dist/MultiLinearWiggleDisplay/components/IndividualScaleBars.d.ts +0 -7
- package/dist/MultiLinearWiggleDisplay/components/IndividualScaleBars.js +0 -15
- package/dist/MultiLinearWiggleDisplay/components/LegendItem.d.ts +0 -11
- package/dist/MultiLinearWiggleDisplay/components/LegendItem.js +0 -17
- package/dist/MultiLinearWiggleDisplay/components/LegendItemText.d.ts +0 -10
- package/dist/MultiLinearWiggleDisplay/components/LegendItemText.js +0 -13
- package/dist/MultiLinearWiggleDisplay/components/RectBg.d.ts +0 -8
- package/dist/MultiLinearWiggleDisplay/components/RectBg.js +0 -9
- package/dist/MultiLinearWiggleDisplay/components/ScoreLegend.d.ts +0 -5
- package/dist/MultiLinearWiggleDisplay/components/ScoreLegend.js +0 -19
- package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +0 -9
- package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js +0 -12
- package/dist/MultiLinearWiggleDisplay/components/SourcesGrid.d.ts +0 -7
- package/dist/MultiLinearWiggleDisplay/components/SourcesGrid.js +0 -130
- package/dist/MultiLinearWiggleDisplay/components/Tooltip.d.ts +0 -18
- package/dist/MultiLinearWiggleDisplay/components/Tooltip.js +0 -39
- package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.d.ts +0 -6
- package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.js +0 -29
- package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.d.ts +0 -7
- package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.js +0 -87
- package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.d.ts +0 -7
- package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.js +0 -153
- package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.d.ts +0 -8
- package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.js +0 -2
- package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +0 -5
- package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -14
- package/dist/MultiLinearWiggleDisplay/components/YScaleBars.d.ts +0 -7
- package/dist/MultiLinearWiggleDisplay/components/YScaleBars.js +0 -28
- package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialog.d.ts +0 -31
- package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialog.js +0 -51
- package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogBulkEditPanel.d.ts +0 -10
- package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogBulkEditPanel.js +0 -84
- package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogHelpfulTips.d.ts +0 -1
- package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogHelpfulTips.js +0 -7
- package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogRowPalettizer.d.ts +0 -10
- package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogRowPalettizer.js +0 -42
- package/dist/MultiLinearWiggleDisplay/components/util.d.ts +0 -9
- package/dist/MultiLinearWiggleDisplay/components/util.js +0 -45
- package/dist/MultiLinearWiggleDisplay/configSchema.d.ts +0 -84
- package/dist/MultiLinearWiggleDisplay/configSchema.js +0 -44
- package/dist/MultiLinearWiggleDisplay/index.d.ts +0 -2
- package/dist/MultiLinearWiggleDisplay/index.js +0 -57
- package/dist/MultiLinearWiggleDisplay/model.d.ts +0 -453
- package/dist/MultiLinearWiggleDisplay/model.js +0 -413
- package/dist/MultiLinearWiggleDisplay/renderSvg.d.ts +0 -3
- package/dist/MultiLinearWiggleDisplay/renderSvg.js +0 -15
- package/dist/MultiLinearWiggleDisplay/types.d.ts +0 -15
- package/dist/MultiLinearWiggleDisplay/types.js +0 -2
- package/dist/MultiLinearWiggleDisplay/util.d.ts +0 -0
- package/dist/MultiLinearWiggleDisplay/util.js +0 -1
- package/dist/MultiQuantitativeTrack/configSchema.d.ts +0 -80
- package/dist/MultiQuantitativeTrack/configSchema.js +0 -11
- package/dist/MultiQuantitativeTrack/index.d.ts +0 -2
- package/dist/MultiQuantitativeTrack/index.js +0 -20
- package/dist/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +0 -8
- package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js +0 -70
- package/dist/MultiRowLineRenderer/configSchema.d.ts +0 -49
- package/dist/MultiRowLineRenderer/configSchema.js +0 -26
- package/dist/MultiRowLineRenderer/index.d.ts +0 -2
- package/dist/MultiRowLineRenderer/index.js +0 -17
- package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +0 -8
- package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +0 -70
- package/dist/MultiRowXYPlotRenderer/configSchema.d.ts +0 -57
- package/dist/MultiRowXYPlotRenderer/configSchema.js +0 -34
- package/dist/MultiRowXYPlotRenderer/index.d.ts +0 -2
- package/dist/MultiRowXYPlotRenderer/index.js +0 -17
- package/dist/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +0 -31
- package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js +0 -110
- package/dist/MultiWiggleAdapter/configSchema.d.ts +0 -13
- package/dist/MultiWiggleAdapter/configSchema.js +0 -17
- package/dist/MultiWiggleAdapter/index.d.ts +0 -2
- package/dist/MultiWiggleAdapter/index.js +0 -57
- package/dist/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.d.ts +0 -5
- package/dist/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.js +0 -89
- package/dist/MultiWiggleAddTrackWorkflow/index.d.ts +0 -2
- package/dist/MultiWiggleAddTrackWorkflow/index.js +0 -46
- package/dist/MultiWiggleRendering.d.ts +0 -19
- package/dist/MultiWiggleRendering.js +0 -81
- package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +0 -8
- package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js +0 -61
- package/dist/MultiXYPlotRenderer/configSchema.d.ts +0 -57
- package/dist/MultiXYPlotRenderer/configSchema.js +0 -34
- package/dist/MultiXYPlotRenderer/index.d.ts +0 -2
- package/dist/MultiXYPlotRenderer/index.js +0 -17
- package/dist/QuantitativeTrack/configSchema.d.ts +0 -80
- package/dist/QuantitativeTrack/configSchema.js +0 -11
- package/dist/QuantitativeTrack/index.d.ts +0 -2
- package/dist/QuantitativeTrack/index.js +0 -20
- package/dist/Tooltip.d.ts +0 -18
- package/dist/Tooltip.js +0 -34
- package/dist/WiggleBaseRenderer.d.ts +0 -57
- package/dist/WiggleBaseRenderer.js +0 -42
- package/dist/WiggleRPC/MultiWiggleClusterScoreMatrix.d.ts +0 -14
- package/dist/WiggleRPC/MultiWiggleClusterScoreMatrix.js +0 -31
- package/dist/WiggleRPC/MultiWiggleGetScoreMatrix.d.ts +0 -6
- package/dist/WiggleRPC/MultiWiggleGetScoreMatrix.js +0 -22
- package/dist/WiggleRPC/MultiWiggleGetSources.d.ts +0 -14
- package/dist/WiggleRPC/MultiWiggleGetSources.js +0 -22
- package/dist/WiggleRPC/WiggleGetGlobalQuantitativeStats.d.ts +0 -12
- package/dist/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +0 -22
- package/dist/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.d.ts +0 -13
- package/dist/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +0 -22
- package/dist/WiggleRPC/getScoreMatrix.d.ts +0 -6
- package/dist/WiggleRPC/getScoreMatrix.js +0 -35
- package/dist/WiggleRPC/rpcMethods.d.ts +0 -5
- package/dist/WiggleRPC/rpcMethods.js +0 -21
- package/dist/WiggleRPC/types.d.ts +0 -13
- package/dist/WiggleRPC/types.js +0 -2
- package/dist/WiggleRendering.d.ts +0 -14
- package/dist/WiggleRendering.js +0 -35
- package/dist/XYPlotRenderer/XYPlotRenderer.d.ts +0 -7
- package/dist/XYPlotRenderer/XYPlotRenderer.js +0 -61
- package/dist/XYPlotRenderer/configSchema.d.ts +0 -57
- package/dist/XYPlotRenderer/configSchema.js +0 -34
- package/dist/XYPlotRenderer/index.d.ts +0 -5
- package/dist/XYPlotRenderer/index.js +0 -24
- package/dist/configSchema.d.ts +0 -37
- package/dist/configSchema.js +0 -47
- package/dist/drawDensity.d.ts +0 -18
- package/dist/drawDensity.js +0 -81
- package/dist/drawLine.d.ts +0 -20
- package/dist/drawLine.js +0 -77
- package/dist/drawXY.d.ts +0 -21
- package/dist/drawXY.js +0 -191
- package/dist/getMultiWiggleSourcesAutorun.d.ts +0 -18
- package/dist/getMultiWiggleSourcesAutorun.js +0 -38
- package/dist/getQuantitativeStats.d.ts +0 -13
- package/dist/getQuantitativeStats.js +0 -70
- package/dist/getQuantitativeStatsAutorun.d.ts +0 -13
- package/dist/getQuantitativeStatsAutorun.js +0 -35
- package/dist/index.d.ts +0 -91
- package/dist/index.js +0 -112
- package/dist/shared/SetMinMaxDialog.d.ts +0 -10
- package/dist/shared/SetMinMaxDialog.js +0 -26
- package/dist/shared/SharedWiggleConfigSchema.d.ts +0 -66
- package/dist/shared/SharedWiggleConfigSchema.js +0 -56
- package/dist/shared/SharedWiggleMixin.d.ts +0 -420
- package/dist/shared/SharedWiggleMixin.js +0 -343
- package/dist/shared/YScaleBar.d.ts +0 -9
- package/dist/shared/YScaleBar.js +0 -12
- package/dist/util.d.ts +0 -25
- package/dist/util.js +0 -105
- package/esm/WiggleBaseRenderer.d.ts +0 -57
- package/esm/WiggleBaseRenderer.js +0 -36
|
@@ -2,10 +2,10 @@ import { lazy } from 'react';
|
|
|
2
2
|
import { ConfigurationReference, getConf, readConfObject, } from '@jbrowse/core/configuration';
|
|
3
3
|
import { getEnv, getSession, isSelectionContainer } from '@jbrowse/core/util';
|
|
4
4
|
import { stopStopToken } from '@jbrowse/core/util/stopToken';
|
|
5
|
+
import { types } from '@jbrowse/mobx-state-tree';
|
|
5
6
|
import { BaseLinearDisplay } from '@jbrowse/plugin-linear-genome-view';
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
const SetMinMaxDialog = lazy(() => import('./SetMinMaxDialog'));
|
|
7
|
+
import { getNiceDomain } from "../util.js";
|
|
8
|
+
const SetMinMaxDialog = lazy(() => import("./SetMinMaxDialog.js"));
|
|
9
9
|
export default function SharedWiggleMixin(configSchema) {
|
|
10
10
|
return types
|
|
11
11
|
.compose(BaseLinearDisplay, types.model({
|
|
@@ -33,16 +33,18 @@ export default function SharedWiggleMixin(configSchema) {
|
|
|
33
33
|
statsFetchInProgress: undefined,
|
|
34
34
|
}))
|
|
35
35
|
.actions(self => ({
|
|
36
|
-
updateQuantitativeStats(stats) {
|
|
36
|
+
updateQuantitativeStats(stats, statsRegion) {
|
|
37
37
|
const { currStatsBpPerPx, scoreMin, scoreMax } = stats;
|
|
38
38
|
const EPSILON = 0.000001;
|
|
39
39
|
if (!self.stats ||
|
|
40
40
|
Math.abs(self.stats.scoreMax - scoreMax) > EPSILON ||
|
|
41
|
-
Math.abs(self.stats.scoreMin - scoreMin) > EPSILON
|
|
41
|
+
Math.abs(self.stats.scoreMin - scoreMin) > EPSILON ||
|
|
42
|
+
self.stats.statsRegion !== statsRegion) {
|
|
42
43
|
self.stats = {
|
|
43
44
|
currStatsBpPerPx,
|
|
44
45
|
scoreMin,
|
|
45
46
|
scoreMax,
|
|
47
|
+
statsRegion,
|
|
46
48
|
};
|
|
47
49
|
}
|
|
48
50
|
},
|
|
@@ -117,23 +119,20 @@ export default function SharedWiggleMixin(configSchema) {
|
|
|
117
119
|
return self.adapterConfig.type;
|
|
118
120
|
},
|
|
119
121
|
get rendererTypeNameSimple() {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
+
return (self.rendererTypeNameState ??
|
|
123
|
+
getConf(self, 'defaultRendering'));
|
|
122
124
|
},
|
|
123
125
|
get filters() {
|
|
124
126
|
return undefined;
|
|
125
127
|
},
|
|
126
128
|
get scaleType() {
|
|
127
|
-
|
|
128
|
-
return (_a = self.scale) !== null && _a !== void 0 ? _a : getConf(self, 'scaleType');
|
|
129
|
+
return self.scale ?? getConf(self, 'scaleType');
|
|
129
130
|
},
|
|
130
131
|
get maxScore() {
|
|
131
|
-
|
|
132
|
-
return (_a = self.constraints.max) !== null && _a !== void 0 ? _a : getConf(self, 'maxScore');
|
|
132
|
+
return self.constraints.max ?? getConf(self, 'maxScore');
|
|
133
133
|
},
|
|
134
134
|
get minScore() {
|
|
135
|
-
|
|
136
|
-
return (_a = self.constraints.min) !== null && _a !== void 0 ? _a : getConf(self, 'minScore');
|
|
135
|
+
return self.constraints.min ?? getConf(self, 'minScore');
|
|
137
136
|
},
|
|
138
137
|
}))
|
|
139
138
|
.views(self => ({
|
|
@@ -145,23 +144,20 @@ export default function SharedWiggleMixin(configSchema) {
|
|
|
145
144
|
get rendererConfig() {
|
|
146
145
|
const { color, displayCrossHatches, fill, minSize, negColor, posColor, summaryScoreMode, scaleType, rendererTypeName, } = self;
|
|
147
146
|
const configBlob = getConf(self, ['renderers', rendererTypeName]) || {};
|
|
148
|
-
return
|
|
147
|
+
return {
|
|
149
148
|
...configBlob,
|
|
150
149
|
...(scaleType ? { scaleType } : {}),
|
|
151
150
|
...(fill !== undefined ? { filled: fill } : {}),
|
|
152
|
-
...(displayCrossHatches !== undefined
|
|
153
|
-
? { displayCrossHatches }
|
|
154
|
-
: {}),
|
|
151
|
+
...(displayCrossHatches !== undefined ? { displayCrossHatches } : {}),
|
|
155
152
|
...(summaryScoreMode !== undefined ? { summaryScoreMode } : {}),
|
|
156
153
|
...(color !== undefined ? { color } : {}),
|
|
157
154
|
...(negColor !== undefined ? { negColor } : {}),
|
|
158
155
|
...(posColor !== undefined ? { posColor } : {}),
|
|
159
156
|
...(minSize !== undefined ? { minSize } : {}),
|
|
160
|
-
}
|
|
157
|
+
};
|
|
161
158
|
},
|
|
162
159
|
get autoscaleType() {
|
|
163
|
-
|
|
164
|
-
return (_a = self.autoscale) !== null && _a !== void 0 ? _a : getConf(self, 'autoscale');
|
|
160
|
+
return self.autoscale ?? getConf(self, 'autoscale');
|
|
165
161
|
},
|
|
166
162
|
}))
|
|
167
163
|
.views(self => {
|
|
@@ -189,12 +185,12 @@ export default function SharedWiggleMixin(configSchema) {
|
|
|
189
185
|
})
|
|
190
186
|
.views(self => ({
|
|
191
187
|
get filled() {
|
|
192
|
-
|
|
193
|
-
|
|
188
|
+
return (self.fill ??
|
|
189
|
+
readConfObject(self.rendererConfig, 'filled'));
|
|
194
190
|
},
|
|
195
191
|
get summaryScoreModeSetting() {
|
|
196
|
-
|
|
197
|
-
|
|
192
|
+
return (self.summaryScoreMode ??
|
|
193
|
+
readConfObject(self.rendererConfig, 'summaryScoreMode'));
|
|
198
194
|
},
|
|
199
195
|
get scaleOpts() {
|
|
200
196
|
return {
|
|
@@ -209,8 +205,8 @@ export default function SharedWiggleMixin(configSchema) {
|
|
|
209
205
|
return self.rendererTypeName === 'XYPlotRenderer';
|
|
210
206
|
},
|
|
211
207
|
get displayCrossHatchesSetting() {
|
|
212
|
-
|
|
213
|
-
|
|
208
|
+
return (self.displayCrossHatches ??
|
|
209
|
+
readConfObject(self.rendererConfig, 'displayCrossHatches'));
|
|
214
210
|
},
|
|
215
211
|
get hasResolution() {
|
|
216
212
|
return self.adapterCapabilities.includes('hasResolution');
|
|
@@ -303,5 +299,31 @@ export default function SharedWiggleMixin(configSchema) {
|
|
|
303
299
|
superReload();
|
|
304
300
|
},
|
|
305
301
|
};
|
|
302
|
+
})
|
|
303
|
+
.postProcessSnapshot(snap => {
|
|
304
|
+
if (!snap) {
|
|
305
|
+
return snap;
|
|
306
|
+
}
|
|
307
|
+
const { selectedRendering, resolution, fill, minSize, color, posColor, negColor, summaryScoreMode, rendererTypeNameState, scale, autoscale, displayCrossHatches, constraints, ...rest } = snap;
|
|
308
|
+
return {
|
|
309
|
+
...rest,
|
|
310
|
+
...(selectedRendering ? { selectedRendering } : {}),
|
|
311
|
+
...(resolution !== 1 ? { resolution } : {}),
|
|
312
|
+
...(fill !== undefined ? { fill } : {}),
|
|
313
|
+
...(minSize !== undefined ? { minSize } : {}),
|
|
314
|
+
...(color !== undefined ? { color } : {}),
|
|
315
|
+
...(posColor !== undefined ? { posColor } : {}),
|
|
316
|
+
...(negColor !== undefined ? { negColor } : {}),
|
|
317
|
+
...(summaryScoreMode !== undefined ? { summaryScoreMode } : {}),
|
|
318
|
+
...(rendererTypeNameState !== undefined
|
|
319
|
+
? { rendererTypeNameState }
|
|
320
|
+
: {}),
|
|
321
|
+
...(scale !== undefined ? { scale } : {}),
|
|
322
|
+
...(autoscale !== undefined ? { autoscale } : {}),
|
|
323
|
+
...(displayCrossHatches !== undefined ? { displayCrossHatches } : {}),
|
|
324
|
+
...(constraints.min !== undefined || constraints.max !== undefined
|
|
325
|
+
? { constraints }
|
|
326
|
+
: {}),
|
|
327
|
+
};
|
|
306
328
|
});
|
|
307
329
|
}
|
package/esm/shared/YScaleBar.js
CHANGED
|
@@ -1,10 +1,22 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useTheme } from '@mui/material';
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
|
-
|
|
5
|
-
const YScaleBar = observer(function ({ model, orientation, }) {
|
|
4
|
+
const YScaleBar = observer(function YScaleBar({ model, orientation, }) {
|
|
6
5
|
const { ticks } = model;
|
|
7
6
|
const theme = useTheme();
|
|
8
|
-
|
|
7
|
+
if (!ticks) {
|
|
8
|
+
return null;
|
|
9
|
+
}
|
|
10
|
+
const { range, values, position } = ticks;
|
|
11
|
+
const bg = theme.palette.background.default;
|
|
12
|
+
const fg = theme.palette.text.primary;
|
|
13
|
+
const isLeft = orientation === 'left';
|
|
14
|
+
const k = isLeft ? -1 : 1;
|
|
15
|
+
const range0 = range[0] + 0.5;
|
|
16
|
+
const range1 = range[1] + 0.5;
|
|
17
|
+
return (_jsxs("g", { fill: "none", fontSize: 10, fontFamily: "sans-serif", textAnchor: isLeft ? 'end' : 'start', strokeWidth: 1, children: [_jsx("path", { stroke: fg, d: `M${k * 6},${range0}H0.5V${range1}H${k * 6}` }), values.map((v, idx) => {
|
|
18
|
+
const pos = position(v);
|
|
19
|
+
return (_jsxs("g", { transform: `translate(0,${Number.isFinite(pos) ? pos : 0})`, children: [_jsx("line", { stroke: fg, x2: k * 6, y1: 0.5, y2: 0.5 }), _jsx("text", { stroke: bg, strokeWidth: 2.5, paintOrder: "stroke", fill: fg, dy: "0.32em", x: k * 9, y: 0.5, children: v })] }, idx));
|
|
20
|
+
})] }));
|
|
9
21
|
});
|
|
10
22
|
export default YScaleBar;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ScaleLinear, ScaleQuantize } from '@mui/x-charts-vendor/d3-scale';
|
|
2
|
+
export default function axisPropsFromTickScale(scale: ScaleLinear<number, number> | ScaleQuantize<number>, tickCount: number): {
|
|
3
|
+
range: number[];
|
|
4
|
+
values: number[];
|
|
5
|
+
format: (d: import("d3-scale").NumberValue) => string;
|
|
6
|
+
position: ScaleLinear<number, number, never> | ScaleQuantize<number, never>;
|
|
7
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export default function axisPropsFromTickScale(scale, tickCount) {
|
|
2
|
+
const range = scale.range();
|
|
3
|
+
const values = scale.ticks(tickCount);
|
|
4
|
+
const format = scale.tickFormat(tickCount);
|
|
5
|
+
const position = scale.copy();
|
|
6
|
+
return {
|
|
7
|
+
range,
|
|
8
|
+
values,
|
|
9
|
+
format,
|
|
10
|
+
position,
|
|
11
|
+
};
|
|
12
|
+
}
|
package/esm/types.d.ts
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { ScaleOpts, Source } from './util.ts';
|
|
2
|
+
import type { RenderArgsDeserialized as FeatureRenderArgsDeserialized } from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
|
|
3
|
+
import type { Feature } from '@jbrowse/core/util';
|
|
4
|
+
import type { ThemeOptions } from '@mui/material';
|
|
5
|
+
export interface RenderArgsDeserialized extends FeatureRenderArgsDeserialized {
|
|
6
|
+
bpPerPx: number;
|
|
7
|
+
height: number;
|
|
8
|
+
highResolutionScaling: number;
|
|
9
|
+
scaleOpts: ScaleOpts;
|
|
10
|
+
displayCrossHatches: boolean;
|
|
11
|
+
ticks: {
|
|
12
|
+
values: number[];
|
|
13
|
+
};
|
|
14
|
+
inverted: boolean;
|
|
15
|
+
themeOptions: ThemeOptions;
|
|
16
|
+
statusCallback?: (arg: string) => void;
|
|
17
|
+
offset?: number;
|
|
18
|
+
}
|
|
19
|
+
export interface RenderArgsDeserializedWithFeatures extends RenderArgsDeserialized {
|
|
20
|
+
features: Map<string, Feature>;
|
|
21
|
+
}
|
|
22
|
+
export interface MultiRenderArgsDeserialized extends RenderArgsDeserializedWithFeatures {
|
|
23
|
+
sources: Source[];
|
|
24
|
+
}
|
package/esm/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/esm/util.d.ts
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
|
+
import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
|
|
2
|
+
import type { Feature } from '@jbrowse/core/util';
|
|
1
3
|
export declare const YSCALEBAR_LABEL_OFFSET = 5;
|
|
4
|
+
export declare const WIGGLE_COLOR_DEFAULT = "#f0f";
|
|
5
|
+
export declare function getColorCallback(config: AnyConfigurationModel, opts?: {
|
|
6
|
+
defaultColor?: string;
|
|
7
|
+
}): (_feature: Feature, score: number) => any;
|
|
2
8
|
export interface ScaleOpts {
|
|
3
9
|
domain: number[];
|
|
4
10
|
range: number[];
|
|
@@ -14,12 +20,39 @@ export interface Source {
|
|
|
14
20
|
group?: string;
|
|
15
21
|
}
|
|
16
22
|
export declare function getScale({ domain, range, scaleType, pivotValue, inverted, }: ScaleOpts): import("d3-scale").ScaleLinear<number, number, never> | import("d3-scale").ScaleLogarithmic<number, number, never> | import("d3-scale").ScaleQuantize<number, never>;
|
|
17
|
-
export declare function getOrigin(scaleType: string):
|
|
23
|
+
export declare function getOrigin(scaleType: string): 0 | 1;
|
|
18
24
|
export declare function getNiceDomain({ scaleType, domain, bounds, }: {
|
|
19
25
|
scaleType: string;
|
|
20
26
|
domain: readonly [number, number];
|
|
21
27
|
bounds: readonly [number | undefined, number | undefined];
|
|
22
28
|
}): [number, number];
|
|
23
29
|
export declare function toP(s?: number): number;
|
|
30
|
+
export declare function serializeWiggleFeature(f: {
|
|
31
|
+
get: (key: string) => unknown;
|
|
32
|
+
id: () => string;
|
|
33
|
+
}): {
|
|
34
|
+
uniqueId: string;
|
|
35
|
+
start: unknown;
|
|
36
|
+
end: unknown;
|
|
37
|
+
score: unknown;
|
|
38
|
+
source: unknown;
|
|
39
|
+
refName: unknown;
|
|
40
|
+
maxScore: unknown;
|
|
41
|
+
minScore: unknown;
|
|
42
|
+
summary: unknown;
|
|
43
|
+
};
|
|
24
44
|
export declare function round(value: number): number;
|
|
45
|
+
export declare const WIGGLE_FUDGE_FACTOR = 0.3;
|
|
46
|
+
export declare const WIGGLE_CLIP_HEIGHT = 2;
|
|
47
|
+
export interface ScaleValues {
|
|
48
|
+
niceMin: number;
|
|
49
|
+
niceMax: number;
|
|
50
|
+
height: number;
|
|
51
|
+
linearRatio: number;
|
|
52
|
+
log2: number;
|
|
53
|
+
logMin: number;
|
|
54
|
+
logRatio: number;
|
|
55
|
+
isLog: boolean;
|
|
56
|
+
}
|
|
57
|
+
export declare function getScaleValues(scaleOpts: ScaleOpts, height: number): ScaleValues;
|
|
25
58
|
export declare function fillRectCtx(x: number, y: number, width: number, height: number, ctx: CanvasRenderingContext2D, color?: string): void;
|
package/esm/util.js
CHANGED
|
@@ -1,6 +1,26 @@
|
|
|
1
|
+
import { readConfObject } from '@jbrowse/core/configuration';
|
|
1
2
|
import { scaleLinear, scaleLog, scaleQuantize, } from '@mui/x-charts-vendor/d3-scale';
|
|
2
3
|
export const YSCALEBAR_LABEL_OFFSET = 5;
|
|
3
|
-
export
|
|
4
|
+
export const WIGGLE_COLOR_DEFAULT = '#f0f';
|
|
5
|
+
export function getColorCallback(config, opts) {
|
|
6
|
+
const color = readConfObject(config, 'color');
|
|
7
|
+
const colorIsCallback = config.color?.isCallback;
|
|
8
|
+
const colorIsDefault = color === WIGGLE_COLOR_DEFAULT;
|
|
9
|
+
if (colorIsCallback) {
|
|
10
|
+
return (feature) => readConfObject(config, 'color', { feature });
|
|
11
|
+
}
|
|
12
|
+
if (!colorIsDefault) {
|
|
13
|
+
return () => color;
|
|
14
|
+
}
|
|
15
|
+
if (opts?.defaultColor) {
|
|
16
|
+
return () => opts.defaultColor;
|
|
17
|
+
}
|
|
18
|
+
const pivotValue = readConfObject(config, 'bicolorPivotValue');
|
|
19
|
+
const negColor = readConfObject(config, 'negColor');
|
|
20
|
+
const posColor = readConfObject(config, 'posColor');
|
|
21
|
+
return (_feature, score) => score < pivotValue ? negColor : posColor;
|
|
22
|
+
}
|
|
23
|
+
export function getScale({ domain, range, scaleType, pivotValue, inverted, }) {
|
|
4
24
|
let scale;
|
|
5
25
|
const [min, max] = domain;
|
|
6
26
|
if (min === undefined || max === undefined) {
|
|
@@ -77,9 +97,48 @@ export function getNiceDomain({ scaleType, domain, bounds, }) {
|
|
|
77
97
|
export function toP(s = 0) {
|
|
78
98
|
return +s.toPrecision(6);
|
|
79
99
|
}
|
|
100
|
+
export function serializeWiggleFeature(f) {
|
|
101
|
+
return {
|
|
102
|
+
uniqueId: f.id(),
|
|
103
|
+
start: f.get('start'),
|
|
104
|
+
end: f.get('end'),
|
|
105
|
+
score: f.get('score'),
|
|
106
|
+
source: f.get('source'),
|
|
107
|
+
refName: f.get('refName'),
|
|
108
|
+
maxScore: f.get('maxScore'),
|
|
109
|
+
minScore: f.get('minScore'),
|
|
110
|
+
summary: f.get('summary'),
|
|
111
|
+
};
|
|
112
|
+
}
|
|
80
113
|
export function round(value) {
|
|
81
114
|
return Math.round(value * 1e5) / 1e5;
|
|
82
115
|
}
|
|
116
|
+
export const WIGGLE_FUDGE_FACTOR = 0.3;
|
|
117
|
+
export const WIGGLE_CLIP_HEIGHT = 2;
|
|
118
|
+
export function getScaleValues(scaleOpts, height) {
|
|
119
|
+
const scale = getScale({ ...scaleOpts, range: [0, height] });
|
|
120
|
+
const domain = scale.domain();
|
|
121
|
+
const niceMin = domain[0];
|
|
122
|
+
const niceMax = domain[1];
|
|
123
|
+
const domainSpan = niceMax - niceMin;
|
|
124
|
+
const isLog = scaleOpts.scaleType === 'log';
|
|
125
|
+
const linearRatio = domainSpan !== 0 ? height / domainSpan : 0;
|
|
126
|
+
const log2 = Math.log(2);
|
|
127
|
+
const logMin = Math.log(niceMin) / log2;
|
|
128
|
+
const logMax = Math.log(niceMax) / log2;
|
|
129
|
+
const logSpan = logMax - logMin;
|
|
130
|
+
const logRatio = logSpan !== 0 ? height / logSpan : 0;
|
|
131
|
+
return {
|
|
132
|
+
niceMin,
|
|
133
|
+
niceMax,
|
|
134
|
+
height,
|
|
135
|
+
linearRatio,
|
|
136
|
+
log2,
|
|
137
|
+
logMin,
|
|
138
|
+
logRatio,
|
|
139
|
+
isLog,
|
|
140
|
+
};
|
|
141
|
+
}
|
|
83
142
|
export function fillRectCtx(x, y, width, height, ctx, color) {
|
|
84
143
|
if (width < 0) {
|
|
85
144
|
x += width;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jbrowse/plugin-wiggle",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.1",
|
|
4
4
|
"description": "JBrowse 2 wiggle adapters, tracks, etc.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jbrowse",
|
|
@@ -15,43 +15,29 @@
|
|
|
15
15
|
"directory": "plugins/wiggle"
|
|
16
16
|
},
|
|
17
17
|
"author": "JBrowse Team",
|
|
18
|
-
"
|
|
19
|
-
"srcMain": "src/index.ts",
|
|
20
|
-
"main": "dist/index.js",
|
|
18
|
+
"main": "esm/index.js",
|
|
21
19
|
"files": [
|
|
22
|
-
"dist",
|
|
23
20
|
"esm"
|
|
24
21
|
],
|
|
25
|
-
"scripts": {
|
|
26
|
-
"build": "npm-run-all build:*",
|
|
27
|
-
"test": "cd ../..; jest --passWithNoTests plugins/wiggle",
|
|
28
|
-
"prepublishOnly": "yarn test",
|
|
29
|
-
"prepack": "yarn build && yarn useDist",
|
|
30
|
-
"postpack": "yarn useSrc",
|
|
31
|
-
"useDist": "node ../../scripts/useDist.js",
|
|
32
|
-
"useSrc": "node ../../scripts/useSrc.js",
|
|
33
|
-
"prebuild": "npm run clean",
|
|
34
|
-
"build:esm": "tsc --build tsconfig.build.esm.json",
|
|
35
|
-
"build:commonjs": "tsc --build tsconfig.build.commonjs.json",
|
|
36
|
-
"clean": "rimraf dist esm *.tsbuildinfo"
|
|
37
|
-
},
|
|
38
22
|
"dependencies": {
|
|
39
|
-
"@gmod/bbi": "^
|
|
40
|
-
"@
|
|
41
|
-
"@jbrowse/
|
|
42
|
-
"@
|
|
43
|
-
"@mui/
|
|
44
|
-
"@mui/
|
|
45
|
-
"@mui/x-
|
|
46
|
-
"
|
|
23
|
+
"@gmod/bbi": "^8.1.1",
|
|
24
|
+
"@gmod/hclust": "^1.0.7",
|
|
25
|
+
"@jbrowse/mobx-state-tree": "^5.5.0",
|
|
26
|
+
"@mui/icons-material": "^7.3.6",
|
|
27
|
+
"@mui/material": "^7.3.6",
|
|
28
|
+
"@mui/x-charts-vendor": "^8.23.0",
|
|
29
|
+
"@mui/x-data-grid": "^8.23.0",
|
|
30
|
+
"colord": "^2.9.3",
|
|
31
|
+
"copy-to-clipboard": "^3.3.3",
|
|
47
32
|
"fast-deep-equal": "^3.1.3",
|
|
48
|
-
"
|
|
49
|
-
"
|
|
50
|
-
"mobx
|
|
51
|
-
"react
|
|
52
|
-
"
|
|
53
|
-
"
|
|
54
|
-
"
|
|
33
|
+
"@types/file-saver-es": "^2.0.3",
|
|
34
|
+
"file-saver-es": "^2.0.5",
|
|
35
|
+
"mobx": "^6.15.0",
|
|
36
|
+
"mobx-react": "^9.2.1",
|
|
37
|
+
"rxjs": "^7.8.2",
|
|
38
|
+
"@jbrowse/core": "^4.0.1",
|
|
39
|
+
"@jbrowse/plugin-data-management": "^4.0.1",
|
|
40
|
+
"@jbrowse/plugin-linear-genome-view": "^4.0.1"
|
|
55
41
|
},
|
|
56
42
|
"peerDependencies": {
|
|
57
43
|
"react": ">=18.0.0"
|
|
@@ -59,8 +45,19 @@
|
|
|
59
45
|
"publishConfig": {
|
|
60
46
|
"access": "public"
|
|
61
47
|
},
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
48
|
+
"sideEffects": false,
|
|
49
|
+
"scripts": {
|
|
50
|
+
"build": "pnpm run /^build:/",
|
|
51
|
+
"test": "cd ../..; jest --passWithNoTests plugins/wiggle",
|
|
52
|
+
"prebuild": "pnpm clean",
|
|
53
|
+
"build:esm": "tsc -p tsconfig.build.esm.json",
|
|
54
|
+
"clean": "rimraf esm *.tsbuildinfo"
|
|
55
|
+
},
|
|
56
|
+
"types": "esm/index.d.ts",
|
|
57
|
+
"exports": {
|
|
58
|
+
".": {
|
|
59
|
+
"types": "./esm/index.d.ts",
|
|
60
|
+
"import": "./esm/index.js"
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { BigWig } from '@gmod/bbi';
|
|
2
|
-
import { BaseFeatureDataAdapter } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
3
|
-
import type { BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
4
|
-
import type { Feature } from '@jbrowse/core/util';
|
|
5
|
-
import type { AugmentedRegion as Region } from '@jbrowse/core/util/types';
|
|
6
|
-
interface WiggleOptions extends BaseOptions {
|
|
7
|
-
resolution?: number;
|
|
8
|
-
}
|
|
9
|
-
export default class BigWigAdapter extends BaseFeatureDataAdapter {
|
|
10
|
-
private setupP?;
|
|
11
|
-
static capabilities: string[];
|
|
12
|
-
private setupPre;
|
|
13
|
-
setup(opts?: BaseOptions): Promise<{
|
|
14
|
-
bigwig: BigWig;
|
|
15
|
-
header: Awaited<ReturnType<BigWig["getHeader"]>>;
|
|
16
|
-
}>;
|
|
17
|
-
getRefNames(opts?: BaseOptions): Promise<string[]>;
|
|
18
|
-
refIdToName(refId: number): Promise<string | undefined>;
|
|
19
|
-
getGlobalStats(opts?: BaseOptions): Promise<import("@jbrowse/core/util/stats").QuantitativeStats>;
|
|
20
|
-
getFeatures(region: Region, opts?: WiggleOptions): import("rxjs").Observable<Feature>;
|
|
21
|
-
getMultiRegionFeatureDensityStats(_regions: Region[]): Promise<{
|
|
22
|
-
featureDensity: number;
|
|
23
|
-
}>;
|
|
24
|
-
}
|
|
25
|
-
export {};
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const bbi_1 = require("@gmod/bbi");
|
|
4
|
-
const BaseAdapter_1 = require("@jbrowse/core/data_adapters/BaseAdapter");
|
|
5
|
-
const util_1 = require("@jbrowse/core/util");
|
|
6
|
-
const io_1 = require("@jbrowse/core/util/io");
|
|
7
|
-
const rxjs_1 = require("@jbrowse/core/util/rxjs");
|
|
8
|
-
const stats_1 = require("@jbrowse/core/util/stats");
|
|
9
|
-
class BigWigAdapter extends BaseAdapter_1.BaseFeatureDataAdapter {
|
|
10
|
-
async setupPre(opts) {
|
|
11
|
-
const { statusCallback = () => { } } = opts || {};
|
|
12
|
-
const pluginManager = this.pluginManager;
|
|
13
|
-
const bigwig = new bbi_1.BigWig({
|
|
14
|
-
filehandle: (0, io_1.openLocation)(this.getConf('bigWigLocation'), pluginManager),
|
|
15
|
-
});
|
|
16
|
-
return {
|
|
17
|
-
bigwig,
|
|
18
|
-
header: await (0, util_1.updateStatus)('Downloading bigwig header', statusCallback, () => bigwig.getHeader(opts)),
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
async setup(opts) {
|
|
22
|
-
if (!this.setupP) {
|
|
23
|
-
this.setupP = this.setupPre(opts).catch((e) => {
|
|
24
|
-
this.setupP = undefined;
|
|
25
|
-
throw e;
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
return this.setupP;
|
|
29
|
-
}
|
|
30
|
-
async getRefNames(opts) {
|
|
31
|
-
const { header } = await this.setup(opts);
|
|
32
|
-
return Object.keys(header.refsByName);
|
|
33
|
-
}
|
|
34
|
-
async refIdToName(refId) {
|
|
35
|
-
var _a;
|
|
36
|
-
const { header } = await this.setup();
|
|
37
|
-
return (_a = header.refsByNumber[refId]) === null || _a === void 0 ? void 0 : _a.name;
|
|
38
|
-
}
|
|
39
|
-
async getGlobalStats(opts) {
|
|
40
|
-
const { header } = await this.setup(opts);
|
|
41
|
-
return (0, stats_1.rectifyStats)(header.totalSummary);
|
|
42
|
-
}
|
|
43
|
-
getFeatures(region, opts = {}) {
|
|
44
|
-
const { refName, start, end } = region;
|
|
45
|
-
const { bpPerPx = 0, resolution = 1, stopToken, statusCallback = () => { }, } = opts;
|
|
46
|
-
return (0, rxjs_1.ObservableCreate)(async (observer) => {
|
|
47
|
-
const source = this.getConf('source');
|
|
48
|
-
const resolutionMultiplier = this.getConf('resolutionMultiplier');
|
|
49
|
-
const { bigwig } = await this.setup(opts);
|
|
50
|
-
const feats = await (0, util_1.updateStatus)('Downloading bigwig data', statusCallback, () => bigwig.getFeatures(refName, start, end, {
|
|
51
|
-
...opts,
|
|
52
|
-
basesPerSpan: (bpPerPx / resolution) * resolutionMultiplier,
|
|
53
|
-
}));
|
|
54
|
-
for (const data of feats) {
|
|
55
|
-
if (source) {
|
|
56
|
-
data.source = source;
|
|
57
|
-
}
|
|
58
|
-
const uniqueId = `${source}:${region.refName}:${data.start}-${data.end}`;
|
|
59
|
-
data.refName = refName;
|
|
60
|
-
data.uniqueId = uniqueId;
|
|
61
|
-
observer.next({
|
|
62
|
-
get: (str) => data[str],
|
|
63
|
-
id: () => uniqueId,
|
|
64
|
-
toJSON: () => data,
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
observer.complete();
|
|
68
|
-
}, stopToken);
|
|
69
|
-
}
|
|
70
|
-
async getMultiRegionFeatureDensityStats(_regions) {
|
|
71
|
-
return {
|
|
72
|
-
featureDensity: 0,
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
BigWigAdapter.capabilities = [
|
|
77
|
-
'hasResolution',
|
|
78
|
-
'hasLocalStats',
|
|
79
|
-
'hasGlobalStats',
|
|
80
|
-
];
|
|
81
|
-
exports.default = BigWigAdapter;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
declare const BigWigAdapter: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
2
|
-
bigWigLocation: {
|
|
3
|
-
type: string;
|
|
4
|
-
defaultValue: {
|
|
5
|
-
uri: string;
|
|
6
|
-
locationType: string;
|
|
7
|
-
};
|
|
8
|
-
};
|
|
9
|
-
source: {
|
|
10
|
-
type: string;
|
|
11
|
-
defaultValue: string;
|
|
12
|
-
description: string;
|
|
13
|
-
};
|
|
14
|
-
resolutionMultiplier: {
|
|
15
|
-
type: string;
|
|
16
|
-
defaultValue: number;
|
|
17
|
-
description: string;
|
|
18
|
-
};
|
|
19
|
-
}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
|
|
20
|
-
export default BigWigAdapter;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const configuration_1 = require("@jbrowse/core/configuration");
|
|
4
|
-
function x() { }
|
|
5
|
-
const BigWigAdapter = (0, configuration_1.ConfigurationSchema)('BigWigAdapter', {
|
|
6
|
-
bigWigLocation: {
|
|
7
|
-
type: 'fileLocation',
|
|
8
|
-
defaultValue: {
|
|
9
|
-
uri: '/path/to/my.bw',
|
|
10
|
-
locationType: 'UriLocation',
|
|
11
|
-
},
|
|
12
|
-
},
|
|
13
|
-
source: {
|
|
14
|
-
type: 'string',
|
|
15
|
-
defaultValue: '',
|
|
16
|
-
description: 'Used for multiwiggle',
|
|
17
|
-
},
|
|
18
|
-
resolutionMultiplier: {
|
|
19
|
-
type: 'number',
|
|
20
|
-
defaultValue: 1,
|
|
21
|
-
description: 'Initial resolution multiplier',
|
|
22
|
-
},
|
|
23
|
-
}, {
|
|
24
|
-
explicitlyTyped: true,
|
|
25
|
-
preProcessSnapshot: snap => {
|
|
26
|
-
return snap.uri
|
|
27
|
-
? {
|
|
28
|
-
...snap,
|
|
29
|
-
bigWigLocation: {
|
|
30
|
-
uri: snap.uri,
|
|
31
|
-
baseUri: snap.baseUri,
|
|
32
|
-
},
|
|
33
|
-
}
|
|
34
|
-
: snap;
|
|
35
|
-
},
|
|
36
|
-
});
|
|
37
|
-
exports.default = BigWigAdapter;
|