UNPKG

@ariakit/react-core

Version:

Ariakit React core

51 lines (49 loc) 1.36 kB
"use client"; import { useComboboxProviderContext } 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, memo } from "../__chunks/ILRXHV7V.js"; import "../__chunks/K2XTQB3X.js"; import "../__chunks/YXGXYGQX.js"; // src/combobox/combobox-label.tsx import { invariant, removeUndefinedValues } from "@ariakit/core/utils/misc"; var TagName = "label"; var useComboboxLabel = createHook( function useComboboxLabel2({ store, ...props }) { const context = useComboboxProviderContext(); store = store || context; invariant( store, process.env.NODE_ENV !== "production" && "ComboboxLabel must receive a `store` prop or be wrapped in a ComboboxProvider component." ); const comboboxId = store.useState((state) => { var _a; return (_a = state.baseElement) == null ? void 0 : _a.id; }); props = { htmlFor: comboboxId, ...props }; return removeUndefinedValues(props); } ); var ComboboxLabel = memo( forwardRef(function ComboboxLabel2(props) { const htmlProps = useComboboxLabel(props); return createElement(TagName, htmlProps); }) ); export { ComboboxLabel, useComboboxLabel };