@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,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { getEnv, getSession } from '@jbrowse/core/util';
|
|
3
3
|
import { Button, Paper, Table, TableBody, TableCell, TableContainer, TableHead, TableRow, } from '@mui/material';
|
|
4
4
|
import { getRoot, resolveIdentifier } from 'mobx-state-tree';
|
|
@@ -40,31 +40,18 @@ export default function SearchResultsTable({ searchResults, assemblyName: optAss
|
|
|
40
40
|
session.notify(`${e}`, 'warning');
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
|
-
return (
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
try {
|
|
58
|
-
await handleClick(result.getLocation() || result.getLabel());
|
|
59
|
-
const resultTrackId = result.getTrackId();
|
|
60
|
-
if (resultTrackId) {
|
|
61
|
-
model.showTrack(resultTrackId);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
catch (e) {
|
|
65
|
-
console.error(e);
|
|
66
|
-
session.notifyError(`${e}`, e);
|
|
67
|
-
}
|
|
68
|
-
handleClose();
|
|
69
|
-
}, color: "primary", variant: "contained" }, "Go")))))))));
|
|
43
|
+
return (_jsx(TableContainer, { component: Paper, children: _jsxs(Table, { children: [_jsx(TableHead, { children: _jsxs(TableRow, { children: [_jsx(TableCell, { children: "Name" }), _jsx(TableCell, { align: "right", children: "Location" }), _jsx(TableCell, { align: "right", children: "Track" }), _jsx(TableCell, { align: "right" })] }) }), _jsx(TableBody, { children: searchResults.map(result => (_jsxs(TableRow, { children: [_jsx(TableCell, { component: "th", scope: "row", children: result.getLabel() }), _jsx(TableCell, { align: "right", children: result.getLocation() }), _jsx(TableCell, { align: "right", children: getTrackName(result.getTrackId()) || 'N/A' }), _jsx(TableCell, { align: "right", children: _jsx(Button, { onClick: async () => {
|
|
44
|
+
try {
|
|
45
|
+
await handleClick(result.getLocation() || result.getLabel());
|
|
46
|
+
const resultTrackId = result.getTrackId();
|
|
47
|
+
if (resultTrackId) {
|
|
48
|
+
model.showTrack(resultTrackId);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
catch (e) {
|
|
52
|
+
console.error(e);
|
|
53
|
+
session.notifyError(`${e}`, e);
|
|
54
|
+
}
|
|
55
|
+
handleClose();
|
|
56
|
+
}, color: "primary", variant: "contained", children: "Go" }) })] }, result.getId()))) })] }) }));
|
|
70
57
|
}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
declare const SequenceSearchDialog: ({ model, handleClose, }: {
|
|
3
2
|
model: {
|
|
4
3
|
assemblyNames: string[];
|
|
5
4
|
showTrack: (trackId: string) => void;
|
|
6
5
|
};
|
|
7
6
|
handleClose: () => void;
|
|
8
|
-
}) =>
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
9
8
|
export default SequenceSearchDialog;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
2
3
|
import { Dialog } from '@jbrowse/core/ui';
|
|
3
4
|
import { getSession, isSessionWithAddTracks } from '@jbrowse/core/util';
|
|
4
5
|
import { Button, Checkbox, DialogActions, DialogContent, FormControlLabel, FormGroup, TextField, Typography, } from '@mui/material';
|
|
@@ -23,53 +24,42 @@ const SequenceSearchDialog = observer(function ({ model, handleClose, }) {
|
|
|
23
24
|
catch (e) {
|
|
24
25
|
error = e;
|
|
25
26
|
}
|
|
26
|
-
return (
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
sequenceAdapter: getSnapshot((_a = assemblyManager.get(assemblyName)) === null || _a === void 0 ? void 0 : _a.configuration.sequence.adapter),
|
|
64
|
-
},
|
|
65
|
-
});
|
|
66
|
-
model.showTrack(trackId);
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
handleClose();
|
|
70
|
-
}, variant: "contained", color: "primary" }, "Submit"),
|
|
71
|
-
React.createElement(Button, { onClick: () => {
|
|
72
|
-
handleClose();
|
|
73
|
-
}, variant: "contained", color: "secondary" }, "Close"))));
|
|
27
|
+
return (_jsxs(Dialog, { maxWidth: "xl", open: true, onClose: handleClose, title: "Sequence search", children: [_jsxs(DialogContent, { className: classes.dialogContent, children: [_jsx(Typography, { children: "Supply a sequence to search for. A track will be created with the resulting matches once submitted. You can also supply regex style expressions e.g. AACT(C|T)." }), _jsx(TextField, { value: value, onChange: e => {
|
|
28
|
+
setValue(e.target.value);
|
|
29
|
+
}, helperText: "Sequence search pattern" }), _jsxs(FormGroup, { children: [_jsx(FormControlLabel, { control: _jsx(Checkbox, { checked: searchForward, onChange: event => {
|
|
30
|
+
setSearchForward(event.target.checked);
|
|
31
|
+
} }), label: "Search forward strand" }), _jsx(FormControlLabel, { control: _jsx(Checkbox, { checked: searchReverse, onChange: event => {
|
|
32
|
+
setSearchReverse(event.target.checked);
|
|
33
|
+
} }), label: "Search reverse strand" }), _jsx(FormControlLabel, { control: _jsx(Checkbox, { checked: caseInsensitive, onChange: event => {
|
|
34
|
+
setCaseInsensitive(event.target.checked);
|
|
35
|
+
} }), label: "Case insensitive" })] }), error ? _jsx(Typography, { color: "error", children: `${error}` }) : null] }), _jsxs(DialogActions, { children: [_jsx(Button, { onClick: () => {
|
|
36
|
+
var _a;
|
|
37
|
+
if (value) {
|
|
38
|
+
const trackId = `sequence_search_${+Date.now()}`;
|
|
39
|
+
const session = getSession(model);
|
|
40
|
+
const { assemblyManager } = session;
|
|
41
|
+
const assemblyName = model.assemblyNames[0];
|
|
42
|
+
if (isSessionWithAddTracks(session)) {
|
|
43
|
+
session.addTrackConf({
|
|
44
|
+
trackId,
|
|
45
|
+
name: `Sequence search ${value}`,
|
|
46
|
+
assemblyNames: [assemblyName],
|
|
47
|
+
type: 'FeatureTrack',
|
|
48
|
+
adapter: {
|
|
49
|
+
type: 'SequenceSearchAdapter',
|
|
50
|
+
search: value,
|
|
51
|
+
searchForward,
|
|
52
|
+
searchReverse,
|
|
53
|
+
caseInsensitive,
|
|
54
|
+
sequenceAdapter: getSnapshot((_a = assemblyManager.get(assemblyName)) === null || _a === void 0 ? void 0 : _a.configuration.sequence.adapter),
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
model.showTrack(trackId);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
handleClose();
|
|
61
|
+
}, variant: "contained", color: "primary", children: "Submit" }), _jsx(Button, { onClick: () => {
|
|
62
|
+
handleClose();
|
|
63
|
+
}, variant: "contained", color: "secondary", children: "Close" })] })] }));
|
|
74
64
|
});
|
|
75
65
|
export default SequenceSearchDialog;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
import type { BaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models';
|
|
4
3
|
type LGV = LinearGenomeViewModel;
|
|
5
4
|
declare const TrackContainer: ({ model, track, }: {
|
|
6
5
|
model: LGV;
|
|
7
6
|
track: BaseTrackModel;
|
|
8
|
-
}) =>
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
9
8
|
export default TrackContainer;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useRef } from 'react';
|
|
2
3
|
import { ErrorMessage, ResizeHandle } from '@jbrowse/core/ui';
|
|
3
4
|
import { ErrorBoundary } from '@jbrowse/core/ui/ErrorBoundary';
|
|
4
5
|
import { Paper } from '@mui/material';
|
|
@@ -23,22 +24,18 @@ const TrackContainer = observer(function ({ model, track, }) {
|
|
|
23
24
|
const display = track.displays[0];
|
|
24
25
|
const { draggingTrackId, showTrackOutlines } = model;
|
|
25
26
|
const ref = useRef(null);
|
|
26
|
-
return (
|
|
27
|
+
return (_jsxs(Paper, { ref: ref, className: classes.root, variant: showTrackOutlines ? 'outlined' : undefined, elevation: showTrackOutlines ? undefined : 0, onClick: event => {
|
|
27
28
|
var _a;
|
|
28
29
|
if (event.detail === 2 && !track.displays[0].featureIdUnderMouse) {
|
|
29
30
|
const left = ((_a = ref.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().left) || 0;
|
|
30
31
|
model.zoomTo(model.bpPerPx / 2, event.clientX - left, true);
|
|
31
32
|
}
|
|
32
|
-
} },
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
model.moveTrack(draggingTrackId, track.id);
|
|
40
|
-
}
|
|
41
|
-
} })),
|
|
42
|
-
React.createElement(ResizeHandle, { onDrag: display.resizeHeight, className: classes.resizeHandle })));
|
|
33
|
+
}, children: [_jsx(TrackLabelContainer, { track: track, view: model }), _jsx(ErrorBoundary, { FallbackComponent: e => _jsx(ErrorMessage, { error: e.error }), children: _jsx(TrackRenderingContainer, { model: model, track: track, onDragEnter: () => {
|
|
34
|
+
if (isAlive(display) &&
|
|
35
|
+
draggingTrackId !== undefined &&
|
|
36
|
+
draggingTrackId !== display.id) {
|
|
37
|
+
model.moveTrack(draggingTrackId, track.id);
|
|
38
|
+
}
|
|
39
|
+
} }) }), _jsx(ResizeHandle, { onDrag: display.resizeHeight, className: classes.resizeHandle })] }));
|
|
43
40
|
});
|
|
44
41
|
export default TrackContainer;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { BaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models';
|
|
3
2
|
interface Props {
|
|
4
3
|
track: BaseTrackModel;
|
|
5
4
|
className?: string;
|
|
6
5
|
}
|
|
7
|
-
declare const TrackLabel:
|
|
6
|
+
declare const TrackLabel: import("react").ForwardRefExoticComponent<Props & import("react").RefAttributes<HTMLDivElement>>;
|
|
8
7
|
export default TrackLabel;
|
|
@@ -1,21 +1,15 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from 'react';
|
|
2
3
|
import { getConf } from '@jbrowse/core/configuration';
|
|
3
4
|
import { SanitizedHTML } from '@jbrowse/core/ui';
|
|
4
|
-
import CascadingMenuButton from '@jbrowse/core/ui/CascadingMenuButton';
|
|
5
5
|
import { getContainingView, getSession } from '@jbrowse/core/util';
|
|
6
6
|
import { getTrackName } from '@jbrowse/core/util/tracks';
|
|
7
|
-
import AddIcon from '@mui/icons-material/Add';
|
|
8
7
|
import CloseIcon from '@mui/icons-material/Close';
|
|
9
|
-
import KeyboardArrowDownIcon from '@mui/icons-material/KeyboardArrowDown';
|
|
10
|
-
import KeyboardArrowUpIcon from '@mui/icons-material/KeyboardArrowUp';
|
|
11
|
-
import KeyboardDoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';
|
|
12
|
-
import KeyboardDoubleArrowUpIcon from '@mui/icons-material/KeyboardDoubleArrowUp';
|
|
13
|
-
import MinimizeIcon from '@mui/icons-material/Minimize';
|
|
14
|
-
import MoreVertIcon from '@mui/icons-material/MoreVert';
|
|
15
8
|
import { IconButton, Paper, Typography, alpha } from '@mui/material';
|
|
16
9
|
import { observer } from 'mobx-react';
|
|
17
10
|
import { makeStyles } from 'tss-react/mui';
|
|
18
11
|
import TrackLabelDragHandle from './TrackLabelDragHandle';
|
|
12
|
+
import TrackLabelMenu from './TrackLabelMenu';
|
|
19
13
|
const useStyles = makeStyles()(theme => ({
|
|
20
14
|
root: {
|
|
21
15
|
background: alpha(theme.palette.background.paper, 0.8),
|
|
@@ -30,8 +24,7 @@ const useStyles = makeStyles()(theme => ({
|
|
|
30
24
|
padding: theme.spacing(1),
|
|
31
25
|
},
|
|
32
26
|
}));
|
|
33
|
-
const TrackLabel = observer(
|
|
34
|
-
var _a;
|
|
27
|
+
const TrackLabel = observer(forwardRef(function TrackLabel2({ track, className }, ref) {
|
|
35
28
|
const { classes, cx } = useStyles();
|
|
36
29
|
const view = getContainingView(track);
|
|
37
30
|
const session = getSession(track);
|
|
@@ -39,73 +32,12 @@ const TrackLabel = observer(React.forwardRef(function TrackLabel2({ track, class
|
|
|
39
32
|
const minimized = track.minimized;
|
|
40
33
|
const trackId = getConf(track, 'trackId');
|
|
41
34
|
const trackName = getTrackName(trackConf, session);
|
|
42
|
-
|
|
43
|
-
{
|
|
44
|
-
label: 'Track order',
|
|
45
|
-
type: 'subMenu',
|
|
46
|
-
priority: 2000,
|
|
47
|
-
subMenu: [
|
|
48
|
-
{
|
|
49
|
-
label: minimized ? 'Restore track' : 'Minimize track',
|
|
50
|
-
icon: minimized ? AddIcon : MinimizeIcon,
|
|
51
|
-
onClick: () => {
|
|
52
|
-
track.setMinimized(!minimized);
|
|
53
|
-
},
|
|
54
|
-
},
|
|
55
|
-
...(view.tracks.length > 2
|
|
56
|
-
? [
|
|
57
|
-
{
|
|
58
|
-
label: 'Move track to top',
|
|
59
|
-
icon: KeyboardDoubleArrowUpIcon,
|
|
60
|
-
onClick: () => {
|
|
61
|
-
view.moveTrackToTop(track.id);
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
|
-
]
|
|
65
|
-
: []),
|
|
66
|
-
{
|
|
67
|
-
label: 'Move track up',
|
|
68
|
-
icon: KeyboardArrowUpIcon,
|
|
69
|
-
onClick: () => {
|
|
70
|
-
view.moveTrackUp(track.id);
|
|
71
|
-
},
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
label: 'Move track down',
|
|
75
|
-
icon: KeyboardArrowDownIcon,
|
|
76
|
-
onClick: () => {
|
|
77
|
-
view.moveTrackDown(track.id);
|
|
78
|
-
},
|
|
79
|
-
},
|
|
80
|
-
...(view.tracks.length > 2
|
|
81
|
-
? [
|
|
82
|
-
{
|
|
83
|
-
label: 'Move track to bottom',
|
|
84
|
-
icon: KeyboardDoubleArrowDownIcon,
|
|
85
|
-
onClick: () => {
|
|
86
|
-
view.moveTrackToBottom(track.id);
|
|
87
|
-
},
|
|
88
|
-
},
|
|
89
|
-
]
|
|
90
|
-
: []),
|
|
91
|
-
],
|
|
92
|
-
},
|
|
93
|
-
...(((_a = session.getTrackActionMenuItems) === null || _a === void 0 ? void 0 : _a.call(session, trackConf)) || []),
|
|
94
|
-
...track.trackMenuItems(),
|
|
95
|
-
].sort((a, b) => ((b === null || b === void 0 ? void 0 : b.priority) || 0) - ((a === null || a === void 0 ? void 0 : a.priority) || 0));
|
|
96
|
-
return (React.createElement(Paper, { ref: ref, className: cx(className, classes.root), onClick: event => {
|
|
35
|
+
return (_jsxs(Paper, { ref: ref, className: cx(className, classes.root), onClick: event => {
|
|
97
36
|
event.stopPropagation();
|
|
98
|
-
} },
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
event.stopPropagation();
|
|
104
|
-
} },
|
|
105
|
-
React.createElement(SanitizedHTML, { html: [trackName, minimized ? '(minimized)' : '']
|
|
106
|
-
.filter(f => !!f)
|
|
107
|
-
.join(' ') })),
|
|
108
|
-
React.createElement(CascadingMenuButton, { menuItems: items, "data-testid": "track_menu_icon" },
|
|
109
|
-
React.createElement(MoreVertIcon, { fontSize: "small" }))));
|
|
37
|
+
}, children: [_jsx(TrackLabelDragHandle, { track: track, trackId: trackId, view: view }), _jsx(IconButton, { onClick: () => view.hideTrack(trackId), className: classes.iconButton, title: "close this track", children: _jsx(CloseIcon, { fontSize: "small" }) }), _jsx(Typography, { variant: "body1", component: "span", className: classes.trackName, onMouseDown: event => {
|
|
38
|
+
event.stopPropagation();
|
|
39
|
+
}, children: _jsx(SanitizedHTML, { html: [trackName, minimized ? '(minimized)' : '']
|
|
40
|
+
.filter(f => !!f)
|
|
41
|
+
.join(' ') }) }), _jsx(TrackLabelMenu, { track: track })] }));
|
|
110
42
|
}));
|
|
111
43
|
export default TrackLabel;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
import type { BaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models';
|
|
4
3
|
type LGV = LinearGenomeViewModel;
|
|
5
4
|
declare const TrackLabelContainer: ({ track, view, }: {
|
|
6
5
|
track: BaseTrackModel;
|
|
7
6
|
view: LGV;
|
|
8
|
-
}) =>
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
9
8
|
export default TrackLabelContainer;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { observer } from 'mobx-react';
|
|
3
3
|
import { makeStyles } from 'tss-react/mui';
|
|
4
4
|
import TrackLabel from './TrackLabel';
|
|
@@ -21,6 +21,6 @@ const TrackLabelContainer = observer(function ({ track, view, }) {
|
|
|
21
21
|
const labelStyle = view.trackLabelsSetting !== 'overlapping' || display.prefersOffset
|
|
22
22
|
? trackLabelOffset
|
|
23
23
|
: trackLabelOverlap;
|
|
24
|
-
return view.trackLabelsSetting !== 'hidden' ? (
|
|
24
|
+
return view.trackLabelsSetting !== 'hidden' ? (_jsx(TrackLabel, { track: track, className: cx(trackLabel, labelStyle) })) : null;
|
|
25
25
|
});
|
|
26
26
|
export default TrackLabelContainer;
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
import type { BaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models';
|
|
4
3
|
declare function TrackLabelDragHandle({ trackId, view, track, }: {
|
|
5
4
|
trackId: string;
|
|
6
5
|
track: BaseTrackModel;
|
|
7
6
|
view: LinearGenomeViewModel;
|
|
8
|
-
}):
|
|
7
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
9
8
|
export default TrackLabelDragHandle;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import DragIcon from '@mui/icons-material/DragIndicator';
|
|
3
3
|
import { makeStyles } from 'tss-react/mui';
|
|
4
4
|
const useStyles = makeStyles()({
|
|
@@ -13,7 +13,7 @@ const useStyles = makeStyles()({
|
|
|
13
13
|
});
|
|
14
14
|
function TrackLabelDragHandle({ trackId, view, track, }) {
|
|
15
15
|
const { classes } = useStyles();
|
|
16
|
-
return (
|
|
16
|
+
return (_jsx("span", { draggable: true, className: classes.dragHandle, onDragStart: event => {
|
|
17
17
|
const target = event.currentTarget;
|
|
18
18
|
if (target.parentNode) {
|
|
19
19
|
const parent = target.parentNode;
|
|
@@ -22,7 +22,6 @@ function TrackLabelDragHandle({ trackId, view, track, }) {
|
|
|
22
22
|
}
|
|
23
23
|
}, onDragEnd: () => {
|
|
24
24
|
view.setDraggingTrackId(undefined);
|
|
25
|
-
}, "data-testid": `dragHandle-${view.id}-${trackId}
|
|
26
|
-
React.createElement(DragIcon, { className: classes.dragHandleIcon, fontSize: "small" })));
|
|
25
|
+
}, "data-testid": `dragHandle-${view.id}-${trackId}`, children: _jsx(DragIcon, { className: classes.dragHandleIcon, fontSize: "small" }) }));
|
|
27
26
|
}
|
|
28
27
|
export default TrackLabelDragHandle;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import CascadingMenuButton from '@jbrowse/core/ui/CascadingMenuButton';
|
|
3
|
+
import { getContainingView, getSession } from '@jbrowse/core/util';
|
|
4
|
+
import AddIcon from '@mui/icons-material/Add';
|
|
5
|
+
import KeyboardArrowDownIcon from '@mui/icons-material/KeyboardArrowDown';
|
|
6
|
+
import KeyboardArrowUpIcon from '@mui/icons-material/KeyboardArrowUp';
|
|
7
|
+
import KeyboardDoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown';
|
|
8
|
+
import KeyboardDoubleArrowUpIcon from '@mui/icons-material/KeyboardDoubleArrowUp';
|
|
9
|
+
import MinimizeIcon from '@mui/icons-material/Minimize';
|
|
10
|
+
import MoreVertIcon from '@mui/icons-material/MoreVert';
|
|
11
|
+
import { observer } from 'mobx-react';
|
|
12
|
+
const TrackLabelMenu = observer(function ({ track, }) {
|
|
13
|
+
var _a;
|
|
14
|
+
const view = getContainingView(track);
|
|
15
|
+
const session = getSession(track);
|
|
16
|
+
const trackConf = track.configuration;
|
|
17
|
+
const minimized = track.minimized;
|
|
18
|
+
const items = [
|
|
19
|
+
{
|
|
20
|
+
label: 'Track order',
|
|
21
|
+
type: 'subMenu',
|
|
22
|
+
priority: 2000,
|
|
23
|
+
subMenu: [
|
|
24
|
+
{
|
|
25
|
+
label: minimized ? 'Restore track' : 'Minimize track',
|
|
26
|
+
icon: minimized ? AddIcon : MinimizeIcon,
|
|
27
|
+
onClick: () => {
|
|
28
|
+
track.setMinimized(!minimized);
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
...(view.tracks.length > 2
|
|
32
|
+
? [
|
|
33
|
+
{
|
|
34
|
+
label: 'Move track to top',
|
|
35
|
+
icon: KeyboardDoubleArrowUpIcon,
|
|
36
|
+
onClick: () => {
|
|
37
|
+
view.moveTrackToTop(track.id);
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
]
|
|
41
|
+
: []),
|
|
42
|
+
{
|
|
43
|
+
label: 'Move track up',
|
|
44
|
+
icon: KeyboardArrowUpIcon,
|
|
45
|
+
onClick: () => {
|
|
46
|
+
view.moveTrackUp(track.id);
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
label: 'Move track down',
|
|
51
|
+
icon: KeyboardArrowDownIcon,
|
|
52
|
+
onClick: () => {
|
|
53
|
+
view.moveTrackDown(track.id);
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
...(view.tracks.length > 2
|
|
57
|
+
? [
|
|
58
|
+
{
|
|
59
|
+
label: 'Move track to bottom',
|
|
60
|
+
icon: KeyboardDoubleArrowDownIcon,
|
|
61
|
+
onClick: () => {
|
|
62
|
+
view.moveTrackToBottom(track.id);
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
]
|
|
66
|
+
: []),
|
|
67
|
+
],
|
|
68
|
+
},
|
|
69
|
+
...(((_a = session.getTrackActionMenuItems) === null || _a === void 0 ? void 0 : _a.call(session, trackConf)) || []),
|
|
70
|
+
...track.trackMenuItems(),
|
|
71
|
+
].sort((a, b) => ((b === null || b === void 0 ? void 0 : b.priority) || 0) - ((a === null || a === void 0 ? void 0 : a.priority) || 0));
|
|
72
|
+
return (_jsx(CascadingMenuButton, { menuItems: items, "data-testid": "track_menu_icon", children: _jsx(MoreVertIcon, { fontSize: "small" }) }));
|
|
73
|
+
});
|
|
74
|
+
export default TrackLabelMenu;
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
import type { BaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models';
|
|
4
3
|
type LGV = LinearGenomeViewModel;
|
|
@@ -6,5 +5,5 @@ declare const TrackRenderingContainer: ({ model, track, onDragEnter, }: {
|
|
|
6
5
|
model: LGV;
|
|
7
6
|
track: BaseTrackModel;
|
|
8
7
|
onDragEnter: () => void;
|
|
9
|
-
}) =>
|
|
8
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
10
9
|
export default TrackRenderingContainer;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Suspense, useEffect, useRef } from 'react';
|
|
2
3
|
import { getConf } from '@jbrowse/core/configuration';
|
|
3
4
|
import { LoadingEllipses } from '@jbrowse/core/ui';
|
|
4
5
|
import { observer } from 'mobx-react';
|
|
@@ -35,19 +36,14 @@ const TrackRenderingContainer = observer(function ({ model, track, onDragEnter,
|
|
|
35
36
|
delete trackRefs[trackId];
|
|
36
37
|
};
|
|
37
38
|
}, [trackRefs, trackId]);
|
|
38
|
-
return (
|
|
39
|
+
return (_jsx("div", { className: classes.trackRenderingContainer, style: {
|
|
39
40
|
height: minimized ? 20 : height,
|
|
40
|
-
}, onScroll: evt => display.setScrollTop(evt.currentTarget.scrollTop), onDragEnter: onDragEnter, "data-testid": `trackRenderingContainer-${id}-${trackId}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
position: 'absolute',
|
|
48
|
-
left: 0,
|
|
49
|
-
top: display.height - 20,
|
|
50
|
-
} },
|
|
51
|
-
React.createElement(DisplayBlurb, { model: display }))) : null)) : null));
|
|
41
|
+
}, onScroll: evt => display.setScrollTop(evt.currentTarget.scrollTop), onDragEnter: onDragEnter, "data-testid": `trackRenderingContainer-${id}-${trackId}`, children: !minimized ? (_jsxs(_Fragment, { children: [_jsx("div", { ref: ref, className: classes.renderingComponentContainer, style: {
|
|
42
|
+
transform: scaleFactor !== 1 ? `scaleX(${scaleFactor})` : undefined,
|
|
43
|
+
}, children: _jsx(Suspense, { fallback: _jsx(LoadingEllipses, {}), children: _jsx(RenderingComponent, { model: display, onHorizontalScroll: model.horizontalScroll }) }) }), DisplayBlurb ? (_jsx("div", { style: {
|
|
44
|
+
position: 'absolute',
|
|
45
|
+
left: 0,
|
|
46
|
+
top: display.height - 20,
|
|
47
|
+
}, children: _jsx(DisplayBlurb, { model: display }) })) : null] })) : null }));
|
|
52
48
|
});
|
|
53
49
|
export default TrackRenderingContainer;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
type LGV = LinearGenomeViewModel;
|
|
4
3
|
declare const TracksContainer: ({ children, model, }: {
|
|
5
4
|
children: React.ReactNode;
|
|
6
5
|
model: LGV;
|
|
7
|
-
}) =>
|
|
6
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
8
7
|
export default TracksContainer;
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Suspense, lazy, useRef } from 'react';
|
|
2
3
|
import { Menu } from '@jbrowse/core/ui';
|
|
3
4
|
import { getEnv } from '@jbrowse/core/util';
|
|
4
5
|
import { observer } from 'mobx-react';
|
|
5
6
|
import { makeStyles } from 'tss-react/mui';
|
|
6
|
-
import CenterLine from './CenterLine';
|
|
7
7
|
import Gridlines from './Gridlines';
|
|
8
|
-
import HighlightGroup from './Highlight';
|
|
9
8
|
import Rubberband from './Rubberband';
|
|
10
|
-
import RubberbandSpan from './RubberbandSpan';
|
|
11
9
|
import Scalebar from './Scalebar';
|
|
12
10
|
import VerticalGuide from './VerticalGuide';
|
|
13
11
|
import { SCALE_BAR_HEIGHT } from '../consts';
|
|
14
12
|
import { useRangeSelect } from './useRangeSelect';
|
|
15
13
|
import { useSideScroll } from './useSideScroll';
|
|
16
14
|
import { useWheelScroll } from './useWheelScroll';
|
|
15
|
+
const CenterLine = lazy(() => import('./CenterLine'));
|
|
16
|
+
const Highlight = lazy(() => import('./Highlight'));
|
|
17
|
+
const RubberbandSpan = lazy(() => import('./RubberbandSpan'));
|
|
17
18
|
const useStyles = makeStyles()({
|
|
18
19
|
tracksContainer: {
|
|
19
20
|
position: 'relative',
|
|
@@ -29,23 +30,18 @@ const TracksContainer = observer(function TracksContainer({ children, model, })
|
|
|
29
30
|
const { guideX, rubberbandOn, leftBpOffset, rightBpOffset, numOfBpSelected, width, left, anchorPosition, open, handleMenuItemClick, handleClose, mouseMove, mouseDown: mouseDown2, } = useRangeSelect(ref, model, true);
|
|
30
31
|
useWheelScroll(ref, model);
|
|
31
32
|
const additional = pluginManager.evaluateExtensionPoint('LinearGenomeView-TracksContainerComponent', undefined, { model });
|
|
32
|
-
return (
|
|
33
|
+
return (_jsxs("div", { ref: ref, "data-testid": "trackContainer", className: classes.tracksContainer, onMouseDown: event => {
|
|
33
34
|
mouseDown1(event);
|
|
34
35
|
mouseDown2(event);
|
|
35
|
-
}, onMouseMove: mouseMove, onMouseUp: mouseUp },
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
boxSizing: 'border-box',
|
|
46
|
-
} }) }),
|
|
47
|
-
React.createElement(HighlightGroup, { model: model }),
|
|
48
|
-
additional,
|
|
49
|
-
children));
|
|
36
|
+
}, onMouseMove: mouseMove, onMouseUp: mouseUp, children: [showGridlines ? _jsx(Gridlines, { model: model }) : null, _jsx(Suspense, { fallback: null, children: showCenterLine ? _jsx(CenterLine, { model: model }) : null }), guideX !== undefined ? (_jsx(VerticalGuide, { model: model, coordX: guideX })) : rubberbandOn ? (_jsx(Suspense, { fallback: null, children: _jsx(RubberbandSpan, { leftBpOffset: leftBpOffset, rightBpOffset: rightBpOffset, numOfBpSelected: numOfBpSelected, width: width, left: left }) })) : null, anchorPosition ? (_jsx(Menu, { anchorReference: "anchorPosition", anchorPosition: {
|
|
37
|
+
left: anchorPosition.clientX,
|
|
38
|
+
top: anchorPosition.clientY,
|
|
39
|
+
}, onMenuItemClick: handleMenuItemClick, open: open, onClose: handleClose, menuItems: model.rubberBandMenuItems() })) : null, _jsx(Rubberband, { model: model, ControlComponent: _jsx(Scalebar, { model: model, style: {
|
|
40
|
+
height: SCALE_BAR_HEIGHT,
|
|
41
|
+
boxSizing: 'border-box',
|
|
42
|
+
} }) }), _jsx(HighlightGroup, { model: model }), additional, children] }));
|
|
43
|
+
});
|
|
44
|
+
const HighlightGroup = observer(function HighlightGroup({ model, }) {
|
|
45
|
+
return model.highlight.length ? (_jsx(Suspense, { fallback: null, children: model.highlight.map((highlight, idx) => (_jsx(Highlight, { model: model, highlight: highlight }, `${JSON.stringify(highlight)}-${idx}`))) })) : null;
|
|
50
46
|
});
|
|
51
47
|
export default TracksContainer;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { LinearGenomeViewModel } from '..';
|
|
3
2
|
type LGV = LinearGenomeViewModel;
|
|
4
3
|
declare const VerticalGuide: ({ model, coordX, }: {
|
|
5
4
|
model: LGV;
|
|
6
5
|
coordX: number;
|
|
7
|
-
}) =>
|
|
6
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
8
7
|
export default VerticalGuide;
|