Boards add context menu (#1223)

* - add context menu to boards

* - delete unused file
This commit is contained in:
brendanlaschke
2023-08-16 02:05:23 +02:00
committed by GitHub
parent aa1f9bcab3
commit 8bbc54f4c7
7 changed files with 81 additions and 16 deletions

View File

@ -1,5 +1,10 @@
import { Draggable } from '@hello-pangea/dnd';
import { useSetRecoilState } from 'recoil';
import { contextMenuIsOpenState } from '@/ui/context-menu/states/contextMenuIsOpenState';
import { contextMenuPositionState } from '@/ui/context-menu/states/contextMenuPositionState';
import { useCurrentCardSelected } from '../hooks/useCurrentCardSelected';
import { BoardOptions } from '../types/BoardOptions';
export function EntityBoardCard({
@ -11,6 +16,21 @@ export function EntityBoardCard({
cardId: string;
index: number;
}) {
const setContextMenuPosition = useSetRecoilState(contextMenuPositionState);
const setContextMenuOpenState = useSetRecoilState(contextMenuIsOpenState);
const { setCurrentCardSelected } = useCurrentCardSelected();
function handleContextMenu(event: React.MouseEvent) {
event.preventDefault();
setCurrentCardSelected(true);
setContextMenuPosition({
x: event.clientX,
y: event.clientY,
});
setContextMenuOpenState(true);
}
return (
<Draggable key={cardId} draggableId={cardId} index={index}>
{(draggableProvided) => (
@ -20,6 +40,7 @@ export function EntityBoardCard({
{...draggableProvided?.draggableProps}
data-selectable-id={cardId}
data-select-disable
onContextMenu={handleContextMenu}
>
{boardOptions.cardComponent}
</div>