From f5404ea7e6c1c0795c9ed1117c1fbd50c7e90f66 Mon Sep 17 00:00:00 2001
From: "gpt-engineer-app[bot]"
<159125892+gpt-engineer-app[bot]@users.noreply.github.com>
Date: Sun, 19 Apr 2026 17:05:42 +0000
Subject: [PATCH] Changes
Co-authored-by: renee-png <262607627+renee-png@users.noreply.github.com>
---
src/components/timer/header-timer.tsx | 90 ++++++++++++---------------
1 file changed, 39 insertions(+), 51 deletions(-)
diff --git a/src/components/timer/header-timer.tsx b/src/components/timer/header-timer.tsx
index 98031ba..efbe94c 100644
--- a/src/components/timer/header-timer.tsx
+++ b/src/components/timer/header-timer.tsx
@@ -12,13 +12,7 @@ import {
PopoverContent,
PopoverTrigger,
} from "@/components/ui/popover";
-import {
- Select,
- SelectContent,
- SelectItem,
- SelectTrigger,
- SelectValue,
-} from "@/components/ui/select";
+import { SearchableSelect } from "@/components/ui/searchable-select";
import { Pause, Play, Square, Timer as TimerIcon, Loader2, X, PlusCircle } from "lucide-react";
import { toast } from "sonner";
import { NewFeeItemDialog } from "@/components/fees/new-fee-item-dialog";
@@ -209,44 +203,37 @@ export function HeaderTimer() {
-
+ placeholder="Select client"
+ searchPlaceholder="Search clients…"
+ emptyText="No clients found."
+ options={clients.map((c) => ({ value: c.id, label: c.name, keywords: c.name }))}
+ />
-
+ placeholder={timer.clientId ? "Select case" : "Pick a client first"}
+ searchPlaceholder="Search cases…"
+ emptyText="No cases for this client."
+ options={filteredCases.map((c) => ({
+ value: c.id,
+ label: `${c.case_number} — ${c.title}`,
+ keywords: `${c.case_number} ${c.title}`,
+ render: (
+
+ {c.case_number}
+ {c.title}
+
+ ),
+ }))}
+ />
@@ -263,26 +250,27 @@ export function HeaderTimer() {
{feeItems.length > 0 ? (
-
+
+ ),
+ }))}
+ />
) : (
No saved items yet. Click "Add new item" to save one for reuse.