frontend/app/utils/showContextMenu.ts

22 lines
776 B
TypeScript

import { render } from "vue";
import ContextMenu from "~/components/UserInterface/ContextMenu.vue";
import type { ContextMenuInterface, ContextMenuItem, ContextMenuSection } from "~/types/interfaces";
export default (e: MouseEvent | PointerEvent, sections: ContextMenuSection[]) => {
e.preventDefault();
e.stopPropagation();
const contextMenu = useState<ContextMenuInterface>("contextMenu");
if (contextMenu.value.show) {
removeContextMenu(contextMenu);
} else {
console.log("Menu sections:", sections);
if (sections.length) {
console.log("Showing context menu");
contextMenu.value.show = true;
contextMenu.value.pointerX = e.clientX;
contextMenu.value.pointerY = e.clientY;
contextMenu.value.sections = sections;
console.log("Showed");
}
}
}