From 47528ea4a2bc9ad92b3477561bfba44ffa2c0d76 Mon Sep 17 00:00:00 2001 From: Daniel Bedeleanu Date: Sun, 19 Apr 2026 14:57:00 +0300 Subject: [PATCH] refactor: extract FilterBar component --- frontend/app/inventory/page.tsx | 18 +++++------------- frontend/components/FilterBar.tsx | 25 +++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 13 deletions(-) create mode 100644 frontend/components/FilterBar.tsx diff --git a/frontend/app/inventory/page.tsx b/frontend/app/inventory/page.tsx index 98333ac0..71ba9545 100644 --- a/frontend/app/inventory/page.tsx +++ b/frontend/app/inventory/page.tsx @@ -7,6 +7,7 @@ import PageShell from '@/components/PageShell'; import Scanner from '@/components/Scanner'; import StatCard from '@/components/StatCard'; import InventoryTable from '@/components/InventoryTable'; +import FilterBar from '@/components/FilterBar'; import { useInventoryFilter } from '@/hooks/useInventoryFilter'; import { toast } from 'react-hot-toast'; import { @@ -24,7 +25,6 @@ import { Layout, Printer, Download, - Search, Box } from 'lucide-react'; import { generateBarcode128, getQRCodeURL } from '@/lib/labels'; @@ -289,18 +289,10 @@ export default function InventoryPage() { {/* Search */} -
- setSearchQuery(e.target.value)} - className="w-full bg-surface border border-slate-800 rounded-2xl py-3.5 pr-4 pl-11 text-sm focus:border-primary outline-none transition-all placeholder:text-secondary" - /> -
- -
-
+ {/* Inventory Table */} void; +} + +export default function FilterBar({ searchQuery, onChange }: FilterBarProps) { + return ( +
+ onChange(e.target.value)} + className="w-full bg-surface border border-slate-800 rounded-2xl py-3.5 pr-4 pl-11 text-sm focus:border-primary outline-none transition-all placeholder:text-secondary" + /> +
+ +
+
+ ); +}