()
| 68 | } |
| 69 | |
| 70 | function applyFiltersAndRender(): void { |
| 71 | const countEl = document.getElementById("results-count"); |
| 72 | let results = [...allItems]; |
| 73 | |
| 74 | if (currentFilters.categories.length > 0) { |
| 75 | results = results.filter((item) => |
| 76 | currentFilters.categories.includes(item.category) |
| 77 | ); |
| 78 | } |
| 79 | |
| 80 | results = sortItems(results); |
| 81 | |
| 82 | renderTools(results); |
| 83 | if (countEl) countEl.textContent = getCountText(results.length); |
| 84 | } |
| 85 | |
| 86 | function renderTools(tools: Tool[]): void { |
| 87 | const container = document.getElementById("tools-list"); |
no test coverage detected