import { Dispatch, SetStateAction } from 'react'; import { IHistoryState } from '../../../Interfaces/IHistoryState'; import { ENABLE_SHORTCUTS } from '../../../utils/default'; export function OnKey( event: KeyboardEvent, history: IHistoryState[], historyCurrentStep: number, setHistoryCurrentStep: Dispatch>, deleteAction: () => void ): void { if (!ENABLE_SHORTCUTS) { return; } event.preventDefault(); if (event.isComposing || event.keyCode === 229) { return; } if (event.key === 'z' && event.ctrlKey && historyCurrentStep > 0) { setHistoryCurrentStep(historyCurrentStep - 1); } else if (event.key === 'y' && event.ctrlKey && historyCurrentStep < history.length - 1) { setHistoryCurrentStep(historyCurrentStep + 1); } else if (event.key === 'Delete') { deleteAction(); } }