instantsearch.js 4.45.1 → 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 +21 -0
- package/cjs/components/Hits/Hits.js +3 -1
- package/cjs/components/InfiniteHits/InfiniteHits.js +3 -1
- package/cjs/components/Template/Template.js +13 -3
- 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/createHelpers.js +3 -1
- package/cjs/lib/formatNumber.js +10 -0
- 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/cx.js +10 -0
- 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 +563 -432
- 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 +19 -7
- 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/answers/defaultTemplates.js +6 -2
- package/cjs/widgets/breadcrumb/defaultTemplates.js +6 -2
- package/cjs/widgets/clear-refinements/defaultTemplates.js +3 -1
- package/cjs/widgets/geo-search/createHTMLMarker.js +10 -4
- package/cjs/widgets/geo-search/defaultTemplates.js +18 -4
- package/cjs/widgets/hierarchical-menu/defaultTemplates.js +26 -2
- package/cjs/widgets/hits/defaultTemplates.js +3 -1
- package/cjs/widgets/index/index.js +8 -12
- package/cjs/widgets/infinite-hits/defaultTemplates.js +9 -3
- package/cjs/widgets/menu/defaultTemplates.js +26 -2
- package/cjs/widgets/menu-select/defaultTemplates.js +11 -2
- package/cjs/widgets/numeric-menu/defaultTemplates.js +20 -1
- package/cjs/widgets/range-input/range-input.js +6 -2
- package/cjs/widgets/rating-menu/defaultTemplates.js +57 -1
- package/cjs/widgets/refinement-list/defaultTemplates.js +38 -3
- package/cjs/widgets/relevant-sort/defaultTemplates.js +3 -1
- package/cjs/widgets/search-box/defaultTemplates.js +62 -3
- package/cjs/widgets/stats/stats.js +70 -22
- package/cjs/widgets/toggle-refinement/defaultTemplates.js +4 -1
- package/cjs/widgets/voice-search/defaultTemplates.js +81 -9
- package/dist/instantsearch.development.d.ts +153 -22
- package/dist/instantsearch.development.js +2842 -2112
- package/dist/instantsearch.development.js.map +1 -1
- package/dist/instantsearch.production.d.ts +153 -22
- package/dist/instantsearch.production.min.d.ts +153 -22
- 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 +2 -3
- package/es/components/Hits/Hits.js +3 -1
- package/es/components/InfiniteHits/InfiniteHits.d.ts +1 -1
- package/es/components/InfiniteHits/InfiniteHits.js +3 -1
- package/es/components/RefinementList/RefinementList.d.ts +1 -1
- package/es/components/Template/Template.d.ts +4 -3
- package/es/components/Template/Template.js +14 -4
- 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/createHelpers.js +2 -1
- package/es/lib/formatNumber.d.ts +1 -0
- package/es/lib/formatNumber.js +3 -0
- 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/cx.d.ts +1 -0
- package/es/lib/utils/cx.js +3 -0
- 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 -45
- package/es/lib/utils/index.js +46 -45
- 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 +4 -4
- package/es/lib/utils/renderTemplate.js +17 -6
- 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/types/templates.d.ts +16 -3
- package/es/widgets/answers/defaultTemplates.js +6 -2
- package/es/widgets/breadcrumb/defaultTemplates.js +6 -2
- package/es/widgets/clear-refinements/clear-refinements.d.ts +3 -1
- package/es/widgets/clear-refinements/defaultTemplates.js +3 -1
- package/es/widgets/geo-search/createHTMLMarker.d.ts +2 -1
- package/es/widgets/geo-search/createHTMLMarker.js +8 -1
- package/es/widgets/geo-search/defaultTemplates.d.ts +1 -0
- package/es/widgets/geo-search/defaultTemplates.js +17 -4
- package/es/widgets/hierarchical-menu/defaultTemplates.js +22 -2
- package/es/widgets/hierarchical-menu/hierarchical-menu.d.ts +2 -0
- package/es/widgets/hits/defaultTemplates.js +3 -1
- package/es/widgets/hits/hits.d.ts +2 -1
- package/es/widgets/index/index.d.ts +0 -1
- package/es/widgets/index/index.js +5 -6
- package/es/widgets/infinite-hits/defaultTemplates.js +9 -3
- package/es/widgets/infinite-hits/infinite-hits.d.ts +1 -3
- package/es/widgets/menu/defaultTemplates.js +22 -2
- package/es/widgets/menu-select/defaultTemplates.js +9 -2
- package/es/widgets/numeric-menu/defaultTemplates.js +18 -1
- package/es/widgets/range-input/range-input.js +6 -2
- package/es/widgets/rating-menu/defaultTemplates.js +54 -1
- package/es/widgets/rating-menu/rating-menu.d.ts +6 -0
- package/es/widgets/refinement-list/defaultTemplates.js +34 -3
- package/es/widgets/refinement-list/refinement-list.d.ts +7 -1
- package/es/widgets/relevant-sort/defaultTemplates.js +3 -1
- package/es/widgets/search-box/defaultTemplates.js +61 -3
- package/es/widgets/search-box/search-box.d.ts +10 -3
- package/es/widgets/stats/stats.d.ts +10 -6
- package/es/widgets/stats/stats.js +69 -22
- package/es/widgets/toggle-refinement/defaultTemplates.js +4 -1
- package/es/widgets/toggle-refinement/toggle-refinement.d.ts +3 -1
- package/es/widgets/voice-search/defaultTemplates.js +81 -9
- package/package.json +8 -7
- 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
|
@@ -1,2 +1 @@
|
|
|
1
|
-
declare function isSpecialClick(event: MouseEvent): boolean;
|
|
2
|
-
export default isSpecialClick;
|
|
1
|
+
export declare function isSpecialClick(event: MouseEvent): boolean;
|
package/es/lib/utils/logger.js
CHANGED
|
@@ -8,8 +8,8 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
|
|
|
8
8
|
|
|
9
9
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
10
10
|
|
|
11
|
-
import findIndex from "./findIndex.js";
|
|
12
|
-
import uniq from "./uniq.js";
|
|
11
|
+
import { findIndex } from "./findIndex.js";
|
|
12
|
+
import { uniq } from "./uniq.js";
|
|
13
13
|
|
|
14
14
|
var mergeWithRest = function mergeWithRest(left, right) {
|
|
15
15
|
var facets = right.facets,
|
|
@@ -107,7 +107,7 @@ var mergeRuleContexts = function mergeRuleContexts(left, right) {
|
|
|
107
107
|
return left;
|
|
108
108
|
};
|
|
109
109
|
|
|
110
|
-
var
|
|
110
|
+
export var mergeSearchParameters = function mergeSearchParameters() {
|
|
111
111
|
for (var _len = arguments.length, parameters = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
112
112
|
parameters[_key] = arguments[_key];
|
|
113
113
|
}
|
|
@@ -125,6 +125,4 @@ var merge = function merge() {
|
|
|
125
125
|
var facetsMerged = mergeFacets(ruleContextsMerged, right);
|
|
126
126
|
return mergeWithRest(facetsMerged, right);
|
|
127
127
|
});
|
|
128
|
-
};
|
|
129
|
-
|
|
130
|
-
export default merge;
|
|
128
|
+
};
|
package/es/lib/utils/noop.d.ts
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
declare function noop(..._args: any[]): void;
|
|
2
|
-
export default noop;
|
|
1
|
+
export declare function noop(..._args: any[]): void;
|
package/es/lib/utils/noop.js
CHANGED
|
@@ -14,9 +14,9 @@ export declare type PreparedTemplateProps<TTemplates extends Templates> = {
|
|
|
14
14
|
/**
|
|
15
15
|
* Prepares an object to be passed to the Template widget
|
|
16
16
|
*/
|
|
17
|
-
declare function prepareTemplateProps<TTemplates extends Templates>({ defaultTemplates, templates, templatesConfig, }: {
|
|
17
|
+
export declare function prepareTemplateProps<TTemplates extends Templates>({ defaultTemplates, templates, templatesConfig, }: {
|
|
18
18
|
defaultTemplates: TTemplates;
|
|
19
19
|
templates?: Partial<TTemplates>;
|
|
20
20
|
templatesConfig: TemplatesConfig;
|
|
21
21
|
}): PreparedTemplateProps<TTemplates>;
|
|
22
|
-
export
|
|
22
|
+
export {};
|
|
@@ -16,7 +16,7 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
|
|
|
16
16
|
|
|
17
17
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
18
18
|
|
|
19
|
-
import uniq from "./uniq.js";
|
|
19
|
+
import { uniq } from "./uniq.js";
|
|
20
20
|
|
|
21
21
|
function prepareTemplates( // can not use = {} here, since the template could have different constraints
|
|
22
22
|
defaultTemplates) {
|
|
@@ -42,7 +42,7 @@ defaultTemplates) {
|
|
|
42
42
|
*/
|
|
43
43
|
|
|
44
44
|
|
|
45
|
-
function prepareTemplateProps(_ref) {
|
|
45
|
+
export function prepareTemplateProps(_ref) {
|
|
46
46
|
var defaultTemplates = _ref.defaultTemplates,
|
|
47
47
|
templates = _ref.templates,
|
|
48
48
|
templatesConfig = _ref.templatesConfig;
|
|
@@ -50,6 +50,4 @@ function prepareTemplateProps(_ref) {
|
|
|
50
50
|
return _objectSpread({
|
|
51
51
|
templatesConfig: templatesConfig
|
|
52
52
|
}, preparedTemplates);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
export default prepareTemplateProps;
|
|
53
|
+
}
|
package/es/lib/utils/range.d.ts
CHANGED
package/es/lib/utils/range.js
CHANGED
|
@@ -10,7 +10,7 @@ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToAr
|
|
|
10
10
|
|
|
11
11
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
12
12
|
|
|
13
|
-
function range(_ref) {
|
|
13
|
+
export function range(_ref) {
|
|
14
14
|
var _ref$start = _ref.start,
|
|
15
15
|
start = _ref$start === void 0 ? 0 : _ref$start,
|
|
16
16
|
end = _ref.end,
|
|
@@ -27,6 +27,4 @@ function range(_ref) {
|
|
|
27
27
|
return _toConsumableArray(Array(arrayLength)).map(function (_, current) {
|
|
28
28
|
return start + current * limitStep;
|
|
29
29
|
});
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export default range;
|
|
30
|
+
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { HoganOptions } from 'hogan.js';
|
|
2
2
|
import type { Templates, HoganHelpers } from '../../types';
|
|
3
|
-
import type { BindEventForHits } from './createSendEventForHits';
|
|
4
|
-
declare function renderTemplate({ templates, templateKey, compileOptions, helpers, data, bindEvent, }: {
|
|
3
|
+
import type { BindEventForHits, SendEventForHits } from './createSendEventForHits';
|
|
4
|
+
export declare function renderTemplate({ templates, templateKey, compileOptions, helpers, data, bindEvent, sendEvent, }: {
|
|
5
5
|
templates: Templates;
|
|
6
6
|
templateKey: string;
|
|
7
7
|
compileOptions?: HoganOptions;
|
|
8
8
|
helpers?: HoganHelpers;
|
|
9
9
|
data?: Record<string, any>;
|
|
10
10
|
bindEvent?: BindEventForHits;
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
sendEvent?: SendEventForHits;
|
|
12
|
+
}): string | import("preact").VNode<{}> | import("preact").VNode<{}>[];
|
|
@@ -7,6 +7,8 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
7
7
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
8
8
|
|
|
9
9
|
import hogan from 'hogan.js';
|
|
10
|
+
import { Highlight, ReverseHighlight, ReverseSnippet, Snippet } from "../../helpers/components/index.js";
|
|
11
|
+
import { html } from 'htm/preact';
|
|
10
12
|
|
|
11
13
|
// We add all our template helper methods to the template as lambdas. Note
|
|
12
14
|
// that lambdas in Mustache are supposed to accept a second argument of
|
|
@@ -31,13 +33,14 @@ function transformHelpersToHogan() {
|
|
|
31
33
|
}, {});
|
|
32
34
|
}
|
|
33
35
|
|
|
34
|
-
function renderTemplate(_ref) {
|
|
36
|
+
export function renderTemplate(_ref) {
|
|
35
37
|
var templates = _ref.templates,
|
|
36
38
|
templateKey = _ref.templateKey,
|
|
37
39
|
compileOptions = _ref.compileOptions,
|
|
38
40
|
helpers = _ref.helpers,
|
|
39
41
|
data = _ref.data,
|
|
40
|
-
bindEvent = _ref.bindEvent
|
|
42
|
+
bindEvent = _ref.bindEvent,
|
|
43
|
+
sendEvent = _ref.sendEvent;
|
|
41
44
|
var template = templates[templateKey];
|
|
42
45
|
|
|
43
46
|
if (typeof template !== 'string' && typeof template !== 'function') {
|
|
@@ -45,7 +48,17 @@ function renderTemplate(_ref) {
|
|
|
45
48
|
}
|
|
46
49
|
|
|
47
50
|
if (typeof template === 'function') {
|
|
48
|
-
|
|
51
|
+
// @MAJOR no longer pass bindEvent when string templates are removed
|
|
52
|
+
var params = bindEvent || {};
|
|
53
|
+
params.html = html;
|
|
54
|
+
params.sendEvent = sendEvent;
|
|
55
|
+
params.components = {
|
|
56
|
+
Highlight: Highlight,
|
|
57
|
+
ReverseHighlight: ReverseHighlight,
|
|
58
|
+
Snippet: Snippet,
|
|
59
|
+
ReverseSnippet: ReverseSnippet
|
|
60
|
+
};
|
|
61
|
+
return template(data, params);
|
|
49
62
|
}
|
|
50
63
|
|
|
51
64
|
var transformedHelpers = transformHelpersToHogan(helpers, compileOptions, data);
|
|
@@ -54,6 +67,4 @@ function renderTemplate(_ref) {
|
|
|
54
67
|
})).replace(/[ \n\r\t\f\xA0]+/g, function (spaces) {
|
|
55
68
|
return spaces.replace(/(^|\xA0+)[^\xA0]+/g, '$1 ');
|
|
56
69
|
}).trim();
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export default renderTemplate;
|
|
70
|
+
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import type { SearchParameters } from 'algoliasearch-helper';
|
|
2
2
|
import type { IndexWidget } from '../../widgets/index/index';
|
|
3
|
-
declare
|
|
4
|
-
export default resolveSearchParameters;
|
|
3
|
+
export declare function resolveSearchParameters(current: IndexWidget): SearchParameters[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
export function resolveSearchParameters(current) {
|
|
2
2
|
var parent = current.getParent();
|
|
3
3
|
var states = [current.getHelper().state];
|
|
4
4
|
|
|
@@ -8,6 +8,4 @@ var resolveSearchParameters = function resolveSearchParameters(current) {
|
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
return states;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export default resolveSearchParameters;
|
|
11
|
+
}
|
|
@@ -4,8 +4,8 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
4
4
|
|
|
5
5
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
6
|
|
|
7
|
-
import getHighlightFromSiblings from "./getHighlightFromSiblings.js";
|
|
8
|
-
export
|
|
7
|
+
import { getHighlightFromSiblings } from "./getHighlightFromSiblings.js";
|
|
8
|
+
export function reverseHighlightedParts(parts) {
|
|
9
9
|
if (!parts.some(function (part) {
|
|
10
10
|
return part.isHighlighted;
|
|
11
11
|
})) {
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { isIndexWidget } from "./isIndexWidget.js";
|
|
2
|
+
import { checkIndexUiState } from "./checkIndexUiState.js";
|
|
3
|
+
export function setIndexHelperState(finalUiState, indexWidget) {
|
|
4
|
+
var nextIndexUiState = finalUiState[indexWidget.getIndexId()] || {};
|
|
5
|
+
|
|
6
|
+
if (process.env.NODE_ENV === 'development') {
|
|
7
|
+
checkIndexUiState({
|
|
8
|
+
index: indexWidget,
|
|
9
|
+
indexUiState: nextIndexUiState
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
indexWidget.getHelper().setState(indexWidget.getWidgetSearchParameters(indexWidget.getHelper().state, {
|
|
14
|
+
uiState: nextIndexUiState
|
|
15
|
+
}));
|
|
16
|
+
indexWidget.getWidgets().filter(isIndexWidget).forEach(function (widget) {
|
|
17
|
+
return setIndexHelperState(finalUiState, widget);
|
|
18
|
+
});
|
|
19
|
+
}
|
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
declare
|
|
2
|
-
export
|
|
1
|
+
declare type ToArray<T> = T extends unknown[] ? T : T[];
|
|
2
|
+
export declare function toArray<T>(value: T): ToArray<T>;
|
|
3
|
+
export {};
|
package/es/lib/utils/toArray.js
CHANGED
package/es/lib/utils/uniq.d.ts
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
declare function uniq<TItem>(array: TItem[]): TItem[];
|
|
2
|
-
export default uniq;
|
|
1
|
+
export declare function uniq<TItem>(array: TItem[]): TItem[];
|
package/es/lib/utils/uniq.js
CHANGED
package/es/lib/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: "4.
|
|
1
|
+
declare const _default: "4.46.1";
|
|
2
2
|
export default _default;
|
package/es/lib/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export default '4.
|
|
1
|
+
export default '4.46.1';
|
|
@@ -18,7 +18,6 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
18
18
|
|
|
19
19
|
import { getInsightsAnonymousUserTokenInternal } from "../helpers/index.js";
|
|
20
20
|
import { warning, noop, getAppIdAndApiKey, find } from "../lib/utils/index.js";
|
|
21
|
-
import connectConfigure from "../connectors/configure/connectConfigure.js";
|
|
22
21
|
export var createInsightsMiddleware = function createInsightsMiddleware(props) {
|
|
23
22
|
var _ref = props || {},
|
|
24
23
|
_insightsClient = _ref.insightsClient,
|
|
@@ -86,31 +85,28 @@ export var createInsightsMiddleware = function createInsightsMiddleware(props) {
|
|
|
86
85
|
appId: appId,
|
|
87
86
|
apiKey: apiKey
|
|
88
87
|
}, insightsInitParams));
|
|
89
|
-
var
|
|
90
|
-
var
|
|
91
|
-
var configureUserToken;
|
|
88
|
+
var initialParameters;
|
|
89
|
+
var helper;
|
|
92
90
|
return {
|
|
93
91
|
onStateChange: function onStateChange() {},
|
|
94
|
-
subscribe: function subscribe() {
|
|
92
|
+
subscribe: function subscribe() {},
|
|
93
|
+
started: function started() {
|
|
95
94
|
insightsClient('addAlgoliaAgent', 'insights-middleware');
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
}
|
|
101
|
-
|
|
95
|
+
helper = instantSearchInstance.helper;
|
|
96
|
+
initialParameters = {
|
|
97
|
+
userToken: helper.state.userToken,
|
|
98
|
+
clickAnalytics: helper.state.clickAnalytics
|
|
99
|
+
};
|
|
100
|
+
helper.overrideStateWithoutTriggeringChangeEvent(_objectSpread(_objectSpread({}, helper.state), {}, {
|
|
101
|
+
clickAnalytics: true
|
|
102
|
+
}));
|
|
103
|
+
instantSearchInstance.scheduleSearch();
|
|
102
104
|
|
|
103
105
|
var setUserTokenToSearch = function setUserTokenToSearch(userToken) {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
configureUserToken = createWidget({
|
|
109
|
-
searchParameters: {
|
|
110
|
-
userToken: userToken
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
instantSearchInstance.addWidgets([configureUserToken]);
|
|
106
|
+
helper.overrideStateWithoutTriggeringChangeEvent(_objectSpread(_objectSpread({}, helper.state), {}, {
|
|
107
|
+
userToken: userToken
|
|
108
|
+
}));
|
|
109
|
+
instantSearchInstance.scheduleSearch();
|
|
114
110
|
};
|
|
115
111
|
|
|
116
112
|
var anonymousUserToken = getInsightsAnonymousUserTokenInternal();
|
|
@@ -138,9 +134,7 @@ export var createInsightsMiddleware = function createInsightsMiddleware(props) {
|
|
|
138
134
|
if (onEvent) {
|
|
139
135
|
onEvent(event, _insightsClient);
|
|
140
136
|
} else if (event.insightsMethod) {
|
|
141
|
-
|
|
142
|
-
// it means there is a configure widget (added above).
|
|
143
|
-
var hasUserToken = Boolean(instantSearchInstance.renderState[instantSearchInstance.indexName].configure.widgetParams.searchParameters.userToken);
|
|
137
|
+
var hasUserToken = Boolean(helper.state.userToken);
|
|
144
138
|
|
|
145
139
|
if (hasUserToken) {
|
|
146
140
|
insightsClient(event.insightsMethod, event.payload);
|
|
@@ -154,10 +148,12 @@ export var createInsightsMiddleware = function createInsightsMiddleware(props) {
|
|
|
154
148
|
},
|
|
155
149
|
unsubscribe: function unsubscribe() {
|
|
156
150
|
insightsClient('onUserTokenChange', undefined);
|
|
157
|
-
instantSearchInstance.removeWidgets([configureClickAnalytics, configureUserToken]);
|
|
158
|
-
configureClickAnalytics = undefined;
|
|
159
|
-
configureUserToken = undefined;
|
|
160
151
|
instantSearchInstance.sendEventToInsights = noop;
|
|
152
|
+
|
|
153
|
+
if (helper && initialParameters) {
|
|
154
|
+
helper.setState(_objectSpread(_objectSpread({}, helper.state), initialParameters));
|
|
155
|
+
instantSearchInstance.scheduleSearch();
|
|
156
|
+
}
|
|
161
157
|
}
|
|
162
158
|
};
|
|
163
159
|
};
|
package/es/types/middleware.d.ts
CHANGED
package/es/types/templates.d.ts
CHANGED
|
@@ -1,6 +1,19 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import type { VNode } from 'preact';
|
|
2
|
+
import type { Highlight, ReverseHighlight, ReverseSnippet, Snippet } from '../helpers/components';
|
|
3
|
+
import type { html } from 'htm/preact';
|
|
4
|
+
import type { BindEventForHits, SendEventForHits } from '../lib/utils';
|
|
5
|
+
export declare type Template<TTemplateData = void> = string | ((data: TTemplateData, params: TemplateParams) => VNode | VNode[] | string);
|
|
6
|
+
export declare type TemplateParams = BindEventForHits & {
|
|
7
|
+
html: typeof html;
|
|
8
|
+
components: {
|
|
9
|
+
Highlight: typeof Highlight;
|
|
10
|
+
ReverseHighlight: typeof ReverseHighlight;
|
|
11
|
+
Snippet: typeof Snippet;
|
|
12
|
+
ReverseSnippet: typeof ReverseSnippet;
|
|
13
|
+
};
|
|
14
|
+
sendEvent?: SendEventForHits;
|
|
15
|
+
};
|
|
16
|
+
export declare type TemplateWithBindEvent<TTemplateData = void> = string | ((data: TTemplateData, params: TemplateParams) => VNode | VNode[] | string);
|
|
4
17
|
export declare type Templates = {
|
|
5
18
|
[key: string]: Template<any> | TemplateWithBindEvent<any> | undefined;
|
|
6
19
|
};
|
|
@@ -19,7 +19,9 @@ export declare type ClearRefinementsTemplates = Partial<{
|
|
|
19
19
|
/**
|
|
20
20
|
* Template for the content of the button
|
|
21
21
|
*/
|
|
22
|
-
resetLabel: Template
|
|
22
|
+
resetLabel: Template<{
|
|
23
|
+
hasRefinements: boolean;
|
|
24
|
+
}>;
|
|
23
25
|
}>;
|
|
24
26
|
export declare type ClearRefinementsWidgetParams = {
|
|
25
27
|
/**
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/// <reference types="google.maps" />
|
|
2
|
+
import type { renderTemplate } from '../../lib/utils';
|
|
2
3
|
export declare type HTMLMarkerArguments = {
|
|
3
4
|
__id: string;
|
|
4
5
|
position: google.maps.LatLngLiteral;
|
|
5
6
|
map: google.maps.Map;
|
|
6
|
-
template:
|
|
7
|
+
template: ReturnType<typeof renderTemplate>;
|
|
7
8
|
title?: string;
|
|
8
9
|
className: string;
|
|
9
10
|
anchor?: {
|
|
@@ -23,6 +23,8 @@ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.g
|
|
|
23
23
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
24
24
|
|
|
25
25
|
/* global google EventListener */
|
|
26
|
+
import { render } from 'preact';
|
|
27
|
+
|
|
26
28
|
var createHTMLMarker = function createHTMLMarker(googleReference) {
|
|
27
29
|
var HTMLMarker = /*#__PURE__*/function (_googleReference$maps) {
|
|
28
30
|
_inherits(HTMLMarker, _googleReference$maps);
|
|
@@ -66,7 +68,12 @@ var createHTMLMarker = function createHTMLMarker(googleReference) {
|
|
|
66
68
|
_this.element = document.createElement('div');
|
|
67
69
|
_this.element.className = className;
|
|
68
70
|
_this.element.style.position = 'absolute';
|
|
69
|
-
|
|
71
|
+
|
|
72
|
+
if (_typeof(template) === 'object') {
|
|
73
|
+
render(template, _this.element);
|
|
74
|
+
} else {
|
|
75
|
+
_this.element.innerHTML = template;
|
|
76
|
+
}
|
|
70
77
|
|
|
71
78
|
_this.setMap(map);
|
|
72
79
|
|
|
@@ -1,7 +1,20 @@
|
|
|
1
|
+
/** @jsx h */
|
|
2
|
+
import { h } from 'preact';
|
|
3
|
+
|
|
4
|
+
var _ref = h("p", null, "Your custom HTML Marker");
|
|
5
|
+
|
|
1
6
|
var defaultTemplates = {
|
|
2
|
-
HTMLMarker:
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
7
|
+
HTMLMarker: function HTMLMarker() {
|
|
8
|
+
return _ref;
|
|
9
|
+
},
|
|
10
|
+
reset: function reset() {
|
|
11
|
+
return 'Clear the map refinement';
|
|
12
|
+
},
|
|
13
|
+
toggle: function toggle() {
|
|
14
|
+
return 'Search as I move the map';
|
|
15
|
+
},
|
|
16
|
+
redo: function redo() {
|
|
17
|
+
return 'Redo search here';
|
|
18
|
+
}
|
|
6
19
|
};
|
|
7
20
|
export default defaultTemplates;
|
|
@@ -1,5 +1,25 @@
|
|
|
1
|
+
/** @jsx h */
|
|
2
|
+
import { h } from 'preact';
|
|
3
|
+
import { formatNumber } from "../../lib/formatNumber.js";
|
|
4
|
+
import { cx } from "../../lib/utils/index.js";
|
|
1
5
|
var defaultTemplates = {
|
|
2
|
-
item:
|
|
3
|
-
|
|
6
|
+
item: function item(_ref) {
|
|
7
|
+
var url = _ref.url,
|
|
8
|
+
label = _ref.label,
|
|
9
|
+
count = _ref.count,
|
|
10
|
+
cssClasses = _ref.cssClasses;
|
|
11
|
+
return h("a", {
|
|
12
|
+
className: cx(cssClasses.link),
|
|
13
|
+
href: url
|
|
14
|
+
}, h("span", {
|
|
15
|
+
className: cx(cssClasses.label)
|
|
16
|
+
}, label), h("span", {
|
|
17
|
+
className: cx(cssClasses.count)
|
|
18
|
+
}, formatNumber(count)));
|
|
19
|
+
},
|
|
20
|
+
showMoreText: function showMoreText(_ref2) {
|
|
21
|
+
var isShowingMore = _ref2.isShowingMore;
|
|
22
|
+
return isShowingMore ? 'Show less' : 'Show more';
|
|
23
|
+
}
|
|
4
24
|
};
|
|
5
25
|
export default defaultTemplates;
|
|
@@ -10,6 +10,8 @@ declare type HierarchicalMenuTemplates = Partial<{
|
|
|
10
10
|
count: number;
|
|
11
11
|
isRefined: boolean;
|
|
12
12
|
url: string;
|
|
13
|
+
label: string;
|
|
14
|
+
cssClasses: HierarchicalMenuCSSClasses;
|
|
13
15
|
}>;
|
|
14
16
|
/**
|
|
15
17
|
* Template used for the show more text, provided with `isShowingMore` data property.
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/** @jsx h */
|
|
2
2
|
import type { HitsConnectorParams, HitsWidgetDescription } from '../../connectors/hits/connectHits';
|
|
3
3
|
import type { Template, TemplateWithBindEvent, Hit, WidgetFactory } from '../../types';
|
|
4
|
+
import type { SearchResults } from 'algoliasearch-helper';
|
|
4
5
|
export declare type HitsCSSClasses = Partial<{
|
|
5
6
|
/**
|
|
6
7
|
* CSS class to add to the wrapping element.
|
|
@@ -25,7 +26,7 @@ export declare type HitsTemplates = Partial<{
|
|
|
25
26
|
*
|
|
26
27
|
* @default 'No Results'
|
|
27
28
|
*/
|
|
28
|
-
empty: Template
|
|
29
|
+
empty: Template<SearchResults>;
|
|
29
30
|
/**
|
|
30
31
|
* Template to use for each result. This template will receive an object containing a single record.
|
|
31
32
|
*
|
|
@@ -42,6 +42,5 @@ export declare type IndexWidget = Omit<Widget<IndexWidgetDescription & {
|
|
|
42
42
|
}): SearchParameters;
|
|
43
43
|
refreshUiState(): void;
|
|
44
44
|
};
|
|
45
|
-
export declare function isIndexWidget(widget: Widget | IndexWidget): widget is IndexWidget;
|
|
46
45
|
declare const index: (widgetParams: IndexWidgetParams) => IndexWidget;
|
|
47
46
|
export default index;
|