@jbrowse/plugin-linear-genome-view
Version:
JBrowse 2 linear genome view
34 lines (33 loc) • 1.73 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
import { makeStyles } from '@jbrowse/core/util/tss-react';
import { FormGroup } from '@mui/material';
import { observer } from 'mobx-react';
import HeaderPanControls from "./HeaderPanControls.js";
import HeaderRegionWidth from "./HeaderRegionWidth.js";
import HeaderTrackSelectorButton from "./HeaderTrackSelectorButton.js";
import HeaderZoomControls from "./HeaderZoomControls.js";
import OverviewScalebar from "./OverviewScalebar.js";
import SearchBox from "./SearchBox.js";
import { HEADER_BAR_HEIGHT } from "../consts.js";
const useStyles = makeStyles()({
headerBar: {
display: 'flex',
height: HEADER_BAR_HEIGHT,
},
headerForm: {
flexWrap: 'nowrap',
marginRight: 7,
},
spacer: {
flexGrow: 1,
},
});
const Controls = function ({ model }) {
const { classes } = useStyles();
return (_jsxs("div", { className: classes.headerBar, children: [_jsx(HeaderTrackSelectorButton, { model: model }), _jsx("div", { className: classes.spacer }), _jsxs(FormGroup, { row: true, className: classes.headerForm, children: [_jsx(HeaderPanControls, { model: model }), _jsx(SearchBox, { model: model })] }), _jsx(HeaderRegionWidth, { model: model }), _jsx(HeaderZoomControls, { model: model }), _jsx("div", { className: classes.spacer })] }));
};
const LinearGenomeViewHeader = observer(function LinearGenomeViewHeader({ model, }) {
const { hideHeader, hideHeaderOverview } = model;
return !hideHeader ? (hideHeaderOverview ? (_jsx(Controls, { model: model })) : (_jsx(OverviewScalebar, { model: model, children: _jsx(Controls, { model: model }) }))) : null;
});
export default LinearGenomeViewHeader;