import { useAdminDeleteCollection } from "medusa-react" import { useNavigate } from "react-router-dom" import { useTranslation } from "react-i18next" import useImperativeDialog from "../../../hooks/use-imperative-dialog" import EditIcon from "../../fundamentals/icons/edit-icon" import TrashIcon from "../../fundamentals/icons/trash-icon" import { ActionType } from "../../molecules/actionables" const useCollectionActions = (collection) => { const { t } = useTranslation() const navigate = useNavigate() const dialog = useImperativeDialog() const deleteCollection = useAdminDeleteCollection(collection?.id) const handleDelete = async () => { const shouldDelete = await dialog({ heading: t("collections-table-delete-collection", "Delete Collection"), text: t( "collections-table-confirm-delete", "Are you sure you want to delete this collection?" ), }) if (shouldDelete) { deleteCollection.mutate() } } const getActions = (coll): ActionType[] => [ { label: t("collections-table-edit", "Edit"), onClick: () => navigate(`/a/collections/${coll.id}`), icon: , }, { label: t("collections-table-delete", "Delete"), variant: "danger", onClick: handleDelete, icon: , }, ] return { getActions, } } export default useCollectionActions