Browse Source

Throttle searches and update algolia instantsearch to latest

Jordi Boggiano 7 years ago
parent
commit
9d403c3094

+ 8 - 1
src/Packagist/WebBundle/Resources/public/js/search.js

@@ -20,6 +20,7 @@ if (algoliaConfig.type) {
     };
 }
 
+var searchThrottle = null;
 var search = instantsearch({
     appId: algoliaConfig.app_id,
     apiKey: algoliaConfig.search_key,
@@ -41,7 +42,13 @@ var search = instantsearch({
             searchResults.removeClass('hidden');
         }
 
-        helper.search();
+        if (searchThrottle) {
+            clearTimeout(searchThrottle);
+        }
+
+        searchThrottle = setTimeout(function () {
+            helper.search();
+        }, 300);
     },
     searchParameters: searchParameters
 });

+ 1 - 1
src/Packagist/WebBundle/Resources/views/layout.html.twig

@@ -212,7 +212,7 @@
         <script src="{{ asset('libs/humane-3.2.2.min.js') }}"></script>
         <script src="{{ asset('bundles/packagistweb/js/layout.js') }}"></script>
         <script src="{{ asset('libs/bootstrap-3.3.5/js/bootstrap.min.js')}}"></script>
-        <script src="https://cdn.jsdelivr.net/npm/instantsearch.js@2.1.3/dist/instantsearch.min.js"></script>
+        <script src="https://cdn.jsdelivr.net/npm/instantsearch.js@2.2.2/dist/instantsearch.min.js"></script>
         <script src="{{ asset('bundles/packagistweb/js/search.js') }}"></script>
 
         {%- if not app.debug and google_analytics.ga_key %}