@jbrowse/plugin-linear-genome-view 4.3.0 → 5.0.0-beta.2
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/FeatureTrack/configSchema.d.ts +104 -65
- package/esm/FeatureTrack/configSchema.js +47 -1
- package/esm/FeatureTrack/index.js +1 -1
- package/esm/LaunchLinearGenomeView/index.d.ts +14 -0
- package/esm/LaunchLinearGenomeView/index.js +6 -12
- package/esm/LinearGenomeView/afterAttach.d.ts +20 -2
- package/esm/LinearGenomeView/afterAttach.js +250 -121
- package/esm/LinearGenomeView/components/CenterLine.d.ts +1 -1
- package/esm/LinearGenomeView/components/CenterLine.js +16 -7
- package/esm/LinearGenomeView/components/ConnectedHoverHighlight.d.ts +7 -0
- package/esm/LinearGenomeView/components/ConnectedHoverHighlight.js +22 -0
- package/esm/LinearGenomeView/components/CrisprGuidePanel.d.ts +3 -0
- package/esm/LinearGenomeView/components/CrisprGuidePanel.js +144 -0
- package/esm/LinearGenomeView/components/Cytobands.d.ts +6 -6
- package/esm/LinearGenomeView/components/Cytobands.js +76 -53
- package/esm/LinearGenomeView/components/ExportSvgDialog.d.ts +7 -3
- package/esm/LinearGenomeView/components/ExportSvgDialog.js +11 -67
- package/esm/LinearGenomeView/components/GetSequenceDialog.d.ts +5 -9
- package/esm/LinearGenomeView/components/GetSequenceDialog.js +84 -88
- package/esm/LinearGenomeView/components/Gridlines.d.ts +1 -1
- package/esm/LinearGenomeView/components/Gridlines.js +29 -58
- package/esm/LinearGenomeView/components/Header.d.ts +1 -1
- package/esm/LinearGenomeView/components/Header.js +32 -16
- package/esm/LinearGenomeView/components/HeaderClearHighlightButton.d.ts +21 -0
- package/esm/LinearGenomeView/components/HeaderClearHighlightButton.js +35 -0
- package/esm/LinearGenomeView/components/HeaderPanControls.d.ts +3 -2
- package/esm/LinearGenomeView/components/HeaderPanControls.js +16 -7
- package/esm/LinearGenomeView/components/HeaderRegionWidth.d.ts +1 -1
- package/esm/LinearGenomeView/components/HeaderRegionWidth.js +9 -6
- package/esm/LinearGenomeView/components/HeaderSearchBoxRow.d.ts +6 -0
- package/esm/LinearGenomeView/components/HeaderSearchBoxRow.js +27 -0
- package/esm/LinearGenomeView/components/HeaderSearchBoxes.d.ts +5 -0
- package/esm/LinearGenomeView/components/HeaderSearchBoxes.js +28 -0
- package/esm/LinearGenomeView/components/HeaderTrackSelectorButton.d.ts +3 -2
- package/esm/LinearGenomeView/components/HeaderTrackSelectorButton.js +11 -4
- package/esm/LinearGenomeView/components/HeaderZoomControls.d.ts +3 -2
- package/esm/LinearGenomeView/components/HeaderZoomControls.js +67 -51
- package/esm/LinearGenomeView/components/Highlight.d.ts +1 -1
- package/esm/LinearGenomeView/components/Highlight.js +19 -23
- package/esm/LinearGenomeView/components/HighlightBand.d.ts +3 -2
- package/esm/LinearGenomeView/components/HighlightBand.js +25 -8
- package/esm/LinearGenomeView/components/HighlightChip.d.ts +9 -0
- package/esm/LinearGenomeView/components/HighlightChip.js +15 -0
- package/esm/LinearGenomeView/components/HoverPositionHighlight.d.ts +12 -0
- package/esm/LinearGenomeView/components/HoverPositionHighlight.js +25 -0
- package/esm/LinearGenomeView/components/ImportForm.d.ts +3 -4
- package/esm/LinearGenomeView/components/ImportForm.js +95 -61
- package/esm/LinearGenomeView/components/LinearGenomeView.d.ts +1 -1
- package/esm/LinearGenomeView/components/LinearGenomeView.js +6 -5
- package/esm/LinearGenomeView/components/LinearGenomeViewContainer.d.ts +1 -1
- package/esm/LinearGenomeView/components/LinearGenomeViewContainer.js +89 -30
- package/esm/LinearGenomeView/components/MiniControls.d.ts +1 -1
- package/esm/LinearGenomeView/components/MiniControls.js +13 -10
- package/esm/LinearGenomeView/components/MotifListPanel.d.ts +3 -0
- package/esm/LinearGenomeView/components/MotifListPanel.js +59 -0
- package/esm/LinearGenomeView/components/NavigationAnnouncer.d.ts +32 -0
- package/esm/LinearGenomeView/components/NavigationAnnouncer.js +51 -0
- package/esm/LinearGenomeView/components/NoTracksActiveButton.d.ts +1 -1
- package/esm/LinearGenomeView/components/NoTracksActiveButton.js +1 -1
- package/esm/LinearGenomeView/components/OverviewHighlight.d.ts +2 -4
- package/esm/LinearGenomeView/components/OverviewHighlight.js +23 -44
- package/esm/LinearGenomeView/components/OverviewHighlightBand.d.ts +9 -0
- package/esm/LinearGenomeView/components/OverviewHighlightBand.js +26 -0
- package/esm/LinearGenomeView/components/OverviewRubberband.d.ts +3 -3
- package/esm/LinearGenomeView/components/OverviewRubberband.js +44 -57
- package/esm/LinearGenomeView/components/OverviewRubberbandHoverTooltip.d.ts +4 -5
- package/esm/LinearGenomeView/components/OverviewRubberbandHoverTooltip.js +13 -20
- package/esm/LinearGenomeView/components/OverviewScalebar.d.ts +3 -2
- package/esm/LinearGenomeView/components/OverviewScalebar.js +84 -79
- package/esm/LinearGenomeView/components/OverviewScalebarPolygon.d.ts +19 -5
- package/esm/LinearGenomeView/components/OverviewScalebarPolygon.js +55 -32
- package/esm/LinearGenomeView/components/OverviewScalebarTickLabels.d.ts +4 -5
- package/esm/LinearGenomeView/components/OverviewScalebarTickLabels.js +16 -18
- package/esm/LinearGenomeView/components/PaddingBlocks.d.ts +7 -0
- package/esm/LinearGenomeView/components/PaddingBlocks.js +61 -0
- package/esm/LinearGenomeView/components/RangeSelectOverlay.d.ts +9 -0
- package/esm/LinearGenomeView/components/RangeSelectOverlay.js +20 -0
- package/esm/LinearGenomeView/components/RegionWidthEditorDialog.d.ts +2 -3
- package/esm/LinearGenomeView/components/RegionWidthEditorDialog.js +19 -26
- package/esm/LinearGenomeView/components/Rubberband.d.ts +1 -1
- package/esm/LinearGenomeView/components/Rubberband.js +13 -16
- package/esm/LinearGenomeView/components/SVGHighlightBand.d.ts +10 -0
- package/esm/LinearGenomeView/components/SVGHighlightBand.js +9 -0
- package/esm/LinearGenomeView/components/Scalebar.d.ts +2 -2
- package/esm/LinearGenomeView/components/Scalebar.js +16 -21
- package/esm/LinearGenomeView/components/ScalebarCoordinateLabels.d.ts +1 -1
- package/esm/LinearGenomeView/components/ScalebarCoordinateLabels.js +54 -35
- package/esm/LinearGenomeView/components/ScalebarRefNameLabels.d.ts +1 -1
- package/esm/LinearGenomeView/components/ScalebarRefNameLabels.js +142 -126
- package/esm/LinearGenomeView/components/SearchBox.d.ts +22 -2
- package/esm/LinearGenomeView/components/SearchBox.js +58 -66
- package/esm/LinearGenomeView/components/SearchPanelForm.d.ts +9 -0
- package/esm/LinearGenomeView/components/SearchPanelForm.js +18 -0
- package/esm/LinearGenomeView/components/SearchResultsDialog.d.ts +3 -3
- package/esm/LinearGenomeView/components/SearchResultsDialog.js +5 -7
- package/esm/LinearGenomeView/components/SearchResultsTable.d.ts +4 -3
- package/esm/LinearGenomeView/components/SearchResultsTable.js +45 -53
- package/esm/LinearGenomeView/components/SequenceFeatureHoverHighlight.d.ts +5 -0
- package/esm/LinearGenomeView/components/SequenceFeatureHoverHighlight.js +37 -0
- package/esm/LinearGenomeView/components/SequenceFeatureHoverHighlightExtension.d.ts +2 -0
- package/esm/LinearGenomeView/components/SequenceFeatureHoverHighlightExtension.js +5 -0
- package/esm/LinearGenomeView/components/SequencePatternPanel.d.ts +3 -0
- package/esm/LinearGenomeView/components/SequencePatternPanel.js +42 -0
- package/esm/LinearGenomeView/components/SequenceSearchDialog.d.ts +2 -2
- package/esm/LinearGenomeView/components/SequenceSearchDialog.js +31 -53
- package/esm/LinearGenomeView/components/StrandCheckboxes.d.ts +8 -0
- package/esm/LinearGenomeView/components/StrandCheckboxes.js +13 -0
- package/esm/LinearGenomeView/components/TrackContainer.d.ts +1 -1
- package/esm/LinearGenomeView/components/TrackContainer.js +83 -39
- package/esm/LinearGenomeView/components/TrackLabel.d.ts +2 -3
- package/esm/LinearGenomeView/components/TrackLabel.js +11 -24
- package/esm/LinearGenomeView/components/TrackLabelButtons.d.ts +7 -0
- package/esm/LinearGenomeView/components/TrackLabelButtons.js +33 -0
- package/esm/LinearGenomeView/components/TrackLabelDragHandle.d.ts +2 -5
- package/esm/LinearGenomeView/components/TrackLabelDragHandle.js +6 -2
- package/esm/LinearGenomeView/components/TrackLabelMenu.d.ts +1 -1
- package/esm/LinearGenomeView/components/TrackLabelMenu.js +32 -85
- package/esm/LinearGenomeView/components/TrackLabelRefNameWarning.d.ts +22 -0
- package/esm/LinearGenomeView/components/TrackLabelRefNameWarning.js +46 -0
- package/esm/LinearGenomeView/components/TrackRenderingContainer.d.ts +1 -1
- package/esm/LinearGenomeView/components/TrackRenderingContainer.js +72 -18
- package/esm/LinearGenomeView/components/TracksContainer.d.ts +1 -1
- package/esm/LinearGenomeView/components/TracksContainer.js +65 -32
- package/esm/LinearGenomeView/components/VerticalGuide.d.ts +1 -1
- package/esm/LinearGenomeView/components/VerticalGuide.js +6 -13
- package/esm/LinearGenomeView/components/ZoomButton.d.ts +7 -0
- package/esm/LinearGenomeView/components/ZoomButton.js +27 -0
- package/esm/LinearGenomeView/components/ZoomTransform.d.ts +9 -0
- package/esm/LinearGenomeView/components/ZoomTransform.js +37 -0
- package/esm/LinearGenomeView/components/defaultMotifs.d.ts +1 -0
- package/esm/LinearGenomeView/components/defaultMotifs.js +22 -0
- package/esm/LinearGenomeView/components/fetchSequence.d.ts +7 -8
- package/esm/LinearGenomeView/components/fetchSequence.js +17 -9
- package/esm/LinearGenomeView/components/recentLocationsMenu.d.ts +15 -0
- package/esm/LinearGenomeView/components/recentLocationsMenu.js +36 -0
- package/esm/LinearGenomeView/components/searchModes.d.ts +13 -0
- package/esm/LinearGenomeView/components/searchModes.js +22 -0
- package/esm/LinearGenomeView/components/trackLabelMenuItems.d.ts +7 -0
- package/esm/LinearGenomeView/components/trackLabelMenuItems.js +67 -0
- package/esm/LinearGenomeView/components/useRangeSelect.d.ts +11 -66
- package/esm/LinearGenomeView/components/useRangeSelect.js +82 -91
- package/esm/LinearGenomeView/components/useSearchBoxPrefs.d.ts +26 -0
- package/esm/LinearGenomeView/components/useSearchBoxPrefs.js +58 -0
- package/esm/LinearGenomeView/components/useSideScroll.d.ts +1 -1
- package/esm/LinearGenomeView/components/useSideScroll.js +87 -19
- package/esm/LinearGenomeView/components/util.d.ts +20 -6
- package/esm/LinearGenomeView/components/util.js +27 -6
- package/esm/LinearGenomeView/consts.d.ts +7 -2
- package/esm/LinearGenomeView/consts.js +18 -2
- package/esm/LinearGenomeView/flyTo.d.ts +38 -0
- package/esm/LinearGenomeView/flyTo.js +135 -0
- package/esm/LinearGenomeView/headerFit.d.ts +27 -0
- package/esm/LinearGenomeView/headerFit.js +59 -0
- package/esm/LinearGenomeView/index.d.ts +32 -2
- package/esm/LinearGenomeView/index.js +16 -6
- package/esm/LinearGenomeView/initKeys.d.ts +12 -0
- package/esm/LinearGenomeView/initKeys.js +68 -0
- package/esm/LinearGenomeView/keyboardHandler.d.ts +7 -0
- package/esm/LinearGenomeView/keyboardHandler.js +10 -0
- package/esm/LinearGenomeView/launchKeys.d.ts +2 -0
- package/esm/LinearGenomeView/launchKeys.js +23 -0
- package/esm/LinearGenomeView/lazyDialogs.d.ts +7 -11
- package/esm/LinearGenomeView/lazyDialogs.js +3 -3
- package/esm/LinearGenomeView/linkedViewSync.d.ts +20 -0
- package/esm/LinearGenomeView/linkedViewSync.js +58 -0
- package/esm/LinearGenomeView/menuItems.d.ts +27 -2
- package/esm/LinearGenomeView/menuItems.js +137 -101
- package/esm/LinearGenomeView/model.d.ts +3238 -136
- package/esm/LinearGenomeView/model.js +2425 -528
- package/esm/LinearGenomeView/sharedScaleContainer.d.ts +18 -0
- package/esm/LinearGenomeView/sharedScaleContainer.js +17 -0
- package/esm/LinearGenomeView/showRegionsWithUndo.d.ts +35 -0
- package/esm/LinearGenomeView/showRegionsWithUndo.js +44 -0
- package/esm/LinearGenomeView/stickyChrome.d.ts +19 -0
- package/esm/LinearGenomeView/stickyChrome.js +30 -0
- package/esm/LinearGenomeView/svgcomponents/SVGGridlines.d.ts +1 -1
- package/esm/LinearGenomeView/svgcomponents/SVGGridlines.js +15 -16
- package/esm/LinearGenomeView/svgcomponents/SVGHeader.d.ts +2 -3
- package/esm/LinearGenomeView/svgcomponents/SVGHeader.js +45 -33
- package/esm/LinearGenomeView/svgcomponents/SVGHighlights.d.ts +5 -0
- package/esm/LinearGenomeView/svgcomponents/SVGHighlights.js +26 -0
- package/esm/LinearGenomeView/svgcomponents/SVGHighlightsOverlay.d.ts +5 -0
- package/esm/LinearGenomeView/svgcomponents/SVGHighlightsOverlay.js +13 -0
- package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.d.ts +1 -3
- package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +77 -41
- package/esm/LinearGenomeView/svgcomponents/SVGRegionSeparators.d.ts +1 -1
- package/esm/LinearGenomeView/svgcomponents/SVGRegionSeparators.js +23 -3
- package/esm/LinearGenomeView/svgcomponents/SVGRowHeader.d.ts +8 -0
- package/esm/LinearGenomeView/svgcomponents/SVGRowHeader.js +37 -0
- package/esm/LinearGenomeView/svgcomponents/SVGRuler.d.ts +3 -3
- package/esm/LinearGenomeView/svgcomponents/SVGRuler.js +64 -36
- package/esm/LinearGenomeView/svgcomponents/SVGScalebar.d.ts +1 -1
- package/esm/LinearGenomeView/svgcomponents/SVGScalebar.js +7 -5
- package/esm/LinearGenomeView/svgcomponents/SVGTrackLabel.d.ts +5 -3
- package/esm/LinearGenomeView/svgcomponents/SVGTrackLabel.js +43 -7
- package/esm/LinearGenomeView/svgcomponents/SVGTracks.d.ts +8 -14
- package/esm/LinearGenomeView/svgcomponents/SVGTracks.js +16 -21
- package/esm/LinearGenomeView/svgcomponents/SVGView.d.ts +18 -0
- package/esm/LinearGenomeView/svgcomponents/SVGView.js +13 -0
- package/esm/LinearGenomeView/svgcomponents/figureContract.d.ts +45 -0
- package/esm/LinearGenomeView/svgcomponents/figureContract.js +130 -0
- package/esm/LinearGenomeView/svgcomponents/renderViewTracks.d.ts +76 -0
- package/esm/LinearGenomeView/svgcomponents/renderViewTracks.js +66 -0
- package/esm/LinearGenomeView/svgcomponents/useViewSvgFigure.d.ts +70 -0
- package/esm/LinearGenomeView/svgcomponents/useViewSvgFigure.js +263 -0
- package/esm/LinearGenomeView/svgcomponents/util.d.ts +92 -5
- package/esm/LinearGenomeView/svgcomponents/util.js +236 -3
- package/esm/LinearGenomeView/types.d.ts +17 -31
- package/esm/LinearGenomeView/types.js +1 -0
- package/esm/LinearGenomeView/util.d.ts +332 -12
- package/esm/LinearGenomeView/util.js +606 -62
- package/esm/MultiLevelRubberband/MultiLevelRubberband.d.ts +6 -0
- package/esm/MultiLevelRubberband/MultiLevelRubberband.js +37 -0
- package/esm/MultiLevelRubberband/VerticalGuide.d.ts +6 -0
- package/esm/MultiLevelRubberband/VerticalGuide.js +21 -0
- package/esm/MultiLevelRubberband/index.d.ts +2 -0
- package/esm/MultiLevelRubberband/index.js +1 -0
- package/esm/MultiLevelRubberband/types.d.ts +6 -0
- package/esm/MultiLevelRubberband/useRangeSelect.d.ts +24 -0
- package/esm/MultiLevelRubberband/useRangeSelect.js +136 -0
- package/esm/displayKitTests/perRegionTestEnv.d.ts +1286 -0
- package/esm/displayKitTests/perRegionTestEnv.js +138 -0
- package/esm/index.d.ts +122 -1235
- package/esm/index.js +101 -24
- package/esm/lazyPluginExports.d.ts +23 -0
- package/esm/lazyPluginExports.js +36 -0
- package/esm/searchUtils.d.ts +55 -11
- package/esm/searchUtils.js +342 -45
- package/esm/shared/RubberbandSpan.d.ts +15 -0
- package/esm/shared/RubberbandSpan.js +33 -0
- package/esm/shared/coordLabels.d.ts +40 -0
- package/esm/shared/coordLabels.js +119 -0
- package/package.json +18 -19
- package/esm/BaseLinearDisplay/SVGLegend.d.ts +0 -6
- package/esm/BaseLinearDisplay/SVGLegend.js +0 -17
- package/esm/BaseLinearDisplay/calculateSvgLegendWidth.d.ts +0 -2
- package/esm/BaseLinearDisplay/calculateSvgLegendWidth.js +0 -11
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +0 -8
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js +0 -53
- package/esm/BaseLinearDisplay/components/Block.d.ts +0 -14
- package/esm/BaseLinearDisplay/components/Block.js +0 -45
- package/esm/BaseLinearDisplay/components/BlockErrorMessage.d.ts +0 -7
- package/esm/BaseLinearDisplay/components/BlockErrorMessage.js +0 -22
- package/esm/BaseLinearDisplay/components/BlockMsg.d.ts +0 -6
- package/esm/BaseLinearDisplay/components/BlockMsg.js +0 -26
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/CollapseIntronsDialog.d.ts +0 -9
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/CollapseIntronsDialog.js +0 -42
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/TranscriptTable.d.ts +0 -11
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/TranscriptTable.js +0 -40
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/util.d.ts +0 -19
- package/esm/BaseLinearDisplay/components/CollapseIntronsDialog/util.js +0 -45
- package/esm/BaseLinearDisplay/components/FloatingLabels.d.ts +0 -5
- package/esm/BaseLinearDisplay/components/FloatingLabels.js +0 -75
- package/esm/BaseLinearDisplay/components/FloatingLegend.d.ts +0 -8
- package/esm/BaseLinearDisplay/components/FloatingLegend.js +0 -43
- package/esm/BaseLinearDisplay/components/LinearBlocks.d.ts +0 -5
- package/esm/BaseLinearDisplay/components/LinearBlocks.js +0 -23
- package/esm/BaseLinearDisplay/components/LoadingOverlay.d.ts +0 -5
- package/esm/BaseLinearDisplay/components/LoadingOverlay.js +0 -49
- package/esm/BaseLinearDisplay/components/MaxHeightReachedIndicator.d.ts +0 -4
- package/esm/BaseLinearDisplay/components/MaxHeightReachedIndicator.js +0 -26
- package/esm/BaseLinearDisplay/components/MenuPage.d.ts +0 -8
- package/esm/BaseLinearDisplay/components/MenuPage.js +0 -24
- package/esm/BaseLinearDisplay/components/NonBlockCanvasDisplayComponent.d.ts +0 -21
- package/esm/BaseLinearDisplay/components/NonBlockCanvasDisplayComponent.js +0 -52
- package/esm/BaseLinearDisplay/components/RenderedBlocks.d.ts +0 -12
- package/esm/BaseLinearDisplay/components/RenderedBlocks.js +0 -22
- package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.d.ts +0 -12
- package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +0 -18
- package/esm/BaseLinearDisplay/components/TooLargeMessage.d.ts +0 -10
- package/esm/BaseLinearDisplay/components/TooLargeMessage.js +0 -20
- package/esm/BaseLinearDisplay/components/Tooltip.d.ts +0 -13
- package/esm/BaseLinearDisplay/components/Tooltip.js +0 -22
- package/esm/BaseLinearDisplay/components/types.d.ts +0 -1
- package/esm/BaseLinearDisplay/components/util.d.ts +0 -21
- package/esm/BaseLinearDisplay/components/util.js +0 -107
- package/esm/BaseLinearDisplay/index.d.ts +0 -17
- package/esm/BaseLinearDisplay/index.js +0 -13
- package/esm/BaseLinearDisplay/model.d.ts +0 -1197
- package/esm/BaseLinearDisplay/model.js +0 -432
- package/esm/BaseLinearDisplay/models/FeatureDensityMixin.d.ts +0 -32
- package/esm/BaseLinearDisplay/models/FeatureDensityMixin.js +0 -113
- package/esm/BaseLinearDisplay/models/NonBlockCanvasDisplayMixin.d.ts +0 -26
- package/esm/BaseLinearDisplay/models/NonBlockCanvasDisplayMixin.js +0 -57
- package/esm/BaseLinearDisplay/models/SvgFloatingLabels.d.ts +0 -8
- package/esm/BaseLinearDisplay/models/SvgFloatingLabels.js +0 -19
- package/esm/BaseLinearDisplay/models/TrackHeightMixin.d.ts +0 -11
- package/esm/BaseLinearDisplay/models/TrackHeightMixin.js +0 -31
- package/esm/BaseLinearDisplay/models/autorunFeatureDensityStats.d.ts +0 -2
- package/esm/BaseLinearDisplay/models/autorunFeatureDensityStats.js +0 -29
- package/esm/BaseLinearDisplay/models/configSchema.d.ts +0 -29
- package/esm/BaseLinearDisplay/models/configSchema.js +0 -33
- package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.d.ts +0 -98
- package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js +0 -242
- package/esm/BaseLinearDisplay/models/util.d.ts +0 -9
- package/esm/BaseLinearDisplay/models/util.js +0 -43
- package/esm/BaseLinearDisplay/renderSvg.d.ts +0 -3
- package/esm/BaseLinearDisplay/renderSvg.js +0 -63
- package/esm/BaseLinearDisplay/types.d.ts +0 -43
- package/esm/BaseLinearDisplay/types.js +0 -3
- package/esm/BaseLinearDisplay/util.d.ts +0 -16
- package/esm/BaseLinearDisplay/util.js +0 -71
- package/esm/BasicTrack/configSchema.d.ts +0 -85
- package/esm/BasicTrack/configSchema.js +0 -8
- package/esm/BasicTrack/index.d.ts +0 -2
- package/esm/BasicTrack/index.js +0 -12
- package/esm/LinearBareDisplay/configSchema.d.ts +0 -32
- package/esm/LinearBareDisplay/configSchema.js +0 -11
- package/esm/LinearBareDisplay/index.d.ts +0 -4
- package/esm/LinearBareDisplay/index.js +0 -20
- package/esm/LinearBareDisplay/model.d.ts +0 -1196
- package/esm/LinearBareDisplay/model.js +0 -32
- package/esm/LinearBasicDisplay/components/LinearBasicDisplayComponent.d.ts +0 -5
- package/esm/LinearBasicDisplay/components/LinearBasicDisplayComponent.js +0 -9
- package/esm/LinearBasicDisplay/configSchema.d.ts +0 -32
- package/esm/LinearBasicDisplay/configSchema.js +0 -11
- package/esm/LinearBasicDisplay/index.d.ts +0 -4
- package/esm/LinearBasicDisplay/index.js +0 -20
- package/esm/LinearBasicDisplay/model.d.ts +0 -1391
- package/esm/LinearBasicDisplay/model.js +0 -158
- package/esm/LinearFeatureDisplay/components/AddFiltersDialog.d.ts +0 -9
- package/esm/LinearFeatureDisplay/components/AddFiltersDialog.js +0 -58
- package/esm/LinearFeatureDisplay/components/SetMaxHeightDialog.d.ts +0 -8
- package/esm/LinearFeatureDisplay/components/SetMaxHeightDialog.js +0 -26
- package/esm/LinearFeatureDisplay/configSchema.d.ts +0 -32
- package/esm/LinearFeatureDisplay/configSchema.js +0 -11
- package/esm/LinearFeatureDisplay/index.d.ts +0 -3
- package/esm/LinearFeatureDisplay/index.js +0 -2
- package/esm/LinearFeatureDisplay/model.d.ts +0 -1443
- package/esm/LinearFeatureDisplay/model.js +0 -305
- package/esm/LinearGenomeView/SVGErrorBox.d.ts +0 -5
- package/esm/LinearGenomeView/SVGErrorBox.js +0 -4
- package/esm/LinearGenomeView/components/ImportFormRefNameAutocomplete.d.ts +0 -11
- package/esm/LinearGenomeView/components/ImportFormRefNameAutocomplete.js +0 -27
- package/esm/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.d.ts +0 -5
- package/esm/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.js +0 -13
- package/esm/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.d.ts +0 -3
- package/esm/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.js +0 -17
- package/esm/LinearGenomeView/components/RefNameAutocomplete/HelpDialog.d.ts +0 -3
- package/esm/LinearGenomeView/components/RefNameAutocomplete/HelpDialog.js +0 -8
- package/esm/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +0 -16
- package/esm/LinearGenomeView/components/RefNameAutocomplete/index.js +0 -101
- package/esm/LinearGenomeView/components/RefNameAutocomplete/util.d.ts +0 -10
- package/esm/LinearGenomeView/components/RefNameAutocomplete/util.js +0 -45
- package/esm/LinearGenomeView/components/RubberbandSpan.d.ts +0 -15
- package/esm/LinearGenomeView/components/RubberbandSpan.js +0 -32
- package/esm/LinearGenomeView/components/RubberbandTooltip.d.ts +0 -5
- package/esm/LinearGenomeView/components/RubberbandTooltip.js +0 -17
- package/esm/LinearGenomeView/components/TrackLabelContainer.d.ts +0 -8
- package/esm/LinearGenomeView/components/TrackLabelContainer.js +0 -25
- package/esm/LinearGenomeView/components/useWheelScroll.d.ts +0 -7
- package/esm/LinearGenomeView/components/useWheelScroll.js +0 -69
- package/esm/LinearGenomeView/svgExportUtil.d.ts +0 -9
- package/esm/LinearGenomeView/svgExportUtil.js +0 -6
- package/esm/LinearGenomeView/svgcomponents/SVGBackground.d.ts +0 -5
- package/esm/LinearGenomeView/svgcomponents/SVGBackground.js +0 -7
- /package/esm/{BaseLinearDisplay/components → MultiLevelRubberband}/types.js +0 -0
|
@@ -1,9 +1,14 @@
|
|
|
1
1
|
import { TrackSelector as TrackSelectorIcon } from '@jbrowse/core/ui/Icons';
|
|
2
|
-
import {
|
|
2
|
+
import { radioItems } from '@jbrowse/core/ui/menuItems';
|
|
3
|
+
import { assembleLocStrings, getDialogHost, getSession, isSessionWithAddSessionTrack, toLocale, } from '@jbrowse/core/util';
|
|
4
|
+
import { basePaintedAt } from '@jbrowse/core/util/Base1DUtils';
|
|
5
|
+
import { copyText } from '@jbrowse/core/util/copyText';
|
|
3
6
|
import CenterFocusStrongIcon from '@mui/icons-material/CenterFocusStrong';
|
|
4
7
|
import ContentCopyIcon from '@mui/icons-material/ContentCopy';
|
|
8
|
+
import ExpandLessIcon from '@mui/icons-material/ExpandLess';
|
|
9
|
+
import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
|
|
5
10
|
import FolderOpenIcon from '@mui/icons-material/FolderOpen';
|
|
6
|
-
import
|
|
11
|
+
import LaunchIcon from '@mui/icons-material/Launch';
|
|
7
12
|
import MenuOpenIcon from '@mui/icons-material/MenuOpen';
|
|
8
13
|
import PaletteIcon from '@mui/icons-material/Palette';
|
|
9
14
|
import PhotoCameraIcon from '@mui/icons-material/PhotoCamera';
|
|
@@ -11,34 +16,49 @@ import SearchIcon from '@mui/icons-material/Search';
|
|
|
11
16
|
import SyncAltIcon from '@mui/icons-material/SyncAlt';
|
|
12
17
|
import VisibilityIcon from '@mui/icons-material/Visibility';
|
|
13
18
|
import ZoomInIcon from '@mui/icons-material/ZoomIn';
|
|
14
|
-
import { ExportSvgDialog, GetSequenceDialog, ReturnToImportFormDialog, SequenceSearchDialog, } from
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
19
|
+
import { ExportSvgDialog, GetSequenceDialog, ReturnToImportFormDialog, SequenceSearchDialog, } from './lazyDialogs.js';
|
|
20
|
+
const TRACK_LABEL_OPTIONS = [
|
|
21
|
+
{ value: 'overlapping', label: 'Overlapping' },
|
|
22
|
+
{ value: 'offset', label: 'Offset' },
|
|
23
|
+
{ value: 'hidden', label: 'Hidden' },
|
|
24
|
+
];
|
|
25
|
+
/**
|
|
26
|
+
* Zoom all the way out, shared by the view menu and the header's zoom menu —
|
|
27
|
+
* one definition so the two cannot drift in label, and the view menu is the
|
|
28
|
+
* only one of the two that survives `hideHeader`.
|
|
29
|
+
*
|
|
30
|
+
* The zoom menu earns it on the merits: this is the bottom of the same "Zoom
|
|
31
|
+
* out 100x" ladder, and it is where someone already zooming looks.
|
|
32
|
+
*
|
|
33
|
+
* The label is the import form's button text verbatim (`ImportForm.tsx`), which
|
|
34
|
+
* is where most people meet the phrase. No icon: the four-arrows glyph it
|
|
35
|
+
* carried reads as "fullscreen", and nothing else names the same gesture, so a
|
|
36
|
+
* substitute would be decoration rather than a distinction.
|
|
37
|
+
*/
|
|
38
|
+
export function showAllRegionsMenuItem(self) {
|
|
39
|
+
return {
|
|
40
|
+
label: 'Show all regions in assembly',
|
|
41
|
+
onClick: () => {
|
|
42
|
+
self.showAllRegionsInAssembly();
|
|
43
|
+
},
|
|
44
|
+
};
|
|
34
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Build the main view menu items
|
|
48
|
+
*/
|
|
35
49
|
export function buildMenuItems(self) {
|
|
36
50
|
if (!self.hasDisplayedRegions) {
|
|
37
51
|
return [];
|
|
38
52
|
}
|
|
39
|
-
const { canShowCytobands, showCytobands } = self;
|
|
40
53
|
const session = getSession(self);
|
|
41
54
|
const menuItems = [
|
|
55
|
+
{
|
|
56
|
+
label: self.scalebarOnly ? 'Expand tracks' : 'Collapse to ruler',
|
|
57
|
+
icon: self.scalebarOnly ? ExpandMoreIcon : ExpandLessIcon,
|
|
58
|
+
onClick: () => {
|
|
59
|
+
self.setScalebarOnly(!self.scalebarOnly);
|
|
60
|
+
},
|
|
61
|
+
},
|
|
42
62
|
{
|
|
43
63
|
label: 'Return to import form',
|
|
44
64
|
onClick: () => {
|
|
@@ -52,7 +72,7 @@ export function buildMenuItems(self) {
|
|
|
52
72
|
},
|
|
53
73
|
icon: FolderOpenIcon,
|
|
54
74
|
},
|
|
55
|
-
...(
|
|
75
|
+
...(isSessionWithAddSessionTrack(session)
|
|
56
76
|
? [
|
|
57
77
|
{
|
|
58
78
|
label: 'Sequence search',
|
|
@@ -84,16 +104,24 @@ export function buildMenuItems(self) {
|
|
|
84
104
|
},
|
|
85
105
|
{
|
|
86
106
|
label: 'Open track selector',
|
|
87
|
-
onClick:
|
|
107
|
+
onClick: () => {
|
|
108
|
+
self.activateTrackSelector();
|
|
109
|
+
},
|
|
88
110
|
icon: TrackSelectorIcon,
|
|
89
111
|
},
|
|
112
|
+
// Top-level rather than under a "Navigation" group: with scroll-to-zoom
|
|
113
|
+
// gone from here the group held two rows, and a popup for two is a click
|
|
114
|
+
// charged for nothing. Not under "Show...", which is visibility toggles.
|
|
115
|
+
showAllRegionsMenuItem(self),
|
|
90
116
|
{
|
|
91
117
|
label: 'Horizontally flip',
|
|
92
118
|
icon: SyncAltIcon,
|
|
93
|
-
onClick:
|
|
119
|
+
onClick: () => {
|
|
120
|
+
self.horizontallyFlip();
|
|
121
|
+
},
|
|
94
122
|
},
|
|
95
123
|
{
|
|
96
|
-
label: 'Color
|
|
124
|
+
label: 'Color CDS by reading frame',
|
|
97
125
|
type: 'checkbox',
|
|
98
126
|
checked: self.colorByCDS,
|
|
99
127
|
icon: PaletteIcon,
|
|
@@ -105,10 +133,6 @@ export function buildMenuItems(self) {
|
|
|
105
133
|
label: 'Show...',
|
|
106
134
|
icon: VisibilityIcon,
|
|
107
135
|
subMenu: [
|
|
108
|
-
{
|
|
109
|
-
label: 'Show all regions in assembly',
|
|
110
|
-
onClick: self.showAllRegionsInAssembly,
|
|
111
|
-
},
|
|
112
136
|
{
|
|
113
137
|
label: 'Show center line',
|
|
114
138
|
type: 'checkbox',
|
|
@@ -121,6 +145,10 @@ export function buildMenuItems(self) {
|
|
|
121
145
|
label: 'Show header',
|
|
122
146
|
type: 'checkbox',
|
|
123
147
|
checked: !self.hideHeader,
|
|
148
|
+
// opts out of the checkbox "stay open" default: with the header
|
|
149
|
+
// hidden these same items are reachable from MiniControls, which this
|
|
150
|
+
// row unmounts — leaving the menu anchored to a removed node
|
|
151
|
+
keepMenuOpen: false,
|
|
124
152
|
onClick: () => {
|
|
125
153
|
self.setHideHeader(!self.hideHeader);
|
|
126
154
|
},
|
|
@@ -150,6 +178,16 @@ export function buildMenuItems(self) {
|
|
|
150
178
|
self.setHideNoTracksActive(!self.hideNoTracksActive);
|
|
151
179
|
},
|
|
152
180
|
},
|
|
181
|
+
{
|
|
182
|
+
// no icon: the palette it used to carry sat directly against the
|
|
183
|
+
// color-by-CDS one above it, which is the reason it moved here
|
|
184
|
+
label: 'Show amino acids when zoomed in',
|
|
185
|
+
type: 'checkbox',
|
|
186
|
+
checked: self.showAminoAcids,
|
|
187
|
+
onClick: () => {
|
|
188
|
+
self.setShowAminoAcids(!self.showAminoAcids);
|
|
189
|
+
},
|
|
190
|
+
},
|
|
153
191
|
{
|
|
154
192
|
label: 'Show guidelines',
|
|
155
193
|
type: 'checkbox',
|
|
@@ -158,95 +196,74 @@ export function buildMenuItems(self) {
|
|
|
158
196
|
self.setShowGridlines(!self.showGridlines);
|
|
159
197
|
},
|
|
160
198
|
},
|
|
161
|
-
...(canShowCytobands
|
|
199
|
+
...(self.canShowCytobands
|
|
162
200
|
? [
|
|
163
201
|
{
|
|
164
202
|
label: 'Show ideogram',
|
|
165
203
|
type: 'checkbox',
|
|
166
204
|
checked: self.showCytobands,
|
|
167
205
|
onClick: () => {
|
|
168
|
-
self.setShowCytobands(!showCytobands);
|
|
206
|
+
self.setShowCytobands(!self.showCytobands);
|
|
169
207
|
},
|
|
170
208
|
},
|
|
171
209
|
]
|
|
172
210
|
: []),
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
onClick: () => {
|
|
185
|
-
self.setTrackLabels('overlapping');
|
|
186
|
-
},
|
|
187
|
-
},
|
|
188
|
-
{
|
|
189
|
-
label: 'Offset',
|
|
190
|
-
icon: VisibilityIcon,
|
|
191
|
-
type: 'radio',
|
|
192
|
-
checked: self.trackLabelsSetting === 'offset',
|
|
193
|
-
onClick: () => {
|
|
194
|
-
self.setTrackLabels('offset');
|
|
195
|
-
},
|
|
196
|
-
},
|
|
197
|
-
{
|
|
198
|
-
label: 'Hidden',
|
|
199
|
-
icon: VisibilityIcon,
|
|
200
|
-
type: 'radio',
|
|
201
|
-
checked: self.trackLabelsSetting === 'hidden',
|
|
202
|
-
onClick: () => {
|
|
203
|
-
self.setTrackLabels('hidden');
|
|
204
|
-
},
|
|
205
|
-
},
|
|
211
|
+
// Where a track's name is drawn, and "Hidden" is one of the three
|
|
212
|
+
// answers, so this is a visibility setting like everything above it.
|
|
213
|
+
// Inline under a subheader rather than in a submenu of its own: it was a
|
|
214
|
+
// top-level row for three radios, and nesting it here instead would have
|
|
215
|
+
// put those radios a popup further from the hamburger than they were.
|
|
216
|
+
// The icons went with it — all three rows carried the same one, which
|
|
217
|
+
// told a reader nothing about which to pick.
|
|
218
|
+
{ type: 'subHeader', label: 'Track labels' },
|
|
219
|
+
...radioItems(TRACK_LABEL_OPTIONS, self.effectiveTrackLabels, setting => {
|
|
220
|
+
self.setTrackLabels(setting);
|
|
221
|
+
}),
|
|
206
222
|
],
|
|
207
223
|
},
|
|
208
224
|
];
|
|
209
|
-
for (const [key, value] of self.trackTypeActions.entries()) {
|
|
210
|
-
if (value.length) {
|
|
211
|
-
menuItems.push({
|
|
212
|
-
type: 'divider',
|
|
213
|
-
}, {
|
|
214
|
-
type: 'subHeader',
|
|
215
|
-
label: key,
|
|
216
|
-
});
|
|
217
|
-
for (const action of value) {
|
|
218
|
-
menuItems.push(action);
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
225
|
return menuItems;
|
|
223
226
|
}
|
|
224
|
-
|
|
227
|
+
/**
|
|
228
|
+
* Build rubberband selection menu items. `launchItems` are the plugin-supplied
|
|
229
|
+
* things a selection can start (`rubberBandLaunchMenuItems()`); they collect
|
|
230
|
+
* under one "Launch" submenu so the menu stays three actions plus a group
|
|
231
|
+
* however many plugins are loaded, and vanish entirely when none apply.
|
|
232
|
+
*/
|
|
233
|
+
export function buildRubberBandMenuItems(self, launchItems) {
|
|
234
|
+
// captured once here and used by the items below rather than re-read inside
|
|
235
|
+
// their onClick: the menu's onClose runs first and may release the selection,
|
|
236
|
+
// which would leave the click reading undefined and silently doing nothing
|
|
225
237
|
const { leftOffset, rightOffset } = self;
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
238
|
+
// The same regions `Get sequence` fetches and `Zoom to region` navigates to,
|
|
239
|
+
// named the way the header names what it is showing. Arithmetic on the two
|
|
240
|
+
// offsets' `coord` cannot do this: `coord` is the POINT convention, so on a
|
|
241
|
+
// reversed region it names neither the base painted at the pixel nor the ends
|
|
242
|
+
// in ascending order, and a `leftRef === rightRef` test calls a selection
|
|
243
|
+
// crossing a collapsed intron one range when it is two.
|
|
244
|
+
const rangeString = assembleLocStrings(self.getSelectedRegions(leftOffset, rightOffset));
|
|
233
245
|
return [
|
|
234
246
|
{
|
|
235
247
|
label: 'Zoom to region',
|
|
236
248
|
icon: ZoomInIcon,
|
|
237
249
|
onClick: () => {
|
|
238
|
-
self.moveTo(
|
|
250
|
+
self.moveTo(leftOffset, rightOffset);
|
|
239
251
|
},
|
|
240
252
|
},
|
|
241
253
|
{
|
|
242
254
|
label: 'Get sequence',
|
|
243
255
|
icon: MenuOpenIcon,
|
|
244
256
|
onClick: () => {
|
|
245
|
-
|
|
257
|
+
const regions = self.getSelectedRegions(leftOffset, rightOffset);
|
|
258
|
+
getDialogHost(self).queueDialog(handleClose => [
|
|
246
259
|
GetSequenceDialog,
|
|
247
260
|
{
|
|
248
261
|
model: self,
|
|
249
|
-
|
|
262
|
+
regions,
|
|
263
|
+
handleClose: () => {
|
|
264
|
+
handleClose();
|
|
265
|
+
self.setOffsets();
|
|
266
|
+
},
|
|
250
267
|
},
|
|
251
268
|
]);
|
|
252
269
|
},
|
|
@@ -254,41 +271,60 @@ export function buildRubberBandMenuItems(self) {
|
|
|
254
271
|
{
|
|
255
272
|
label: 'Copy range',
|
|
256
273
|
icon: ContentCopyIcon,
|
|
257
|
-
onClick:
|
|
258
|
-
|
|
259
|
-
copy(rangeString);
|
|
274
|
+
onClick: () => {
|
|
275
|
+
void copyText(self, rangeString, 'range');
|
|
260
276
|
},
|
|
261
277
|
},
|
|
278
|
+
...(launchItems.length
|
|
279
|
+
? [
|
|
280
|
+
{
|
|
281
|
+
label: 'Launch',
|
|
282
|
+
icon: LaunchIcon,
|
|
283
|
+
type: 'subMenu',
|
|
284
|
+
subMenu: launchItems,
|
|
285
|
+
},
|
|
286
|
+
]
|
|
287
|
+
: []),
|
|
262
288
|
];
|
|
263
289
|
}
|
|
290
|
+
/**
|
|
291
|
+
* Build rubberband click menu items (single click on rubberband area)
|
|
292
|
+
*/
|
|
264
293
|
export function buildRubberbandClickMenuItems(self, clickOffset) {
|
|
265
|
-
const {
|
|
266
|
-
if (
|
|
294
|
+
const { refName, start, end, reversed, offset } = clickOffset;
|
|
295
|
+
if (refName === undefined || start === undefined || end === undefined) {
|
|
267
296
|
return [];
|
|
268
297
|
}
|
|
269
|
-
|
|
298
|
+
// `basePaintedAt`, not `coord`: `coord` is the point convention, which on a
|
|
299
|
+
// reversed region names the base one PAST the one under the pointer — and at
|
|
300
|
+
// the region's first column names a base off the end of the contig entirely.
|
|
301
|
+
// Forward the two agree, so this only ever moves the reversed answer.
|
|
302
|
+
//
|
|
303
|
+
// The result is 0-based, which is what `centerAt` takes (it goes through
|
|
304
|
+
// `bpToPx`); the label adds the 1 back.
|
|
305
|
+
const coord0 = basePaintedAt({ start, end, reversed }, offset);
|
|
306
|
+
const locString = `${refName}:${toLocale(coord0 + 1)}`;
|
|
270
307
|
return [
|
|
271
308
|
{
|
|
272
309
|
label: 'Center view here',
|
|
273
310
|
icon: CenterFocusStrongIcon,
|
|
274
311
|
onClick: () => {
|
|
275
|
-
self.centerAt(
|
|
312
|
+
self.centerAt(coord0, refName);
|
|
276
313
|
},
|
|
277
314
|
},
|
|
278
315
|
{
|
|
279
316
|
label: 'Zoom to base level',
|
|
280
317
|
icon: ZoomInIcon,
|
|
281
318
|
onClick: () => {
|
|
282
|
-
self.centerAt(
|
|
319
|
+
self.centerAt(coord0, refName);
|
|
283
320
|
self.zoomTo(self.minBpPerPx);
|
|
284
321
|
},
|
|
285
322
|
},
|
|
286
323
|
{
|
|
287
324
|
label: `Copy coordinate (${locString})`,
|
|
288
325
|
icon: ContentCopyIcon,
|
|
289
|
-
onClick:
|
|
290
|
-
|
|
291
|
-
copy(locString);
|
|
326
|
+
onClick: () => {
|
|
327
|
+
void copyText(self, locString, 'coordinate');
|
|
292
328
|
},
|
|
293
329
|
},
|
|
294
330
|
];
|