Files
Homarr/src/components/layout/Header.tsx

64 lines
1.4 KiB
TypeScript
Raw Normal View History

import {
2022-06-27 17:27:59 +02:00
ActionIcon,
Box,
Burger,
2022-06-27 17:27:59 +02:00
createStyles,
Drawer,
2022-06-27 17:27:59 +02:00
Group,
Header as Head,
ScrollArea,
2022-06-27 17:27:59 +02:00
Title,
Transition,
} from '@mantine/core';
import { useBooleanToggle } from '@mantine/hooks';
2022-05-16 15:56:16 +02:00
import { AddItemShelfButton } from '../AppShelf/AddAppShelfItem';
import {
CalendarModule,
DateModule,
TotalDownloadsModule,
WeatherModule,
DashdotModule,
} from '../modules';
import DockerMenuButton from '../modules/docker/DockerModule';
import { ModuleWrapper } from '../modules/moduleWrapper';
2022-06-27 17:27:59 +02:00
import SearchBar from '../modules/search/SearchModule';
import { SettingsMenuButton } from '../Settings/SettingsMenu';
import { Logo } from './Logo';
2022-04-25 00:11:32 +02:00
const HEADER_HEIGHT = 60;
const useStyles = createStyles((theme) => ({
2022-05-16 15:56:16 +02:00
hide: {
2022-05-16 14:34:01 +02:00
[theme.fn.smallerThan('xs')]: {
2022-04-25 00:11:32 +02:00
display: 'none',
},
},
burger: {
[theme.fn.largerThan('sm')]: {
display: 'none',
},
},
2022-04-25 00:11:32 +02:00
}));
2022-05-16 13:54:08 +02:00
export function Header(props: any) {
const [opened, toggleOpened] = useBooleanToggle(false);
2022-04-25 00:11:32 +02:00
const { classes, cx } = useStyles();
const [hidden, toggleHidden] = useBooleanToggle(true);
2022-04-25 00:11:32 +02:00
return (
2022-05-16 15:56:16 +02:00
<Head height="auto">
<Group p="xs" position="apart">
2022-05-16 15:56:16 +02:00
<Box className={classes.hide}>
<Logo style={{ fontSize: 22 }} />
</Box>
<Group noWrap>
2022-05-16 13:54:08 +02:00
<SearchBar />
<DockerMenuButton />
2022-05-04 07:12:22 +02:00
<SettingsMenuButton />
<AddItemShelfButton />
2022-05-04 07:12:22 +02:00
</Group>
</Group>
2022-04-25 00:11:32 +02:00
</Head>
);
}