import MenuIcon from '@mui/icons-material/Menu'; import { Button, Menu, MenuItem } from "@mui/material"; import { DeleteConfirmationModal } from "@/core/ui/Modals/DeleteConfirmationModal"; import { WgerModal } from "@/core/ui/Modals/WgerModal"; import { NutritionalPlan } from "@/components/Nutrition/models/nutritionalPlan"; import { useDeleteNutritionalPlanQuery } from "@/components/Nutrition/queries"; import { PlanForm } from "@/components/Nutrition/widgets/forms/PlanForm"; import React from "react"; import { useTranslation } from "react-i18next"; import { useNavigate } from "react-router-dom"; import { makeLink, WgerLink } from "@/core/lib/url"; export const PlanDetailDropdown = (props: { plan: NutritionalPlan }) => { const deletePlanQuery = useDeleteNutritionalPlanQuery(props.plan.id!); const navigate = useNavigate(); const [t, i18n] = useTranslation(); const [anchorEl, setAnchorEl] = React.useState(null); const [openEditModal, setOpenEditModal] = React.useState(false); const [openDeleteModal, setOpenDeleteModal] = React.useState(false); const open = Boolean(anchorEl); const handleClick = (event: React.MouseEvent) => { setAnchorEl(event.currentTarget); }; const handleEdit = () => { handleClose(); handleOpenEditModal(); }; const handleClose = () => { setAnchorEl(null); }; const handleDelete = () => { handleOpenDeleteModal(); setAnchorEl(null); }; const performDelete = () => { deletePlanQuery.mutate(props.plan.id!); navigate((makeLink(WgerLink.NUTRITION_OVERVIEW))); }; const navigateToPdfDownload = () => window.location.href = makeLink(WgerLink.NUTRITION_PLAN_PDF, i18n.language, { id: props.plan.id! }); const navigateToCopyPlan = () => window.location.href = makeLink(WgerLink.NUTRITION_PLAN_COPY, i18n.language, { id: props.plan.id! }); const handleOpenEditModal = () => setOpenEditModal(true); const handleCloseEditModal = () => setOpenEditModal(false); const handleOpenDeleteModal = () => setOpenDeleteModal(true); const handleCloseDeleteModal = () => setOpenDeleteModal(false); return <> {t("edit")} {t("downloadAsPdf")} {t("nutrition.copyPlan")} {t("delete")} ; };