/
deka
/
dber
Обзор
Документация
Войти
/
deka
/
dber
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
dev
components/list_nav.js
42 строки
2 KB
Maxim Ratnikov
Обновление страниц
02 окт 2024, 12:13
02 окт 2024, 12:13
17292e8
Код
Авторство
О чём код?
import Link from 'next/link'; import { Space, Button, Switch } from '@arco-design/web-react'; import { IconSunFill, IconMoonFill } from '@arco-design/web-react/icon'; import graphState from '@/hooks/use-graph-state'; /** * It renders a nav bar with a link to the home page, a button to add a new graph, and a dropdown menu * with a list of import options * @param props - the props passed to the component * @returns List Nav component */ export default function ListNav({ importGraph, addGraph, addExample }) { const { theme, setTheme } = graphState.useContainer(); return ( <div className="nav"> <div> <Link href="/" passHref> <strong>SBER</strong> | Проектирование баз данных на базе ER диаграм в DBML </Link> </div> <Space> <Button size="small" type="outline" shape="round" onClick={() => importGraph()}> Импорт </Button> <Button size="small" type="primary" shape="round" onClick={() => addGraph()}> + Новая схема </Button> <Button size="small" shape="round" onClick={() => addExample()}> Примеры схем </Button> <Switch checkedIcon={<IconMoonFill />} uncheckedIcon={<IconSunFill />} checked={theme === 'dark'} onChange={e => setTheme(e ? 'dark' : 'light')} /> </Space> </div> ); }