UNPKG

@ariakit/react-core

Version:

Ariakit React core

102 lines (100 loc) 2.83 kB
"use client"; import { usePopover } from "../__chunks/G7GW6PWC.js"; import "../__chunks/DVTPF4J4.js"; import "../__chunks/WAGAC6PJ.js"; import "../__chunks/AOQQTIBO.js"; import "../__chunks/5M6RIVE2.js"; import "../__chunks/W3VI7GFU.js"; import "../__chunks/XX67R432.js"; import "../__chunks/ZWYATQFU.js"; import "../__chunks/6GXEOXGT.js"; import "../__chunks/HP6HHD56.js"; import "../__chunks/HLTQOHKZ.js"; import "../__chunks/TOU75OXH.js"; import "../__chunks/BGQ3KQ5M.js"; import "../__chunks/YKJECYU7.js"; import "../__chunks/CZ4GFWYL.js"; import "../__chunks/Z5GCVBAY.js"; import "../__chunks/IGR4SXG2.js"; import "../__chunks/677M2CI3.js"; import "../__chunks/S7U6BLGA.js"; import "../__chunks/JEWPFJH2.js"; import "../__chunks/3NDVDEB4.js"; import "../__chunks/AOUGVQZ3.js"; import "../__chunks/K2ZF5NU7.js"; import "../__chunks/63XF7ACK.js"; import "../__chunks/KFH4SEIX.js"; import "../__chunks/BM6PGYQY.js"; import "../__chunks/WYCIER3C.js"; import "../__chunks/XL7CSKGW.js"; import "../__chunks/MTZPJQMC.js"; import "../__chunks/RS7LB2H4.js"; import "../__chunks/S6EF7IVO.js"; import "../__chunks/PFRGBC2K.js"; import "../__chunks/SWN3JYXT.js"; import "../__chunks/YV4JVR4I.js"; import { createElement, createHook, forwardRef } from "../__chunks/LMDWO4NN.js"; import { useEvent } from "../__chunks/ABQUS43J.js"; import "../__chunks/SK3NAZA3.js"; import { __objRest, __spreadProps, __spreadValues } from "../__chunks/3YLGPPWQ.js"; // src/composite/composite-overflow.tsx var TagName = "div"; var hiddenStyle = { opacity: 0, pointerEvents: "none" }; var useCompositeOverflow = createHook(function useCompositeOverflow2(_a) { var _b = _a, { store, wrapperProps: wrapperPropsProp, portal = false } = _b, props = __objRest(_b, [ "store", "wrapperProps", "portal" ]); const onFocusProp = props.onFocus; const onFocus = useEvent((event) => { onFocusProp == null ? void 0 : onFocusProp(event); if (event.defaultPrevented) return; store.show(); }); const mounted = store.useState("mounted"); const getStyle = (styleProp) => mounted ? styleProp : __spreadValues(__spreadValues({}, hiddenStyle), styleProp); const wrapperProps = __spreadProps(__spreadValues({}, wrapperPropsProp), { style: getStyle(wrapperPropsProp == null ? void 0 : wrapperPropsProp.style) }); props = __spreadProps(__spreadValues({ role: "presentation" }, props), { onFocus }); props = usePopover(__spreadValues({ store, focusable: false, alwaysVisible: true, wrapperProps, portal }, props)); return props; }); var CompositeOverflow = forwardRef(function CompositeOverflow2(props) { const htmlProps = useCompositeOverflow(props); return createElement(TagName, htmlProps); }); export { CompositeOverflow, useCompositeOverflow };