UNPKG

@ariakit/react-core

Version:

Ariakit React core

96 lines (78 loc) 3.21 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _JVADL66Kcjs = require('../__chunks/JVADL66K.cjs'); require('../__chunks/LZE4K2WU.cjs'); var _K3X5TQGKcjs = require('../__chunks/K3X5TQGK.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/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/combobox/combobox-disclosure.tsx var _misc = require('@ariakit/core/utils/misc'); var _jsxruntime = require('react/jsx-runtime'); var TagName = "button"; var children = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "svg", { "aria-hidden": "true", display: "block", fill: "none", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 1.5, viewBox: "0 0 16 16", height: "1em", width: "1em", pointerEvents: "none", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "polyline", { points: "4,6 8,10 12,6" }) } ); var useComboboxDisclosure = _6TI3NXX6cjs.createHook.call(void 0, function useComboboxDisclosure2(_a) { var _b = _a, { store } = _b, props = _7EQBAZ46cjs.__objRest.call(void 0, _b, ["store"]); const context = _K3X5TQGKcjs.useComboboxProviderContext.call(void 0, ); store = store || context; _misc.invariant.call(void 0, store, process.env.NODE_ENV !== "production" && "ComboboxDisclosure must receive a `store` prop or be wrapped in a ComboboxProvider component." ); const onMouseDownProp = props.onMouseDown; const onMouseDown = _L5A2ID7Scjs.useEvent.call(void 0, (event) => { onMouseDownProp == null ? void 0 : onMouseDownProp(event); event.preventDefault(); store == null ? void 0 : store.move(null); }); const onClickProp = props.onClick; const onClick = _L5A2ID7Scjs.useEvent.call(void 0, (event) => { onClickProp == null ? void 0 : onClickProp(event); if (event.defaultPrevented) return; if (!store) return; const { baseElement } = store.getState(); store.setDisclosureElement(baseElement); }); const open = store.useState("open"); props = _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, { children, tabIndex: -1, "aria-label": open ? "Hide popup" : "Show popup", "aria-expanded": open }, props), { onMouseDown, onClick }); props = _JVADL66Kcjs.useDialogDisclosure.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, { store }, props)); return props; }); var ComboboxDisclosure = _6TI3NXX6cjs.forwardRef.call(void 0, function ComboboxDisclosure2(props) { const htmlProps = useComboboxDisclosure(props); return _6TI3NXX6cjs.createElement.call(void 0, TagName, htmlProps); }); exports.ComboboxDisclosure = ComboboxDisclosure; exports.useComboboxDisclosure = useComboboxDisclosure;