@jbrowse/plugin-linear-genome-view 1.6.9 → 1.7.3

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.
Files changed (111) hide show
  1. package/dist/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +13 -13
  2. package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js +232 -0
  3. package/dist/BaseLinearDisplay/components/Block.d.ts +15 -15
  4. package/dist/BaseLinearDisplay/components/Block.js +86 -0
  5. package/dist/BaseLinearDisplay/components/LinearBlocks.d.ts +12 -12
  6. package/dist/BaseLinearDisplay/components/LinearBlocks.js +110 -0
  7. package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.d.ts +4 -4
  8. package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +192 -0
  9. package/dist/BaseLinearDisplay/index.d.ts +5 -5
  10. package/dist/BaseLinearDisplay/index.js +41 -0
  11. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +227 -230
  12. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js +763 -0
  13. package/dist/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.d.ts +1 -1
  14. package/dist/BaseLinearDisplay/models/baseLinearDisplayConfigSchema.js +24 -0
  15. package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.d.ts +96 -96
  16. package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js +328 -0
  17. package/dist/LinearBareDisplay/configSchema.d.ts +2 -2
  18. package/dist/LinearBareDisplay/configSchema.js +19 -0
  19. package/dist/LinearBareDisplay/index.d.ts +2 -2
  20. package/dist/LinearBareDisplay/index.js +21 -0
  21. package/dist/LinearBareDisplay/index.test.js +33 -0
  22. package/dist/LinearBareDisplay/model.d.ts +192 -192
  23. package/dist/LinearBareDisplay/model.js +44 -0
  24. package/dist/LinearBasicDisplay/components/SetMaxHeight.d.ts +10 -10
  25. package/dist/LinearBasicDisplay/components/SetMaxHeight.js +94 -0
  26. package/dist/LinearBasicDisplay/configSchema.d.ts +2 -2
  27. package/dist/LinearBasicDisplay/configSchema.js +25 -0
  28. package/dist/LinearBasicDisplay/index.d.ts +2 -2
  29. package/dist/LinearBasicDisplay/index.js +23 -0
  30. package/dist/LinearBasicDisplay/model.d.ts +213 -213
  31. package/dist/LinearBasicDisplay/model.js +162 -0
  32. package/dist/LinearGenomeView/components/CenterLine.d.ts +14 -14
  33. package/dist/LinearGenomeView/components/CenterLine.js +80 -0
  34. package/dist/LinearGenomeView/components/ExportSvgDialog.d.ts +6 -6
  35. package/dist/LinearGenomeView/components/ExportSvgDialog.js +137 -0
  36. package/dist/LinearGenomeView/components/Header.d.ts +7 -7
  37. package/dist/LinearGenomeView/components/Header.js +144 -0
  38. package/dist/LinearGenomeView/components/HelpDialog.d.ts +5 -5
  39. package/dist/LinearGenomeView/components/HelpDialog.js +48 -0
  40. package/dist/LinearGenomeView/components/ImportForm.d.ts +7 -7
  41. package/dist/LinearGenomeView/components/ImportForm.js +330 -0
  42. package/dist/LinearGenomeView/components/LinearGenomeView.d.ts +7 -7
  43. package/dist/LinearGenomeView/components/LinearGenomeView.js +129 -0
  44. package/dist/LinearGenomeView/components/LinearGenomeView.test.js +234 -0
  45. package/dist/LinearGenomeView/components/LinearGenomeViewSvg.d.ts +4 -4
  46. package/dist/LinearGenomeView/components/LinearGenomeViewSvg.js +349 -0
  47. package/dist/LinearGenomeView/components/MiniControls.d.ts +6 -6
  48. package/dist/LinearGenomeView/components/MiniControls.js +83 -0
  49. package/dist/LinearGenomeView/components/OverviewRubberBand.d.ts +22 -22
  50. package/dist/LinearGenomeView/components/OverviewRubberBand.js +310 -0
  51. package/dist/LinearGenomeView/components/OverviewScaleBar.d.ts +132 -124
  52. package/dist/LinearGenomeView/components/OverviewScaleBar.js +403 -0
  53. package/dist/LinearGenomeView/components/RefNameAutocomplete.d.ts +21 -21
  54. package/dist/LinearGenomeView/components/RefNameAutocomplete.js +331 -0
  55. package/dist/LinearGenomeView/components/RubberBand.d.ts +9 -20
  56. package/dist/LinearGenomeView/components/RubberBand.js +309 -0
  57. package/dist/LinearGenomeView/components/Ruler.d.ts +27 -27
  58. package/dist/LinearGenomeView/components/Ruler.js +101 -0
  59. package/dist/LinearGenomeView/components/ScaleBar.d.ts +401 -401
  60. package/dist/LinearGenomeView/components/ScaleBar.js +184 -0
  61. package/dist/LinearGenomeView/components/ScaleBar.test.js +180 -0
  62. package/dist/LinearGenomeView/components/SearchBox.d.ts +8 -8
  63. package/dist/LinearGenomeView/components/SearchBox.js +201 -0
  64. package/dist/LinearGenomeView/components/SearchResultsDialog.d.ts +8 -8
  65. package/dist/LinearGenomeView/components/SearchResultsDialog.js +159 -0
  66. package/dist/LinearGenomeView/components/SequenceDialog.d.ts +8 -8
  67. package/dist/LinearGenomeView/components/SequenceDialog.js +304 -0
  68. package/dist/LinearGenomeView/components/TrackContainer.d.ts +9 -9
  69. package/dist/LinearGenomeView/components/TrackContainer.js +179 -0
  70. package/dist/LinearGenomeView/components/TrackLabel.d.ts +44 -44
  71. package/dist/LinearGenomeView/components/TrackLabel.js +165 -0
  72. package/dist/LinearGenomeView/components/TracksContainer.d.ts +10 -10
  73. package/dist/LinearGenomeView/components/TracksContainer.js +214 -0
  74. package/dist/LinearGenomeView/components/VerticalGuides.d.ts +9 -9
  75. package/dist/LinearGenomeView/components/VerticalGuides.js +116 -0
  76. package/dist/LinearGenomeView/components/ZoomControls.d.ts +7 -7
  77. package/dist/LinearGenomeView/components/ZoomControls.js +92 -0
  78. package/dist/LinearGenomeView/components/util.d.ts +2 -2
  79. package/dist/LinearGenomeView/components/util.js +16 -0
  80. package/dist/LinearGenomeView/index.d.ts +292 -292
  81. package/dist/LinearGenomeView/index.js +1418 -0
  82. package/dist/LinearGenomeView/index.test.js +1170 -0
  83. package/dist/LinearGenomeView/util.d.ts +14 -14
  84. package/dist/LinearGenomeView/util.js +93 -0
  85. package/dist/LinearGenomeView/util.test.js +78 -0
  86. package/dist/index.d.ts +565 -565
  87. package/dist/index.js +293 -6
  88. package/package.json +6 -9
  89. package/src/BaseLinearDisplay/models/BaseLinearDisplayModel.tsx +2 -0
  90. package/src/BaseLinearDisplay/models/serverSideRenderedBlock.ts +10 -8
  91. package/src/LinearBasicDisplay/components/SetMaxHeight.tsx +1 -1
  92. package/src/LinearBasicDisplay/model.ts +17 -18
  93. package/src/LinearGenomeView/components/Header.tsx +1 -1
  94. package/src/LinearGenomeView/components/ImportForm.tsx +10 -4
  95. package/src/LinearGenomeView/components/LinearGenomeView.test.js +1 -0
  96. package/src/LinearGenomeView/components/OverviewScaleBar.tsx +2 -2
  97. package/src/LinearGenomeView/components/RubberBand.tsx +14 -24
  98. package/src/LinearGenomeView/components/ScaleBar.test.tsx +1 -0
  99. package/src/LinearGenomeView/components/ScaleBar.tsx +3 -6
  100. package/src/LinearGenomeView/components/SequenceDialog.tsx +1 -1
  101. package/src/LinearGenomeView/components/TrackLabel.tsx +1 -1
  102. package/src/LinearGenomeView/components/__snapshots__/LinearGenomeView.test.js.snap +0 -4
  103. package/src/LinearGenomeView/index.tsx +2 -3
  104. package/dist/LinearBareDisplay/index.test.d.ts +0 -1
  105. package/dist/LinearGenomeView/components/LinearGenomeView.test.d.ts +0 -1
  106. package/dist/plugin-linear-genome-view.cjs.development.js +0 -8121
  107. package/dist/plugin-linear-genome-view.cjs.development.js.map +0 -1
  108. package/dist/plugin-linear-genome-view.cjs.production.min.js +0 -2
  109. package/dist/plugin-linear-genome-view.cjs.production.min.js.map +0 -1
  110. package/dist/plugin-linear-genome-view.esm.js +0 -8105
  111. package/dist/plugin-linear-genome-view.esm.js.map +0 -1
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _styles = require("@material-ui/core/styles");
11
+
12
+ var _mobxReact = require("mobx-react");
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
+
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+
20
+ var useStyles = (0, _styles.makeStyles)(function () {
21
+ return {
22
+ centerLineContainer: {
23
+ background: 'transparent',
24
+ height: '100%',
25
+ zIndex: 5,
26
+ // above the track but under menu
27
+ position: 'absolute',
28
+ border: '1px black dashed',
29
+ borderTop: 'none',
30
+ borderBottom: 'none',
31
+ pointerEvents: 'none'
32
+ },
33
+ centerLineText: {
34
+ position: 'absolute',
35
+ pointerEvents: 'none',
36
+ whiteSpace: 'nowrap',
37
+ fontWeight: 'bold'
38
+ }
39
+ };
40
+ });
41
+
42
+ function CenterLine(_ref) {
43
+ var model = _ref.model;
44
+ var bpPerPx = model.bpPerPx,
45
+ centerLineInfo = model.centerLineInfo,
46
+ trackHeights = model.trackHeights,
47
+ tracks = model.tracks,
48
+ width = model.width;
49
+ var ref = (0, _react.useRef)(null);
50
+ var classes = useStyles();
51
+ var startingPosition = width / 2;
52
+ return tracks.length ? /*#__PURE__*/_react["default"].createElement("div", {
53
+ "data-testid": "centerline_container",
54
+ className: classes.centerLineContainer,
55
+ role: "presentation",
56
+ ref: ref,
57
+ style: {
58
+ left: "".concat(startingPosition, "px"),
59
+ width: Math.max(1 / bpPerPx, 1)
60
+ }
61
+ }, centerLineInfo && /*#__PURE__*/_react["default"].createElement("div", {
62
+ // text that indicates what bp is center, positioned
63
+ // at the bottom right of the center line
64
+ "data-testid": "centerline_text",
65
+ className: classes.centerLineText,
66
+ role: "presentation",
67
+ style: {
68
+ left: Math.max(1 / bpPerPx, 1) + 5,
69
+ top: trackHeights
70
+ }
71
+ }, centerLineInfo.refName, ":", ' ', Math.max(Math.round(centerLineInfo.offset) + 1, 0))) : null;
72
+ }
73
+
74
+ CenterLine.propTypes = {
75
+ model: _mobxReact.PropTypes.objectOrObservableObject.isRequired
76
+ };
77
+
78
+ var _default = (0, _mobxReact.observer)(CenterLine);
79
+
80
+ exports["default"] = _default;
@@ -1,6 +1,6 @@
1
- /// <reference types="react" />
2
- import { LinearGenomeViewModel as LGV } from '..';
3
- export default function ExportSvgDlg({ model, handleClose, }: {
4
- model: LGV;
5
- handleClose: () => void;
6
- }): JSX.Element;
1
+ /// <reference types="react" />
2
+ import { LinearGenomeViewModel as LGV } from '..';
3
+ export default function ExportSvgDlg({ model, handleClose, }: {
4
+ model: LGV;
5
+ handleClose: () => void;
6
+ }): JSX.Element;
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports["default"] = ExportSvgDlg;
11
+
12
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
+
14
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
17
+
18
+ var _react = _interopRequireWildcard(require("react"));
19
+
20
+ var _styles = require("@material-ui/core/styles");
21
+
22
+ var _core = require("@material-ui/core");
23
+
24
+ var _Close = _interopRequireDefault(require("@material-ui/icons/Close"));
25
+
26
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
+
28
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
+
30
+ var useStyles = (0, _styles.makeStyles)(function (theme) {
31
+ return {
32
+ closeButton: {
33
+ position: 'absolute',
34
+ right: theme.spacing(1),
35
+ top: theme.spacing(1),
36
+ color: theme.palette.grey[500]
37
+ }
38
+ };
39
+ });
40
+
41
+ function ExportSvgDlg(_ref) {
42
+ var model = _ref.model,
43
+ handleClose = _ref.handleClose;
44
+ // @ts-ignore
45
+ var offscreenCanvas = typeof OffscreenCanvas !== 'undefined';
46
+
47
+ var _useState = (0, _react.useState)(offscreenCanvas),
48
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
49
+ rasterizeLayers = _useState2[0],
50
+ setRasterizeLayers = _useState2[1];
51
+
52
+ var _useState3 = (0, _react.useState)(false),
53
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
54
+ loading = _useState4[0],
55
+ setLoading = _useState4[1];
56
+
57
+ var _useState5 = (0, _react.useState)(),
58
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
59
+ error = _useState6[0],
60
+ setError = _useState6[1];
61
+
62
+ var classes = useStyles();
63
+ return /*#__PURE__*/_react["default"].createElement(_core.Dialog, {
64
+ open: true,
65
+ onClose: handleClose
66
+ }, /*#__PURE__*/_react["default"].createElement(_core.DialogTitle, null, "Export SVG", /*#__PURE__*/_react["default"].createElement(_core.IconButton, {
67
+ className: classes.closeButton,
68
+ onClick: handleClose
69
+ }, /*#__PURE__*/_react["default"].createElement(_Close["default"], null))), /*#__PURE__*/_react["default"].createElement(_core.DialogContent, null, error ? /*#__PURE__*/_react["default"].createElement("div", {
70
+ style: {
71
+ color: 'red'
72
+ }
73
+ }, "".concat(error)) : loading ? /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_core.CircularProgress, {
74
+ size: 20,
75
+ style: {
76
+ marginRight: 20
77
+ }
78
+ }), /*#__PURE__*/_react["default"].createElement(_core.Typography, {
79
+ display: "inline"
80
+ }, "Creating SVG")) : null, offscreenCanvas ? /*#__PURE__*/_react["default"].createElement(_core.FormControlLabel, {
81
+ control: /*#__PURE__*/_react["default"].createElement(_core.Checkbox, {
82
+ checked: rasterizeLayers,
83
+ onChange: function onChange() {
84
+ return setRasterizeLayers(function (val) {
85
+ return !val;
86
+ });
87
+ }
88
+ }),
89
+ label: "Rasterize canvas based tracks? File may be much larger if this is turned off"
90
+ }) : /*#__PURE__*/_react["default"].createElement(_core.Typography, null, "Note: rasterizing layers not yet supported in this browser, so SVG size may be large")), /*#__PURE__*/_react["default"].createElement(_core.DialogActions, null, /*#__PURE__*/_react["default"].createElement(_core.Button, {
91
+ variant: "contained",
92
+ color: "secondary",
93
+ onClick: function onClick() {
94
+ return handleClose();
95
+ }
96
+ }, "Cancel"), /*#__PURE__*/_react["default"].createElement(_core.Button, {
97
+ variant: "contained",
98
+ color: "primary",
99
+ type: "submit",
100
+ onClick: /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
101
+ return _regenerator["default"].wrap(function _callee$(_context) {
102
+ while (1) {
103
+ switch (_context.prev = _context.next) {
104
+ case 0:
105
+ setLoading(true);
106
+ setError(undefined);
107
+ _context.prev = 2;
108
+ _context.next = 5;
109
+ return model.exportSvg({
110
+ rasterizeLayers: rasterizeLayers
111
+ });
112
+
113
+ case 5:
114
+ handleClose();
115
+ _context.next = 12;
116
+ break;
117
+
118
+ case 8:
119
+ _context.prev = 8;
120
+ _context.t0 = _context["catch"](2);
121
+ console.error(_context.t0);
122
+ setError(_context.t0);
123
+
124
+ case 12:
125
+ _context.prev = 12;
126
+ setLoading(false);
127
+ return _context.finish(12);
128
+
129
+ case 15:
130
+ case "end":
131
+ return _context.stop();
132
+ }
133
+ }
134
+ }, _callee, null, [[2, 8, 12, 15]]);
135
+ }))
136
+ }, "Submit")));
137
+ }
@@ -1,7 +1,7 @@
1
- /// <reference types="react" />
2
- import { LinearGenomeViewModel } from '..';
3
- declare type LGV = LinearGenomeViewModel;
4
- declare const LinearGenomeViewHeader: ({ model }: {
5
- model: LGV;
6
- }) => JSX.Element;
7
- export default LinearGenomeViewHeader;
1
+ /// <reference types="react" />
2
+ import { LinearGenomeViewModel } from '..';
3
+ declare type LGV = LinearGenomeViewModel;
4
+ declare const LinearGenomeViewHeader: ({ model }: {
5
+ model: LGV;
6
+ }) => JSX.Element;
7
+ export default LinearGenomeViewHeader;
@@ -0,0 +1,144 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _mobxReact = require("mobx-react");
13
+
14
+ var _core = require("@material-ui/core");
15
+
16
+ var _SearchBox = _interopRequireDefault(require("./SearchBox"));
17
+
18
+ var _Icons = require("@jbrowse/core/ui/Icons");
19
+
20
+ var _ArrowForward = _interopRequireDefault(require("@material-ui/icons/ArrowForward"));
21
+
22
+ var _ArrowBack = _interopRequireDefault(require("@material-ui/icons/ArrowBack"));
23
+
24
+ var _ = require("..");
25
+
26
+ var _OverviewScaleBar = _interopRequireDefault(require("./OverviewScaleBar"));
27
+
28
+ var _ZoomControls = _interopRequireDefault(require("./ZoomControls"));
29
+
30
+ // icons
31
+ // locals
32
+ var useStyles = (0, _core.makeStyles)(function (theme) {
33
+ return {
34
+ headerBar: {
35
+ height: _.HEADER_BAR_HEIGHT,
36
+ display: 'flex'
37
+ },
38
+ headerForm: {
39
+ flexWrap: 'nowrap',
40
+ marginRight: 7
41
+ },
42
+ spacer: {
43
+ flexGrow: 1
44
+ },
45
+ panButton: {
46
+ background: (0, _core.alpha)(theme.palette.background.paper, 0.8),
47
+ height: _.WIDGET_HEIGHT,
48
+ margin: _.SPACING
49
+ },
50
+ bp: {
51
+ display: 'flex',
52
+ alignItems: 'center',
53
+ marginLeft: 5
54
+ },
55
+ toggleButton: {
56
+ height: 44,
57
+ border: 'none',
58
+ margin: theme.spacing(0.5)
59
+ },
60
+ buttonSpacer: {
61
+ marginRight: theme.spacing(2)
62
+ }
63
+ };
64
+ });
65
+ var HeaderButtons = (0, _mobxReact.observer)(function (_ref) {
66
+ var model = _ref.model;
67
+ var classes = useStyles();
68
+ return /*#__PURE__*/_react["default"].createElement(_core.Button, {
69
+ onClick: model.activateTrackSelector,
70
+ className: classes.toggleButton,
71
+ title: "Open track selector",
72
+ value: "track_select",
73
+ color: "secondary"
74
+ }, /*#__PURE__*/_react["default"].createElement(_Icons.TrackSelector, {
75
+ className: classes.buttonSpacer
76
+ }));
77
+ });
78
+
79
+ function PanControls(_ref2) {
80
+ var model = _ref2.model;
81
+ var classes = useStyles();
82
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_core.Button, {
83
+ variant: "outlined",
84
+ className: classes.panButton,
85
+ onClick: function onClick() {
86
+ return model.slide(-0.9);
87
+ }
88
+ }, /*#__PURE__*/_react["default"].createElement(_ArrowBack["default"], null)), /*#__PURE__*/_react["default"].createElement(_core.Button, {
89
+ variant: "outlined",
90
+ className: classes.panButton,
91
+ onClick: function onClick() {
92
+ return model.slide(0.9);
93
+ }
94
+ }, /*#__PURE__*/_react["default"].createElement(_ArrowForward["default"], null)));
95
+ }
96
+
97
+ var RegionWidth = (0, _mobxReact.observer)(function (_ref3) {
98
+ var model = _ref3.model;
99
+ var classes = useStyles();
100
+ var coarseTotalBp = model.coarseTotalBp;
101
+ return /*#__PURE__*/_react["default"].createElement(_core.Typography, {
102
+ variant: "body2",
103
+ color: "textSecondary",
104
+ className: classes.bp
105
+ }, Math.round(coarseTotalBp).toLocaleString('en-US'), " bp");
106
+ });
107
+
108
+ var Controls = function Controls(_ref4) {
109
+ var model = _ref4.model;
110
+ var classes = useStyles();
111
+ return /*#__PURE__*/_react["default"].createElement("div", {
112
+ className: classes.headerBar
113
+ }, /*#__PURE__*/_react["default"].createElement(HeaderButtons, {
114
+ model: model
115
+ }), /*#__PURE__*/_react["default"].createElement("div", {
116
+ className: classes.spacer
117
+ }), /*#__PURE__*/_react["default"].createElement(_core.FormGroup, {
118
+ row: true,
119
+ className: classes.headerForm
120
+ }, /*#__PURE__*/_react["default"].createElement(PanControls, {
121
+ model: model
122
+ }), /*#__PURE__*/_react["default"].createElement(_SearchBox["default"], {
123
+ model: model
124
+ })), /*#__PURE__*/_react["default"].createElement(RegionWidth, {
125
+ model: model
126
+ }), /*#__PURE__*/_react["default"].createElement(_ZoomControls["default"], {
127
+ model: model
128
+ }), /*#__PURE__*/_react["default"].createElement("div", {
129
+ className: classes.spacer
130
+ }));
131
+ };
132
+
133
+ var LinearGenomeViewHeader = (0, _mobxReact.observer)(function (_ref5) {
134
+ var model = _ref5.model;
135
+ return model.hideHeaderOverview ? /*#__PURE__*/_react["default"].createElement(Controls, {
136
+ model: model
137
+ }) : /*#__PURE__*/_react["default"].createElement(_OverviewScaleBar["default"], {
138
+ model: model
139
+ }, /*#__PURE__*/_react["default"].createElement(Controls, {
140
+ model: model
141
+ }));
142
+ });
143
+ var _default = LinearGenomeViewHeader;
144
+ exports["default"] = _default;
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- export declare const useStyles: (props?: any) => Record<"closeButton", string>;
3
- export default function HelpDialog({ handleClose, }: {
4
- handleClose: () => void;
5
- }): JSX.Element;
1
+ /// <reference types="react" />
2
+ export declare const useStyles: (props?: any) => import("@material-ui/styles").ClassNameMap<"closeButton">;
3
+ export default function HelpDialog({ handleClose, }: {
4
+ handleClose: () => void;
5
+ }): JSX.Element;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = HelpDialog;
9
+ exports.useStyles = void 0;
10
+
11
+ var _react = _interopRequireDefault(require("react"));
12
+
13
+ var _core = require("@material-ui/core");
14
+
15
+ var _Close = _interopRequireDefault(require("@material-ui/icons/Close"));
16
+
17
+ var useStyles = (0, _core.makeStyles)(function (theme) {
18
+ return {
19
+ closeButton: {
20
+ position: 'absolute',
21
+ right: theme.spacing(1),
22
+ top: theme.spacing(1),
23
+ color: theme.palette.grey[500]
24
+ }
25
+ };
26
+ });
27
+ exports.useStyles = useStyles;
28
+
29
+ function HelpDialog(_ref) {
30
+ var handleClose = _ref.handleClose;
31
+ var classes = useStyles();
32
+ return /*#__PURE__*/_react["default"].createElement(_core.Dialog, {
33
+ open: true,
34
+ maxWidth: "xl",
35
+ onClose: handleClose
36
+ }, /*#__PURE__*/_react["default"].createElement(_core.DialogTitle, null, "Using the search box", handleClose ? /*#__PURE__*/_react["default"].createElement(_core.IconButton, {
37
+ "data-testid": "close-resultsDialog",
38
+ className: classes.closeButton,
39
+ onClick: function onClick() {
40
+ handleClose();
41
+ }
42
+ }, /*#__PURE__*/_react["default"].createElement(_Close["default"], null)) : null), /*#__PURE__*/_react["default"].createElement(_core.Divider, null), /*#__PURE__*/_react["default"].createElement(_core.DialogContent, null, /*#__PURE__*/_react["default"].createElement("h3", null, "Searching"), /*#__PURE__*/_react["default"].createElement("ul", null, /*#__PURE__*/_react["default"].createElement("li", null, "Jump to a feature or reference sequence by typing its name in the location box and pressing Enter."), /*#__PURE__*/_react["default"].createElement("li", null, "Jump to a specific region by typing the region into the location box as: ", /*#__PURE__*/_react["default"].createElement("code", null, "ref:start..end"), " or ", /*#__PURE__*/_react["default"].createElement("code", null, "ref:start-end"), ". Commas are allowed in the start and end coordinates. A space-separated list of locstrings can be used to open up multiple chromosomes at a time")), /*#__PURE__*/_react["default"].createElement("h3", null, "Example Searches"), /*#__PURE__*/_react["default"].createElement("ul", null, /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement("code", null, "BRCA"), " - searches for the feature named BRCA"), /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement("code", null, "chr4"), " - jumps to chromosome 4"), /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement("code", null, "chr4:79,500,000..80,000,000"), " - jumps the region on chromosome 4 between 79.5Mb and 80Mb."), /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement("code", null, "chr1:1-100 chr2:1-100"), " - create a split view of chr1:1-100 and chr2:1-100"), /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement("code", null, "chr1 chr2 chr3"), " - open up multiple chromosomes at once"), /*#__PURE__*/_react["default"].createElement("li", null, /*#__PURE__*/_react["default"].createElement("code", null, "chr1:1-100[rev] chr2:1-100"), " - open up the first region in the horizontally flipped orientation"))), /*#__PURE__*/_react["default"].createElement(_core.Divider, null), /*#__PURE__*/_react["default"].createElement(_core.DialogActions, null, /*#__PURE__*/_react["default"].createElement(_core.Button, {
43
+ onClick: function onClick() {
44
+ return handleClose();
45
+ },
46
+ color: "primary"
47
+ }, "Close")));
48
+ }
@@ -1,7 +1,7 @@
1
- /// <reference types="react" />
2
- import { LinearGenomeViewModel } from '..';
3
- declare type LGV = LinearGenomeViewModel;
4
- declare const ImportForm: ({ model }: {
5
- model: LGV;
6
- }) => JSX.Element;
7
- export default ImportForm;
1
+ /// <reference types="react" />
2
+ import { LinearGenomeViewModel } from '..';
3
+ declare type LGV = LinearGenomeViewModel;
4
+ declare const ImportForm: ({ model }: {
5
+ model: LGV;
6
+ }) => JSX.Element;
7
+ export default ImportForm;