instantsearch.js 4.75.6 → 4.76.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/cjs/components/Answers/Answers.js +6 -7
  2. package/cjs/components/Breadcrumb/Breadcrumb.js +1 -2
  3. package/cjs/components/ClearRefinements/ClearRefinements.js +1 -2
  4. package/cjs/components/CurrentRefinements/CurrentRefinements.js +1 -2
  5. package/cjs/components/GeoSearchControls/GeoSearchButton.js +1 -2
  6. package/cjs/components/GeoSearchControls/GeoSearchControls.js +1 -2
  7. package/cjs/components/GeoSearchControls/GeoSearchToggle.js +1 -2
  8. package/cjs/components/InfiniteHits/InfiniteHits.js +6 -7
  9. package/cjs/components/InternalHighlight/InternalHighlight.js +2 -3
  10. package/cjs/components/MenuSelect/MenuSelect.js +1 -2
  11. package/cjs/components/Pagination/Pagination.js +1 -2
  12. package/cjs/components/Panel/Panel.js +2 -3
  13. package/cjs/components/PoweredBy/PoweredBy.js +1 -2
  14. package/cjs/components/QueryRuleCustomData/QueryRuleCustomData.js +1 -2
  15. package/cjs/components/RangeInput/RangeInput.js +4 -5
  16. package/cjs/components/RefinementList/RefinementList.js +6 -7
  17. package/cjs/components/RefinementList/RefinementListItem.js +1 -2
  18. package/cjs/components/RelevantSort/RelevantSort.js +1 -2
  19. package/cjs/components/SearchBox/SearchBox.js +4 -5
  20. package/cjs/components/Selector/Selector.js +1 -2
  21. package/cjs/components/Slider/Pit.js +6 -7
  22. package/cjs/components/Slider/Rheostat.js +4 -5
  23. package/cjs/components/Slider/Slider.js +4 -5
  24. package/cjs/components/Stats/Stats.js +6 -7
  25. package/cjs/components/Template/Template.js +4 -5
  26. package/cjs/components/ToggleRefinement/ToggleRefinement.js +1 -2
  27. package/cjs/components/VoiceSearch/VoiceSearch.js +1 -2
  28. package/cjs/connectors/answers/connectAnswers.js +6 -7
  29. package/cjs/connectors/autocomplete/connectAutocomplete.js +6 -7
  30. package/cjs/connectors/breadcrumb/connectBreadcrumb.js +7 -8
  31. package/cjs/connectors/clear-refinements/connectClearRefinements.js +6 -7
  32. package/cjs/connectors/configure/connectConfigure.js +6 -7
  33. package/cjs/connectors/configure-related-items/connectConfigureRelatedItems.js +6 -7
  34. package/cjs/connectors/current-refinements/connectCurrentRefinements.js +6 -7
  35. package/cjs/connectors/dynamic-widgets/connectDynamicWidgets.js +6 -7
  36. package/cjs/connectors/frequently-bought-together/connectFrequentlyBoughtTogether.js +7 -8
  37. package/cjs/connectors/geo-search/connectGeoSearch.js +7 -8
  38. package/cjs/connectors/hierarchical-menu/connectHierarchicalMenu.js +7 -8
  39. package/cjs/connectors/hits/connectHits.js +7 -8
  40. package/cjs/connectors/hits/connectHitsWithInsights.js +1 -2
  41. package/cjs/connectors/hits-per-page/connectHitsPerPage.js +6 -7
  42. package/cjs/connectors/index.js +3 -6
  43. package/cjs/connectors/infinite-hits/connectInfiniteHits.js +7 -8
  44. package/cjs/connectors/infinite-hits/connectInfiniteHitsWithInsights.js +1 -2
  45. package/cjs/connectors/looking-similar/connectLookingSimilar.js +7 -8
  46. package/cjs/connectors/menu/connectMenu.js +7 -8
  47. package/cjs/connectors/numeric-menu/connectNumericMenu.js +8 -9
  48. package/cjs/connectors/pagination/Paginator.js +4 -5
  49. package/cjs/connectors/pagination/connectPagination.js +6 -7
  50. package/cjs/connectors/powered-by/connectPoweredBy.js +6 -7
  51. package/cjs/connectors/query-rules/connectQueryRules.js +6 -7
  52. package/cjs/connectors/range/connectRange.js +7 -8
  53. package/cjs/connectors/rating-menu/connectRatingMenu.js +7 -8
  54. package/cjs/connectors/refinement-list/connectRefinementList.js +6 -7
  55. package/cjs/connectors/related-products/connectRelatedProducts.js +7 -8
  56. package/cjs/connectors/relevant-sort/connectRelevantSort.js +6 -7
  57. package/cjs/connectors/search-box/connectSearchBox.js +6 -7
  58. package/cjs/connectors/sort-by/connectSortBy.js +6 -7
  59. package/cjs/connectors/stats/connectStats.js +6 -7
  60. package/cjs/connectors/toggle-refinement/connectToggleRefinement.js +7 -8
  61. package/cjs/connectors/trending-items/connectTrendingItems.js +7 -8
  62. package/cjs/connectors/voice-search/connectVoiceSearch.js +6 -7
  63. package/cjs/helpers/components/ReverseHighlight.js +5 -5
  64. package/cjs/helpers/components/ReverseSnippet.js +5 -5
  65. package/cjs/helpers/get-insights-anonymous-user-token.js +2 -3
  66. package/cjs/helpers/index.js +3 -3
  67. package/cjs/helpers/insights.js +1 -1
  68. package/cjs/index.js +4 -5
  69. package/cjs/lib/InstantSearch.js +25 -12
  70. package/cjs/lib/createHelpers.js +5 -5
  71. package/cjs/lib/insights/client.js +6 -7
  72. package/cjs/lib/insights/index.js +3 -3
  73. package/cjs/lib/insights/listener.js +1 -2
  74. package/cjs/lib/routers/history.js +3 -3
  75. package/cjs/lib/server.js +29 -14
  76. package/cjs/lib/stateMappings/simple.js +5 -5
  77. package/cjs/lib/stateMappings/singleIndex.js +3 -3
  78. package/cjs/lib/suit.js +2 -3
  79. package/cjs/lib/templating/prepareTemplateProps.js +5 -5
  80. package/cjs/lib/templating/renderTemplate.js +5 -5
  81. package/cjs/lib/utils/checkIndexUiState.js +1 -1
  82. package/cjs/lib/utils/createSendEventForFacet.js +6 -6
  83. package/cjs/lib/utils/createSendEventForHits.js +6 -6
  84. package/cjs/lib/utils/escape-highlight.js +7 -9
  85. package/cjs/lib/utils/geo-search.js +1 -1
  86. package/cjs/lib/utils/getAppIdAndApiKey.js +7 -4
  87. package/cjs/lib/utils/hits-absolute-position.js +5 -5
  88. package/cjs/lib/utils/hits-query-id.js +5 -5
  89. package/cjs/lib/utils/hydrateRecommendCache.js +5 -5
  90. package/cjs/lib/utils/hydrateSearchClient.js +12 -9
  91. package/cjs/lib/utils/isPlainObject.js +1 -1
  92. package/cjs/lib/utils/logger.js +3 -6
  93. package/cjs/lib/utils/mergeSearchParameters.js +7 -8
  94. package/cjs/lib/utils/reverseHighlightedParts.js +5 -5
  95. package/cjs/lib/utils/typedObject.js +1 -2
  96. package/cjs/lib/version.js +1 -2
  97. package/cjs/lib/voiceSearchHelper/index.js +6 -7
  98. package/cjs/middlewares/createInsightsMiddleware.js +6 -6
  99. package/cjs/middlewares/createRouterMiddleware.js +7 -8
  100. package/cjs/templates/carousel/carousel.js +5 -5
  101. package/cjs/widgets/analytics/analytics.js +6 -7
  102. package/cjs/widgets/answers/answers.js +6 -7
  103. package/cjs/widgets/answers/defaultTemplates.js +1 -2
  104. package/cjs/widgets/breadcrumb/breadcrumb.js +6 -7
  105. package/cjs/widgets/breadcrumb/defaultTemplates.js +1 -2
  106. package/cjs/widgets/clear-refinements/clear-refinements.js +6 -7
  107. package/cjs/widgets/clear-refinements/defaultTemplates.js +1 -2
  108. package/cjs/widgets/configure/configure.js +6 -7
  109. package/cjs/widgets/configure-related-items/configure-related-items.js +6 -7
  110. package/cjs/widgets/current-refinements/current-refinements.js +6 -7
  111. package/cjs/widgets/dynamic-widgets/dynamic-widgets.js +6 -7
  112. package/cjs/widgets/frequently-bought-together/frequently-bought-together.js +7 -8
  113. package/cjs/widgets/geo-search/GeoSearchRenderer.js +7 -8
  114. package/cjs/widgets/geo-search/createHTMLMarker.js +4 -5
  115. package/cjs/widgets/geo-search/defaultTemplates.js +1 -2
  116. package/cjs/widgets/geo-search/geo-search.js +7 -8
  117. package/cjs/widgets/hierarchical-menu/defaultTemplates.js +1 -2
  118. package/cjs/widgets/hierarchical-menu/hierarchical-menu.js +6 -7
  119. package/cjs/widgets/hits/defaultTemplates.js +1 -2
  120. package/cjs/widgets/hits/hits.js +7 -8
  121. package/cjs/widgets/hits-per-page/hits-per-page.js +6 -7
  122. package/cjs/widgets/index/index.js +6 -7
  123. package/cjs/widgets/index.js +3 -6
  124. package/cjs/widgets/infinite-hits/defaultTemplates.js +1 -2
  125. package/cjs/widgets/infinite-hits/infinite-hits.js +7 -8
  126. package/cjs/widgets/looking-similar/looking-similar.js +7 -8
  127. package/cjs/widgets/menu/defaultTemplates.js +1 -2
  128. package/cjs/widgets/menu/menu.js +6 -7
  129. package/cjs/widgets/menu-select/defaultTemplates.js +1 -2
  130. package/cjs/widgets/menu-select/menu-select.js +6 -7
  131. package/cjs/widgets/numeric-menu/defaultTemplates.js +1 -2
  132. package/cjs/widgets/numeric-menu/numeric-menu.js +6 -7
  133. package/cjs/widgets/pagination/pagination.js +6 -7
  134. package/cjs/widgets/panel/panel.js +6 -7
  135. package/cjs/widgets/places/places.js +6 -7
  136. package/cjs/widgets/powered-by/powered-by.js +6 -7
  137. package/cjs/widgets/query-rule-context/query-rule-context.js +6 -7
  138. package/cjs/widgets/query-rule-custom-data/query-rule-custom-data.js +7 -9
  139. package/cjs/widgets/range-input/range-input.js +7 -8
  140. package/cjs/widgets/range-slider/range-slider.js +7 -8
  141. package/cjs/widgets/rating-menu/defaultTemplates.js +1 -2
  142. package/cjs/widgets/rating-menu/rating-menu.js +6 -7
  143. package/cjs/widgets/refinement-list/defaultTemplates.js +1 -2
  144. package/cjs/widgets/refinement-list/refinement-list.js +6 -7
  145. package/cjs/widgets/related-products/related-products.js +7 -8
  146. package/cjs/widgets/relevant-sort/defaultTemplates.js +1 -2
  147. package/cjs/widgets/relevant-sort/relevant-sort.js +6 -7
  148. package/cjs/widgets/search-box/defaultTemplates.js +1 -2
  149. package/cjs/widgets/search-box/search-box.js +6 -7
  150. package/cjs/widgets/sort-by/sort-by.js +6 -7
  151. package/cjs/widgets/stats/stats.js +7 -9
  152. package/cjs/widgets/toggle-refinement/defaultTemplates.js +1 -2
  153. package/cjs/widgets/toggle-refinement/toggle-refinement.js +6 -7
  154. package/cjs/widgets/trending-items/trending-items.js +7 -8
  155. package/cjs/widgets/voice-search/defaultTemplates.js +1 -2
  156. package/cjs/widgets/voice-search/voice-search.js +6 -7
  157. package/dist/instantsearch.development.d.ts +9 -1
  158. package/dist/instantsearch.development.js +384 -154
  159. package/dist/instantsearch.development.js.map +1 -1
  160. package/dist/instantsearch.production.d.ts +9 -1
  161. package/dist/instantsearch.production.min.d.ts +9 -1
  162. package/dist/instantsearch.production.min.js +2 -2
  163. package/dist/instantsearch.production.min.js.map +1 -1
  164. package/es/components/Answers/Answers.js +5 -5
  165. package/es/components/InfiniteHits/InfiniteHits.js +5 -5
  166. package/es/components/Panel/Panel.js +1 -1
  167. package/es/components/RangeInput/RangeInput.js +3 -3
  168. package/es/components/RefinementList/RefinementList.js +5 -5
  169. package/es/components/SearchBox/SearchBox.js +3 -3
  170. package/es/components/Slider/Pit.js +5 -5
  171. package/es/components/Slider/Rheostat.js +3 -3
  172. package/es/components/Slider/Slider.js +3 -3
  173. package/es/components/Stats/Stats.js +5 -5
  174. package/es/components/Template/Template.js +3 -3
  175. package/es/connectors/answers/connectAnswers.js +5 -5
  176. package/es/connectors/autocomplete/connectAutocomplete.js +5 -5
  177. package/es/connectors/breadcrumb/connectBreadcrumb.js +6 -6
  178. package/es/connectors/clear-refinements/connectClearRefinements.js +5 -5
  179. package/es/connectors/configure/connectConfigure.js +5 -5
  180. package/es/connectors/configure-related-items/connectConfigureRelatedItems.js +5 -5
  181. package/es/connectors/current-refinements/connectCurrentRefinements.js +5 -5
  182. package/es/connectors/dynamic-widgets/connectDynamicWidgets.js +5 -5
  183. package/es/connectors/frequently-bought-together/connectFrequentlyBoughtTogether.js +5 -5
  184. package/es/connectors/geo-search/connectGeoSearch.js +5 -5
  185. package/es/connectors/hierarchical-menu/connectHierarchicalMenu.js +6 -6
  186. package/es/connectors/hits/connectHits.js +5 -5
  187. package/es/connectors/hits-per-page/connectHitsPerPage.js +5 -5
  188. package/es/connectors/infinite-hits/connectInfiniteHits.js +5 -5
  189. package/es/connectors/looking-similar/connectLookingSimilar.js +5 -5
  190. package/es/connectors/menu/connectMenu.js +6 -6
  191. package/es/connectors/numeric-menu/connectNumericMenu.js +7 -7
  192. package/es/connectors/pagination/Paginator.js +3 -3
  193. package/es/connectors/pagination/connectPagination.js +5 -5
  194. package/es/connectors/powered-by/connectPoweredBy.js +5 -5
  195. package/es/connectors/query-rules/connectQueryRules.js +5 -5
  196. package/es/connectors/range/connectRange.js +6 -6
  197. package/es/connectors/rating-menu/connectRatingMenu.js +6 -6
  198. package/es/connectors/refinement-list/connectRefinementList.js +5 -5
  199. package/es/connectors/related-products/connectRelatedProducts.js +5 -5
  200. package/es/connectors/relevant-sort/connectRelevantSort.js +5 -5
  201. package/es/connectors/search-box/connectSearchBox.js +5 -5
  202. package/es/connectors/sort-by/connectSortBy.js +5 -5
  203. package/es/connectors/stats/connectStats.js +5 -5
  204. package/es/connectors/toggle-refinement/connectToggleRefinement.js +6 -6
  205. package/es/connectors/trending-items/connectTrendingItems.js +5 -5
  206. package/es/connectors/voice-search/connectVoiceSearch.js +5 -5
  207. package/es/helpers/components/ReverseHighlight.js +5 -5
  208. package/es/helpers/components/ReverseSnippet.js +5 -5
  209. package/es/helpers/get-insights-anonymous-user-token.js +1 -1
  210. package/es/helpers/insights.js +1 -1
  211. package/es/lib/InstantSearch.d.ts +9 -2
  212. package/es/lib/InstantSearch.js +23 -8
  213. package/es/lib/createHelpers.js +5 -5
  214. package/es/lib/insights/client.js +5 -5
  215. package/es/lib/routers/history.js +3 -3
  216. package/es/lib/server.js +29 -14
  217. package/es/lib/stateMappings/simple.js +5 -5
  218. package/es/lib/stateMappings/singleIndex.js +3 -3
  219. package/es/lib/templating/prepareTemplateProps.js +5 -5
  220. package/es/lib/templating/renderTemplate.js +5 -5
  221. package/es/lib/utils/checkIndexUiState.js +1 -1
  222. package/es/lib/utils/createSendEventForFacet.js +6 -6
  223. package/es/lib/utils/createSendEventForHits.js +6 -6
  224. package/es/lib/utils/escape-highlight.js +5 -5
  225. package/es/lib/utils/geo-search.js +1 -1
  226. package/es/lib/utils/getAppIdAndApiKey.d.ts +1 -1
  227. package/es/lib/utils/getAppIdAndApiKey.js +7 -4
  228. package/es/lib/utils/hits-absolute-position.js +5 -5
  229. package/es/lib/utils/hits-query-id.js +5 -5
  230. package/es/lib/utils/hydrateRecommendCache.js +5 -5
  231. package/es/lib/utils/hydrateSearchClient.d.ts +2 -2
  232. package/es/lib/utils/hydrateSearchClient.js +12 -9
  233. package/es/lib/utils/isPlainObject.js +1 -1
  234. package/es/lib/utils/mergeSearchParameters.js +5 -5
  235. package/es/lib/utils/reverseHighlightedParts.js +5 -5
  236. package/es/lib/version.d.ts +1 -1
  237. package/es/lib/version.js +1 -1
  238. package/es/lib/voiceSearchHelper/index.js +5 -5
  239. package/es/middlewares/createInsightsMiddleware.js +6 -6
  240. package/es/middlewares/createRouterMiddleware.js +5 -5
  241. package/es/templates/carousel/carousel.js +5 -5
  242. package/es/widgets/analytics/analytics.js +5 -5
  243. package/es/widgets/answers/answers.js +5 -5
  244. package/es/widgets/breadcrumb/breadcrumb.js +5 -5
  245. package/es/widgets/clear-refinements/clear-refinements.js +5 -5
  246. package/es/widgets/configure/configure.js +5 -5
  247. package/es/widgets/configure-related-items/configure-related-items.js +5 -5
  248. package/es/widgets/current-refinements/current-refinements.js +5 -5
  249. package/es/widgets/dynamic-widgets/dynamic-widgets.js +5 -5
  250. package/es/widgets/frequently-bought-together/frequently-bought-together.js +5 -5
  251. package/es/widgets/geo-search/GeoSearchRenderer.js +6 -6
  252. package/es/widgets/geo-search/createHTMLMarker.js +3 -3
  253. package/es/widgets/geo-search/geo-search.js +5 -5
  254. package/es/widgets/hierarchical-menu/hierarchical-menu.js +5 -5
  255. package/es/widgets/hits/hits.js +5 -5
  256. package/es/widgets/hits-per-page/hits-per-page.js +5 -5
  257. package/es/widgets/index/index.js +5 -5
  258. package/es/widgets/infinite-hits/infinite-hits.js +5 -5
  259. package/es/widgets/looking-similar/looking-similar.js +5 -5
  260. package/es/widgets/menu/menu.js +5 -5
  261. package/es/widgets/menu-select/menu-select.js +5 -5
  262. package/es/widgets/numeric-menu/numeric-menu.js +5 -5
  263. package/es/widgets/pagination/pagination.js +5 -5
  264. package/es/widgets/panel/panel.js +5 -5
  265. package/es/widgets/places/places.js +5 -5
  266. package/es/widgets/powered-by/powered-by.js +5 -5
  267. package/es/widgets/query-rule-context/query-rule-context.js +5 -5
  268. package/es/widgets/query-rule-custom-data/query-rule-custom-data.js +5 -5
  269. package/es/widgets/range-input/range-input.js +6 -6
  270. package/es/widgets/range-slider/range-slider.js +6 -6
  271. package/es/widgets/rating-menu/rating-menu.js +5 -5
  272. package/es/widgets/refinement-list/refinement-list.js +5 -5
  273. package/es/widgets/related-products/related-products.js +5 -5
  274. package/es/widgets/relevant-sort/relevant-sort.js +5 -5
  275. package/es/widgets/search-box/search-box.js +5 -5
  276. package/es/widgets/sort-by/sort-by.js +5 -5
  277. package/es/widgets/stats/stats.js +5 -5
  278. package/es/widgets/toggle-refinement/toggle-refinement.js +5 -5
  279. package/es/widgets/trending-items/trending-items.js +5 -5
  280. package/es/widgets/voice-search/voice-search.js +5 -5
  281. package/package.json +7 -7
