import React, { useCallback } from 'react'; import PropTypes from 'prop-types'; import { useTranslation } from 'react-i18next'; import { Menu } from 'semantic-ui-react'; import { withPopup } from '../../../lib/popup'; import { Popup } from '../../../lib/custom-ui'; import { useSteps } from '../../../hooks'; import DeleteStep from '../../DeleteStep'; import styles from './ActionsPopup.module.css'; const StepTypes = { DELETE: 'DELETE', }; const ActionsStep = React.memo(({ onNameEdit, onDelete, onClose }) => { const [t] = useTranslation(); const [step, openStep, handleBack] = useSteps(); const handleNameEditClick = useCallback(() => { onNameEdit(); onClose(); }, [onNameEdit, onClose]); const handleDeleteClick = useCallback(() => { openStep(StepTypes.DELETE); }, [openStep]); if (step && step.type === StepTypes.DELETE) { return ( ); } return ( <> {t('common.taskActions', { context: 'title', })} {t('action.editDescription', { context: 'title', })} {t('action.deleteTask', { context: 'title', })} ); }); ActionsStep.propTypes = { onNameEdit: PropTypes.func.isRequired, onDelete: PropTypes.func.isRequired, onClose: PropTypes.func.isRequired, }; export default withPopup(ActionsStep);