24 lines
842 B
TypeScript
24 lines
842 B
TypeScript
import { useCallback } from 'react';
|
|
import { useRecoilState } from 'recoil';
|
|
|
|
import { useMoveEditModeToCellPosition } from '../../hooks/useMoveEditModeToCellPosition';
|
|
import { isCellInEditModeFamilyState } from '../../states/isCellInEditModeFamilyState';
|
|
|
|
import { useCurrentCellPosition } from './useCurrentCellPosition';
|
|
|
|
export function useCurrentCellEditMode() {
|
|
const moveEditModeToCellPosition = useMoveEditModeToCellPosition();
|
|
|
|
const currentCellPosition = useCurrentCellPosition();
|
|
|
|
const [isCurrentCellInEditMode] = useRecoilState(
|
|
isCellInEditModeFamilyState(currentCellPosition),
|
|
);
|
|
|
|
const setCurrentCellInEditMode = useCallback(() => {
|
|
moveEditModeToCellPosition(currentCellPosition);
|
|
}, [currentCellPosition, moveEditModeToCellPosition]);
|
|
|
|
return { isCurrentCellInEditMode, setCurrentCellInEditMode };
|
|
}
|