react-instantsearch 7.17.0 → 7.19.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.
Files changed (111) hide show
  1. package/dist/cjs/components/AutocompleteSearch.js +38 -0
  2. package/dist/cjs/components/Carousel.js +6 -7
  3. package/dist/cjs/ui/Breadcrumb.js +4 -4
  4. package/dist/cjs/ui/ClearRefinements.js +4 -4
  5. package/dist/cjs/ui/CurrentRefinements.js +4 -4
  6. package/dist/cjs/ui/HierarchicalMenu.js +4 -4
  7. package/dist/cjs/ui/Highlight.js +4 -4
  8. package/dist/cjs/ui/HitsPerPage.js +4 -4
  9. package/dist/cjs/ui/InfiniteHits.js +4 -4
  10. package/dist/cjs/ui/Menu.js +4 -4
  11. package/dist/cjs/ui/Pagination.js +4 -4
  12. package/dist/cjs/ui/PoweredBy.js +4 -4
  13. package/dist/cjs/ui/RangeInput.js +8 -9
  14. package/dist/cjs/ui/RefinementList.js +4 -4
  15. package/dist/cjs/ui/SearchBox.js +4 -4
  16. package/dist/cjs/ui/ShowMoreButton.js +3 -3
  17. package/dist/cjs/ui/Snippet.js +4 -4
  18. package/dist/cjs/ui/SortBy.js +4 -4
  19. package/dist/cjs/ui/Stats.js +4 -4
  20. package/dist/cjs/ui/ToggleRefinement.js +4 -4
  21. package/dist/cjs/widgets/Autocomplete.js +215 -0
  22. package/dist/cjs/widgets/Breadcrumb.js +6 -6
  23. package/dist/cjs/widgets/Chat.js +48 -94
  24. package/dist/cjs/widgets/ClearRefinements.js +6 -6
  25. package/dist/cjs/widgets/CurrentRefinements.js +4 -4
  26. package/dist/cjs/widgets/FrequentlyBoughtTogether.js +9 -8
  27. package/dist/cjs/widgets/HierarchicalMenu.js +6 -6
  28. package/dist/cjs/widgets/Highlight.js +4 -4
  29. package/dist/cjs/widgets/Hits.js +4 -5
  30. package/dist/cjs/widgets/HitsPerPage.js +4 -4
  31. package/dist/cjs/widgets/InfiniteHits.js +6 -6
  32. package/dist/cjs/widgets/LookingSimilar.js +6 -7
  33. package/dist/cjs/widgets/Menu.js +6 -6
  34. package/dist/cjs/widgets/Pagination.js +6 -6
  35. package/dist/cjs/widgets/PoweredBy.js +2 -2
  36. package/dist/cjs/widgets/RangeInput.js +6 -6
  37. package/dist/cjs/widgets/RefinementList.js +10 -11
  38. package/dist/cjs/widgets/RelatedProducts.js +6 -7
  39. package/dist/cjs/widgets/SearchBox.js +10 -11
  40. package/dist/cjs/widgets/Snippet.js +4 -4
  41. package/dist/cjs/widgets/SortBy.js +4 -4
  42. package/dist/cjs/widgets/Stats.js +6 -6
  43. package/dist/cjs/widgets/ToggleRefinement.js +4 -4
  44. package/dist/cjs/widgets/TrendingItems.js +6 -7
  45. package/dist/cjs/widgets/chat/tools/SearchIndexTool.js +4 -5
  46. package/dist/cjs/widgets/index.js +11 -0
  47. package/dist/cjs/widgets/index.umd.js +12 -0
  48. package/dist/es/components/AutocompleteSearch.d.ts +6 -0
  49. package/dist/es/components/AutocompleteSearch.js +31 -0
  50. package/dist/es/components/Carousel.js +5 -5
  51. package/dist/es/ui/Breadcrumb.js +3 -3
  52. package/dist/es/ui/ClearRefinements.js +3 -3
  53. package/dist/es/ui/CurrentRefinements.js +3 -3
  54. package/dist/es/ui/HierarchicalMenu.js +3 -3
  55. package/dist/es/ui/Highlight.js +3 -3
  56. package/dist/es/ui/HitsPerPage.js +3 -3
  57. package/dist/es/ui/InfiniteHits.js +3 -3
  58. package/dist/es/ui/Menu.js +3 -3
  59. package/dist/es/ui/Pagination.js +3 -3
  60. package/dist/es/ui/PoweredBy.js +3 -3
  61. package/dist/es/ui/RangeInput.js +7 -7
  62. package/dist/es/ui/RefinementList.js +3 -3
  63. package/dist/es/ui/SearchBox.js +3 -3
  64. package/dist/es/ui/ShowMoreButton.js +2 -2
  65. package/dist/es/ui/Snippet.js +3 -3
  66. package/dist/es/ui/SortBy.js +3 -3
  67. package/dist/es/ui/Stats.js +3 -3
  68. package/dist/es/ui/ToggleRefinement.js +3 -3
  69. package/dist/es/widgets/Autocomplete.d.ts +34 -0
  70. package/dist/es/widgets/Autocomplete.js +208 -0
  71. package/dist/es/widgets/Breadcrumb.js +5 -5
  72. package/dist/es/widgets/Chat.d.ts +10 -6
  73. package/dist/es/widgets/Chat.js +47 -92
  74. package/dist/es/widgets/ClearRefinements.js +5 -5
  75. package/dist/es/widgets/CurrentRefinements.js +3 -3
  76. package/dist/es/widgets/FrequentlyBoughtTogether.d.ts +1 -1
  77. package/dist/es/widgets/FrequentlyBoughtTogether.js +8 -6
  78. package/dist/es/widgets/HierarchicalMenu.js +5 -5
  79. package/dist/es/widgets/Highlight.js +3 -3
  80. package/dist/es/widgets/Hits.js +3 -3
  81. package/dist/es/widgets/HitsPerPage.js +3 -3
  82. package/dist/es/widgets/InfiniteHits.js +5 -5
  83. package/dist/es/widgets/LookingSimilar.js +5 -5
  84. package/dist/es/widgets/Menu.js +5 -5
  85. package/dist/es/widgets/Pagination.js +5 -5
  86. package/dist/es/widgets/PoweredBy.js +1 -1
  87. package/dist/es/widgets/RangeInput.js +5 -5
  88. package/dist/es/widgets/RefinementList.js +9 -9
  89. package/dist/es/widgets/RelatedProducts.js +5 -5
  90. package/dist/es/widgets/SearchBox.js +9 -9
  91. package/dist/es/widgets/Snippet.js +3 -3
  92. package/dist/es/widgets/SortBy.js +3 -3
  93. package/dist/es/widgets/Stats.js +5 -5
  94. package/dist/es/widgets/ToggleRefinement.js +3 -3
  95. package/dist/es/widgets/TrendingItems.js +5 -5
  96. package/dist/es/widgets/chat/tools/SearchIndexTool.js +3 -3
  97. package/dist/es/widgets/index.d.ts +1 -0
  98. package/dist/es/widgets/index.js +1 -0
  99. package/dist/es/widgets/index.umd.d.ts +1 -0
  100. package/dist/es/widgets/index.umd.js +1 -0
  101. package/dist/umd/ReactInstantSearch.js +2959 -2263
  102. package/dist/umd/ReactInstantSearch.js.map +1 -1
  103. package/dist/umd/ReactInstantSearch.min.js +1 -1
  104. package/dist/umd/ReactInstantSearch.min.js.map +1 -1
  105. package/package.json +5 -5
  106. package/dist/cjs/components/Autocomplete.js +0 -114
  107. package/dist/cjs/components/useAutocomplete.js +0 -237
  108. package/dist/es/components/Autocomplete.d.ts +0 -20
  109. package/dist/es/components/Autocomplete.js +0 -106
  110. package/dist/es/components/useAutocomplete.d.ts +0 -35
  111. package/dist/es/components/useAutocomplete.js +0 -231
