Utility

useSearchFilter

Filter and search through data collections with fuzzy matching support.

import { useSearchFilter } from "saha-ui"

Uses

Filter and search arrays of objects with optional search keys, custom filter function and case sensitivity option.

Props

NameTypeDescriptionDefault
itemsT[]Items to be searched and filtered.-
options{ searchKeys?: (keyof T)[]; filterFn?: (item: T, query: string) => boolean; caseSensitive?: boolean }Configuration object for search behavior.-

Returns

NameDescription
filteredItemsItems that match the current search query.
searchQueryCurrent search string.
setSearchQuerySetter for the search query.
clearSearchReset search query and results.
itemCountNumber of filtered items.
hasResultsBoolean indicating if any items matched.

Example

const { filteredItems, setSearchQuery } = useSearchFilter(users, { searchKeys: ['name', 'email'] });
setSearchQuery('john');

Notes

Default behavior searches string fields across the object; filterFn, if provided, takes precedence over default matching.
Saha UI - The Modern React Component Library