diff options
| -rw-r--r-- | packages/ui/src/hooks/use-filtered-list.tsx | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/packages/ui/src/hooks/use-filtered-list.tsx b/packages/ui/src/hooks/use-filtered-list.tsx index 26215e93c..b8a55000e 100644 --- a/packages/ui/src/hooks/use-filtered-list.tsx +++ b/packages/ui/src/hooks/use-filtered-list.tsx @@ -24,16 +24,12 @@ export function useFilteredList<T>(props: FilteredListProps<T>) { const [grouped, { refetch }] = createResource( () => ({ filter: store.filter, - items: - typeof props.items === "function" - ? props.items.length === 0 - ? (props.items as () => T[])() - : undefined - : props.items, + items: typeof props.items === "function" ? props.items(store.filter) : props.items, }), async ({ filter, items }) => { - const needle = filter?.toLowerCase() - const all = (items ?? (await (props.items as (filter: string) => T[] | Promise<T[]>)(needle))) || [] + const query = filter ?? "" + const needle = query.toLowerCase() + const all = (await Promise.resolve(items)) || [] const result = pipe( all, (x) => { |
