diff --git a/src/components/KitchenandInventory/KIInventory/KIInventory.jsx b/src/components/KitchenandInventory/KIInventory/KIInventory.jsx index 7a919f2289..91b83b20ef 100644 --- a/src/components/KitchenandInventory/KIInventory/KIInventory.jsx +++ b/src/components/KitchenandInventory/KIInventory/KIInventory.jsx @@ -66,11 +66,21 @@ const KIInventory = () => { // Onsite grown — computed from all items const onsiteGrown = items.filter(i => i.onsite).length; - // Items for active tab filtered by category and search term + // Search helper + const filterItems = itemsToFilter => { + if (!searchTerm.trim()) { + return itemsToFilter; + } + + return itemsToFilter.filter(item => item.name.toLowerCase().includes(searchTerm.toLowerCase())); + }; + + // Items for active tab const activeCategory = CATEGORY_MAP[activeTab]; - const tabItems = items - .filter(i => i.category === activeCategory) - .filter(i => !searchTerm || i.name.toLowerCase().includes(searchTerm.toLowerCase())); + + const categoryItems = items.filter(i => i.category === activeCategory); + + const tabItems = filterItems(categoryItems); // Preserved items description for notification banner const preservedDesc = @@ -91,7 +101,9 @@ const KIInventory = () => { } if (searchTerm) { return ( -

No results for "{searchTerm}"

+

+ No results for "{searchTerm}" +

); } return

No items in {tabName} yet.

; @@ -188,12 +200,20 @@ const KIInventory = () => { value={searchTerm} onChange={e => setSearchTerm(e.target.value)} /> - + {searchTerm && ( + + )}