react-instantsearch-core 6.14.0 → 6.18.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/connectors/connectBreadcrumb.js +1 -1
- package/dist/cjs/connectors/connectDynamicWidgets.js +33 -5
- package/dist/cjs/connectors/connectHierarchicalMenu.js +1 -1
- package/dist/cjs/connectors/connectPoweredBy.js +1 -1
- package/dist/cjs/core/context.js +1 -1
- package/dist/cjs/core/highlight.js +1 -1
- package/dist/cjs/core/indexUtils.js +2 -2
- package/dist/cjs/core/metadata.js +6 -2
- package/dist/cjs/core/translatable.js +1 -0
- package/dist/cjs/core/utils.js +5 -2
- package/dist/cjs/core/version.js +1 -1
- package/dist/cjs/index.js +69 -54
- package/dist/es/connectors/connectDynamicWidgets.js +32 -5
- package/dist/es/connectors/connectPoweredBy.js +1 -1
- package/dist/es/core/metadata.js +2 -1
- package/dist/es/core/translatable.js +1 -0
- package/dist/es/core/version.js +1 -1
- package/dist/es/index.js +10 -2
- package/dist/umd/ReactInstantSearchCore.js +48 -11
- package/dist/umd/ReactInstantSearchCore.js.map +1 -1
- package/dist/umd/ReactInstantSearchCore.min.js +2 -2
- package/dist/umd/ReactInstantSearchCore.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.
|
|
8
|
+
exports.getId = exports.default = void 0;
|
|
9
9
|
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
11
|
|
|
@@ -13,15 +13,20 @@ var _createConnector = _interopRequireDefault(require("../core/createConnector")
|
|
|
13
13
|
|
|
14
14
|
var _indexUtils = require("../core/indexUtils");
|
|
15
15
|
|
|
16
|
+
var MAX_WILDCARD_FACETS = 20;
|
|
17
|
+
|
|
16
18
|
var _default = (0, _createConnector.default)({
|
|
17
19
|
displayName: 'AlgoliaDynamicWidgets',
|
|
18
20
|
defaultProps: {
|
|
19
21
|
transformItems: function transformItems(items) {
|
|
20
22
|
return items;
|
|
21
|
-
}
|
|
23
|
+
},
|
|
24
|
+
maxValuesPerFacet: 20
|
|
22
25
|
},
|
|
23
26
|
propTypes: {
|
|
24
|
-
transformItems: _propTypes.default.func
|
|
27
|
+
transformItems: _propTypes.default.func,
|
|
28
|
+
facets: _propTypes.default.arrayOf(_propTypes.default.string),
|
|
29
|
+
maxValuesPerFacet: _propTypes.default.number
|
|
25
30
|
},
|
|
26
31
|
getProvidedProps: function getProvidedProps(props, _searchState, searchResults) {
|
|
27
32
|
var results = (0, _indexUtils.getResults)(searchResults, {
|
|
@@ -29,6 +34,10 @@ var _default = (0, _createConnector.default)({
|
|
|
29
34
|
multiIndexContext: props.indexContextValue
|
|
30
35
|
});
|
|
31
36
|
|
|
37
|
+
if (props.facets && !(Array.isArray(props.facets) && props.facets.length <= 1 && (props.facets[0] === '*' || props.facets[0] === undefined))) {
|
|
38
|
+
throw new Error("The `facets` prop only accepts [] or [\"*\"], you passed ".concat(JSON.stringify(props.facets)));
|
|
39
|
+
}
|
|
40
|
+
|
|
32
41
|
if (!results) {
|
|
33
42
|
return {
|
|
34
43
|
attributesToRender: []
|
|
@@ -36,11 +45,30 @@ var _default = (0, _createConnector.default)({
|
|
|
36
45
|
}
|
|
37
46
|
|
|
38
47
|
var facetOrder = results.renderingContent && results.renderingContent.facetOrdering && results.renderingContent.facetOrdering.facets && results.renderingContent.facetOrdering.facets.order || [];
|
|
48
|
+
var attributesToRender = props.transformItems(facetOrder, {
|
|
49
|
+
results: results
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
if (attributesToRender.length > MAX_WILDCARD_FACETS && !props.facets) {
|
|
53
|
+
// eslint-disable-next-line no-console
|
|
54
|
+
console.warn("More than ".concat(MAX_WILDCARD_FACETS, " facets are requested to be displayed without explicitly setting which facets to retrieve. This could have a performance impact. Set \"facets\" to [] to do two smaller network requests, or explicitly to ['*'] to avoid this warning."));
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (props.maxValuesPerFacet < results._state.maxValuesPerFacet) {
|
|
58
|
+
// eslint-disable-next-line no-console
|
|
59
|
+
console.warn("The maxValuesPerFacet set by dynamic widgets (".concat(props.maxValuesPerFacet, ") is smaller than one of the limits set by a widget (").concat(results._state.maxValuesPerFacet, "). This causes a mismatch in query parameters and thus an extra network request when that widget is mounted."));
|
|
60
|
+
}
|
|
61
|
+
|
|
39
62
|
return {
|
|
40
|
-
attributesToRender:
|
|
41
|
-
results: results
|
|
42
|
-
})
|
|
63
|
+
attributesToRender: attributesToRender
|
|
43
64
|
};
|
|
65
|
+
},
|
|
66
|
+
getSearchParameters: function getSearchParameters(searchParameters, props) {
|
|
67
|
+
return (props.facets || ['*']).reduce(function (acc, curr) {
|
|
68
|
+
return acc.addFacet(curr);
|
|
69
|
+
}, searchParameters.setQueryParameters({
|
|
70
|
+
maxValuesPerFacet: Math.max(props.maxValuesPerFacet || 0, searchParameters.maxValuesPerFacet || 0)
|
|
71
|
+
}));
|
|
44
72
|
}
|
|
45
73
|
});
|
|
46
74
|
|
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.
|
|
8
|
+
exports.getId = exports.default = void 0;
|
|
9
9
|
|
|
10
10
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
11
|
|
|
@@ -19,7 +19,7 @@ var _createConnector = _interopRequireDefault(require("../core/createConnector")
|
|
|
19
19
|
var _default = (0, _createConnector.default)({
|
|
20
20
|
displayName: 'AlgoliaPoweredBy',
|
|
21
21
|
getProvidedProps: function getProvidedProps() {
|
|
22
|
-
var hostname = typeof window === 'undefined' ? '' : window.location.hostname;
|
|
22
|
+
var hostname = typeof window === 'undefined' || typeof window.location === 'undefined' ? '' : window.location.hostname;
|
|
23
23
|
var url = 'https://www.algolia.com/?' + 'utm_source=react-instantsearch&' + 'utm_medium=website&' + "utm_content=".concat(hostname, "&") + 'utm_campaign=poweredby';
|
|
24
24
|
return {
|
|
25
25
|
url: url
|
package/dist/cjs/core/context.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.instantSearchContext = exports.InstantSearchProvider = exports.InstantSearchConsumer = exports.IndexProvider = exports.IndexConsumer = void 0;
|
|
7
7
|
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
|
|
@@ -5,12 +5,12 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
+
exports.cleanUpValue = cleanUpValue;
|
|
9
|
+
exports.getCurrentRefinementValue = getCurrentRefinementValue;
|
|
8
10
|
exports.getIndexId = getIndexId;
|
|
9
11
|
exports.getResults = getResults;
|
|
10
12
|
exports.hasMultipleIndices = hasMultipleIndices;
|
|
11
13
|
exports.refineValue = refineValue;
|
|
12
|
-
exports.getCurrentRefinementValue = getCurrentRefinementValue;
|
|
13
|
-
exports.cleanUpValue = cleanUpValue;
|
|
14
14
|
|
|
15
15
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
16
|
|
|
@@ -1,14 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
3
5
|
Object.defineProperty(exports, "__esModule", {
|
|
4
6
|
value: true
|
|
5
7
|
});
|
|
6
|
-
exports.isMetadataEnabled = isMetadataEnabled;
|
|
7
8
|
exports.getMetadataPayload = getMetadataPayload;
|
|
8
9
|
exports.injectMetadata = injectMetadata;
|
|
10
|
+
exports.isMetadataEnabled = isMetadataEnabled;
|
|
11
|
+
|
|
12
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
9
13
|
|
|
10
14
|
function isMetadataEnabled() {
|
|
11
|
-
return typeof window
|
|
15
|
+
return (typeof window === "undefined" ? "undefined" : (0, _typeof2.default)(window)) === 'object' && (0, _typeof2.default)(window.navigator) === 'object' && typeof window.navigator.userAgent === 'string' && window.navigator.userAgent.includes('Algolia Crawler') && (0, _typeof2.default)(window.document) === 'object';
|
|
12
16
|
}
|
|
13
17
|
|
|
14
18
|
function getMetadataPayload(widgets, searchClient) {
|
|
@@ -40,6 +40,7 @@ var withKeysPropType = function withKeysPropType(keys) {
|
|
|
40
40
|
var prop = props[propName];
|
|
41
41
|
|
|
42
42
|
if (prop) {
|
|
43
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
43
44
|
for (var _i = 0, _Object$keys = Object.keys(prop); _i < _Object$keys.length; _i++) {
|
|
44
45
|
var key = _Object$keys[_i];
|
|
45
46
|
|
package/dist/cjs/core/utils.js
CHANGED
|
@@ -7,11 +7,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.addAbsolutePositions = addAbsolutePositions;
|
|
9
9
|
exports.addQueryID = addQueryID;
|
|
10
|
+
exports.defer = void 0;
|
|
10
11
|
exports.find = find;
|
|
12
|
+
exports.getDisplayName = void 0;
|
|
13
|
+
exports.getObjectType = getObjectType;
|
|
14
|
+
exports.getPropertyByPath = void 0;
|
|
11
15
|
exports.objectHasKeys = objectHasKeys;
|
|
12
16
|
exports.omit = omit;
|
|
13
|
-
exports.
|
|
14
|
-
exports.getPropertyByPath = exports.removeEmptyArraysFromObject = exports.removeEmptyKey = exports.defer = exports.getDisplayName = exports.shallowEqual = void 0;
|
|
17
|
+
exports.shallowEqual = exports.removeEmptyKey = exports.removeEmptyArraysFromObject = void 0;
|
|
15
18
|
|
|
16
19
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
17
20
|
|
package/dist/cjs/core/version.js
CHANGED
package/dist/cjs/index.js
CHANGED
|
@@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
var _exportNames = {
|
|
9
|
+
ExperimentalDynamicWidgets: true,
|
|
10
|
+
EXPERIMENTAL_connectDynamicWidgets: true,
|
|
9
11
|
createConnector: true,
|
|
10
12
|
instantSearchContext: true,
|
|
11
13
|
InstantSearchConsumer: true,
|
|
@@ -15,7 +17,7 @@ var _exportNames = {
|
|
|
15
17
|
translatable: true,
|
|
16
18
|
Configure: true,
|
|
17
19
|
ExperimentalConfigureRelatedItems: true,
|
|
18
|
-
|
|
20
|
+
DynamicWidgets: true,
|
|
19
21
|
QueryRuleContext: true,
|
|
20
22
|
Index: true,
|
|
21
23
|
InstantSearch: true,
|
|
@@ -24,7 +26,7 @@ var _exportNames = {
|
|
|
24
26
|
connectConfigure: true,
|
|
25
27
|
EXPERIMENTAL_connectConfigureRelatedItems: true,
|
|
26
28
|
connectCurrentRefinements: true,
|
|
27
|
-
|
|
29
|
+
connectDynamicWidgets: true,
|
|
28
30
|
connectGeoSearch: true,
|
|
29
31
|
connectHierarchicalMenu: true,
|
|
30
32
|
connectHighlight: true,
|
|
@@ -48,64 +50,60 @@ var _exportNames = {
|
|
|
48
50
|
connectHitInsights: true,
|
|
49
51
|
connectVoiceSearch: true
|
|
50
52
|
};
|
|
51
|
-
Object.defineProperty(exports, "
|
|
53
|
+
Object.defineProperty(exports, "Configure", {
|
|
52
54
|
enumerable: true,
|
|
53
55
|
get: function get() {
|
|
54
|
-
return
|
|
56
|
+
return _Configure.default;
|
|
55
57
|
}
|
|
56
58
|
});
|
|
57
|
-
Object.defineProperty(exports, "
|
|
59
|
+
Object.defineProperty(exports, "DynamicWidgets", {
|
|
58
60
|
enumerable: true,
|
|
59
61
|
get: function get() {
|
|
60
|
-
return
|
|
62
|
+
return _DynamicWidgets.default;
|
|
61
63
|
}
|
|
62
64
|
});
|
|
63
|
-
Object.defineProperty(exports, "
|
|
65
|
+
Object.defineProperty(exports, "EXPERIMENTAL_connectConfigureRelatedItems", {
|
|
64
66
|
enumerable: true,
|
|
65
67
|
get: function get() {
|
|
66
|
-
return
|
|
68
|
+
return _connectConfigureRelatedItems.default;
|
|
67
69
|
}
|
|
68
70
|
});
|
|
69
|
-
|
|
71
|
+
exports.EXPERIMENTAL_connectDynamicWidgets = void 0;
|
|
72
|
+
Object.defineProperty(exports, "ExperimentalConfigureRelatedItems", {
|
|
70
73
|
enumerable: true,
|
|
71
74
|
get: function get() {
|
|
72
|
-
return
|
|
75
|
+
return _ConfigureRelatedItems.default;
|
|
73
76
|
}
|
|
74
77
|
});
|
|
78
|
+
exports.ExperimentalDynamicWidgets = void 0;
|
|
75
79
|
Object.defineProperty(exports, "HIGHLIGHT_TAGS", {
|
|
76
80
|
enumerable: true,
|
|
77
81
|
get: function get() {
|
|
78
82
|
return _highlight.HIGHLIGHT_TAGS;
|
|
79
83
|
}
|
|
80
84
|
});
|
|
81
|
-
Object.defineProperty(exports, "
|
|
82
|
-
enumerable: true,
|
|
83
|
-
get: function get() {
|
|
84
|
-
return _version.default;
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
Object.defineProperty(exports, "translatable", {
|
|
85
|
+
Object.defineProperty(exports, "Index", {
|
|
88
86
|
enumerable: true,
|
|
89
87
|
get: function get() {
|
|
90
|
-
return
|
|
88
|
+
return _Index.default;
|
|
91
89
|
}
|
|
92
90
|
});
|
|
93
|
-
Object.defineProperty(exports, "
|
|
91
|
+
Object.defineProperty(exports, "InstantSearch", {
|
|
94
92
|
enumerable: true,
|
|
95
93
|
get: function get() {
|
|
96
|
-
return
|
|
94
|
+
return _InstantSearch.default;
|
|
97
95
|
}
|
|
98
96
|
});
|
|
99
|
-
Object.defineProperty(exports, "
|
|
97
|
+
Object.defineProperty(exports, "InstantSearchConsumer", {
|
|
100
98
|
enumerable: true,
|
|
101
99
|
get: function get() {
|
|
102
|
-
return
|
|
100
|
+
return _context.InstantSearchConsumer;
|
|
103
101
|
}
|
|
104
102
|
});
|
|
105
|
-
Object.defineProperty(exports, "
|
|
103
|
+
Object.defineProperty(exports, "InstantSearchProvider", {
|
|
106
104
|
enumerable: true,
|
|
107
105
|
get: function get() {
|
|
108
|
-
return
|
|
106
|
+
return _context.InstantSearchProvider;
|
|
109
107
|
}
|
|
110
108
|
});
|
|
111
109
|
Object.defineProperty(exports, "QueryRuleContext", {
|
|
@@ -114,18 +112,6 @@ Object.defineProperty(exports, "QueryRuleContext", {
|
|
|
114
112
|
return _QueryRuleContext.default;
|
|
115
113
|
}
|
|
116
114
|
});
|
|
117
|
-
Object.defineProperty(exports, "Index", {
|
|
118
|
-
enumerable: true,
|
|
119
|
-
get: function get() {
|
|
120
|
-
return _Index.default;
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
Object.defineProperty(exports, "InstantSearch", {
|
|
124
|
-
enumerable: true,
|
|
125
|
-
get: function get() {
|
|
126
|
-
return _InstantSearch.default;
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
115
|
Object.defineProperty(exports, "connectAutoComplete", {
|
|
130
116
|
enumerable: true,
|
|
131
117
|
get: function get() {
|
|
@@ -144,19 +130,13 @@ Object.defineProperty(exports, "connectConfigure", {
|
|
|
144
130
|
return _connectConfigure.default;
|
|
145
131
|
}
|
|
146
132
|
});
|
|
147
|
-
Object.defineProperty(exports, "EXPERIMENTAL_connectConfigureRelatedItems", {
|
|
148
|
-
enumerable: true,
|
|
149
|
-
get: function get() {
|
|
150
|
-
return _connectConfigureRelatedItems.default;
|
|
151
|
-
}
|
|
152
|
-
});
|
|
153
133
|
Object.defineProperty(exports, "connectCurrentRefinements", {
|
|
154
134
|
enumerable: true,
|
|
155
135
|
get: function get() {
|
|
156
136
|
return _connectCurrentRefinements.default;
|
|
157
137
|
}
|
|
158
138
|
});
|
|
159
|
-
Object.defineProperty(exports, "
|
|
139
|
+
Object.defineProperty(exports, "connectDynamicWidgets", {
|
|
160
140
|
enumerable: true,
|
|
161
141
|
get: function get() {
|
|
162
142
|
return _connectDynamicWidgets.default;
|
|
@@ -180,6 +160,12 @@ Object.defineProperty(exports, "connectHighlight", {
|
|
|
180
160
|
return _connectHighlight.default;
|
|
181
161
|
}
|
|
182
162
|
});
|
|
163
|
+
Object.defineProperty(exports, "connectHitInsights", {
|
|
164
|
+
enumerable: true,
|
|
165
|
+
get: function get() {
|
|
166
|
+
return _connectHitInsights.default;
|
|
167
|
+
}
|
|
168
|
+
});
|
|
183
169
|
Object.defineProperty(exports, "connectHits", {
|
|
184
170
|
enumerable: true,
|
|
185
171
|
get: function get() {
|
|
@@ -240,22 +226,22 @@ Object.defineProperty(exports, "connectRefinementList", {
|
|
|
240
226
|
return _connectRefinementList.default;
|
|
241
227
|
}
|
|
242
228
|
});
|
|
243
|
-
Object.defineProperty(exports, "
|
|
229
|
+
Object.defineProperty(exports, "connectRelevantSort", {
|
|
244
230
|
enumerable: true,
|
|
245
231
|
get: function get() {
|
|
246
|
-
return
|
|
232
|
+
return _connectRelevantSort.default;
|
|
247
233
|
}
|
|
248
234
|
});
|
|
249
|
-
Object.defineProperty(exports, "
|
|
235
|
+
Object.defineProperty(exports, "connectScrollTo", {
|
|
250
236
|
enumerable: true,
|
|
251
237
|
get: function get() {
|
|
252
|
-
return
|
|
238
|
+
return _connectScrollTo.default;
|
|
253
239
|
}
|
|
254
240
|
});
|
|
255
|
-
Object.defineProperty(exports, "
|
|
241
|
+
Object.defineProperty(exports, "connectSearchBox", {
|
|
256
242
|
enumerable: true,
|
|
257
243
|
get: function get() {
|
|
258
|
-
return
|
|
244
|
+
return _connectSearchBox.default;
|
|
259
245
|
}
|
|
260
246
|
});
|
|
261
247
|
Object.defineProperty(exports, "connectSortBy", {
|
|
@@ -282,16 +268,34 @@ Object.defineProperty(exports, "connectToggleRefinement", {
|
|
|
282
268
|
return _connectToggleRefinement.default;
|
|
283
269
|
}
|
|
284
270
|
});
|
|
285
|
-
Object.defineProperty(exports, "
|
|
271
|
+
Object.defineProperty(exports, "connectVoiceSearch", {
|
|
286
272
|
enumerable: true,
|
|
287
273
|
get: function get() {
|
|
288
|
-
return
|
|
274
|
+
return _connectVoiceSearch.default;
|
|
289
275
|
}
|
|
290
276
|
});
|
|
291
|
-
Object.defineProperty(exports, "
|
|
277
|
+
Object.defineProperty(exports, "createConnector", {
|
|
292
278
|
enumerable: true,
|
|
293
279
|
get: function get() {
|
|
294
|
-
return
|
|
280
|
+
return _createConnector.default;
|
|
281
|
+
}
|
|
282
|
+
});
|
|
283
|
+
Object.defineProperty(exports, "instantSearchContext", {
|
|
284
|
+
enumerable: true,
|
|
285
|
+
get: function get() {
|
|
286
|
+
return _context.instantSearchContext;
|
|
287
|
+
}
|
|
288
|
+
});
|
|
289
|
+
Object.defineProperty(exports, "translatable", {
|
|
290
|
+
enumerable: true,
|
|
291
|
+
get: function get() {
|
|
292
|
+
return _translatable.default;
|
|
293
|
+
}
|
|
294
|
+
});
|
|
295
|
+
Object.defineProperty(exports, "version", {
|
|
296
|
+
enumerable: true,
|
|
297
|
+
get: function get() {
|
|
298
|
+
return _version.default;
|
|
295
299
|
}
|
|
296
300
|
});
|
|
297
301
|
|
|
@@ -385,4 +389,15 @@ Object.keys(_types).forEach(function (key) {
|
|
|
385
389
|
return _types[key];
|
|
386
390
|
}
|
|
387
391
|
});
|
|
388
|
-
});
|
|
392
|
+
});
|
|
393
|
+
// Core
|
|
394
|
+
// Utils
|
|
395
|
+
// Widgets
|
|
396
|
+
|
|
397
|
+
/** @deprecated use DynamicWidgets */
|
|
398
|
+
var ExperimentalDynamicWidgets = _DynamicWidgets.default;
|
|
399
|
+
exports.ExperimentalDynamicWidgets = ExperimentalDynamicWidgets;
|
|
400
|
+
|
|
401
|
+
/** @deprecated use connectDynamicWidgets */
|
|
402
|
+
var EXPERIMENTAL_connectDynamicWidgets = _connectDynamicWidgets.default;
|
|
403
|
+
exports.EXPERIMENTAL_connectDynamicWidgets = EXPERIMENTAL_connectDynamicWidgets;
|
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import PropTypes from 'prop-types';
|
|
2
2
|
import createConnector from '../core/createConnector';
|
|
3
3
|
import { getResults } from '../core/indexUtils';
|
|
4
|
+
var MAX_WILDCARD_FACETS = 20;
|
|
4
5
|
export default createConnector({
|
|
5
6
|
displayName: 'AlgoliaDynamicWidgets',
|
|
6
7
|
defaultProps: {
|
|
7
8
|
transformItems: function transformItems(items) {
|
|
8
9
|
return items;
|
|
9
|
-
}
|
|
10
|
+
},
|
|
11
|
+
maxValuesPerFacet: 20
|
|
10
12
|
},
|
|
11
13
|
propTypes: {
|
|
12
|
-
transformItems: PropTypes.func
|
|
14
|
+
transformItems: PropTypes.func,
|
|
15
|
+
facets: PropTypes.arrayOf(PropTypes.string),
|
|
16
|
+
maxValuesPerFacet: PropTypes.number
|
|
13
17
|
},
|
|
14
18
|
getProvidedProps: function getProvidedProps(props, _searchState, searchResults) {
|
|
15
19
|
var results = getResults(searchResults, {
|
|
@@ -17,6 +21,10 @@ export default createConnector({
|
|
|
17
21
|
multiIndexContext: props.indexContextValue
|
|
18
22
|
});
|
|
19
23
|
|
|
24
|
+
if (props.facets && !(Array.isArray(props.facets) && props.facets.length <= 1 && (props.facets[0] === '*' || props.facets[0] === undefined))) {
|
|
25
|
+
throw new Error("The `facets` prop only accepts [] or [\"*\"], you passed ".concat(JSON.stringify(props.facets)));
|
|
26
|
+
}
|
|
27
|
+
|
|
20
28
|
if (!results) {
|
|
21
29
|
return {
|
|
22
30
|
attributesToRender: []
|
|
@@ -24,10 +32,29 @@ export default createConnector({
|
|
|
24
32
|
}
|
|
25
33
|
|
|
26
34
|
var facetOrder = results.renderingContent && results.renderingContent.facetOrdering && results.renderingContent.facetOrdering.facets && results.renderingContent.facetOrdering.facets.order || [];
|
|
35
|
+
var attributesToRender = props.transformItems(facetOrder, {
|
|
36
|
+
results: results
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
if (attributesToRender.length > MAX_WILDCARD_FACETS && !props.facets) {
|
|
40
|
+
// eslint-disable-next-line no-console
|
|
41
|
+
console.warn("More than ".concat(MAX_WILDCARD_FACETS, " facets are requested to be displayed without explicitly setting which facets to retrieve. This could have a performance impact. Set \"facets\" to [] to do two smaller network requests, or explicitly to ['*'] to avoid this warning."));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
if (props.maxValuesPerFacet < results._state.maxValuesPerFacet) {
|
|
45
|
+
// eslint-disable-next-line no-console
|
|
46
|
+
console.warn("The maxValuesPerFacet set by dynamic widgets (".concat(props.maxValuesPerFacet, ") is smaller than one of the limits set by a widget (").concat(results._state.maxValuesPerFacet, "). This causes a mismatch in query parameters and thus an extra network request when that widget is mounted."));
|
|
47
|
+
}
|
|
48
|
+
|
|
27
49
|
return {
|
|
28
|
-
attributesToRender:
|
|
29
|
-
results: results
|
|
30
|
-
})
|
|
50
|
+
attributesToRender: attributesToRender
|
|
31
51
|
};
|
|
52
|
+
},
|
|
53
|
+
getSearchParameters: function getSearchParameters(searchParameters, props) {
|
|
54
|
+
return (props.facets || ['*']).reduce(function (acc, curr) {
|
|
55
|
+
return acc.addFacet(curr);
|
|
56
|
+
}, searchParameters.setQueryParameters({
|
|
57
|
+
maxValuesPerFacet: Math.max(props.maxValuesPerFacet || 0, searchParameters.maxValuesPerFacet || 0)
|
|
58
|
+
}));
|
|
32
59
|
}
|
|
33
60
|
});
|
|
@@ -10,7 +10,7 @@ import createConnector from '../core/createConnector';
|
|
|
10
10
|
export default createConnector({
|
|
11
11
|
displayName: 'AlgoliaPoweredBy',
|
|
12
12
|
getProvidedProps: function getProvidedProps() {
|
|
13
|
-
var hostname = typeof window === 'undefined' ? '' : window.location.hostname;
|
|
13
|
+
var hostname = typeof window === 'undefined' || typeof window.location === 'undefined' ? '' : window.location.hostname;
|
|
14
14
|
var url = 'https://www.algolia.com/?' + 'utm_source=react-instantsearch&' + 'utm_medium=website&' + "utm_content=".concat(hostname, "&") + 'utm_campaign=poweredby';
|
|
15
15
|
return {
|
|
16
16
|
url: url
|
package/dist/es/core/metadata.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import _typeof from "@babel/runtime/helpers/esm/typeof";
|
|
1
2
|
export function isMetadataEnabled() {
|
|
2
|
-
return typeof window
|
|
3
|
+
return (typeof window === "undefined" ? "undefined" : _typeof(window)) === 'object' && _typeof(window.navigator) === 'object' && typeof window.navigator.userAgent === 'string' && window.navigator.userAgent.includes('Algolia Crawler') && _typeof(window.document) === 'object';
|
|
3
4
|
}
|
|
4
5
|
export function getMetadataPayload(widgets, searchClient) {
|
|
5
6
|
var internalProps = ['contextValue', 'indexContextValue'];
|
|
@@ -18,6 +18,7 @@ var withKeysPropType = function withKeysPropType(keys) {
|
|
|
18
18
|
var prop = props[propName];
|
|
19
19
|
|
|
20
20
|
if (prop) {
|
|
21
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
21
22
|
for (var _i = 0, _Object$keys = Object.keys(prop); _i < _Object$keys.length; _i++) {
|
|
22
23
|
var key = _Object$keys[_i];
|
|
23
24
|
|
package/dist/es/core/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export default '6.
|
|
1
|
+
export default '6.18.0';
|
package/dist/es/index.js
CHANGED
|
@@ -8,7 +8,11 @@ export { default as translatable } from './core/translatable'; // Widgets
|
|
|
8
8
|
|
|
9
9
|
export { default as Configure } from './widgets/Configure';
|
|
10
10
|
export { default as ExperimentalConfigureRelatedItems } from './widgets/ConfigureRelatedItems';
|
|
11
|
-
|
|
11
|
+
import { default as DynamicWidgets } from './widgets/DynamicWidgets';
|
|
12
|
+
/** @deprecated use DynamicWidgets */
|
|
13
|
+
|
|
14
|
+
var ExperimentalDynamicWidgets = DynamicWidgets;
|
|
15
|
+
export { ExperimentalDynamicWidgets, DynamicWidgets };
|
|
12
16
|
export { default as QueryRuleContext } from './widgets/QueryRuleContext';
|
|
13
17
|
export { default as Index } from './widgets/Index';
|
|
14
18
|
export { default as InstantSearch } from './widgets/InstantSearch'; // Connectors
|
|
@@ -18,7 +22,11 @@ export { default as connectBreadcrumb } from './connectors/connectBreadcrumb';
|
|
|
18
22
|
export { default as connectConfigure } from './connectors/connectConfigure';
|
|
19
23
|
export { default as EXPERIMENTAL_connectConfigureRelatedItems } from './connectors/connectConfigureRelatedItems';
|
|
20
24
|
export { default as connectCurrentRefinements } from './connectors/connectCurrentRefinements';
|
|
21
|
-
|
|
25
|
+
import { default as connectDynamicWidgets } from './connectors/connectDynamicWidgets';
|
|
26
|
+
/** @deprecated use connectDynamicWidgets */
|
|
27
|
+
|
|
28
|
+
var EXPERIMENTAL_connectDynamicWidgets = connectDynamicWidgets;
|
|
29
|
+
export { connectDynamicWidgets, EXPERIMENTAL_connectDynamicWidgets };
|
|
22
30
|
export { default as connectGeoSearch } from './connectors/connectGeoSearch';
|
|
23
31
|
export { default as connectHierarchicalMenu } from './connectors/connectHierarchicalMenu';
|
|
24
32
|
export { default as connectHighlight } from './connectors/connectHighlight';
|