UNPKG

@ariakit/react-core

Version:

Ariakit React core

49 lines (47 loc) 1.39 kB
"use client"; import { useSelectContext } from "../__chunks/QI6TYHPV.js"; import { useCompositeRow } from "../__chunks/EYFT2Y3I.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/select/select-row.tsx import { getPopupRole } from "@ariakit/core/utils/dom"; import { invariant } from "@ariakit/core/utils/misc"; var TagName = "div"; var useSelectRow = createHook( function useSelectRow2({ store, ...props }) { const context = useSelectContext(); store = store || context; invariant( store, process.env.NODE_ENV !== "production" && "SelectRow must be wrapped in a SelectList or SelectPopover component" ); const listElement = store.useState("listElement"); const popupRole = getPopupRole(listElement); const role = popupRole === "grid" ? "row" : "presentation"; props = { role, ...props }; props = useCompositeRow({ store, ...props }); return props; } ); var SelectRow = forwardRef(function SelectRow2(props) { const htmlProps = useSelectRow(props); return createElement(TagName, htmlProps); }); export { SelectRow, useSelectRow };