UNPKG

@ariakit/react-core

Version:

Ariakit React core

84 lines (65 loc) 3.08 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _A56OFCFAcjs = require('../__chunks/A56OFCFA.cjs'); require('../__chunks/XQNVUUCM.cjs'); require('../__chunks/BLY6TLX4.cjs'); require('../__chunks/HW4NUUUP.cjs'); var _YTEJF6TYcjs = require('../__chunks/YTEJF6TY.cjs'); require('../__chunks/MIBORXQW.cjs'); require('../__chunks/IH6KF7WR.cjs'); require('../__chunks/ZVJRPAXY.cjs'); require('../__chunks/YDPERDKF.cjs'); require('../__chunks/KVXNVDJK.cjs'); require('../__chunks/D6FV6EYS.cjs'); require('../__chunks/F4ZQFU26.cjs'); require('../__chunks/DHAXJ5PA.cjs'); require('../__chunks/YUGKYIYY.cjs'); require('../__chunks/T3QB4FR3.cjs'); require('../__chunks/25BPIGZH.cjs'); require('../__chunks/6HKL3JR2.cjs'); var _WULEED4Qcjs = require('../__chunks/WULEED4Q.cjs'); var _OZM4QA2Vcjs = require('../__chunks/OZM4QA2V.cjs'); require('../__chunks/FDRJDQ5Y.cjs'); var _7EQBAZ46cjs = require('../__chunks/7EQBAZ46.cjs'); // src/composite/composite-overflow-disclosure.ts var _store = require('@ariakit/core/utils/store'); var _react = require('react'); var TagName = "button"; var useCompositeOverflowDisclosure = _WULEED4Qcjs.createHook.call(void 0, function useCompositeOverflowDisclosure2(_a) { var _b = _a, { store } = _b, props = _7EQBAZ46cjs.__objRest.call(void 0, _b, ["store"]); const ref = _react.useRef.call(void 0, null); const [shouldRegisterItem, setShouldRegisterItem] = _react.useState.call(void 0, false); _react.useEffect.call(void 0, () => { return _store.sync.call(void 0, store, ["disclosureElement"], () => { store.setDisclosureElement(ref.current); }); }, [store]); const onFocusProp = props.onFocus; const onFocus = _OZM4QA2Vcjs.useEvent.call(void 0, (event) => { onFocusProp == null ? void 0 : onFocusProp(event); if (event.defaultPrevented) return; setShouldRegisterItem(true); }); const onBlurProp = props.onBlur; const onBlur = _OZM4QA2Vcjs.useEvent.call(void 0, (event) => { onBlurProp == null ? void 0 : onBlurProp(event); if (event.defaultPrevented) return; setShouldRegisterItem(false); }); props = _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, { "aria-hidden": !shouldRegisterItem }, props), { ref: _OZM4QA2Vcjs.useMergeRefs.call(void 0, props.ref, ref), onFocus, onBlur }); props = _YTEJF6TYcjs.useCompositeItem.call(void 0, _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, props), { shouldRegisterItem })); props = _A56OFCFAcjs.usePopoverDisclosure.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, { store }, props)); return props; }); var CompositeOverflowDisclosure = _WULEED4Qcjs.forwardRef.call(void 0, function CompositeOverflowDisclosure2(props) { const htmlProps = useCompositeOverflowDisclosure(props); return _WULEED4Qcjs.createElement.call(void 0, TagName, htmlProps); } ); exports.CompositeOverflowDisclosure = CompositeOverflowDisclosure; exports.useCompositeOverflowDisclosure = useCompositeOverflowDisclosure;