Member drawer filter (#1457)

* save member drawer sort filter in local storage

* render member drawer with key

* improve member search
This commit is contained in:
Ajay Bura 2023-10-19 17:43:16 +11:00 committed by GitHub
parent b4e1ced3ed
commit 50429a3513
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 71 additions and 44 deletions

View file

@ -17,7 +17,8 @@ export type UseAsyncSearchOptions = AsyncSearchOption & {
};
export type SearchItemStrGetter<TSearchItem extends object | string | number> = (
searchItem: TSearchItem
searchItem: TSearchItem,
query: string
) => string | string[];
export type UseAsyncSearchResult<TSearchItem extends object | string | number> = {
@ -38,7 +39,7 @@ export const useAsyncSearch = <TSearchItem extends object | string | number>(
setResult(undefined);
const handleMatch: MatchHandler<TSearchItem> = (item, query) => {
const itemStr = getItemStr(item);
const itemStr = getItemStr(item, query);
if (Array.isArray(itemStr))
return !!itemStr.find((i) =>
matchQuery(normalize(i, options?.normalizeOptions), query, options?.matchOptions)