Hide filaments with zero inventory from table

- Added filter to exclude filaments with kolicina === 0
- Updated filter options to only show values from filaments with inventory
- This removes clutter and makes the table show only available products

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
DaX
2025-06-30 22:48:28 +02:00
parent 181f967bd0
commit 966d253a7e

View File

@@ -38,16 +38,24 @@ const FilamentTableV2: React.FC<FilamentTableV2Props> = ({ filaments }) => {
return filaments;
}, [filaments]);
// Get unique values for filters
const uniqueValues = useMemo(() => ({
materials: [...new Set(normalizedFilaments.map(f => f.tip))].sort(),
finishes: [...new Set(normalizedFilaments.map(f => f.finish))].sort(),
colors: availableColors ? availableColors.map(c => c.name) : [...new Set(normalizedFilaments.map(f => f.boja))].sort()
}), [normalizedFilaments, availableColors]);
// Get unique values for filters (only from filaments with inventory)
const uniqueValues = useMemo(() => {
const filamentsWithInventory = normalizedFilaments.filter(f => f.kolicina > 0);
return {
materials: [...new Set(filamentsWithInventory.map(f => f.tip))].sort(),
finishes: [...new Set(filamentsWithInventory.map(f => f.finish))].sort(),
colors: [...new Set(filamentsWithInventory.map(f => f.boja))].sort()
};
}, [normalizedFilaments]);
// Filter and sort filaments
const filteredAndSortedFilaments = useMemo(() => {
let filtered = normalizedFilaments.filter(filament => {
// First, filter out filaments with zero inventory
if (filament.kolicina === 0) {
return false;
}
// Search filter
const searchLower = searchTerm.toLowerCase();
const matchesSearch =