@@ -0,0 +1,215 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.EXPERIMENTAL_Autocomplete = EXPERIMENTAL_Autocomplete;
7
+ var _instantsearchUiComponents = require("instantsearch-ui-components");
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _reactInstantsearchCore = require("react-instantsearch-core");
10
+ var _AutocompleteSearch = require("../components/AutocompleteSearch");
11
+ var _excluded = ["indices", "showSuggestions", "showRecent"],
12
+ _excluded2 = ["indicesConfig", "refineSearchBox", "getSearchPageURL", "onSelect", "indexUiState", "isSearchPage", "showRecent"];
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
14
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
15
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
18
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
19
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
20
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
21
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
22
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
23
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
24
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
25
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
26
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
27
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
28
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
29
+ var Autocomplete = (0, _instantsearchUiComponents.createAutocompleteComponent)({
30
+ createElement: _react.createElement,
31
+ Fragment: _react.Fragment
32
+ });
33
+ var AutocompletePanel = (0, _instantsearchUiComponents.createAutocompletePanelComponent)({
34
+ createElement: _react.createElement,
35
+ Fragment: _react.Fragment
36
+ });
37
+ var AutocompleteIndex = (0, _instantsearchUiComponents.createAutocompleteIndexComponent)({
38
+ createElement: _react.createElement,
39
+ Fragment: _react.Fragment
40
+ });
41
+ var AutocompleteSuggestion = (0, _instantsearchUiComponents.createAutocompleteSuggestionComponent)({
42
+ createElement: _react.createElement,
43
+ Fragment: _react.Fragment
44
+ });
45
+ var AutocompleteRecentSearch = (0, _instantsearchUiComponents.createAutocompleteRecentSearchComponent)({
46
+ createElement: _react.createElement,
47
+ Fragment: _react.Fragment
48
+ });
49
+ var usePropGetters = (0, _instantsearchUiComponents.createAutocompletePropGetters)({
50
+ useEffect: _react.useEffect,
51
+ useId: _react.useId,
52
+ useMemo: _react.useMemo,
53
+ useRef: _react.useRef,
54
+ useState: _react.useState
55
+ });
56
+ var useStorage = (0, _instantsearchUiComponents.createAutocompleteStorage)({
57
+ useEffect: _react.useEffect,
58
+ useMemo: _react.useMemo,
59
+ useState: _react.useState
60
+ });
61
+ var _ref2 = /*#__PURE__*/_react.default.createElement(_reactInstantsearchCore.Configure, {
62
+ hitsPerPage: 5
63
+ });
64
+ function EXPERIMENTAL_Autocomplete(_ref) {
65
+ var _ref$indices = _ref.indices,
66
+ indices = _ref$indices === void 0 ? [] : _ref$indices,
67
+ showSuggestions = _ref.showSuggestions,
68
+ showRecent = _ref.showRecent,
69
+ props = _objectWithoutProperties(_ref, _excluded);
70
+ var _useInstantSearch = (0, _reactInstantsearchCore.useInstantSearch)(),
71
+ indexUiState = _useInstantSearch.indexUiState,
72
+ indexRenderState = _useInstantSearch.indexRenderState;
73
+ var _useSearchBox = (0, _reactInstantsearchCore.useSearchBox)({}, {
74
+ $$type: 'ais.autocomplete',
75
+ $$widgetType: 'ais.autocomplete'
76
+ }),
77
+ refine = _useSearchBox.refine;
78
+ var indicesConfig = _toConsumableArray(indices);
79
+ if (showSuggestions !== null && showSuggestions !== void 0 && showSuggestions.indexName) {
80
+ var _showSuggestions$clas, _showSuggestions$clas2, _showSuggestions$clas3, _showSuggestions$clas4;
81
+ indicesConfig.unshift({
82
+ indexName: showSuggestions.indexName,
83
+ headerComponent: showSuggestions.headerComponent,
84
+ itemComponent: showSuggestions.itemComponent || AutocompleteSuggestion,
85
+ classNames: {
86
+ root: (0, _instantsearchUiComponents.cx)('ais-AutocompleteSuggestions', showSuggestions === null || showSuggestions === void 0 ? void 0 : (_showSuggestions$clas = showSuggestions.classNames) === null || _showSuggestions$clas === void 0 ? void 0 : _showSuggestions$clas.root),
87
+ list: (0, _instantsearchUiComponents.cx)('ais-AutocompleteSuggestionsList', showSuggestions === null || showSuggestions === void 0 ? void 0 : (_showSuggestions$clas2 = showSuggestions.classNames) === null || _showSuggestions$clas2 === void 0 ? void 0 : _showSuggestions$clas2.list),
88
+ header: (0, _instantsearchUiComponents.cx)('ais-AutocompleteSuggestionsHeader', showSuggestions === null || showSuggestions === void 0 ? void 0 : (_showSuggestions$clas3 = showSuggestions.classNames) === null || _showSuggestions$clas3 === void 0 ? void 0 : _showSuggestions$clas3.header),
89
+ item: (0, _instantsearchUiComponents.cx)('ais-AutocompleteSuggestionsItem', showSuggestions === null || showSuggestions === void 0 ? void 0 : (_showSuggestions$clas4 = showSuggestions.classNames) === null || _showSuggestions$clas4 === void 0 ? void 0 : _showSuggestions$clas4.item)
90
+ },
91
+ getQuery: function getQuery(item) {
92
+ return item.query;
93
+ },
94
+ getURL: showSuggestions.getURL
95
+ });
96
+ }
97
+ var isSearchPage = (0, _react.useMemo)(function () {
98
+ return typeof indexRenderState.hits !== 'undefined' || typeof indexRenderState.infiniteHits !== 'undefined';
99
+ }, [indexRenderState]);
100
+ return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactInstantsearchCore.Index, {
101
+ EXPERIMENTAL_isolated: true
102
+ }, _ref2, indicesConfig.map(function (index) {
103
+ return /*#__PURE__*/_react.default.createElement(_reactInstantsearchCore.Index, {
104
+ key: index.indexName,
105
+ indexName: index.indexName
106
+ });
107
+ }), /*#__PURE__*/_react.default.createElement(InnerAutocomplete, _extends({}, props, {
108
+ indicesConfig: indicesConfig,
109
+ refineSearchBox: refine,
110
+ indexUiState: indexUiState,
111
+ isSearchPage: isSearchPage,
112
+ showRecent: showRecent
113
+ }))));
114
+ }
115
+ function InnerAutocomplete(_ref3) {
116
+ var indicesConfig = _ref3.indicesConfig,
117
+ refineSearchBox = _ref3.refineSearchBox,
118
+ getSearchPageURL = _ref3.getSearchPageURL,
119
+ userOnSelect = _ref3.onSelect,
120
+ indexUiState = _ref3.indexUiState,
121
+ isSearchPage = _ref3.isSearchPage,
122
+ showRecent = _ref3.showRecent,
123
+ props = _objectWithoutProperties(_ref3, _excluded2);
124
+ var _useAutocomplete = (0, _reactInstantsearchCore.useAutocomplete)(),
125
+ indices = _useAutocomplete.indices,
126
+ refineAutocomplete = _useAutocomplete.refine,
127
+ currentRefinement = _useAutocomplete.currentRefinement;
128
+ var _useStorage = useStorage({
129
+ showRecent: showRecent,
130
+ query: currentRefinement,
131
+ indices: indices,
132
+ indicesConfig: indicesConfig
133
+ }),
134
+ storage = _useStorage.storage,
135
+ storageHits = _useStorage.storageHits,
136
+ indicesForPropGetters = _useStorage.indicesForPropGetters,
137
+ indicesConfigForPropGetters = _useStorage.indicesConfigForPropGetters;
138
+ var _usePropGetters = usePropGetters({
139
+ indices: indicesForPropGetters,
140
+ indicesConfig: indicesConfigForPropGetters,
141
+ onRefine: function onRefine(query) {
142
+ refineAutocomplete(query);
143
+ refineSearchBox(query);
144
+ storage.onAdd(query);
145
+ },
146
+ onSelect: userOnSelect !== null && userOnSelect !== void 0 ? userOnSelect : function (_ref4) {
147
+ var query = _ref4.query,
148
+ setQuery = _ref4.setQuery,
149
+ url = _ref4.url;
150
+ if (url) {
151
+ window.location.href = url;
152
+ return;
153
+ }
154
+ if (!isSearchPage && typeof getSearchPageURL !== 'undefined') {
155
+ window.location.href = getSearchPageURL(_objectSpread(_objectSpread({}, indexUiState), {}, {
156
+ query: query
157
+ }));
158
+ return;
159
+ }
160
+ setQuery(query);
161
+ }
162
+ }),
163
+ getInputProps = _usePropGetters.getInputProps,
164
+ getItemProps = _usePropGetters.getItemProps,
165
+ getPanelProps = _usePropGetters.getPanelProps,
166
+ getRootProps = _usePropGetters.getRootProps;
167
+ var AutocompleteRecentSearchComponent = _typeof(showRecent) === 'object' && showRecent.itemComponent || AutocompleteRecentSearch;
168
+ return /*#__PURE__*/_react.default.createElement(Autocomplete, _extends({}, props, getRootProps()), /*#__PURE__*/_react.default.createElement(_AutocompleteSearch.AutocompleteSearch, {
169
+ inputProps: getInputProps(),
170
+ clearQuery: function clearQuery() {
171
+ refineSearchBox('');
172
+ refineAutocomplete('');
173
+ }
174
+ }), /*#__PURE__*/_react.default.createElement(AutocompletePanel, getPanelProps(), showRecent && /*#__PURE__*/_react.default.createElement(AutocompleteIndex
175
+ // @ts-ignore - there seems to be problems with React.ComponentType and this, but it's actually correct
176
+ , {
177
+ ItemComponent: function ItemComponent(_ref5) {
178
+ var item = _ref5.item,
179
+ onSelect = _ref5.onSelect;
180
+ return /*#__PURE__*/_react.default.createElement(AutocompleteRecentSearchComponent, {
181
+ item: item,
182
+ onSelect: onSelect,
183
+ onRemoveRecentSearch: function onRemoveRecentSearch() {
184
+ return storage.onRemove(item.query);
185
+ }
186
+ });
187
+ },
188
+ classNames: {
189
+ root: 'ais-AutocompleteRecentSearches',
190
+ list: 'ais-AutocompleteRecentSearchesList',
191
+ item: 'ais-AutocompleteRecentSearchesItem'
192
+ },
193
+ items: storageHits,
194
+ getItemProps: getItemProps
195
+ }), indices.map(function (_ref6, index) {
196
+ var indexId = _ref6.indexId,
197
+ hits = _ref6.hits;
198
+ return /*#__PURE__*/_react.default.createElement(AutocompleteIndex, {
199
+ key: indexId
200
+ // @ts-expect-error - there seems to be problems with React.ComponentType and this, but it's actually correct
201
+ ,
202
+ HeaderComponent: indicesConfig[index].headerComponent
203
+ // @ts-expect-error - there seems to be problems with React.ComponentType and this, but it's actually correct
204
+ ,
205
+ ItemComponent: indicesConfig[index].itemComponent,
206
+ items: hits.map(function (item) {
207
+ return _objectSpread(_objectSpread({}, item), {}, {
208
+ __indexName: indexId
209
+ });
210
+ }),
211
+ getItemProps: getItemProps,
212
+ classNames: indicesConfig[index].classNames
213
+ });
214
+ })));
215
+ }
@@ -9,15 +9,15 @@ var _react = _interopRequireDefault(require("react"));
9
9
  var _reactInstantsearchCore = require("react-instantsearch-core");
