2024-02-20 08:04:32 +00:00
|
|
|
import { CssBaseline, ThemeProvider, Button } from "@mui/material";
|
2023-10-09 12:33:45 +00:00
|
|
|
import { LocalizationProvider } from "@mui/x-date-pickers";
|
|
|
|
import { AdapterDayjs } from "@mui/x-date-pickers/AdapterDayjs";
|
2023-12-31 02:53:25 +00:00
|
|
|
import { ruRU } from "@mui/x-date-pickers/locales";
|
2023-11-08 12:51:40 +00:00
|
|
|
import App from "./App";
|
|
|
|
import dayjs from "dayjs";
|
|
|
|
import "dayjs/locale/ru";
|
2024-02-20 08:04:32 +00:00
|
|
|
import { SnackbarProvider, closeSnackbar } from "notistack";
|
2023-11-08 12:51:40 +00:00
|
|
|
import { DndProvider } from "react-dnd";
|
|
|
|
import { HTML5Backend } from "react-dnd-html5-backend";
|
|
|
|
import { createRoot } from "react-dom/client";
|
|
|
|
import "./index.css";
|
|
|
|
import lightTheme from "./utils/themes/light";
|
2023-11-13 18:04:51 +00:00
|
|
|
import { SWRConfig } from "swr";
|
2023-12-31 02:53:25 +00:00
|
|
|
import { BrowserRouter } from "react-router-dom";
|
2024-02-10 01:41:13 +00:00
|
|
|
import moment from "moment";
|
2024-02-20 08:04:32 +00:00
|
|
|
import CloseIcon from "@icons/CloseBold";
|
|
|
|
|
|
|
|
import type { HTMLAttributes } from "react";
|
|
|
|
import type { SnackbarKey } from "notistack";
|
2023-10-09 12:33:45 +00:00
|
|
|
|
|
|
|
dayjs.locale("ru");
|
2024-02-09 19:08:04 +00:00
|
|
|
moment.locale("ru");
|
2023-10-09 12:33:45 +00:00
|
|
|
|
2023-12-31 02:53:25 +00:00
|
|
|
const localeText =
|
|
|
|
ruRU.components.MuiLocalizationProvider.defaultProps.localeText;
|
2023-04-23 08:39:34 +00:00
|
|
|
|
2024-02-20 08:04:32 +00:00
|
|
|
const snackbarProps: HTMLAttributes<HTMLDivElement> = {
|
|
|
|
onTouchStart: () => closeSnackbar(),
|
|
|
|
};
|
|
|
|
|
|
|
|
const snackbarAction = (snackbarId: SnackbarKey) => (
|
|
|
|
<Button
|
|
|
|
onClick={() => closeSnackbar(snackbarId)}
|
|
|
|
sx={{
|
|
|
|
minWidth: "auto",
|
|
|
|
padding: "0px",
|
|
|
|
"&:hover": { backgroundColor: "transparent" },
|
|
|
|
}}
|
|
|
|
>
|
|
|
|
<CloseIcon />
|
|
|
|
</Button>
|
|
|
|
);
|
|
|
|
|
2023-08-11 07:25:28 +00:00
|
|
|
const root = createRoot(document.getElementById("root")!);
|
|
|
|
|
|
|
|
root.render(
|
2023-12-31 02:53:25 +00:00
|
|
|
<SWRConfig
|
|
|
|
value={{
|
|
|
|
revalidateOnFocus: false,
|
|
|
|
shouldRetryOnError: false,
|
|
|
|
}}
|
|
|
|
>
|
|
|
|
<DndProvider backend={HTML5Backend}>
|
|
|
|
<LocalizationProvider
|
|
|
|
dateAdapter={AdapterDayjs}
|
|
|
|
adapterLocale="ru"
|
|
|
|
localeText={localeText}
|
|
|
|
>
|
|
|
|
<ThemeProvider theme={lightTheme}>
|
|
|
|
<BrowserRouter>
|
|
|
|
<SnackbarProvider
|
2024-02-20 08:04:32 +00:00
|
|
|
SnackbarProps={snackbarProps}
|
|
|
|
action={snackbarAction}
|
2023-12-31 02:53:25 +00:00
|
|
|
preventDuplicate={true}
|
|
|
|
style={{ backgroundColor: lightTheme.palette.brightPurple.main }}
|
|
|
|
>
|
|
|
|
<CssBaseline />
|
|
|
|
<App />
|
|
|
|
</SnackbarProvider>
|
|
|
|
</BrowserRouter>
|
|
|
|
</ThemeProvider>
|
|
|
|
</LocalizationProvider>
|
|
|
|
</DndProvider>
|
|
|
|
</SWRConfig>,
|
2022-12-03 21:37:21 +00:00
|
|
|
);
|