Files
caravel/frontend/src/lib/search.ts
T
2026-06-02 09:24:27 -07:00

11 lines
304 B
TypeScript

import Fuse from "fuse.js"
export const FUSE_THRESHOLD = 0.35
export function fuzzySearch<T>(list: T[], keys: string[], query: string): T[] {
if (!query) return list
return new Fuse(list, {keys, threshold: FUSE_THRESHOLD, ignoreLocation: true})
.search(query)
.map(result => result.item)
}