Search improvement

This commit is contained in:
2026-03-16 13:11:59 -05:00
parent 624befbe02
commit 1e78ea2c52
2 changed files with 4 additions and 4 deletions
+1 -1
View File
@@ -21,7 +21,7 @@
type="text" type="text"
id="issue-search" id="issue-search"
class="issue-search" class="issue-search"
placeholder="Filter displayed issues..." placeholder="Filter issues (all words, any order)..."
autocomplete="off" autocomplete="off"
> >
<h2>Type</h2> <h2>Type</h2>
+3 -3
View File
@@ -1,6 +1,6 @@
const TYPE_FILTER_KEY = 'bugmedley.ui.typeFilters.v1'; const TYPE_FILTER_KEY = 'bugmedley.ui.typeFilters.v1';
let issueSearchTerm = ''; let issueSearchTerms = [];
let issueTypeFilters = loadTypeFilters(); let issueTypeFilters = loadTypeFilters();
function loadTypeFilters() { function loadTypeFilters() {
@@ -38,7 +38,7 @@ export function applyIssueSearchFilter() {
issueItems.forEach(item => { issueItems.forEach(item => {
const itemText = item.textContent.toLowerCase(); const itemText = item.textContent.toLowerCase();
const matches = issueSearchTerm === '' || itemText.includes(issueSearchTerm); const matches = issueSearchTerms.length === 0 || issueSearchTerms.every(term => itemText.includes(term));
if (item.tagName === 'TR') { if (item.tagName === 'TR') {
item.style.display = matches ? 'table-row' : 'none'; item.style.display = matches ? 'table-row' : 'none';
} else { } else {
@@ -52,7 +52,7 @@ export function applyIssueSearchFilter() {
function initializeIssueSearch() { function initializeIssueSearch() {
const searchInput = document.getElementById('issue-search'); const searchInput = document.getElementById('issue-search');
searchInput.addEventListener('input', () => { searchInput.addEventListener('input', () => {
issueSearchTerm = searchInput.value.trim().toLowerCase(); issueSearchTerms = searchInput.value.trim().toLowerCase().split(/\s+/).filter(Boolean);
applyIssueSearchFilter(); applyIssueSearchFilter();
}); });
} }