UNPKG

@ariakit/react-core

Version:

Ariakit React core

102 lines (100 loc) 2.83 kB
"use client"; import { usePopover } from "../__chunks/C6DAL6ZN.js"; import "../__chunks/CAGBPNDP.js"; import "../__chunks/M5DFOEFU.js"; import "../__chunks/AOQQTIBO.js"; import "../__chunks/5M6RIVE2.js"; import "../__chunks/S2F2XXEH.js"; import "../__chunks/DXGKYUAD.js"; import "../__chunks/LC6GJMGV.js"; import "../__chunks/6GXEOXGT.js"; import "../__chunks/JZEJYXOQ.js"; import "../__chunks/HLTQOHKZ.js"; import "../__chunks/PVECYOSC.js"; import "../__chunks/SOMPWLIQ.js"; import "../__chunks/W6WVJJEY.js"; import "../__chunks/CZ4GFWYL.js"; import "../__chunks/Z5GCVBAY.js"; import "../__chunks/IGR4SXG2.js"; import "../__chunks/677M2CI3.js"; import "../__chunks/S7U6BLGA.js"; import "../__chunks/FVE2C5B3.js"; import "../__chunks/3NDVDEB4.js"; import "../__chunks/AOUGVQZ3.js"; import "../__chunks/K2ZF5NU7.js"; import "../__chunks/63XF7ACK.js"; import "../__chunks/K4R5DNTX.js"; import "../__chunks/Y2U4BRIM.js"; import "../__chunks/T22PY7TE.js"; import "../__chunks/QJ4LGO2N.js"; import "../__chunks/Y67KZUMI.js"; import "../__chunks/T2AZQXQU.js"; import "../__chunks/ABN76PSX.js"; import "../__chunks/OE2EFRVA.js"; import "../__chunks/SWN3JYXT.js"; import "../__chunks/RTNCFSKZ.js"; import { createElement, createHook, forwardRef } from "../__chunks/VOQWLFSQ.js"; import { useEvent } from "../__chunks/5GGHRIN3.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 };