@@ -1,4 +1,4 @@
1
- /*! InstantSearch.js 4.75.6 | © Algolia, Inc. and contributors; MIT License | https://github.com/algolia/instantsearch */
1
+ /*! InstantSearch.js 4.76.0 | © Algolia, Inc. and contributors; MIT License | https://github.com/algolia/instantsearch */
2
2
  (function (global, factory) {
3
3
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
4
4
  typeof define === 'function' && define.amd ? define(factory) :
@@ -17,62 +17,76 @@
17
17
  return text.toString().charAt(0).toUpperCase() + text.toString().slice(1);
18
18
  }
19
19
 
20
- function _iterableToArrayLimit(arr, i) {
21
- var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
22
- if (null != _i) {
23
- var _s,
24
- _e,
25
- _x,
26
- _r,
27
- _arr = [],
28
- _n = !0,
29
- _d = !1;
20
+ function _iterableToArrayLimit(r, l) {
21
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
22
+ if (null != t) {
23
+ var e,
24
+ n,
25
+ i,
26
+ u,
27
+ a = [],
28
+ f = !0,
29
+ o = !1;
30
30
  try {
31
- if (_x = (_i = _i.call(arr)).next, 0 === i) {
32
- if (Object(_i) !== _i) return;
33
- _n = !1;
34
- } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
35
- } catch (err) {
36
- _d = !0, _e = err;
31
+ if (i = (t = t.call(r)).next, 0 === l) {
32
+ if (Object(t) !== t) return;
33
+ f = !1;
34
+ } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
35
+ } catch (r) {
36
+ o = !0, n = r;
37
37
  } finally {
38
38
  try {
39
- if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
39
+ if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;
40
40
  } finally {
41
- if (_d) throw _e;
41
+ if (o) throw n;
42
42
  }
43
43
  }
44
- return _arr;
44
+ return a;
45
45
  }
46
46
  }
47
- function ownKeys(object, enumerableOnly) {
48
- var keys = Object.keys(object);
47
+ function ownKeys(e, r) {
48
+ var t = Object.keys(e);
49
49
  if (Object.getOwnPropertySymbols) {
50
- var symbols = Object.getOwnPropertySymbols(object);
51
- enumerableOnly && (symbols = symbols.filter(function (sym) {
52
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
53
- })), keys.push.apply(keys, symbols);
54
- }
55
- return keys;
56
- }
57
- function _objectSpread2(target) {
58
- for (var i = 1; i < arguments.length; i++) {
59
- var source = null != arguments[i] ? arguments[i] : {};
60
- i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
61
- _defineProperty(target, key, source[key]);
62
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
63
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
50
+ var o = Object.getOwnPropertySymbols(e);
51
+ r && (o = o.filter(function (r) {
52
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
53
+ })), t.push.apply(t, o);
54
+ }
55
+ return t;
56
+ }
57
+ function _objectSpread2(e) {
58
+ for (var r = 1; r < arguments.length; r++) {
59
+ var t = null != arguments[r] ? arguments[r] : {};
60
+ r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {
61
+ _defineProperty(e, r, t[r]);
62
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {
63
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
64
64
  });
65
65
  }
66
- return target;
66
+ return e;
67
67
  }
68
- function _typeof(obj) {
68
+ function _toPrimitive(t, r) {
69
+ if ("object" != typeof t || !t) return t;
70
+ var e = t[Symbol.toPrimitive];
71
+ if (void 0 !== e) {
72
+ var i = e.call(t, r || "default");
73
+ if ("object" != typeof i) return i;
74
+ throw new TypeError("@@toPrimitive must return a primitive value.");
75
+ }
76
+ return ("string" === r ? String : Number)(t);
77
+ }
78
+ function _toPropertyKey(t) {
79
+ var i = _toPrimitive(t, "string");
80
+ return "symbol" == typeof i ? i : String(i);
81
+ }
82
+ function _typeof(o) {
69
83
  "@babel/helpers - typeof";
70
84
 
71
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
72
- return typeof obj;
73
- } : function (obj) {
74
- return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
75
- }, _typeof(obj);
85
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
86
+ return typeof o;
87
+ } : function (o) {
88
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
89
+ }, _typeof(o);
76
90
  }
77
91
  function _classCallCheck(instance, Constructor) {
78
92
  if (!(instance instanceof Constructor)) {
@@ -307,20 +321,6 @@
307
321
  }
308
322
  };
309
323
  }
310
- function _toPrimitive(input, hint) {
311
- if (typeof input !== "object" || input === null) return input;
312
- var prim = input[Symbol.toPrimitive];
313
- if (prim !== undefined) {
314
- var res = prim.call(input, hint || "default");
315
- if (typeof res !== "object") return res;
316
- throw new TypeError("@@toPrimitive must return a primitive value.");
317
- }
318
- return (hint === "string" ? String : Number)(input);
319
- }
320
- function _toPropertyKey(arg) {
321
- var key = _toPrimitive(arg, "string");
322
- return typeof key === "symbol" ? key : String(key);
323
- }
324
324
 
325
325
  function noop() {}
326
326
 
@@ -1172,16 +1172,19 @@
1172
1172
 
1173
1173
  // typed as any, since it accepts the _real_ js clients, not the interface we otherwise expect
1174
1174
  function getAppIdAndApiKey(searchClient) {
1175
- if (searchClient.transporter) {
1175
+ if (searchClient.appId && searchClient.apiKey) {
1176
+ // searchClient v5
1177
+ return [searchClient.appId, searchClient.apiKey];
1178
+ } else if (searchClient.transporter) {
1176
1179
  // searchClient v4 or v5
1177
1180
  var transporter = searchClient.transporter;
1178
1181
  var headers = transporter.headers || transporter.baseHeaders;
1179
1182
  var queryParameters = transporter.queryParameters || transporter.baseQueryParameters;
1180
1183
  var APP_ID = 'x-algolia-application-id';
1181
1184
  var API_KEY = 'x-algolia-api-key';
1182
- var appId = headers[APP_ID] || queryParameters[APP_ID];
1183
- var apiKey = headers[API_KEY] || queryParameters[API_KEY];
1184
- return [appId, apiKey];
1185
+ var _appId = headers[APP_ID] || queryParameters[APP_ID];
1186
+ var _apiKey = headers[API_KEY] || queryParameters[API_KEY];
1187
+ return [_appId, _apiKey];
1185
1188
  } else {
1186
1189
  // searchClient v3
1187
1190
  return [searchClient.applicationID, searchClient.apiKey];
@@ -1476,16 +1479,19 @@
1476
1479
  if ('transporter' in client && !client._cacheHydrated) {
1477
1480
  client._cacheHydrated = true;
1478
1481
  var baseMethod = client.search.bind(client);
1479
- // @ts-ignore wanting type checks for v3 on this would make this too complex
1480
1482
  client.search = function (requests) {
1481
1483
  for (var _len = arguments.length, methodArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
1482
1484
  methodArgs[_key - 1] = arguments[_key];
1483
1485
  }
1484
- var requestsWithSerializedParams = requests.map(function (request) {
1486
+ var requestsWithSerializedParams = Array.isArray(requests) ?
1487
+ // search client
1488
+ requests.map(function (request) {
1485
1489
  return _objectSpread2(_objectSpread2({}, request), {}, {
1486
1490
  params: serializeQueryParameters(request.params)
1487
1491
  });
1488
- });
1492
+ }) :
1493
+ // composition client
1494
+ serializeQueryParameters(requests.requestBody.params);
1489
1495
  return client.transporter.responsesCache.get({
1490
1496
  method: 'search',
1491
1497
  args: [requestsWithSerializedParams].concat(methodArgs)
@@ -2694,6 +2700,24 @@
2694
2700
  return queries;
2695
2701
  },
2696
2702
 
2703
+ /**
2704
+ * Get all the queries to send to the client, those queries can used directly
2705
+ * with the Algolia client.
2706
+ * @private
2707
+ * @param {SearchParameters} state The state from which to get the queries
2708
+ * @return {object[]} The queries
2709
+ */
2710
+ _getCompositionQueries: function getQueries(state) {
2711
+ return [
2712
+ {
2713
+ compositionID: state.index,
2714
+ requestBody: {
2715
+ params: requestBuilder._getCompositionHitsSearchParams(state),
2716
+ },
2717
+ },
2718
+ ];
2719
+ },
2720
+
2697
2721
  /**
2698
2722
  * Build search parameters used to fetch hits
2699
2723
  * @private
@@ -2730,6 +2754,53 @@
2730
2754
  return sortObject(merge_1({}, state.getQueryParams(), additionalParams));
2731
2755
  },
2732
2756
 
2757
+ /**
2758
+ * Build search parameters used to fetch hits
2759
+ * @private
2760
+ * @param {SearchParameters} state The state from which to get the queries
2761
+ * @return {object.<string, any>} The search parameters for hits
2762
+ */
2763
+ _getCompositionHitsSearchParams: function (state) {
2764
+ var facets = state.facets
2765
+ .concat(
2766
+ state.disjunctiveFacets.map(function (value) {
2767
+ return 'disjunctive(' + value + ')';
2768
+ })
2769
+ )
2770
+ .concat(requestBuilder._getHitsHierarchicalFacetsAttributes(state))
2771
+ .sort();
2772
+
2773
+ var facetFilters = requestBuilder._getFacetFilters(state);
2774
+ var numericFilters = requestBuilder._getNumericFilters(state);
2775
+ var tagFilters = requestBuilder._getTagFilters(state);
2776
+ var additionalParams = {};
2777
+
2778
+ if (facets.length > 0) {
2779
+ additionalParams.facets = facets.indexOf('*') > -1 ? ['*'] : facets;
2780
+ }
2781
+
2782
+ if (tagFilters.length > 0) {
2783
+ additionalParams.tagFilters = tagFilters;
2784
+ }
2785
+
2786
+ if (facetFilters.length > 0) {
2787
+ additionalParams.facetFilters = facetFilters;
2788
+ }
2789
+
2790
+ if (numericFilters.length > 0) {
2791
+ additionalParams.numericFilters = numericFilters;
2792
+ }
2793
+
2794
+ var params = state.getQueryParams();
2795
+
2796
+ delete params.highlightPreTag;
2797
+ delete params.highlightPostTag;
2798
+ // not a valid search parameter, it is handled in _getCompositionQueries
2799
+ delete params.index;
2800
+
2801
+ return sortObject(merge_1({}, params, additionalParams));
2802
+ },
2803
+
2733
2804
  /**
2734
2805
  * Build search parameters used to fetch a disjunctive facet
2735
2806
  * @private
@@ -6484,7 +6555,7 @@
6484
6555
 
6485
6556
  var sortAndMergeRecommendations_1 = sortAndMergeRecommendations;
6486
6557
 
6487
- var version = '3.22.6';
6558
+ var version = '3.23.0';
6488
6559
 
6489
6560
  var escapeFacetValue$4 = escapeFacetValue_1.escapeFacetValue;
6490
6561
 
@@ -6651,6 +6722,10 @@
6651
6722
  return this;
6652
6723
  };
6653
6724
 
6725
+ AlgoliaSearchHelper.prototype.searchWithComposition = function () {
6726
+ this._runComposition({ onlyWithDerivedHelpers: true });
6727
+ return this;
6728
+ };
6654
6729
  /**
6655
6730
  * Sends the recommendation queries set in the state. When the method is
6656
6731
  * called, it triggers a `fetch` event. The results will be available through
@@ -6940,6 +7015,81 @@
6940
7015
  );
6941
7016
  };
6942
7017
 
7018
+ /**
7019
+ * Search for facet values using the Composition API & based on a query and the name of a faceted attribute.
7020
+ * This triggers a search and will return a promise. On top of using the query, it also sends
7021
+ * the parameters from the state so that the search is narrowed down to only the possible values.
7022
+ *
7023
+ * See the description of [FacetSearchResult](reference.html#FacetSearchResult)
7024
+ * @param {string} facet the name of the faceted attribute
7025
+ * @param {string} query the string query for the search
7026
+ * @param {number} [maxFacetHits] the maximum number values returned. Should be > 0 and <= 100
7027
+ * @param {object} [userState] the set of custom parameters to use on top of the current state. Setting a property to `undefined` removes
7028
+ * it in the generated query.
7029
+ * @return {promise.<FacetSearchResult>} the results of the search
7030
+ */
7031
+ AlgoliaSearchHelper.prototype.searchForCompositionFacetValues = function (
7032
+ facet,
7033
+ query,
7034
+ maxFacetHits,
7035
+ userState
7036
+ ) {
7037
+ if (typeof this.client.searchForFacetValues !== 'function') {
7038
+ throw new Error(
7039
+ 'search for facet values (searchable) was called, but this client does not have a function client.searchForFacetValues'
7040
+ );
7041
+ }
7042
+
7043
+ var state = this.state.setQueryParameters(userState || {});
7044
+ var isDisjunctive = state.isDisjunctiveFacet(facet);
7045
+
7046
+ this._currentNbQueries++;
7047
+ // eslint-disable-next-line consistent-this
7048
+ var self = this;
7049
+ var searchForFacetValuesPromise;
7050
+
7051
+ searchForFacetValuesPromise = this.client.searchForFacetValues({
7052
+ compositionID: state.index,
7053
+ facetName: facet,
7054
+ searchForFacetValuesRequest: {
7055
+ params: {
7056
+ query: query,
7057
+ maxFacetHits: maxFacetHits,
7058
+ searchQuery: requestBuilder_1._getCompositionHitsSearchParams(state),
7059
+ },
7060
+ },
7061
+ });
7062
+
7063
+ this.emit('searchForFacetValues', {
7064
+ state: state,
7065
+ facet: facet,
7066
+ query: query,
7067
+ });
7068
+
7069
+ return searchForFacetValuesPromise.then(
7070
+ function addIsRefined(content) {
7071
+ self._currentNbQueries--;
7072
+ if (self._currentNbQueries === 0) self.emit('searchQueueEmpty');
7073
+
7074
+ content = content.results[0];
7075
+
7076
+ content.facetHits.forEach(function (f) {
7077
+ f.escapedValue = escapeFacetValue$4(f.value);
7078
+ f.isRefined = isDisjunctive
7079
+ ? state.isDisjunctiveFacetRefined(facet, f.escapedValue)
7080
+ : state.isFacetRefined(facet, f.escapedValue);
7081
+ });
7082
+
7083
+ return content;
7084
+ },
7085
+ function (e) {
7086
+ self._currentNbQueries--;
7087
+ if (self._currentNbQueries === 0) self.emit('searchQueueEmpty');
7088
+ throw e;
7089
+ }
7090
+ );
7091
+ };
7092
+
6943
7093
  /**
6944
7094
  * Sets the text query used for the search.
6945
7095
  *
@@ -8061,6 +8211,71 @@
8061
8211
  return undefined;
8062
8212
  };
8063
8213
 
8214
+ /**
8215
+ * Perform the underlying queries
8216
+ * @private
8217
+ * @param {boolean} [options.onlyWithDerivedHelpers=false] if true, only the derived helpers will be queried
8218
+ * @return {undefined} does not return anything
8219
+ * @fires search
8220
+ * @fires result
8221
+ * @fires error
8222
+ */
8223
+ AlgoliaSearchHelper.prototype._runComposition = function () {
8224
+ var state = this.state;
8225
+ var states = [];
8226
+ var mainQueries = [];
8227
+
8228
+ var derivedQueries = this.derivedHelpers.map(function (derivedHelper) {
8229
+ var derivedState = derivedHelper.getModifiedState(state);
8230
+ var derivedStateQueries =
8231
+ requestBuilder_1._getCompositionQueries(derivedState);
8232
+
8233
+ states.push({
8234
+ state: derivedState,
8235
+ queriesCount: derivedStateQueries.length,
8236
+ helper: derivedHelper,
8237
+ });
8238
+
8239
+ derivedHelper.emit('search', {
8240
+ state: derivedState,
8241
+ results: derivedHelper.lastResults,
8242
+ });
8243
+
8244
+ return derivedStateQueries;
8245
+ });
8246
+
8247
+ var queries = Array.prototype.concat.apply(mainQueries, derivedQueries);
8248
+
8249
+ var queryId = this._queryId++;
8250
+ this._currentNbQueries++;
8251
+
8252
+ if (!queries.length) {
8253
+ return Promise.resolve({ results: [] }).then(
8254
+ this._dispatchAlgoliaResponse.bind(this, states, queryId)
8255
+ );
8256
+ }
8257
+
8258
+ if (queries.length > 1) {
8259
+ throw new Error('Only one query is allowed when using a composition.');
8260
+ }
8261
+
8262
+ var query = queries[0];
8263
+
8264
+ try {
8265
+ this.client
8266
+ .search(query)
8267
+ .then(this._dispatchAlgoliaResponse.bind(this, states, queryId))
8268
+ .catch(this._dispatchAlgoliaError.bind(this, queryId));
8269
+ } catch (error) {
8270
+ // If we reach this part, we're in an internal error state
8271
+ this.emit('error', {
8272
+ error: error,
8273
+ });
8274
+ }
8275
+
8276
+ return undefined;
8277
+ };
8278
+
8064
8279
  AlgoliaSearchHelper.prototype._recommend = function () {
8065
8280
  var searchState = this.state;
8066
8281
  var recommendState = this.recommendState;
@@ -16098,7 +16313,7 @@
16098
16313
  };
16099
16314
  }
16100
16315
 
16101
- var version$1 = '4.75.6';
16316
+ var version$1 = '4.76.0';
16102
16317
 
16103
16318
  var withUsage$v = createDocumentationMessageGenerator({
16104
16319
  name: 'instantsearch'
@@ -16137,6 +16352,7 @@
16137
16352
  // prevent `render` event listening from causing a warning
16138
16353
  _defineProperty(_assertThisInitialized(_this), "client", void 0);
16139
16354
  _defineProperty(_assertThisInitialized(_this), "indexName", void 0);
16355
+ _defineProperty(_assertThisInitialized(_this), "compositionID", void 0);
16140
16356
  _defineProperty(_assertThisInitialized(_this), "insightsClient", void 0);
16141
16357
  _defineProperty(_assertThisInitialized(_this), "onStateChange", null);
16142
16358
  _defineProperty(_assertThisInitialized(_this), "future", void 0);
@@ -16200,6 +16416,7 @@
16200
16416
  _this.setMaxListeners(100);
16201
16417
  var _options$indexName = options.indexName,
16202
16418
  indexName = _options$indexName === void 0 ? '' : _options$indexName,
16419
+ compositionID = options.compositionID,
16203
16420
  numberLocale = options.numberLocale,
16204
16421
  _options$initialUiSta = options.initialUiState,
16205
16422
  initialUiState = _options$initialUiSta === void 0 ? {} : _options$initialUiSta,
@@ -16244,10 +16461,13 @@
16244
16461
  _this.future = future;
16245
16462
  _this.insightsClient = insightsClient;
16246
16463
  _this.indexName = indexName;
16464
+ _this.compositionID = compositionID;
16247
16465
  _this.helper = null;
16248
16466
  _this.mainHelper = null;
16249
16467
  _this.mainIndex = index({
16250
- indexName: indexName
16468
+ // we use an index widget to render compositions
16469
+ // this only works because there's only one composition index allow for now
16470
+ indexName: _this.compositionID || _this.indexName
16251
16471
  });
16252
16472
  _this.onStateChange = onStateChange;
16253
16473
  _this.started = false;
@@ -16397,6 +16617,9 @@
16397
16617
  })) {
16398
16618
  throw new Error(withUsage$v('The widget definition expects a `render` and/or an `init` method.'));
16399
16619
  }
16620
+ if (this.compositionID && widgets.some(isIndexWidget)) {
16621
+ throw new Error(withUsage$v('The `index` widget cannot be used with a composition-based InstantSearch implementation.'));
16622
+ }
16400
16623
  this.mainIndex.addWidgets(widgets);
16401
16624
  return this;
16402
16625
  }
@@ -16456,17 +16679,24 @@
16456
16679
  var mainHelper = this.mainHelper || algoliasearchHelper_1(this.client, this.indexName, undefined, {
16457
16680
  persistHierarchicalRootCount: this.future.persistHierarchicalRootCount
16458
16681
  });
16682
+ if (this.compositionID) {
16683
+ mainHelper.searchForFacetValues = mainHelper.searchForCompositionFacetValues.bind(mainHelper);
16684
+ }
16459
16685
  mainHelper.search = function () {
16460
16686
  _this3.status = 'loading';
16461
16687
  _this3.scheduleRender(false);
16462
- _warning(Boolean(_this3.indexName) || _this3.mainIndex.getWidgets().some(isIndexWidget), 'No indexName provided, nor an explicit index widget in the widgets tree. This is required to be able to display results.') ;
16688
+ _warning(Boolean(_this3.indexName) || Boolean(_this3.compositionID) || _this3.mainIndex.getWidgets().some(isIndexWidget), 'No indexName provided, nor an explicit index widget in the widgets tree. This is required to be able to display results.') ;
16463
16689
 
16464
16690
  // This solution allows us to keep the exact same API for the users but
16465
16691
  // under the hood, we have a different implementation. It should be
16466
16692
  // completely transparent for the rest of the codebase. Only this module
16467
16693
  // is impacted.
16468
16694
  if (_this3._hasSearchWidget) {
16469
- mainHelper.searchOnlyWithDerivedHelpers();
16695
+ if (_this3.compositionID) {
16696
+ mainHelper.searchWithComposition();
16697
+ } else {
16698
+ mainHelper.searchOnlyWithDerivedHelpers();
16699
+ }
16470
16700
  }
16471
16701
  if (_this3._hasRecommendWidget) {
16472
16702
  mainHelper.recommend();
@@ -16953,26 +17183,26 @@
16953
17183
  }
16954
17184
 
16955
17185
  var _excluded$9 = ["listRef", "nextButtonRef", "previousButtonRef", "carouselIdRef", "classNames", "itemComponent", "previousIconComponent", "nextIconComponent", "items", "translations"];
16956
- function ownKeys$1(object, enumerableOnly) {
16957
- var keys = Object.keys(object);
17186
+ function ownKeys$1(e, r) {
17187
+ var t = Object.keys(e);
16958
17188
  if (Object.getOwnPropertySymbols) {
16959
- var symbols = Object.getOwnPropertySymbols(object);
16960
- enumerableOnly && (symbols = symbols.filter(function (sym) {
16961
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
16962
- })), keys.push.apply(keys, symbols);
16963
- }
16964
- return keys;
16965
- }
16966
- function _objectSpread(target) {
16967
- for (var i = 1; i < arguments.length; i++) {
16968
- var source = null != arguments[i] ? arguments[i] : {};
16969
- i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) {
16970
- _defineProperty$1(target, key, source[key]);
16971
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) {
16972
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
17189
+ var o = Object.getOwnPropertySymbols(e);
17190
+ r && (o = o.filter(function (r) {
17191
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
17192
+ })), t.push.apply(t, o);
17193
+ }
17194
+ return t;
17195
+ }
17196
+ function _objectSpread(e) {
17197
+ for (var r = 1; r < arguments.length; r++) {
17198
+ var t = null != arguments[r] ? arguments[r] : {};
17199
+ r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) {
17200
+ _defineProperty$1(e, r, t[r]);
17201
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) {
17202
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
16973
17203
  });
16974
17204
  }
16975
- return target;
17205
+ return e;
16976
17206
  }
16977
17207
  var lastCarouselId = 0;
16978
17208
  function generateCarouselId() {
@@ -17122,26 +17352,26 @@
17122
17352
  }
17123
17353
 
17124
17354
  var _excluded$a = ["classNames", "emptyComponent", "headerComponent", "itemComponent", "layout", "items", "status", "translations", "sendEvent"];
17125
- function ownKeys$2(object, enumerableOnly) {
17126
- var keys = Object.keys(object);
17355
+ function ownKeys$2(e, r) {
17356
+ var t = Object.keys(e);
17127
17357
  if (Object.getOwnPropertySymbols) {
17128
- var symbols = Object.getOwnPropertySymbols(object);
17129
- enumerableOnly && (symbols = symbols.filter(function (sym) {
17130
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
17131
- })), keys.push.apply(keys, symbols);
17132
- }
17133
- return keys;
17134
- }
17135
- function _objectSpread$1(target) {
17136
- for (var i = 1; i < arguments.length; i++) {
17137
- var source = null != arguments[i] ? arguments[i] : {};
17138
- i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) {
17139
- _defineProperty$1(target, key, source[key]);
17140
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) {
17141
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
17358
+ var o = Object.getOwnPropertySymbols(e);
17359
+ r && (o = o.filter(function (r) {
17360
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
17361
+ })), t.push.apply(t, o);
17362
+ }
17363
+ return t;
17364
+ }
17365
+ function _objectSpread$1(e) {
17366
+ for (var r = 1; r < arguments.length; r++) {
17367
+ var t = null != arguments[r] ? arguments[r] : {};
17368
+ r % 2 ? ownKeys$2(Object(t), !0).forEach(function (r) {
17369
+ _defineProperty$1(e, r, t[r]);
17370
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) {
17371
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
17142
17372
  });
17143
17373
  }
17144
- return target;
17374
+ return e;
17145
17375
  }
17146
17376
  function createFrequentlyBoughtTogetherComponent(_ref) {
17147
17377
  var createElement = _ref.createElement,
@@ -17335,26 +17565,26 @@
17335
17565
  }
17336
17566
 
17337
17567
  var _excluded$d = ["classNames", "emptyComponent", "headerComponent", "itemComponent", "layout", "items", "status", "translations", "sendEvent"];
17338
- function ownKeys$3(object, enumerableOnly) {
17339
- var keys = Object.keys(object);
17568
+ function ownKeys$3(e, r) {
17569
+ var t = Object.keys(e);
17340
17570
  if (Object.getOwnPropertySymbols) {
17341
- var symbols = Object.getOwnPropertySymbols(object);
17342
- enumerableOnly && (symbols = symbols.filter(function (sym) {
17343
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
17344
- })), keys.push.apply(keys, symbols);
17345
- }
17346
- return keys;
17347
- }
17348
- function _objectSpread$2(target) {
17349
- for (var i = 1; i < arguments.length; i++) {
17350
- var source = null != arguments[i] ? arguments[i] : {};
17351
- i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) {
17352
- _defineProperty$1(target, key, source[key]);
17353
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) {
17354
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
17571
+ var o = Object.getOwnPropertySymbols(e);
17572
+ r && (o = o.filter(function (r) {
17573
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
17574
+ })), t.push.apply(t, o);
17575
+ }
17576
+ return t;
17577
+ }
17578
+ function _objectSpread$2(e) {
17579
+ for (var r = 1; r < arguments.length; r++) {
17580
+ var t = null != arguments[r] ? arguments[r] : {};
17581
+ r % 2 ? ownKeys$3(Object(t), !0).forEach(function (r) {
17582
+ _defineProperty$1(e, r, t[r]);
17583
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) {
17584
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
17355
17585
  });
17356
17586
  }
17357
- return target;
17587
+ return e;
17358
17588
  }
17359
17589
  function createLookingSimilarComponent(_ref) {
17360
17590
  var createElement = _ref.createElement,
@@ -17420,26 +17650,26 @@
17420
17650
  }
17421
17651
 
17422
17652
  var _excluded$e = ["classNames", "emptyComponent", "headerComponent", "itemComponent", "layout", "items", "status", "translations", "sendEvent"];
17423
- function ownKeys$4(object, enumerableOnly) {
17424
- var keys = Object.keys(object);
17653
+ function ownKeys$4(e, r) {
17654
+ var t = Object.keys(e);
17425
17655
  if (Object.getOwnPropertySymbols) {
17426
- var symbols = Object.getOwnPropertySymbols(object);
17427
- enumerableOnly && (symbols = symbols.filter(function (sym) {
17428
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
17429
- })), keys.push.apply(keys, symbols);
17430
- }
17431
- return keys;
17432
- }
17433
- function _objectSpread$3(target) {
17434
- for (var i = 1; i < arguments.length; i++) {
17435
- var source = null != arguments[i] ? arguments[i] : {};
17436
- i % 2 ? ownKeys$4(Object(source), !0).forEach(function (key) {
17437
- _defineProperty$1(target, key, source[key]);
17438
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$4(Object(source)).forEach(function (key) {
17439
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
17656
+ var o = Object.getOwnPropertySymbols(e);
17657
+ r && (o = o.filter(function (r) {
17658
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
17659
+ })), t.push.apply(t, o);
17660
+ }
17661
+ return t;
17662
+ }
17663
+ function _objectSpread$3(e) {
17664
+ for (var r = 1; r < arguments.length; r++) {
17665
+ var t = null != arguments[r] ? arguments[r] : {};
17666
+ r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) {
17667
+ _defineProperty$1(e, r, t[r]);
17668
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) {
17669
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
17440
17670
  });
17441
17671
  }
17442
- return target;
17672
+ return e;
17443
17673
  }
17444
17674
  function createRelatedProductsComponent(_ref) {
17445
17675
  var createElement = _ref.createElement,
@@ -17505,26 +17735,26 @@
17505
17735
  }
17506
17736
 
17507
17737
  var _excluded$f = ["classNames", "emptyComponent", "headerComponent", "itemComponent", "layout", "items", "status", "translations", "sendEvent"];
17508
- function ownKeys$5(object, enumerableOnly) {
17509
- var keys = Object.keys(object);
17738
+ function ownKeys$5(e, r) {
17739
+ var t = Object.keys(e);
17510
17740
  if (Object.getOwnPropertySymbols) {
17511
- var symbols = Object.getOwnPropertySymbols(object);
17512
- enumerableOnly && (symbols = symbols.filter(function (sym) {
17513
- return Object.getOwnPropertyDescriptor(object, sym).enumerable;
17514
- })), keys.push.apply(keys, symbols);
17515
- }
17516
- return keys;
17517
- }
17518
- function _objectSpread$4(target) {
17519
- for (var i = 1; i < arguments.length; i++) {
17520
- var source = null != arguments[i] ? arguments[i] : {};
17521
- i % 2 ? ownKeys$5(Object(source), !0).forEach(function (key) {
17522
- _defineProperty$1(target, key, source[key]);
17523
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$5(Object(source)).forEach(function (key) {
17524
- Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
17741
+ var o = Object.getOwnPropertySymbols(e);
17742
+ r && (o = o.filter(function (r) {
17743
+ return Object.getOwnPropertyDescriptor(e, r).enumerable;
17744
+ })), t.push.apply(t, o);
17745
+ }
17746
+ return t;
17747
+ }
17748
+ function _objectSpread$4(e) {
17749
+ for (var r = 1; r < arguments.length; r++) {
17750
+ var t = null != arguments[r] ? arguments[r] : {};
17751
+ r % 2 ? ownKeys$5(Object(t), !0).forEach(function (r) {
17752
+ _defineProperty$1(e, r, t[r]);
17753
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) {
17754
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
17525
17755
  });
17526
17756
  }
17527
- return target;
17757
+ return e;
17528
17758
  }
17529
17759
  function createTrendingItemsComponent(_ref) {
17530
17760
  var createElement = _ref.createElement,