instantsearch.js 4.46.0 → 4.46.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -1
- package/cjs/connectors/toggle-refinement/connectToggleRefinement.js +3 -1
- package/cjs/helpers/components/Highlight.js +7 -7
- package/cjs/helpers/components/ReverseHighlight.js +7 -7
- package/cjs/helpers/components/ReverseSnippet.js +7 -7
- package/cjs/helpers/components/Snippet.js +7 -7
- package/cjs/lib/InstantSearch.js +33 -24
- package/cjs/lib/utils/capitalize.js +2 -5
- package/cjs/lib/utils/checkIndexUiState.js +3 -5
- package/cjs/lib/utils/checkRendering.js +4 -9
- package/cjs/lib/utils/clearRefinements.js +3 -9
- package/cjs/lib/utils/concatHighlightedParts.js +1 -1
- package/cjs/lib/utils/createSendEventForFacet.js +2 -4
- package/cjs/lib/utils/defer.js +3 -6
- package/cjs/lib/utils/detect-insights-client.js +1 -1
- package/cjs/lib/utils/documentation.js +6 -9
- package/cjs/lib/utils/escape-highlight.js +4 -6
- package/cjs/lib/utils/escape-html.js +60 -0
- package/cjs/lib/utils/find.js +2 -5
- package/cjs/lib/utils/findIndex.js +2 -5
- package/cjs/lib/utils/getContainerNode.js +4 -9
- package/cjs/lib/utils/getHighlightFromSiblings.js +3 -5
- package/cjs/lib/utils/getHighlightedParts.js +1 -1
- package/cjs/lib/utils/getObjectType.js +2 -5
- package/cjs/lib/utils/getPropertyByPath.js +2 -5
- package/cjs/lib/utils/getRefinements.js +4 -6
- package/cjs/lib/utils/index.js +562 -440
- package/cjs/lib/utils/isDomElement.js +2 -5
- package/cjs/lib/utils/isEqual.js +2 -5
- package/cjs/lib/utils/isFacetRefined.js +1 -1
- package/cjs/lib/utils/isFiniteNumber.js +3 -5
- package/cjs/lib/utils/isIndexWidget.js +10 -0
- package/cjs/lib/utils/isPlainObject.js +2 -5
- package/cjs/lib/utils/isSpecialClick.js +2 -5
- package/cjs/lib/utils/logger.js +3 -5
- package/cjs/lib/utils/mergeSearchParameters.js +7 -10
- package/cjs/lib/utils/noop.js +2 -5
- package/cjs/lib/utils/prepareTemplateProps.js +4 -9
- package/cjs/lib/utils/range.js +2 -5
- package/cjs/lib/utils/renderTemplate.js +2 -5
- package/cjs/lib/utils/resolveSearchParameters.js +3 -6
- package/cjs/lib/utils/reverseHighlightedParts.js +3 -5
- package/cjs/lib/utils/setIndexHelperState.js +28 -0
- package/cjs/lib/utils/toArray.js +2 -5
- package/cjs/lib/utils/uniq.js +2 -5
- package/cjs/lib/version.js +1 -1
- package/cjs/middlewares/createInsightsMiddleware.js +23 -30
- package/cjs/middlewares/createMetadataMiddleware.js +1 -0
- package/cjs/middlewares/createRouterMiddleware.js +1 -0
- package/cjs/widgets/index/index.js +8 -12
- package/dist/instantsearch.development.d.ts +11 -3
- package/dist/instantsearch.development.js +2242 -2181
- package/dist/instantsearch.development.js.map +1 -1
- package/dist/instantsearch.production.d.ts +11 -3
- package/dist/instantsearch.production.min.d.ts +11 -3
- package/dist/instantsearch.production.min.js +2 -2
- package/dist/instantsearch.production.min.js.map +1 -1
- package/es/components/Breadcrumb/Breadcrumb.d.ts +1 -1
- package/es/components/ClearRefinements/ClearRefinements.d.ts +1 -1
- package/es/components/GeoSearchControls/GeoSearchControls.d.ts +1 -1
- package/es/components/Hits/Hits.d.ts +1 -2
- package/es/components/RefinementList/RefinementList.d.ts +1 -1
- package/es/components/Template/Template.d.ts +1 -2
- package/es/components/ToggleRefinement/ToggleRefinement.d.ts +1 -4
- package/es/components/ToggleRefinement/ToggleRefinement.js +0 -4
- package/es/connectors/toggle-refinement/connectToggleRefinement.d.ts +3 -2
- package/es/connectors/toggle-refinement/connectToggleRefinement.js +3 -1
- package/es/helpers/components/Highlight.js +7 -5
- package/es/helpers/components/ReverseHighlight.js +7 -5
- package/es/helpers/components/ReverseSnippet.js +7 -5
- package/es/helpers/components/Snippet.js +7 -5
- package/es/lib/InstantSearch.d.ts +6 -1
- package/es/lib/InstantSearch.js +34 -21
- package/es/lib/utils/capitalize.d.ts +1 -2
- package/es/lib/utils/capitalize.js +2 -4
- package/es/lib/utils/checkIndexUiState.js +1 -1
- package/es/lib/utils/checkRendering.d.ts +1 -2
- package/es/lib/utils/checkRendering.js +3 -6
- package/es/lib/utils/clearRefinements.d.ts +4 -8
- package/es/lib/utils/clearRefinements.js +3 -8
- package/es/lib/utils/concatHighlightedParts.d.ts +1 -1
- package/es/lib/utils/concatHighlightedParts.js +1 -1
- package/es/lib/utils/createSendEventForFacet.js +1 -1
- package/es/lib/utils/createSendEventForHits.d.ts +0 -3
- package/es/lib/utils/createSendEventForHits.js +0 -3
- package/es/lib/utils/defer.d.ts +2 -2
- package/es/lib/utils/defer.js +2 -5
- package/es/lib/utils/detect-insights-client.d.ts +1 -1
- package/es/lib/utils/detect-insights-client.js +1 -1
- package/es/lib/utils/documentation.d.ts +2 -2
- package/es/lib/utils/documentation.js +4 -4
- package/es/lib/utils/escape-highlight.js +2 -2
- package/es/lib/utils/{escape.d.ts → escape-html.d.ts} +6 -2
- package/es/lib/utils/escape-html.js +51 -0
- package/es/lib/utils/escapeFacetValue.d.ts +1 -1
- package/es/lib/utils/find.d.ts +1 -2
- package/es/lib/utils/find.js +2 -4
- package/es/lib/utils/findIndex.d.ts +1 -2
- package/es/lib/utils/findIndex.js +2 -4
- package/es/lib/utils/getContainerNode.d.ts +1 -2
- package/es/lib/utils/getContainerNode.js +3 -5
- package/es/lib/utils/getHighlightFromSiblings.d.ts +1 -1
- package/es/lib/utils/getHighlightFromSiblings.js +2 -2
- package/es/lib/utils/getHighlightedParts.d.ts +1 -1
- package/es/lib/utils/getHighlightedParts.js +1 -1
- package/es/lib/utils/getObjectType.d.ts +1 -2
- package/es/lib/utils/getObjectType.js +2 -4
- package/es/lib/utils/getPropertyByPath.d.ts +1 -2
- package/es/lib/utils/getPropertyByPath.js +2 -4
- package/es/lib/utils/getRefinements.d.ts +1 -1
- package/es/lib/utils/getRefinements.js +2 -2
- package/es/lib/utils/index.d.ts +46 -46
- package/es/lib/utils/index.js +46 -46
- package/es/lib/utils/isDomElement.d.ts +1 -2
- package/es/lib/utils/isDomElement.js +2 -4
- package/es/lib/utils/isEqual.d.ts +1 -2
- package/es/lib/utils/isEqual.js +2 -4
- package/es/lib/utils/isFacetRefined.d.ts +1 -1
- package/es/lib/utils/isFacetRefined.js +1 -1
- package/es/lib/utils/isFiniteNumber.d.ts +1 -2
- package/es/lib/utils/isFiniteNumber.js +3 -4
- package/es/lib/utils/isIndexWidget.d.ts +3 -0
- package/es/lib/utils/isIndexWidget.js +3 -0
- package/es/lib/utils/isPlainObject.d.ts +1 -2
- package/es/lib/utils/isPlainObject.js +2 -4
- package/es/lib/utils/isSpecialClick.d.ts +1 -2
- package/es/lib/utils/isSpecialClick.js +2 -4
- package/es/lib/utils/logger.js +1 -1
- package/es/lib/utils/mergeSearchParameters.d.ts +1 -2
- package/es/lib/utils/mergeSearchParameters.js +4 -6
- package/es/lib/utils/noop.d.ts +1 -2
- package/es/lib/utils/noop.js +1 -3
- package/es/lib/utils/prepareTemplateProps.d.ts +2 -2
- package/es/lib/utils/prepareTemplateProps.js +3 -5
- package/es/lib/utils/range.d.ts +2 -2
- package/es/lib/utils/range.js +2 -4
- package/es/lib/utils/renderTemplate.d.ts +1 -2
- package/es/lib/utils/renderTemplate.js +2 -4
- package/es/lib/utils/resolveSearchParameters.d.ts +1 -2
- package/es/lib/utils/resolveSearchParameters.js +2 -4
- package/es/lib/utils/reverseHighlightedParts.d.ts +1 -1
- package/es/lib/utils/reverseHighlightedParts.js +2 -2
- package/es/lib/utils/setIndexHelperState.d.ts +3 -0
- package/es/lib/utils/setIndexHelperState.js +19 -0
- package/es/lib/utils/toArray.d.ts +3 -2
- package/es/lib/utils/toArray.js +2 -4
- package/es/lib/utils/uniq.d.ts +1 -2
- package/es/lib/utils/uniq.js +2 -4
- package/es/lib/version.d.ts +1 -1
- package/es/lib/version.js +1 -1
- package/es/middlewares/createInsightsMiddleware.js +23 -27
- package/es/middlewares/createMetadataMiddleware.js +1 -0
- package/es/middlewares/createRouterMiddleware.js +1 -0
- package/es/types/middleware.d.ts +1 -0
- package/es/widgets/index/index.d.ts +0 -1
- package/es/widgets/index/index.js +5 -6
- package/package.json +5 -5
- package/cjs/lib/utils/convertNumericRefinementsToFilters.js +0 -31
- package/cjs/lib/utils/escape.js +0 -35
- package/cjs/lib/utils/unescape.js +0 -32
- package/es/lib/utils/convertNumericRefinementsToFilters.d.ts +0 -2
- package/es/lib/utils/convertNumericRefinementsToFilters.js +0 -24
- package/es/lib/utils/escape.js +0 -27
- package/es/lib/utils/unescape.d.ts +0 -9
- package/es/lib/utils/unescape.js +0 -25
|
@@ -3,11 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.isDomElement = isDomElement;
|
|
7
7
|
|
|
8
8
|
function isDomElement(object) {
|
|
9
9
|
return object instanceof HTMLElement || Boolean(object) && object.nodeType > 0;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
var _default = isDomElement;
|
|
13
|
-
exports.default = _default;
|
|
10
|
+
}
|
package/cjs/lib/utils/isEqual.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.isEqual = isEqual;
|
|
7
7
|
|
|
8
8
|
function isPrimitive(obj) {
|
|
9
9
|
return obj !== Object(obj);
|
|
@@ -35,7 +35,4 @@ function isEqual(first, second) {
|
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
return true;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
var _default = isEqual;
|
|
41
|
-
exports.default = _default;
|
|
38
|
+
}
|
|
@@ -3,14 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.isFiniteNumber = isFiniteNumber;
|
|
7
7
|
|
|
8
8
|
// This is the `Number.isFinite()` polyfill recommended by MDN.
|
|
9
9
|
// We do not provide any tests for this function.
|
|
10
10
|
// See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/isFinite#Polyfill
|
|
11
|
+
// @MAJOR Replace with the native `Number.isFinite` method
|
|
11
12
|
function isFiniteNumber(value) {
|
|
12
13
|
return typeof value === 'number' && isFinite(value);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
var _default = isFiniteNumber;
|
|
16
|
-
exports.default = _default;
|
|
14
|
+
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.isPlainObject = isPlainObject;
|
|
7
7
|
|
|
8
8
|
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
9
9
|
|
|
@@ -46,7 +46,4 @@ function isPlainObject(value) {
|
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
return Object.getPrototypeOf(value) === proto;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
var _default = isPlainObject;
|
|
52
|
-
exports.default = _default;
|
|
49
|
+
}
|
|
@@ -3,12 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.isSpecialClick = isSpecialClick;
|
|
7
7
|
|
|
8
8
|
function isSpecialClick(event) {
|
|
9
9
|
var isMiddleClick = event.button === 1;
|
|
10
10
|
return isMiddleClick || event.altKey || event.ctrlKey || event.metaKey || event.shiftKey;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
var _default = isSpecialClick;
|
|
14
|
-
exports.default = _default;
|
|
11
|
+
}
|
package/cjs/lib/utils/logger.js
CHANGED
|
@@ -5,9 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.warning = exports.deprecate = exports.warn = void 0;
|
|
7
7
|
|
|
8
|
-
var _noop =
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
8
|
+
var _noop = require("./noop.js");
|
|
11
9
|
|
|
12
10
|
/**
|
|
13
11
|
* Logs a warning when this function is called, in development environment only.
|
|
@@ -22,14 +20,14 @@ var deprecate = function deprecate(fn, message) {
|
|
|
22
20
|
|
|
23
21
|
|
|
24
22
|
exports.deprecate = deprecate;
|
|
25
|
-
var warn = _noop.
|
|
23
|
+
var warn = _noop.noop;
|
|
26
24
|
/**
|
|
27
25
|
* Logs a warning if the condition is not met.
|
|
28
26
|
* This is used to log issues in development environment only.
|
|
29
27
|
*/
|
|
30
28
|
|
|
31
29
|
exports.warn = warn;
|
|
32
|
-
var _warning = _noop.
|
|
30
|
+
var _warning = _noop.noop;
|
|
33
31
|
exports.warning = _warning;
|
|
34
32
|
|
|
35
33
|
if (process.env.NODE_ENV === 'development') {
|
|
@@ -3,13 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.mergeSearchParameters = void 0;
|
|
7
7
|
|
|
8
|
-
var _findIndex =
|
|
8
|
+
var _findIndex = require("./findIndex.js");
|
|
9
9
|
|
|
10
|
-
var _uniq =
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
|
+
var _uniq = require("./uniq.js");
|
|
13
11
|
|
|
14
12
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
15
13
|
|
|
@@ -53,7 +51,7 @@ var mergeDisjunctiveFacets = function mergeDisjunctiveFacets(left, right) {
|
|
|
53
51
|
var mergeHierarchicalFacets = function mergeHierarchicalFacets(left, right) {
|
|
54
52
|
return left.setQueryParameters({
|
|
55
53
|
hierarchicalFacets: right.hierarchicalFacets.reduce(function (facets, facet) {
|
|
56
|
-
var index = (0, _findIndex.
|
|
54
|
+
var index = (0, _findIndex.findIndex)(facets, function (_) {
|
|
57
55
|
return _.name === facet.name;
|
|
58
56
|
});
|
|
59
57
|
|
|
@@ -106,7 +104,7 @@ var mergeHierarchicalFacetsRefinements = function mergeHierarchicalFacetsRefinem
|
|
|
106
104
|
};
|
|
107
105
|
|
|
108
106
|
var mergeRuleContexts = function mergeRuleContexts(left, right) {
|
|
109
|
-
var ruleContexts = (0, _uniq.
|
|
107
|
+
var ruleContexts = (0, _uniq.uniq)([].concat(left.ruleContexts).concat(right.ruleContexts).filter(Boolean));
|
|
110
108
|
|
|
111
109
|
if (ruleContexts.length > 0) {
|
|
112
110
|
return left.setQueryParameters({
|
|
@@ -117,7 +115,7 @@ var mergeRuleContexts = function mergeRuleContexts(left, right) {
|
|
|
117
115
|
return left;
|
|
118
116
|
};
|
|
119
117
|
|
|
120
|
-
var
|
|
118
|
+
var mergeSearchParameters = function mergeSearchParameters() {
|
|
121
119
|
for (var _len = arguments.length, parameters = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
122
120
|
parameters[_key] = arguments[_key];
|
|
123
121
|
}
|
|
@@ -137,5 +135,4 @@ var merge = function merge() {
|
|
|
137
135
|
});
|
|
138
136
|
};
|
|
139
137
|
|
|
140
|
-
|
|
141
|
-
exports.default = _default;
|
|
138
|
+
exports.mergeSearchParameters = mergeSearchParameters;
|
package/cjs/lib/utils/noop.js
CHANGED
|
@@ -3,11 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.prepareTemplateProps = prepareTemplateProps;
|
|
7
7
|
|
|
8
|
-
var _uniq =
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
8
|
+
var _uniq = require("./uniq.js");
|
|
11
9
|
|
|
12
10
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
13
11
|
|
|
@@ -30,7 +28,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
|
|
|
30
28
|
function prepareTemplates( // can not use = {} here, since the template could have different constraints
|
|
31
29
|
defaultTemplates) {
|
|
32
30
|
var templates = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
33
|
-
var allKeys = (0, _uniq.
|
|
31
|
+
var allKeys = (0, _uniq.uniq)([].concat(_toConsumableArray(Object.keys(defaultTemplates || {})), _toConsumableArray(Object.keys(templates))));
|
|
34
32
|
return allKeys.reduce(function (config, key) {
|
|
35
33
|
var defaultTemplate = defaultTemplates ? defaultTemplates[key] : undefined;
|
|
36
34
|
var customTemplate = templates[key];
|
|
@@ -59,7 +57,4 @@ function prepareTemplateProps(_ref) {
|
|
|
59
57
|
return _objectSpread({
|
|
60
58
|
templatesConfig: templatesConfig
|
|
61
59
|
}, preparedTemplates);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
var _default = prepareTemplateProps;
|
|
65
|
-
exports.default = _default;
|
|
60
|
+
}
|
package/cjs/lib/utils/range.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.range = range;
|
|
7
7
|
|
|
8
8
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
9
9
|
|
|
@@ -34,7 +34,4 @@ function range(_ref) {
|
|
|
34
34
|
return _toConsumableArray(Array(arrayLength)).map(function (_, current) {
|
|
35
35
|
return start + current * limitStep;
|
|
36
36
|
});
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
var _default = range;
|
|
40
|
-
exports.default = _default;
|
|
37
|
+
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.renderTemplate = renderTemplate;
|
|
7
7
|
|
|
8
8
|
var _hogan = _interopRequireDefault(require("hogan.js"));
|
|
9
9
|
|
|
@@ -78,7 +78,4 @@ function renderTemplate(_ref) {
|
|
|
78
78
|
})).replace(/[ \n\r\t\f\xA0]+/g, function (spaces) {
|
|
79
79
|
return spaces.replace(/(^|\xA0+)[^\xA0]+/g, '$1 ');
|
|
80
80
|
}).trim();
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
var _default = renderTemplate;
|
|
84
|
-
exports.default = _default;
|
|
81
|
+
}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.resolveSearchParameters = resolveSearchParameters;
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
function resolveSearchParameters(current) {
|
|
9
9
|
var parent = current.getParent();
|
|
10
10
|
var states = [current.getHelper().state];
|
|
11
11
|
|
|
@@ -15,7 +15,4 @@ var resolveSearchParameters = function resolveSearchParameters(current) {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
return states;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
var _default = resolveSearchParameters;
|
|
21
|
-
exports.default = _default;
|
|
18
|
+
}
|
|
@@ -3,11 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.reverseHighlightedParts = reverseHighlightedParts;
|
|
7
7
|
|
|
8
|
-
var _getHighlightFromSiblings =
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
8
|
+
var _getHighlightFromSiblings = require("./getHighlightFromSiblings.js");
|
|
11
9
|
|
|
12
10
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
13
11
|
|
|
@@ -28,7 +26,7 @@ function reverseHighlightedParts(parts) {
|
|
|
28
26
|
|
|
29
27
|
return parts.map(function (part, i) {
|
|
30
28
|
return _objectSpread(_objectSpread({}, part), {}, {
|
|
31
|
-
isHighlighted: !(0, _getHighlightFromSiblings.
|
|
29
|
+
isHighlighted: !(0, _getHighlightFromSiblings.getHighlightFromSiblings)(parts, i)
|
|
32
30
|
});
|
|
33
31
|
});
|
|
34
32
|
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.setIndexHelperState = setIndexHelperState;
|
|
7
|
+
|
|
8
|
+
var _isIndexWidget = require("./isIndexWidget.js");
|
|
9
|
+
|
|
10
|
+
var _checkIndexUiState = require("./checkIndexUiState.js");
|
|
11
|
+
|
|
12
|
+
function setIndexHelperState(finalUiState, indexWidget) {
|
|
13
|
+
var nextIndexUiState = finalUiState[indexWidget.getIndexId()] || {};
|
|
14
|
+
|
|
15
|
+
if (process.env.NODE_ENV === 'development') {
|
|
16
|
+
(0, _checkIndexUiState.checkIndexUiState)({
|
|
17
|
+
index: indexWidget,
|
|
18
|
+
indexUiState: nextIndexUiState
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
indexWidget.getHelper().setState(indexWidget.getWidgetSearchParameters(indexWidget.getHelper().state, {
|
|
23
|
+
uiState: nextIndexUiState
|
|
24
|
+
}));
|
|
25
|
+
indexWidget.getWidgets().filter(_isIndexWidget.isIndexWidget).forEach(function (widget) {
|
|
26
|
+
return setIndexHelperState(finalUiState, widget);
|
|
27
|
+
});
|
|
28
|
+
}
|
package/cjs/lib/utils/toArray.js
CHANGED
|
@@ -3,11 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.toArray = toArray;
|
|
7
7
|
|
|
8
8
|
function toArray(value) {
|
|
9
9
|
return Array.isArray(value) ? value : [value];
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
var _default = toArray;
|
|
13
|
-
exports.default = _default;
|
|
10
|
+
}
|
package/cjs/lib/utils/uniq.js
CHANGED
|
@@ -3,13 +3,10 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.uniq = uniq;
|
|
7
7
|
|
|
8
8
|
function uniq(array) {
|
|
9
9
|
return array.filter(function (value, index, self) {
|
|
10
10
|
return self.indexOf(value) === index;
|
|
11
11
|
});
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
var _default = uniq;
|
|
15
|
-
exports.default = _default;
|
|
12
|
+
}
|
package/cjs/lib/version.js
CHANGED
|
@@ -9,10 +9,6 @@ var _index = require("../helpers/index.js");
|
|
|
9
9
|
|
|
10
10
|
var _index2 = require("../lib/utils/index.js");
|
|
11
11
|
|
|
12
|
-
var _connectConfigure = _interopRequireDefault(require("../connectors/configure/connectConfigure.js"));
|
|
13
|
-
|
|
14
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
-
|
|
16
12
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
17
13
|
|
|
18
14
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
@@ -98,31 +94,28 @@ var createInsightsMiddleware = function createInsightsMiddleware(props) {
|
|
|
98
94
|
appId: appId,
|
|
99
95
|
apiKey: apiKey
|
|
100
96
|
}, insightsInitParams));
|
|
101
|
-
var
|
|
102
|
-
var
|
|
103
|
-
var configureUserToken;
|
|
97
|
+
var initialParameters;
|
|
98
|
+
var helper;
|
|
104
99
|
return {
|
|
105
100
|
onStateChange: function onStateChange() {},
|
|
106
|
-
subscribe: function subscribe() {
|
|
101
|
+
subscribe: function subscribe() {},
|
|
102
|
+
started: function started() {
|
|
107
103
|
insightsClient('addAlgoliaAgent', 'insights-middleware');
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
}
|
|
113
|
-
|
|
104
|
+
helper = instantSearchInstance.helper;
|
|
105
|
+
initialParameters = {
|
|
106
|
+
userToken: helper.state.userToken,
|
|
107
|
+
clickAnalytics: helper.state.clickAnalytics
|
|
108
|
+
};
|
|
109
|
+
helper.overrideStateWithoutTriggeringChangeEvent(_objectSpread(_objectSpread({}, helper.state), {}, {
|
|
110
|
+
clickAnalytics: true
|
|
111
|
+
}));
|
|
112
|
+
instantSearchInstance.scheduleSearch();
|
|
114
113
|
|
|
115
114
|
var setUserTokenToSearch = function setUserTokenToSearch(userToken) {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
configureUserToken = createWidget({
|
|
121
|
-
searchParameters: {
|
|
122
|
-
userToken: userToken
|
|
123
|
-
}
|
|
124
|
-
});
|
|
125
|
-
instantSearchInstance.addWidgets([configureUserToken]);
|
|
115
|
+
helper.overrideStateWithoutTriggeringChangeEvent(_objectSpread(_objectSpread({}, helper.state), {}, {
|
|
116
|
+
userToken: userToken
|
|
117
|
+
}));
|
|
118
|
+
instantSearchInstance.scheduleSearch();
|
|
126
119
|
};
|
|
127
120
|
|
|
128
121
|
var anonymousUserToken = (0, _index.getInsightsAnonymousUserTokenInternal)();
|
|
@@ -150,9 +143,7 @@ var createInsightsMiddleware = function createInsightsMiddleware(props) {
|
|
|
150
143
|
if (onEvent) {
|
|
151
144
|
onEvent(event, _insightsClient);
|
|
152
145
|
} else if (event.insightsMethod) {
|
|
153
|
-
|
|
154
|
-
// it means there is a configure widget (added above).
|
|
155
|
-
var hasUserToken = Boolean(instantSearchInstance.renderState[instantSearchInstance.indexName].configure.widgetParams.searchParameters.userToken);
|
|
146
|
+
var hasUserToken = Boolean(helper.state.userToken);
|
|
156
147
|
|
|
157
148
|
if (hasUserToken) {
|
|
158
149
|
insightsClient(event.insightsMethod, event.payload);
|
|
@@ -166,10 +157,12 @@ var createInsightsMiddleware = function createInsightsMiddleware(props) {
|
|
|
166
157
|
},
|
|
167
158
|
unsubscribe: function unsubscribe() {
|
|
168
159
|
insightsClient('onUserTokenChange', undefined);
|
|
169
|
-
instantSearchInstance.removeWidgets([configureClickAnalytics, configureUserToken]);
|
|
170
|
-
configureClickAnalytics = undefined;
|
|
171
|
-
configureUserToken = undefined;
|
|
172
160
|
instantSearchInstance.sendEventToInsights = _index2.noop;
|
|
161
|
+
|
|
162
|
+
if (helper && initialParameters) {
|
|
163
|
+
helper.setState(_objectSpread(_objectSpread({}, helper.state), initialParameters));
|
|
164
|
+
instantSearchInstance.scheduleSearch();
|
|
165
|
+
}
|
|
173
166
|
}
|
|
174
167
|
};
|
|
175
168
|
};
|
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.isIndexWidget = isIndexWidget;
|
|
7
6
|
exports.default = void 0;
|
|
8
7
|
|
|
9
8
|
var _algoliasearchHelper = _interopRequireDefault(require("algoliasearch-helper"));
|
|
@@ -38,16 +37,11 @@ var withUsage = (0, _index.createDocumentationMessageGenerator)({
|
|
|
38
37
|
name: 'index-widget'
|
|
39
38
|
});
|
|
40
39
|
|
|
41
|
-
function isIndexWidget(widget) {
|
|
42
|
-
return widget.$$type === 'ais.index';
|
|
43
|
-
}
|
|
44
40
|
/**
|
|
45
41
|
* This is the same content as helper._change / setState, but allowing for extra
|
|
46
42
|
* UiState to be synchronized.
|
|
47
43
|
* see: https://github.com/algolia/algoliasearch-helper-js/blob/6b835ffd07742f2d6b314022cce6848f5cfecd4a/src/algoliasearch.helper.js#L1311-L1324
|
|
48
44
|
*/
|
|
49
|
-
|
|
50
|
-
|
|
51
45
|
function privateHelperSetState(helper, _ref) {
|
|
52
46
|
var state = _ref.state,
|
|
53
47
|
isPageReset = _ref.isPageReset,
|
|
@@ -67,7 +61,7 @@ function privateHelperSetState(helper, _ref) {
|
|
|
67
61
|
function getLocalWidgetsUiState(widgets, widgetStateOptions) {
|
|
68
62
|
var initialUiState = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
69
63
|
return widgets.reduce(function (uiState, widget) {
|
|
70
|
-
if (isIndexWidget(widget)) {
|
|
64
|
+
if ((0, _index.isIndexWidget)(widget)) {
|
|
71
65
|
return uiState;
|
|
72
66
|
}
|
|
73
67
|
|
|
@@ -88,7 +82,7 @@ function getLocalWidgetsSearchParameters(widgets, widgetSearchParametersOptions)
|
|
|
88
82
|
rest = _objectWithoutProperties(widgetSearchParametersOptions, ["initialSearchParameters"]);
|
|
89
83
|
|
|
90
84
|
return widgets.filter(function (widget) {
|
|
91
|
-
return !isIndexWidget(widget);
|
|
85
|
+
return !(0, _index.isIndexWidget)(widget);
|
|
92
86
|
}).reduce(function (state, widget) {
|
|
93
87
|
if (!widget.getWidgetSearchParameters) {
|
|
94
88
|
return state;
|
|
@@ -99,7 +93,7 @@ function getLocalWidgetsSearchParameters(widgets, widgetSearchParametersOptions)
|
|
|
99
93
|
}
|
|
100
94
|
|
|
101
95
|
function resetPageFromWidgets(widgets) {
|
|
102
|
-
var indexWidgets = widgets.filter(isIndexWidget);
|
|
96
|
+
var indexWidgets = widgets.filter(_index.isIndexWidget);
|
|
103
97
|
|
|
104
98
|
if (indexWidgets.length === 0) {
|
|
105
99
|
return;
|
|
@@ -116,7 +110,7 @@ function resetPageFromWidgets(widgets) {
|
|
|
116
110
|
}
|
|
117
111
|
|
|
118
112
|
function resolveScopedResultsFromWidgets(widgets) {
|
|
119
|
-
var indexWidgets = widgets.filter(isIndexWidget);
|
|
113
|
+
var indexWidgets = widgets.filter(_index.isIndexWidget);
|
|
120
114
|
return indexWidgets.reduce(function (scopedResults, current) {
|
|
121
115
|
return scopedResults.concat.apply(scopedResults, [{
|
|
122
116
|
indexId: current.getIndexId(),
|
|
@@ -326,7 +320,9 @@ var index = function index(widgetParams) {
|
|
|
326
320
|
if (instantSearchInstance.onStateChange) {
|
|
327
321
|
instantSearchInstance.onStateChange({
|
|
328
322
|
uiState: instantSearchInstance.mainIndex.getWidgetUiState({}),
|
|
329
|
-
setUiState:
|
|
323
|
+
setUiState: function setUiState(nextState) {
|
|
324
|
+
return instantSearchInstance.setUiState(nextState, false);
|
|
325
|
+
}
|
|
330
326
|
}); // We don't trigger a search when controlled because it becomes the
|
|
331
327
|
// responsibility of `setUiState`.
|
|
332
328
|
|
|
@@ -554,7 +550,7 @@ var index = function index(widgetParams) {
|
|
|
554
550
|
derivedHelper = null;
|
|
555
551
|
},
|
|
556
552
|
getWidgetUiState: function getWidgetUiState(uiState) {
|
|
557
|
-
return localWidgets.filter(isIndexWidget).reduce(function (previousUiState, innerIndex) {
|
|
553
|
+
return localWidgets.filter(_index.isIndexWidget).reduce(function (previousUiState, innerIndex) {
|
|
558
554
|
return innerIndex.getWidgetUiState(previousUiState);
|
|
559
555
|
}, _objectSpread(_objectSpread({}, uiState), {}, _defineProperty({}, this.getIndexId(), localUiState)));
|
|
560
556
|
},
|
|
@@ -1177,6 +1177,8 @@ declare const EXPERIMENTAL_connectDynamicWidgets: DynamicWidgetsConnector;
|
|
|
1177
1177
|
/** @deprecated use dynamicWidgets */
|
|
1178
1178
|
declare const EXPERIMENTAL_dynamicWidgets: DynamicWidgetsWidget;
|
|
1179
1179
|
|
|
1180
|
+
declare type FacetValue = string | boolean | number;
|
|
1181
|
+
|
|
1180
1182
|
declare type GeoHit<THit extends BaseHit = Record<string, any>> = Hit<THit> & Required<Pick<Hit, '_geoloc'>>;
|
|
1181
1183
|
|
|
1182
1184
|
declare type GeoLoc = {
|
|
@@ -2384,7 +2386,12 @@ declare class InstantSearch<TUiState extends UiState = UiState, TRouteState = TU
|
|
|
2384
2386
|
cancel(): void;
|
|
2385
2387
|
};
|
|
2386
2388
|
scheduleStalledRender(): void;
|
|
2387
|
-
|
|
2389
|
+
/**
|
|
2390
|
+
* Set the UI state and trigger a search.
|
|
2391
|
+
* @param uiState The next UI state or a function computing it from the current state
|
|
2392
|
+
* @param callOnStateChange private parameter used to know if the method is called from a state change
|
|
2393
|
+
*/
|
|
2394
|
+
setUiState(uiState: TUiState | ((previousUiState: TUiState) => TUiState), callOnStateChange?: boolean): void;
|
|
2388
2395
|
getUiState(): TUiState;
|
|
2389
2396
|
onInternalStateChange: ((...args: any[]) => void) & {
|
|
2390
2397
|
wait(): Promise<void>;
|
|
@@ -2779,6 +2786,7 @@ declare type MiddlewareDefinition<TUiState extends UiState = UiState> = {
|
|
|
2779
2786
|
uiState: TUiState;
|
|
2780
2787
|
}): void;
|
|
2781
2788
|
subscribe(): void;
|
|
2789
|
+
started(): void;
|
|
2782
2790
|
unsubscribe(): void;
|
|
2783
2791
|
};
|
|
2784
2792
|
|
|
@@ -5065,11 +5073,11 @@ declare type ToggleRefinementConnectorParams = {
|
|
|
5065
5073
|
* Value to filter on when toggled.
|
|
5066
5074
|
* @default "true"
|
|
5067
5075
|
*/
|
|
5068
|
-
on?:
|
|
5076
|
+
on?: FacetValue | FacetValue[];
|
|
5069
5077
|
/**
|
|
5070
5078
|
* Value to filter on when not toggled.
|
|
5071
5079
|
*/
|
|
5072
|
-
off?:
|
|
5080
|
+
off?: FacetValue | FacetValue[];
|
|
5073
5081
|
};
|
|
5074
5082
|
|
|
5075
5083
|
declare type ToggleRefinementCSSClasses = Partial<{
|