@ariakit/react-core
Version:
Ariakit React core
84 lines (65 loc) • 3.08 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true});
var _QJ2ZUJN5cjs = require('../__chunks/QJ2ZUJN5.cjs');
require('../__chunks/QTZ3KD4A.cjs');
require('../__chunks/JVADL66K.cjs');
require('../__chunks/LZE4K2WU.cjs');
var _ZVWIHFYJcjs = require('../__chunks/ZVWIHFYJ.cjs');
require('../__chunks/MIBORXQW.cjs');
require('../__chunks/DQ3AW7HU.cjs');
require('../__chunks/ZVS6SBRR.cjs');
require('../__chunks/VF7H2WBX.cjs');
require('../__chunks/EJVJIL4S.cjs');
require('../__chunks/CWQU4R75.cjs');
require('../__chunks/PK35DJGA.cjs');
require('../__chunks/H5ZMZIC6.cjs');
require('../__chunks/PDQXLIRF.cjs');
require('../__chunks/T3QB4FR3.cjs');
require('../__chunks/76LCMKUI.cjs');
require('../__chunks/FVVTEJ4K.cjs');
var _6TI3NXX6cjs = require('../__chunks/6TI3NXX6.cjs');
var _L5A2ID7Scjs = require('../__chunks/L5A2ID7S.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 = _6TI3NXX6cjs.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 = _L5A2ID7Scjs.useEvent.call(void 0, (event) => {
onFocusProp == null ? void 0 : onFocusProp(event);
if (event.defaultPrevented) return;
setShouldRegisterItem(true);
});
const onBlurProp = props.onBlur;
const onBlur = _L5A2ID7Scjs.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: _L5A2ID7Scjs.useMergeRefs.call(void 0, props.ref, ref),
onFocus,
onBlur
});
props = _ZVWIHFYJcjs.useCompositeItem.call(void 0, _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, props), { shouldRegisterItem }));
props = _QJ2ZUJN5cjs.usePopoverDisclosure.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, { store }, props));
return props;
});
var CompositeOverflowDisclosure = _6TI3NXX6cjs.forwardRef.call(void 0,
function CompositeOverflowDisclosure2(props) {
const htmlProps = useCompositeOverflowDisclosure(props);
return _6TI3NXX6cjs.createElement.call(void 0, TagName, htmlProps);
}
);
exports.CompositeOverflowDisclosure = CompositeOverflowDisclosure; exports.useCompositeOverflowDisclosure = useCompositeOverflowDisclosure;