@jbrowse/plugin-linear-genome-view 2.18.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/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +1 -2
- package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js +17 -44
- package/dist/BaseLinearDisplay/components/Block.d.ts +3 -4
- package/dist/BaseLinearDisplay/components/Block.js +4 -7
- package/dist/BaseLinearDisplay/components/BlockError.d.ts +1 -2
- package/dist/BaseLinearDisplay/components/BlockError.js +9 -15
- package/dist/BaseLinearDisplay/components/BlockMsg.d.ts +1 -2
- package/dist/BaseLinearDisplay/components/BlockMsg.js +3 -8
- package/dist/BaseLinearDisplay/components/LinearBlocks.d.ts +2 -3
- package/dist/BaseLinearDisplay/components/LinearBlocks.js +21 -27
- package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.d.ts +1 -2
- package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +23 -14
- package/dist/BaseLinearDisplay/components/TooLargeMessage.d.ts +2 -3
- package/dist/BaseLinearDisplay/components/TooLargeMessage.js +11 -7
- package/dist/BaseLinearDisplay/components/Tooltip.d.ts +7 -4
- package/dist/BaseLinearDisplay/components/Tooltip.js +5 -5
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +7 -7
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js +17 -7
- package/dist/BaseLinearDisplay/models/FeatureDensityMixin.d.ts +1 -2
- package/dist/BaseLinearDisplay/models/FeatureDensityMixin.js +2 -2
- package/dist/BaseLinearDisplay/models/renderSvg.d.ts +2 -3
- package/dist/BaseLinearDisplay/models/renderSvg.js +26 -26
- package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.d.ts +1 -1
- package/dist/LinearBareDisplay/model.d.ts +6 -6
- package/dist/LinearBasicDisplay/components/AddFiltersDialog.d.ts +1 -2
- package/dist/LinearBasicDisplay/components/AddFiltersDialog.js +16 -57
- package/dist/LinearBasicDisplay/components/SetMaxHeightDialog.d.ts +1 -2
- package/dist/LinearBasicDisplay/components/SetMaxHeightDialog.js +10 -39
- package/dist/LinearBasicDisplay/model.d.ts +6 -6
- package/dist/LinearBasicDisplay/model.js +17 -7
- package/dist/LinearGenomeView/components/CenterLine.d.ts +1 -2
- package/dist/LinearGenomeView/components/CenterLine.js +7 -33
- package/dist/LinearGenomeView/components/Cytobands.d.ts +1 -2
- package/dist/LinearGenomeView/components/Cytobands.js +28 -31
- package/dist/LinearGenomeView/components/ExportSvgDialog.d.ts +2 -3
- package/dist/LinearGenomeView/components/ExportSvgDialog.js +34 -72
- package/dist/LinearGenomeView/components/GetSequenceDialog.d.ts +1 -2
- package/dist/LinearGenomeView/components/GetSequenceDialog.js +27 -62
- package/dist/LinearGenomeView/components/Gridlines.d.ts +1 -2
- package/dist/LinearGenomeView/components/Gridlines.js +23 -28
- package/dist/LinearGenomeView/components/Header.d.ts +3 -5
- package/dist/LinearGenomeView/components/Header.js +10 -61
- package/dist/LinearGenomeView/components/HeaderPanControls.d.ts +6 -0
- package/dist/LinearGenomeView/components/HeaderPanControls.js +30 -0
- package/dist/LinearGenomeView/components/HeaderRegionWidth.d.ts +5 -0
- package/dist/LinearGenomeView/components/HeaderRegionWidth.js +21 -0
- package/dist/LinearGenomeView/components/HeaderTrackSelectorButton.d.ts +5 -0
- package/dist/LinearGenomeView/components/HeaderTrackSelectorButton.js +19 -0
- package/dist/LinearGenomeView/components/HeaderZoomControls.d.ts +5 -0
- package/dist/LinearGenomeView/components/HeaderZoomControls.js +103 -0
- package/dist/LinearGenomeView/components/Highlight.d.ts +9 -4
- package/dist/LinearGenomeView/components/Highlight.js +32 -58
- package/dist/LinearGenomeView/components/ImportForm.d.ts +1 -2
- package/dist/LinearGenomeView/components/ImportForm.js +31 -67
- package/dist/LinearGenomeView/components/ImportFormRefNameAutocomplete.d.ts +1 -2
- package/dist/LinearGenomeView/components/ImportFormRefNameAutocomplete.js +2 -2
- package/dist/LinearGenomeView/components/LinearGenomeView.d.ts +1 -2
- package/dist/LinearGenomeView/components/LinearGenomeView.js +24 -17
- package/dist/LinearGenomeView/components/MiniControls.d.ts +1 -2
- package/dist/LinearGenomeView/components/MiniControls.js +6 -13
- package/dist/LinearGenomeView/components/NoTracksActiveButton.d.ts +1 -2
- package/dist/LinearGenomeView/components/NoTracksActiveButton.js +2 -7
- package/dist/LinearGenomeView/components/OverviewHighlight.d.ts +1 -2
- package/dist/LinearGenomeView/components/OverviewHighlight.js +3 -6
- package/dist/LinearGenomeView/components/OverviewRubberband.d.ts +1 -2
- package/dist/LinearGenomeView/components/OverviewRubberband.js +6 -33
- package/dist/LinearGenomeView/components/OverviewScalebar.d.ts +1 -2
- package/dist/LinearGenomeView/components/OverviewScalebar.js +30 -64
- package/dist/LinearGenomeView/components/OverviewScalebarPolygon.d.ts +1 -2
- package/dist/LinearGenomeView/components/OverviewScalebarPolygon.js +2 -5
- package/dist/LinearGenomeView/components/OverviewScalebarTickLabels.d.ts +1 -2
- package/dist/LinearGenomeView/components/OverviewScalebarTickLabels.js +3 -6
- package/dist/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.d.ts +1 -2
- package/dist/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.js +3 -3
- package/dist/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.d.ts +1 -2
- package/dist/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.js +25 -22
- package/dist/LinearGenomeView/components/RefNameAutocomplete/HelpDialog.d.ts +1 -2
- package/dist/LinearGenomeView/components/RefNameAutocomplete/HelpDialog.js +4 -43
- package/dist/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +1 -2
- package/dist/LinearGenomeView/components/RefNameAutocomplete/index.js +21 -10
- package/dist/LinearGenomeView/components/RegionWidthEditorDialog.d.ts +6 -0
- package/dist/LinearGenomeView/components/RegionWidthEditorDialog.js +30 -0
- package/dist/LinearGenomeView/components/Rubberband.d.ts +1 -2
- package/dist/LinearGenomeView/components/Rubberband.js +7 -32
- package/dist/LinearGenomeView/components/RubberbandSpan.d.ts +1 -2
- package/dist/LinearGenomeView/components/RubberbandSpan.js +16 -34
- package/dist/LinearGenomeView/components/Scalebar.d.ts +1 -1
- package/dist/LinearGenomeView/components/Scalebar.js +10 -13
- package/dist/LinearGenomeView/components/ScalebarCoordinateLabels.d.ts +1 -2
- package/dist/LinearGenomeView/components/ScalebarCoordinateLabels.js +17 -17
- package/dist/LinearGenomeView/components/ScalebarCoordinateTicks.d.ts +1 -2
- package/dist/LinearGenomeView/components/ScalebarCoordinateTicks.js +9 -12
- package/dist/LinearGenomeView/components/ScalebarRefNameLabels.d.ts +1 -2
- package/dist/LinearGenomeView/components/ScalebarRefNameLabels.js +12 -19
- package/dist/LinearGenomeView/components/SearchBox.d.ts +1 -2
- package/dist/LinearGenomeView/components/SearchBox.js +2 -2
- package/dist/LinearGenomeView/components/SearchResultsDialog.d.ts +1 -2
- package/dist/LinearGenomeView/components/SearchResultsDialog.js +4 -14
- package/dist/LinearGenomeView/components/SearchResultsTable.d.ts +1 -2
- package/dist/LinearGenomeView/components/SearchResultsTable.js +15 -31
- package/dist/LinearGenomeView/components/SequenceSearchDialog.d.ts +1 -2
- package/dist/LinearGenomeView/components/SequenceSearchDialog.js +39 -72
- package/dist/LinearGenomeView/components/TrackContainer.d.ts +1 -2
- package/dist/LinearGenomeView/components/TrackContainer.js +10 -36
- package/dist/LinearGenomeView/components/TrackLabel.d.ts +1 -2
- package/dist/LinearGenomeView/components/TrackLabel.js +10 -78
- package/dist/LinearGenomeView/components/TrackLabelContainer.d.ts +1 -2
- package/dist/LinearGenomeView/components/TrackLabelContainer.js +2 -2
- package/dist/LinearGenomeView/components/TrackLabelDragHandle.d.ts +1 -2
- package/dist/LinearGenomeView/components/TrackLabelDragHandle.js +3 -4
- package/dist/LinearGenomeView/components/TrackLabelMenu.d.ts +5 -0
- package/dist/LinearGenomeView/components/TrackLabelMenu.js +79 -0
- package/dist/LinearGenomeView/components/TrackRenderingContainer.d.ts +1 -2
- package/dist/LinearGenomeView/components/TrackRenderingContainer.js +10 -37
- package/dist/LinearGenomeView/components/TracksContainer.d.ts +1 -2
- package/dist/LinearGenomeView/components/TracksContainer.js +33 -27
- package/dist/LinearGenomeView/components/VerticalGuide.d.ts +1 -2
- package/dist/LinearGenomeView/components/VerticalGuide.js +3 -7
- package/dist/LinearGenomeView/components/useRangeSelect.d.ts +1 -1
- package/dist/LinearGenomeView/components/useWheelScroll.d.ts +1 -1
- package/dist/LinearGenomeView/components/useWheelScroll.js +1 -1
- package/dist/LinearGenomeView/index.js +17 -7
- package/dist/LinearGenomeView/model.d.ts +1 -39
- package/dist/LinearGenomeView/model.js +28 -31
- package/dist/LinearGenomeView/svgcomponents/SVGBackground.d.ts +1 -2
- package/dist/LinearGenomeView/svgcomponents/SVGBackground.js +2 -5
- package/dist/LinearGenomeView/svgcomponents/SVGHeader.d.ts +1 -2
- package/dist/LinearGenomeView/svgcomponents/SVGHeader.js +2 -12
- package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.d.ts +2 -1
- package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +2 -12
- package/dist/LinearGenomeView/svgcomponents/SVGRegionSeparators.d.ts +1 -2
- package/dist/LinearGenomeView/svgcomponents/SVGRegionSeparators.js +2 -5
- package/dist/LinearGenomeView/svgcomponents/SVGRuler.d.ts +1 -2
- package/dist/LinearGenomeView/svgcomponents/SVGRuler.js +17 -29
- package/dist/LinearGenomeView/svgcomponents/SVGScalebar.d.ts +1 -2
- package/dist/LinearGenomeView/svgcomponents/SVGScalebar.js +2 -9
- package/dist/LinearGenomeView/svgcomponents/SVGTrackLabel.d.ts +1 -2
- package/dist/LinearGenomeView/svgcomponents/SVGTrackLabel.js +2 -5
- package/dist/LinearGenomeView/svgcomponents/SVGTracks.d.ts +1 -2
- package/dist/LinearGenomeView/svgcomponents/SVGTracks.js +18 -15
- package/dist/LinearGenomeView/types.d.ts +38 -0
- package/dist/LinearGenomeView/types.js +2 -0
- package/dist/LinearGenomeView/util.d.ts +3 -1
- package/dist/LinearGenomeView/util.js +16 -0
- package/dist/index.d.ts +10 -10
- package/dist/index.js +19 -8
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +1 -2
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js +17 -21
- package/esm/BaseLinearDisplay/components/Block.d.ts +3 -4
- package/esm/BaseLinearDisplay/components/Block.js +4 -4
- package/esm/BaseLinearDisplay/components/BlockError.d.ts +1 -2
- package/esm/BaseLinearDisplay/components/BlockError.js +9 -15
- package/esm/BaseLinearDisplay/components/BlockMsg.d.ts +1 -2
- package/esm/BaseLinearDisplay/components/BlockMsg.js +3 -5
- package/esm/BaseLinearDisplay/components/LinearBlocks.d.ts +2 -3
- package/esm/BaseLinearDisplay/components/LinearBlocks.js +21 -24
- package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.d.ts +1 -2
- package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +6 -7
- package/esm/BaseLinearDisplay/components/TooLargeMessage.d.ts +2 -3
- package/esm/BaseLinearDisplay/components/TooLargeMessage.js +11 -7
- package/esm/BaseLinearDisplay/components/Tooltip.d.ts +7 -4
- package/esm/BaseLinearDisplay/components/Tooltip.js +5 -5
- package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +7 -7
- package/esm/BaseLinearDisplay/models/FeatureDensityMixin.d.ts +1 -2
- package/esm/BaseLinearDisplay/models/FeatureDensityMixin.js +2 -2
- package/esm/BaseLinearDisplay/models/renderSvg.d.ts +2 -3
- package/esm/BaseLinearDisplay/models/renderSvg.js +9 -16
- package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.d.ts +1 -1
- package/esm/LinearBareDisplay/model.d.ts +6 -6
- package/esm/LinearBasicDisplay/components/AddFiltersDialog.d.ts +1 -2
- package/esm/LinearBasicDisplay/components/AddFiltersDialog.js +16 -34
- package/esm/LinearBasicDisplay/components/SetMaxHeightDialog.d.ts +1 -2
- package/esm/LinearBasicDisplay/components/SetMaxHeightDialog.js +10 -16
- package/esm/LinearBasicDisplay/model.d.ts +6 -6
- package/esm/LinearGenomeView/components/CenterLine.d.ts +1 -2
- package/esm/LinearGenomeView/components/CenterLine.js +7 -10
- package/esm/LinearGenomeView/components/Cytobands.d.ts +1 -2
- package/esm/LinearGenomeView/components/Cytobands.js +28 -28
- package/esm/LinearGenomeView/components/ExportSvgDialog.d.ts +2 -3
- package/esm/LinearGenomeView/components/ExportSvgDialog.js +34 -49
- package/esm/LinearGenomeView/components/GetSequenceDialog.d.ts +1 -2
- package/esm/LinearGenomeView/components/GetSequenceDialog.js +27 -39
- package/esm/LinearGenomeView/components/Gridlines.d.ts +1 -2
- package/esm/LinearGenomeView/components/Gridlines.js +23 -25
- package/esm/LinearGenomeView/components/Header.d.ts +3 -5
- package/esm/LinearGenomeView/components/Header.js +11 -62
- package/esm/LinearGenomeView/components/HeaderPanControls.d.ts +6 -0
- package/esm/LinearGenomeView/components/HeaderPanControls.js +24 -0
- package/esm/LinearGenomeView/components/HeaderRegionWidth.d.ts +5 -0
- package/esm/LinearGenomeView/components/HeaderRegionWidth.js +19 -0
- package/esm/LinearGenomeView/components/HeaderTrackSelectorButton.d.ts +5 -0
- package/esm/LinearGenomeView/components/HeaderTrackSelectorButton.js +17 -0
- package/esm/LinearGenomeView/components/HeaderZoomControls.d.ts +5 -0
- package/esm/LinearGenomeView/components/HeaderZoomControls.js +65 -0
- package/esm/LinearGenomeView/components/Highlight.d.ts +9 -4
- package/esm/LinearGenomeView/components/Highlight.js +32 -35
- package/esm/LinearGenomeView/components/ImportForm.d.ts +1 -2
- package/esm/LinearGenomeView/components/ImportForm.js +32 -45
- package/esm/LinearGenomeView/components/ImportFormRefNameAutocomplete.d.ts +1 -2
- package/esm/LinearGenomeView/components/ImportFormRefNameAutocomplete.js +2 -2
- package/esm/LinearGenomeView/components/LinearGenomeView.d.ts +1 -2
- package/esm/LinearGenomeView/components/LinearGenomeView.js +7 -10
- package/esm/LinearGenomeView/components/MiniControls.d.ts +1 -2
- package/esm/LinearGenomeView/components/MiniControls.js +6 -13
- package/esm/LinearGenomeView/components/NoTracksActiveButton.d.ts +1 -2
- package/esm/LinearGenomeView/components/NoTracksActiveButton.js +2 -4
- package/esm/LinearGenomeView/components/OverviewHighlight.d.ts +1 -2
- package/esm/LinearGenomeView/components/OverviewHighlight.js +3 -3
- package/esm/LinearGenomeView/components/OverviewRubberband.d.ts +1 -2
- package/esm/LinearGenomeView/components/OverviewRubberband.js +6 -10
- package/esm/LinearGenomeView/components/OverviewScalebar.d.ts +1 -2
- package/esm/LinearGenomeView/components/OverviewScalebar.js +30 -41
- package/esm/LinearGenomeView/components/OverviewScalebarPolygon.d.ts +1 -2
- package/esm/LinearGenomeView/components/OverviewScalebarPolygon.js +2 -2
- package/esm/LinearGenomeView/components/OverviewScalebarTickLabels.d.ts +1 -2
- package/esm/LinearGenomeView/components/OverviewScalebarTickLabels.js +3 -3
- package/esm/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.d.ts +1 -2
- package/esm/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.js +3 -3
- package/esm/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.d.ts +1 -2
- package/esm/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.js +8 -15
- package/esm/LinearGenomeView/components/RefNameAutocomplete/HelpDialog.d.ts +1 -2
- package/esm/LinearGenomeView/components/RefNameAutocomplete/HelpDialog.js +4 -40
- package/esm/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +1 -2
- package/esm/LinearGenomeView/components/RefNameAutocomplete/index.js +4 -3
- package/esm/LinearGenomeView/components/RegionWidthEditorDialog.d.ts +6 -0
- package/esm/LinearGenomeView/components/RegionWidthEditorDialog.js +28 -0
- package/esm/LinearGenomeView/components/Rubberband.d.ts +1 -2
- package/esm/LinearGenomeView/components/Rubberband.js +7 -9
- package/esm/LinearGenomeView/components/RubberbandSpan.d.ts +1 -2
- package/esm/LinearGenomeView/components/RubberbandSpan.js +16 -11
- package/esm/LinearGenomeView/components/Scalebar.d.ts +1 -1
- package/esm/LinearGenomeView/components/Scalebar.js +10 -13
- package/esm/LinearGenomeView/components/ScalebarCoordinateLabels.d.ts +1 -2
- package/esm/LinearGenomeView/components/ScalebarCoordinateLabels.js +17 -17
- package/esm/LinearGenomeView/components/ScalebarCoordinateTicks.d.ts +1 -2
- package/esm/LinearGenomeView/components/ScalebarCoordinateTicks.js +9 -9
- package/esm/LinearGenomeView/components/ScalebarRefNameLabels.d.ts +1 -2
- package/esm/LinearGenomeView/components/ScalebarRefNameLabels.js +12 -16
- package/esm/LinearGenomeView/components/SearchBox.d.ts +1 -2
- package/esm/LinearGenomeView/components/SearchBox.js +2 -2
- package/esm/LinearGenomeView/components/SearchResultsDialog.d.ts +1 -2
- package/esm/LinearGenomeView/components/SearchResultsDialog.js +4 -14
- package/esm/LinearGenomeView/components/SearchResultsTable.d.ts +1 -2
- package/esm/LinearGenomeView/components/SearchResultsTable.js +15 -28
- package/esm/LinearGenomeView/components/SequenceSearchDialog.d.ts +1 -2
- package/esm/LinearGenomeView/components/SequenceSearchDialog.js +39 -49
- package/esm/LinearGenomeView/components/TrackContainer.d.ts +1 -2
- package/esm/LinearGenomeView/components/TrackContainer.js +10 -13
- package/esm/LinearGenomeView/components/TrackLabel.d.ts +1 -2
- package/esm/LinearGenomeView/components/TrackLabel.js +10 -78
- package/esm/LinearGenomeView/components/TrackLabelContainer.d.ts +1 -2
- package/esm/LinearGenomeView/components/TrackLabelContainer.js +2 -2
- package/esm/LinearGenomeView/components/TrackLabelDragHandle.d.ts +1 -2
- package/esm/LinearGenomeView/components/TrackLabelDragHandle.js +3 -4
- package/esm/LinearGenomeView/components/TrackLabelMenu.d.ts +5 -0
- package/esm/LinearGenomeView/components/TrackLabelMenu.js +74 -0
- package/esm/LinearGenomeView/components/TrackRenderingContainer.d.ts +1 -2
- package/esm/LinearGenomeView/components/TrackRenderingContainer.js +10 -14
- package/esm/LinearGenomeView/components/TracksContainer.d.ts +1 -2
- package/esm/LinearGenomeView/components/TracksContainer.js +16 -20
- package/esm/LinearGenomeView/components/VerticalGuide.d.ts +1 -2
- package/esm/LinearGenomeView/components/VerticalGuide.js +3 -4
- package/esm/LinearGenomeView/components/useRangeSelect.d.ts +1 -1
- package/esm/LinearGenomeView/components/useWheelScroll.d.ts +1 -1
- package/esm/LinearGenomeView/components/useWheelScroll.js +1 -1
- package/esm/LinearGenomeView/model.d.ts +1 -39
- package/esm/LinearGenomeView/model.js +10 -22
- package/esm/LinearGenomeView/svgcomponents/SVGBackground.d.ts +1 -2
- package/esm/LinearGenomeView/svgcomponents/SVGBackground.js +2 -2
- package/esm/LinearGenomeView/svgcomponents/SVGHeader.d.ts +1 -2
- package/esm/LinearGenomeView/svgcomponents/SVGHeader.js +2 -12
- package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.d.ts +2 -1
- package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +2 -12
- package/esm/LinearGenomeView/svgcomponents/SVGRegionSeparators.d.ts +1 -2
- package/esm/LinearGenomeView/svgcomponents/SVGRegionSeparators.js +2 -2
- package/esm/LinearGenomeView/svgcomponents/SVGRuler.d.ts +1 -2
- package/esm/LinearGenomeView/svgcomponents/SVGRuler.js +17 -29
- package/esm/LinearGenomeView/svgcomponents/SVGScalebar.d.ts +1 -2
- package/esm/LinearGenomeView/svgcomponents/SVGScalebar.js +2 -6
- package/esm/LinearGenomeView/svgcomponents/SVGTrackLabel.d.ts +1 -2
- package/esm/LinearGenomeView/svgcomponents/SVGTrackLabel.js +2 -2
- package/esm/LinearGenomeView/svgcomponents/SVGTracks.d.ts +1 -2
- package/esm/LinearGenomeView/svgcomponents/SVGTracks.js +18 -15
- package/esm/LinearGenomeView/types.d.ts +38 -0
- package/esm/LinearGenomeView/types.js +1 -0
- package/esm/LinearGenomeView/util.d.ts +3 -1
- package/esm/LinearGenomeView/util.js +16 -1
- package/esm/index.d.ts +10 -10
- package/esm/index.js +2 -1
- package/package.json +2 -2
- package/dist/LinearGenomeView/components/ZoomControls.d.ts +0 -6
- package/dist/LinearGenomeView/components/ZoomControls.js +0 -66
- package/esm/LinearGenomeView/components/ZoomControls.d.ts +0 -6
- package/esm/LinearGenomeView/components/ZoomControls.js +0 -38
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useRef, useState } from 'react';
|
|
2
3
|
import { Menu } from '@jbrowse/core/ui';
|
|
3
4
|
import { getSession } from '@jbrowse/core/util';
|
|
4
5
|
import { colord } from '@jbrowse/core/util/colord';
|
|
@@ -18,8 +19,11 @@ const useStyles = makeStyles()(theme => ({
|
|
|
18
19
|
linkIcon: {
|
|
19
20
|
color: colord(theme.palette.highlight.main).darken(0.2).toRgbString(),
|
|
20
21
|
},
|
|
22
|
+
z3: {
|
|
23
|
+
zIndex: 3,
|
|
24
|
+
},
|
|
21
25
|
}));
|
|
22
|
-
const Highlight = observer(function
|
|
26
|
+
const Highlight = observer(function ({ model, highlight, }) {
|
|
23
27
|
var _a;
|
|
24
28
|
const { classes } = useStyles();
|
|
25
29
|
const [open, setOpen] = useState(false);
|
|
@@ -53,41 +57,34 @@ const Highlight = observer(function Highlight({ model, highlight, }) {
|
|
|
53
57
|
...highlight,
|
|
54
58
|
refName: (_a = asm === null || asm === void 0 ? void 0 : asm.getCanonicalRefName(highlight.refName)) !== null && _a !== void 0 ? _a : highlight.refName,
|
|
55
59
|
});
|
|
56
|
-
return h ? (
|
|
60
|
+
return h ? (_jsxs("div", { className: classes.highlight, style: {
|
|
57
61
|
left: h.left,
|
|
58
62
|
width: h.width,
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
icon: CloseIcon,
|
|
72
|
-
onClick: () => {
|
|
73
|
-
dismissHighlight();
|
|
63
|
+
}, children: [_jsx(Tooltip, { title: "Highlighted from URL parameter", arrow: true, children: _jsx(IconButton, { ref: anchorEl, className: classes.z3, onClick: () => {
|
|
64
|
+
setOpen(true);
|
|
65
|
+
}, children: _jsx(LinkIcon, { fontSize: "small", className: classes.linkIcon }) }) }), _jsx(Menu, { anchorEl: anchorEl.current, onMenuItemClick: (_event, callback) => {
|
|
66
|
+
callback(session);
|
|
67
|
+
handleClose();
|
|
68
|
+
}, open: open, onClose: handleClose, menuItems: [
|
|
69
|
+
{
|
|
70
|
+
label: 'Dismiss highlight',
|
|
71
|
+
icon: CloseIcon,
|
|
72
|
+
onClick: () => {
|
|
73
|
+
dismissHighlight();
|
|
74
|
+
},
|
|
74
75
|
},
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
76
|
+
{
|
|
77
|
+
label: 'Bookmark highlighted region',
|
|
78
|
+
icon: BookmarkIcon,
|
|
79
|
+
onClick: () => {
|
|
80
|
+
let bookmarkWidget = session.widgets.get('GridBookmark');
|
|
81
|
+
if (!bookmarkWidget) {
|
|
82
|
+
bookmarkWidget = session.addWidget('GridBookmarkWidget', 'GridBookmark');
|
|
83
|
+
}
|
|
84
|
+
bookmarkWidget.addBookmark(highlight);
|
|
85
|
+
dismissHighlight();
|
|
86
|
+
},
|
|
86
87
|
},
|
|
87
|
-
}
|
|
88
|
-
] }))) : null;
|
|
89
|
-
});
|
|
90
|
-
const HighlightGroup = observer(function HighlightGroup({ model, }) {
|
|
91
|
-
return model.highlight.map((highlight, idx) => (React.createElement(Highlight, { key: `${JSON.stringify(highlight)}-${idx}`, model: model, highlight: highlight })));
|
|
88
|
+
] })] })) : null;
|
|
92
89
|
});
|
|
93
|
-
export default
|
|
90
|
+
export default Highlight;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
type LGV = LinearGenomeViewModel;
|
|
4
3
|
declare const LinearGenomeViewImportForm: ({ model, }: {
|
|
5
4
|
model: LGV;
|
|
6
|
-
}) =>
|
|
5
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
7
6
|
export default LinearGenomeViewImportForm;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from 'react';
|
|
2
3
|
import { AssemblySelector, ErrorMessage } from '@jbrowse/core/ui';
|
|
3
4
|
import { getSession } from '@jbrowse/core/util';
|
|
4
5
|
import CloseIcon from '@mui/icons-material/Close';
|
|
5
|
-
import { Button, CircularProgress, Container, FormControl, Grid, } from '@mui/material';
|
|
6
|
+
import { Button, CircularProgress, Container, FormControl, Grid2 as Grid, } from '@mui/material';
|
|
6
7
|
import { observer } from 'mobx-react';
|
|
7
8
|
import { makeStyles } from 'tss-react/mui';
|
|
8
9
|
import ImportFormRefNameAutocomplete from './ImportFormRefNameAutocomplete';
|
|
@@ -38,51 +39,37 @@ const LinearGenomeViewImportForm = observer(function ({ model, }) {
|
|
|
38
39
|
useEffect(() => {
|
|
39
40
|
setValue(r0);
|
|
40
41
|
}, [r0, selectedAsm]);
|
|
41
|
-
return (
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
42
|
+
return (_jsxs("div", { className: classes.container, children: [displayError ? _jsx(ErrorMessage, { error: displayError }) : null, _jsx(Container, { className: classes.importFormContainer, children: _jsx("form", { onSubmit: async (event) => {
|
|
43
|
+
var _a;
|
|
44
|
+
event.preventDefault();
|
|
45
|
+
model.setError(undefined);
|
|
46
|
+
if (value) {
|
|
47
|
+
try {
|
|
48
|
+
if ((option === null || option === void 0 ? void 0 : option.getDisplayString()) === value &&
|
|
49
|
+
option.hasLocation()) {
|
|
50
|
+
await navToOption({
|
|
51
|
+
option,
|
|
52
|
+
model,
|
|
53
|
+
assemblyName: selectedAsm,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
else if ((_a = option === null || option === void 0 ? void 0 : option.results) === null || _a === void 0 ? void 0 : _a.length) {
|
|
57
|
+
model.setSearchResults(option.results, option.getLabel(), selectedAsm);
|
|
58
|
+
}
|
|
59
|
+
else if (assembly) {
|
|
60
|
+
await handleSelectedRegion({ input: value, assembly, model });
|
|
61
|
+
}
|
|
57
62
|
}
|
|
58
|
-
|
|
59
|
-
|
|
63
|
+
catch (e) {
|
|
64
|
+
console.error(e);
|
|
65
|
+
session.notify(`${e}`, 'warning');
|
|
60
66
|
}
|
|
61
|
-
else if (assembly) {
|
|
62
|
-
await handleSelectedRegion({ input: value, assembly, model });
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
catch (e) {
|
|
66
|
-
console.error(e);
|
|
67
|
-
session.notify(`${e}`, 'warning');
|
|
68
67
|
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
setSelectedAsm(val);
|
|
76
|
-
}, localStorageKey: "lgv", session: session, selected: selectedAsm }))),
|
|
77
|
-
React.createElement(Grid, { item: true }, selectedAsm ? (assemblyError ? (React.createElement(CloseIcon, { style: { color: 'red' } })) : assemblyLoaded ? (React.createElement(FormControl, null,
|
|
78
|
-
React.createElement(ImportFormRefNameAutocomplete, { value: value, setValue: setValue, selectedAsm: selectedAsm, setOption: setOption, model: model }))) : (React.createElement(CircularProgress, { size: 20, disableShrink: true }))) : null),
|
|
79
|
-
React.createElement(Grid, { item: true },
|
|
80
|
-
React.createElement(FormControl, null,
|
|
81
|
-
React.createElement(Button, { type: "submit", disabled: !value, className: classes.button, variant: "contained", color: "primary" }, "Open")),
|
|
82
|
-
React.createElement(FormControl, null,
|
|
83
|
-
React.createElement(Button, { disabled: !value, className: classes.button, onClick: () => {
|
|
84
|
-
model.setError(undefined);
|
|
85
|
-
model.showAllRegionsInAssembly(selectedAsm);
|
|
86
|
-
}, variant: "contained", color: "secondary" }, "Show all regions in assembly"))))))));
|
|
68
|
+
}, children: _jsxs(Grid, { container: true, spacing: 1, justifyContent: "center", alignItems: "center", children: [_jsx(FormControl, { children: _jsx(AssemblySelector, { onChange: val => {
|
|
69
|
+
setSelectedAsm(val);
|
|
70
|
+
}, localStorageKey: "lgv", session: session, selected: selectedAsm }) }), selectedAsm ? (assemblyError ? (_jsx(CloseIcon, { style: { color: 'red' } })) : assemblyLoaded ? (_jsx(FormControl, { children: _jsx(ImportFormRefNameAutocomplete, { value: value, setValue: setValue, selectedAsm: selectedAsm, setOption: setOption, model: model }) })) : (_jsx(CircularProgress, { size: 20, disableShrink: true }))) : null, _jsx(FormControl, { children: _jsx(Button, { type: "submit", disabled: !value, className: classes.button, variant: "contained", color: "primary", children: "Open" }) }), _jsx(FormControl, { children: _jsx(Button, { disabled: !value, className: classes.button, onClick: () => {
|
|
71
|
+
model.setError(undefined);
|
|
72
|
+
model.showAllRegionsInAssembly(selectedAsm);
|
|
73
|
+
}, variant: "contained", color: "secondary", children: "Show all regions in assembly" }) })] }) }) })] }));
|
|
87
74
|
});
|
|
88
75
|
export default LinearGenomeViewImportForm;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
import type BaseResult from '@jbrowse/core/TextSearch/BaseResults';
|
|
4
3
|
type LGV = LinearGenomeViewModel;
|
|
@@ -8,5 +7,5 @@ declare const ImportFormRefNameAutocomplete: ({ model, selectedAsm, value, setVa
|
|
|
8
7
|
model: LGV;
|
|
9
8
|
selectedAsm: string;
|
|
10
9
|
setOption: (arg: BaseResult) => void;
|
|
11
|
-
}) =>
|
|
10
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
12
11
|
export default ImportFormRefNameAutocomplete;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { getSession } from '@jbrowse/core/util';
|
|
3
3
|
import { observer } from 'mobx-react';
|
|
4
4
|
import RefNameAutocomplete from './RefNameAutocomplete';
|
|
@@ -9,7 +9,7 @@ const ImportFormRefNameAutocomplete = observer(function ({ model, selectedAsm, v
|
|
|
9
9
|
const { rankSearchResults } = model;
|
|
10
10
|
const searchScope = model.searchScope(selectedAsm);
|
|
11
11
|
const assembly = assemblyManager.get(selectedAsm);
|
|
12
|
-
return (
|
|
12
|
+
return (_jsx(RefNameAutocomplete, { fetchResults: queryString => fetchResults({
|
|
13
13
|
queryString,
|
|
14
14
|
assembly,
|
|
15
15
|
textSearchManager,
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
declare const LinearGenomeView: ({ model, }: {
|
|
4
3
|
model: LinearGenomeViewModel;
|
|
5
|
-
}) =>
|
|
4
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
6
5
|
export default LinearGenomeView;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Suspense, lazy, useEffect, useRef } from 'react';
|
|
2
3
|
import { LoadingEllipses } from '@jbrowse/core/ui';
|
|
3
4
|
import { getSession } from '@jbrowse/core/util';
|
|
4
5
|
import { observer } from 'mobx-react';
|
|
@@ -18,13 +19,13 @@ const useStyles = makeStyles()({
|
|
|
18
19
|
const LinearGenomeView = observer(function ({ model, }) {
|
|
19
20
|
const { error, initialized, hasDisplayedRegions } = model;
|
|
20
21
|
if (!initialized && !error) {
|
|
21
|
-
return
|
|
22
|
+
return _jsx(LoadingEllipses, { variant: "h6" });
|
|
22
23
|
}
|
|
23
24
|
else if (!hasDisplayedRegions || error) {
|
|
24
|
-
return
|
|
25
|
+
return _jsx(ImportForm, { model: model });
|
|
25
26
|
}
|
|
26
27
|
else {
|
|
27
|
-
return
|
|
28
|
+
return _jsx(LinearGenomeViewContainer, { model: model });
|
|
28
29
|
}
|
|
29
30
|
});
|
|
30
31
|
const LinearGenomeViewContainer = observer(function ({ model, }) {
|
|
@@ -48,7 +49,7 @@ const LinearGenomeViewContainer = observer(function ({ model, }) {
|
|
|
48
49
|
document.removeEventListener('keydown', handleSelectView);
|
|
49
50
|
};
|
|
50
51
|
}, [session, model]);
|
|
51
|
-
return (
|
|
52
|
+
return (_jsxs("div", { className: classes.rel, ref: ref, onMouseLeave: () => {
|
|
52
53
|
session.setHovered(undefined);
|
|
53
54
|
}, onMouseMove: event => {
|
|
54
55
|
const c = ref.current;
|
|
@@ -60,10 +61,6 @@ const LinearGenomeViewContainer = observer(function ({ model, }) {
|
|
|
60
61
|
const hoverPosition = model.pxToBp(leftPx);
|
|
61
62
|
const hoverFeature = tracks.find(t => t.displays[0].featureUnderMouse);
|
|
62
63
|
session.setHovered({ hoverPosition, hoverFeature });
|
|
63
|
-
} },
|
|
64
|
-
React.createElement(HeaderComponent, { model: model }),
|
|
65
|
-
React.createElement(MiniControlsComponent, { model: model }),
|
|
66
|
-
React.createElement(TracksContainer, { model: model }, !tracks.length ? (React.createElement(Suspense, { fallback: React.createElement(React.Fragment, null) },
|
|
67
|
-
React.createElement(NoTracksActiveButton, { model: model }))) : (tracks.map(track => (React.createElement(TrackContainer, { key: track.id, model: model, track: track })))))));
|
|
64
|
+
}, children: [_jsx(HeaderComponent, { model: model }), _jsx(MiniControlsComponent, { model: model }), _jsx(TracksContainer, { model: model, children: !tracks.length ? (_jsx(Suspense, { fallback: null, children: _jsx(NoTracksActiveButton, { model: model }) })) : (tracks.map(track => (_jsx(TrackContainer, { model: model, track: track }, track.id)))) })] }));
|
|
68
65
|
});
|
|
69
66
|
export default LinearGenomeView;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
declare const MiniControls: ({ model, }: {
|
|
4
3
|
model: LinearGenomeViewModel;
|
|
5
|
-
}) =>
|
|
4
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
6
5
|
export default MiniControls;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import CascadingMenuButton from '@jbrowse/core/ui/CascadingMenuButton';
|
|
3
3
|
import { getSession } from '@jbrowse/core/util';
|
|
4
4
|
import ArrowDown from '@mui/icons-material/KeyboardArrowDown';
|
|
@@ -22,17 +22,10 @@ const MiniControls = observer(function ({ model, }) {
|
|
|
22
22
|
const { classes } = useStyles();
|
|
23
23
|
const { id, bpPerPx, maxBpPerPx, minBpPerPx, scaleFactor, hideHeader } = model;
|
|
24
24
|
const { focusedViewId } = getSession(model);
|
|
25
|
-
return hideHeader ? (
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
model.zoom(bpPerPx * 2);
|
|
31
|
-
}, disabled: bpPerPx >= maxBpPerPx - 0.0001 || scaleFactor !== 1 },
|
|
32
|
-
React.createElement(ZoomOut, { fontSize: "small" })),
|
|
33
|
-
React.createElement(IconButton, { "data-testid": "zoom_in", onClick: () => {
|
|
34
|
-
model.zoom(bpPerPx / 2);
|
|
35
|
-
}, disabled: bpPerPx <= minBpPerPx + 0.0001 || scaleFactor !== 1 },
|
|
36
|
-
React.createElement(ZoomIn, { fontSize: "small" }))))) : null;
|
|
25
|
+
return hideHeader ? (_jsx(Paper, { className: classes.background, children: _jsxs(Paper, { className: focusedViewId === id ? classes.focusedBackground : undefined, children: [_jsx(CascadingMenuButton, { menuItems: model.menuItems(), children: _jsx(ArrowDown, { fontSize: "small" }) }), _jsx(IconButton, { "data-testid": "zoom_out", onClick: () => {
|
|
26
|
+
model.zoom(bpPerPx * 2);
|
|
27
|
+
}, disabled: bpPerPx >= maxBpPerPx - 0.0001 || scaleFactor !== 1, children: _jsx(ZoomOut, { fontSize: "small" }) }), _jsx(IconButton, { "data-testid": "zoom_in", onClick: () => {
|
|
28
|
+
model.zoom(bpPerPx / 2);
|
|
29
|
+
}, disabled: bpPerPx <= minBpPerPx + 0.0001 || scaleFactor !== 1, children: _jsx(ZoomIn, { fontSize: "small" }) })] }) })) : null;
|
|
37
30
|
});
|
|
38
31
|
export default MiniControls;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
declare const NoTracksActiveButton: ({ model, }: {
|
|
4
3
|
model: LinearGenomeViewModel;
|
|
5
|
-
}) =>
|
|
4
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
6
5
|
export default NoTracksActiveButton;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { TrackSelector as TrackSelectorIcon } from '@jbrowse/core/ui/Icons';
|
|
3
3
|
import { Button, Paper, Typography } from '@mui/material';
|
|
4
4
|
import { observer } from 'mobx-react';
|
|
@@ -16,8 +16,6 @@ const useStyles = makeStyles()(theme => ({
|
|
|
16
16
|
const NoTracksActiveButton = observer(function ({ model, }) {
|
|
17
17
|
const { classes } = useStyles();
|
|
18
18
|
const { hideNoTracksActive } = model;
|
|
19
|
-
return (
|
|
20
|
-
React.createElement(Typography, null, "No tracks active."),
|
|
21
|
-
React.createElement(Button, { variant: "contained", color: "primary", onClick: () => model.activateTrackSelector(), className: classes.top, startIcon: React.createElement(TrackSelectorIcon, null) }, "Open track selector"))) : (React.createElement("div", { style: { height: '48px' } }))));
|
|
19
|
+
return (_jsx(Paper, { className: classes.note, children: !hideNoTracksActive ? (_jsxs(_Fragment, { children: [_jsx(Typography, { children: "No tracks active." }), _jsx(Button, { variant: "contained", color: "primary", onClick: () => model.activateTrackSelector(), className: classes.top, startIcon: _jsx(TrackSelectorIcon, {}), children: "Open track selector" })] })) : (_jsx("div", { style: { height: '48px' } })) }));
|
|
22
20
|
});
|
|
23
21
|
export default NoTracksActiveButton;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '../model';
|
|
3
2
|
import type { Base1DViewModel } from '@jbrowse/core/util/Base1DViewModel';
|
|
4
3
|
type LGV = LinearGenomeViewModel;
|
|
5
4
|
declare const OverviewHighlight: ({ model, overview, }: {
|
|
6
5
|
model: LGV;
|
|
7
6
|
overview: Base1DViewModel;
|
|
8
|
-
}) =>
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element[];
|
|
9
8
|
export default OverviewHighlight;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { getSession, notEmpty } from '@jbrowse/core/util';
|
|
3
3
|
import { colord } from '@jbrowse/core/util/colord';
|
|
4
4
|
import { observer } from 'mobx-react';
|
|
@@ -40,9 +40,9 @@ const OverviewHighlight = observer(function OverviewHighlight({ model, overview,
|
|
|
40
40
|
: undefined;
|
|
41
41
|
})
|
|
42
42
|
.filter(notEmpty)
|
|
43
|
-
.map(({ left, width }, idx) => (
|
|
43
|
+
.map(({ left, width }, idx) => (_jsx("div", { className: classes.highlight, style: {
|
|
44
44
|
width: width,
|
|
45
45
|
left: left,
|
|
46
|
-
} })));
|
|
46
|
+
} }, `${left}_${width}_${idx}`)));
|
|
47
47
|
});
|
|
48
48
|
export default OverviewHighlight;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
import type { Base1DViewModel } from '@jbrowse/core/util/Base1DViewModel';
|
|
4
3
|
type LGV = LinearGenomeViewModel;
|
|
@@ -6,5 +5,5 @@ declare const OverviewRubberband: ({ model, overview, ControlComponent, }: {
|
|
|
6
5
|
model: LGV;
|
|
7
6
|
overview: Base1DViewModel;
|
|
8
7
|
ControlComponent?: React.ReactElement;
|
|
9
|
-
}) =>
|
|
8
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
10
9
|
export default OverviewRubberband;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useRef, useState } from 'react';
|
|
2
3
|
import { getSession, stringify } from '@jbrowse/core/util';
|
|
3
4
|
import { Tooltip } from '@mui/material';
|
|
4
5
|
import { observer } from 'mobx-react';
|
|
@@ -32,10 +33,9 @@ const HoverTooltip = observer(function ({ model, open, guideX, overview, }) {
|
|
|
32
33
|
const cytoband = (_a = assembly === null || assembly === void 0 ? void 0 : assembly.cytobands) === null || _a === void 0 ? void 0 : _a.find(f => px.coord > f.get('start') &&
|
|
33
34
|
px.coord < f.get('end') &&
|
|
34
35
|
px.refName === assembly.getCanonicalRefName(f.get('refName')));
|
|
35
|
-
return (
|
|
36
|
-
React.createElement("div", { className: classes.guide, style: { left: guideX } })));
|
|
36
|
+
return (_jsx(Tooltip, { open: open, placement: "top", title: [stringify(px), cytoband === null || cytoband === void 0 ? void 0 : cytoband.get('name')].join(' '), arrow: true, children: _jsx("div", { className: classes.guide, style: { left: guideX } }) }));
|
|
37
37
|
});
|
|
38
|
-
const OverviewRubberband = observer(function OverviewRubberband({ model, overview, ControlComponent =
|
|
38
|
+
const OverviewRubberband = observer(function OverviewRubberband({ model, overview, ControlComponent = _jsx("div", {}), }) {
|
|
39
39
|
const { cytobandOffset } = model;
|
|
40
40
|
const [startX, setStartX] = useState();
|
|
41
41
|
const [currentX, setCurrentX] = useState();
|
|
@@ -104,9 +104,7 @@ const OverviewRubberband = observer(function OverviewRubberband({ model, overvie
|
|
|
104
104
|
setGuideX(undefined);
|
|
105
105
|
}
|
|
106
106
|
if (startX === undefined) {
|
|
107
|
-
return (
|
|
108
|
-
guideX !== undefined ? (React.createElement(HoverTooltip, { model: model, open: !mouseDragging, overview: overview, guideX: guideX })) : null,
|
|
109
|
-
React.createElement("div", { className: classes.rubberbandControl, ref: controlsRef, onMouseDown: mouseDown, onMouseOut: mouseOut, onMouseMove: mouseMove }, ControlComponent)));
|
|
107
|
+
return (_jsxs("div", { className: classes.rel, children: [guideX !== undefined ? (_jsx(HoverTooltip, { model: model, open: !mouseDragging, overview: overview, guideX: guideX })) : null, _jsx("div", { className: classes.rubberbandControl, ref: controlsRef, onMouseDown: mouseDown, onMouseOut: mouseOut, onMouseMove: mouseMove, children: ControlComponent })] }));
|
|
110
108
|
}
|
|
111
109
|
let left = startX || 0;
|
|
112
110
|
let width = 0;
|
|
@@ -124,8 +122,6 @@ const OverviewRubberband = observer(function OverviewRubberband({ model, overvie
|
|
|
124
122
|
[leftBpOffset, rightBpOffset] = [rightBpOffset, leftBpOffset];
|
|
125
123
|
}
|
|
126
124
|
}
|
|
127
|
-
return (
|
|
128
|
-
leftBpOffset && rightBpOffset ? (React.createElement(RubberbandSpan, { leftBpOffset: leftBpOffset, rightBpOffset: rightBpOffset, width: Math.abs(width), left: left })) : null,
|
|
129
|
-
React.createElement("div", { "data-testid": "rubberband_controls", className: classes.rubberbandControl, ref: controlsRef, onMouseDown: mouseDown, onMouseOut: mouseOut, onMouseMove: mouseMove }, ControlComponent)));
|
|
125
|
+
return (_jsxs("div", { className: classes.rel, children: [leftBpOffset && rightBpOffset ? (_jsx(RubberbandSpan, { leftBpOffset: leftBpOffset, rightBpOffset: rightBpOffset, width: Math.abs(width), left: left })) : null, _jsx("div", { "data-testid": "rubberband_controls", className: classes.rubberbandControl, ref: controlsRef, onMouseDown: mouseDown, onMouseOut: mouseOut, onMouseMove: mouseMove, children: ControlComponent })] }));
|
|
130
126
|
});
|
|
131
127
|
export default OverviewRubberband;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
type LGV = LinearGenomeViewModel;
|
|
4
3
|
declare const OverviewScalebar: ({ model, children, }: {
|
|
5
4
|
model: LGV;
|
|
6
5
|
children: React.ReactNode;
|
|
7
|
-
}) =>
|
|
6
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
8
7
|
export default OverviewScalebar;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
2
3
|
import { getEnv, getSession } from '@jbrowse/core/util';
|
|
3
4
|
import Base1DView from '@jbrowse/core/util/Base1DViewModel';
|
|
4
5
|
import { Typography, alpha, useTheme } from '@mui/material';
|
|
@@ -66,23 +67,20 @@ const OverviewBox = observer(function ({ scale, model, block, overview, }) {
|
|
|
66
67
|
const assembly = assemblyManager.get(assemblyName);
|
|
67
68
|
const refNameColor = assembly === null || assembly === void 0 ? void 0 : assembly.getRefNameColor(refName);
|
|
68
69
|
const canDisplayCytobands = showCytobands && getCytobands(assembly, block.refName).length;
|
|
69
|
-
return (
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
:
|
|
81
|
-
|
|
82
|
-
width: block
|
|
83
|
-
borderColor: refNameColor,
|
|
84
|
-
} }, canDisplayCytobands ? (React.createElement("svg", { style: { width: '100%' } },
|
|
85
|
-
React.createElement(Cytobands, { overview: overview, assembly: assembly, block: block }))) : (React.createElement(OverviewScalebarTickLabels, { model: model, overview: overview, scale: scale, block: block })))));
|
|
70
|
+
return (_jsxs("div", { children: [_jsx(Typography, { style: {
|
|
71
|
+
left: block.offsetPx + 3,
|
|
72
|
+
color: canDisplayCytobands
|
|
73
|
+
? theme.palette.text.primary
|
|
74
|
+
: refNameColor,
|
|
75
|
+
}, className: classes.scalebarRefName, children: refName }), _jsx("div", { className: cx(classes.scalebarContig, canDisplayCytobands
|
|
76
|
+
? undefined
|
|
77
|
+
: reversed
|
|
78
|
+
? classes.scalebarContigReverse
|
|
79
|
+
: classes.scalebarContigForward, !canDisplayCytobands ? classes.scalebarBorder : undefined), style: {
|
|
80
|
+
left: block.offsetPx + cytobandOffset,
|
|
81
|
+
width: block.widthPx,
|
|
82
|
+
borderColor: refNameColor,
|
|
83
|
+
}, children: canDisplayCytobands ? (_jsx("svg", { style: { width: '100%' }, children: _jsx(Cytobands, { overview: overview, assembly: assembly, block: block }) })) : (_jsx(OverviewScalebarTickLabels, { model: model, overview: overview, scale: scale, block: block })) })] }));
|
|
86
84
|
});
|
|
87
85
|
const Scalebar = observer(function ({ model, scale, overview, }) {
|
|
88
86
|
const { classes } = useStyles();
|
|
@@ -108,23 +106,19 @@ const Scalebar = observer(function ({ model, scale, overview, }) {
|
|
|
108
106
|
const color = showCytobands ? '#f00' : scalebarColor;
|
|
109
107
|
const transparency = showCytobands ? 0.1 : 0.3;
|
|
110
108
|
const additional = pluginManager.evaluateExtensionPoint('LinearGenomeView-OverviewScalebarComponent', undefined, { model, overview });
|
|
111
|
-
return (
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
} })) : (React.createElement(OverviewBox, { scale: scale, block: block, model: model, overview: overview, key: `${JSON.stringify(block)}-${idx}` }));
|
|
125
|
-
}),
|
|
126
|
-
React.createElement(OverviewHighlight, { model: model, overview: overview }),
|
|
127
|
-
additional));
|
|
109
|
+
return (_jsxs("div", { className: classes.scalebar, children: [_jsx("div", { className: classes.scalebarVisibleRegion, style: {
|
|
110
|
+
width: lastOverviewPx - firstOverviewPx,
|
|
111
|
+
left: firstOverviewPx + cytobandOffset,
|
|
112
|
+
background: alpha(color, transparency),
|
|
113
|
+
borderColor: color,
|
|
114
|
+
} }), overviewVisibleRegions.map((block, idx) => {
|
|
115
|
+
return !(block.type === 'ContentBlock') ? (_jsx("div", { className: classes.scalebarContig, style: {
|
|
116
|
+
width: block.widthPx,
|
|
117
|
+
left: block.offsetPx,
|
|
118
|
+
backgroundColor: '#999',
|
|
119
|
+
backgroundImage: 'repeating-linear-gradient(90deg, transparent, transparent 1px, rgba(255,255,255,.5) 1px, rgba(255,255,255,.5) 3px)',
|
|
120
|
+
} }, `${JSON.stringify(block)}-${idx}`)) : (_jsx(OverviewBox, { scale: scale, block: block, model: model, overview: overview }, `${JSON.stringify(block)}-${idx}`));
|
|
121
|
+
}), _jsx(OverviewHighlight, { model: model, overview: overview }), additional] }));
|
|
128
122
|
});
|
|
129
123
|
const OverviewScalebar = observer(function ({ model, children, }) {
|
|
130
124
|
const { classes } = useStyles();
|
|
@@ -142,11 +136,6 @@ const OverviewScalebar = observer(function ({ model, children, }) {
|
|
|
142
136
|
return overview;
|
|
143
137
|
}, [str, minimumBlockWidth, modWidth]);
|
|
144
138
|
const scale = totalBp / (modWidth - (displayedRegions.length - 1) * wholeSeqSpacer);
|
|
145
|
-
return (
|
|
146
|
-
React.createElement(OverviewRubberband, { model: model, overview: overview, ControlComponent: React.createElement(Scalebar, { model: model, overview: overview, scale: scale }) }),
|
|
147
|
-
React.createElement("div", { className: classes.overview },
|
|
148
|
-
React.createElement("svg", { height: HEADER_BAR_HEIGHT, className: classes.overviewSvg },
|
|
149
|
-
React.createElement(OverviewScalebarPolygon, { model: model, overview: overview })),
|
|
150
|
-
children)));
|
|
139
|
+
return (_jsxs("div", { children: [_jsx(OverviewRubberband, { model: model, overview: overview, ControlComponent: _jsx(Scalebar, { model: model, overview: overview, scale: scale }) }), _jsxs("div", { className: classes.overview, children: [_jsx("svg", { height: HEADER_BAR_HEIGHT, className: classes.overviewSvg, children: _jsx(OverviewScalebarPolygon, { model: model, overview: overview }) }), children] })] }));
|
|
151
140
|
});
|
|
152
141
|
export default OverviewScalebar;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
import type { Base1DViewModel } from '@jbrowse/core/util/Base1DViewModel';
|
|
4
3
|
declare const OverviewScalebarPolygon: ({ model, overview, useOffset, }: {
|
|
5
4
|
model: LinearGenomeViewModel;
|
|
6
5
|
overview: Base1DViewModel;
|
|
7
6
|
useOffset?: boolean;
|
|
8
|
-
}) =>
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
9
8
|
export default OverviewScalebarPolygon;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { getFillProps, getStrokeProps } from '@jbrowse/core/util';
|
|
3
3
|
import { alpha, useTheme } from '@mui/material';
|
|
4
4
|
import { observer } from 'mobx-react';
|
|
@@ -34,6 +34,6 @@ const OverviewScalebarPolygon = observer(function ({ model, overview, useOffset
|
|
|
34
34
|
[topRight, 0],
|
|
35
35
|
[topLeft, 0],
|
|
36
36
|
];
|
|
37
|
-
return (
|
|
37
|
+
return (_jsx("polygon", { points: points.toString(), ...getFillProps(alpha(polygonColor, 0.3)), ...getStrokeProps(alpha(polygonColor, 0.8)) }));
|
|
38
38
|
});
|
|
39
39
|
export default OverviewScalebarPolygon;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
import type { Base1DViewModel } from '@jbrowse/core/util/Base1DViewModel';
|
|
4
3
|
import type { ContentBlock } from '@jbrowse/core/util/blockTypes';
|
|
@@ -7,5 +6,5 @@ declare const OverviewScalebarTickLabels: ({ block, scale, overview, model, }: {
|
|
|
7
6
|
scale: number;
|
|
8
7
|
block: ContentBlock;
|
|
9
8
|
overview: Base1DViewModel;
|
|
10
|
-
}) =>
|
|
9
|
+
}) => import("react/jsx-runtime").JSX.Element[];
|
|
11
10
|
export default OverviewScalebarTickLabels;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { getSession, getTickDisplayStr } from '@jbrowse/core/util';
|
|
3
3
|
import { Typography } from '@mui/material';
|
|
4
4
|
import { observer } from 'mobx-react';
|
|
@@ -26,10 +26,10 @@ const OverviewScalebarTickLabels = observer(function ({ block, scale, overview,
|
|
|
26
26
|
const offsetLabel = (i + 1) * majorPitch;
|
|
27
27
|
tickLabels.push(reversed ? end - offsetLabel : start + offsetLabel);
|
|
28
28
|
}
|
|
29
|
-
return tickLabels.map((tickLabel, labelIdx) => (
|
|
29
|
+
return tickLabels.map((tickLabel, labelIdx) => (_jsx(Typography, { className: classes.scalebarLabel, variant: "body2", style: {
|
|
30
30
|
left: ((labelIdx + 1) * majorPitch) / scale,
|
|
31
31
|
pointerEvents: 'none',
|
|
32
32
|
color: refNameColor,
|
|
33
|
-
}
|
|
33
|
+
}, children: getTickDisplayStr(tickLabel, overview.bpPerPx) }, `${JSON.stringify(block)}-${tickLabel}-${labelIdx}`)));
|
|
34
34
|
});
|
|
35
35
|
export default OverviewScalebarTickLabels;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { AutocompleteRenderInputParams, TextFieldProps as TFP } from '@mui/material';
|
|
3
2
|
export default function AutocompleteTextField({ TextFieldProps, inputBoxVal, params, showHelp, setInputValue, setCurrentSearch, }: {
|
|
4
3
|
TextFieldProps: TFP;
|
|
@@ -7,4 +6,4 @@ export default function AutocompleteTextField({ TextFieldProps, inputBoxVal, par
|
|
|
7
6
|
params: AutocompleteRenderInputParams;
|
|
8
7
|
setInputValue: (arg: string) => void;
|
|
9
8
|
setCurrentSearch: (arg: string) => void;
|
|
10
|
-
}):
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|