react-instantsearch-core 7.13.8 → 7.13.10

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.
@@ -131,7 +131,6 @@ function useInstantSearchApi(props) {
131
131
  // manually inject the routing middleware in this library, and not rely
132
132
  // on the provided `routing` prop.
133
133
  }
134
-
135
134
  var cleanupTimerRef = (0, _react.useRef)(null);
136
135
  var store = (0, _shim.useSyncExternalStore)((0, _react.useCallback)(function () {
137
136
  var search = searchRef.current;
@@ -66,7 +66,7 @@ function execute(_ref3) {
66
66
  searchRef = _ref3.searchRef,
67
67
  skipRecommend = _ref3.skipRecommend;
68
68
  return Promise.resolve().then(function () {
69
- renderToString( /*#__PURE__*/_react.default.createElement(_InstantSearchServerContext.InstantSearchServerContext.Provider, {
69
+ renderToString(/*#__PURE__*/_react.default.createElement(_InstantSearchServerContext.InstantSearchServerContext.Provider, {
70
70
  value: {
71
71
  notifyServer: notifyServer
72
72
  }
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- var _default = '7.13.8';
7
+ var _default = '7.13.10';
8
8
  exports.default = _default;
@@ -122,7 +122,6 @@ export function useInstantSearchApi(props) {
122
122
  // manually inject the routing middleware in this library, and not rely
123
123
  // on the provided `routing` prop.
124
124
  }
125
-
126
125
  var cleanupTimerRef = useRef(null);
127
126
  var store = useSyncExternalStore(useCallback(function () {
128
127
  var search = searchRef.current;
@@ -59,7 +59,7 @@ function execute(_ref3) {
59
59
  searchRef = _ref3.searchRef,
60
60
  skipRecommend = _ref3.skipRecommend;
61
61
  return Promise.resolve().then(function () {
62
- renderToString( /*#__PURE__*/React.createElement(InstantSearchServerContext.Provider, {
62
+ renderToString(/*#__PURE__*/React.createElement(InstantSearchServerContext.Provider, {
63
63
  value: {
64
64
  notifyServer: notifyServer
65
65
  }
@@ -1,2 +1,2 @@
1
- declare const _default: "7.13.8";
1
+ declare const _default: "7.13.10";
2
2
  export default _default;
@@ -1 +1 @@
1
- export default '7.13.8';
1
+ export default '7.13.10';
@@ -7,7 +7,7 @@
7
7
 
8
8
  var React__default = 'default' in React ? React['default'] : React;
9
9
 
10
- var version = '7.13.8';
10
+ var version = '7.13.10';
11
11
 
12
12
  function _iterableToArrayLimit(arr, i) {
13
13
  var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
@@ -1311,7 +1311,7 @@
1311
1311
 
1312
1312
  mod[attribute] = facetRefinement;
1313
1313
 
1314
- return defaultsPure({}, mod, refinementList);
1314
+ return defaultsPure(mod, refinementList);
1315
1315
  },
1316
1316
  /**
1317
1317
  * Removes refinement(s) for an attribute:
@@ -2645,7 +2645,6 @@
2645
2645
 
2646
2646
  return this.setQueryParameters({
2647
2647
  hierarchicalFacetsRefinements: defaultsPure(
2648
- {},
2649
2648
  mod,
2650
2649
  this.hierarchicalFacetsRefinements
2651
2650
  ),
@@ -2673,7 +2672,6 @@
2673
2672
  mod[facet] = [path];
2674
2673
  return this.setQueryParameters({
2675
2674
  hierarchicalFacetsRefinements: defaultsPure(
2676
- {},
2677
2675
  mod,
2678
2676
  this.hierarchicalFacetsRefinements
2679
2677
  ),
@@ -2694,7 +2692,6 @@
2694
2692
  mod[facet] = [];
2695
2693
  return this.setQueryParameters({
2696
2694
  hierarchicalFacetsRefinements: defaultsPure(
2697
- {},
2698
2695
  mod,
2699
2696
  this.hierarchicalFacetsRefinements
2700
2697
  ),
@@ -3692,12 +3689,9 @@
3692
3689
  });
3693
3690
 
3694
3691
  // Make every key of the result options reachable from the instance
3695
- var opts = merge_1(
3696
- {
3697
- persistHierarchicalRootCount: false,
3698
- },
3699
- options
3700
- );
3692
+ var opts = defaultsPure(options, {
3693
+ persistHierarchicalRootCount: false,
3694
+ });
3701
3695
  Object.keys(opts).forEach(function (key) {
3702
3696
  self[key] = opts[key];
3703
3697
  });
@@ -3964,11 +3958,16 @@
3964
3958
  return;
3965
3959
  }
3966
3960
 
3967
- self.hierarchicalFacets[position][attributeIndex].data = merge_1(
3968
- {},
3969
- self.hierarchicalFacets[position][attributeIndex].data,
3970
- facetResults
3971
- );
3961
+ self.hierarchicalFacets[position][attributeIndex].data =
3962
+ self.persistHierarchicalRootCount
3963
+ ? defaultsPure(
3964
+ self.hierarchicalFacets[position][attributeIndex].data,
3965
+ facetResults
3966
+ )
3967
+ : defaultsPure(
3968
+ facetResults,
3969
+ self.hierarchicalFacets[position][attributeIndex].data
3970
+ );
3972
3971
  } else {
3973
3972
  position = disjunctiveFacetsIndices[dfacet];
3974
3973
 
@@ -3977,7 +3976,7 @@
3977
3976
 
3978
3977
  self.disjunctiveFacets[position] = {
3979
3978
  name: dfacet,
3980
- data: defaultsPure({}, facetResults, dataFromMainRequest),
3979
+ data: defaultsPure(dataFromMainRequest, facetResults),
3981
3980
  exhaustive: result.exhaustiveFacetsCount,
3982
3981
  };
3983
3982
  assignFacetStats(
@@ -4375,7 +4374,7 @@
4375
4374
  return undefined;
4376
4375
  }
4377
4376
 
4378
- var options = defaultsPure({}, opts, {
4377
+ var options = defaultsPure(opts, {
4379
4378
  sortBy: SearchResults.DEFAULT_SORT,
4380
4379
  // if no sortBy is given, attempt to sort based on facetOrdering
4381
4380
  // if it is given, we still allow to sort via facet ordering first
@@ -4666,7 +4665,7 @@
4666
4665
 
4667
4666
  var sortAndMergeRecommendations_1 = sortAndMergeRecommendations;
4668
4667
 
4669
- var version$1 = '3.22.5';
4668
+ var version$1 = '3.22.6';
4670
4669
 
4671
4670
  var escapeFacetValue$3 = escapeFacetValue_1.escapeFacetValue;
4672
4671
 
@@ -7724,7 +7723,10 @@
7724
7723
 
7725
7724
  // typed as any, since it accepts the _real_ js clients, not the interface we otherwise expect
7726
7725
  function getAppIdAndApiKey(searchClient) {
7727
- if (searchClient.transporter) {
7726
+ if (searchClient.appId && searchClient.apiKey) {
7727
+ // searchClient v5
7728
+ return [searchClient.appId, searchClient.apiKey];
7729
+ } else if (searchClient.transporter) {
7728
7730
  // searchClient v4 or v5
7729
7731
  var transporter = searchClient.transporter;
7730
7732
  var headers = transporter.headers || transporter.baseHeaders;
@@ -7825,8 +7827,9 @@
7825
7827
  }
7826
7828
  return res;
7827
7829
  }
7828
- function getRefinements(results, state) {
7830
+ function getRefinements(_results, state) {
7829
7831
  var includesQuery = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
7832
+ var results = _results || {};
7830
7833
  var refinements = [];
7831
7834
  var _state$facetsRefineme = state.facetsRefinements,
7832
7835
  facetsRefinements = _state$facetsRefineme === void 0 ? {} : _state$facetsRefineme,
@@ -9705,7 +9708,6 @@
9705
9708
  // TODO: emit "change" event when events for Recommend are implemented
9706
9709
  }
9707
9710
  }
9708
-
9709
9711
  function getLocalWidgetsUiState(widgets, widgetStateOptions) {
9710
9712
  var initialUiState = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
9711
9713
  return widgets.reduce(function (uiState, widget) {
@@ -10649,7 +10651,6 @@
10649
10651
  $$internal = _props$$$internal === void 0 ? false : _props$$$internal,
10650
10652
  _props$$$automatic = props.$$automatic,
10651
10653
  $$automatic = _props$$$automatic === void 0 ? false : _props$$$automatic;
10652
- var currentTokenType;
10653
10654
  var potentialInsightsClient = _insightsClient;
10654
10655
  if (!_insightsClient && _insightsClient !== null) {
10655
10656
  safelyRunOnBrowser(function (_ref) {
@@ -10695,9 +10696,7 @@
10695
10696
  apiKey = _getAppIdAndApiKey2[1];
10696
10697
  var queuedInitParams = undefined;
10697
10698
  var queuedUserToken = undefined;
10698
- var queuedAuthenticatedUserToken = undefined;
10699
10699
  var userTokenBeforeInit = undefined;
10700
- var authenticatedUserTokenBeforeInit = undefined;
10701
10700
  var queue = insightsClient.queue;
10702
10701
  if (Array.isArray(queue)) {
10703
10702
  // Context: The umd build of search-insights is asynchronously loaded by the snippet.
@@ -10710,7 +10709,7 @@
10710
10709
  // At this point, even though `search-insights` is not loaded yet,
10711
10710
  // we still want to read the token from the queue.
10712
10711
  // Otherwise, the first search call will be fired without the token.
10713
- var _map = ['setUserToken', 'setAuthenticatedUserToken', 'init'].map(function (key) {
10712
+ var _map = ['setUserToken', 'init'].map(function (key) {
10714
10713
  var _ref3 = find$1(queue.slice().reverse(), function (_ref5) {
10715
10714
  var _ref6 = _slicedToArray$5(_ref5, 1),
10716
10715
  method = _ref6[0];
@@ -10720,23 +10719,18 @@
10720
10719
  value = _ref4[1];
10721
10720
  return value;
10722
10721
  });
10723
- var _map2 = _slicedToArray$5(_map, 3);
10722
+ var _map2 = _slicedToArray$5(_map, 2);
10724
10723
  queuedUserToken = _map2[0];
10725
- queuedAuthenticatedUserToken = _map2[1];
10726
- queuedInitParams = _map2[2];
10724
+ queuedInitParams = _map2[1];
10727
10725
  }
10728
10726
 
10729
- // If user called `aa('setUserToken')` or `aa('setAuthenticatedUserToken')`
10730
- // before creating the Insights middleware, we temporarily store the token
10731
- // and set it later on.
10727
+ // If user called `aa('setUserToken')` before creating the Insights middleware,
10728
+ // we temporarily store the token and set it later on.
10732
10729
  //
10733
10730
  // Otherwise, the `init` call might override them with anonymous user token.
10734
10731
  insightsClient('getUserToken', null, function (_error, userToken) {
10735
10732
  userTokenBeforeInit = normalizeUserToken(userToken);
10736
10733
  });
10737
- insightsClient('getAuthenticatedUserToken', null, function (_error, userToken) {
10738
- authenticatedUserTokenBeforeInit = normalizeUserToken(userToken);
10739
- });
10740
10734
 
10741
10735
  // Only `init` if the `insightsInitParams` option is passed or
10742
10736
  // if the `insightsClient` version doesn't supports optional `init` calling.
@@ -10776,7 +10770,7 @@
10776
10770
  helper = instantSearchInstance.mainHelper;
10777
10771
  var queueAtStart = insightsClient.queue;
10778
10772
  if (Array.isArray(queueAtStart)) {
10779
- var _map3 = ['setUserToken', 'setAuthenticatedUserToken', 'init'].map(function (key) {
10773
+ var _map3 = ['setUserToken', 'init'].map(function (key) {
10780
10774
  var _ref7 = find$1(queueAtStart.slice().reverse(), function (_ref9) {
10781
10775
  var _ref10 = _slicedToArray$5(_ref9, 1),
10782
10776
  method = _ref10[0];
@@ -10786,15 +10780,11 @@
10786
10780
  value = _ref8[1];
10787
10781
  return value;
10788
10782
  });
10789
- var _map4 = _slicedToArray$5(_map3, 3);
10783
+ var _map4 = _slicedToArray$5(_map3, 2);
10790
10784
  queuedUserToken = _map4[0];
10791
- queuedAuthenticatedUserToken = _map4[1];
10792
- queuedInitParams = _map4[2];
10785
+ queuedInitParams = _map4[1];
10793
10786
  }
10794
- initialParameters = {
10795
- userToken: helper.state.userToken,
10796
- clickAnalytics: helper.state.clickAnalytics
10797
- };
10787
+ initialParameters = getInitialParameters(instantSearchInstance);
10798
10788
 
10799
10789
  // We don't want to force clickAnalytics when the insights is enabled from the search response.
10800
10790
  // This means we don't enable insights for indices that don't opt in
@@ -10806,9 +10796,8 @@
10806
10796
  if (!$$internal) {
10807
10797
  instantSearchInstance.scheduleSearch();
10808
10798
  }
10809
- var setUserTokenToSearch = function setUserTokenToSearch(userToken, tokenType) {
10810
- var immediate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
10811
- var unsetAuthenticatedUserToken = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
10799
+ var setUserTokenToSearch = function setUserTokenToSearch(userToken) {
10800
+ var immediate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
10812
10801
  var normalizedUserToken = normalizeUserToken(userToken);
10813
10802
  if (!normalizedUserToken) {
10814
10803
  return;
@@ -10821,13 +10810,6 @@
10821
10810
  if (existingToken && existingToken !== userToken) {
10822
10811
  instantSearchInstance.scheduleSearch();
10823
10812
  }
10824
- currentTokenType = tokenType;
10825
- }
10826
-
10827
- // the authenticated user token cannot be overridden by a user or anonymous token
10828
- // for instant search query requests
10829
- if (currentTokenType && currentTokenType === 'authenticated' && tokenType === 'default' && !unsetAuthenticatedUserToken) {
10830
- return;
10831
10813
  }
10832
10814
 
10833
10815
  // Delay the token application to the next render cycle
@@ -10837,14 +10819,9 @@
10837
10819
  applyToken();
10838
10820
  }
10839
10821
  };
10840
- function setUserToken(token, userToken, authenticatedUserToken) {
10841
- setUserTokenToSearch(token, authenticatedUserToken ? 'authenticated' : 'default', true);
10842
- if (userToken) {
10843
- insightsClient('setUserToken', userToken);
10844
- }
10845
- if (authenticatedUserToken) {
10846
- insightsClient('setAuthenticatedUserToken', authenticatedUserToken);
10847
- }
10822
+ function setUserToken(token) {
10823
+ setUserTokenToSearch(token, true);
10824
+ insightsClient('setUserToken', token);
10848
10825
  }
10849
10826
  var anonymousUserToken = undefined;
10850
10827
  var anonymousTokenFromInsights = getInsightsAnonymousUserTokenInternal();
@@ -10858,7 +10835,6 @@
10858
10835
  var token = "anonymous-".concat(createUUID());
10859
10836
  anonymousUserToken = token;
10860
10837
  }
10861
- var authenticatedUserTokenFromInit;
10862
10838
  var userTokenFromInit;
10863
10839
 
10864
10840
  // With SSR, the token could be be set on the state. We make sure
@@ -10866,36 +10842,25 @@
10866
10842
  // insights lib on the server.
10867
10843
  var tokenFromSearchParameters = initialParameters.userToken;
10868
10844
 
10869
- // When the first query is sent, the token is possibly not yet be set by
10845
+ // When the first query is sent, the token is possibly not yet set by
10870
10846
  // the insights onChange callbacks (if insights isn't yet loaded).
10871
10847
  // It is explicitly being set here so that the first query has the
10872
10848
  // initial tokens set and ensure a second query isn't automatically
10873
10849
  // made when the onChange callback actually changes the state.
10874
- if (insightsInitParams) {
10875
- if (insightsInitParams.authenticatedUserToken) {
10876
- authenticatedUserTokenFromInit = insightsInitParams.authenticatedUserToken;
10877
- } else if (insightsInitParams.userToken) {
10878
- userTokenFromInit = insightsInitParams.userToken;
10879
- }
10850
+ if (insightsInitParams !== null && insightsInitParams !== void 0 && insightsInitParams.userToken) {
10851
+ userTokenFromInit = insightsInitParams.userToken;
10880
10852
  }
10881
-
10882
- // We consider the `userToken` or `authenticatedUserToken` before an
10883
- // `init` call of higher importance than one from the queue and ones set
10884
- // from the init props to be higher than that.
10885
- var tokenFromInit = authenticatedUserTokenFromInit || userTokenFromInit;
10886
- var tokenBeforeInit = authenticatedUserTokenBeforeInit || userTokenBeforeInit;
10887
- var tokenFromQueue = queuedAuthenticatedUserToken || queuedUserToken;
10888
- if (tokenFromInit) {
10889
- setUserToken(tokenFromInit, userTokenFromInit, authenticatedUserTokenFromInit);
10853
+ if (userTokenFromInit) {
10854
+ setUserToken(userTokenFromInit);
10890
10855
  } else if (tokenFromSearchParameters) {
10891
- setUserToken(tokenFromSearchParameters, tokenFromSearchParameters, undefined);
10892
- } else if (tokenBeforeInit) {
10893
- setUserToken(tokenBeforeInit, userTokenBeforeInit, authenticatedUserTokenBeforeInit);
10894
- } else if (tokenFromQueue) {
10895
- setUserToken(tokenFromQueue, queuedUserToken, queuedAuthenticatedUserToken);
10856
+ setUserToken(tokenFromSearchParameters);
10857
+ } else if (userTokenBeforeInit) {
10858
+ setUserToken(userTokenBeforeInit);
10859
+ } else if (queuedUserToken) {
10860
+ setUserToken(queuedUserToken);
10896
10861
  } else if (anonymousUserToken) {
10897
10862
  var _queuedInitParams;
10898
- setUserToken(anonymousUserToken, anonymousUserToken, undefined);
10863
+ setUserToken(anonymousUserToken);
10899
10864
  if (insightsInitParams !== null && insightsInitParams !== void 0 && insightsInitParams.useCookie || (_queuedInitParams = queuedInitParams) !== null && _queuedInitParams !== void 0 && _queuedInitParams.useCookie) {
10900
10865
  var _queuedInitParams2;
10901
10866
  saveTokenAsCookie(anonymousUserToken, (insightsInitParams === null || insightsInitParams === void 0 ? void 0 : insightsInitParams.cookieDuration) || ((_queuedInitParams2 = queuedInitParams) === null || _queuedInitParams2 === void 0 ? void 0 : _queuedInitParams2.cookieDuration));
@@ -10904,20 +10869,7 @@
10904
10869
 
10905
10870
  // This updates userToken which is set explicitly by `aa('setUserToken', userToken)`
10906
10871
  insightsClient('onUserTokenChange', function (token) {
10907
- return setUserTokenToSearch(token, 'default', true);
10908
- }, {
10909
- immediate: true
10910
- });
10911
-
10912
- // This updates userToken which is set explicitly by `aa('setAuthenticatedtUserToken', authenticatedUserToken)`
10913
- insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) {
10914
- // If we're unsetting the `authenticatedUserToken`, we revert to the `userToken`
10915
- if (!authenticatedUserToken) {
10916
- insightsClient('getUserToken', null, function (_, userToken) {
10917
- setUserTokenToSearch(userToken, 'default', true, true);
10918
- });
10919
- }
10920
- setUserTokenToSearch(authenticatedUserToken, 'authenticated', true);
10872
+ return setUserTokenToSearch(token, true);
10921
10873
  }, {
10922
10874
  immediate: true
10923
10875
  });
@@ -10939,7 +10891,7 @@
10939
10891
  var lastQueryId;
10940
10892
  instantSearchInstance.mainHelper.derivedHelpers[0].on('result', function (_ref11) {
10941
10893
  var results = _ref11.results;
10942
- if (!results.queryID || results.queryID !== lastQueryId) {
10894
+ if (results && (!results.queryID || results.queryID !== lastQueryId)) {
10943
10895
  lastQueryId = results.queryID;
10944
10896
  viewedObjectIDs.clear();
10945
10897
  }
@@ -10976,7 +10928,6 @@
10976
10928
  },
10977
10929
  unsubscribe: function unsubscribe() {
10978
10930
  insightsClient('onUserTokenChange', undefined);
10979
- insightsClient('onAuthenticatedUserTokenChange', undefined);
10980
10931
  instantSearchInstance.sendEventToInsights = noop;
10981
10932
  if (helper && initialParameters) {
10982
10933
  helper.overrideStateWithoutTriggeringChangeEvent(_objectSpread$c(_objectSpread$c({}, helper.state), initialParameters));
@@ -10986,6 +10937,16 @@
10986
10937
  };
10987
10938
  };
10988
10939
  }
10940
+ function getInitialParameters(instantSearchInstance) {
10941
+ var _instantSearchInstanc, _instantSearchInstanc2;
10942
+ // in SSR, the initial state we use in this domain is set on the main index
10943
+ var stateFromInitialResults = ((_instantSearchInstanc = instantSearchInstance._initialResults) === null || _instantSearchInstanc === void 0 ? void 0 : (_instantSearchInstanc2 = _instantSearchInstanc[instantSearchInstance.indexName]) === null || _instantSearchInstanc2 === void 0 ? void 0 : _instantSearchInstanc2.state) || {};
10944
+ var stateFromHelper = instantSearchInstance.mainHelper.state;
10945
+ return {
10946
+ userToken: stateFromInitialResults.userToken || stateFromHelper.userToken,
10947
+ clickAnalytics: stateFromInitialResults.clickAnalytics || stateFromHelper.clickAnalytics
10948
+ };
10949
+ }
10989
10950
  function saveTokenAsCookie(token, cookieDuration) {
10990
10951
  var MONTH = 30 * 24 * 60 * 60 * 1000;
10991
10952
  var d = new Date();
@@ -12651,7 +12612,7 @@
12651
12612
  };
12652
12613
  }
12653
12614
 
12654
- var version$2 = '4.75.5';
12615
+ var version$2 = '4.75.7';
12655
12616
 
12656
12617
  function _typeof$l(obj) {
12657
12618
  "@babel/helpers - typeof";
@@ -12811,9 +12772,11 @@
12811
12772
  // this purposely breaks typescript's type inference to ensure it's not used
12812
12773
  // as it's used for a default parameter for example
12813
12774
  // source: https://github.com/Microsoft/TypeScript/issues/14829#issuecomment-504042546
12775
+
12814
12776
  /**
12815
12777
  * Global options for an InstantSearch instance.
12816
12778
  */
12779
+
12817
12780
  var INSTANTSEARCH_FUTURE_DEFAULTS = {
12818
12781
  preserveSharedStateOnUnmount: false,
12819
12782
  persistHierarchicalRootCount: false
@@ -13512,7 +13475,6 @@
13512
13475
  // manually inject the routing middleware in this library, and not rely
13513
13476
  // on the provided `routing` prop.
13514
13477
  }
13515
-
13516
13478
  var cleanupTimerRef = React.useRef(null);
13517
13479
  var store = shim_1(React.useCallback(function () {
13518
13480
  var search = searchRef.current;
@@ -14254,7 +14216,7 @@
14254
14216
  function getItems() {
14255
14217
  if (!results) {
14256
14218
  return transformItems(getRefinementsItems({
14257
- results: {},
14219
+ results: null,
14258
14220
  helper: helper,
14259
14221
  indexId: helper.state.index,
14260
14222
  includedAttributes: includedAttributes,
@@ -15876,7 +15838,7 @@
15876
15838
  sendEvent: sendEvent,
15877
15839
  bindEvent: bindEvent,
15878
15840
  banner: banner,
15879
- results: results,
15841
+ results: results || undefined,
15880
15842
  showPrevious: showPrevious,
15881
15843
  showMore: showMore,
15882
15844
  isFirstPage: isFirstPage,
@@ -19562,12 +19524,15 @@
19562
19524
  var searchResults = widget.getResults();
19563
19525
  var recommendResults = (_widget$getHelper = widget.getHelper()) === null || _widget$getHelper === void 0 ? void 0 : _widget$getHelper.lastRecommendResults;
19564
19526
  if (searchResults || recommendResults) {
19565
- var _searchResults$_rawRe;
19527
+ var _searchResults$_rawRe, _requestParams$, _requestParams$2;
19566
19528
  var resultsCount = (searchResults === null || searchResults === void 0 ? void 0 : (_searchResults$_rawRe = searchResults._rawResults) === null || _searchResults$_rawRe === void 0 ? void 0 : _searchResults$_rawRe.length) || 0;
19567
19529
  var requestParams = resultsCount ? requestParamsList === null || requestParamsList === void 0 ? void 0 : requestParamsList.slice(requestParamsIndex, requestParamsIndex + resultsCount) : [];
19568
19530
  requestParamsIndex += resultsCount;
19569
19531
  initialResults[widget.getIndexId()] = _objectSpread$D(_objectSpread$D(_objectSpread$D({}, searchResults && {
19570
- state: _objectSpread$D({}, searchResults._state),
19532
+ state: _objectSpread$D(_objectSpread$D({}, searchResults._state), {}, {
19533
+ clickAnalytics: requestParams === null || requestParams === void 0 ? void 0 : (_requestParams$ = requestParams[0]) === null || _requestParams$ === void 0 ? void 0 : _requestParams$.clickAnalytics,
19534
+ userToken: requestParams === null || requestParams === void 0 ? void 0 : (_requestParams$2 = requestParams[0]) === null || _requestParams$2 === void 0 ? void 0 : _requestParams$2.userToken
19535
+ }),
19571
19536
  results: searchResults._rawResults
19572
19537
  }), recommendResults && {
19573
19538
  recommendResults: {
@@ -19642,7 +19607,7 @@
19642
19607
  searchRef = _ref3.searchRef,
19643
19608
  skipRecommend = _ref3.skipRecommend;
19644
19609
  return Promise.resolve().then(function () {
19645
- renderToString( /*#__PURE__*/React__default.createElement(InstantSearchServerContext.Provider, {
19610
+ renderToString(/*#__PURE__*/React__default.createElement(InstantSearchServerContext.Provider, {
19646
19611
  value: {
19647
19612
  notifyServer: notifyServer
19648
19613
  }