UNPKG

@ariakit/react-core

Version:

Ariakit React core

97 lines (95 loc) 2.58 kB
"use client"; import { usePopover } from "../__chunks/AOOXE4FT.js"; import "../__chunks/KOWQMA5P.js"; import "../__chunks/27UGDV3K.js"; import "../__chunks/AOQQTIBO.js"; import "../__chunks/5M6RIVE2.js"; import "../__chunks/5L75JEQF.js"; import "../__chunks/POCYREJH.js"; import "../__chunks/GDMALITU.js"; import "../__chunks/6GXEOXGT.js"; import "../__chunks/VKPF3GCK.js"; import "../__chunks/R3NHSIAL.js"; import "../__chunks/SUN7W7XS.js"; import "../__chunks/336RKHJD.js"; import "../__chunks/QDZPIHAY.js"; import "../__chunks/CZ4GFWYL.js"; import "../__chunks/Z5GCVBAY.js"; import "../__chunks/IGR4SXG2.js"; import "../__chunks/677M2CI3.js"; import "../__chunks/S7U6BLGA.js"; import "../__chunks/QXEZ5Q7H.js"; import "../__chunks/3NDVDEB4.js"; import "../__chunks/AOUGVQZ3.js"; import "../__chunks/K2ZF5NU7.js"; import "../__chunks/63XF7ACK.js"; import "../__chunks/HIPI64MW.js"; import "../__chunks/NGV5ZW5X.js"; import "../__chunks/H5Z3PUKM.js"; import "../__chunks/AB647VKY.js"; import "../__chunks/467XRHWL.js"; import "../__chunks/2LVHRIRC.js"; import "../__chunks/FYYAZUDI.js"; import "../__chunks/3F6D4KUU.js"; import "../__chunks/SWN3JYXT.js"; import { useStoreState } from "../__chunks/SOQQIDO4.js"; import { createElement, createHook, forwardRef } from "../__chunks/L4OUMOCQ.js"; import { useEvent } from "../__chunks/W2TDKEPX.js"; import "../__chunks/AZVQSWGA.js"; // src/composite/composite-overflow.tsx var TagName = "div"; var hiddenStyle = { opacity: 0, pointerEvents: "none" }; var useCompositeOverflow = createHook(function useCompositeOverflow2({ store, wrapperProps: wrapperPropsProp, portal = false, ...props }) { const onFocusProp = props.onFocus; const onFocus = useEvent((event) => { onFocusProp == null ? void 0 : onFocusProp(event); if (event.defaultPrevented) return; store.show(); }); const mounted = useStoreState(store, "mounted"); const getStyle = (styleProp) => mounted ? styleProp : { ...hiddenStyle, ...styleProp }; const wrapperProps = { ...wrapperPropsProp, style: getStyle(wrapperPropsProp == null ? void 0 : wrapperPropsProp.style) }; props = { role: "presentation", ...props, onFocus }; props = usePopover({ 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 };