From ba4bc33a50820c779c3e689de86948234384ae7a Mon Sep 17 00:00:00 2001 From: Vedant Mahajan Date: Thu, 9 Apr 2026 21:09:07 +0530 Subject: [PATCH] perf: use Set for O(1) category lookup in facet render loop (#835) --- apps/web/components/memories-grid.tsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/apps/web/components/memories-grid.tsx b/apps/web/components/memories-grid.tsx index 358a891a..a07d608a 100644 --- a/apps/web/components/memories-grid.tsx +++ b/apps/web/components/memories-grid.tsx @@ -191,6 +191,10 @@ export function MemoriesGrid({ "categories", categoriesParam, ) + const selectedCategoriesSet = useMemo( + () => new Set(selectedCategories), + [selectedCategories], + ) const { data: facetsData } = useQuery({ queryKey: ["document-facets", effectiveContainerTags], @@ -439,7 +443,7 @@ export function MemoriesGrid({ className={cn( dmSansClassName(), "rounded-full border border-[#161F2C] bg-[#0D121A] px-2.5 py-1 text-xs h-auto hover:bg-[#00173C] hover:border-[#2261CA33]", - selectedCategories.includes(facet.category) && + selectedCategoriesSet.has(facet.category) && "bg-[#00173C] border-[#2261CA33]", )} onClick={() => handleCategoryToggle(facet.category)}