0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2026-01-19 12:02:41 +00:00

Switch to case-insensitive tag comparison

This commit is contained in:
G.Ambatte
2023-12-03 16:34:12 +13:00
parent 632882d370
commit 6c4dad675f

View File

@@ -207,23 +207,29 @@ const ListPage = createClass({
const testString = _.deburr(this.state.filterString).toLowerCase(); const testString = _.deburr(this.state.filterString).toLowerCase();
brews = _.filter(brews, (brew)=>{ brews = _.filter(brews, (brew)=>{
// Filter by user entered text
const brewStrings = _.deburr([ const brewStrings = _.deburr([
brew.title, brew.title,
brew.description, brew.description,
brew.tags].join('\n') brew.tags].join('\n')
.toLowerCase()); .toLowerCase());
return brewStrings.includes(testString); const filterTextTest = brewStrings.includes(testString);
});
// Filter by user selected tags
let filterTagTest = true;
if(this.state.filterTags.length > 0){ if(this.state.filterTags.length > 0){
brews = _.filter(brews, (brew)=>{ filterTagTest = this.state.filterTags.every((tag)=>{
return this.state.filterTags.every((tag)=>{ if(typeof brew.tags == 'string') return false;
return brew.tags?.includes(tag); return brew.tags.findIndex((brewTag)=>{
}); return brewTag.toLowerCase() == tag.toLowerCase();
}) >= 0;
}); });
} }
return filterTextTest && filterTagTest;
});
return _.orderBy(brews, (brew)=>{ return this.sortBrewOrder(brew); }, this.state.sortDir); return _.orderBy(brews, (brew)=>{ return this.sortBrewOrder(brew); }, this.state.sortDir);
}, },