|
| 1 | +import React from 'react'; |
| 2 | +import PropTypes from 'prop-types'; |
| 3 | +import { Button } from '@trussworks/react-uswds'; |
| 4 | + |
| 5 | +import Modal, { ModalTitle, ModalClose, ModalActions, connectModal } from 'components/Modal/Modal'; |
| 6 | + |
| 7 | +export const BulkAssignmentModal = ({ onClose, onSubmit, title, content, submitText, closeText }) => ( |
| 8 | + <Modal> |
| 9 | + <ModalClose handleClick={() => onClose()} /> |
| 10 | + <ModalTitle> |
| 11 | + <h3>{title}</h3> |
| 12 | + </ModalTitle> |
| 13 | + <p>{content}</p> |
| 14 | + <ModalActions autofocus="true"> |
| 15 | + <Button |
| 16 | + data-focus="true" |
| 17 | + className="usa-button--destructive" |
| 18 | + type="submit" |
| 19 | + data-testid="modalSubmitButton" |
| 20 | + onClick={() => onSubmit()} |
| 21 | + > |
| 22 | + {submitText} |
| 23 | + </Button> |
| 24 | + <Button className="usa-button--secondary" type="button" onClick={() => onClose()} data-testid="modalBackButton"> |
| 25 | + {closeText} |
| 26 | + </Button> |
| 27 | + </ModalActions> |
| 28 | + </Modal> |
| 29 | +); |
| 30 | + |
| 31 | +BulkAssignmentModal.propTypes = { |
| 32 | + onClose: PropTypes.func.isRequired, |
| 33 | + onSubmit: PropTypes.func.isRequired, |
| 34 | + |
| 35 | + title: PropTypes.string, |
| 36 | + content: PropTypes.string, |
| 37 | + submitText: PropTypes.string, |
| 38 | + closeText: PropTypes.string, |
| 39 | +}; |
| 40 | + |
| 41 | +BulkAssignmentModal.defaultProps = { |
| 42 | + title: 'Bulk Assignment', |
| 43 | + content: 'Here we will display moves to be assigned in bulk.', |
| 44 | + submitText: 'Save', |
| 45 | + closeText: 'Cancel', |
| 46 | +}; |
| 47 | + |
| 48 | +BulkAssignmentModal.displayName = 'BulkAssignmentModal'; |
| 49 | + |
| 50 | +export default connectModal(BulkAssignmentModal); |
0 commit comments