@ariakit/react-core
Version:
Ariakit React core
102 lines (100 loc) • 2.83 kB
JavaScript
"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
};