import { useState, useCallback } from 'react'; import { useTranslation } from 'next-i18next'; import { Modal, ModalBody, } from 'reactstrap'; import { apiv3Post } from '~/client/util/apiv3-client'; type ModalProps = { isOpen: boolean, onClose: () => void, }; const QuestionnaireCompletionModal = (props: ModalProps): JSX.Element => { const { t } = useTranslation('commons'); const { isOpen, onClose } = props; return (

{t('questionnaire_modal.title')}

{t('questionnaire_modal.successfully_submitted')}

{t('questionnaire_modal.thanks_for_answering')}

{t('Close')}
); }; const ProactiveQuestionnaireModal = (props: ModalProps): JSX.Element => { const { t } = useTranslation('commons'); const { isOpen, onClose } = props; const [isQuestionnaireCompletionModal, setQuestionnaireCompletionModal] = useState(false); const submitHandler = useCallback(async(e) => { e.preventDefault(); const formData = e.target.elements; const { satisfaction: { value: satisfaction }, lengthOfExperience: { value: lengthOfExperience }, occupation: { value: occupation }, position: { value: position }, commentText: { value: commentText }, } = formData; const sendValues = { satisfaction: Number(satisfaction), lengthOfExperience, occupation, position, commentText, }; apiv3Post('/questionnaire/proactive/answer', sendValues); onClose(); setQuestionnaireCompletionModal(true); }, [onClose]); return ( <>

{t('questionnaire_modal.title')}

{t('questionnaire_modal.more_satisfied_services')}

{t('questionnaire_modal.strive_to_improve_services')}