From 9fca346df7aaf079dc944e5e891e017d43745003 Mon Sep 17 00:00:00 2001 From: amandeavor Date: Sun, 30 Aug 2026 18:30:22 +0530 Subject: [PATCH] fix: show matched memory count during search --- tests/memory-count.test.ts | 13 +++++++++++++ web/src/App.tsx | 11 ++++++++++- web/src/lib/memory-count.ts | 7 +++++++ 3 files changed, 30 insertions(+), 1 deletion(-) create mode 100644 tests/memory-count.test.ts create mode 100644 web/src/lib/memory-count.ts diff --git a/tests/memory-count.test.ts b/tests/memory-count.test.ts new file mode 100644 index 0000000..67e8a95 --- /dev/null +++ b/tests/memory-count.test.ts @@ -0,0 +1,13 @@ +import { describe, expect, test } from "bun:test"; +import { getDisplayedMemoryCount } from "../web/src/lib/memory-count"; + +describe("getDisplayedMemoryCount", () => { + test("shows matched results while search is active", () => { + expect(getDisplayedMemoryCount(true, 3, 120)).toBe(3); + expect(getDisplayedMemoryCount(true, 0, 120)).toBe(0); + }); + + test("restores the store total when search is cleared", () => { + expect(getDisplayedMemoryCount(false, 3, 120)).toBe(120); + }); +}); diff --git a/web/src/App.tsx b/web/src/App.tsx index d5afa8c..0cf37a3 100644 --- a/web/src/App.tsx +++ b/web/src/App.tsx @@ -16,6 +16,7 @@ import { Label } from "$lib/components/ui/label"; import { Toaster } from "$lib/components/ui/sonner"; import { Textarea } from "$lib/components/ui/textarea"; import { cycleLanguage, getLanguage, useI18n } from "$lib/i18n"; +import { getDisplayedMemoryCount } from "$lib/memory-count"; import { initRouter, navigate, ROUTES, useAppView } from "$lib/router"; const MEMORY_TYPES = [ @@ -142,7 +143,15 @@ export default function App() { {currentView === "project" ? (
- {t("text-total", { count: explorer.statsTotal })} + + {t("text-total", { + count: getDisplayedMemoryCount( + explorer.isSearching, + explorer.totalItems, + explorer.statsTotal + ), + })} + {explorer.refreshing ? : null}
) : null} diff --git a/web/src/lib/memory-count.ts b/web/src/lib/memory-count.ts new file mode 100644 index 0000000..0cd15f2 --- /dev/null +++ b/web/src/lib/memory-count.ts @@ -0,0 +1,7 @@ +export function getDisplayedMemoryCount( + isSearching: boolean, + searchTotal: number, + storeTotal: number +): number { + return isSearching ? searchTotal : storeTotal; +}