Browse Source

feat(admin-ui): Improve facet filtering for product search input

Closes #1078
Dushko Jordanovski 4 years ago
parent
commit
43f0adb3fb

+ 14 - 2
packages/admin-ui/src/lib/catalog/src/components/product-search-input/product-search-input.component.ts

@@ -60,9 +60,21 @@ export class ProductSearchInputComponent {
         if (!this.isFacetValueItem(item)) {
         if (!this.isFacetValueItem(item)) {
             return false;
             return false;
         }
         }
+
+        const cix = term.indexOf(':');
+        const facetName = cix > -1 ? term.toLowerCase().slice(0, cix) : null;
+        const facetVal = cix > -1 ? term.toLowerCase().slice(cix + 1) : term.toLowerCase();
+
+        if (facetName) {
+            return (
+                item.facetValue.facet.name.toLowerCase().includes(facetName) &&
+                item.facetValue.name.toLocaleLowerCase().includes(facetVal)
+            );
+        }
+
         return (
         return (
-            item.facetValue.name.toLowerCase().startsWith(term.toLowerCase()) ||
-            item.facetValue.facet.name.toLowerCase().startsWith(term.toLowerCase())
+            item.facetValue.name.toLowerCase().includes(term.toLowerCase()) ||
+            item.facetValue.facet.name.toLowerCase().includes(term.toLowerCase())
         );
         );
     };
     };