instantsearch.js 4.76.0 → 4.77.1

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 (42) hide show
  1. package/cjs/components/RefinementList/RefinementList.js +2 -2
  2. package/cjs/connectors/frequently-bought-together/connectFrequentlyBoughtTogether.js +20 -4
  3. package/cjs/connectors/looking-similar/connectLookingSimilar.js +23 -6
  4. package/cjs/connectors/related-products/connectRelatedProducts.js +23 -6
  5. package/cjs/connectors/trending-items/connectTrendingItems.js +23 -6
  6. package/cjs/lib/utils/getAppIdAndApiKey.js +3 -3
  7. package/cjs/lib/version.js +1 -1
  8. package/cjs/templates/carousel/carousel.js +4 -1
  9. package/cjs/widgets/frequently-bought-together/frequently-bought-together.js +17 -6
  10. package/cjs/widgets/looking-similar/looking-similar.js +16 -5
  11. package/cjs/widgets/related-products/related-products.js +17 -6
  12. package/cjs/widgets/trending-items/trending-items.js +17 -6
  13. package/dist/instantsearch.development.d.ts +39 -13
  14. package/dist/instantsearch.development.js +211 -64
  15. package/dist/instantsearch.development.js.map +1 -1
  16. package/dist/instantsearch.production.d.ts +39 -13
  17. package/dist/instantsearch.production.min.d.ts +39 -13
  18. package/dist/instantsearch.production.min.js +2 -2
  19. package/dist/instantsearch.production.min.js.map +1 -1
  20. package/es/components/RefinementList/RefinementList.js +2 -2
  21. package/es/connectors/frequently-bought-together/connectFrequentlyBoughtTogether.d.ts +7 -1
  22. package/es/connectors/frequently-bought-together/connectFrequentlyBoughtTogether.js +21 -5
  23. package/es/connectors/looking-similar/connectLookingSimilar.d.ts +7 -1
  24. package/es/connectors/looking-similar/connectLookingSimilar.js +24 -7
  25. package/es/connectors/related-products/connectRelatedProducts.d.ts +7 -1
  26. package/es/connectors/related-products/connectRelatedProducts.js +24 -7
  27. package/es/connectors/trending-items/connectTrendingItems.d.ts +7 -1
  28. package/es/connectors/trending-items/connectTrendingItems.js +24 -7
  29. package/es/lib/utils/getAppIdAndApiKey.js +3 -3
  30. package/es/lib/version.d.ts +1 -1
  31. package/es/lib/version.js +1 -1
  32. package/es/templates/carousel/carousel.d.ts +3 -1
  33. package/es/templates/carousel/carousel.js +4 -1
  34. package/es/widgets/frequently-bought-together/frequently-bought-together.d.ts +4 -3
  35. package/es/widgets/frequently-bought-together/frequently-bought-together.js +17 -6
  36. package/es/widgets/looking-similar/looking-similar.d.ts +4 -3
  37. package/es/widgets/looking-similar/looking-similar.js +16 -5
  38. package/es/widgets/related-products/related-products.d.ts +4 -3
  39. package/es/widgets/related-products/related-products.js +17 -6
  40. package/es/widgets/trending-items/trending-items.d.ts +4 -3
  41. package/es/widgets/trending-items/trending-items.js +17 -6
  42. package/package.json +7 -7
