UNPKG

@ariakit/react-core

Version:

Ariakit React core

114 lines (93 loc) 3.73 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _K4YSA433cjs = require('../__chunks/K4YSA433.cjs'); var _AU5QYTLMcjs = require('../__chunks/AU5QYTLM.cjs'); require('../__chunks/KUPB4YJ5.cjs'); require('../__chunks/ZVWIHFYJ.cjs'); require('../__chunks/MIBORXQW.cjs'); require('../__chunks/NO756MUJ.cjs'); var _3YJARQUNcjs = require('../__chunks/3YJARQUN.cjs'); require('../__chunks/DQ3AW7HU.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/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/combobox/combobox-item-offscreen.tsx var _react = require('react'); var _jsxruntime = require('react/jsx-runtime'); var TagName = "div"; var itemRoleByPopupRole = { menu: "menuitem", listbox: "option", tree: "treeitem" }; function getItemRole(popupRole) { var _a; const key = popupRole; return (_a = itemRoleByPopupRole[key]) != null ? _a : "option"; } function useComboboxItemOffscreen(_a) { var _b = _a, { store, value } = _b, props = _7EQBAZ46cjs.__objRest.call(void 0, _b, ["store", "value"]); const context = _K3X5TQGKcjs.useComboboxScopedContext.call(void 0, ); store = store || context; const offscreenProps = _K4YSA433cjs.useCompositeItemOffscreen.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, { store, value }, props)); const popupRole = _react.useContext.call(void 0, _K3X5TQGKcjs.ComboboxListRoleContext); if (!offscreenProps.active) { return _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, offscreenProps), { role: getItemRole(popupRole) }); } return offscreenProps; } var ComboboxItem2 = _6TI3NXX6cjs.forwardRef.call(void 0, function ComboboxItem3(_a) { var _b = _a, { offscreenBehavior, offscreenRoot } = _b, props = _7EQBAZ46cjs.__objRest.call(void 0, _b, [ "offscreenBehavior", "offscreenRoot" ]); const _a2 = useComboboxItemOffscreen(_7EQBAZ46cjs.__spreadValues.call(void 0, { offscreenBehavior, offscreenRoot }, props)), { active, ref } = _a2, rest = _7EQBAZ46cjs.__objRest.call(void 0, _a2, ["active", "ref"]); const allProps = _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, rest), props), { ref: _L5A2ID7Scjs.useMergeRefs.call(void 0, ref, props.ref) }); if (active) { return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _AU5QYTLMcjs.ComboboxItem, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, allProps)); } const _b2 = allProps, { store, value, hideOnClick, setValueOnClick, selectValueOnClick, resetValueOnSelect, focusOnHover, blurOnHoverEnd, moveOnKeyPress, getItem } = _b2, htmlProps = _7EQBAZ46cjs.__objRest.call(void 0, _b2, [ "store", "value", "hideOnClick", "setValueOnClick", "selectValueOnClick", "resetValueOnSelect", "focusOnHover", "blurOnHoverEnd", "moveOnKeyPress", "getItem" ]); const Component = _3YJARQUNcjs.Role[TagName]; return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Component, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, htmlProps)); }); exports.ComboboxItem = ComboboxItem2; exports.useComboboxItemOffscreen = useComboboxItemOffscreen;