import { useState } from "react"; import {Box, Button, FormControl, InputLabel, MenuItem, Select, Typography, useTheme} from "@mui/material"; import { DataGrid, GridLoadingOverlay, GridToolbar } from "@mui/x-data-grid"; import { AdapterDayjs } from "@mui/x-date-pickers/AdapterDayjs"; import { LocalizationProvider } from "@mui/x-date-pickers/LocalizationProvider"; import { usePromocodes } from "@root/api/promocode/swr"; import { fadeIn } from "@root/utils/style/keyframes"; import { CreatePromocodeForm } from "./CreatePromocodeForm"; import { usePromocodeGridColDef } from "./usePromocodeGridColDef"; import { StatisticsModal } from "./StatisticsModal"; import DeleteModal from "./DeleteModal"; import {promocodeApi} from "@root/api/promocode/requests"; import {SelectChangeEvent} from "@mui/material/Select"; import {EditModal} from "@pages/dashboard/Content/PromocodeManagement/EditModal"; export const PromocodeManagement = () => { const theme = useTheme(); const [deleteModal, setDeleteModal] = useState(""); const deleteModalHC = (id: string) => setDeleteModal(id); const [showStatisticsModalId, setShowStatisticsModalId] = useState(""); const [showEditModalId, setShowEditModalId] = useState(""); const [page, setPage] = useState(0); const [to, setTo] = useState(0); const [from, setFrom] = useState(0); const [pageSize, setPageSize] = useState(10); const [active, setActive] = useState(true); const { data, error, isValidating, promocodesCount, promocodeStatistics, deletePromocode, createPromocode, editPromocode, createFastLink, } = usePromocodes(page, pageSize, showStatisticsModalId, to, from, active); const columns = usePromocodeGridColDef( setShowEditModalId, setShowStatisticsModalId, deleteModalHC ); if (error) return Ошибка загрузки промокодов; return ( Создание промокода ); };