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

46 lines
1.1 KiB
TypeScript
Raw Normal View History

import { AppShell, createStyles, Group } from '@mantine/core';
2022-04-25 00:11:32 +02:00
import { Header } from './Header';
import { Footer } from './Footer';
2022-05-10 18:58:21 +02:00
import Aside from './Aside';
import { ModuleWrapper } from '../modules/moduleWrapper';
import {
CalendarModule,
TotalDownloadsModule,
WeatherModule,
DateModule,
SystemModule,
} from '../modules';
2022-04-25 00:11:32 +02:00
const useStyles = createStyles((theme) => ({
2022-05-16 13:54:29 +02:00
main: {},
2022-04-25 00:11:32 +02:00
}));
export default function Layout({ children, style }: any) {
const drawerContent = (
<Group my="sm" grow direction="column" style={{ width: 300 }}>
<ModuleWrapper module={CalendarModule} />
<ModuleWrapper module={TotalDownloadsModule} />
<ModuleWrapper module={WeatherModule} />
<ModuleWrapper module={DateModule} />
<ModuleWrapper module={SystemModule} />
</Group>
);
2022-04-25 00:11:32 +02:00
const { classes, cx } = useStyles();
return (
<AppShell
aside={<Aside />}
header={<Header data={drawerContent} />}
footer={<Footer links={[]} />}
>
2022-05-16 13:54:29 +02:00
<main
className={cx(classes.main)}
style={{
...style,
}}
>
{children}
</main>
2022-04-25 00:11:32 +02:00
</AppShell>
);
}