import { icons } from "@/lib/client/icons"; import React, { useMemo, useState } from "react"; import Fuse from "fuse.js"; import TextInput from "./TextInput"; const fuse = new Fuse(icons, { keys: [{ name: "name", weight: 4 }, "tags", "categories"], threshold: 0.2, useExtendedSearch: true, }); type Props = {}; const IconPicker = (props: Props) => { const [query, setQuery] = useState(""); const filteredQueryResultsSelector = useMemo(() => { if (!query) { return icons; } return fuse.search(query).map((result) => result.item); }, [query]); return (