import _ from 'lodash';
import classnames from 'classnames';
import React from 'react';
export default class Modal extends React.Component {
getModalButtons(actions) {
let buttons = actions.map((action, index) => {
let classes = classnames('button', {
[action.supplementalClassName]: action.supplementalClassName,
'button--deemphasize': action.type === 'secondary',
'button--primary': action.type === 'primary'
});
return (
);
});
return (
{buttons}
);
}
getClickHandler(action) {
return () => {
if (action.triggerDismiss) {
this.props.dismiss();
}
if (action.clickHandler) {
action.clickHandler();
}
}
}
handleMenuWrapperClick(event) {
event.stopPropagation();
}
render() {
let contentClasses = classnames('modal__content',
`modal__content--align-${this.props.alignment}`);
return (
{this.props.heading}
{this.props.content}
{this.getModalButtons(this.props.actions)}
);
}
}
Modal.defaultProps = {
alignment: 'left'
};