UNPKG

@ariakit/react-core

Version:

Ariakit React core

76 lines (57 loc) 2.4 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _26P4PLHIcjs = require('./26P4PLHI.cjs'); var _I3ICHD5Kcjs = require('./I3ICHD5K.cjs'); var _ZRZUZ7E7cjs = require('./ZRZUZ7E7.cjs'); var _3YJARQUNcjs = require('./3YJARQUN.cjs'); var _76LCMKUIcjs = require('./76LCMKUI.cjs'); var _L5A2ID7Scjs = require('./L5A2ID7S.cjs'); var _7EQBAZ46cjs = require('./7EQBAZ46.cjs'); // src/dialog/dialog-backdrop.tsx var _react = require('react'); var _jsxruntime = require('react/jsx-runtime'); function DialogBackdrop({ store, backdrop, alwaysVisible, hidden }) { const ref = _react.useRef.call(void 0, null); const disclosure = _ZRZUZ7E7cjs.useDisclosureStore.call(void 0, { disclosure: store }); const contentElement = _76LCMKUIcjs.useStoreState.call(void 0, store, "contentElement"); _react.useEffect.call(void 0, () => { const backdrop2 = ref.current; const dialog = contentElement; if (!backdrop2) return; if (!dialog) return; backdrop2.style.zIndex = getComputedStyle(dialog).zIndex; }, [contentElement]); _L5A2ID7Scjs.useSafeLayoutEffect.call(void 0, () => { const id = contentElement == null ? void 0 : contentElement.id; if (!id) return; const backdrop2 = ref.current; if (!backdrop2) return; return _26P4PLHIcjs.markAncestor.call(void 0, backdrop2, id); }, [contentElement]); const props = _I3ICHD5Kcjs.useDisclosureContent.call(void 0, { ref, store: disclosure, role: "presentation", "data-backdrop": (contentElement == null ? void 0 : contentElement.id) || "", alwaysVisible, hidden: hidden != null ? hidden : void 0, style: { position: "fixed", top: 0, right: 0, bottom: 0, left: 0 } }); if (!backdrop) return null; if (_react.isValidElement.call(void 0, backdrop)) { return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _3YJARQUNcjs.Role, _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, props), { render: backdrop })); } const Component = typeof backdrop !== "boolean" ? backdrop : "div"; return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _3YJARQUNcjs.Role, _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, props), { render: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Component, {}) })); } exports.DialogBackdrop = DialogBackdrop;