UNPKG

flexacore-ui-dev

Version:

Universal UI Framework for CDN, React, Angular, Vue, Svelte with TypeScript support

33 lines (32 loc) 1.35 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.FCModal = void 0; const react_1 = __importDefault(require("react")); const FCModal = ({ open, onClose, className = '', children, ...rest }) => { react_1.default.useEffect(() => { if (open) { document.body.classList.add('fc-modal-open'); } else { document.body.classList.remove('fc-modal-open'); } return () => { document.body.classList.remove('fc-modal-open'); }; }, [open]); return (react_1.default.createElement("div", { className: [ 'fc-modal', open ? 'fc-modal-active' : '', className ].filter(Boolean).join(' '), tabIndex: -1, role: "dialog", "aria-modal": "true", onClick: e => { if (e.target === e.currentTarget && onClose) onClose(); }, ...rest }, react_1.default.createElement("div", { className: "fc-modal-content" }, children, react_1.default.createElement("button", { className: "fc-modal-close", onClick: onClose, type: "button", "aria-label": "\u0110\u00F3ng" }, "\u00D7")))); }; exports.FCModal = FCModal;