mirror of
https://github.com/twentyhq/twenty.git
synced 2026-06-13 02:19:02 -04:00
* wip * wip * Ok * Deleted unused code * Fixed lint * Minor fixes * Minor fixes * Minor Fixes * Minor merge fixes * Ok * Fix storybook tests * Removed console.log * Fix login * asd * Fixed storybook * Added await * Fixed await * Added sleep for failing test * Fix sleep * Fix test * Fix tests --------- Co-authored-by: Charles Bochet <charles@twenty.com>
49 lines
1.2 KiB
TypeScript
49 lines
1.2 KiB
TypeScript
import { useSetRecoilState } from 'recoil';
|
|
|
|
import { RecoilScope } from '../../recoil-scope/components/RecoilScope';
|
|
import { useCurrentRowSelected } from '../hooks/useCurrentRowSelected';
|
|
import { ColumnIndexContext } from '../states/ColumnIndexContext';
|
|
import { contextMenuPositionState } from '../states/contextMenuPositionState';
|
|
|
|
export function EntityTableCell({
|
|
cellIndex,
|
|
children,
|
|
size,
|
|
}: {
|
|
size: number;
|
|
cellIndex: number;
|
|
children: React.ReactNode;
|
|
}) {
|
|
const setContextMenuPosition = useSetRecoilState(contextMenuPositionState);
|
|
|
|
const { setCurrentRowSelected } = useCurrentRowSelected();
|
|
|
|
function handleContextMenu(event: React.MouseEvent) {
|
|
event.preventDefault();
|
|
|
|
setCurrentRowSelected(true);
|
|
|
|
setContextMenuPosition({
|
|
x: event.clientX,
|
|
y: event.clientY,
|
|
});
|
|
}
|
|
|
|
return (
|
|
<RecoilScope>
|
|
<ColumnIndexContext.Provider value={cellIndex}>
|
|
<td
|
|
onContextMenu={(event) => handleContextMenu(event)}
|
|
style={{
|
|
width: size,
|
|
minWidth: size,
|
|
maxWidth: size,
|
|
}}
|
|
>
|
|
{children}
|
|
</td>
|
|
</ColumnIndexContext.Provider>
|
|
</RecoilScope>
|
|
);
|
|
}
|