10
10
  var _Breadcrumb = require("../ui/Breadcrumb");
11
11
  var _excluded = ["attributes", "rootPath", "separator", "transformItems", "translations"];
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
14
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
15
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
16
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
18
18
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
20
- 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; }
19
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
20
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
21
21
  function Breadcrumb(_ref) {
22
22
  var attributes = _ref.attributes,
23
23
  rootPath = _ref.rootPath,
@@ -17,29 +17,27 @@ Object.defineProperty(exports, "SearchIndexToolType", {
17
17
  }
18
18
  });
19
19
  exports.createDefaultTools = createDefaultTools;
20
- var _ai = require("ai");
21
20
  var _instantsearchUiComponents = require("instantsearch-ui-components");
22
21
  var _chat = require("instantsearch.js/cjs/lib/chat");
23
22
  var _react = _interopRequireWildcard(require("react"));
24
23
  var _reactInstantsearchCore = require("react-instantsearch-core");
25
24
  var _useStickToBottom2 = require("../lib/useStickToBottom");
26
25
  var _SearchIndexTool = require("./chat/tools/SearchIndexTool");
27
- var _excluded = ["tools", "defaultOpen", "toggleButtonProps", "headerProps", "messagesProps", "promptProps", "itemComponent", "toggleButtonComponent", "toggleButtonIconComponent", "headerComponent", "headerTitleIconComponent", "headerCloseIconComponent", "headerMinimizeIconComponent", "headerMaximizeIconComponent", "messagesLoaderComponent", "messagesErrorComponent", "promptComponent", "promptHeaderComponent", "promptFooterComponent", "actionsComponent", "classNames", "translations", "title", "getSearchPageURL"];
28
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
29
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
26
+ var _excluded = ["tools", "toggleButtonProps", "headerProps", "messagesProps", "promptProps", "itemComponent", "toggleButtonComponent", "toggleButtonIconComponent", "headerComponent", "headerTitleIconComponent", "headerCloseIconComponent", "headerMinimizeIconComponent", "headerMaximizeIconComponent", "messagesLoaderComponent", "messagesErrorComponent", "promptComponent", "promptHeaderComponent", "promptFooterComponent", "assistantMessageLeadingComponent", "assistantMessageFooterComponent", "userMessageLeadingComponent", "userMessageFooterComponent", "actionsComponent", "classNames", "translations", "title", "getSearchPageURL"];
27
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
30
28
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
31
29
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
32
30
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
33
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
31
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
34
32
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
35
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
36
- 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; }
33
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
34
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
37
35
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
38
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
39
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
40
- 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; }
41
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
42
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
36
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
37
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
38
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
39
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
40
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
43
41
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
44
42
  var ChatUiComponent = (0, _instantsearchUiComponents.createChatComponent)({
45
43
  createElement: _react.createElement,
@@ -51,8 +49,6 @@ function createDefaultTools(itemComponent, getSearchPageURL) {
51
49
  }
52
50
  function Chat(_ref2) {
53
51
  var userTools = _ref2.tools,
54
- _ref2$defaultOpen = _ref2.defaultOpen,
55
- defaultOpen = _ref2$defaultOpen === void 0 ? false : _ref2$defaultOpen,
56
52
  toggleButtonProps = _ref2.toggleButtonProps,
57
53
  headerProps = _ref2.headerProps,
58
54
  messagesProps = _ref2.messagesProps,
@@ -70,6 +66,10 @@ function Chat(_ref2) {
70
66
  promptComponent = _ref2.promptComponent,
71
67
  promptHeaderComponent = _ref2.promptHeaderComponent,
72
68
  promptFooterComponent = _ref2.promptFooterComponent,
69
+ assistantMessageLeadingComponent = _ref2.assistantMessageLeadingComponent,
70
+ assistantMessageFooterComponent = _ref2.assistantMessageFooterComponent,
71
+ userMessageLeadingComponent = _ref2.userMessageLeadingComponent,
72
+ userMessageFooterComponent = _ref2.userMessageFooterComponent,
73
73
  actionsComponent = _ref2.actionsComponent,
74
74
  classNames = _ref2.classNames,
75
75
  _ref2$translations = _ref2.translations,
@@ -79,26 +79,15 @@ function Chat(_ref2) {
79
79
  props = _objectWithoutProperties(_ref2, _excluded);
80
80
  var promptTranslations = translations.prompt,
81
81
  headerTranslations = translations.header,
82
+ messageTranslations = translations.message,
82
83
  messagesTranslations = translations.messages;
83
84
  var _useInstantSearch = (0, _reactInstantsearchCore.useInstantSearch)(),
84
85
  indexUiState = _useInstantSearch.indexUiState,
85
86
  setIndexUiState = _useInstantSearch.setIndexUiState;
86
- var _React$useState = _react.default.useState(defaultOpen),
87
+ var _React$useState = _react.default.useState(false),
87
88
  _React$useState2 = _slicedToArray(_React$useState, 2),
88
- open = _React$useState2[0],
89
- setOpen = _React$useState2[1];
90
- var _React$useState3 = _react.default.useState(false),
91
- _React$useState4 = _slicedToArray(_React$useState3, 2),
92
- maximized = _React$useState4[0],
93
- setMaximized = _React$useState4[1];
94
- var _React$useState5 = _react.default.useState(''),
95
- _React$useState6 = _slicedToArray(_React$useState5, 2),
96
- input = _React$useState6[0],
97
- setInput = _React$useState6[1];
98
- var _React$useState7 = _react.default.useState(false),
99
- _React$useState8 = _slicedToArray(_React$useState7, 2),
100
- isClearing = _React$useState8[0],
101
- setIsClearing = _React$useState8[1];
89
+ maximized = _React$useState2[0],
90
+ setMaximized = _React$useState2[1];
102
91
  var promptRef = _react.default.useRef(null);
103
92
  var _useStickToBottom = (0, _useStickToBottom2.useStickToBottom)({
104
93
  initial: 'smooth',
@@ -112,67 +101,23 @@ function Chat(_ref2) {
112
101
  var defaults = createDefaultTools(itemComponent, getSearchPageURL);
113
102
  return _objectSpread(_objectSpread({}, defaults), userTools);
114
103
  }, [getSearchPageURL, itemComponent, userTools]);
115
- var _useChat = (0, _reactInstantsearchCore.useChat)(_objectSpread(_objectSpread({}, props), {}, {
116
- sendAutomaticallyWhen: _ai.lastAssistantMessageIsCompleteWithToolCalls,
117
- onToolCall: function onToolCall(_ref3) {
118
- var toolCall = _ref3.toolCall;
119
- var tool = tools[toolCall.toolName];
120
- if (!tool) {
121
- if (process.env.NODE_ENV === 'development') {
122
- throw new Error("No tool implementation found for \"".concat(toolCall.toolName, "\". Please provide a tool implementation in the `tools` prop."));
123
- }
124
- addToolResult({
125
- output: "No tool implemented for \"".concat(toolCall.toolName, "\"."),
126
- tool: toolCall.toolName,
127
- toolCallId: toolCall.toolCallId
128
- });
129
- return;
130
- }
131
- if (tool.onToolCall) {
132
- var scopedAddToolResult = function scopedAddToolResult(_ref4) {
133
- var output = _ref4.output;
134
- return addToolResult({
135
- output: output,
136
- tool: toolCall.toolName,
137
- toolCallId: toolCall.toolCallId
138
- });
139
- };
140
- tool.onToolCall(_objectSpread(_objectSpread({}, toolCall), {}, {
141
- addToolResult: scopedAddToolResult
142
- }));
143
- }
144
- }
145
- })),
146
- messages = _useChat.messages,
147
- sendMessage = _useChat.sendMessage,
148
- addToolResult = _useChat.addToolResult,
149
- status = _useChat.status,
150
- regenerate = _useChat.regenerate,
151
- stop = _useChat.stop,
152
- setMessages = _useChat.setMessages,
153
- clearError = _useChat.clearError,
154
- error = _useChat.error;
155
- var toolsForUi = _react.default.useMemo(function () {
156
- var result = {};
157
- Object.entries(tools).forEach(function (_ref5) {
158
- var _ref6 = _slicedToArray(_ref5, 2),
159
- key = _ref6[0],
160
- tool = _ref6[1];
161
- result[key] = _objectSpread(_objectSpread({}, tool), {}, {
162
- addToolResult: addToolResult
163
- });
164
- });
165
- return result;
166
- }, [tools, addToolResult]);
167
- var handleClear = _react.default.useCallback(function () {
168
- if (!messages || messages.length === 0) return;
169
- setIsClearing(true);
170
- }, [messages]);
171
- var handleClearTransitionEnd = _react.default.useCallback(function () {
172
- setMessages([]);
173
- clearError();
174
- setIsClearing(false);
175
- }, [setMessages, clearError]);
104
+ var chatState = (0, _reactInstantsearchCore.useChat)(_objectSpread(_objectSpread({}, props), {}, {
105
+ tools: tools
106
+ }));
107
+ var messages = chatState.messages,
108
+ sendMessage = chatState.sendMessage,
109
+ status = chatState.status,
110
+ regenerate = chatState.regenerate,
111
+ stop = chatState.stop,
112
+ error = chatState.error,
113
+ input = chatState.input,
114
+ setInput = chatState.setInput,
115
+ open = chatState.open,
116
+ setOpen = chatState.setOpen,
117
+ isClearing = chatState.isClearing,
118
+ clearMessages = chatState.clearMessages,
119
+ onClearTransitionEnd = chatState.onClearTransitionEnd,
120
+ toolsFromConnector = chatState.tools;
176
121
  if (process.env.NODE_ENV === 'development' && error) {
177
122
  throw error;
178
123
  }
@@ -198,7 +143,7 @@ function Chat(_ref2) {
198
143
  onToggleMaximize: function onToggleMaximize() {
199
144
  return setMaximized(!maximized);
200
145
  },
201
- onClear: handleClear,
146
+ onClear: clearMessages,
202
147
  canClear: Boolean(messages === null || messages === void 0 ? void 0 : messages.length) && !isClearing,
203
148
  titleIconComponent: headerTitleIconComponent,
204
149
  closeIconComponent: headerCloseIconComponent,
@@ -217,11 +162,11 @@ function Chat(_ref2) {
217
162
  return setOpen(false);
218
163
  },
219
164
  messages: messages,
220
- tools: toolsForUi,
165
+ tools: toolsFromConnector,
221
166
  indexUiState: indexUiState,
222
167
  setIndexUiState: setIndexUiState,
223
168
  isClearing: isClearing,
224
- onClearTransitionEnd: handleClearTransitionEnd,
169
+ onClearTransitionEnd: onClearTransitionEnd,
225
170
  isScrollAtBottom: isAtBottom,
226
171
  scrollRef: scrollRef,
227
172
  contentRef: contentRef,
@@ -229,7 +174,16 @@ function Chat(_ref2) {
229
174
  loaderComponent: messagesLoaderComponent,
230
175
  errorComponent: messagesErrorComponent,
231
176
  actionsComponent: actionsComponent,
232
- translations: messagesTranslations
177
+ assistantMessageProps: _objectSpread({
178
+ leadingComponent: assistantMessageLeadingComponent,
179
+ footerComponent: assistantMessageFooterComponent
180
+ }, messagesProps === null || messagesProps === void 0 ? void 0 : messagesProps.assistantMessageProps),
181
+ userMessageProps: _objectSpread({
182
+ leadingComponent: userMessageLeadingComponent,
183
+ footerComponent: userMessageFooterComponent
184
+ }, messagesProps === null || messagesProps === void 0 ? void 0 : messagesProps.userMessageProps),
185
+ translations: messagesTranslations,
186
+ messageTranslations: messageTranslations
233
187
  }, messagesProps),
234
188
  promptProps: _objectSpread({
235
189
  promptRef: promptRef,
@@ -9,15 +9,15 @@ var _react = _interopRequireDefault(require("react"));
9
9
  var _reactInstantsearchCore = require("react-instantsearch-core");
10
10
  var _ClearRefinements = require("../ui/ClearRefinements");
11
11
  var _excluded = ["includedAttributes", "excludedAttributes", "transformItems", "translations"];
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
14
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
15
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
16
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
18
18
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
20
- 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; }
19
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
20
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
21
21
  function ClearRefinements(_ref) {
22
22
  var includedAttributes = _ref.includedAttributes,
23
23
  excludedAttributes = _ref.excludedAttributes,
@@ -8,10 +8,10 @@ var _react = _interopRequireDefault(require("react"));
8
8
  var _reactInstantsearchCore = require("react-instantsearch-core");
9
9
  var _CurrentRefinements = require("../ui/CurrentRefinements");
10
10
  var _excluded = ["includedAttributes", "excludedAttributes", "transformItems"];
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
13
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
14
- 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; }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
13
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
14
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
15
15
  function CurrentRefinements(_ref) {
16
16
  var includedAttributes = _ref.includedAttributes,
17
17
  excludedAttributes = _ref.excludedAttributes,
@@ -8,17 +8,16 @@ exports.FrequentlyBoughtTogether = FrequentlyBoughtTogether;
8
8
  var _instantsearchUiComponents = require("instantsearch-ui-components");
9
9
  var _react = _interopRequireWildcard(require("react"));
10
10
  var _reactInstantsearchCore = require("react-instantsearch-core");
11
- var _excluded = ["objectIDs", "limit", "threshold", "queryParameters", "escapeHTML", "transformItems", "itemComponent", "headerComponent", "emptyComponent", "layoutComponent"];
12
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
13
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
11
+ var _excluded = ["objectIDs", "limit", "threshold", "queryParameters", "fallbackParameters", "escapeHTML", "transformItems", "itemComponent", "headerComponent", "emptyComponent", "layoutComponent"];
12
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
13
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
15
14
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
15
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
18
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
16
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
19
18
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
20
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
21
- 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; }
19
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
20
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
22
21
  var FrequentlyBoughtTogetherUiComponent = (0, _instantsearchUiComponents.createFrequentlyBoughtTogetherComponent)({
23
22
  createElement: _react.createElement,
24
23
  Fragment: _react.Fragment
@@ -28,6 +27,7 @@ function FrequentlyBoughtTogether(_ref) {
28
27
  limit = _ref.limit,
29
28
  threshold = _ref.threshold,
30
29
  queryParameters = _ref.queryParameters,
30
+ fallbackParameters = _ref.fallbackParameters,
31
31
  escapeHTML = _ref.escapeHTML,
32
32
  transformItems = _ref.transformItems,
33
33
  itemComponent = _ref.itemComponent,
@@ -42,6 +42,7 @@ function FrequentlyBoughtTogether(_ref) {
42
42
  limit: limit,
43
43
  threshold: threshold,
44
44
  queryParameters: queryParameters,
45
+ fallbackParameters: fallbackParameters,
45
46
  escapeHTML: escapeHTML,
46
47
  transformItems: transformItems
47
48
  }, {
@@ -9,15 +9,15 @@ var _react = _interopRequireDefault(require("react"));
9
9
  var _reactInstantsearchCore = require("react-instantsearch-core");
10
10
  var _HierarchicalMenu = require("../ui/HierarchicalMenu");
11
11
  var _excluded = ["attributes", "limit", "rootPath", "separator", "showMore", "showMoreLimit", "showParentLevel", "sortBy", "transformItems", "translations"];
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
14
14
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
15
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
- function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
- function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
16
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
17
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
18
18
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
19
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
20
- 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; }
19
+ function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
20
+ function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
21
21
  function HierarchicalMenu(_ref) {
22
22
  var attributes = _ref.attributes,
23
23
  limit = _ref.limit,