@base-ui/react
Version:
Base UI is a library of headless ('unstyled') React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.
19 lines • 1.24 kB
TypeScript
import type { Filter } from "./useFilter.js";
/**
* Derives the default id assigned to `Combobox.Popup` when the input is rendered inside it.
* Shared by the popup (which applies it) and the trigger (which references it via `aria-controls`)
* so the convention only lives in one place.
*/
export declare function getComboboxPopupId(rootId: string | null | undefined): string | undefined;
/**
* Enhanced filter using Intl.Collator for more robust string matching.
* Uses the provided `itemToStringLabel` function if available, otherwise falls back to:
* • When `item` is an object with a `value` property, that property is used.
* • When `item` is a primitive (e.g. `string`), it is used directly.
*/
export declare function createCollatorItemFilter(collatorFilter: Filter, itemToStringLabel?: (item: any) => string): (item: any, query: string) => boolean;
/**
* Enhanced filter for single selection mode using Intl.Collator that shows all items
* when query is empty or matches the current selection, making it easier to browse options.
*/
export declare function createSingleSelectionCollatorFilter(collatorFilter: Filter, itemToStringLabel?: (item: any) => string, selectedValue?: any): (item: any, query: string) => boolean;