40 lines
1.2 KiB
JavaScript
40 lines
1.2 KiB
JavaScript
"use client";
|
|
import { AddCircle } from "@mui/icons-material";
|
|
import { Button, Dialog, IconButton, useMediaQuery, useTheme } from "@mui/material";
|
|
import CreateRoleForm from "./Form";
|
|
import { useState } from "react";
|
|
|
|
const CreateRole = ({ mutate }) => {
|
|
const theme = useTheme();
|
|
const isMobile = useMediaQuery(theme.breakpoints.down("sm"));
|
|
const [open, setOpen] = useState(false);
|
|
|
|
const handleOpen = () => {
|
|
setOpen(true);
|
|
};
|
|
|
|
return (
|
|
<>
|
|
{isMobile ? (
|
|
<IconButton aria-label="نقش جدید" color="primary" onClick={handleOpen}>
|
|
<AddCircle sx={{ fontSize: "25px" }} />
|
|
</IconButton>
|
|
) : (
|
|
<Button
|
|
size={"small"}
|
|
variant="contained"
|
|
color="primary"
|
|
startIcon={<AddCircle />}
|
|
onClick={handleOpen}
|
|
>
|
|
نقش جدید
|
|
</Button>
|
|
)}
|
|
<Dialog maxWidth="sm" fullWidth={true} open={open}>
|
|
<CreateRoleForm open={open} setOpen={setOpen} mutate={mutate} />
|
|
</Dialog>
|
|
</>
|
|
);
|
|
};
|
|
export default CreateRole;
|