@ariakit/react-core
Version:
Ariakit React core
52 lines (50 loc) • 1.51 kB
JavaScript
"use client";
import {
useCompositeGroup
} from "../__chunks/QNTIVZIC.js";
import "../__chunks/GW2URR7A.js";
import "../__chunks/7HVFURXT.js";
import {
useComboboxScopedContext
} from "../__chunks/7P7IWEBR.js";
import "../__chunks/MWF5B7KS.js";
import "../__chunks/63N3TCQX.js";
import "../__chunks/FFSBKSAM.js";
import "../__chunks/72IB6YNO.js";
import "../__chunks/45YOMIF3.js";
import {
createElement,
createHook,
forwardRef
} from "../__chunks/ILRXHV7V.js";
import "../__chunks/K2XTQB3X.js";
import "../__chunks/YXGXYGQX.js";
// src/combobox/combobox-group.tsx
import { getPopupRole } from "@ariakit/core/utils/dom";
import { invariant } from "@ariakit/core/utils/misc";
var TagName = "div";
var useComboboxGroup = createHook(
function useComboboxGroup2({ store, ...props }) {
const context = useComboboxScopedContext();
store = store || context;
invariant(
store,
process.env.NODE_ENV !== "production" && "ComboboxRow must be wrapped in a ComboboxList or ComboboxPopover component"
);
const contentElement = store.useState("contentElement");
const popupRole = getPopupRole(contentElement);
if (popupRole === "grid") {
props = { role: "rowgroup", ...props };
}
props = useCompositeGroup({ store, ...props });
return props;
}
);
var ComboboxGroup = forwardRef(function ComboboxGroup2(props) {
const htmlProps = useComboboxGroup(props);
return createElement(TagName, htmlProps);
});
export {
ComboboxGroup,
useComboboxGroup
};