react-instantsearch-core 7.1.0 → 7.2.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.
- package/README.md +0 -1
- package/dist/cjs/hooks/useInstantSearch.js +5 -1
- package/dist/cjs/lib/useInstantSearchApi.js +14 -1
- package/dist/cjs/lib/useSearchState.js +11 -1
- package/dist/cjs/version.js +1 -1
- package/dist/es/hooks/useInstantSearch.js +5 -1
- package/dist/es/lib/useInstantSearchApi.js +12 -1
- package/dist/es/lib/useSearchState.d.ts +2 -0
- package/dist/es/lib/useSearchState.js +11 -1
- package/dist/es/version.d.ts +1 -1
- package/dist/es/version.js +1 -1
- package/dist/umd/ReactInstantSearchCore.js +48 -13
- package/dist/umd/ReactInstantSearchCore.js.map +1 -1
- package/dist/umd/ReactInstantSearchCore.min.js +1 -1
- package/dist/umd/ReactInstantSearchCore.min.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
|
|
2
2
|
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
|
|
3
3
|
|
|
4
|
-
|
|
5
4
|
- [react-instantsearch-core](#react-instantsearch-core)
|
|
6
5
|
- [Installation](#installation)
|
|
7
6
|
- [Getting started](#getting-started)
|
|
@@ -17,7 +17,9 @@ function useInstantSearch() {
|
|
|
17
17
|
uiState = _useSearchState.uiState,
|
|
18
18
|
setUiState = _useSearchState.setUiState,
|
|
19
19
|
indexUiState = _useSearchState.indexUiState,
|
|
20
|
-
setIndexUiState = _useSearchState.setIndexUiState
|
|
20
|
+
setIndexUiState = _useSearchState.setIndexUiState,
|
|
21
|
+
renderState = _useSearchState.renderState,
|
|
22
|
+
indexRenderState = _useSearchState.indexRenderState;
|
|
21
23
|
var _useSearchResults = (0, _useSearchResults2.useSearchResults)(),
|
|
22
24
|
results = _useSearchResults.results,
|
|
23
25
|
scopedResults = _useSearchResults.scopedResults;
|
|
@@ -50,6 +52,8 @@ function useInstantSearch() {
|
|
|
50
52
|
setUiState: setUiState,
|
|
51
53
|
indexUiState: indexUiState,
|
|
52
54
|
setIndexUiState: setIndexUiState,
|
|
55
|
+
renderState: renderState,
|
|
56
|
+
indexRenderState: indexRenderState,
|
|
53
57
|
addMiddlewares: addMiddlewares,
|
|
54
58
|
refresh: refresh,
|
|
55
59
|
status: search.status,
|
|
@@ -4,16 +4,25 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.useInstantSearchApi = useInstantSearchApi;
|
|
7
|
-
var _InstantSearch =
|
|
7
|
+
var _InstantSearch = _interopRequireWildcard(require("instantsearch.js/cjs/lib/InstantSearch"));
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _shim = require("use-sync-external-store/shim");
|
|
10
10
|
var _version = _interopRequireDefault(require("../version"));
|
|
11
|
+
var _dequal = require("./dequal");
|
|
11
12
|
var _useForceUpdate = require("./useForceUpdate");
|
|
12
13
|
var _useInstantSearchServerContext = require("./useInstantSearchServerContext");
|
|
13
14
|
var _useInstantSearchSSRContext = require("./useInstantSearchSSRContext");
|
|
14
15
|
var _useRSCContext = require("./useRSCContext");
|
|
15
16
|
var _warn = require("./warn");
|
|
16
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
21
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
22
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
23
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
24
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
25
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
17
26
|
var defaultUserAgents = ["react (".concat(_react.version, ")"), "react-instantsearch (".concat(_version.default, ")"), "react-instantsearch-core (".concat(_version.default, ")")];
|
|
18
27
|
var serverUserAgent = "react-instantsearch-server (".concat(_version.default, ")");
|
|
19
28
|
var nextUserAgent = function nextUserAgent(nextVersion) {
|
|
@@ -109,6 +118,10 @@ function useInstantSearchApi(props) {
|
|
|
109
118
|
_search._stalledSearchDelay = (_props$stalledSearchD = props.stalledSearchDelay) !== null && _props$stalledSearchD !== void 0 ? _props$stalledSearchD : 200;
|
|
110
119
|
prevPropsRef.current = props;
|
|
111
120
|
}
|
|
121
|
+
if (!(0, _dequal.dequal)(prevProps.future, props.future)) {
|
|
122
|
+
_search.future = _objectSpread(_objectSpread({}, _InstantSearch.INSTANTSEARCH_FUTURE_DEFAULTS), props.future);
|
|
123
|
+
prevPropsRef.current = props;
|
|
124
|
+
}
|
|
112
125
|
|
|
113
126
|
// Updating the `routing` prop is not supported because InstantSearch.js
|
|
114
127
|
// doesn't let us change it. This might not be a problem though, because `routing`
|
|
@@ -24,6 +24,13 @@ function useSearchState() {
|
|
|
24
24
|
uiState = _useState2[0],
|
|
25
25
|
setLocalUiState = _useState2[1];
|
|
26
26
|
var indexUiState = uiState[indexId];
|
|
27
|
+
var _useState3 = (0, _react.useState)(function () {
|
|
28
|
+
return search.renderState;
|
|
29
|
+
}),
|
|
30
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
31
|
+
renderState = _useState4[0],
|
|
32
|
+
setRenderState = _useState4[1];
|
|
33
|
+
var indexRenderState = renderState[indexId] || {};
|
|
27
34
|
var setUiState = (0, _react.useCallback)(function (nextUiState) {
|
|
28
35
|
search.setUiState(nextUiState);
|
|
29
36
|
}, [search]);
|
|
@@ -33,6 +40,7 @@ function useSearchState() {
|
|
|
33
40
|
(0, _react.useEffect)(function () {
|
|
34
41
|
function handleRender() {
|
|
35
42
|
setLocalUiState(search.getUiState());
|
|
43
|
+
setRenderState(search.renderState);
|
|
36
44
|
}
|
|
37
45
|
search.addListener('render', handleRender);
|
|
38
46
|
return function () {
|
|
@@ -43,6 +51,8 @@ function useSearchState() {
|
|
|
43
51
|
uiState: uiState,
|
|
44
52
|
setUiState: setUiState,
|
|
45
53
|
indexUiState: indexUiState,
|
|
46
|
-
setIndexUiState: setIndexUiState
|
|
54
|
+
setIndexUiState: setIndexUiState,
|
|
55
|
+
renderState: renderState,
|
|
56
|
+
indexRenderState: indexRenderState
|
|
47
57
|
};
|
|
48
58
|
}
|
package/dist/cjs/version.js
CHANGED
|
@@ -11,7 +11,9 @@ export function useInstantSearch() {
|
|
|
11
11
|
uiState = _useSearchState.uiState,
|
|
12
12
|
setUiState = _useSearchState.setUiState,
|
|
13
13
|
indexUiState = _useSearchState.indexUiState,
|
|
14
|
-
setIndexUiState = _useSearchState.setIndexUiState
|
|
14
|
+
setIndexUiState = _useSearchState.setIndexUiState,
|
|
15
|
+
renderState = _useSearchState.renderState,
|
|
16
|
+
indexRenderState = _useSearchState.indexRenderState;
|
|
15
17
|
var _useSearchResults = useSearchResults(),
|
|
16
18
|
results = _useSearchResults.results,
|
|
17
19
|
scopedResults = _useSearchResults.scopedResults;
|
|
@@ -44,6 +46,8 @@ export function useInstantSearch() {
|
|
|
44
46
|
setUiState: setUiState,
|
|
45
47
|
indexUiState: indexUiState,
|
|
46
48
|
setIndexUiState: setIndexUiState,
|
|
49
|
+
renderState: renderState,
|
|
50
|
+
indexRenderState: indexRenderState,
|
|
47
51
|
addMiddlewares: addMiddlewares,
|
|
48
52
|
refresh: refresh,
|
|
49
53
|
status: search.status,
|
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
|
|
1
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
3
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
6
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
7
|
+
import InstantSearch, { INSTANTSEARCH_FUTURE_DEFAULTS } from "instantsearch.js/es/lib/InstantSearch.js";
|
|
2
8
|
import { useCallback, useRef, version as ReactVersion } from 'react';
|
|
3
9
|
import { useSyncExternalStore } from "use-sync-external-store/shim/index.js";
|
|
4
10
|
import version from "../version.js";
|
|
11
|
+
import { dequal } from "./dequal.js";
|
|
5
12
|
import { useForceUpdate } from "./useForceUpdate.js";
|
|
6
13
|
import { useInstantSearchServerContext } from "./useInstantSearchServerContext.js";
|
|
7
14
|
import { useInstantSearchSSRContext } from "./useInstantSearchSSRContext.js";
|
|
@@ -102,6 +109,10 @@ export function useInstantSearchApi(props) {
|
|
|
102
109
|
_search._stalledSearchDelay = (_props$stalledSearchD = props.stalledSearchDelay) !== null && _props$stalledSearchD !== void 0 ? _props$stalledSearchD : 200;
|
|
103
110
|
prevPropsRef.current = props;
|
|
104
111
|
}
|
|
112
|
+
if (!dequal(prevProps.future, props.future)) {
|
|
113
|
+
_search.future = _objectSpread(_objectSpread({}, INSTANTSEARCH_FUTURE_DEFAULTS), props.future);
|
|
114
|
+
prevPropsRef.current = props;
|
|
115
|
+
}
|
|
105
116
|
|
|
106
117
|
// Updating the `routing` prop is not supported because InstantSearch.js
|
|
107
118
|
// doesn't let us change it. This might not be a problem though, because `routing`
|
|
@@ -4,5 +4,7 @@ export type SearchStateApi<TUiState extends UiState> = {
|
|
|
4
4
|
setUiState: InstantSearch<TUiState>['setUiState'];
|
|
5
5
|
indexUiState: TUiState[string];
|
|
6
6
|
setIndexUiState: IndexWidget<TUiState>['setIndexUiState'];
|
|
7
|
+
renderState: InstantSearch<TUiState>['renderState'];
|
|
8
|
+
indexRenderState: InstantSearch<TUiState>['renderState'][string];
|
|
7
9
|
};
|
|
8
10
|
export declare function useSearchState<TUiState extends UiState>(): SearchStateApi<TUiState>;
|
|
@@ -18,6 +18,13 @@ export function useSearchState() {
|
|
|
18
18
|
uiState = _useState2[0],
|
|
19
19
|
setLocalUiState = _useState2[1];
|
|
20
20
|
var indexUiState = uiState[indexId];
|
|
21
|
+
var _useState3 = useState(function () {
|
|
22
|
+
return search.renderState;
|
|
23
|
+
}),
|
|
24
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
25
|
+
renderState = _useState4[0],
|
|
26
|
+
setRenderState = _useState4[1];
|
|
27
|
+
var indexRenderState = renderState[indexId] || {};
|
|
21
28
|
var setUiState = useCallback(function (nextUiState) {
|
|
22
29
|
search.setUiState(nextUiState);
|
|
23
30
|
}, [search]);
|
|
@@ -27,6 +34,7 @@ export function useSearchState() {
|
|
|
27
34
|
useEffect(function () {
|
|
28
35
|
function handleRender() {
|
|
29
36
|
setLocalUiState(search.getUiState());
|
|
37
|
+
setRenderState(search.renderState);
|
|
30
38
|
}
|
|
31
39
|
search.addListener('render', handleRender);
|
|
32
40
|
return function () {
|
|
@@ -37,6 +45,8 @@ export function useSearchState() {
|
|
|
37
45
|
uiState: uiState,
|
|
38
46
|
setUiState: setUiState,
|
|
39
47
|
indexUiState: indexUiState,
|
|
40
|
-
setIndexUiState: setIndexUiState
|
|
48
|
+
setIndexUiState: setIndexUiState,
|
|
49
|
+
renderState: renderState,
|
|
50
|
+
indexRenderState: indexRenderState
|
|
41
51
|
};
|
|
42
52
|
}
|
package/dist/es/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: "7.
|
|
1
|
+
declare const _default: "7.2.0";
|
|
2
2
|
export default _default;
|
package/dist/es/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export default '7.
|
|
1
|
+
export default '7.2.0';
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
var React__default = 'default' in React ? React['default'] : React;
|
|
9
9
|
|
|
10
|
-
var version = '7.
|
|
10
|
+
var version = '7.2.0';
|
|
11
11
|
|
|
12
12
|
// Copyright Joyent, Inc. and other Node contributors.
|
|
13
13
|
//
|
|
@@ -8823,7 +8823,7 @@
|
|
|
8823
8823
|
return widgets.indexOf(widget) === -1;
|
|
8824
8824
|
});
|
|
8825
8825
|
if (localInstantSearchInstance && Boolean(widgets.length)) {
|
|
8826
|
-
var
|
|
8826
|
+
var cleanedState = widgets.reduce(function (state, widget) {
|
|
8827
8827
|
// the `dispose` method exists at this point we already assert it
|
|
8828
8828
|
var next = widget.dispose({
|
|
8829
8829
|
helper: helper,
|
|
@@ -8832,14 +8832,23 @@
|
|
|
8832
8832
|
});
|
|
8833
8833
|
return next || state;
|
|
8834
8834
|
}, helper.state);
|
|
8835
|
+
var newState = localInstantSearchInstance.future.preserveSharedStateOnUnmount ? getLocalWidgetsSearchParameters(localWidgets, {
|
|
8836
|
+
uiState: localUiState,
|
|
8837
|
+
initialSearchParameters: new algoliasearchHelper_1.SearchParameters({
|
|
8838
|
+
index: this.getIndexName()
|
|
8839
|
+
})
|
|
8840
|
+
}) : getLocalWidgetsSearchParameters(localWidgets, {
|
|
8841
|
+
uiState: getLocalWidgetsUiState(localWidgets, {
|
|
8842
|
+
searchParameters: cleanedState,
|
|
8843
|
+
helper: helper
|
|
8844
|
+
}),
|
|
8845
|
+
initialSearchParameters: cleanedState
|
|
8846
|
+
});
|
|
8835
8847
|
localUiState = getLocalWidgetsUiState(localWidgets, {
|
|
8836
|
-
searchParameters:
|
|
8848
|
+
searchParameters: newState,
|
|
8837
8849
|
helper: helper
|
|
8838
8850
|
});
|
|
8839
|
-
helper.setState(
|
|
8840
|
-
uiState: localUiState,
|
|
8841
|
-
initialSearchParameters: _nextState
|
|
8842
|
-
}));
|
|
8851
|
+
helper.setState(newState);
|
|
8843
8852
|
if (localWidgets.length) {
|
|
8844
8853
|
localInstantSearchInstance.scheduleSearch();
|
|
8845
8854
|
}
|
|
@@ -8905,7 +8914,7 @@
|
|
|
8905
8914
|
return mainHelper.searchForFacetValues(facetName, facetValue, maxFacetHits, state);
|
|
8906
8915
|
};
|
|
8907
8916
|
derivedHelper = mainHelper.derive(function () {
|
|
8908
|
-
return mergeSearchParameters.apply(void 0, _toConsumableArray$1(resolveSearchParameters(_this3)));
|
|
8917
|
+
return mergeSearchParameters.apply(void 0, [mainHelper.state].concat(_toConsumableArray$1(resolveSearchParameters(_this3))));
|
|
8909
8918
|
});
|
|
8910
8919
|
var indexInitialResults = (_instantSearchInstanc = instantSearchInstance._initialResults) === null || _instantSearchInstanc === void 0 ? void 0 : _instantSearchInstanc[this.getIndexId()];
|
|
8911
8920
|
if (indexInitialResults) {
|
|
@@ -9559,7 +9568,7 @@
|
|
|
9559
9568
|
},
|
|
9560
9569
|
started: function started() {
|
|
9561
9570
|
insightsClient('addAlgoliaAgent', 'insights-middleware');
|
|
9562
|
-
helper = instantSearchInstance.
|
|
9571
|
+
helper = instantSearchInstance.mainHelper;
|
|
9563
9572
|
initialParameters = {
|
|
9564
9573
|
userToken: helper.state.userToken,
|
|
9565
9574
|
clickAnalytics: helper.state.clickAnalytics
|
|
@@ -11286,7 +11295,7 @@
|
|
|
11286
11295
|
};
|
|
11287
11296
|
}
|
|
11288
11297
|
|
|
11289
|
-
var version$2 = '4.
|
|
11298
|
+
var version$2 = '4.58.0';
|
|
11290
11299
|
|
|
11291
11300
|
function _typeof$j(obj) {
|
|
11292
11301
|
"@babel/helpers - typeof";
|
|
@@ -11449,6 +11458,10 @@
|
|
|
11449
11458
|
/**
|
|
11450
11459
|
* Global options for an InstantSearch instance.
|
|
11451
11460
|
*/
|
|
11461
|
+
var INSTANTSEARCH_FUTURE_DEFAULTS = {
|
|
11462
|
+
preserveSharedStateOnUnmount: false
|
|
11463
|
+
};
|
|
11464
|
+
|
|
11452
11465
|
/**
|
|
11453
11466
|
* The actual implementation of the InstantSearch. This is
|
|
11454
11467
|
* created using the `instantsearch` factory function.
|
|
@@ -11467,6 +11480,7 @@
|
|
|
11467
11480
|
_defineProperty$e(_assertThisInitialized(_this), "indexName", void 0);
|
|
11468
11481
|
_defineProperty$e(_assertThisInitialized(_this), "insightsClient", void 0);
|
|
11469
11482
|
_defineProperty$e(_assertThisInitialized(_this), "onStateChange", null);
|
|
11483
|
+
_defineProperty$e(_assertThisInitialized(_this), "future", void 0);
|
|
11470
11484
|
_defineProperty$e(_assertThisInitialized(_this), "helper", void 0);
|
|
11471
11485
|
_defineProperty$e(_assertThisInitialized(_this), "mainHelper", void 0);
|
|
11472
11486
|
_defineProperty$e(_assertThisInitialized(_this), "mainIndex", void 0);
|
|
@@ -11539,7 +11553,9 @@
|
|
|
11539
11553
|
_options$insightsClie = options.insightsClient,
|
|
11540
11554
|
insightsClient = _options$insightsClie === void 0 ? null : _options$insightsClie,
|
|
11541
11555
|
_options$onStateChang = options.onStateChange,
|
|
11542
|
-
onStateChange = _options$onStateChang === void 0 ? null : _options$onStateChang
|
|
11556
|
+
onStateChange = _options$onStateChang === void 0 ? null : _options$onStateChang,
|
|
11557
|
+
_options$future = options.future,
|
|
11558
|
+
future = _options$future === void 0 ? _objectSpread$c(_objectSpread$c({}, INSTANTSEARCH_FUTURE_DEFAULTS), options.future || {}) : _options$future;
|
|
11543
11559
|
if (searchClient === null) {
|
|
11544
11560
|
throw new Error(withUsage$3('The `searchClient` option is required.'));
|
|
11545
11561
|
}
|
|
@@ -11553,6 +11569,7 @@
|
|
|
11553
11569
|
throw new Error(withUsage$3('The `insightsClient` option should be a function.'));
|
|
11554
11570
|
}
|
|
11555
11571
|
_this.client = searchClient;
|
|
11572
|
+
_this.future = future;
|
|
11556
11573
|
_this.insightsClient = insightsClient;
|
|
11557
11574
|
_this.indexName = indexName;
|
|
11558
11575
|
_this.helper = null;
|
|
@@ -12096,6 +12113,10 @@
|
|
|
12096
12113
|
_search._stalledSearchDelay = (_props$stalledSearchD = props.stalledSearchDelay) !== null && _props$stalledSearchD !== void 0 ? _props$stalledSearchD : 200;
|
|
12097
12114
|
prevPropsRef.current = props;
|
|
12098
12115
|
}
|
|
12116
|
+
if (!dequal(prevProps.future, props.future)) {
|
|
12117
|
+
_search.future = _objectSpread2(_objectSpread2({}, INSTANTSEARCH_FUTURE_DEFAULTS), props.future);
|
|
12118
|
+
prevPropsRef.current = props;
|
|
12119
|
+
}
|
|
12099
12120
|
|
|
12100
12121
|
// Updating the `routing` prop is not supported because InstantSearch.js
|
|
12101
12122
|
// doesn't let us change it. This might not be a problem though, because `routing`
|
|
@@ -17259,6 +17280,13 @@
|
|
|
17259
17280
|
uiState = _useState2[0],
|
|
17260
17281
|
setLocalUiState = _useState2[1];
|
|
17261
17282
|
var indexUiState = uiState[indexId];
|
|
17283
|
+
var _useState3 = React.useState(function () {
|
|
17284
|
+
return search.renderState;
|
|
17285
|
+
}),
|
|
17286
|
+
_useState4 = _slicedToArray$3(_useState3, 2),
|
|
17287
|
+
renderState = _useState4[0],
|
|
17288
|
+
setRenderState = _useState4[1];
|
|
17289
|
+
var indexRenderState = renderState[indexId] || {};
|
|
17262
17290
|
var setUiState = React.useCallback(function (nextUiState) {
|
|
17263
17291
|
search.setUiState(nextUiState);
|
|
17264
17292
|
}, [search]);
|
|
@@ -17268,6 +17296,7 @@
|
|
|
17268
17296
|
React.useEffect(function () {
|
|
17269
17297
|
function handleRender() {
|
|
17270
17298
|
setLocalUiState(search.getUiState());
|
|
17299
|
+
setRenderState(search.renderState);
|
|
17271
17300
|
}
|
|
17272
17301
|
search.addListener('render', handleRender);
|
|
17273
17302
|
return function () {
|
|
@@ -17278,7 +17307,9 @@
|
|
|
17278
17307
|
uiState: uiState,
|
|
17279
17308
|
setUiState: setUiState,
|
|
17280
17309
|
indexUiState: indexUiState,
|
|
17281
|
-
setIndexUiState: setIndexUiState
|
|
17310
|
+
setIndexUiState: setIndexUiState,
|
|
17311
|
+
renderState: renderState,
|
|
17312
|
+
indexRenderState: indexRenderState
|
|
17282
17313
|
};
|
|
17283
17314
|
}
|
|
17284
17315
|
|
|
@@ -17290,7 +17321,9 @@
|
|
|
17290
17321
|
uiState = _useSearchState.uiState,
|
|
17291
17322
|
setUiState = _useSearchState.setUiState,
|
|
17292
17323
|
indexUiState = _useSearchState.indexUiState,
|
|
17293
|
-
setIndexUiState = _useSearchState.setIndexUiState
|
|
17324
|
+
setIndexUiState = _useSearchState.setIndexUiState,
|
|
17325
|
+
renderState = _useSearchState.renderState,
|
|
17326
|
+
indexRenderState = _useSearchState.indexRenderState;
|
|
17294
17327
|
var _useSearchResults = useSearchResults(),
|
|
17295
17328
|
results = _useSearchResults.results,
|
|
17296
17329
|
scopedResults = _useSearchResults.scopedResults;
|
|
@@ -17323,6 +17356,8 @@
|
|
|
17323
17356
|
setUiState: setUiState,
|
|
17324
17357
|
indexUiState: indexUiState,
|
|
17325
17358
|
setIndexUiState: setIndexUiState,
|
|
17359
|
+
renderState: renderState,
|
|
17360
|
+
indexRenderState: indexRenderState,
|
|
17326
17361
|
addMiddlewares: addMiddlewares,
|
|
17327
17362
|
refresh: refresh,
|
|
17328
17363
|
status: search.status,
|