UNPKG

@open-formulieren/formio-builder

Version:

An opinionated Formio webform builder for Open Forms

13 lines (12 loc) 1.31 kB
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime"; import clsx from 'clsx'; import { createContext, useContext } from 'react'; import { FormattedMessage } from 'react-intl'; import ReactModal from 'react-modal'; export const ModalContext = createContext({}); ModalContext.displayName = 'ModalContext'; const Modal = ({ isOpen, closeModal, className, children }) => { const { parentSelector, ariaHideApp } = useContext(ModalContext); return (_jsxs(ReactModal, Object.assign({ isOpen: isOpen, onRequestClose: closeModal, parentSelector: parentSelector, ariaHideApp: ariaHideApp, portalClassName: isOpen ? clsx('formio-dialog', 'formio-dialog-theme-default', className) : undefined, overlayClassName: "formio-dialog-overlay", className: "formio-dialog-content", overlayElement: (props, contentElement) => (_jsxs(_Fragment, { children: [_jsx("div", Object.assign({}, props)), contentElement] })) }, { children: [_jsx("button", Object.assign({ type: "button", className: "formio-dialog-close float-right btn btn-secondary btn-sm", onClick: closeModal }, { children: _jsx("span", Object.assign({ className: "sr-only" }, { children: _jsx(FormattedMessage, { id: 'yGAl1a', defaultMessage: [{ type: 0, value: "Close" }] }) })) })), children] }))); }; export default Modal;