@jbrowse/plugin-linear-genome-view 3.6.5 → 4.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/esm/BaseLinearDisplay/SVGLegend.d.ts +6 -0
- package/esm/BaseLinearDisplay/SVGLegend.js +17 -0
- package/esm/BaseLinearDisplay/calculateSvgLegendWidth.d.ts +2 -0
- package/esm/BaseLinearDisplay/calculateSvgLegendWidth.js +11 -0
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +3 -3
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js +13 -24
- package/esm/BaseLinearDisplay/components/Block.js +2 -2
- package/esm/BaseLinearDisplay/components/BlockErrorMessage.js +2 -2
- package/esm/BaseLinearDisplay/components/BlockMsg.js +11 -2
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/CollapseIntronsDialog.d.ts +9 -0
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/CollapseIntronsDialog.js +42 -0
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/TranscriptTable.d.ts +11 -0
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/TranscriptTable.js +40 -0
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/util.d.ts +19 -0
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/util.js +45 -0
- package/esm/BaseLinearDisplay/components/FloatingLabels.d.ts +5 -0
- package/esm/BaseLinearDisplay/components/FloatingLabels.js +89 -0
- package/esm/BaseLinearDisplay/components/FloatingLegend.d.ts +8 -0
- package/esm/BaseLinearDisplay/components/FloatingLegend.js +43 -0
- package/esm/BaseLinearDisplay/components/LinearBlocks.d.ts +1 -5
- package/esm/BaseLinearDisplay/components/LinearBlocks.js +5 -42
- package/esm/BaseLinearDisplay/components/LoadingOverlay.d.ts +4 -0
- package/esm/BaseLinearDisplay/components/LoadingOverlay.js +49 -0
- package/esm/BaseLinearDisplay/components/MaxHeightReachedIndicator.d.ts +4 -0
- package/esm/BaseLinearDisplay/components/MaxHeightReachedIndicator.js +26 -0
- package/esm/BaseLinearDisplay/components/MenuPage.d.ts +8 -0
- package/esm/BaseLinearDisplay/components/MenuPage.js +24 -0
- package/esm/BaseLinearDisplay/components/NonBlockCanvasDisplayComponent.d.ts +19 -0
- package/esm/BaseLinearDisplay/components/NonBlockCanvasDisplayComponent.js +48 -0
- package/esm/BaseLinearDisplay/components/RenderedBlocks.d.ts +12 -0
- package/esm/BaseLinearDisplay/components/RenderedBlocks.js +22 -0
- package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.d.ts +4 -4
- package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +5 -8
- package/esm/BaseLinearDisplay/components/TooLargeMessage.js +3 -3
- package/esm/BaseLinearDisplay/components/Tooltip.d.ts +2 -0
- package/esm/BaseLinearDisplay/components/Tooltip.js +10 -7
- package/esm/BaseLinearDisplay/components/types.d.ts +1 -0
- package/esm/BaseLinearDisplay/components/types.js +1 -0
- package/esm/BaseLinearDisplay/components/util.d.ts +21 -0
- package/esm/BaseLinearDisplay/components/util.js +116 -0
- package/esm/BaseLinearDisplay/index.d.ts +17 -8
- package/esm/BaseLinearDisplay/index.js +13 -6
- package/esm/BaseLinearDisplay/model.d.ts +1177 -0
- package/esm/BaseLinearDisplay/model.js +424 -0
- package/esm/BaseLinearDisplay/models/FeatureDensityMixin.d.ts +5 -5
- package/esm/BaseLinearDisplay/models/FeatureDensityMixin.js +11 -14
- package/esm/BaseLinearDisplay/models/NonBlockCanvasDisplayMixin.d.ts +21 -0
- package/esm/BaseLinearDisplay/models/NonBlockCanvasDisplayMixin.js +46 -0
- package/esm/BaseLinearDisplay/models/TrackHeightMixin.d.ts +3 -3
- package/esm/BaseLinearDisplay/models/TrackHeightMixin.js +2 -3
- package/esm/BaseLinearDisplay/models/autorunFeatureDensityStats.d.ts +1 -1
- package/esm/BaseLinearDisplay/models/autorunFeatureDensityStats.js +2 -3
- package/esm/BaseLinearDisplay/models/calculateLabelPositions.d.ts +24 -0
- package/esm/BaseLinearDisplay/models/calculateLabelPositions.js +60 -0
- package/esm/BaseLinearDisplay/models/configSchema.d.ts +2 -2
- package/esm/BaseLinearDisplay/models/configSchema.js +3 -3
- package/esm/BaseLinearDisplay/models/renderSvg.d.ts +3 -7
- package/esm/BaseLinearDisplay/models/renderSvg.js +22 -11
- package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.d.ts +37 -19
- package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js +151 -135
- package/esm/BaseLinearDisplay/models/util.d.ts +4 -4
- package/esm/BaseLinearDisplay/models/util.js +16 -13
- package/esm/BaseLinearDisplay/renderSvg.d.ts +3 -0
- package/esm/BaseLinearDisplay/renderSvg.js +59 -0
- package/esm/BaseLinearDisplay/types.d.ts +47 -0
- package/esm/BaseLinearDisplay/types.js +3 -0
- package/esm/BaseLinearDisplay/util.d.ts +15 -0
- package/esm/BaseLinearDisplay/util.js +61 -0
- package/esm/BasicTrack/configSchema.d.ts +16 -11
- package/esm/BasicTrack/index.js +1 -1
- package/esm/FeatureTrack/configSchema.d.ts +16 -11
- package/esm/FeatureTrack/index.js +1 -1
- package/esm/LaunchLinearGenomeView/index.js +12 -62
- package/esm/LinearBareDisplay/configSchema.d.ts +4 -4
- package/esm/LinearBareDisplay/configSchema.js +1 -1
- package/esm/LinearBareDisplay/index.d.ts +2 -2
- package/esm/LinearBareDisplay/index.js +5 -5
- package/esm/LinearBareDisplay/model.d.ts +959 -92
- package/esm/LinearBareDisplay/model.js +3 -6
- package/esm/LinearBasicDisplay/components/LinearBasicDisplayComponent.d.ts +5 -0
- package/esm/LinearBasicDisplay/components/LinearBasicDisplayComponent.js +9 -0
- package/esm/LinearBasicDisplay/configSchema.d.ts +4 -4
- package/esm/LinearBasicDisplay/configSchema.js +1 -1
- package/esm/LinearBasicDisplay/index.d.ts +2 -2
- package/esm/LinearBasicDisplay/index.js +6 -6
- package/esm/LinearBasicDisplay/model.d.ts +1134 -122
- package/esm/LinearBasicDisplay/model.js +116 -116
- package/esm/{LinearBasicDisplay → LinearFeatureDisplay}/components/AddFiltersDialog.js +2 -2
- package/esm/{LinearBasicDisplay → LinearFeatureDisplay}/components/SetMaxHeightDialog.js +3 -3
- package/{dist/LinearBasicDisplay → esm/LinearFeatureDisplay}/configSchema.d.ts +4 -4
- package/esm/LinearFeatureDisplay/configSchema.js +11 -0
- package/esm/LinearFeatureDisplay/index.d.ts +3 -0
- package/esm/LinearFeatureDisplay/index.js +2 -0
- package/esm/LinearFeatureDisplay/model.d.ts +1415 -0
- package/esm/LinearFeatureDisplay/model.js +265 -0
- package/esm/LinearGenomeView/SVGErrorBox.d.ts +5 -0
- package/esm/LinearGenomeView/SVGErrorBox.js +4 -0
- package/esm/LinearGenomeView/afterAttach.d.ts +5 -0
- package/esm/LinearGenomeView/afterAttach.js +95 -0
- package/esm/LinearGenomeView/components/CenterLine.js +6 -4
- package/esm/LinearGenomeView/components/Cytobands.js +4 -4
- package/esm/LinearGenomeView/components/ExportSvgDialog.d.ts +1 -1
- package/esm/LinearGenomeView/components/ExportSvgDialog.js +5 -1
- package/esm/LinearGenomeView/components/GetSequenceDialog.d.ts +8 -2
- package/esm/LinearGenomeView/components/GetSequenceDialog.js +13 -16
- package/esm/LinearGenomeView/components/Gridlines.js +18 -15
- package/esm/LinearGenomeView/components/Header.js +9 -9
- package/esm/LinearGenomeView/components/HeaderPanControls.js +2 -2
- package/esm/LinearGenomeView/components/HeaderRegionWidth.js +4 -5
- package/esm/LinearGenomeView/components/HeaderTrackSelectorButton.js +2 -2
- package/esm/LinearGenomeView/components/HeaderZoomControls.js +3 -3
- package/esm/LinearGenomeView/components/Highlight.d.ts +1 -1
- package/esm/LinearGenomeView/components/Highlight.js +6 -6
- package/esm/LinearGenomeView/components/ImportForm.d.ts +1 -1
- package/esm/LinearGenomeView/components/ImportForm.js +14 -12
- package/esm/LinearGenomeView/components/ImportFormRefNameAutocomplete.js +3 -3
- package/esm/LinearGenomeView/components/LinearGenomeView.js +7 -7
- package/esm/LinearGenomeView/components/LinearGenomeViewContainer.js +7 -8
- package/esm/LinearGenomeView/components/MiniControls.js +6 -6
- package/esm/LinearGenomeView/components/NoTracksActiveButton.js +2 -2
- package/esm/LinearGenomeView/components/OverviewHighlight.d.ts +1 -1
- package/esm/LinearGenomeView/components/OverviewHighlight.js +5 -5
- package/esm/LinearGenomeView/components/OverviewRubberband.js +4 -4
- package/esm/LinearGenomeView/components/OverviewRubberbandHoverTooltip.js +9 -5
- package/esm/LinearGenomeView/components/OverviewScalebar.js +36 -28
- package/esm/LinearGenomeView/components/OverviewScalebarPolygon.js +5 -5
- package/esm/LinearGenomeView/components/OverviewScalebarTickLabels.js +7 -7
- package/esm/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.js +1 -1
- package/esm/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +1 -1
- package/esm/LinearGenomeView/components/RefNameAutocomplete/index.js +10 -10
- package/esm/LinearGenomeView/components/RegionWidthEditorDialog.d.ts +1 -1
- package/esm/LinearGenomeView/components/RegionWidthEditorDialog.js +6 -4
- package/esm/LinearGenomeView/components/Rubberband.js +9 -7
- package/esm/LinearGenomeView/components/RubberbandSpan.js +4 -5
- package/esm/LinearGenomeView/components/Scalebar.js +8 -10
- package/esm/LinearGenomeView/components/ScalebarCoordinateLabels.d.ts +1 -1
- package/esm/LinearGenomeView/components/ScalebarCoordinateLabels.js +50 -17
- package/esm/LinearGenomeView/components/ScalebarRefNameLabels.d.ts +1 -1
- package/esm/LinearGenomeView/components/ScalebarRefNameLabels.js +13 -11
- package/esm/LinearGenomeView/components/SearchBox.d.ts +1 -1
- package/esm/LinearGenomeView/components/SearchBox.js +8 -9
- package/esm/LinearGenomeView/components/SearchResultsDialog.d.ts +1 -1
- package/esm/LinearGenomeView/components/SearchResultsDialog.js +2 -2
- package/esm/LinearGenomeView/components/SearchResultsTable.d.ts +1 -1
- package/esm/LinearGenomeView/components/SearchResultsTable.js +4 -6
- package/esm/LinearGenomeView/components/SequenceSearchDialog.js +6 -6
- package/esm/LinearGenomeView/components/TrackContainer.js +32 -20
- package/esm/LinearGenomeView/components/TrackLabel.js +10 -11
- package/esm/LinearGenomeView/components/TrackLabelContainer.js +7 -8
- package/esm/LinearGenomeView/components/TrackLabelDragHandle.js +1 -1
- package/esm/LinearGenomeView/components/TrackLabelMenu.js +80 -68
- package/esm/LinearGenomeView/components/TrackRenderingContainer.d.ts +1 -2
- package/esm/LinearGenomeView/components/TrackRenderingContainer.js +5 -5
- package/esm/LinearGenomeView/components/TracksContainer.js +18 -15
- package/esm/LinearGenomeView/components/VerticalGuide.js +5 -3
- package/esm/LinearGenomeView/components/fetchSequence.d.ts +7 -2
- package/esm/LinearGenomeView/components/useRangeSelect.d.ts +27 -2
- package/esm/LinearGenomeView/components/useRangeSelect.js +26 -20
- package/esm/LinearGenomeView/components/useWheelScroll.js +22 -12
- package/esm/LinearGenomeView/components/util.d.ts +2 -13
- package/esm/LinearGenomeView/components/util.js +12 -31
- package/esm/LinearGenomeView/index.d.ts +1 -1
- package/esm/LinearGenomeView/index.js +3 -3
- package/esm/LinearGenomeView/keyboardHandler.d.ts +2 -0
- package/esm/LinearGenomeView/keyboardHandler.js +29 -0
- package/esm/LinearGenomeView/menuItems.d.ts +7 -0
- package/esm/LinearGenomeView/menuItems.js +299 -0
- package/esm/LinearGenomeView/model.d.ts +92 -89
- package/esm/LinearGenomeView/model.js +166 -414
- package/esm/LinearGenomeView/svgExportUtil.d.ts +9 -0
- package/esm/LinearGenomeView/svgExportUtil.js +6 -0
- package/{dist/LinearGenomeView/svgcomponents/SVGRegionSeparators.d.ts → esm/LinearGenomeView/svgcomponents/SVGGridlines.d.ts} +2 -2
- package/esm/LinearGenomeView/svgcomponents/SVGGridlines.js +20 -0
- package/esm/LinearGenomeView/svgcomponents/SVGHeader.js +5 -5
- package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.d.ts +4 -3
- package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +24 -12
- package/esm/LinearGenomeView/svgcomponents/SVGRuler.js +13 -5
- package/esm/LinearGenomeView/svgcomponents/SVGTracks.js +2 -2
- package/esm/LinearGenomeView/types.d.ts +5 -1
- package/esm/LinearGenomeView/util.d.ts +2 -2
- package/esm/LinearGenomeView/util.js +8 -6
- package/esm/index.d.ts +975 -94
- package/esm/index.js +37 -38
- package/esm/searchUtils.d.ts +1 -1
- package/esm/searchUtils.js +6 -4
- package/package.json +28 -33
- package/dist/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +0 -8
- package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js +0 -72
- package/dist/BaseLinearDisplay/components/Block.d.ts +0 -14
- package/dist/BaseLinearDisplay/components/Block.js +0 -50
- package/dist/BaseLinearDisplay/components/BlockErrorMessage.d.ts +0 -7
- package/dist/BaseLinearDisplay/components/BlockErrorMessage.js +0 -27
- package/dist/BaseLinearDisplay/components/BlockLoadingMessage.d.ts +0 -6
- package/dist/BaseLinearDisplay/components/BlockLoadingMessage.js +0 -26
- package/dist/BaseLinearDisplay/components/BlockMsg.d.ts +0 -6
- package/dist/BaseLinearDisplay/components/BlockMsg.js +0 -20
- package/dist/BaseLinearDisplay/components/LinearBlocks.d.ts +0 -9
- package/dist/BaseLinearDisplay/components/LinearBlocks.js +0 -61
- package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.d.ts +0 -11
- package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +0 -59
- package/dist/BaseLinearDisplay/components/TooLargeMessage.d.ts +0 -10
- package/dist/BaseLinearDisplay/components/TooLargeMessage.js +0 -25
- package/dist/BaseLinearDisplay/components/Tooltip.d.ts +0 -11
- package/dist/BaseLinearDisplay/components/Tooltip.js +0 -24
- package/dist/BaseLinearDisplay/index.d.ts +0 -8
- package/dist/BaseLinearDisplay/index.js +0 -20
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +0 -311
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js +0 -325
- package/dist/BaseLinearDisplay/models/FeatureDensityMixin.d.ts +0 -32
- package/dist/BaseLinearDisplay/models/FeatureDensityMixin.js +0 -122
- package/dist/BaseLinearDisplay/models/TrackHeightMixin.d.ts +0 -11
- package/dist/BaseLinearDisplay/models/TrackHeightMixin.js +0 -35
- package/dist/BaseLinearDisplay/models/autorunFeatureDensityStats.d.ts +0 -2
- package/dist/BaseLinearDisplay/models/autorunFeatureDensityStats.js +0 -33
- package/dist/BaseLinearDisplay/models/configSchema.d.ts +0 -29
- package/dist/BaseLinearDisplay/models/configSchema.js +0 -35
- package/dist/BaseLinearDisplay/models/renderSvg.d.ts +0 -7
- package/dist/BaseLinearDisplay/models/renderSvg.js +0 -80
- package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.d.ts +0 -78
- package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js +0 -229
- package/dist/BaseLinearDisplay/models/util.d.ts +0 -22
- package/dist/BaseLinearDisplay/models/util.js +0 -45
- package/dist/BasicTrack/configSchema.d.ts +0 -80
- package/dist/BasicTrack/configSchema.js +0 -10
- package/dist/BasicTrack/index.d.ts +0 -2
- package/dist/BasicTrack/index.js +0 -18
- package/dist/FeatureTrack/configSchema.d.ts +0 -80
- package/dist/FeatureTrack/configSchema.js +0 -10
- package/dist/FeatureTrack/index.d.ts +0 -2
- package/dist/FeatureTrack/index.js +0 -19
- package/dist/LaunchLinearGenomeView/index.d.ts +0 -2
- package/dist/LaunchLinearGenomeView/index.js +0 -70
- package/dist/LinearBareDisplay/configSchema.d.ts +0 -32
- package/dist/LinearBareDisplay/configSchema.js +0 -13
- package/dist/LinearBareDisplay/index.d.ts +0 -4
- package/dist/LinearBareDisplay/index.js +0 -26
- package/dist/LinearBareDisplay/model.d.ts +0 -309
- package/dist/LinearBareDisplay/model.js +0 -38
- package/dist/LinearBasicDisplay/components/AddFiltersDialog.js +0 -61
- package/dist/LinearBasicDisplay/components/SetMaxHeightDialog.js +0 -28
- package/dist/LinearBasicDisplay/configSchema.js +0 -13
- package/dist/LinearBasicDisplay/index.d.ts +0 -4
- package/dist/LinearBasicDisplay/index.js +0 -29
- package/dist/LinearBasicDisplay/model.d.ts +0 -346
- package/dist/LinearBasicDisplay/model.js +0 -192
- package/dist/LinearGenomeView/components/CenterLine.d.ts +0 -6
- package/dist/LinearGenomeView/components/CenterLine.js +0 -38
- package/dist/LinearGenomeView/components/Cytobands.d.ts +0 -9
- package/dist/LinearGenomeView/components/Cytobands.js +0 -89
- package/dist/LinearGenomeView/components/ExportSvgDialog.d.ts +0 -7
- package/dist/LinearGenomeView/components/ExportSvgDialog.js +0 -57
- package/dist/LinearGenomeView/components/GetSequenceDialog.d.ts +0 -6
- package/dist/LinearGenomeView/components/GetSequenceDialog.js +0 -109
- package/dist/LinearGenomeView/components/Gridlines.d.ts +0 -7
- package/dist/LinearGenomeView/components/Gridlines.js +0 -70
- package/dist/LinearGenomeView/components/Header.d.ts +0 -5
- package/dist/LinearGenomeView/components/Header.js +0 -38
- package/dist/LinearGenomeView/components/HeaderPanControls.d.ts +0 -6
- package/dist/LinearGenomeView/components/HeaderPanControls.js +0 -27
- package/dist/LinearGenomeView/components/HeaderRegionWidth.d.ts +0 -5
- package/dist/LinearGenomeView/components/HeaderRegionWidth.js +0 -21
- package/dist/LinearGenomeView/components/HeaderTrackSelectorButton.d.ts +0 -5
- package/dist/LinearGenomeView/components/HeaderTrackSelectorButton.js +0 -19
- package/dist/LinearGenomeView/components/HeaderZoomControls.d.ts +0 -5
- package/dist/LinearGenomeView/components/HeaderZoomControls.js +0 -109
- package/dist/LinearGenomeView/components/Highlight.d.ts +0 -12
- package/dist/LinearGenomeView/components/Highlight.js +0 -95
- package/dist/LinearGenomeView/components/ImportForm.d.ts +0 -6
- package/dist/LinearGenomeView/components/ImportForm.js +0 -80
- package/dist/LinearGenomeView/components/ImportFormRefNameAutocomplete.d.ts +0 -11
- package/dist/LinearGenomeView/components/ImportFormRefNameAutocomplete.js +0 -32
- package/dist/LinearGenomeView/components/LinearGenomeView.d.ts +0 -5
- package/dist/LinearGenomeView/components/LinearGenomeView.js +0 -57
- package/dist/LinearGenomeView/components/LinearGenomeViewContainer.d.ts +0 -5
- package/dist/LinearGenomeView/components/LinearGenomeViewContainer.js +0 -98
- package/dist/LinearGenomeView/components/MiniControls.d.ts +0 -5
- package/dist/LinearGenomeView/components/MiniControls.js +0 -36
- package/dist/LinearGenomeView/components/NoTracksActiveButton.d.ts +0 -5
- package/dist/LinearGenomeView/components/NoTracksActiveButton.js +0 -23
- package/dist/LinearGenomeView/components/OverviewHighlight.d.ts +0 -8
- package/dist/LinearGenomeView/components/OverviewHighlight.js +0 -50
- package/dist/LinearGenomeView/components/OverviewRubberband.d.ts +0 -9
- package/dist/LinearGenomeView/components/OverviewRubberband.js +0 -113
- package/dist/LinearGenomeView/components/OverviewRubberbandHoverTooltip.d.ts +0 -10
- package/dist/LinearGenomeView/components/OverviewRubberbandHoverTooltip.js +0 -28
- package/dist/LinearGenomeView/components/OverviewScalebar.d.ts +0 -7
- package/dist/LinearGenomeView/components/OverviewScalebar.js +0 -146
- package/dist/LinearGenomeView/components/OverviewScalebarPolygon.d.ts +0 -8
- package/dist/LinearGenomeView/components/OverviewScalebarPolygon.js +0 -41
- package/dist/LinearGenomeView/components/OverviewScalebarTickLabels.d.ts +0 -10
- package/dist/LinearGenomeView/components/OverviewScalebarTickLabels.js +0 -37
- package/dist/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.d.ts +0 -8
- package/dist/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.js +0 -18
- package/dist/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.d.ts +0 -3
- package/dist/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.js +0 -56
- package/dist/LinearGenomeView/components/RefNameAutocomplete/HelpDialog.d.ts +0 -3
- package/dist/LinearGenomeView/components/RefNameAutocomplete/HelpDialog.js +0 -11
- package/dist/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +0 -16
- package/dist/LinearGenomeView/components/RefNameAutocomplete/index.js +0 -127
- package/dist/LinearGenomeView/components/RefNameAutocomplete/util.d.ts +0 -10
- package/dist/LinearGenomeView/components/RefNameAutocomplete/util.js +0 -53
- package/dist/LinearGenomeView/components/RegionWidthEditorDialog.d.ts +0 -6
- package/dist/LinearGenomeView/components/RegionWidthEditorDialog.js +0 -30
- package/dist/LinearGenomeView/components/Rubberband.d.ts +0 -7
- package/dist/LinearGenomeView/components/Rubberband.js +0 -35
- package/dist/LinearGenomeView/components/RubberbandSpan.d.ts +0 -15
- package/dist/LinearGenomeView/components/RubberbandSpan.js +0 -39
- package/dist/LinearGenomeView/components/RubberbandTooltip.d.ts +0 -5
- package/dist/LinearGenomeView/components/RubberbandTooltip.js +0 -20
- package/dist/LinearGenomeView/components/Scalebar.d.ts +0 -10
- package/dist/LinearGenomeView/components/Scalebar.js +0 -40
- package/dist/LinearGenomeView/components/ScalebarCoordinateLabels.d.ts +0 -6
- package/dist/LinearGenomeView/components/ScalebarCoordinateLabels.js +0 -29
- package/dist/LinearGenomeView/components/ScalebarCoordinateTicks.d.ts +0 -6
- package/dist/LinearGenomeView/components/ScalebarCoordinateTicks.js +0 -38
- package/dist/LinearGenomeView/components/ScalebarRefNameLabels.d.ts +0 -6
- package/dist/LinearGenomeView/components/ScalebarRefNameLabels.js +0 -46
- package/dist/LinearGenomeView/components/SearchBox.d.ts +0 -6
- package/dist/LinearGenomeView/components/SearchBox.js +0 -88
- package/dist/LinearGenomeView/components/SearchResultsDialog.d.ts +0 -9
- package/dist/LinearGenomeView/components/SearchResultsDialog.js +0 -15
- package/dist/LinearGenomeView/components/SearchResultsTable.d.ts +0 -8
- package/dist/LinearGenomeView/components/SearchResultsTable.js +0 -74
- package/dist/LinearGenomeView/components/SequenceSearchDialog.d.ts +0 -8
- package/dist/LinearGenomeView/components/SequenceSearchDialog.js +0 -67
- package/dist/LinearGenomeView/components/TrackContainer.d.ts +0 -8
- package/dist/LinearGenomeView/components/TrackContainer.js +0 -51
- package/dist/LinearGenomeView/components/TrackLabel.d.ts +0 -7
- package/dist/LinearGenomeView/components/TrackLabel.js +0 -49
- package/dist/LinearGenomeView/components/TrackLabelContainer.d.ts +0 -8
- package/dist/LinearGenomeView/components/TrackLabelContainer.js +0 -31
- package/dist/LinearGenomeView/components/TrackLabelDragHandle.d.ts +0 -8
- package/dist/LinearGenomeView/components/TrackLabelDragHandle.js +0 -32
- package/dist/LinearGenomeView/components/TrackLabelMenu.d.ts +0 -5
- package/dist/LinearGenomeView/components/TrackLabelMenu.js +0 -93
- package/dist/LinearGenomeView/components/TrackRenderingContainer.d.ts +0 -9
- package/dist/LinearGenomeView/components/TrackRenderingContainer.js +0 -50
- package/dist/LinearGenomeView/components/TracksContainer.d.ts +0 -7
- package/dist/LinearGenomeView/components/TracksContainer.js +0 -84
- package/dist/LinearGenomeView/components/VerticalGuide.d.ts +0 -7
- package/dist/LinearGenomeView/components/VerticalGuide.js +0 -31
- package/dist/LinearGenomeView/components/fetchSequence.d.ts +0 -4
- package/dist/LinearGenomeView/components/fetchSequence.js +0 -29
- package/dist/LinearGenomeView/components/useRangeSelect.d.ts +0 -59
- package/dist/LinearGenomeView/components/useRangeSelect.js +0 -131
- package/dist/LinearGenomeView/components/useSideScroll.d.ts +0 -6
- package/dist/LinearGenomeView/components/useSideScroll.js +0 -60
- package/dist/LinearGenomeView/components/useWheelScroll.d.ts +0 -7
- package/dist/LinearGenomeView/components/useWheelScroll.js +0 -62
- package/dist/LinearGenomeView/components/util.d.ts +0 -25
- package/dist/LinearGenomeView/components/util.js +0 -49
- package/dist/LinearGenomeView/consts.d.ts +0 -7
- package/dist/LinearGenomeView/consts.js +0 -10
- package/dist/LinearGenomeView/index.d.ts +0 -3
- package/dist/LinearGenomeView/index.js +0 -53
- package/dist/LinearGenomeView/model.d.ts +0 -268
- package/dist/LinearGenomeView/model.js +0 -1109
- package/dist/LinearGenomeView/svgcomponents/SVGBackground.d.ts +0 -5
- package/dist/LinearGenomeView/svgcomponents/SVGBackground.js +0 -10
- package/dist/LinearGenomeView/svgcomponents/SVGHeader.d.ts +0 -7
- package/dist/LinearGenomeView/svgcomponents/SVGHeader.js +0 -47
- package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.d.ts +0 -6
- package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +0 -42
- package/dist/LinearGenomeView/svgcomponents/SVGRegionSeparators.js +0 -8
- package/dist/LinearGenomeView/svgcomponents/SVGRuler.d.ts +0 -7
- package/dist/LinearGenomeView/svgcomponents/SVGRuler.js +0 -39
- package/dist/LinearGenomeView/svgcomponents/SVGScalebar.d.ts +0 -7
- package/dist/LinearGenomeView/svgcomponents/SVGScalebar.js +0 -17
- package/dist/LinearGenomeView/svgcomponents/SVGTrackLabel.d.ts +0 -7
- package/dist/LinearGenomeView/svgcomponents/SVGTrackLabel.js +0 -14
- package/dist/LinearGenomeView/svgcomponents/SVGTracks.d.ts +0 -21
- package/dist/LinearGenomeView/svgcomponents/SVGTracks.js +0 -32
- package/dist/LinearGenomeView/svgcomponents/util.d.ts +0 -8
- package/dist/LinearGenomeView/svgcomponents/util.js +0 -8
- package/dist/LinearGenomeView/types.d.ts +0 -43
- package/dist/LinearGenomeView/types.js +0 -2
- package/dist/LinearGenomeView/util.d.ts +0 -26
- package/dist/LinearGenomeView/util.js +0 -138
- package/dist/index.d.ts +0 -353
- package/dist/index.js +0 -120
- package/dist/searchUtils.d.ts +0 -26
- package/dist/searchUtils.js +0 -80
- package/esm/BaseLinearDisplay/components/BlockLoadingMessage.d.ts +0 -6
- package/esm/BaseLinearDisplay/components/BlockLoadingMessage.js +0 -24
- package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +0 -311
- package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js +0 -286
- package/esm/LinearBasicDisplay/components/AddFiltersDialog.d.ts +0 -9
- package/esm/LinearBasicDisplay/components/SetMaxHeightDialog.d.ts +0 -8
- package/esm/LinearGenomeView/components/ScalebarCoordinateTicks.d.ts +0 -6
- package/esm/LinearGenomeView/components/ScalebarCoordinateTicks.js +0 -36
- /package/{dist/LinearBasicDisplay → esm/LinearFeatureDisplay}/components/AddFiltersDialog.d.ts +0 -0
- /package/{dist/LinearBasicDisplay → esm/LinearFeatureDisplay}/components/SetMaxHeightDialog.d.ts +0 -0
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
|
-
const util_1 = require("@jbrowse/core/util");
|
|
5
|
-
const mobx_react_1 = require("mobx-react");
|
|
6
|
-
const util_2 = require("./util");
|
|
7
|
-
const consts_1 = require("../consts");
|
|
8
|
-
function rightRoundedRect(x, y, width, height, radius) {
|
|
9
|
-
return `M${x},${y}h${width - radius}a${radius},${radius} 0 0 1 ${radius},${radius}v${height - 2 * radius}a${radius},${radius} 0 0 1 ${-radius},${radius}h${radius - width}z`;
|
|
10
|
-
}
|
|
11
|
-
function leftRoundedRect(x, y, width, height, radius) {
|
|
12
|
-
return `M${x + radius},${y}h${width - radius}v${height}h${radius - width}a${radius},${radius} 0 0 1 ${-radius},${-radius}v${2 * radius - height}a${radius},${radius} 0 0 1 ${radius},${-radius}z`;
|
|
13
|
-
}
|
|
14
|
-
function leftTriangle(x, _y, width, height) {
|
|
15
|
-
return [
|
|
16
|
-
[x, 0],
|
|
17
|
-
[x + width, height / 2],
|
|
18
|
-
[x, height],
|
|
19
|
-
].toString();
|
|
20
|
-
}
|
|
21
|
-
function rightTriangle(x, _y, width, height) {
|
|
22
|
-
return [
|
|
23
|
-
[x, height / 2],
|
|
24
|
-
[x + width, 0],
|
|
25
|
-
[x + width, height],
|
|
26
|
-
].toString();
|
|
27
|
-
}
|
|
28
|
-
const colorMap = {
|
|
29
|
-
gneg: 'rgb(227,227,227)',
|
|
30
|
-
gpos25: 'rgb(142,142,142)',
|
|
31
|
-
gpos33: 'rgb(142,142,142)',
|
|
32
|
-
gpos50: 'rgb(85,85,85)',
|
|
33
|
-
gpos66: 'rgb(85,85,85)',
|
|
34
|
-
gpos100: 'rgb(0,0,0)',
|
|
35
|
-
gpos75: 'rgb(57,57,57)',
|
|
36
|
-
gvar: 'rgb(0,0,0)',
|
|
37
|
-
stalk: 'rgb(127,127,127)',
|
|
38
|
-
acen: '#800',
|
|
39
|
-
};
|
|
40
|
-
const Cytobands = (0, mobx_react_1.observer)(function ({ overview, block, assembly, }) {
|
|
41
|
-
const { offsetPx, reversed } = block;
|
|
42
|
-
const cytobands = (0, util_2.getCytobands)(assembly, block.refName);
|
|
43
|
-
const lcap = reversed ? cytobands.length - 1 : 0;
|
|
44
|
-
const rcap = reversed ? 0 : cytobands.length - 1;
|
|
45
|
-
const h = consts_1.HEADER_OVERVIEW_HEIGHT;
|
|
46
|
-
let centromereSeen = false;
|
|
47
|
-
let curr = '';
|
|
48
|
-
let idx = 0;
|
|
49
|
-
return ((0, jsx_runtime_1.jsx)("g", { transform: `translate(-${offsetPx})`, children: cytobands.map((args, index) => {
|
|
50
|
-
const k = JSON.stringify(args);
|
|
51
|
-
const { refName, name, type, start, end } = args;
|
|
52
|
-
const s = overview.bpToPx({ refName, coord: start }) || 0;
|
|
53
|
-
const e = overview.bpToPx({ refName, coord: end }) || 0;
|
|
54
|
-
const l = Math.min(s, e);
|
|
55
|
-
const w = Math.abs(e - s);
|
|
56
|
-
if (type === 'n/a') {
|
|
57
|
-
const match = name === null || name === void 0 ? void 0 : name.match(/^(\d+)([A-Za-z])/);
|
|
58
|
-
const ret = match[1] + match[2];
|
|
59
|
-
if (ret && ret !== curr) {
|
|
60
|
-
curr = ret;
|
|
61
|
-
idx++;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
const c = type === 'n/a'
|
|
65
|
-
? idx % 2
|
|
66
|
-
? 'black'
|
|
67
|
-
: '#a77'
|
|
68
|
-
: colorMap[type] || 'black';
|
|
69
|
-
if (type === 'acen' && !centromereSeen) {
|
|
70
|
-
centromereSeen = true;
|
|
71
|
-
return ((0, jsx_runtime_1.jsx)("polygon", { points: reversed
|
|
72
|
-
? rightTriangle(s - w, 0, w, h)
|
|
73
|
-
: leftTriangle(s, 0, w, h), ...(0, util_1.getFillProps)(c) }, k));
|
|
74
|
-
}
|
|
75
|
-
if (type === 'acen' && centromereSeen) {
|
|
76
|
-
return ((0, jsx_runtime_1.jsx)("polygon", { points: reversed
|
|
77
|
-
? leftTriangle(s - w, 0, w, h)
|
|
78
|
-
: rightTriangle(s, 0, w, h), ...(0, util_1.getFillProps)(c) }, k));
|
|
79
|
-
}
|
|
80
|
-
if (lcap === index) {
|
|
81
|
-
return ((0, jsx_runtime_1.jsx)("path", { d: leftRoundedRect(l, 0, w, h, 8), ...(0, util_1.getFillProps)(c) }, k));
|
|
82
|
-
}
|
|
83
|
-
if (rcap === index) {
|
|
84
|
-
return ((0, jsx_runtime_1.jsx)("path", { d: rightRoundedRect(l, 0, w, h, 8), ...(0, util_1.getFillProps)(c) }, k));
|
|
85
|
-
}
|
|
86
|
-
return ((0, jsx_runtime_1.jsx)("rect", { x: l, y: 0, width: w, height: h, ...(0, util_1.getFillProps)(c) }, k));
|
|
87
|
-
}) }));
|
|
88
|
-
});
|
|
89
|
-
exports.default = Cytobands;
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.default = ExportSvgDialog;
|
|
4
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const react_1 = require("react");
|
|
6
|
-
const ui_1 = require("@jbrowse/core/ui");
|
|
7
|
-
const util_1 = require("@jbrowse/core/util");
|
|
8
|
-
const material_1 = require("@mui/material");
|
|
9
|
-
function LoadingMessage() {
|
|
10
|
-
return ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)(material_1.CircularProgress, { size: 20, style: { marginRight: 20 } }), (0, jsx_runtime_1.jsx)(material_1.Typography, { display: "inline", children: "Creating SVG" })] }));
|
|
11
|
-
}
|
|
12
|
-
function useSvgLocal(key, val) {
|
|
13
|
-
return (0, util_1.useLocalStorage)(`svg-${key}`, val);
|
|
14
|
-
}
|
|
15
|
-
function TextField2({ children, ...rest }) {
|
|
16
|
-
return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(material_1.TextField, { ...rest, children: children }) }));
|
|
17
|
-
}
|
|
18
|
-
function ExportSvgDialog({ model, handleClose, }) {
|
|
19
|
-
const session = (0, util_1.getSession)(model);
|
|
20
|
-
const offscreenCanvas = typeof OffscreenCanvas !== 'undefined';
|
|
21
|
-
const [rasterizeLayers, setRasterizeLayers] = (0, react_1.useState)(offscreenCanvas);
|
|
22
|
-
const [loading, setLoading] = (0, react_1.useState)(false);
|
|
23
|
-
const [error, setError] = (0, react_1.useState)();
|
|
24
|
-
const [filename, setFilename] = useSvgLocal('file', 'jbrowse.svg');
|
|
25
|
-
const [trackLabels, setTrackLabels] = useSvgLocal('tracklabels', 'offset');
|
|
26
|
-
const [themeName, setThemeName] = useSvgLocal('theme', session.themeName || 'default');
|
|
27
|
-
return ((0, jsx_runtime_1.jsxs)(ui_1.Dialog, { open: true, onClose: handleClose, title: "Export SVG", children: [(0, jsx_runtime_1.jsxs)(material_1.DialogContent, { children: [error ? ((0, jsx_runtime_1.jsx)(ui_1.ErrorMessage, { error: error })) : loading ? ((0, jsx_runtime_1.jsx)(LoadingMessage, {})) : null, (0, jsx_runtime_1.jsx)(TextField2, { helperText: "filename", value: filename, onChange: event => {
|
|
28
|
-
setFilename(event.target.value);
|
|
29
|
-
} }), (0, jsx_runtime_1.jsxs)(TextField2, { select: true, label: "Track label positioning", variant: "outlined", style: { width: 150 }, value: trackLabels, onChange: event => {
|
|
30
|
-
setTrackLabels(event.target.value);
|
|
31
|
-
}, children: [(0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: "offset", children: "Offset" }), (0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: "overlay", children: "Overlay" }), (0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: "left", children: "Left" }), (0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: "none", children: "None" })] }), session.allThemes ? ((0, jsx_runtime_1.jsx)(TextField2, { select: true, label: "Theme", variant: "outlined", value: themeName, onChange: event => {
|
|
32
|
-
setThemeName(event.target.value);
|
|
33
|
-
}, children: Object.entries(session.allThemes()).map(([key, val]) => ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: key, children: val.name || '(Unknown name)' }, key))) })) : null, offscreenCanvas ? ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { checked: rasterizeLayers, onChange: () => {
|
|
34
|
-
setRasterizeLayers(val => !val);
|
|
35
|
-
} }), label: "Rasterize canvas based tracks? File may be much larger if this is turned off" })) : ((0, jsx_runtime_1.jsx)(material_1.Typography, { children: "Note: rasterizing layers not yet supported in this browser, so SVG size may be large" }))] }), (0, jsx_runtime_1.jsxs)(material_1.DialogActions, { children: [(0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", color: "secondary", onClick: () => {
|
|
36
|
-
handleClose();
|
|
37
|
-
}, children: "Cancel" }), (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", color: "primary", type: "submit", onClick: async () => {
|
|
38
|
-
setLoading(true);
|
|
39
|
-
setError(undefined);
|
|
40
|
-
try {
|
|
41
|
-
await model.exportSvg({
|
|
42
|
-
rasterizeLayers,
|
|
43
|
-
filename,
|
|
44
|
-
trackLabels,
|
|
45
|
-
themeName,
|
|
46
|
-
});
|
|
47
|
-
handleClose();
|
|
48
|
-
}
|
|
49
|
-
catch (e) {
|
|
50
|
-
console.error(e);
|
|
51
|
-
setError(e);
|
|
52
|
-
}
|
|
53
|
-
finally {
|
|
54
|
-
setLoading(false);
|
|
55
|
-
}
|
|
56
|
-
}, children: "Submit" })] })] }));
|
|
57
|
-
}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
7
|
-
const react_1 = require("react");
|
|
8
|
-
const ui_1 = require("@jbrowse/core/ui");
|
|
9
|
-
const util_1 = require("@jbrowse/core/util");
|
|
10
|
-
const formatFastaStrings_1 = require("@jbrowse/core/util/formatFastaStrings");
|
|
11
|
-
const ContentCopy_1 = __importDefault(require("@mui/icons-material/ContentCopy"));
|
|
12
|
-
const GetApp_1 = __importDefault(require("@mui/icons-material/GetApp"));
|
|
13
|
-
const material_1 = require("@mui/material");
|
|
14
|
-
const copy_to_clipboard_1 = __importDefault(require("copy-to-clipboard"));
|
|
15
|
-
const file_saver_1 = require("file-saver");
|
|
16
|
-
const mobx_react_1 = require("mobx-react");
|
|
17
|
-
const mui_1 = require("tss-react/mui");
|
|
18
|
-
const fetchSequence_1 = require("./fetchSequence");
|
|
19
|
-
const useStyles = (0, mui_1.makeStyles)()({
|
|
20
|
-
dialogContent: {
|
|
21
|
-
width: '80em',
|
|
22
|
-
},
|
|
23
|
-
textAreaFont: {
|
|
24
|
-
fontFamily: 'Courier New',
|
|
25
|
-
},
|
|
26
|
-
ml: {
|
|
27
|
-
marginLeft: 10,
|
|
28
|
-
},
|
|
29
|
-
});
|
|
30
|
-
const GetSequenceDialog = (0, mobx_react_1.observer)(function ({ model, handleClose, }) {
|
|
31
|
-
const { classes } = useStyles();
|
|
32
|
-
const [error, setError] = (0, react_1.useState)();
|
|
33
|
-
const [sequenceChunks, setSequenceChunks] = (0, react_1.useState)();
|
|
34
|
-
const [rev, setReverse] = (0, react_1.useState)(false);
|
|
35
|
-
const [copied, setCopied] = (0, react_1.useState)(false);
|
|
36
|
-
const [comp, setComplement] = (0, react_1.useState)(false);
|
|
37
|
-
const { leftOffset, rightOffset } = model;
|
|
38
|
-
const loading = sequenceChunks === undefined;
|
|
39
|
-
(0, react_1.useEffect)(() => {
|
|
40
|
-
const controller = new AbortController();
|
|
41
|
-
(async () => {
|
|
42
|
-
try {
|
|
43
|
-
const selection = model.getSelectedRegions(leftOffset, rightOffset);
|
|
44
|
-
if (selection.length === 0) {
|
|
45
|
-
throw new Error('Selected region is out of bounds');
|
|
46
|
-
}
|
|
47
|
-
setSequenceChunks(await (0, fetchSequence_1.fetchSequence)(model, selection));
|
|
48
|
-
}
|
|
49
|
-
catch (e) {
|
|
50
|
-
console.error(e);
|
|
51
|
-
setError(e);
|
|
52
|
-
}
|
|
53
|
-
})();
|
|
54
|
-
return () => {
|
|
55
|
-
controller.abort();
|
|
56
|
-
};
|
|
57
|
-
}, [model, leftOffset, rightOffset]);
|
|
58
|
-
const sequence = sequenceChunks
|
|
59
|
-
? (0, formatFastaStrings_1.formatSeqFasta)(sequenceChunks.map(chunk => {
|
|
60
|
-
let chunkSeq = chunk.get('seq');
|
|
61
|
-
const chunkRefName = chunk.get('refName');
|
|
62
|
-
const chunkStart = chunk.get('start') + 1;
|
|
63
|
-
const chunkEnd = chunk.get('end');
|
|
64
|
-
const loc = `${chunkRefName}:${chunkStart}-${chunkEnd}`;
|
|
65
|
-
if ((chunkSeq === null || chunkSeq === void 0 ? void 0 : chunkSeq.length) !== chunkEnd - chunkStart + 1) {
|
|
66
|
-
throw new Error(`${loc} returned ${chunkSeq.length.toLocaleString()} bases, but should have returned ${(chunkEnd - chunkStart).toLocaleString()}`);
|
|
67
|
-
}
|
|
68
|
-
if (rev) {
|
|
69
|
-
chunkSeq = (0, util_1.reverse)(chunkSeq);
|
|
70
|
-
}
|
|
71
|
-
if (comp) {
|
|
72
|
-
chunkSeq = (0, util_1.complement)(chunkSeq);
|
|
73
|
-
}
|
|
74
|
-
return {
|
|
75
|
-
header: loc + (rev ? '-rev' : '') + (comp ? '-comp' : ''),
|
|
76
|
-
seq: chunkSeq,
|
|
77
|
-
};
|
|
78
|
-
}))
|
|
79
|
-
: '';
|
|
80
|
-
const sequenceTooLarge = sequence ? sequence.length > 1000000 : false;
|
|
81
|
-
return ((0, jsx_runtime_1.jsxs)(ui_1.Dialog, { maxWidth: "xl", open: true, onClose: () => {
|
|
82
|
-
handleClose();
|
|
83
|
-
model.setOffsets();
|
|
84
|
-
}, title: "Reference sequence", children: [(0, jsx_runtime_1.jsxs)(material_1.DialogContent, { children: [error ? ((0, jsx_runtime_1.jsx)(ui_1.ErrorMessage, { error: error })) : loading ? ((0, jsx_runtime_1.jsx)(ui_1.LoadingEllipses, { message: "Retrieving sequences" })) : null, (0, jsx_runtime_1.jsx)(material_1.TextField, { "data-testid": "rubberband-sequence", variant: "outlined", multiline: true, minRows: 5, maxRows: 10, disabled: sequenceTooLarge, className: classes.dialogContent, fullWidth: true, value: sequenceTooLarge
|
|
85
|
-
? 'Reference sequence too large to display, use the download FASTA button'
|
|
86
|
-
: sequence, slotProps: {
|
|
87
|
-
input: {
|
|
88
|
-
readOnly: true,
|
|
89
|
-
classes: {
|
|
90
|
-
input: classes.textAreaFont,
|
|
91
|
-
},
|
|
92
|
-
},
|
|
93
|
-
} }), (0, jsx_runtime_1.jsxs)(material_1.FormGroup, { children: [(0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { value: rev, onChange: event => {
|
|
94
|
-
setReverse(event.target.checked);
|
|
95
|
-
} }), label: "Reverse sequence" }), (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { value: comp, onChange: event => {
|
|
96
|
-
setComplement(event.target.checked);
|
|
97
|
-
} }), label: "Complement sequence" })] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { style: { margin: 10 }, children: "Note: Check both boxes for the \"reverse complement\"" })] }), (0, jsx_runtime_1.jsxs)(material_1.DialogActions, { children: [(0, jsx_runtime_1.jsx)(material_1.Button, { onClick: () => {
|
|
98
|
-
(0, copy_to_clipboard_1.default)(sequence);
|
|
99
|
-
setCopied(true);
|
|
100
|
-
setTimeout(() => {
|
|
101
|
-
setCopied(false);
|
|
102
|
-
}, 500);
|
|
103
|
-
}, disabled: loading || !!error || sequenceTooLarge, color: "primary", startIcon: (0, jsx_runtime_1.jsx)(ContentCopy_1.default, {}), children: copied ? 'Copied' : 'Copy to clipboard' }), (0, jsx_runtime_1.jsx)(material_1.Button, { onClick: () => {
|
|
104
|
-
(0, file_saver_1.saveAs)(new Blob([sequence || ''], {
|
|
105
|
-
type: 'text/x-fasta;charset=utf-8',
|
|
106
|
-
}), 'jbrowse_ref_seq.fa');
|
|
107
|
-
}, disabled: loading || !!error, color: "primary", startIcon: (0, jsx_runtime_1.jsx)(GetApp_1.default, {}), children: "Download FASTA" }), (0, jsx_runtime_1.jsx)(material_1.Button, { onClick: handleClose, variant: "contained", children: "Close" })] })] }));
|
|
108
|
-
});
|
|
109
|
-
exports.default = GetSequenceDialog;
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
|
-
const mobx_react_1 = require("mobx-react");
|
|
5
|
-
const mui_1 = require("tss-react/mui");
|
|
6
|
-
const Block_1 = require("../../BaseLinearDisplay/components/Block");
|
|
7
|
-
const util_1 = require("../util");
|
|
8
|
-
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
9
|
-
verticalGuidesZoomContainer: {
|
|
10
|
-
position: 'absolute',
|
|
11
|
-
top: 0,
|
|
12
|
-
height: '100%',
|
|
13
|
-
width: '100%',
|
|
14
|
-
pointerEvents: 'none',
|
|
15
|
-
},
|
|
16
|
-
verticalGuidesContainer: {
|
|
17
|
-
position: 'absolute',
|
|
18
|
-
height: '100%',
|
|
19
|
-
pointerEvents: 'none',
|
|
20
|
-
display: 'flex',
|
|
21
|
-
},
|
|
22
|
-
tick: {
|
|
23
|
-
position: 'absolute',
|
|
24
|
-
height: '100%',
|
|
25
|
-
width: 1,
|
|
26
|
-
},
|
|
27
|
-
majorTick: {
|
|
28
|
-
background: theme.palette.action.disabled,
|
|
29
|
-
},
|
|
30
|
-
minorTick: {
|
|
31
|
-
background: theme.palette.divider,
|
|
32
|
-
},
|
|
33
|
-
}));
|
|
34
|
-
function RenderedBlockLines({ block, bpPerPx, }) {
|
|
35
|
-
const { classes, cx } = useStyles();
|
|
36
|
-
const ticks = (0, util_1.makeTicks)(block.start, block.end, bpPerPx);
|
|
37
|
-
return ((0, jsx_runtime_1.jsx)(Block_1.ContentBlock, { block: block, children: ticks.map(({ type, base }) => {
|
|
38
|
-
const x = (block.reversed ? block.end - base : base - block.start) / bpPerPx;
|
|
39
|
-
return ((0, jsx_runtime_1.jsx)("div", { className: cx(classes.tick, type === 'major' || type === 'labeledMajor'
|
|
40
|
-
? classes.majorTick
|
|
41
|
-
: classes.minorTick), style: { left: x } }, base));
|
|
42
|
-
}) }));
|
|
43
|
-
}
|
|
44
|
-
const RenderedVerticalGuides = (0, mobx_react_1.observer)(({ model }) => {
|
|
45
|
-
const { staticBlocks, bpPerPx } = model;
|
|
46
|
-
return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: staticBlocks.map((block, index) => {
|
|
47
|
-
const k = `${block.key}-${index}`;
|
|
48
|
-
if (block.type === 'ContentBlock') {
|
|
49
|
-
return (0, jsx_runtime_1.jsx)(RenderedBlockLines, { block: block, bpPerPx: bpPerPx }, k);
|
|
50
|
-
}
|
|
51
|
-
else if (block.type === 'ElidedBlock') {
|
|
52
|
-
return (0, jsx_runtime_1.jsx)(Block_1.ElidedBlock, { width: block.widthPx }, k);
|
|
53
|
-
}
|
|
54
|
-
else if (block.type === 'InterRegionPaddingBlock') {
|
|
55
|
-
return ((0, jsx_runtime_1.jsx)(Block_1.InterRegionPaddingBlock, { width: block.widthPx, boundary: block.variant === 'boundary' }, k));
|
|
56
|
-
}
|
|
57
|
-
return null;
|
|
58
|
-
}) }));
|
|
59
|
-
});
|
|
60
|
-
const Gridlines = (0, mobx_react_1.observer)(function ({ model, offset = 0, }) {
|
|
61
|
-
const { classes } = useStyles();
|
|
62
|
-
const offsetLeft = model.staticBlocks.offsetPx - model.offsetPx;
|
|
63
|
-
return ((0, jsx_runtime_1.jsx)("div", { className: classes.verticalGuidesZoomContainer, style: {
|
|
64
|
-
transform: model.scaleFactor !== 1 ? `scaleX(${model.scaleFactor})` : undefined,
|
|
65
|
-
}, children: (0, jsx_runtime_1.jsx)("div", { className: classes.verticalGuidesContainer, style: {
|
|
66
|
-
left: offsetLeft - offset,
|
|
67
|
-
width: model.staticBlocks.totalWidthPx,
|
|
68
|
-
}, children: (0, jsx_runtime_1.jsx)(RenderedVerticalGuides, { model: model }) }) }));
|
|
69
|
-
});
|
|
70
|
-
exports.default = Gridlines;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
7
|
-
const material_1 = require("@mui/material");
|
|
8
|
-
const mobx_react_1 = require("mobx-react");
|
|
9
|
-
const mui_1 = require("tss-react/mui");
|
|
10
|
-
const HeaderPanControls_1 = __importDefault(require("./HeaderPanControls"));
|
|
11
|
-
const HeaderRegionWidth_1 = __importDefault(require("./HeaderRegionWidth"));
|
|
12
|
-
const HeaderTrackSelectorButton_1 = __importDefault(require("./HeaderTrackSelectorButton"));
|
|
13
|
-
const HeaderZoomControls_1 = __importDefault(require("./HeaderZoomControls"));
|
|
14
|
-
const OverviewScalebar_1 = __importDefault(require("./OverviewScalebar"));
|
|
15
|
-
const SearchBox_1 = __importDefault(require("./SearchBox"));
|
|
16
|
-
const consts_1 = require("../consts");
|
|
17
|
-
const useStyles = (0, mui_1.makeStyles)()({
|
|
18
|
-
headerBar: {
|
|
19
|
-
display: 'flex',
|
|
20
|
-
height: consts_1.HEADER_BAR_HEIGHT,
|
|
21
|
-
},
|
|
22
|
-
headerForm: {
|
|
23
|
-
flexWrap: 'nowrap',
|
|
24
|
-
marginRight: 7,
|
|
25
|
-
},
|
|
26
|
-
spacer: {
|
|
27
|
-
flexGrow: 1,
|
|
28
|
-
},
|
|
29
|
-
});
|
|
30
|
-
const Controls = function ({ model }) {
|
|
31
|
-
const { classes } = useStyles();
|
|
32
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: classes.headerBar, children: [(0, jsx_runtime_1.jsx)(HeaderTrackSelectorButton_1.default, { model: model }), (0, jsx_runtime_1.jsx)("div", { className: classes.spacer }), (0, jsx_runtime_1.jsxs)(material_1.FormGroup, { row: true, className: classes.headerForm, children: [(0, jsx_runtime_1.jsx)(HeaderPanControls_1.default, { model: model }), (0, jsx_runtime_1.jsx)(SearchBox_1.default, { model: model })] }), (0, jsx_runtime_1.jsx)(HeaderRegionWidth_1.default, { model: model }), (0, jsx_runtime_1.jsx)(HeaderZoomControls_1.default, { model: model }), (0, jsx_runtime_1.jsx)("div", { className: classes.spacer })] }));
|
|
33
|
-
};
|
|
34
|
-
const LinearGenomeViewHeader = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
35
|
-
const { hideHeader, hideHeaderOverview } = model;
|
|
36
|
-
return !hideHeader ? (hideHeaderOverview ? ((0, jsx_runtime_1.jsx)(Controls, { model: model })) : ((0, jsx_runtime_1.jsx)(OverviewScalebar_1.default, { model: model, children: (0, jsx_runtime_1.jsx)(Controls, { model: model }) }))) : null;
|
|
37
|
-
});
|
|
38
|
-
exports.default = LinearGenomeViewHeader;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.default = HeaderPanControls;
|
|
7
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
-
const ArrowBack_1 = __importDefault(require("@mui/icons-material/ArrowBack"));
|
|
9
|
-
const ArrowForward_1 = __importDefault(require("@mui/icons-material/ArrowForward"));
|
|
10
|
-
const material_1 = require("@mui/material");
|
|
11
|
-
const mui_1 = require("tss-react/mui");
|
|
12
|
-
const consts_1 = require("../consts");
|
|
13
|
-
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
14
|
-
panButton: {
|
|
15
|
-
background: (0, material_1.alpha)(theme.palette.background.paper, 0.8),
|
|
16
|
-
color: theme.palette.text.primary,
|
|
17
|
-
margin: consts_1.SPACING,
|
|
18
|
-
},
|
|
19
|
-
}));
|
|
20
|
-
function HeaderPanControls({ model }) {
|
|
21
|
-
const { classes } = useStyles();
|
|
22
|
-
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.Button, { variant: "outlined", className: classes.panButton, onClick: () => {
|
|
23
|
-
model.slide(-0.9);
|
|
24
|
-
}, children: (0, jsx_runtime_1.jsx)(ArrowBack_1.default, {}) }), (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "outlined", className: classes.panButton, onClick: () => {
|
|
25
|
-
model.slide(0.9);
|
|
26
|
-
}, children: (0, jsx_runtime_1.jsx)(ArrowForward_1.default, {}) })] }));
|
|
27
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
|
-
const util_1 = require("@jbrowse/core/util");
|
|
5
|
-
const material_1 = require("@mui/material");
|
|
6
|
-
const mobx_react_1 = require("mobx-react");
|
|
7
|
-
const mui_1 = require("tss-react/mui");
|
|
8
|
-
const useStyles = (0, mui_1.makeStyles)()({
|
|
9
|
-
bp: {
|
|
10
|
-
display: 'flex',
|
|
11
|
-
alignItems: 'center',
|
|
12
|
-
marginLeft: 5,
|
|
13
|
-
cursor: 'pointer',
|
|
14
|
-
},
|
|
15
|
-
});
|
|
16
|
-
const HeaderRegionWidth = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
17
|
-
const { classes } = useStyles();
|
|
18
|
-
const { coarseTotalBp } = model;
|
|
19
|
-
return ((0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "body2", color: "textSecondary", className: classes.bp, children: (0, util_1.getBpDisplayStr)(coarseTotalBp) }));
|
|
20
|
-
});
|
|
21
|
-
exports.default = HeaderRegionWidth;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
4
|
-
const Icons_1 = require("@jbrowse/core/ui/Icons");
|
|
5
|
-
const material_1 = require("@mui/material");
|
|
6
|
-
const mobx_react_1 = require("mobx-react");
|
|
7
|
-
const mui_1 = require("tss-react/mui");
|
|
8
|
-
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
9
|
-
toggleButton: {
|
|
10
|
-
height: 44,
|
|
11
|
-
border: 'none',
|
|
12
|
-
marginLeft: theme.spacing(4),
|
|
13
|
-
},
|
|
14
|
-
}));
|
|
15
|
-
const HeaderTrackSelectorButton = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
16
|
-
const { classes } = useStyles();
|
|
17
|
-
return ((0, jsx_runtime_1.jsx)(material_1.IconButton, { onClick: model.activateTrackSelector, className: classes.toggleButton, title: "Open track selector", value: "track_select", children: (0, jsx_runtime_1.jsx)(Icons_1.TrackSelector, {}) }));
|
|
18
|
-
});
|
|
19
|
-
exports.default = HeaderTrackSelectorButton;
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
40
|
-
const react_1 = require("react");
|
|
41
|
-
const CascadingMenuButton_1 = __importDefault(require("@jbrowse/core/ui/CascadingMenuButton"));
|
|
42
|
-
const util_1 = require("@jbrowse/core/util");
|
|
43
|
-
const MoreVert_1 = __importDefault(require("@mui/icons-material/MoreVert"));
|
|
44
|
-
const ZoomIn_1 = __importDefault(require("@mui/icons-material/ZoomIn"));
|
|
45
|
-
const ZoomOut_1 = __importDefault(require("@mui/icons-material/ZoomOut"));
|
|
46
|
-
const material_1 = require("@mui/material");
|
|
47
|
-
const mobx_react_1 = require("mobx-react");
|
|
48
|
-
const mui_1 = require("tss-react/mui");
|
|
49
|
-
const RegionWidthEditorDialog = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('./RegionWidthEditorDialog'))));
|
|
50
|
-
const useStyles = (0, mui_1.makeStyles)()(theme => ({
|
|
51
|
-
container: {
|
|
52
|
-
display: 'flex',
|
|
53
|
-
flexDirection: 'row',
|
|
54
|
-
alignItems: 'center',
|
|
55
|
-
},
|
|
56
|
-
slider: {
|
|
57
|
-
width: 100,
|
|
58
|
-
color: theme.palette.text.secondary,
|
|
59
|
-
},
|
|
60
|
-
}));
|
|
61
|
-
function ValueLabelComponent(props) {
|
|
62
|
-
const { children, open, value } = props;
|
|
63
|
-
return ((0, jsx_runtime_1.jsx)(material_1.Tooltip, { open: open, enterTouchDelay: 0, placement: "top", title: value, arrow: true, children: children }));
|
|
64
|
-
}
|
|
65
|
-
const HeaderZoomControls = (0, mobx_react_1.observer)(function ({ model, }) {
|
|
66
|
-
const { classes } = useStyles();
|
|
67
|
-
const { width, maxBpPerPx, minBpPerPx, bpPerPx } = model;
|
|
68
|
-
const [value, setValue] = (0, react_1.useState)(-Math.log2(bpPerPx) * 100);
|
|
69
|
-
(0, react_1.useEffect)(() => {
|
|
70
|
-
setValue(-Math.log2(bpPerPx) * 100);
|
|
71
|
-
}, [bpPerPx]);
|
|
72
|
-
const zoomInDisabled = bpPerPx <= minBpPerPx + 0.0001;
|
|
73
|
-
const zoomOutDisabled = bpPerPx >= maxBpPerPx - 0.0001;
|
|
74
|
-
return ((0, jsx_runtime_1.jsxs)("div", { className: classes.container, children: [(0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: "Zoom out 2x", children: (0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { "data-testid": "zoom_out", disabled: zoomOutDisabled, onClick: () => {
|
|
75
|
-
model.zoom(bpPerPx * 2);
|
|
76
|
-
}, children: (0, jsx_runtime_1.jsx)(ZoomOut_1.default, {}) }) }) }), (0, jsx_runtime_1.jsx)(material_1.Slider, { size: "small", className: classes.slider, value: value, min: -Math.log2(maxBpPerPx) * 100, max: -Math.log2(minBpPerPx) * 100, onChangeCommitted: () => model.zoomTo(2 ** (-value / 100)), valueLabelDisplay: "auto", valueLabelFormat: newValue => `Window size: ${(0, util_1.getBpDisplayStr)(2 ** (-newValue / 100) * width)}`, slots: {
|
|
77
|
-
valueLabel: ValueLabelComponent,
|
|
78
|
-
}, onChange: (_, val) => {
|
|
79
|
-
setValue(val);
|
|
80
|
-
} }), (0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: "Zoom in 2x", children: (0, jsx_runtime_1.jsx)("span", { children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { "data-testid": "zoom_in", disabled: zoomInDisabled, onClick: () => {
|
|
81
|
-
model.zoom(model.bpPerPx / 2);
|
|
82
|
-
}, children: (0, jsx_runtime_1.jsx)(ZoomIn_1.default, {}) }) }) }), (0, jsx_runtime_1.jsx)(CascadingMenuButton_1.default, { menuItems: [
|
|
83
|
-
...[100, 50, 10].map(r => ({
|
|
84
|
-
label: `Zoom in ${r}x`,
|
|
85
|
-
onClick: () => {
|
|
86
|
-
model.zoom(model.bpPerPx / r);
|
|
87
|
-
},
|
|
88
|
-
})),
|
|
89
|
-
...[10, 50, 100].map(r => ({
|
|
90
|
-
label: `Zoom out ${r}x`,
|
|
91
|
-
onClick: () => {
|
|
92
|
-
model.zoom(model.bpPerPx * r);
|
|
93
|
-
},
|
|
94
|
-
})),
|
|
95
|
-
{
|
|
96
|
-
label: 'Custom zoom',
|
|
97
|
-
onClick: () => {
|
|
98
|
-
(0, util_1.getSession)(model).queueDialog(handleClose => [
|
|
99
|
-
RegionWidthEditorDialog,
|
|
100
|
-
{
|
|
101
|
-
model,
|
|
102
|
-
handleClose,
|
|
103
|
-
},
|
|
104
|
-
]);
|
|
105
|
-
},
|
|
106
|
-
},
|
|
107
|
-
], children: (0, jsx_runtime_1.jsx)(MoreVert_1.default, {}) })] }));
|
|
108
|
-
});
|
|
109
|
-
exports.default = HeaderZoomControls;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { LinearGenomeViewModel } from '../model';
|
|
2
|
-
type LGV = LinearGenomeViewModel;
|
|
3
|
-
declare const Highlight: ({ model, highlight, }: {
|
|
4
|
-
model: LGV;
|
|
5
|
-
highlight: {
|
|
6
|
-
assemblyName: string;
|
|
7
|
-
refName: string;
|
|
8
|
-
start: number;
|
|
9
|
-
end: number;
|
|
10
|
-
};
|
|
11
|
-
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
12
|
-
export default Highlight;
|