import { get, type MaybeRef } from '@vueuse/core'; import Fuse from 'fuse.js'; import { computed } from 'vue'; export { useFuzzySearch }; function useFuzzySearch({ search, data, options = {}, }: { search: MaybeRef; data: Data[]; options?: Fuse.IFuseOptions; }) { const fuse = new Fuse(data, options); const searchResult = computed(() => { return fuse.search(get(search)).map(({ item }) => item); }); return { searchResult }; }