react-instantsearch-core 7.26.1 → 7.28.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/dist/cjs/components/Configure.js +12 -6
- package/dist/cjs/components/DynamicWidgets.js +26 -17
- package/dist/cjs/components/Index.js +16 -9
- package/dist/cjs/components/InstantSearch.js +20 -13
- package/dist/cjs/components/InstantSearchSSRProvider.js +20 -16
- package/dist/cjs/components/InstantSearchServerContext.js +11 -5
- package/dist/cjs/connectors/useAutocomplete.js +13 -6
- package/dist/cjs/connectors/useBreadcrumb.js +13 -6
- package/dist/cjs/connectors/useChat.js +13 -6
- package/dist/cjs/connectors/useClearRefinements.js +13 -6
- package/dist/cjs/connectors/useConfigure.js +13 -6
- package/dist/cjs/connectors/useCurrentRefinements.js +13 -6
- package/dist/cjs/connectors/useDynamicWidgets.js +15 -8
- package/dist/cjs/connectors/useFilterSuggestions.js +13 -6
- package/dist/cjs/connectors/useFrequentlyBoughtTogether.js +13 -6
- package/dist/cjs/connectors/useGeoSearch.js +13 -6
- package/dist/cjs/connectors/useHierarchicalMenu.js +13 -6
- package/dist/cjs/connectors/useHits.js +13 -6
- package/dist/cjs/connectors/useHitsPerPage.js +13 -6
- package/dist/cjs/connectors/useInfiniteHits.js +13 -6
- package/dist/cjs/connectors/useLookingSimilar.js +13 -6
- package/dist/cjs/connectors/useMenu.js +13 -6
- package/dist/cjs/connectors/useNumericMenu.js +13 -6
- package/dist/cjs/connectors/usePagination.js +13 -6
- package/dist/cjs/connectors/usePoweredBy.js +11 -5
- package/dist/cjs/connectors/useQueryRules.js +13 -6
- package/dist/cjs/connectors/useRange.js +13 -6
- package/dist/cjs/connectors/useRefinementList.js +13 -6
- package/dist/cjs/connectors/useRelatedProducts.js +13 -6
- package/dist/cjs/connectors/useSearchBox.js +13 -6
- package/dist/cjs/connectors/useSortBy.js +13 -6
- package/dist/cjs/connectors/useStats.js +13 -6
- package/dist/cjs/connectors/useToggleRefinement.js +13 -6
- package/dist/cjs/connectors/useTrendingItems.js +13 -6
- package/dist/cjs/hooks/useConnector.js +36 -30
- package/dist/cjs/hooks/useInstantSearch.js +21 -15
- package/dist/cjs/index.js +54 -89
- package/dist/cjs/lib/IndexContext.js +11 -5
- package/dist/cjs/lib/InstantSearchContext.js +11 -5
- package/dist/cjs/lib/InstantSearchRSCContext.js +11 -5
- package/dist/cjs/lib/InstantSearchSSRContext.js +11 -5
- package/dist/cjs/lib/createSearchResults.js +12 -5
- package/dist/cjs/lib/dequal.js +10 -4
- package/dist/cjs/lib/getIndexSearchResults.js +14 -8
- package/dist/cjs/lib/invariant.js +10 -10
- package/dist/cjs/lib/noop.js +9 -2
- package/dist/cjs/lib/use.js +12 -25
- package/dist/cjs/lib/useAppIdAndApiKey.js +13 -7
- package/dist/cjs/lib/useForceUpdate.js +13 -10
- package/dist/cjs/lib/useIndex.js +28 -21
- package/dist/cjs/lib/useIndexContext.js +14 -8
- package/dist/cjs/lib/useInstantSearchApi.js +39 -29
- package/dist/cjs/lib/useInstantSearchContext.js +14 -8
- package/dist/cjs/lib/useInstantSearchSSRContext.js +12 -6
- package/dist/cjs/lib/useInstantSearchServerContext.js +12 -6
- package/dist/cjs/lib/useIsomorphicLayoutEffect.js +11 -9
- package/dist/cjs/lib/useRSCContext.js +12 -6
- package/dist/cjs/lib/useSearchResults.js +22 -16
- package/dist/cjs/lib/useSearchState.js +20 -14
- package/dist/cjs/lib/useStableValue.js +14 -8
- package/dist/cjs/lib/useWidget.js +28 -20
- package/dist/cjs/lib/warn.js +19 -8
- package/dist/cjs/lib/wrapPromiseWithState.js +9 -2
- package/dist/cjs/server/getServerState.js +23 -18
- package/dist/cjs/server/index.js +5 -5
- package/dist/cjs/version.js +10 -5
- package/dist/es/version.d.ts +1 -1
- package/dist/es/version.js +1 -1
- package/dist/umd/ReactInstantSearchCore.js +8 -3
- package/dist/umd/ReactInstantSearchCore.min.js +3 -3
- package/package.json +3 -3
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useLookingSimilar", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useLookingSimilar;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectLookingSimilar = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/looking-similar/connectLookingSimilar"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useLookingSimilar(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectLookingSimilar.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useLookingSimilar = useLookingSimilar;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useMenu", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useMenu;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectMenu = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/menu/connectMenu"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useMenu(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectMenu.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useMenu = useMenu;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useNumericMenu", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useNumericMenu;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectNumericMenu = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/numeric-menu/connectNumericMenu"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useNumericMenu(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectNumericMenu.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useNumericMenu = useNumericMenu;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "usePagination", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return usePagination;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectPagination = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/pagination/connectPagination"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function usePagination(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectPagination.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.usePagination = usePagination;
|
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "usePoweredBy", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return usePoweredBy;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _utils = require("instantsearch.js/cjs/lib/utils");
|
|
5
13
|
function usePoweredBy() {
|
|
6
|
-
var hostname =
|
|
14
|
+
var hostname = (0, _utils.safelyRunOnBrowser)(function(param) {
|
|
7
15
|
var window = param.window;
|
|
8
16
|
var _window_location;
|
|
9
17
|
return ((_window_location = window.location) === null || _window_location === void 0 ? void 0 : _window_location.hostname) || '';
|
|
@@ -16,5 +24,3 @@ function usePoweredBy() {
|
|
|
16
24
|
url: "https://www.algolia.com/?utm_source=react-instantsearch&utm_medium=website&utm_content=".concat(hostname, "&utm_campaign=poweredby")
|
|
17
25
|
};
|
|
18
26
|
}
|
|
19
|
-
|
|
20
|
-
exports.usePoweredBy = usePoweredBy;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useQueryRules", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useQueryRules;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectQueryRules = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/query-rules/connectQueryRules"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useQueryRules(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectQueryRules.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useQueryRules = useQueryRules;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useRange", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useRange;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectRange = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/range/connectRange"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useRange(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectRange.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useRange = useRange;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useRefinementList", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useRefinementList;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectRefinementList = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/refinement-list/connectRefinementList"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useRefinementList(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectRefinementList.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useRefinementList = useRefinementList;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useRelatedProducts", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useRelatedProducts;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectRelatedProducts = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/related-products/connectRelatedProducts"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useRelatedProducts(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectRelatedProducts.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useRelatedProducts = useRelatedProducts;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useSearchBox", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useSearchBox;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectSearchBox = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/search-box/connectSearchBox"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useSearchBox(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectSearchBox.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useSearchBox = useSearchBox;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useSortBy", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useSortBy;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectSortBy = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/sort-by/connectSortBy"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useSortBy(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectSortBy.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useSortBy = useSortBy;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useStats", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useStats;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectStats = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/stats/connectStats"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useStats(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectStats.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useStats = useStats;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useToggleRefinement", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useToggleRefinement;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectToggleRefinement = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/toggle-refinement/connectToggleRefinement"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useToggleRefinement(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectToggleRefinement.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useToggleRefinement = useToggleRefinement;
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useTrendingItems", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useTrendingItems;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
|
|
13
|
+
var _connectTrendingItems = /*#__PURE__*/ _interop_require_default._(require("instantsearch.js/cjs/connectors/trending-items/connectTrendingItems"));
|
|
14
|
+
var _useConnector = require("../hooks/useConnector");
|
|
6
15
|
function useTrendingItems(props, additionalWidgetProperties) {
|
|
7
|
-
return
|
|
16
|
+
return (0, _useConnector.useConnector)(_connectTrendingItems.default, props, additionalWidgetProperties);
|
|
8
17
|
}
|
|
9
|
-
|
|
10
|
-
exports.useTrendingItems = useTrendingItems;
|
|
@@ -1,19 +1,27 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
var
|
|
16
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useConnector", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useConnector;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _object_spread = require("@swc/helpers/_/_object_spread");
|
|
13
|
+
var _object_without_properties = require("@swc/helpers/_/_object_without_properties");
|
|
14
|
+
var _sliced_to_array = require("@swc/helpers/_/_sliced_to_array");
|
|
15
|
+
var _to_array = require("@swc/helpers/_/_to_array");
|
|
16
|
+
var _react = require("react");
|
|
17
|
+
var _dequal = require("../lib/dequal");
|
|
18
|
+
var _getIndexSearchResults = require("../lib/getIndexSearchResults");
|
|
19
|
+
var _useIndexContext = require("../lib/useIndexContext");
|
|
20
|
+
var _useInstantSearchContext = require("../lib/useInstantSearchContext");
|
|
21
|
+
var _useInstantSearchServerContext = require("../lib/useInstantSearchServerContext");
|
|
22
|
+
var _useInstantSearchSSRContext = require("../lib/useInstantSearchSSRContext");
|
|
23
|
+
var _useStableValue = require("../lib/useStableValue");
|
|
24
|
+
var _useWidget = require("../lib/useWidget");
|
|
17
25
|
function useConnector(connector) {
|
|
18
26
|
var _1 = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : void 0, _2 = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : void 0;
|
|
19
27
|
var _ref = [
|
|
@@ -22,16 +30,16 @@ function useConnector(connector) {
|
|
|
22
30
|
], _ref1 = _to_array._(_ref), tmp = _ref1[0], props = tmp === void 0 ? {} : tmp, _rest = _ref1.slice(1), _rest1 = _sliced_to_array._(_rest, 1), tmp1 = _rest1[0], _ref2 = tmp1 === void 0 ? {} : tmp1, _ref_skipSuspense = _ref2.skipSuspense, skipSuspense = _ref_skipSuspense === void 0 ? false : _ref_skipSuspense, additionalWidgetProperties = _object_without_properties._(_ref2, [
|
|
23
31
|
"skipSuspense"
|
|
24
32
|
]);
|
|
25
|
-
var serverContext =
|
|
26
|
-
var ssrContext =
|
|
27
|
-
var search =
|
|
28
|
-
var parentIndex =
|
|
29
|
-
var stableProps =
|
|
30
|
-
var stableAdditionalWidgetProperties =
|
|
31
|
-
var shouldSetStateRef =
|
|
32
|
-
var previousRenderStateRef =
|
|
33
|
-
var previousStatusRef =
|
|
34
|
-
var widget =
|
|
33
|
+
var serverContext = (0, _useInstantSearchServerContext.useInstantSearchServerContext)();
|
|
34
|
+
var ssrContext = (0, _useInstantSearchSSRContext.useInstantSearchSSRContext)();
|
|
35
|
+
var search = (0, _useInstantSearchContext.useInstantSearchContext)();
|
|
36
|
+
var parentIndex = (0, _useIndexContext.useIndexContext)();
|
|
37
|
+
var stableProps = (0, _useStableValue.useStableValue)(props);
|
|
38
|
+
var stableAdditionalWidgetProperties = (0, _useStableValue.useStableValue)(additionalWidgetProperties);
|
|
39
|
+
var shouldSetStateRef = (0, _react.useRef)(true);
|
|
40
|
+
var previousRenderStateRef = (0, _react.useRef)(null);
|
|
41
|
+
var previousStatusRef = (0, _react.useRef)(search.status);
|
|
42
|
+
var widget = (0, _react.useMemo)(function() {
|
|
35
43
|
var createWidget = connector(function(connectorState, isFirstRender) {
|
|
36
44
|
// We skip the `init` widget render because:
|
|
37
45
|
// - We rely on `getWidgetRenderState` to compute the initial state before
|
|
@@ -60,7 +68,7 @@ function useConnector(connector) {
|
|
|
60
68
|
// except for functions. We ignore function reference changes to avoid
|
|
61
69
|
// infinite loops. It's safe to omit them because they get updated
|
|
62
70
|
// every time another render param changes.
|
|
63
|
-
if (!
|
|
71
|
+
if (!(0, _dequal.dequal)(renderState, previousRenderStateRef.current, function(a, b) {
|
|
64
72
|
return (a === null || a === void 0 ? void 0 : a.constructor) === Function && (b === null || b === void 0 ? void 0 : b.constructor) === Function;
|
|
65
73
|
}) || instantSearchInstance.status !== previousStatusRef.current) {
|
|
66
74
|
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
@@ -80,7 +88,7 @@ function useConnector(connector) {
|
|
|
80
88
|
stableProps,
|
|
81
89
|
stableAdditionalWidgetProperties
|
|
82
90
|
]);
|
|
83
|
-
var _useState = _sliced_to_array._(
|
|
91
|
+
var _useState = _sliced_to_array._((0, _react.useState)(function() {
|
|
84
92
|
if (widget.getWidgetRenderState) {
|
|
85
93
|
var _widget_getWidgetSearchParameters;
|
|
86
94
|
// The helper exists because we've started InstantSearch.
|
|
@@ -89,7 +97,7 @@ function useConnector(connector) {
|
|
|
89
97
|
helper.state = ((_widget_getWidgetSearchParameters = widget.getWidgetSearchParameters) === null || _widget_getWidgetSearchParameters === void 0 ? void 0 : _widget_getWidgetSearchParameters.call(widget, helper.state, {
|
|
90
98
|
uiState: uiState
|
|
91
99
|
})) || helper.state;
|
|
92
|
-
var
|
|
100
|
+
var _getIndexSearchResults1 = (0, _getIndexSearchResults.getIndexSearchResults)(parentIndex), results = _getIndexSearchResults1.results, scopedResults = _getIndexSearchResults1.scopedResults, recommendResults = _getIndexSearchResults1.recommendResults;
|
|
93
101
|
// We get the widget render state by providing the same parameters as
|
|
94
102
|
// InstantSearch provides to the widget's `render` method.
|
|
95
103
|
// See https://github.com/algolia/instantsearch/blob/019cd18d0de6dd320284aa4890541b7fe2198c65/src/widgets/index/index.ts#L604-L617
|
|
@@ -115,7 +123,7 @@ function useConnector(connector) {
|
|
|
115
123
|
}
|
|
116
124
|
return {};
|
|
117
125
|
}), 2), state = _useState[0], setState = _useState[1];
|
|
118
|
-
|
|
126
|
+
(0, _useWidget.useWidget)({
|
|
119
127
|
widget: widget,
|
|
120
128
|
parentIndex: parentIndex,
|
|
121
129
|
props: stableProps,
|
|
@@ -124,5 +132,3 @@ function useConnector(connector) {
|
|
|
124
132
|
});
|
|
125
133
|
return state;
|
|
126
134
|
}
|
|
127
|
-
|
|
128
|
-
exports.useConnector = useConnector;
|
|
@@ -1,18 +1,26 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "useInstantSearch", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function() {
|
|
9
|
+
return useInstantSearch;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _to_consumable_array = require("@swc/helpers/_/_to_consumable_array");
|
|
13
|
+
var _react = require("react");
|
|
14
|
+
var _useInstantSearchContext = require("../lib/useInstantSearchContext");
|
|
15
|
+
var _useIsomorphicLayoutEffect = require("../lib/useIsomorphicLayoutEffect");
|
|
16
|
+
var _useSearchResults = require("../lib/useSearchResults");
|
|
17
|
+
var _useSearchState = require("../lib/useSearchState");
|
|
10
18
|
function useInstantSearch() {
|
|
11
19
|
var catchError = (arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}).catchError;
|
|
12
|
-
var search =
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
var addMiddlewares =
|
|
20
|
+
var search = (0, _useInstantSearchContext.useInstantSearchContext)();
|
|
21
|
+
var _useSearchState1 = (0, _useSearchState.useSearchState)(), uiState = _useSearchState1.uiState, setUiState = _useSearchState1.setUiState, indexUiState = _useSearchState1.indexUiState, setIndexUiState = _useSearchState1.setIndexUiState, renderState = _useSearchState1.renderState, indexRenderState = _useSearchState1.indexRenderState;
|
|
22
|
+
var _useSearchResults1 = (0, _useSearchResults.useSearchResults)(), results = _useSearchResults1.results, scopedResults = _useSearchResults1.scopedResults;
|
|
23
|
+
var addMiddlewares = (0, _react.useCallback)(function() {
|
|
16
24
|
for(var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++){
|
|
17
25
|
middlewares[_key] = arguments[_key];
|
|
18
26
|
}
|
|
@@ -25,12 +33,12 @@ function useInstantSearch() {
|
|
|
25
33
|
}, [
|
|
26
34
|
search
|
|
27
35
|
]);
|
|
28
|
-
var refresh =
|
|
36
|
+
var refresh = (0, _react.useCallback)(function() {
|
|
29
37
|
search.refresh();
|
|
30
38
|
}, [
|
|
31
39
|
search
|
|
32
40
|
]);
|
|
33
|
-
|
|
41
|
+
(0, _useIsomorphicLayoutEffect.useIsomorphicLayoutEffect)(function() {
|
|
34
42
|
if (catchError) {
|
|
35
43
|
var onError = function onError() {};
|
|
36
44
|
search.addListener('error', onError);
|
|
@@ -58,5 +66,3 @@ function useInstantSearch() {
|
|
|
58
66
|
error: search.error
|
|
59
67
|
};
|
|
60
68
|
}
|
|
61
|
-
|
|
62
|
-
exports.useInstantSearch = useInstantSearch;
|