generic-message-modal.tsx 956 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. import { useTranslation } from 'react-i18next'
  2. import { Modal } from 'react-bootstrap'
  3. import AccessibleModal from '@/shared/components/accessible-modal'
  4. import { memo } from 'react'
  5. export type GenericMessageModalOwnProps = {
  6. title: string
  7. message: string
  8. }
  9. type GenericMessageModalProps = React.ComponentProps<typeof AccessibleModal> &
  10. GenericMessageModalOwnProps
  11. function GenericMessageModal({
  12. title,
  13. message,
  14. ...modalProps
  15. }: GenericMessageModalProps) {
  16. const { t } = useTranslation()
  17. return (
  18. <AccessibleModal {...modalProps}>
  19. <Modal.Header closeButton>
  20. <Modal.Title>{title}</Modal.Title>
  21. </Modal.Header>
  22. <Modal.Body className="modal-body-share">{message}</Modal.Body>
  23. <Modal.Footer>
  24. <button className="btn btn-info" onClick={() => modalProps.onHide()}>
  25. {t('ok')}
  26. </button>
  27. </Modal.Footer>
  28. </AccessibleModal>
  29. )
  30. }
  31. export default memo(GenericMessageModal)