import React, { useEffect } from 'react'; import Button from 'Components/Link/Button'; import Modal from 'Components/Modal/Modal'; import ModalBody from 'Components/Modal/ModalBody'; import ModalContent from 'Components/Modal/ModalContent'; import ModalFooter from 'Components/Modal/ModalFooter'; import ModalHeader from 'Components/Modal/ModalHeader'; import useKeyboardShortcuts from 'Helpers/Hooks/useKeyboardShortcuts'; import { kinds } from 'Helpers/Props'; import translate from 'Utilities/String/translate'; interface PendingChangesModalProps { className?: string; isOpen: boolean; onConfirm: () => void; onCancel: () => void; } function PendingChangesModal({ isOpen, onConfirm, onCancel, }: PendingChangesModalProps) { const { bindShortcut, unbindShortcut } = useKeyboardShortcuts(); useEffect(() => { if (isOpen) { bindShortcut('acceptConfirmModal', onConfirm); } return () => unbindShortcut('acceptConfirmModal'); }, [bindShortcut, unbindShortcut, isOpen, onConfirm]); return ( {translate('UnsavedChanges')} {translate('PendingChangesMessage')} ); } export default PendingChangesModal;