@@ -1,4 +1,4 @@
1
- /*! InstantSearch.js 4.76.0 | © Algolia, Inc. and contributors; MIT License | https://github.com/algolia/instantsearch */
1
+ /*! InstantSearch.js 4.77.1 | © 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) :
@@ -1182,9 +1182,9 @@
1182
1182
  var queryParameters = transporter.queryParameters || transporter.baseQueryParameters;
1183
1183
  var APP_ID = 'x-algolia-application-id';
1184
1184
  var API_KEY = 'x-algolia-api-key';
1185
- var _appId = headers[APP_ID] || queryParameters[APP_ID];
1186
- var _apiKey = headers[API_KEY] || queryParameters[API_KEY];
1187
- 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];
1188
1188
  } else {
1189
1189
  // searchClient v3
1190
1190
  return [searchClient.applicationID, searchClient.apiKey];
@@ -5063,6 +5063,34 @@
5063
5063
  );
5064
5064
  };
5065
5065
 
5066
+ // NOTE: this behaves like lodash/defaults, but doesn't mutate the target
5067
+ // it also preserve keys order and keep the highest numeric value
5068
+ function mergeNumericMax() {
5069
+ var sources = Array.prototype.slice.call(arguments);
5070
+
5071
+ return sources.reduceRight(function (acc, source) {
5072
+ Object.keys(Object(source)).forEach(function (key) {
5073
+ var accValue = typeof acc[key] === 'number' ? acc[key] : 0;
5074
+ var sourceValue = source[key];
5075
+
5076
+ if (sourceValue === undefined) {
5077
+ return;
5078
+ }
5079
+
5080
+ if (sourceValue >= accValue) {
5081
+ if (acc[key] !== undefined) {
5082
+ // remove if already added, so that we can add it in correct order
5083
+ delete acc[key];
5084
+ }
5085
+ acc[key] = sourceValue;
5086
+ }
5087
+ });
5088
+ return acc;
5089
+ }, {});
5090
+ }
5091
+
5092
+ var mergeNumericMax_1 = mergeNumericMax;
5093
+
5066
5094
  function compareAscending(value, other) {
5067
5095
  if (value !== other) {
5068
5096
  var valIsDefined = value !== undefined;
@@ -5850,7 +5878,7 @@
5850
5878
 
5851
5879
  self.hierarchicalFacets[position][attributeIndex].data =
5852
5880
  self.persistHierarchicalRootCount
5853
- ? defaultsPure(
5881
+ ? mergeNumericMax_1(
5854
5882
  self.hierarchicalFacets[position][attributeIndex].data,
5855
5883
  facetResults
5856
5884
  )
@@ -5866,7 +5894,7 @@
5866
5894
 
5867
5895
  self.disjunctiveFacets[position] = {
5868
5896
  name: dfacet,
5869
- data: defaultsPure(dataFromMainRequest, facetResults),
5897
+ data: mergeNumericMax_1(dataFromMainRequest, facetResults),
5870
5898
  exhaustive: result.exhaustiveFacetsCount,
5871
5899
  };
5872
5900
  assignFacetStats(
@@ -6555,7 +6583,7 @@
6555
6583
 
6556
6584
  var sortAndMergeRecommendations_1 = sortAndMergeRecommendations;
6557
6585
 
6558
- var version = '3.23.0';
6586
+ var version = '3.23.1';
6559
6587
 
6560
6588
  var escapeFacetValue$4 = escapeFacetValue_1.escapeFacetValue;
6561
6589
 
@@ -11565,6 +11593,7 @@
11565
11593
  if (!objectIDs || objectIDs.length === 0) {
11566
11594
  throw new Error(withUsage$f('The `objectIDs` option is required.'));
11567
11595
  }
11596
+ var sendEvent;
11568
11597
  return {
11569
11598
  dependsOn: 'recommend',
11570
11599
  $$type: 'ais.relatedProducts',
@@ -11583,21 +11612,37 @@
11583
11612
  return renderState;
11584
11613
  },
11585
11614
  getWidgetRenderState: function getWidgetRenderState(_ref2) {
11586
- var results = _ref2.results;
11615
+ var results = _ref2.results,
11616
+ helper = _ref2.helper,
11617
+ instantSearchInstance = _ref2.instantSearchInstance;
11618
+ if (!sendEvent) {
11619
+ sendEvent = createSendEventForHits({
11620
+ instantSearchInstance: instantSearchInstance,
11621
+ getIndex: function getIndex() {
11622
+ return helper.getIndex();
11623
+ },
11624
+ widgetType: this.$$type
11625
+ });
11626
+ }
11587
11627
  if (results === null || results === undefined) {
11588
11628
  return {
11589
11629
  items: [],
11590
- widgetParams: widgetParams
11630
+ widgetParams: widgetParams,
11631
+ sendEvent: sendEvent
11591
11632
  };
11592
11633
  }
11593
11634
  if (escapeHTML && results.hits.length > 0) {
11594
11635
  results.hits = escapeHits(results.hits);
11595
11636
  }
11637
+ var itemsWithAbsolutePosition = addAbsolutePosition(results.hits, 0, 1);
11638
+ var itemsWithAbsolutePositionAndQueryID = addQueryID(itemsWithAbsolutePosition, results.queryID);
11639
+ var transformedItems = transformItems(itemsWithAbsolutePositionAndQueryID, {
11640
+ results: results
11641
+ });
11596
11642
  return {
11597
- items: transformItems(results.hits, {
11598
- results: results
11599
- }),
11600
- widgetParams: widgetParams
11643
+ items: transformedItems,
11644
+ widgetParams: widgetParams,
11645
+ sendEvent: sendEvent
11601
11646
  };
11602
11647
  },
11603
11648
  dispose: function dispose(_ref3) {
@@ -12474,6 +12519,7 @@
12474
12519
  if (facetName && !facetValue || !facetName && facetValue) {
12475
12520
  throw new Error(withUsage$l("When you provide facetName (received type ".concat(getObjectType(facetName), "), you must also provide facetValue (received type ").concat(getObjectType(facetValue), ").")));
12476
12521
  }
12522
+ var sendEvent;
12477
12523
  return {
12478
12524
  dependsOn: 'recommend',
12479
12525
  $$type: 'ais.trendingItems',
@@ -12492,21 +12538,37 @@
12492
12538
  return renderState;
12493
12539
  },
12494
12540
  getWidgetRenderState: function getWidgetRenderState(_ref2) {
12495
- var results = _ref2.results;
12541
+ var results = _ref2.results,
12542
+ helper = _ref2.helper,
12543
+ instantSearchInstance = _ref2.instantSearchInstance;
12544
+ if (!sendEvent) {
12545
+ sendEvent = createSendEventForHits({
12546
+ instantSearchInstance: instantSearchInstance,
12547
+ getIndex: function getIndex() {
12548
+ return helper.getIndex();
12549
+ },
12550
+ widgetType: this.$$type
12551
+ });
12552
+ }
12496
12553
  if (results === null || results === undefined) {
12497
12554
  return {
12498
12555
  items: [],
12499
- widgetParams: widgetParams
12556
+ widgetParams: widgetParams,
12557
+ sendEvent: sendEvent
12500
12558
  };
12501
12559
  }
12502
12560
  if (escapeHTML && results.hits.length > 0) {
12503
12561
  results.hits = escapeHits(results.hits);
12504
12562
  }
12563
+ var itemsWithAbsolutePosition = addAbsolutePosition(results.hits, 0, 1);
12564
+ var itemsWithAbsolutePositionAndQueryID = addQueryID(itemsWithAbsolutePosition, results.queryID);
12565
+ var transformedItems = transformItems(itemsWithAbsolutePositionAndQueryID, {
12566
+ results: results
12567
+ });
12505
12568
  return {
12506
- items: transformItems(results.hits, {
12507
- results: results
12508
- }),
12509
- widgetParams: widgetParams
12569
+ items: transformedItems,
12570
+ widgetParams: widgetParams,
12571
+ sendEvent: sendEvent
12510
12572
  };
12511
12573
  },
12512
12574
  dispose: function dispose(_ref3) {
@@ -13559,6 +13621,7 @@
13559
13621
  if (!objectIDs || objectIDs.length === 0) {
13560
13622
  throw new Error(withUsage$s('The `objectIDs` option is required.'));
13561
13623
  }
13624
+ var sendEvent;
13562
13625
  return {
13563
13626
  dependsOn: 'recommend',
13564
13627
  $$type: 'ais.frequentlyBoughtTogether',
@@ -13577,22 +13640,37 @@
13577
13640
  return renderState;
13578
13641
  },
13579
13642
  getWidgetRenderState: function getWidgetRenderState(_ref2) {
13580
- var results = _ref2.results;
13643
+ var results = _ref2.results,
13644
+ helper = _ref2.helper,
13645
+ instantSearchInstance = _ref2.instantSearchInstance;
13646
+ if (!sendEvent) {
13647
+ sendEvent = createSendEventForHits({
13648
+ instantSearchInstance: instantSearchInstance,
13649
+ getIndex: function getIndex() {
13650
+ return helper.getIndex();
13651
+ },
13652
+ widgetType: this.$$type
13653
+ });
13654
+ }
13581
13655
  if (results === null || results === undefined) {
13582
13656
  return {
13583
13657
  items: [],
13584
- widgetParams: widgetParams
13658
+ widgetParams: widgetParams,
13659
+ sendEvent: sendEvent
13585
13660
  };
13586
13661
  }
13587
13662
  if (escapeHTML && results.hits.length > 0) {
13588
13663
  results.hits = escapeHits(results.hits);
13589
13664
  }
13590
- var transformedItems = transformItems(results.hits, {
13665
+ var itemsWithAbsolutePosition = addAbsolutePosition(results.hits, 0, 1);
13666
+ var itemsWithAbsolutePositionAndQueryID = addQueryID(itemsWithAbsolutePosition, results.queryID);
13667
+ var transformedItems = transformItems(itemsWithAbsolutePositionAndQueryID, {
13591
13668
  results: results
13592
13669
  });
13593
13670
  return {
13594
13671
  items: transformedItems,
13595
- widgetParams: widgetParams
13672
+ widgetParams: widgetParams,
13673
+ sendEvent: sendEvent
13596
13674
  };
13597
13675
  },
13598
13676
  dispose: function dispose(_ref3) {
@@ -13639,6 +13717,7 @@
13639
13717
  if (!objectIDs || objectIDs.length === 0) {
13640
13718
  throw new Error(withUsage$t('The `objectIDs` option is required.'));
13641
13719
  }
13720
+ var sendEvent;
13642
13721
  return {
13643
13722
  dependsOn: 'recommend',
13644
13723
  $$type: 'ais.lookingSimilar',
@@ -13657,21 +13736,37 @@
13657
13736
  return renderState;
13658
13737
  },
13659
13738
  getWidgetRenderState: function getWidgetRenderState(_ref2) {
13660
- var results = _ref2.results;
13739
+ var results = _ref2.results,
13740
+ helper = _ref2.helper,
13741
+ instantSearchInstance = _ref2.instantSearchInstance;
13742
+ if (!sendEvent) {
13743
+ sendEvent = createSendEventForHits({
13744
+ instantSearchInstance: instantSearchInstance,
13745
+ getIndex: function getIndex() {
13746
+ return helper.getIndex();
13747
+ },
13748
+ widgetType: this.$$type
13749
+ });
13750
+ }
13661
13751
  if (results === null || results === undefined) {
13662
13752
  return {
13663
13753
  items: [],
13664
- widgetParams: widgetParams
13754
+ widgetParams: widgetParams,
13755
+ sendEvent: sendEvent
13665
13756
  };
13666
13757
  }
13667
13758
  if (escapeHTML && results.hits.length > 0) {
13668
13759
  results.hits = escapeHits(results.hits);
13669
13760
  }
13761
+ var itemsWithAbsolutePosition = addAbsolutePosition(results.hits, 0, 1);
13762
+ var itemsWithAbsolutePositionAndQueryID = addQueryID(itemsWithAbsolutePosition, results.queryID);
13763
+ var transformedItems = transformItems(itemsWithAbsolutePositionAndQueryID, {
13764
+ results: results
13765
+ });
13670
13766
  return {
13671
- items: transformItems(results.hits, {
13672
- results: results
13673
- }),
13674
- widgetParams: widgetParams
13767
+ items: transformedItems,
13768
+ widgetParams: widgetParams,
13769
+ sendEvent: sendEvent
13675
13770
  };
13676
13771
  },
13677
13772
  dispose: function dispose(_ref3) {
@@ -16313,7 +16408,7 @@
16313
16408
  };
16314
16409
  }
16315
16410
 
16316
- var version$1 = '4.76.0';
16411
+ var version$1 = '4.77.1';
16317
16412
 
16318
16413
  var withUsage$v = createDocumentationMessageGenerator({
16319
16414
  name: 'instantsearch'
@@ -17173,16 +17268,21 @@
17173
17268
  return createElement("li", {
17174
17269
  key: item.objectID,
17175
17270
  className: classNames.item,
17176
- onClick: sendEvent,
17177
- onAuxClick: sendEvent
17271
+ onClick: function onClick() {
17272
+ sendEvent('click:internal', item, 'Item Clicked');
17273
+ },
17274
+ onAuxClick: function onAuxClick() {
17275
+ sendEvent('click:internal', item, 'Item Clicked');
17276
+ }
17178
17277
  }, createElement(ItemComponent, {
17179
- item: item
17278
+ item: item,
17279
+ sendEvent: sendEvent
17180
17280
  }));
17181
17281
  })));
17182
17282
  };
17183
17283
  }
17184
17284
 
17185
- var _excluded$9 = ["listRef", "nextButtonRef", "previousButtonRef", "carouselIdRef", "classNames", "itemComponent", "previousIconComponent", "nextIconComponent", "items", "translations"];
17285
+ var _excluded$9 = ["listRef", "nextButtonRef", "previousButtonRef", "carouselIdRef", "classNames", "itemComponent", "previousIconComponent", "nextIconComponent", "items", "translations", "sendEvent"];
17186
17286
  function ownKeys$1(e, r) {
17187
17287
  var t = Object.keys(e);
17188
17288
  if (Object.getOwnPropertySymbols) {
@@ -17257,6 +17357,7 @@
17257
17357
  NextIconComponent = _userProps$nextIconCo === void 0 ? NextIconDefaultComponent : _userProps$nextIconCo,
17258
17358
  items = userProps.items,
17259
17359
  userTranslations = userProps.translations,
17360
+ sendEvent = userProps.sendEvent,
17260
17361
  props = _objectWithoutProperties$1(userProps, _excluded$9);
17261
17362
  var translations = _objectSpread({
17262
17363
  listLabel: 'Items',
@@ -17331,9 +17432,16 @@
17331
17432
  key: item.objectID,
17332
17433
  className: cx(cssClasses.item),
17333
17434
  "aria-roledescription": "slide",
17334
- "aria-label": "".concat(index + 1, " of ").concat(items.length)
17435
+ "aria-label": "".concat(index + 1, " of ").concat(items.length),
17436
+ onClick: function onClick() {
17437
+ sendEvent('click:internal', item, 'Item Clicked');
17438
+ },
17439
+ onAuxClick: function onAuxClick() {
17440
+ sendEvent('click:internal', item, 'Item Clicked');
17441
+ }
17335
17442
  }, createElement(ItemComponent, {
17336
- item: item
17443
+ item: item,
17444
+ sendEvent: sendEvent
17337
17445
  }));
17338
17446
  })), createElement("button", {
17339
17447
  ref: nextButtonRef,
@@ -17843,11 +17951,14 @@
17843
17951
  var items = _ref2.items,
17844
17952
  widgetTemplates = _ref2.templates,
17845
17953
  _ref2$cssClasses = _ref2.cssClasses,
17846
- widgetCssClasses = _ref2$cssClasses === void 0 ? {} : _ref2$cssClasses;
17954
+ widgetCssClasses = _ref2$cssClasses === void 0 ? {} : _ref2$cssClasses,
17955
+ _ref2$sendEvent = _ref2.sendEvent,
17956
+ sendEvent = _ref2$sendEvent === void 0 ? function () {} : _ref2$sendEvent;
17847
17957
  var previous = templates.previous,
17848
17958
  next = templates.next;
17849
17959
  return h(CarouselWithRefs, {
17850
17960
  items: items,
17961
+ sendEvent: sendEvent,
17851
17962
  itemComponent: widgetTemplates.item,
17852
17963
  previousIconComponent: previous ? function () {
17853
17964
  return previous({
@@ -20686,8 +20797,8 @@
20686
20797
  }, {
20687
20798
  key: "componentDidUpdate",
20688
20799
  value: function componentDidUpdate() {
20689
- var _this$listRef$current, _this$listRef$current2;
20690
- (_this$listRef$current = this.listRef.current) === null || _this$listRef$current === void 0 ? void 0 : (_this$listRef$current2 = _this$listRef$current.querySelector("input[value=\"".concat(this.lastRefinedValue, "\"]"))) === null || _this$listRef$current2 === void 0 ? void 0 : _this$listRef$current2.focus();
20800
+ var _this$listRef$current, _this$listRef$current2, _this$lastRefinedValu;
20801
+ (_this$listRef$current = this.listRef.current) === null || _this$listRef$current === void 0 ? void 0 : (_this$listRef$current2 = _this$listRef$current.querySelector("input[value=\"".concat((_this$lastRefinedValu = this.lastRefinedValue) === null || _this$lastRefinedValu === void 0 ? void 0 : _this$lastRefinedValu.replace('"', '\\"'), "\"]"))) === null || _this$listRef$current2 === void 0 ? void 0 : _this$listRef$current2.focus();
20691
20802
  this.lastRefinedValue = undefined;
20692
20803
  }
20693
20804
  }, {
@@ -22560,6 +22671,7 @@
22560
22671
  });
22561
22672
  };
22562
22673
 
22674
+ var _excluded$t = ["item", "sendEvent"];
22563
22675
  var withUsage$P = createDocumentationMessageGenerator({
22564
22676
  name: 'related-products'
22565
22677
  });
@@ -22575,7 +22687,8 @@
22575
22687
  return function renderer(_ref2, isFirstRendering) {
22576
22688
  var items = _ref2.items,
22577
22689
  results = _ref2.results,
22578
- instantSearchInstance = _ref2.instantSearchInstance;
22690
+ instantSearchInstance = _ref2.instantSearchInstance,
22691
+ sendEvent = _ref2.sendEvent;
22579
22692
  if (isFirstRendering) {
22580
22693
  renderState.templateProps = prepareTemplateProps({
22581
22694
  defaultTemplates: {},
@@ -22595,11 +22708,15 @@
22595
22708
  }));
22596
22709
  } : undefined;
22597
22710
  var itemComponent = templates.item ? function (_ref3) {
22598
- var item = _ref3.item;
22711
+ var item = _ref3.item,
22712
+ _sendEvent = _ref3.sendEvent,
22713
+ rootProps = _objectWithoutProperties(_ref3, _excluded$t);
22599
22714
  return h(Template, _extends({}, renderState.templateProps, {
22600
22715
  templateKey: "item",
22601
22716
  rootTagName: "fragment",
22602
- data: item
22717
+ data: item,
22718
+ sendEvent: _sendEvent,
22719
+ rootProps: _objectSpread2({}, rootProps)
22603
22720
  }));
22604
22721
  } : undefined;
22605
22722
  var emptyComponent = templates.empty ? function () {
@@ -22614,6 +22731,7 @@
22614
22731
  templateKey: "layout",
22615
22732
  rootTagName: "fragment",
22616
22733
  data: {
22734
+ sendEvent: sendEvent,
22617
22735
  items: data.items,
22618
22736
  templates: {
22619
22737
  item: templates.item ? function (_ref4) {
@@ -22621,7 +22739,8 @@
22621
22739
  return h(Template, _extends({}, renderState.templateProps, {
22622
22740
  templateKey: "item",
22623
22741
  rootTagName: "fragment",
22624
- data: item
22742
+ data: item,
22743
+ sendEvent: sendEvent
22625
22744
  }));
22626
22745
  } : undefined
22627
22746
  },
@@ -22629,12 +22748,13 @@
22629
22748
  list: data.classNames.list,
22630
22749
  item: data.classNames.item
22631
22750
  }
22632
- }
22751
+ },
22752
+ sendEvent: sendEvent
22633
22753
  }));
22634
22754
  } : undefined;
22635
22755
  P(h(RelatedProducts, {
22636
22756
  items: items,
22637
- sendEvent: function sendEvent() {},
22757
+ sendEvent: sendEvent,
22638
22758
  classNames: cssClasses,
22639
22759
  headerComponent: headerComponent,
22640
22760
  itemComponent: itemComponent,
@@ -24472,13 +24592,13 @@
24472
24592
  });
24473
24593
  };
24474
24594
 
24475
- var _excluded$t = ["nbHits", "nbSortedHits", "cssClasses", "templateProps"];
24595
+ var _excluded$u = ["nbHits", "nbSortedHits", "cssClasses", "templateProps"];
24476
24596
  var Stats = function Stats(_ref) {
24477
24597
  var nbHits = _ref.nbHits,
24478
24598
  nbSortedHits = _ref.nbSortedHits,
24479
24599
  cssClasses = _ref.cssClasses,
24480
24600
  templateProps = _ref.templateProps,
24481
- rest = _objectWithoutProperties(_ref, _excluded$t);
24601
+ rest = _objectWithoutProperties(_ref, _excluded$u);
24482
24602
  return h("div", {
24483
24603
  className: cx(cssClasses.root)
24484
24604
  }, h(Template, _extends({}, templateProps, {
@@ -24740,6 +24860,7 @@
24740
24860
  });
24741
24861
  };
24742
24862
 
24863
+ var _excluded$v = ["item", "sendEvent"];
24743
24864
  var withUsage$Z = createDocumentationMessageGenerator({
24744
24865
  name: 'trending-items'
24745
24866
  });
@@ -24755,7 +24876,8 @@
24755
24876
  return function renderer(_ref2, isFirstRendering) {
24756
24877
  var items = _ref2.items,
24757
24878
  results = _ref2.results,
24758
- instantSearchInstance = _ref2.instantSearchInstance;
24879
+ instantSearchInstance = _ref2.instantSearchInstance,
24880
+ sendEvent = _ref2.sendEvent;
24759
24881
  if (isFirstRendering) {
24760
24882
  renderState.templateProps = prepareTemplateProps({
24761
24883
  defaultTemplates: {},
@@ -24775,11 +24897,15 @@
24775
24897
  }));
24776
24898
  } : undefined;
24777
24899
  var itemComponent = templates.item ? function (_ref3) {
24778
- var item = _ref3.item;
24900
+ var item = _ref3.item,
24901
+ _sendEvent = _ref3.sendEvent,
24902
+ rootProps = _objectWithoutProperties(_ref3, _excluded$v);
24779
24903
  return h(Template, _extends({}, renderState.templateProps, {
24780
24904
  templateKey: "item",
24781
24905
  rootTagName: "fragment",
24782
- data: item
24906
+ data: item,
24907
+ sendEvent: _sendEvent,
24908
+ rootProps: _objectSpread2({}, rootProps)
24783
24909
  }));
24784
24910
  } : undefined;
24785
24911
  var emptyComponent = templates.empty ? function () {
@@ -24794,6 +24920,7 @@
24794
24920
  templateKey: "layout",
24795
24921
  rootTagName: "fragment",
24796
24922
  data: {
24923
+ sendEvent: sendEvent,
24797
24924
  items: data.items,
24798
24925
  templates: {
24799
24926
  item: templates.item ? function (_ref4) {
@@ -24801,7 +24928,8 @@
24801
24928
  return h(Template, _extends({}, renderState.templateProps, {
24802
24929
  templateKey: "item",
24803
24930
  rootTagName: "fragment",
24804
- data: item
24931
+ data: item,
24932
+ sendEvent: sendEvent
24805
24933
  }));
24806
24934
  } : undefined
24807
24935
  },
@@ -24809,12 +24937,13 @@
24809
24937
  list: data.classNames.list,
24810
24938
  item: data.classNames.item
24811
24939
  }
24812
- }
24940
+ },
24941
+ sendEvent: sendEvent
24813
24942
  }));
24814
24943
  } : undefined;
24815
24944
  P(h(TrendingItems, {
24816
24945
  items: items,
24817
- sendEvent: function sendEvent() {},
24946
+ sendEvent: sendEvent,
24818
24947
  classNames: cssClasses,
24819
24948
  headerComponent: headerComponent,
24820
24949
  itemComponent: itemComponent,
@@ -25072,6 +25201,7 @@
25072
25201
  });
25073
25202
  };
25074
25203
 
25204
+ var _excluded$w = ["item", "sendEvent"];
25075
25205
  var withUsage$$ = createDocumentationMessageGenerator({
25076
25206
  name: 'frequently-bought-together'
25077
25207
  });
@@ -25087,7 +25217,8 @@
25087
25217
  return function (_ref2, isFirstRendering) {
25088
25218
  var items = _ref2.items,
25089
25219
  results = _ref2.results,
25090
- instantSearchInstance = _ref2.instantSearchInstance;
25220
+ instantSearchInstance = _ref2.instantSearchInstance,
25221
+ sendEvent = _ref2.sendEvent;
25091
25222
  if (isFirstRendering) {
25092
25223
  renderState.templateProps = prepareTemplateProps({
25093
25224
  defaultTemplates: {},
@@ -25107,11 +25238,15 @@
25107
25238
  }));
25108
25239
  } : undefined;
25109
25240
  var itemComponent = templates.item ? function (_ref3) {
25110
- var item = _ref3.item;
25241
+ var item = _ref3.item,
25242
+ _sendEvent = _ref3.sendEvent,
25243
+ rootProps = _objectWithoutProperties(_ref3, _excluded$w);
25111
25244
  return h(Template, _extends({}, renderState.templateProps, {
25112
25245
  templateKey: "item",
25113
25246
  rootTagName: "fragment",
25114
- data: item
25247
+ data: item,
25248
+ sendEvent: _sendEvent,
25249
+ rootProps: _objectSpread2({}, rootProps)
25115
25250
  }));
25116
25251
  } : undefined;
25117
25252
  var emptyComponent = templates.empty ? function () {
@@ -25126,6 +25261,7 @@
25126
25261
  templateKey: "layout",
25127
25262
  rootTagName: "fragment",
25128
25263
  data: {
25264
+ sendEvent: sendEvent,
25129
25265
  items: data.items,
25130
25266
  templates: {
25131
25267
  item: templates.item ? function (_ref4) {
@@ -25133,7 +25269,8 @@
25133
25269
  return h(Template, _extends({}, renderState.templateProps, {
25134
25270
  templateKey: "item",
25135
25271
  rootTagName: "fragment",
25136
- data: item
25272
+ data: item,
25273
+ sendEvent: sendEvent
25137
25274
  }));
25138
25275
  } : undefined
25139
25276
  },
@@ -25141,14 +25278,15 @@
25141
25278
  list: data.classNames.list,
25142
25279
  item: data.classNames.item
25143
25280
  }
25144
- }
25281
+ },
25282
+ sendEvent: sendEvent
25145
25283
  }));
25146
25284
  } : undefined;
25147
25285
  P(h(FrequentlyBoughtTogether, {
25148
25286
  items: items,
25149
25287
  headerComponent: headerComponent,
25150
25288
  itemComponent: itemComponent,
25151
- sendEvent: function sendEvent() {},
25289
+ sendEvent: sendEvent,
25152
25290
  classNames: cssClasses,
25153
25291
  emptyComponent: emptyComponent,
25154
25292
  layout: layoutComponent,
@@ -25194,6 +25332,7 @@
25194
25332
  });
25195
25333
  });
25196
25334
 
25335
+ var _excluded$x = ["item", "sendEvent"];
25197
25336
  var withUsage$10 = createDocumentationMessageGenerator({
25198
25337
  name: 'looking-similar'
25199
25338
  });
@@ -25209,7 +25348,8 @@
25209
25348
  return function (_ref2, isFirstRendering) {
25210
25349
  var items = _ref2.items,
25211
25350
  results = _ref2.results,
25212
- instantSearchInstance = _ref2.instantSearchInstance;
25351
+ instantSearchInstance = _ref2.instantSearchInstance,
25352
+ sendEvent = _ref2.sendEvent;
25213
25353
  if (isFirstRendering) {
25214
25354
  renderState.templateProps = prepareTemplateProps({
25215
25355
  defaultTemplates: {},
@@ -25229,11 +25369,15 @@
25229
25369
  }));
25230
25370
  } : undefined;
25231
25371
  var itemComponent = templates.item ? function (_ref3) {
25232
- var item = _ref3.item;
25372
+ var item = _ref3.item,
25373
+ _sendEvent = _ref3.sendEvent,
25374
+ rootProps = _objectWithoutProperties(_ref3, _excluded$x);
25233
25375
  return h(Template, _extends({}, renderState.templateProps, {
25234
25376
  templateKey: "item",
25235
25377
  rootTagName: "fragment",
25236
- data: item
25378
+ data: item,
25379
+ sendEvent: _sendEvent,
25380
+ rootProps: _objectSpread2({}, rootProps)
25237
25381
  }));
25238
25382
  } : undefined;
25239
25383
  var emptyComponent = templates.empty ? function () {
@@ -25248,6 +25392,7 @@
25248
25392
  templateKey: "layout",
25249
25393
  rootTagName: "fragment",
25250
25394
  data: {
25395
+ sendEvent: sendEvent,
25251
25396
  items: data.items,
25252
25397
  templates: {
25253
25398
  item: templates.item ? function (_ref4) {
@@ -25255,7 +25400,8 @@
25255
25400
  return h(Template, _extends({}, renderState.templateProps, {
25256
25401
  templateKey: "item",
25257
25402
  rootTagName: "fragment",
25258
- data: item
25403
+ data: item,
25404
+ sendEvent: sendEvent
25259
25405
  }));
25260
25406
  } : undefined
25261
25407
  },
@@ -25263,7 +25409,8 @@
25263
25409
  list: data.classNames.list,
25264
25410
  item: data.classNames.item
25265
25411
  }
25266
- }
25412
+ },
25413
+ sendEvent: sendEvent
25267
25414
  }));
25268
25415
  } : undefined;
25269
25416
  P(h(LookingSimilar, {