import React, { useState } from "react";
import { __ } from "@wordpress/i18n";
import { IconDotsHorizontal } from "~betterdocs/icons";
import { useDashboardContext } from "../DashboardContext";
import { gutenbergEditScreenUrl } from "../helpers/Helpers";
import { applyFilters } from "@wordpress/hooks";
const ContextMenu = (props) => {
const { doc, status } = props;
const { data, setData } = useDashboardContext();
const { isListMenuOpen, docId } = data;
const { doc_category, knowledge_base } = doc;
let nonTrashButtons = applyFilters('contextMenuListTable', {
'edit' : () => {
return
{__("Edit", "betterdocs")}
},
'quickEdit':() => {
return
setData((state) => ({
...state,
isOpen: true,
docData: doc,
}))
}
>
{__("Quick Edit", "betterdocs")}
},
'trash':() => {
return
{
event.preventDefault();
setData((state) => ({
...state,
quickAction: {
action: "trash",
docId: doc?.id,
},
}));
}}
>
{__("Trash", "betterdocs")}
},
'view':() => {
return
{__("View", "betterdocs")}
}
}, doc);
return (
setData((state) => ({
...state,
isListMenuOpen: !isListMenuOpen,
docId: doc.id,
}))
}
>
{isListMenuOpen && docId != undefined && docId == doc?.id && (
{status != "trash" && (
Object.keys(nonTrashButtons)?.map((key) => {
return nonTrashButtons[key]();
})
)}
{status == 'trash' && <>
-
{
e.preventDefault();
setData((state) => ({
...state,
quickAction: {
action: "restore",
docId: doc?.id,
},
}));
}}
>
{__("Restore", "betterdocs")}
-
{
e.preventDefault();
setData((state) => ({
...state,
quickAction: {
action: "permanent-delete",
docId: doc?.id,
},
}));
}}
>
{__("Delete Permanantly", "betterdocs")}
> }
)}
);
};
export default ContextMenu;