()
| 82 | } |
| 83 | |
| 84 | function applyFiltersAndRender(): void { |
| 85 | const countEl = document.getElementById('results-count'); |
| 86 | let results = [...allItems]; |
| 87 | |
| 88 | if (currentFilters.tags.length > 0) { |
| 89 | results = results.filter((item) => item.tags?.some((tag) => currentFilters.tags.includes(tag))); |
| 90 | } |
| 91 | |
| 92 | results = sortItems(results); |
| 93 | |
| 94 | renderItems(results); |
| 95 | if (countEl) countEl.textContent = getCountText(results.length); |
| 96 | } |
| 97 | |
| 98 | function renderItems(items: Plugin[]): void { |
| 99 | const list = document.getElementById('resource-list'); |
no test coverage detected