import React from 'react'; import classnames from 'classnames'; import PropTypes from 'prop-types'; import { Button, Icon } from '@ohif/ui'; const Notification = ({ type, message, actions, onSubmit }) => { const iconsByType = { error: { icon: 'info', color: 'text-red-700', }, warning: { icon: 'info', color: 'text-yellow-500', }, info: { icon: 'info', color: 'text-primary-main', }, success: { icon: 'info', color: 'text-green-500', }, }; const getIconData = () => { return ( iconsByType[type] || { icon: '', color: '', } ); }; const { icon, color } = getIconData(); return (
{message}
{actions.map((action, index) => { const isFirst = index === 0; const isPrimary = action.type === 'primary'; return ( ); })}
); }; Notification.defaultProps = { type: 'info', }; Notification.propTypes = { type: PropTypes.string, message: PropTypes.string.isRequired, actions: PropTypes.arrayOf( PropTypes.shape({ text: PropTypes.string.isRequired, value: PropTypes.any.isRequired, type: PropTypes.oneOf(['primary', 'secondary', 'cancel']).isRequired, }) ).isRequired, onSubmit: PropTypes.func.isRequired, }; export default Notification;