@jbrowse/plugin-linear-genome-view 2.2.1 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +2 -1
- package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js +4 -2
- package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js.map +1 -1
- package/dist/BaseLinearDisplay/components/Block.d.ts +1 -1
- package/dist/BaseLinearDisplay/components/Block.js +1 -1
- package/dist/BaseLinearDisplay/components/Block.js.map +1 -1
- package/dist/BaseLinearDisplay/components/BlockMsg.js +3 -2
- package/dist/BaseLinearDisplay/components/BlockMsg.js.map +1 -1
- package/dist/BaseLinearDisplay/components/LinearBlocks.d.ts +1 -1
- package/dist/BaseLinearDisplay/components/LinearBlocks.js +2 -2
- package/dist/BaseLinearDisplay/components/LinearBlocks.js.map +1 -1
- package/dist/BaseLinearDisplay/{models → components}/TooLargeMessage.d.ts +0 -0
- package/dist/BaseLinearDisplay/{models → components}/TooLargeMessage.js +0 -0
- package/dist/BaseLinearDisplay/components/TooLargeMessage.js.map +1 -0
- package/dist/BaseLinearDisplay/index.d.ts +2 -2
- package/dist/BaseLinearDisplay/index.js +4 -3
- package/dist/BaseLinearDisplay/index.js.map +1 -1
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +6 -14
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js +3 -5
- package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js.map +1 -1
- package/dist/BaseLinearDisplay/models/configSchema.d.ts +2 -0
- package/dist/BaseLinearDisplay/models/{baseLinearDisplayConfigSchema.js → configSchema.js} +5 -5
- package/dist/BaseLinearDisplay/models/configSchema.js.map +1 -0
- package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js +1 -1
- package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js.map +1 -1
- package/dist/BaseLinearDisplay/models/util.d.ts +18 -0
- package/dist/BaseLinearDisplay/models/util.js +18 -0
- package/dist/BaseLinearDisplay/models/util.js.map +1 -0
- package/dist/FeatureTrack/index.d.ts +1 -1
- package/dist/FeatureTrack/index.js +5 -4
- package/dist/FeatureTrack/index.js.map +1 -1
- package/dist/LaunchLinearGenomeView/index.d.ts +3 -0
- package/dist/LaunchLinearGenomeView/index.js +44 -0
- package/dist/LaunchLinearGenomeView/index.js.map +1 -0
- package/dist/LinearBareDisplay/index.d.ts +6 -2
- package/dist/LinearBareDisplay/index.js +18 -2
- package/dist/LinearBareDisplay/index.js.map +1 -1
- package/dist/LinearBareDisplay/model.d.ts +1 -1
- package/dist/LinearBasicDisplay/components/SetMaxHeight.js +2 -15
- package/dist/LinearBasicDisplay/components/SetMaxHeight.js.map +1 -1
- package/dist/LinearBasicDisplay/index.d.ts +6 -2
- package/dist/LinearBasicDisplay/index.js +21 -4
- package/dist/LinearBasicDisplay/index.js.map +1 -1
- package/dist/LinearBasicDisplay/model.d.ts +17 -13
- package/dist/LinearBasicDisplay/model.js +2 -1
- package/dist/LinearBasicDisplay/model.js.map +1 -1
- package/dist/LinearGenomeView/components/ExportSvgDialog.js +1 -19
- package/dist/LinearGenomeView/components/ExportSvgDialog.js.map +1 -1
- package/dist/LinearGenomeView/components/GetSequenceDialog.js +7 -18
- package/dist/LinearGenomeView/components/GetSequenceDialog.js.map +1 -1
- package/dist/LinearGenomeView/components/Header.js +2 -2
- package/dist/LinearGenomeView/components/HelpDialog.js +2 -17
- package/dist/LinearGenomeView/components/HelpDialog.js.map +1 -1
- package/dist/LinearGenomeView/components/ImportForm.js +15 -10
- package/dist/LinearGenomeView/components/ImportForm.js.map +1 -1
- package/dist/LinearGenomeView/components/LinearGenomeViewSvg.js +6 -7
- package/dist/LinearGenomeView/components/LinearGenomeViewSvg.js.map +1 -1
- package/{esm/LinearGenomeView/components/OverviewRubberBand.d.ts → dist/LinearGenomeView/components/OverviewRubberband.d.ts} +2 -2
- package/dist/LinearGenomeView/components/{OverviewRubberBand.js → OverviewRubberband.js} +27 -79
- package/dist/LinearGenomeView/components/OverviewRubberband.js.map +1 -0
- package/dist/LinearGenomeView/components/{OverviewScaleBar.d.ts → OverviewScalebar.d.ts} +2 -2
- package/dist/LinearGenomeView/components/{OverviewScaleBar.js → OverviewScalebar.js} +25 -24
- package/dist/LinearGenomeView/components/OverviewScalebar.js.map +1 -0
- package/dist/LinearGenomeView/components/RefNameAutocomplete.js +1 -1
- package/dist/LinearGenomeView/components/RefNameAutocomplete.js.map +1 -1
- package/dist/LinearGenomeView/components/{RubberBand.d.ts → Rubberband.d.ts} +2 -2
- package/dist/LinearGenomeView/components/Rubberband.js +57 -0
- package/dist/LinearGenomeView/components/Rubberband.js.map +1 -0
- package/dist/LinearGenomeView/components/RubberbandSpan.d.ts +14 -0
- package/dist/LinearGenomeView/components/RubberbandSpan.js +90 -0
- package/dist/LinearGenomeView/components/RubberbandSpan.js.map +1 -0
- package/dist/LinearGenomeView/components/Ruler.d.ts +2 -18
- package/dist/LinearGenomeView/components/Ruler.js +9 -25
- package/dist/LinearGenomeView/components/Ruler.js.map +1 -1
- package/dist/LinearGenomeView/components/{ScaleBar.d.ts → Scalebar.d.ts} +2 -2
- package/dist/LinearGenomeView/components/{ScaleBar.js → Scalebar.js} +11 -11
- package/dist/LinearGenomeView/components/{ScaleBar.js.map → Scalebar.js.map} +1 -1
- package/dist/LinearGenomeView/components/SearchBox.js +10 -6
- package/dist/LinearGenomeView/components/SearchBox.js.map +1 -1
- package/dist/LinearGenomeView/components/SearchResultsDialog.js +17 -31
- package/dist/LinearGenomeView/components/SearchResultsDialog.js.map +1 -1
- package/dist/LinearGenomeView/components/SequenceSearchDialog.js +4 -19
- package/dist/LinearGenomeView/components/SequenceSearchDialog.js.map +1 -1
- package/dist/LinearGenomeView/components/TrackContainer.js +2 -2
- package/dist/LinearGenomeView/components/TrackContainer.js.map +1 -1
- package/dist/LinearGenomeView/components/TracksContainer.js +21 -118
- package/dist/LinearGenomeView/components/TracksContainer.js.map +1 -1
- package/dist/LinearGenomeView/components/VerticalGuide.d.ts +9 -0
- package/dist/LinearGenomeView/components/VerticalGuide.js +29 -0
- package/dist/LinearGenomeView/components/VerticalGuide.js.map +1 -0
- package/dist/LinearGenomeView/components/hooks.d.ts +65 -0
- package/dist/LinearGenomeView/components/hooks.js +264 -0
- package/dist/LinearGenomeView/components/hooks.js.map +1 -0
- package/dist/LinearGenomeView/components/util.d.ts +5 -2
- package/dist/LinearGenomeView/components/util.js +7 -6
- package/dist/LinearGenomeView/components/util.js.map +1 -1
- package/dist/LinearGenomeView/index.d.ts +3 -534
- package/dist/LinearGenomeView/index.js +12 -1327
- package/dist/LinearGenomeView/index.js.map +1 -1
- package/dist/LinearGenomeView/model.d.ts +535 -0
- package/dist/LinearGenomeView/model.js +1357 -0
- package/dist/LinearGenomeView/model.js.map +1 -0
- package/dist/index.d.ts +6 -6
- package/dist/index.js +12 -73
- package/dist/index.js.map +1 -1
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +2 -1
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js +3 -2
- package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js.map +1 -1
- package/esm/BaseLinearDisplay/components/Block.d.ts +1 -1
- package/esm/BaseLinearDisplay/components/Block.js +1 -1
- package/esm/BaseLinearDisplay/components/Block.js.map +1 -1
- package/esm/BaseLinearDisplay/components/BlockMsg.js +3 -2
- package/esm/BaseLinearDisplay/components/BlockMsg.js.map +1 -1
- package/esm/BaseLinearDisplay/components/LinearBlocks.d.ts +1 -1
- package/esm/BaseLinearDisplay/components/LinearBlocks.js +2 -2
- package/esm/BaseLinearDisplay/components/LinearBlocks.js.map +1 -1
- package/esm/BaseLinearDisplay/{models → components}/TooLargeMessage.d.ts +0 -0
- package/esm/BaseLinearDisplay/{models → components}/TooLargeMessage.js +0 -0
- package/esm/BaseLinearDisplay/components/TooLargeMessage.js.map +1 -0
- package/esm/BaseLinearDisplay/index.d.ts +2 -2
- package/esm/BaseLinearDisplay/index.js +2 -2
- package/esm/BaseLinearDisplay/index.js.map +1 -1
- package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +6 -14
- package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js +3 -5
- package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js.map +1 -1
- package/esm/BaseLinearDisplay/models/configSchema.d.ts +2 -0
- package/esm/BaseLinearDisplay/models/{baseLinearDisplayConfigSchema.js → configSchema.js} +5 -4
- package/esm/BaseLinearDisplay/models/configSchema.js.map +1 -0
- package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js +1 -1
- package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js.map +1 -1
- package/esm/BaseLinearDisplay/models/util.d.ts +18 -0
- package/esm/BaseLinearDisplay/models/util.js +14 -0
- package/esm/BaseLinearDisplay/models/util.js.map +1 -0
- package/esm/FeatureTrack/index.d.ts +1 -1
- package/esm/FeatureTrack/index.js +5 -4
- package/esm/FeatureTrack/index.js.map +1 -1
- package/esm/LaunchLinearGenomeView/index.d.ts +3 -0
- package/esm/LaunchLinearGenomeView/index.js +42 -0
- package/esm/LaunchLinearGenomeView/index.js.map +1 -0
- package/esm/LinearBareDisplay/index.d.ts +6 -2
- package/esm/LinearBareDisplay/index.js +19 -2
- package/esm/LinearBareDisplay/index.js.map +1 -1
- package/esm/LinearBareDisplay/model.d.ts +1 -1
- package/esm/LinearBasicDisplay/components/SetMaxHeight.js +3 -13
- package/esm/LinearBasicDisplay/components/SetMaxHeight.js.map +1 -1
- package/esm/LinearBasicDisplay/index.d.ts +6 -2
- package/esm/LinearBasicDisplay/index.js +20 -2
- package/esm/LinearBasicDisplay/index.js.map +1 -1
- package/esm/LinearBasicDisplay/model.d.ts +17 -13
- package/esm/LinearBasicDisplay/model.js +2 -1
- package/esm/LinearBasicDisplay/model.js.map +1 -1
- package/esm/LinearGenomeView/components/ExportSvgDialog.js +3 -18
- package/esm/LinearGenomeView/components/ExportSvgDialog.js.map +1 -1
- package/esm/LinearGenomeView/components/GetSequenceDialog.js +8 -19
- package/esm/LinearGenomeView/components/GetSequenceDialog.js.map +1 -1
- package/esm/LinearGenomeView/components/Header.js +2 -2
- package/esm/LinearGenomeView/components/HelpDialog.js +3 -18
- package/esm/LinearGenomeView/components/HelpDialog.js.map +1 -1
- package/esm/LinearGenomeView/components/ImportForm.js +15 -10
- package/esm/LinearGenomeView/components/ImportForm.js.map +1 -1
- package/esm/LinearGenomeView/components/LinearGenomeViewSvg.js +4 -5
- package/esm/LinearGenomeView/components/LinearGenomeViewSvg.js.map +1 -1
- package/{dist/LinearGenomeView/components/OverviewRubberBand.d.ts → esm/LinearGenomeView/components/OverviewRubberband.d.ts} +2 -2
- package/esm/LinearGenomeView/components/{OverviewRubberBand.js → OverviewRubberband.js} +25 -80
- package/esm/LinearGenomeView/components/OverviewRubberband.js.map +1 -0
- package/esm/LinearGenomeView/components/{OverviewScaleBar.d.ts → OverviewScalebar.d.ts} +2 -2
- package/esm/LinearGenomeView/components/{OverviewScaleBar.js → OverviewScalebar.js} +25 -24
- package/esm/LinearGenomeView/components/OverviewScalebar.js.map +1 -0
- package/esm/LinearGenomeView/components/RefNameAutocomplete.js +1 -1
- package/esm/LinearGenomeView/components/RefNameAutocomplete.js.map +1 -1
- package/esm/LinearGenomeView/components/{RubberBand.d.ts → Rubberband.d.ts} +2 -2
- package/esm/LinearGenomeView/components/Rubberband.js +29 -0
- package/esm/LinearGenomeView/components/Rubberband.js.map +1 -0
- package/esm/LinearGenomeView/components/RubberbandSpan.d.ts +14 -0
- package/esm/LinearGenomeView/components/RubberbandSpan.js +65 -0
- package/esm/LinearGenomeView/components/RubberbandSpan.js.map +1 -0
- package/esm/LinearGenomeView/components/Ruler.d.ts +2 -18
- package/esm/LinearGenomeView/components/Ruler.js +6 -22
- package/esm/LinearGenomeView/components/Ruler.js.map +1 -1
- package/esm/LinearGenomeView/components/{ScaleBar.d.ts → Scalebar.d.ts} +2 -2
- package/esm/LinearGenomeView/components/{ScaleBar.js → Scalebar.js} +11 -11
- package/esm/LinearGenomeView/components/{ScaleBar.js.map → Scalebar.js.map} +1 -1
- package/esm/LinearGenomeView/components/SearchBox.js +10 -6
- package/esm/LinearGenomeView/components/SearchBox.js.map +1 -1
- package/esm/LinearGenomeView/components/SearchResultsDialog.js +18 -32
- package/esm/LinearGenomeView/components/SearchResultsDialog.js.map +1 -1
- package/esm/LinearGenomeView/components/SequenceSearchDialog.js +5 -17
- package/esm/LinearGenomeView/components/SequenceSearchDialog.js.map +1 -1
- package/esm/LinearGenomeView/components/TrackContainer.js +2 -2
- package/esm/LinearGenomeView/components/TrackContainer.js.map +1 -1
- package/esm/LinearGenomeView/components/TracksContainer.js +22 -119
- package/esm/LinearGenomeView/components/TracksContainer.js.map +1 -1
- package/esm/LinearGenomeView/components/VerticalGuide.d.ts +9 -0
- package/esm/LinearGenomeView/components/VerticalGuide.js +24 -0
- package/esm/LinearGenomeView/components/VerticalGuide.js.map +1 -0
- package/esm/LinearGenomeView/components/hooks.d.ts +65 -0
- package/esm/LinearGenomeView/components/hooks.js +255 -0
- package/esm/LinearGenomeView/components/hooks.js.map +1 -0
- package/esm/LinearGenomeView/components/util.d.ts +5 -2
- package/esm/LinearGenomeView/components/util.js +4 -3
- package/esm/LinearGenomeView/components/util.js.map +1 -1
- package/esm/LinearGenomeView/index.d.ts +3 -534
- package/esm/LinearGenomeView/index.js +10 -1318
- package/esm/LinearGenomeView/index.js.map +1 -1
- package/esm/LinearGenomeView/model.d.ts +535 -0
- package/esm/LinearGenomeView/model.js +1322 -0
- package/esm/LinearGenomeView/model.js.map +1 -0
- package/esm/index.d.ts +6 -6
- package/esm/index.js +12 -74
- package/esm/index.js.map +1 -1
- package/package.json +5 -6
- package/src/BaseLinearDisplay/components/BaseLinearDisplay.tsx +86 -84
- package/src/BaseLinearDisplay/components/Block.tsx +15 -11
- package/src/BaseLinearDisplay/components/BlockMsg.tsx +9 -9
- package/src/BaseLinearDisplay/components/LinearBlocks.tsx +62 -58
- package/src/BaseLinearDisplay/{models → components}/TooLargeMessage.tsx +0 -0
- package/src/BaseLinearDisplay/index.ts +2 -1
- package/src/BaseLinearDisplay/models/BaseLinearDisplayModel.tsx +4 -3
- package/src/BaseLinearDisplay/models/{baseLinearDisplayConfigSchema.ts → configSchema.ts} +5 -3
- package/src/BaseLinearDisplay/models/serverSideRenderedBlock.ts +1 -1
- package/src/BaseLinearDisplay/models/util.ts +24 -0
- package/src/FeatureTrack/index.ts +5 -8
- package/src/LaunchLinearGenomeView/index.ts +66 -0
- package/src/LinearBareDisplay/index.ts +23 -2
- package/src/LinearBasicDisplay/components/SetMaxHeight.tsx +3 -28
- package/src/LinearBasicDisplay/index.ts +24 -2
- package/src/LinearBasicDisplay/model.ts +2 -1
- package/src/LinearGenomeView/README.md +2 -1
- package/src/LinearGenomeView/components/ExportSvgDialog.tsx +2 -23
- package/src/LinearGenomeView/components/GetSequenceDialog.tsx +13 -31
- package/src/LinearGenomeView/components/Header.tsx +3 -3
- package/src/LinearGenomeView/components/HelpDialog.tsx +8 -34
- package/src/LinearGenomeView/components/ImportForm.tsx +13 -9
- package/src/LinearGenomeView/components/LinearGenomeView.test.tsx +132 -134
- package/src/LinearGenomeView/components/LinearGenomeViewSvg.tsx +4 -5
- package/src/LinearGenomeView/components/{OverviewRubberBand.tsx → OverviewRubberband.tsx} +32 -114
- package/src/LinearGenomeView/components/{OverviewScaleBar.tsx → OverviewScalebar.tsx} +26 -25
- package/src/LinearGenomeView/components/RefNameAutocomplete.tsx +2 -1
- package/src/LinearGenomeView/components/Rubberband.tsx +89 -0
- package/src/LinearGenomeView/components/RubberbandSpan.tsx +116 -0
- package/src/LinearGenomeView/components/Ruler.tsx +11 -28
- package/src/LinearGenomeView/components/{ScaleBar.test.tsx → Scalebar.test.tsx} +5 -5
- package/src/LinearGenomeView/components/{ScaleBar.tsx → Scalebar.tsx} +11 -11
- package/src/LinearGenomeView/components/SearchBox.tsx +8 -6
- package/src/LinearGenomeView/components/SearchResultsDialog.tsx +17 -44
- package/src/LinearGenomeView/components/SequenceSearchDialog.tsx +4 -30
- package/src/LinearGenomeView/components/TrackContainer.tsx +4 -2
- package/src/LinearGenomeView/components/TracksContainer.tsx +59 -136
- package/src/LinearGenomeView/components/VerticalGuide.tsx +37 -0
- package/src/LinearGenomeView/components/__snapshots__/LinearGenomeView.test.tsx.snap +39 -44
- package/src/LinearGenomeView/components/hooks.ts +300 -0
- package/src/LinearGenomeView/components/util.ts +8 -11
- package/src/LinearGenomeView/index.test.ts +6 -7
- package/src/LinearGenomeView/index.ts +18 -0
- package/src/LinearGenomeView/{index.tsx → model.ts} +7 -4
- package/src/index.ts +16 -108
- package/dist/BaseLinearDisplay/models/TooLargeMessage.js.map +0 -1
- package/dist/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.d.ts +0 -1
- package/dist/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.js.map +0 -1
- package/dist/LinearGenomeView/components/OverviewRubberBand.js.map +0 -1
- package/dist/LinearGenomeView/components/OverviewScaleBar.js.map +0 -1
- package/dist/LinearGenomeView/components/RubberBand.js +0 -221
- package/dist/LinearGenomeView/components/RubberBand.js.map +0 -1
- package/esm/BaseLinearDisplay/models/TooLargeMessage.js.map +0 -1
- package/esm/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.d.ts +0 -1
- package/esm/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.js.map +0 -1
- package/esm/LinearGenomeView/components/OverviewRubberBand.js.map +0 -1
- package/esm/LinearGenomeView/components/OverviewScaleBar.js.map +0 -1
- package/esm/LinearGenomeView/components/RubberBand.js +0 -196
- package/esm/LinearGenomeView/components/RubberBand.js.map +0 -1
- package/src/LinearGenomeView/components/RubberBand.tsx +0 -308
|
@@ -2,49 +2,50 @@ import React from 'react';
|
|
|
2
2
|
import { Typography, useTheme, alpha } from '@mui/material';
|
|
3
3
|
import { makeStyles } from 'tss-react/mui';
|
|
4
4
|
import { observer } from 'mobx-react';
|
|
5
|
+
// core
|
|
5
6
|
import Base1DView from '@jbrowse/core/util/Base1DViewModel';
|
|
6
7
|
import { getSession, getTickDisplayStr } from '@jbrowse/core/util';
|
|
7
8
|
import { ContentBlock } from '@jbrowse/core/util/blockTypes';
|
|
8
9
|
// locals
|
|
9
10
|
import { HEADER_BAR_HEIGHT, HEADER_OVERVIEW_HEIGHT, } from '..';
|
|
10
11
|
import { chooseGridPitch } from '../util';
|
|
11
|
-
import
|
|
12
|
+
import OverviewRubberband from './OverviewRubberband';
|
|
12
13
|
const wholeSeqSpacer = 2;
|
|
13
14
|
const useStyles = makeStyles()(theme => ({
|
|
14
|
-
|
|
15
|
+
scalebar: {
|
|
15
16
|
height: HEADER_OVERVIEW_HEIGHT,
|
|
16
17
|
},
|
|
17
|
-
|
|
18
|
+
scalebarBorder: {
|
|
18
19
|
border: '1px solid',
|
|
19
20
|
},
|
|
20
|
-
|
|
21
|
+
scalebarContig: {
|
|
21
22
|
backgroundColor: theme.palette.background.default,
|
|
22
23
|
position: 'absolute',
|
|
23
24
|
top: 0,
|
|
24
25
|
height: HEADER_OVERVIEW_HEIGHT,
|
|
25
26
|
},
|
|
26
|
-
|
|
27
|
+
scalebarContigForward: {
|
|
27
28
|
backgroundImage: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 9'%3E%3Cpath d='M-.1 0L6 4.5L-.1 9' fill='none' stroke='%23ddd'/%3E%3C/svg%3E")`,
|
|
28
29
|
backgroundRepeat: 'repeat',
|
|
29
30
|
},
|
|
30
|
-
|
|
31
|
+
scalebarContigReverse: {
|
|
31
32
|
backgroundImage: `url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 9'%3E%3Cpath d='M6 0L0 4.5L6 9' fill='none' stroke='%23ddd'/%3E%3C/svg%3E")`,
|
|
32
33
|
backgroundRepeat: 'repeat',
|
|
33
34
|
},
|
|
34
|
-
|
|
35
|
+
scalebarRefName: {
|
|
35
36
|
position: 'absolute',
|
|
36
37
|
fontWeight: 'bold',
|
|
37
38
|
pointerEvents: 'none',
|
|
38
39
|
zIndex: 100,
|
|
39
40
|
},
|
|
40
|
-
|
|
41
|
+
scalebarLabel: {
|
|
41
42
|
height: HEADER_OVERVIEW_HEIGHT,
|
|
42
43
|
position: 'absolute',
|
|
43
44
|
display: 'flex',
|
|
44
45
|
justifyContent: 'center',
|
|
45
46
|
pointerEvents: 'none',
|
|
46
47
|
},
|
|
47
|
-
|
|
48
|
+
scalebarVisibleRegion: {
|
|
48
49
|
position: 'absolute',
|
|
49
50
|
height: HEADER_OVERVIEW_HEIGHT,
|
|
50
51
|
pointerEvents: 'none',
|
|
@@ -202,18 +203,18 @@ const OverviewBox = observer(({ scale, model, block, overview, }) => {
|
|
|
202
203
|
React.createElement(Typography, { style: {
|
|
203
204
|
left: block.offsetPx + 3,
|
|
204
205
|
color: canDisplayCytobands ? 'black' : refNameColor,
|
|
205
|
-
}, className: classes.
|
|
206
|
-
React.createElement("div", { className: cx(classes.
|
|
206
|
+
}, className: classes.scalebarRefName }, refName),
|
|
207
|
+
React.createElement("div", { className: cx(classes.scalebarContig, canDisplayCytobands
|
|
207
208
|
? undefined
|
|
208
209
|
: reversed
|
|
209
|
-
? classes.
|
|
210
|
-
: classes.
|
|
210
|
+
? classes.scalebarContigReverse
|
|
211
|
+
: classes.scalebarContigForward, !canDisplayCytobands ? classes.scalebarBorder : undefined), style: {
|
|
211
212
|
left: block.offsetPx + cytobandOffset,
|
|
212
213
|
width: block.widthPx,
|
|
213
214
|
borderColor: refNameColor,
|
|
214
215
|
} },
|
|
215
216
|
!canDisplayCytobands
|
|
216
|
-
? tickLabels.map((tickLabel, labelIdx) => (React.createElement(Typography, { key: `${JSON.stringify(block)}-${tickLabel}-${labelIdx}`, className: classes.
|
|
217
|
+
? tickLabels.map((tickLabel, labelIdx) => (React.createElement(Typography, { key: `${JSON.stringify(block)}-${tickLabel}-${labelIdx}`, className: classes.scalebarLabel, variant: "body2", style: {
|
|
217
218
|
left: ((labelIdx + 1) * majorPitch) / scale,
|
|
218
219
|
pointerEvents: 'none',
|
|
219
220
|
color: refNameColor,
|
|
@@ -222,14 +223,14 @@ const OverviewBox = observer(({ scale, model, block, overview, }) => {
|
|
|
222
223
|
canDisplayCytobands ? (React.createElement("svg", { style: { width: '100%' } },
|
|
223
224
|
React.createElement(Cytobands, { overview: overview, assembly: assembly, block: block }))) : null)));
|
|
224
225
|
});
|
|
225
|
-
const
|
|
226
|
+
const Scalebar = observer(({ model, scale, overview, }) => {
|
|
226
227
|
const { classes } = useStyles();
|
|
227
228
|
const theme = useTheme();
|
|
228
229
|
const { dynamicBlocks, showCytobands, cytobandOffset } = model;
|
|
229
230
|
const visibleRegions = dynamicBlocks.contentBlocks;
|
|
230
231
|
const overviewVisibleRegions = overview.dynamicBlocks;
|
|
231
232
|
const { tertiary, primary } = theme.palette;
|
|
232
|
-
const
|
|
233
|
+
const scalebarColor = tertiary ? tertiary.light : primary.light;
|
|
233
234
|
if (!visibleRegions.length) {
|
|
234
235
|
return null;
|
|
235
236
|
}
|
|
@@ -243,17 +244,17 @@ const ScaleBar = observer(({ model, scale, overview, }) => {
|
|
|
243
244
|
...last,
|
|
244
245
|
coord: last.reversed ? last.start : last.end,
|
|
245
246
|
}) || 0;
|
|
246
|
-
const color = showCytobands ? '#f00' :
|
|
247
|
+
const color = showCytobands ? '#f00' : scalebarColor;
|
|
247
248
|
const transparency = showCytobands ? 0.1 : 0.3;
|
|
248
|
-
return (React.createElement("div", { className: classes.
|
|
249
|
-
React.createElement("div", { className: classes.
|
|
249
|
+
return (React.createElement("div", { className: classes.scalebar },
|
|
250
|
+
React.createElement("div", { className: classes.scalebarVisibleRegion, style: {
|
|
250
251
|
width: lastOverviewPx - firstOverviewPx,
|
|
251
252
|
left: firstOverviewPx + cytobandOffset,
|
|
252
253
|
background: alpha(color, transparency),
|
|
253
254
|
borderColor: color,
|
|
254
255
|
} }),
|
|
255
256
|
overviewVisibleRegions.map((block, idx) => {
|
|
256
|
-
return !(block instanceof ContentBlock) ? (React.createElement("div", { key: `${JSON.stringify(block)}-${idx}`, className: classes.
|
|
257
|
+
return !(block instanceof ContentBlock) ? (React.createElement("div", { key: `${JSON.stringify(block)}-${idx}`, className: classes.scalebarContig, style: {
|
|
257
258
|
width: block.widthPx,
|
|
258
259
|
left: block.offsetPx,
|
|
259
260
|
backgroundColor: '#999',
|
|
@@ -261,7 +262,7 @@ const ScaleBar = observer(({ model, scale, overview, }) => {
|
|
|
261
262
|
} })) : (React.createElement(OverviewBox, { scale: scale, block: block, model: model, overview: overview, key: `${JSON.stringify(block)}-${idx}` }));
|
|
262
263
|
})));
|
|
263
264
|
});
|
|
264
|
-
function
|
|
265
|
+
function OverviewScalebar({ model, children, }) {
|
|
265
266
|
const { classes } = useStyles();
|
|
266
267
|
const { totalBp, width, cytobandOffset, displayedRegions } = model;
|
|
267
268
|
const overview = Base1DView.create({
|
|
@@ -274,12 +275,12 @@ function OverviewScaleBar({ model, children, }) {
|
|
|
274
275
|
overview.showAllRegions();
|
|
275
276
|
const scale = totalBp / (modWidth - (displayedRegions.length - 1) * wholeSeqSpacer);
|
|
276
277
|
return (React.createElement("div", null,
|
|
277
|
-
React.createElement(
|
|
278
|
+
React.createElement(OverviewRubberband, { model: model, overview: overview, ControlComponent: React.createElement(Scalebar, { model: model, overview: overview, scale: scale }) }),
|
|
278
279
|
React.createElement("div", { className: classes.overview },
|
|
279
280
|
React.createElement("svg", { height: HEADER_BAR_HEIGHT, className: classes.overviewSvg },
|
|
280
281
|
React.createElement(Polygon, { model: model, overview: overview })),
|
|
281
282
|
children)));
|
|
282
283
|
}
|
|
283
|
-
export default observer(
|
|
284
|
+
export default observer(OverviewScalebar);
|
|
284
285
|
export { Cytobands, Polygon };
|
|
285
|
-
//# sourceMappingURL=
|
|
286
|
+
//# sourceMappingURL=OverviewScalebar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OverviewScalebar.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/OverviewScalebar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -89,7 +89,7 @@ function RefNameAutocomplete({ model, onSelect, assemblyName, style, fetchResult
|
|
|
89
89
|
}, [assemblyName, fetchResults, debouncedSearch, session, model]);
|
|
90
90
|
const inputBoxVal = coarseVisibleLocStrings || value || '';
|
|
91
91
|
// heuristic, text width + icon width
|
|
92
|
-
// + 45
|
|
92
|
+
// + 45 accommodates help icon and search icon
|
|
93
93
|
const width = Math.min(Math.max(measureText(inputBoxVal, 16) + 45, minWidth), 550);
|
|
94
94
|
// notes on implementation:
|
|
95
95
|
// The selectOnFocus setting helps highlight the field when clicked
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RefNameAutocomplete.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/RefNameAutocomplete.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RefNameAutocomplete.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/RefNameAutocomplete.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { LinearGenomeViewModel } from '..';
|
|
3
3
|
type LGV = LinearGenomeViewModel;
|
|
4
|
-
declare function
|
|
4
|
+
declare function Rubberband({ model, ControlComponent, }: {
|
|
5
5
|
model: LGV;
|
|
6
6
|
ControlComponent?: React.ReactElement;
|
|
7
7
|
}): JSX.Element;
|
|
8
|
-
declare const _default: typeof
|
|
8
|
+
declare const _default: typeof Rubberband;
|
|
9
9
|
export default _default;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import React, { useRef } from 'react';
|
|
2
|
+
import { observer } from 'mobx-react';
|
|
3
|
+
import { makeStyles } from 'tss-react/mui';
|
|
4
|
+
import { Menu } from '@jbrowse/core/ui';
|
|
5
|
+
// locals
|
|
6
|
+
import VerticalGuide from './VerticalGuide';
|
|
7
|
+
import RubberbandSpan from './RubberbandSpan';
|
|
8
|
+
import { useRangeSelect } from './hooks';
|
|
9
|
+
const useStyles = makeStyles()({
|
|
10
|
+
rubberbandControl: {
|
|
11
|
+
cursor: 'crosshair',
|
|
12
|
+
width: '100%',
|
|
13
|
+
minHeight: 8,
|
|
14
|
+
},
|
|
15
|
+
});
|
|
16
|
+
function Rubberband({ model, ControlComponent = React.createElement("div", null), }) {
|
|
17
|
+
const ref = useRef(null);
|
|
18
|
+
const { classes } = useStyles();
|
|
19
|
+
const { guideX, rubberbandOn, leftBpOffset, rightBpOffset, numOfBpSelected, width, left, anchorPosition, handleMenuItemClick, open, handleClose, mouseMove, mouseDown, mouseOut, } = useRangeSelect(ref, model);
|
|
20
|
+
return (React.createElement(React.Fragment, null,
|
|
21
|
+
guideX !== undefined ? (React.createElement(VerticalGuide, { model: model, coordX: guideX })) : rubberbandOn ? (React.createElement(RubberbandSpan, { leftBpOffset: leftBpOffset, rightBpOffset: rightBpOffset, numOfBpSelected: numOfBpSelected, width: width, left: left })) : null,
|
|
22
|
+
anchorPosition ? (React.createElement(Menu, { anchorReference: "anchorPosition", anchorPosition: {
|
|
23
|
+
left: anchorPosition.clientX,
|
|
24
|
+
top: anchorPosition.clientY,
|
|
25
|
+
}, onMenuItemClick: handleMenuItemClick, open: open, onClose: handleClose, menuItems: model.rubberBandMenuItems() })) : null,
|
|
26
|
+
React.createElement("div", { "data-testid": "rubberband_controls", className: classes.rubberbandControl, ref: ref, onMouseDown: mouseDown, onMouseMove: mouseMove, onMouseOut: mouseOut }, ControlComponent)));
|
|
27
|
+
}
|
|
28
|
+
export default observer(Rubberband);
|
|
29
|
+
//# sourceMappingURL=Rubberband.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Rubberband.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/Rubberband.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAEvC,SAAS;AACT,OAAO,aAAa,MAAM,iBAAiB,CAAA;AAC3C,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAKxC,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;IAC7B,iBAAiB,EAAE;QACjB,MAAM,EAAE,WAAW;QACnB,KAAK,EAAE,MAAM;QACb,SAAS,EAAE,CAAC;KACb;CACF,CAAC,CAAA;AAEF,SAAS,UAAU,CAAC,EAClB,KAAK,EACL,gBAAgB,GAAG,gCAAO,GAI3B;IACC,MAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IACxC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAE/B,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,eAAe,EACf,KAAK,EACL,IAAI,EACJ,cAAc,EACd,mBAAmB,EACnB,IAAI,EACJ,WAAW,EACX,SAAS,EACT,SAAS,EACT,QAAQ,GACT,GAAG,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAE9B,OAAO,CACL;QACG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CACtB,oBAAC,aAAa,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,CAChD,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CACjB,oBAAC,cAAc,IACb,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAChC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,GACV,CACH,CAAC,CAAC,CAAC,IAAI;QACP,cAAc,CAAC,CAAC,CAAC,CAChB,oBAAC,IAAI,IACH,eAAe,EAAC,gBAAgB,EAChC,cAAc,EAAE;gBACd,IAAI,EAAE,cAAc,CAAC,OAAO;gBAC5B,GAAG,EAAE,cAAc,CAAC,OAAO;aAC5B,EACD,eAAe,EAAE,mBAAmB,EACpC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,KAAK,CAAC,mBAAmB,EAAE,GACtC,CACH,CAAC,CAAC,CAAC,IAAI;QACR,4CACc,qBAAqB,EACjC,SAAS,EAAE,OAAO,CAAC,iBAAiB,EACpC,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,SAAS,EACtB,WAAW,EAAE,SAAS,EACtB,UAAU,EAAE,QAAQ,IAEnB,gBAAgB,CACb,CACL,CACJ,CAAA;AACH,CAAC;AAED,eAAe,QAAQ,CAAC,UAAU,CAAC,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
interface Offset {
|
|
3
|
+
coord: number;
|
|
4
|
+
refName?: string;
|
|
5
|
+
oob?: boolean;
|
|
6
|
+
}
|
|
7
|
+
declare function RubberbandSpan({ leftBpOffset, rightBpOffset, numOfBpSelected, left, width, }: {
|
|
8
|
+
leftBpOffset: Offset;
|
|
9
|
+
rightBpOffset: Offset;
|
|
10
|
+
numOfBpSelected?: number;
|
|
11
|
+
left: number;
|
|
12
|
+
width: number;
|
|
13
|
+
}): JSX.Element;
|
|
14
|
+
export default RubberbandSpan;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import React, { useRef } from 'react';
|
|
2
|
+
import { makeStyles } from 'tss-react/mui';
|
|
3
|
+
import { Popover, Typography, alpha } from '@mui/material';
|
|
4
|
+
import { stringify, toLocale } from '@jbrowse/core/util';
|
|
5
|
+
const useStyles = makeStyles()(theme => {
|
|
6
|
+
const { primary, tertiary } = theme.palette;
|
|
7
|
+
const background = tertiary
|
|
8
|
+
? alpha(tertiary.main, 0.7)
|
|
9
|
+
: alpha(primary.main, 0.7);
|
|
10
|
+
return {
|
|
11
|
+
rubberband: {
|
|
12
|
+
height: '100%',
|
|
13
|
+
background,
|
|
14
|
+
position: 'absolute',
|
|
15
|
+
zIndex: 10,
|
|
16
|
+
textAlign: 'center',
|
|
17
|
+
overflow: 'hidden',
|
|
18
|
+
},
|
|
19
|
+
rubberbandControl: {
|
|
20
|
+
cursor: 'crosshair',
|
|
21
|
+
width: '100%',
|
|
22
|
+
minHeight: 8,
|
|
23
|
+
},
|
|
24
|
+
rubberbandText: {
|
|
25
|
+
color: tertiary ? tertiary.contrastText : primary.contrastText,
|
|
26
|
+
},
|
|
27
|
+
popover: {
|
|
28
|
+
mouseEvents: 'none',
|
|
29
|
+
cursor: 'crosshair',
|
|
30
|
+
},
|
|
31
|
+
paper: {
|
|
32
|
+
paddingLeft: theme.spacing(1),
|
|
33
|
+
paddingRight: theme.spacing(1),
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
});
|
|
37
|
+
function RubberbandSpan({ leftBpOffset, rightBpOffset, numOfBpSelected, left, width, }) {
|
|
38
|
+
const ref = useRef(null);
|
|
39
|
+
const { classes } = useStyles();
|
|
40
|
+
return (React.createElement(React.Fragment, null,
|
|
41
|
+
ref.current ? (React.createElement(React.Fragment, null,
|
|
42
|
+
React.createElement(Popover, { className: classes.popover, classes: { paper: classes.paper }, open: true, anchorEl: ref.current, anchorOrigin: {
|
|
43
|
+
vertical: 'top',
|
|
44
|
+
horizontal: 'left',
|
|
45
|
+
}, transformOrigin: {
|
|
46
|
+
vertical: 'bottom',
|
|
47
|
+
horizontal: 'right',
|
|
48
|
+
}, keepMounted: true, disableRestoreFocus: true },
|
|
49
|
+
React.createElement(Typography, null, stringify(leftBpOffset))),
|
|
50
|
+
React.createElement(Popover, { className: classes.popover, classes: {
|
|
51
|
+
paper: classes.paper,
|
|
52
|
+
}, open: true, anchorEl: ref.current, anchorOrigin: {
|
|
53
|
+
vertical: 'top',
|
|
54
|
+
horizontal: 'right',
|
|
55
|
+
}, transformOrigin: {
|
|
56
|
+
vertical: 'bottom',
|
|
57
|
+
horizontal: 'left',
|
|
58
|
+
}, keepMounted: true, disableRestoreFocus: true },
|
|
59
|
+
React.createElement(Typography, null, stringify(rightBpOffset))))) : null,
|
|
60
|
+
React.createElement("div", { ref: ref, className: classes.rubberband, style: { left, width } }, numOfBpSelected ? (React.createElement(Typography, { variant: "h6", className: classes.rubberbandText },
|
|
61
|
+
toLocale(numOfBpSelected),
|
|
62
|
+
" bp")) : null)));
|
|
63
|
+
}
|
|
64
|
+
export default RubberbandSpan;
|
|
65
|
+
//# sourceMappingURL=RubberbandSpan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RubberbandSpan.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/RubberbandSpan.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,11 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import ReactPropTypes from 'prop-types';
|
|
3
2
|
declare function Ruler({ start, end, bpPerPx, reversed, major, minor, }: {
|
|
4
3
|
start: number;
|
|
5
4
|
end: number;
|
|
6
5
|
bpPerPx: number;
|
|
7
6
|
reversed?: boolean;
|
|
8
|
-
major
|
|
9
|
-
minor
|
|
7
|
+
major?: boolean;
|
|
8
|
+
minor?: boolean;
|
|
10
9
|
}): JSX.Element;
|
|
11
|
-
declare namespace Ruler {
|
|
12
|
-
var propTypes: {
|
|
13
|
-
start: ReactPropTypes.Validator<number>;
|
|
14
|
-
end: ReactPropTypes.Validator<number>;
|
|
15
|
-
bpPerPx: ReactPropTypes.Validator<number>;
|
|
16
|
-
reversed: ReactPropTypes.Requireable<boolean>;
|
|
17
|
-
major: ReactPropTypes.Requireable<boolean>;
|
|
18
|
-
minor: ReactPropTypes.Requireable<boolean>;
|
|
19
|
-
};
|
|
20
|
-
var defaultProps: {
|
|
21
|
-
reversed: boolean;
|
|
22
|
-
major: boolean;
|
|
23
|
-
minor: boolean;
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
10
|
declare const _default: typeof Ruler;
|
|
27
11
|
export default _default;
|
|
@@ -1,24 +1,21 @@
|
|
|
1
|
+
import React from 'react';
|
|
1
2
|
import { makeStyles } from 'tss-react/mui';
|
|
2
3
|
import { observer } from 'mobx-react';
|
|
3
|
-
import ReactPropTypes from 'prop-types';
|
|
4
|
-
import React from 'react';
|
|
5
|
-
import { makeTicks } from '../util';
|
|
6
4
|
import { getTickDisplayStr } from '@jbrowse/core/util';
|
|
7
|
-
|
|
5
|
+
// locals
|
|
6
|
+
import { makeTicks } from '../util';
|
|
7
|
+
const useStyles = makeStyles()({
|
|
8
8
|
majorTickLabel: {
|
|
9
9
|
fontSize: '11px',
|
|
10
|
-
// fill: theme.palette.text.primary,
|
|
11
10
|
},
|
|
12
11
|
majorTick: {
|
|
13
12
|
stroke: '#555',
|
|
14
|
-
// stroke: theme.palette.text.secondary,
|
|
15
13
|
},
|
|
16
14
|
minorTick: {
|
|
17
15
|
stroke: '#999',
|
|
18
|
-
// stroke: theme.palette.text.hint,
|
|
19
16
|
},
|
|
20
|
-
})
|
|
21
|
-
function Ruler({ start, end, bpPerPx, reversed, major, minor, }) {
|
|
17
|
+
});
|
|
18
|
+
function Ruler({ start, end, bpPerPx, reversed = false, major = true, minor = true, }) {
|
|
22
19
|
const { classes } = useStyles();
|
|
23
20
|
const ticks = makeTicks(start, end, bpPerPx, major, minor);
|
|
24
21
|
return (React.createElement(React.Fragment, null,
|
|
@@ -33,18 +30,5 @@ function Ruler({ start, end, bpPerPx, reversed, major, minor, }) {
|
|
|
33
30
|
return (React.createElement("text", { x: x - 3, y: 7 + 11, key: `label-${tick.base}`, style: { fontSize: '11px' }, className: classes.majorTickLabel }, getTickDisplayStr(tick.base + 1, bpPerPx)));
|
|
34
31
|
})));
|
|
35
32
|
}
|
|
36
|
-
Ruler.propTypes = {
|
|
37
|
-
start: ReactPropTypes.number.isRequired,
|
|
38
|
-
end: ReactPropTypes.number.isRequired,
|
|
39
|
-
bpPerPx: ReactPropTypes.number.isRequired,
|
|
40
|
-
reversed: ReactPropTypes.bool,
|
|
41
|
-
major: ReactPropTypes.bool,
|
|
42
|
-
minor: ReactPropTypes.bool,
|
|
43
|
-
};
|
|
44
|
-
Ruler.defaultProps = {
|
|
45
|
-
reversed: false,
|
|
46
|
-
major: true,
|
|
47
|
-
minor: true,
|
|
48
|
-
};
|
|
49
33
|
export default observer(Ruler);
|
|
50
34
|
//# sourceMappingURL=Ruler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Ruler.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/Ruler.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Ruler.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/Ruler.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAEtD,SAAS;AACT,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC;IAC7B,cAAc,EAAE;QACd,QAAQ,EAAE,MAAM;KACjB;IACD,SAAS,EAAE;QACT,MAAM,EAAE,MAAM;KACf;IACD,SAAS,EAAE;QACT,MAAM,EAAE,MAAM;KACf;CACF,CAAC,CAAA;AAEF,SAAS,KAAK,CAAC,EACb,KAAK,EACL,GAAG,EACH,OAAO,EACP,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,IAAI,EACZ,KAAK,GAAG,IAAI,GAQb;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAC/B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAC1D,OAAO,CACL;QACG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAA;YACpE,OAAO,CACL,8BACE,GAAG,EAAE,IAAI,CAAC,IAAI,EACd,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,CAAC,EACL,EAAE,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACjC,WAAW,EAAE,CAAC,EACd,MAAM,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAC/C,SAAS,EACP,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,aAEtD,IAAI,CAAC,IAAI,GAClB,CACH,CAAA;QACH,CAAC,CAAC;QACD,KAAK;aACH,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;aACrC,GAAG,CAAC,IAAI,CAAC,EAAE;YACV,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAA;YACpE,OAAO,CACL,8BACE,CAAC,EAAE,CAAC,GAAG,CAAC,EACR,CAAC,EAAE,CAAC,GAAG,EAAE,EACT,GAAG,EAAE,SAAS,IAAI,CAAC,IAAI,EAAE,EACzB,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,EAC3B,SAAS,EAAE,OAAO,CAAC,cAAc,IAEhC,iBAAiB,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,CACrC,CACR,CAAA;QACH,CAAC,CAAC,CACH,CACJ,CAAA;AACH,CAAC;AAED,eAAe,QAAQ,CAAC,KAAK,CAAC,CAAA"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { LinearGenomeViewModel } from '..';
|
|
3
3
|
type LGV = LinearGenomeViewModel;
|
|
4
|
-
interface
|
|
4
|
+
interface ScalebarProps {
|
|
5
5
|
model: LGV;
|
|
6
6
|
style?: React.CSSProperties;
|
|
7
7
|
className?: string;
|
|
8
8
|
}
|
|
9
|
-
declare const _default: React.ForwardRefExoticComponent<
|
|
9
|
+
declare const _default: React.ForwardRefExoticComponent<ScalebarProps & React.RefAttributes<HTMLDivElement>>;
|
|
10
10
|
export default _default;
|
|
@@ -7,15 +7,15 @@ import { ContentBlock as ContentBlockComponent, ElidedBlock as ElidedBlockCompon
|
|
|
7
7
|
import { makeTicks } from '../util';
|
|
8
8
|
import { getTickDisplayStr } from '@jbrowse/core/util';
|
|
9
9
|
const useStyles = makeStyles()(theme => ({
|
|
10
|
-
|
|
10
|
+
scalebarContainer: {
|
|
11
11
|
overflow: 'hidden',
|
|
12
12
|
position: 'relative',
|
|
13
13
|
},
|
|
14
|
-
|
|
14
|
+
scalebarZoomContainer: {
|
|
15
15
|
position: 'relative',
|
|
16
16
|
zIndex: 1,
|
|
17
17
|
},
|
|
18
|
-
|
|
18
|
+
scalebar: {
|
|
19
19
|
position: 'absolute',
|
|
20
20
|
display: 'flex',
|
|
21
21
|
pointerEvents: 'none',
|
|
@@ -65,7 +65,7 @@ const RenderedRefNameLabels = observer(({ model }) => {
|
|
|
65
65
|
}, className: classes.refLabel, "data-testid": `refLabel-${block.refName}` }, block.refName)) : null;
|
|
66
66
|
})));
|
|
67
67
|
});
|
|
68
|
-
const
|
|
68
|
+
const RenderedScalebarLabels = observer(({ model }) => {
|
|
69
69
|
const { classes } = useStyles();
|
|
70
70
|
const { bpPerPx, staticBlocks } = model;
|
|
71
71
|
return (React.createElement(React.Fragment, null, staticBlocks.map((block, index) => {
|
|
@@ -90,23 +90,23 @@ const RenderedScaleBarLabels = observer(({ model }) => {
|
|
|
90
90
|
return null;
|
|
91
91
|
})));
|
|
92
92
|
});
|
|
93
|
-
const
|
|
93
|
+
const Scalebar = React.forwardRef(({ model, style, className, ...other }, ref) => {
|
|
94
94
|
const { classes, cx } = useStyles();
|
|
95
95
|
const offsetLeft = model.staticBlocks.offsetPx - model.offsetPx;
|
|
96
96
|
return (React.createElement(Paper, { "data-resizer": "true" // used to avoid click-and-drag scrolls on trackscontainer
|
|
97
|
-
, className: cx(classes.
|
|
98
|
-
React.createElement("div", { className: classes.
|
|
97
|
+
, className: cx(classes.scalebarContainer, className), variant: "outlined", ref: ref, style: style, ...other },
|
|
98
|
+
React.createElement("div", { className: classes.scalebarZoomContainer, style: {
|
|
99
99
|
transform: model.scaleFactor !== 1
|
|
100
100
|
? `scaleX(${model.scaleFactor})`
|
|
101
101
|
: undefined,
|
|
102
102
|
} },
|
|
103
|
-
React.createElement("div", { className: classes.
|
|
103
|
+
React.createElement("div", { className: classes.scalebar, style: {
|
|
104
104
|
left: offsetLeft - 1,
|
|
105
105
|
width: model.staticBlocks.totalWidthPx,
|
|
106
106
|
...style,
|
|
107
107
|
} },
|
|
108
|
-
React.createElement(
|
|
108
|
+
React.createElement(RenderedScalebarLabels, { model: model }))),
|
|
109
109
|
React.createElement(RenderedRefNameLabels, { model: model })));
|
|
110
110
|
});
|
|
111
|
-
export default observer(
|
|
112
|
-
//# sourceMappingURL=
|
|
111
|
+
export default observer(Scalebar);
|
|
112
|
+
//# sourceMappingURL=Scalebar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"Scalebar.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/Scalebar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -21,11 +21,11 @@ function SearchBox({ model, showHelp, }) {
|
|
|
21
21
|
const assemblyName = assemblyNames[0];
|
|
22
22
|
const assembly = assemblyManager.get(assemblyName);
|
|
23
23
|
const searchScope = model.searchScope(assemblyName);
|
|
24
|
-
function navToOption(option) {
|
|
24
|
+
async function navToOption(option) {
|
|
25
25
|
const location = option.getLocation();
|
|
26
26
|
const trackId = option.getTrackId();
|
|
27
27
|
if (location) {
|
|
28
|
-
model.navToLocString(location, assemblyName);
|
|
28
|
+
await model.navToLocString(location, assemblyName);
|
|
29
29
|
if (trackId) {
|
|
30
30
|
model.showTrack(trackId);
|
|
31
31
|
}
|
|
@@ -37,9 +37,13 @@ function SearchBox({ model, showHelp, }) {
|
|
|
37
37
|
// 2) if it's a single result navigate to it
|
|
38
38
|
// 3) else assume it's a locstring and navigate to it
|
|
39
39
|
async function handleSelectedRegion(option) {
|
|
40
|
+
var _a;
|
|
40
41
|
try {
|
|
41
42
|
if (option.hasLocation()) {
|
|
42
|
-
navToOption(option);
|
|
43
|
+
await navToOption(option);
|
|
44
|
+
}
|
|
45
|
+
else if ((_a = option.results) === null || _a === void 0 ? void 0 : _a.length) {
|
|
46
|
+
model.setSearchResults(option.results, option.getLabel());
|
|
43
47
|
}
|
|
44
48
|
else {
|
|
45
49
|
const input = option.getLabel();
|
|
@@ -47,7 +51,7 @@ function SearchBox({ model, showHelp, }) {
|
|
|
47
51
|
const allRefs = (assembly === null || assembly === void 0 ? void 0 : assembly.allRefNamesWithLowerCase) || [];
|
|
48
52
|
if (allRefs.includes(input) ||
|
|
49
53
|
(allRefs.includes(ref) && !Number.isNaN(parseInt(rest, 10)))) {
|
|
50
|
-
model.navToLocString(input, assemblyName);
|
|
54
|
+
await model.navToLocString(input, assemblyName);
|
|
51
55
|
}
|
|
52
56
|
else {
|
|
53
57
|
const results = await fetchResults({
|
|
@@ -62,10 +66,10 @@ function SearchBox({ model, showHelp, }) {
|
|
|
62
66
|
model.setSearchResults(results, input.toLowerCase());
|
|
63
67
|
}
|
|
64
68
|
else if (results.length === 1) {
|
|
65
|
-
navToOption(results[0]);
|
|
69
|
+
await navToOption(results[0]);
|
|
66
70
|
}
|
|
67
71
|
else {
|
|
68
|
-
model.navToLocString(input, assemblyName);
|
|
72
|
+
await model.navToLocString(input, assemblyName);
|
|
69
73
|
}
|
|
70
74
|
}
|
|
71
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchBox.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/SearchBox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAG/C,SAAS;AACT,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAChD,OAAO,EAAyB,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AAElE,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;IACpC,aAAa,EAAE;QACb,QAAQ,EAAE,GAAG;KACd;CACF,CAAC,CAAC,CAAA;AAEH,SAAS,SAAS,CAAC,EACjB,KAAK,EACL,QAAQ,GAIT;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAA;IAC/B,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAEjC,MAAM,EAAE,iBAAiB,EAAE,eAAe,EAAE,GAAG,OAAO,CAAA;IACtD,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,KAAK,CAAA;IAClD,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;IACrC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAClD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;IAEnD,
|
|
1
|
+
{"version":3,"file":"SearchBox.js","sourceRoot":"","sources":["../../../src/LinearGenomeView/components/SearchBox.tsx"],"names":[],"mappings":"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"}
|