8da0205bab
* renamed editable field to inline cell in ui folder * renamed table to table-cell in ui folder
27 lines
952 B
TypeScript
27 lines
952 B
TypeScript
import { useCallback } from 'react';
|
|
import { useRecoilState } from 'recoil';
|
|
|
|
import { useMoveEditModeToTableCellPosition } from '../../hooks/useMoveEditModeToCellPosition';
|
|
import { isTableCellInEditModeFamilyState } from '../../states/isTableCellInEditModeFamilyState';
|
|
|
|
import { useCurrentTableCellPosition } from './useCurrentCellPosition';
|
|
|
|
export const useCurrentTableCellEditMode = () => {
|
|
const moveEditModeToTableCellPosition = useMoveEditModeToTableCellPosition();
|
|
|
|
const currentTableCellPosition = useCurrentTableCellPosition();
|
|
|
|
const [isCurrentTableCellInEditMode] = useRecoilState(
|
|
isTableCellInEditModeFamilyState(currentTableCellPosition),
|
|
);
|
|
|
|
const setCurrentTableCellInEditMode = useCallback(() => {
|
|
moveEditModeToTableCellPosition(currentTableCellPosition);
|
|
}, [currentTableCellPosition, moveEditModeToTableCellPosition]);
|
|
|
|
return {
|
|
isCurrentTableCellInEditMode,
|
|
setCurrentTableCellInEditMode,
|
|
};
|
|
};
|