@trellixio/roaster-coffee
Version:
Beans' product component library
20 lines (19 loc) • 1.14 kB
JavaScript
/* eslint-disable jsx-a11y/no-static-element-interactions */
/* eslint-disable jsx-a11y/click-events-have-key-events */
import * as React from 'react';
import { classNames } from '@/utils';
import { ButtonIcon } from '../ButtonIcon';
export function Modal({ className, opened, title, onClose, children, size = 'small', footer }) {
if (!opened)
return null;
return (React.createElement("section", { className: "modal visible" },
React.createElement("div", { className: "background-overlay", onClick: onClose }),
React.createElement("div", { className: classNames('modal-popup', size, className) },
React.createElement("div", { className: "modal-header" },
React.createElement("h3", null, title),
React.createElement(ButtonIcon, { variant: "close-modal", onClick: onClose },
React.createElement("i", { className: "fa-regular fa-xmark" }))),
React.createElement("div", { className: "modal-body" }, children),
footer && React.createElement("div", { className: "modal-footer" }, footer))));
}
Modal.displayName = 'Modal';