@algolia/autocomplete-plugin-recent-searches 1.8.2 → 1.9.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.
@@ -1,12 +1,12 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
2
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
-
3
3
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
-
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
-
4
+ 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; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
7
  export function addHighlightedAttribute(_ref) {
8
8
  var item = _ref.item,
9
- query = _ref.query;
9
+ query = _ref.query;
10
10
  return _objectSpread(_objectSpread({}, item), {}, {
11
11
  _highlightResult: {
12
12
  label: {
@@ -1,20 +1,14 @@
1
1
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
-
3
2
  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."); }
4
-
5
3
  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); }
6
-
7
4
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
8
-
9
5
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
10
-
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
-
6
+ 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; }
13
7
  import { getLocalStorage } from './getLocalStorage';
14
8
  export function createLocalStorage(_ref) {
15
9
  var key = _ref.key,
16
- limit = _ref.limit,
17
- search = _ref.search;
10
+ limit = _ref.limit,
11
+ search = _ref.search;
18
12
  var storage = getLocalStorage({
19
13
  key: key
20
14
  });
@@ -1,21 +1,20 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
2
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2
-
3
3
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
-
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
-
4
+ 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; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
7
  import { LOCAL_STORAGE_KEY } from './constants';
8
8
  import { createLocalStorage } from './createLocalStorage';
9
9
  import { createRecentSearchesPlugin } from './createRecentSearchesPlugin';
10
10
  import { search as defaultSearch } from './search';
11
11
  export function createLocalStorageRecentSearchesPlugin(options) {
12
12
  var _getOptions = getOptions(options),
13
- key = _getOptions.key,
14
- limit = _getOptions.limit,
15
- transformSource = _getOptions.transformSource,
16
- search = _getOptions.search,
17
- subscribe = _getOptions.subscribe;
18
-
13
+ key = _getOptions.key,
14
+ limit = _getOptions.limit,
15
+ transformSource = _getOptions.transformSource,
16
+ search = _getOptions.search,
17
+ subscribe = _getOptions.subscribe;
19
18
  var storage = createLocalStorage({
20
19
  key: [LOCAL_STORAGE_KEY, key].join(':'),
21
20
  limit: limit,
@@ -31,7 +30,6 @@ export function createLocalStorageRecentSearchesPlugin(options) {
31
30
  __autocomplete_pluginOptions: options
32
31
  });
33
32
  }
34
-
35
33
  function getOptions(options) {
36
34
  return _objectSpread({
37
35
  limit: 5,
@@ -1,37 +1,29 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
1
2
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
-
3
3
  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."); }
4
-
5
4
  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); }
6
-
7
5
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
8
-
9
6
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
10
-
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
-
7
+ 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; }
13
8
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
-
15
9
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
-
17
- 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; }
18
-
10
+ 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; }
11
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
12
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
19
13
  import { createRef, warn } from '@algolia/autocomplete-shared';
20
14
  import { createStorageApi } from './createStorageApi';
21
15
  import { getTemplates } from './getTemplates';
22
-
23
16
  function getDefaultSubscribe(store) {
24
17
  return function subscribe(_ref) {
25
18
  var onSelect = _ref.onSelect;
26
19
  onSelect(function (_ref2) {
27
20
  var item = _ref2.item,
28
- state = _ref2.state,
29
- source = _ref2.source;
21
+ state = _ref2.state,
22
+ source = _ref2.source;
30
23
  var inputValue = source.getItemInputValue({
31
24
  item: item,
32
25
  state: state
33
26
  });
34
-
35
27
  if (source.sourceId === 'querySuggestionsPlugin' && inputValue) {
36
28
  var recentItem = {
37
29
  id: inputValue,
@@ -43,13 +35,11 @@ function getDefaultSubscribe(store) {
43
35
  });
44
36
  };
45
37
  }
46
-
47
38
  export function createRecentSearchesPlugin(options) {
48
39
  var _getOptions = getOptions(options),
49
- storage = _getOptions.storage,
50
- transformSource = _getOptions.transformSource,
51
- subscribe = _getOptions.subscribe;
52
-
40
+ storage = _getOptions.storage,
41
+ transformSource = _getOptions.transformSource,
42
+ subscribe = _getOptions.subscribe;
53
43
  var store = createStorageApi(storage);
54
44
  var lastItemsRef = createRef([]);
55
45
  return {
@@ -58,7 +48,6 @@ export function createRecentSearchesPlugin(options) {
58
48
  onSubmit: function onSubmit(_ref3) {
59
49
  var state = _ref3.state;
60
50
  var query = state.query;
61
-
62
51
  if (query) {
63
52
  var recentItem = {
64
53
  id: query,
@@ -69,26 +58,22 @@ export function createRecentSearchesPlugin(options) {
69
58
  },
70
59
  getSources: function getSources(_ref4) {
71
60
  var query = _ref4.query,
72
- setQuery = _ref4.setQuery,
73
- refresh = _ref4.refresh,
74
- state = _ref4.state;
61
+ setQuery = _ref4.setQuery,
62
+ refresh = _ref4.refresh,
63
+ state = _ref4.state;
75
64
  lastItemsRef.current = store.getAll(query);
76
-
77
65
  function onRemove(id) {
78
66
  store.removeItem(id);
79
67
  refresh();
80
68
  }
81
-
82
69
  function onTapAhead(item) {
83
70
  setQuery(item.label);
84
71
  refresh();
85
72
  }
86
-
87
73
  return Promise.resolve(lastItemsRef.current).then(function (items) {
88
74
  if (items.length === 0) {
89
75
  return [];
90
76
  }
91
-
92
77
  return [transformSource({
93
78
  source: {
94
79
  sourceId: 'recentSearchesPlugin',
@@ -114,9 +99,7 @@ export function createRecentSearchesPlugin(options) {
114
99
  // @ts-ignore SearchOptions `facetFilters` is ReadonlyArray
115
100
  getAlgoliaSearchParams: function getAlgoliaSearchParams() {
116
101
  var _params$facetFilters, _params$hitsPerPage;
117
-
118
102
  var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
119
-
120
103
  // If the items returned by `store.getAll` are contained in a Promise,
121
104
  // we cannot provide the search params in time when this function is called
122
105
  // because we need to resolve the promise before getting the value.
@@ -124,7 +107,6 @@ export function createRecentSearchesPlugin(options) {
124
107
  process.env.NODE_ENV !== 'production' ? warn(false, 'The `getAlgoliaSearchParams` function is not supported with storages that return promises in `getAll`.') : void 0;
125
108
  return params;
126
109
  }
127
-
128
110
  return _objectSpread(_objectSpread({}, params), {}, {
129
111
  facetFilters: [].concat(_toConsumableArray((_params$facetFilters = params.facetFilters) !== null && _params$facetFilters !== void 0 ? _params$facetFilters : []), _toConsumableArray(lastItemsRef.current.map(function (item) {
130
112
  return ["objectID:-".concat(item.label)];
@@ -136,7 +118,6 @@ export function createRecentSearchesPlugin(options) {
136
118
  __autocomplete_pluginOptions: options
137
119
  };
138
120
  }
139
-
140
121
  function getOptions(options) {
141
122
  return _objectSpread({
142
123
  transformSource: function transformSource(_ref6) {
@@ -1,5 +1,4 @@
1
1
  import { LOCAL_STORAGE_KEY_TEST } from './constants';
2
-
3
2
  function isLocalStorageSupported() {
4
3
  try {
5
4
  localStorage.setItem(LOCAL_STORAGE_KEY_TEST, '');
@@ -9,10 +8,8 @@ function isLocalStorageSupported() {
9
8
  return false;
10
9
  }
11
10
  }
12
-
13
11
  export function getLocalStorage(_ref) {
14
12
  var key = _ref.key;
15
-
16
13
  if (!isLocalStorageSupported()) {
17
14
  return {
18
15
  setItem: function setItem() {},
@@ -21,7 +18,6 @@ export function getLocalStorage(_ref) {
21
18
  }
22
19
  };
23
20
  }
24
-
25
21
  return {
26
22
  setItem: function setItem(items) {
27
23
  return window.localStorage.setItem(key, JSON.stringify(items));
@@ -1,14 +1,14 @@
1
1
  /** @jsxRuntime classic */
2
-
3
2
  /** @jsx createElement */
3
+
4
4
  export function getTemplates(_ref) {
5
5
  var onRemove = _ref.onRemove,
6
- onTapAhead = _ref.onTapAhead;
6
+ onTapAhead = _ref.onTapAhead;
7
7
  return {
8
8
  item: function item(_ref2) {
9
9
  var item = _ref2.item,
10
- createElement = _ref2.createElement,
11
- components = _ref2.components;
10
+ createElement = _ref2.createElement,
11
+ components = _ref2.components;
12
12
  return createElement("div", {
13
13
  className: "aa-ItemWrapper"
14
14
  }, createElement("div", {
@@ -1,9 +1,8 @@
1
1
  import { addHighlightedAttribute } from './addHighlightedAttribute';
2
2
  export function search(_ref) {
3
3
  var query = _ref.query,
4
- items = _ref.items,
5
- limit = _ref.limit;
6
-
4
+ items = _ref.items,
5
+ limit = _ref.limit;
7
6
  if (!query) {
8
7
  return items.slice(0, limit).map(function (item) {
9
8
  return addHighlightedAttribute({
@@ -12,7 +11,6 @@ export function search(_ref) {
12
11
  });
13
12
  });
14
13
  }
15
-
16
14
  return items.filter(function (item) {
17
15
  return item.label.toLowerCase().includes(query.toLowerCase());
18
16
  }).slice(0, limit).map(function (item) {
@@ -1,4 +1,4 @@
1
- /*! @algolia/autocomplete-plugin-recent-searches 1.8.2 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
1
+ /*! @algolia/autocomplete-plugin-recent-searches 1.9.0 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
2
2
  (function (global, factory) {
3
3
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
4
4
  typeof define === 'function' && define.amd ? define(['exports'], factory) :
@@ -7,17 +7,14 @@
7
7
 
8
8
  function ownKeys(object, enumerableOnly) {
9
9
  var keys = Object.keys(object);
10
-
11
10
  if (Object.getOwnPropertySymbols) {
12
11
  var symbols = Object.getOwnPropertySymbols(object);
13
12
  enumerableOnly && (symbols = symbols.filter(function (sym) {
14
13
  return Object.getOwnPropertyDescriptor(object, sym).enumerable;
15
14
  })), keys.push.apply(keys, symbols);
16
15
  }
17
-
18
16
  return keys;
19
17
  }
20
-
21
18
  function _objectSpread2(target) {
22
19
  for (var i = 1; i < arguments.length; i++) {
23
20
  var source = null != arguments[i] ? arguments[i] : {};
@@ -27,11 +24,10 @@
27
24
  Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
28
25
  });
29
26
  }
30
-
31
27
  return target;
32
28
  }
33
-
34
29
  function _defineProperty(obj, key, value) {
30
+ key = _toPropertyKey(key);
35
31
  if (key in obj) {
36
32
  Object.defineProperty(obj, key, {
37
33
  value: value,
@@ -42,22 +38,17 @@
42
38
  } else {
43
39
  obj[key] = value;
44
40
  }
45
-
46
41
  return obj;
47
42
  }
48
-
49
43
  function _toConsumableArray(arr) {
50
44
  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
51
45
  }
52
-
53
46
  function _arrayWithoutHoles(arr) {
54
47
  if (Array.isArray(arr)) return _arrayLikeToArray(arr);
55
48
  }
56
-
57
49
  function _iterableToArray(iter) {
58
50
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
59
51
  }
60
-
61
52
  function _unsupportedIterableToArray(o, minLen) {
62
53
  if (!o) return;
63
54
  if (typeof o === "string") return _arrayLikeToArray(o, minLen);
@@ -66,22 +57,32 @@
66
57
  if (n === "Map" || n === "Set") return Array.from(o);
67
58
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
68
59
  }
69
-
70
60
  function _arrayLikeToArray(arr, len) {
71
61
  if (len == null || len > arr.length) len = arr.length;
72
-
73
62
  for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
74
-
75
63
  return arr2;
76
64
  }
77
-
78
65
  function _nonIterableSpread() {
79
66
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
80
67
  }
68
+ function _toPrimitive(input, hint) {
69
+ if (typeof input !== "object" || input === null) return input;
70
+ var prim = input[Symbol.toPrimitive];
71
+ if (prim !== undefined) {
72
+ var res = prim.call(input, hint || "default");
73
+ if (typeof res !== "object") return res;
74
+ throw new TypeError("@@toPrimitive must return a primitive value.");
75
+ }
76
+ return (hint === "string" ? String : Number)(input);
77
+ }
78
+ function _toPropertyKey(arg) {
79
+ var key = _toPrimitive(arg, "string");
80
+ return typeof key === "symbol" ? key : String(key);
81
+ }
81
82
 
82
83
  function addHighlightedAttribute(_ref) {
83
84
  var item = _ref.item,
84
- query = _ref.query;
85
+ query = _ref.query;
85
86
  return _objectSpread2(_objectSpread2({}, item), {}, {
86
87
  _highlightResult: {
87
88
  label: {
@@ -105,10 +106,8 @@
105
106
  return false;
106
107
  }
107
108
  }
108
-
109
109
  function getLocalStorage(_ref) {
110
110
  var key = _ref.key;
111
-
112
111
  if (!isLocalStorageSupported()) {
113
112
  return {
114
113
  setItem: function setItem() {},
@@ -117,7 +116,6 @@
117
116
  }
118
117
  };
119
118
  }
120
-
121
119
  return {
122
120
  setItem: function setItem(items) {
123
121
  return window.localStorage.setItem(key, JSON.stringify(items));
@@ -131,8 +129,8 @@
131
129
 
132
130
  function createLocalStorage(_ref) {
133
131
  var key = _ref.key,
134
- limit = _ref.limit,
135
- search = _ref.search;
132
+ limit = _ref.limit,
133
+ search = _ref.search;
136
134
  var storage = getLocalStorage({
137
135
  key: key
138
136
  });
@@ -165,23 +163,21 @@
165
163
  var warnCache = {
166
164
  current: {}
167
165
  };
166
+
168
167
  /**
169
168
  * Logs a warning if the condition is not met.
170
169
  * This is used to log issues in development environment only.
171
170
  */
172
-
173
171
  function warn(condition, message) {
174
-
175
172
  if (condition) {
176
173
  return;
177
174
  }
178
-
179
175
  var sanitizedMessage = message.trim();
180
176
  var hasAlreadyPrinted = warnCache.current[sanitizedMessage];
181
-
182
177
  if (!hasAlreadyPrinted) {
183
- warnCache.current[sanitizedMessage] = true; // eslint-disable-next-line no-console
178
+ warnCache.current[sanitizedMessage] = true;
184
179
 
180
+ // eslint-disable-next-line no-console
185
181
  console.warn("[Autocomplete] ".concat(sanitizedMessage));
186
182
  }
187
183
  }
@@ -202,16 +198,16 @@
202
198
  }
203
199
 
204
200
  /** @jsxRuntime classic */
205
-
206
201
  /** @jsx createElement */
202
+
207
203
  function getTemplates(_ref) {
208
204
  var onRemove = _ref.onRemove,
209
- onTapAhead = _ref.onTapAhead;
205
+ onTapAhead = _ref.onTapAhead;
210
206
  return {
211
207
  item: function item(_ref2) {
212
208
  var item = _ref2.item,
213
- createElement = _ref2.createElement,
214
- components = _ref2.components;
209
+ createElement = _ref2.createElement,
210
+ components = _ref2.components;
215
211
  return createElement("div", {
216
212
  className: "aa-ItemWrapper"
217
213
  }, createElement("div", {
@@ -274,13 +270,12 @@
274
270
  var onSelect = _ref.onSelect;
275
271
  onSelect(function (_ref2) {
276
272
  var item = _ref2.item,
277
- state = _ref2.state,
278
- source = _ref2.source;
273
+ state = _ref2.state,
274
+ source = _ref2.source;
279
275
  var inputValue = source.getItemInputValue({
280
276
  item: item,
281
277
  state: state
282
278
  });
283
-
284
279
  if (source.sourceId === 'querySuggestionsPlugin' && inputValue) {
285
280
  var recentItem = {
286
281
  id: inputValue,
@@ -292,13 +287,11 @@
292
287
  });
293
288
  };
294
289
  }
295
-
296
290
  function createRecentSearchesPlugin(options) {
297
291
  var _getOptions = getOptions$1(options),
298
- storage = _getOptions.storage,
299
- transformSource = _getOptions.transformSource,
300
- subscribe = _getOptions.subscribe;
301
-
292
+ storage = _getOptions.storage,
293
+ transformSource = _getOptions.transformSource,
294
+ subscribe = _getOptions.subscribe;
302
295
  var store = createStorageApi(storage);
303
296
  var lastItemsRef = createRef([]);
304
297
  return {
@@ -307,7 +300,6 @@
307
300
  onSubmit: function onSubmit(_ref3) {
308
301
  var state = _ref3.state;
309
302
  var query = state.query;
310
-
311
303
  if (query) {
312
304
  var recentItem = {
313
305
  id: query,
@@ -318,26 +310,22 @@
318
310
  },
319
311
  getSources: function getSources(_ref4) {
320
312
  var query = _ref4.query,
321
- setQuery = _ref4.setQuery,
322
- refresh = _ref4.refresh,
323
- state = _ref4.state;
313
+ setQuery = _ref4.setQuery,
314
+ refresh = _ref4.refresh,
315
+ state = _ref4.state;
324
316
  lastItemsRef.current = store.getAll(query);
325
-
326
317
  function onRemove(id) {
327
318
  store.removeItem(id);
328
319
  refresh();
329
320
  }
330
-
331
321
  function onTapAhead(item) {
332
322
  setQuery(item.label);
333
323
  refresh();
334
324
  }
335
-
336
325
  return Promise.resolve(lastItemsRef.current).then(function (items) {
337
326
  if (items.length === 0) {
338
327
  return [];
339
328
  }
340
-
341
329
  return [transformSource({
342
330
  source: {
343
331
  sourceId: 'recentSearchesPlugin',
@@ -363,9 +351,7 @@
363
351
  // @ts-ignore SearchOptions `facetFilters` is ReadonlyArray
364
352
  getAlgoliaSearchParams: function getAlgoliaSearchParams() {
365
353
  var _params$facetFilters, _params$hitsPerPage;
366
-
367
354
  var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
368
-
369
355
  // If the items returned by `store.getAll` are contained in a Promise,
370
356
  // we cannot provide the search params in time when this function is called
371
357
  // because we need to resolve the promise before getting the value.
@@ -373,7 +359,6 @@
373
359
  "development" !== 'production' ? warn(false, 'The `getAlgoliaSearchParams` function is not supported with storages that return promises in `getAll`.') : void 0;
374
360
  return params;
375
361
  }
376
-
377
362
  return _objectSpread2(_objectSpread2({}, params), {}, {
378
363
  facetFilters: [].concat(_toConsumableArray((_params$facetFilters = params.facetFilters) !== null && _params$facetFilters !== void 0 ? _params$facetFilters : []), _toConsumableArray(lastItemsRef.current.map(function (item) {
379
364
  return ["objectID:-".concat(item.label)];
@@ -385,7 +370,6 @@
385
370
  __autocomplete_pluginOptions: options
386
371
  };
387
372
  }
388
-
389
373
  function getOptions$1(options) {
390
374
  return _objectSpread2({
391
375
  transformSource: function transformSource(_ref6) {
@@ -397,9 +381,8 @@
397
381
 
398
382
  function search(_ref) {
399
383
  var query = _ref.query,
400
- items = _ref.items,
401
- limit = _ref.limit;
402
-
384
+ items = _ref.items,
385
+ limit = _ref.limit;
403
386
  if (!query) {
404
387
  return items.slice(0, limit).map(function (item) {
405
388
  return addHighlightedAttribute({
@@ -408,7 +391,6 @@
408
391
  });
409
392
  });
410
393
  }
411
-
412
394
  return items.filter(function (item) {
413
395
  return item.label.toLowerCase().includes(query.toLowerCase());
414
396
  }).slice(0, limit).map(function (item) {
@@ -421,12 +403,11 @@
421
403
 
422
404
  function createLocalStorageRecentSearchesPlugin(options) {
423
405
  var _getOptions = getOptions(options),
424
- key = _getOptions.key,
425
- limit = _getOptions.limit,
426
- transformSource = _getOptions.transformSource,
427
- search = _getOptions.search,
428
- subscribe = _getOptions.subscribe;
429
-
406
+ key = _getOptions.key,
407
+ limit = _getOptions.limit,
408
+ transformSource = _getOptions.transformSource,
409
+ search = _getOptions.search,
410
+ subscribe = _getOptions.subscribe;
430
411
  var storage = createLocalStorage({
431
412
  key: [LOCAL_STORAGE_KEY, key].join(':'),
432
413
  limit: limit,
@@ -442,7 +423,6 @@
442
423
  __autocomplete_pluginOptions: options
443
424
  });
444
425
  }
445
-
446
426
  function getOptions(options) {
447
427
  return _objectSpread2({
448
428
  limit: 5,
@@ -1 +1 @@
1
- {"version":3,"file":"index.development.js","sources":["../../src/addHighlightedAttribute.ts","../../src/constants.ts","../../src/getLocalStorage.ts","../../src/createLocalStorage.ts","../../../autocomplete-shared/dist/esm/createRef.js","../../../autocomplete-shared/dist/esm/warn.js","../../src/createStorageApi.ts","../../src/getTemplates.tsx","../../src/createRecentSearchesPlugin.ts","../../src/search.ts","../../src/createLocalStorageRecentSearchesPlugin.ts"],"sourcesContent":["import { Highlighted, HistoryItem } from './types';\n\ntype HighlightParams<TItem> = {\n item: TItem;\n query: string;\n};\n\nexport function addHighlightedAttribute<TItem extends HistoryItem>({\n item,\n query,\n}: HighlightParams<TItem>): Highlighted<TItem> {\n return {\n ...item,\n _highlightResult: {\n label: {\n value: query\n ? item.label.replace(\n new RegExp(query.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&'), 'gi'),\n (match) => {\n return `__aa-highlight__${match}__/aa-highlight__`;\n }\n )\n : item.label,\n },\n },\n };\n}\n","export const LOCAL_STORAGE_KEY = 'AUTOCOMPLETE_RECENT_SEARCHES';\nexport const LOCAL_STORAGE_KEY_TEST =\n '__AUTOCOMPLETE_RECENT_SEARCHES_PLUGIN_TEST_KEY__';\n","import { LOCAL_STORAGE_KEY_TEST } from './constants';\n\nfunction isLocalStorageSupported() {\n try {\n localStorage.setItem(LOCAL_STORAGE_KEY_TEST, '');\n localStorage.removeItem(LOCAL_STORAGE_KEY_TEST);\n\n return true;\n } catch (error) {\n return false;\n }\n}\n\ntype LocalStorageProps = {\n key: string;\n};\n\nexport function getLocalStorage<TItem>({ key }: LocalStorageProps) {\n if (!isLocalStorageSupported()) {\n return {\n setItem() {},\n getItem() {\n return [];\n },\n };\n }\n\n return {\n setItem(items: TItem[]) {\n return window.localStorage.setItem(key, JSON.stringify(items));\n },\n getItem(): TItem[] {\n const items = window.localStorage.getItem(key);\n\n return items ? (JSON.parse(items) as TItem[]) : [];\n },\n };\n}\n","import { CreateRecentSearchesLocalStorageOptions } from './createLocalStorageRecentSearchesPlugin';\nimport { getLocalStorage } from './getLocalStorage';\nimport { HistoryItem, Storage } from './types';\n\nexport type CreateLocalStorageProps<TItem extends HistoryItem> = Required<\n CreateRecentSearchesLocalStorageOptions<TItem>\n>;\n\nexport function createLocalStorage<TItem extends HistoryItem>({\n key,\n limit,\n search,\n}: CreateLocalStorageProps<TItem>): Storage<TItem> {\n const storage = getLocalStorage<TItem>({ key });\n\n return {\n onAdd(item) {\n storage.setItem([item, ...storage.getItem()]);\n },\n onRemove(id) {\n storage.setItem(storage.getItem().filter((x) => x.id !== id));\n },\n getAll(query = '') {\n return search({ query, items: storage.getItem(), limit }).slice(0, limit);\n },\n };\n}\n","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","export var warnCache = {\n current: {}\n};\n/**\n * Logs a warning if the condition is not met.\n * This is used to log issues in development environment only.\n */\n\nexport function warn(condition, message) {\n if (!(process.env.NODE_ENV !== 'production')) {\n return;\n }\n\n if (condition) {\n return;\n }\n\n var sanitizedMessage = message.trim();\n var hasAlreadyPrinted = warnCache.current[sanitizedMessage];\n\n if (!hasAlreadyPrinted) {\n warnCache.current[sanitizedMessage] = true; // eslint-disable-next-line no-console\n\n console.warn(\"[Autocomplete] \".concat(sanitizedMessage));\n }\n}","import { HistoryItem, Storage, StorageApi } from './types';\n\nexport function createStorageApi<TItem extends HistoryItem>(\n storage: Storage<TItem>\n): StorageApi<TItem> {\n return {\n addItem(item) {\n storage.onRemove(item.id);\n storage.onAdd(item);\n },\n removeItem(id) {\n storage.onRemove(id);\n },\n getAll(query) {\n return storage.getAll(query);\n },\n };\n}\n","/** @jsxRuntime classic */\n/** @jsx createElement */\nimport { SourceTemplates } from '@algolia/autocomplete-js';\n\nimport { RecentSearchesItem } from './types';\n\nexport type GetTemplatesParams<TItem extends RecentSearchesItem> = {\n onRemove(id: string): void;\n onTapAhead(item: TItem): void;\n};\n\nexport function getTemplates<TItem extends RecentSearchesItem>({\n onRemove,\n onTapAhead,\n}: GetTemplatesParams<TItem>): SourceTemplates<TItem> {\n return {\n item({ item, createElement, components }) {\n return (\n <div className=\"aa-ItemWrapper\">\n <div className=\"aa-ItemContent\">\n <div className=\"aa-ItemIcon aa-ItemIcon--noBorder\">\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12.516 6.984v5.25l4.5 2.672-0.75 1.266-5.25-3.188v-6h1.5zM12 20.016q3.281 0 5.648-2.367t2.367-5.648-2.367-5.648-5.648-2.367-5.648 2.367-2.367 5.648 2.367 5.648 5.648 2.367zM12 2.016q4.125 0 7.055 2.93t2.93 7.055-2.93 7.055-7.055 2.93-7.055-2.93-2.93-7.055 2.93-7.055 7.055-2.93z\" />\n </svg>\n </div>\n <div className=\"aa-ItemContentBody\">\n <div className=\"aa-ItemContentTitle\">\n <components.ReverseHighlight hit={item} attribute=\"label\" />\n {item.category && (\n <span className=\"aa-ItemContentSubtitle aa-ItemContentSubtitle--inline\">\n <span className=\"aa-ItemContentSubtitleIcon\" /> in{' '}\n <span className=\"aa-ItemContentSubtitleCategory\">\n {item.category}\n </span>\n </span>\n )}\n </div>\n </div>\n </div>\n <div className=\"aa-ItemActions\">\n <button\n className=\"aa-ItemActionButton\"\n title=\"Remove this search\"\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onRemove(item.id);\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M18 7v13c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-10c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-13zM17 5v-1c0-0.828-0.337-1.58-0.879-2.121s-1.293-0.879-2.121-0.879h-4c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v1h-4c-0.552 0-1 0.448-1 1s0.448 1 1 1h1v13c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h10c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-13h1c0.552 0 1-0.448 1-1s-0.448-1-1-1zM9 5v-1c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h4c0.276 0 0.525 0.111 0.707 0.293s0.293 0.431 0.293 0.707v1zM9 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM13 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1z\" />\n </svg>\n </button>\n <button\n className=\"aa-ItemActionButton\"\n title={`Fill query with \"${item.label}\"`}\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onTapAhead(item);\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z\" />\n </svg>\n </button>\n </div>\n </div>\n );\n },\n };\n}\n","import { PluginSubscribeParams } from '@algolia/autocomplete-core';\nimport {\n AutocompleteSource,\n AutocompleteState,\n AutocompletePlugin,\n} from '@algolia/autocomplete-js';\nimport { createRef, MaybePromise, warn } from '@algolia/autocomplete-shared';\nimport { SearchOptions } from '@algolia/client-search';\n\nimport { createStorageApi } from './createStorageApi';\nimport { getTemplates } from './getTemplates';\nimport { RecentSearchesItem, Storage, StorageApi } from './types';\n\nexport interface RecentSearchesPluginData<TItem extends RecentSearchesItem>\n extends StorageApi<TItem> {\n /**\n * Optimized [Algolia search parameters](https://www.algolia.com/doc/api-reference/search-api-parameters/). This is useful when using the plugin along with the [Query Suggestions](createQuerySuggestionsPlugin) plugin.\n *\n * This function enhances the provided search parameters by:\n * - Excluding Query Suggestions that are already displayed in recent searches.\n * - Using a shared `hitsPerPage` value to get a group limit of Query Suggestions and recent searches.\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-getalgoliasearchparams\n */\n getAlgoliaSearchParams(params?: SearchOptions): SearchOptions;\n}\n\nexport type CreateRecentSearchesPluginParams<\n TItem extends RecentSearchesItem\n> = {\n /**\n * The storage to fetch from and save recent searches into.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-storage\n */\n storage: Storage<TItem>;\n /**\n * A function to transform the provided source.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-transformsource\n */\n transformSource?(params: {\n source: AutocompleteSource<TItem>;\n state: AutocompleteState<TItem>;\n onRemove(id: string): void;\n onTapAhead(item: TItem): void;\n }): AutocompleteSource<TItem>;\n subscribe?(params: PluginSubscribeParams<TItem>): void;\n};\n\nfunction getDefaultSubscribe<TItem extends RecentSearchesItem>(\n store: StorageApi<TItem>\n) {\n return function subscribe({ onSelect }: PluginSubscribeParams<TItem>) {\n onSelect(({ item, state, source }) => {\n const inputValue = source.getItemInputValue({ item, state });\n\n if (source.sourceId === 'querySuggestionsPlugin' && inputValue) {\n const recentItem: RecentSearchesItem = {\n id: inputValue,\n label: inputValue,\n category: (item as any).__autocomplete_qsCategory,\n };\n store.addItem(recentItem as TItem);\n }\n });\n };\n}\n\nexport function createRecentSearchesPlugin<TItem extends RecentSearchesItem>(\n options: CreateRecentSearchesPluginParams<TItem>\n): AutocompletePlugin<TItem, RecentSearchesPluginData<TItem>> {\n const { storage, transformSource, subscribe } = getOptions(options);\n const store = createStorageApi<TItem>(storage);\n const lastItemsRef = createRef<MaybePromise<TItem[]>>([]);\n\n return {\n name: 'aa.recentSearchesPlugin',\n subscribe: subscribe ?? getDefaultSubscribe(store),\n onSubmit({ state }) {\n const { query } = state;\n\n if (query) {\n const recentItem: RecentSearchesItem = {\n id: query,\n label: query,\n };\n store.addItem(recentItem as TItem);\n }\n },\n getSources({ query, setQuery, refresh, state }) {\n lastItemsRef.current = store.getAll(query);\n\n function onRemove(id: string) {\n store.removeItem(id);\n refresh();\n }\n\n function onTapAhead(item: TItem) {\n setQuery(item.label);\n refresh();\n }\n\n return Promise.resolve(lastItemsRef.current).then((items) => {\n if (items.length === 0) {\n return [];\n }\n\n return [\n transformSource({\n source: {\n sourceId: 'recentSearchesPlugin',\n getItemInputValue({ item }) {\n return item.label;\n },\n getItems() {\n return items;\n },\n templates: getTemplates({ onRemove, onTapAhead }),\n },\n onRemove,\n onTapAhead,\n state: state as AutocompleteState<TItem>,\n }),\n ];\n });\n },\n data: {\n ...store,\n // @ts-ignore SearchOptions `facetFilters` is ReadonlyArray\n getAlgoliaSearchParams(params = {}) {\n // If the items returned by `store.getAll` are contained in a Promise,\n // we cannot provide the search params in time when this function is called\n // because we need to resolve the promise before getting the value.\n if (!Array.isArray(lastItemsRef.current)) {\n warn(\n false,\n 'The `getAlgoliaSearchParams` function is not supported with storages that return promises in `getAll`.'\n );\n return params;\n }\n\n return {\n ...params,\n facetFilters: [\n ...(params.facetFilters ?? []),\n // @TODO: we need to base the filter on the `query` attribute, not\n // `objectID`, because the Query Suggestions index cannot ensure\n // that the `objectID` will always be equal to the query.\n ...lastItemsRef.current.map((item) => [`objectID:-${item.label}`]),\n ],\n hitsPerPage: Math.max(\n 1,\n (params.hitsPerPage ?? 10) - lastItemsRef.current.length\n ),\n };\n },\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getOptions<TItem extends RecentSearchesItem>(\n options: CreateRecentSearchesPluginParams<TItem>\n) {\n return {\n transformSource: ({ source }) => source,\n ...options,\n };\n}\n","import { addHighlightedAttribute } from './addHighlightedAttribute';\nimport { Highlighted, RecentSearchesItem } from './types';\n\nexport type SearchParams<TItem extends RecentSearchesItem> = {\n query: string;\n items: TItem[];\n limit: number;\n};\n\nexport function search<TItem extends RecentSearchesItem>({\n query,\n items,\n limit,\n}: SearchParams<TItem>): Array<Highlighted<TItem>> {\n if (!query) {\n return items\n .slice(0, limit)\n .map((item) => addHighlightedAttribute({ item, query }));\n }\n\n return items\n .filter((item) => item.label.toLowerCase().includes(query.toLowerCase()))\n .slice(0, limit)\n .map((item) => addHighlightedAttribute({ item, query }));\n}\n","import { AutocompletePlugin } from '@algolia/autocomplete-js';\n\nimport { LOCAL_STORAGE_KEY } from './constants';\nimport { createLocalStorage } from './createLocalStorage';\nimport {\n createRecentSearchesPlugin,\n CreateRecentSearchesPluginParams,\n RecentSearchesPluginData,\n} from './createRecentSearchesPlugin';\nimport { search as defaultSearch, SearchParams } from './search';\nimport { Highlighted, RecentSearchesItem } from './types';\n\nexport type CreateRecentSearchesLocalStorageOptions<\n TItem extends RecentSearchesItem\n> = {\n /**\n * A local storage key to identify where to save and retrieve the recent searches.\n *\n * For example:\n * - \"navbar\"\n * - \"search\"\n * - \"main\"\n *\n * The plugin namespaces all keys to avoid collisions.\n *\n * @example \"top_searchbar\"\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-key\n */\n key: string;\n\n /**\n * The number of recent searches to display.\n *\n * @default 5\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-limit\n */\n limit?: number;\n\n /**\n * A search function to retrieve recent searches from.\n *\n * This function is called in [`storage.getAll`](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-storage) to retrieve recent searches and is useful to filter and highlight recent searches when typing a query.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-search\n */\n search?(params: SearchParams<TItem>): Array<Highlighted<TItem>>;\n};\n\ntype LocalStorageRecentSearchesPluginOptions<\n TItem extends RecentSearchesItem\n> = Pick<\n CreateRecentSearchesPluginParams<TItem>,\n 'transformSource' | 'subscribe'\n> &\n CreateRecentSearchesLocalStorageOptions<TItem>;\n\nexport function createLocalStorageRecentSearchesPlugin<\n TItem extends RecentSearchesItem\n>(\n options: LocalStorageRecentSearchesPluginOptions<TItem>\n): AutocompletePlugin<TItem, RecentSearchesPluginData<TItem>> {\n const { key, limit, transformSource, search, subscribe } = getOptions(\n options\n );\n const storage = createLocalStorage<TItem>({\n key: [LOCAL_STORAGE_KEY, key].join(':'),\n limit,\n search,\n });\n\n const recentSearchesPlugin = createRecentSearchesPlugin<TItem>({\n transformSource,\n storage,\n subscribe,\n });\n\n return {\n ...recentSearchesPlugin,\n name: 'aa.localStorageRecentSearchesPlugin',\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getOptions<TItem extends RecentSearchesItem>(\n options: LocalStorageRecentSearchesPluginOptions<TItem>\n) {\n return {\n limit: 5,\n search: defaultSearch,\n transformSource: ({ source }) => source,\n ...options,\n };\n}\n"],"names":["addHighlightedAttribute","item","query","_objectSpread","_highlightResult","label","value","replace","RegExp","match","LOCAL_STORAGE_KEY","LOCAL_STORAGE_KEY_TEST","isLocalStorageSupported","localStorage","setItem","removeItem","error","getLocalStorage","key","getItem","items","window","JSON","stringify","parse","createLocalStorage","limit","search","storage","onAdd","onRemove","id","filter","x","getAll","slice","createRef","initialValue","current","warnCache","warn","condition","message","sanitizedMessage","trim","hasAlreadyPrinted","console","concat","createStorageApi","addItem","getTemplates","onTapAhead","createElement","components","category","event","preventDefault","stopPropagation","getDefaultSubscribe","store","subscribe","onSelect","state","source","inputValue","getItemInputValue","sourceId","recentItem","__autocomplete_qsCategory","createRecentSearchesPlugin","options","getOptions","transformSource","lastItemsRef","name","onSubmit","getSources","setQuery","refresh","Promise","resolve","then","length","getItems","templates","data","getAlgoliaSearchParams","params","Array","isArray","process","facetFilters","map","hitsPerPage","Math","max","__autocomplete_pluginOptions","toLowerCase","includes","createLocalStorageRecentSearchesPlugin","join","recentSearchesPlugin","defaultSearch"],"mappings":"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CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAf,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CADF,CAAA,CATF,CADF,EAcE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"}
1
+ {"version":3,"file":"index.development.js","sources":["../../src/addHighlightedAttribute.ts","../../src/constants.ts","../../src/getLocalStorage.ts","../../src/createLocalStorage.ts","../../../autocomplete-shared/dist/esm/createRef.js","../../../autocomplete-shared/dist/esm/warn.js","../../src/createStorageApi.ts","../../src/getTemplates.tsx","../../src/createRecentSearchesPlugin.ts","../../src/search.ts","../../src/createLocalStorageRecentSearchesPlugin.ts"],"sourcesContent":["import { Highlighted, HistoryItem } from './types';\n\ntype HighlightParams<TItem> = {\n item: TItem;\n query: string;\n};\n\nexport function addHighlightedAttribute<TItem extends HistoryItem>({\n item,\n query,\n}: HighlightParams<TItem>): Highlighted<TItem> {\n return {\n ...item,\n _highlightResult: {\n label: {\n value: query\n ? item.label.replace(\n new RegExp(query.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&'), 'gi'),\n (match) => {\n return `__aa-highlight__${match}__/aa-highlight__`;\n }\n )\n : item.label,\n },\n },\n };\n}\n","export const LOCAL_STORAGE_KEY = 'AUTOCOMPLETE_RECENT_SEARCHES';\nexport const LOCAL_STORAGE_KEY_TEST =\n '__AUTOCOMPLETE_RECENT_SEARCHES_PLUGIN_TEST_KEY__';\n","import { LOCAL_STORAGE_KEY_TEST } from './constants';\n\nfunction isLocalStorageSupported() {\n try {\n localStorage.setItem(LOCAL_STORAGE_KEY_TEST, '');\n localStorage.removeItem(LOCAL_STORAGE_KEY_TEST);\n\n return true;\n } catch (error) {\n return false;\n }\n}\n\ntype LocalStorageProps = {\n key: string;\n};\n\nexport function getLocalStorage<TItem>({ key }: LocalStorageProps) {\n if (!isLocalStorageSupported()) {\n return {\n setItem() {},\n getItem() {\n return [];\n },\n };\n }\n\n return {\n setItem(items: TItem[]) {\n return window.localStorage.setItem(key, JSON.stringify(items));\n },\n getItem(): TItem[] {\n const items = window.localStorage.getItem(key);\n\n return items ? (JSON.parse(items) as TItem[]) : [];\n },\n };\n}\n","import { CreateRecentSearchesLocalStorageOptions } from './createLocalStorageRecentSearchesPlugin';\nimport { getLocalStorage } from './getLocalStorage';\nimport { HistoryItem, Storage } from './types';\n\nexport type CreateLocalStorageProps<TItem extends HistoryItem> = Required<\n CreateRecentSearchesLocalStorageOptions<TItem>\n>;\n\nexport function createLocalStorage<TItem extends HistoryItem>({\n key,\n limit,\n search,\n}: CreateLocalStorageProps<TItem>): Storage<TItem> {\n const storage = getLocalStorage<TItem>({ key });\n\n return {\n onAdd(item) {\n storage.setItem([item, ...storage.getItem()]);\n },\n onRemove(id) {\n storage.setItem(storage.getItem().filter((x) => x.id !== id));\n },\n getAll(query = '') {\n return search({ query, items: storage.getItem(), limit }).slice(0, limit);\n },\n };\n}\n","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","export var warnCache = {\n current: {}\n};\n\n/**\n * Logs a warning if the condition is not met.\n * This is used to log issues in development environment only.\n */\nexport function warn(condition, message) {\n if (!(process.env.NODE_ENV !== 'production')) {\n return;\n }\n if (condition) {\n return;\n }\n var sanitizedMessage = message.trim();\n var hasAlreadyPrinted = warnCache.current[sanitizedMessage];\n if (!hasAlreadyPrinted) {\n warnCache.current[sanitizedMessage] = true;\n\n // eslint-disable-next-line no-console\n console.warn(\"[Autocomplete] \".concat(sanitizedMessage));\n }\n}","import { HistoryItem, Storage, StorageApi } from './types';\n\nexport function createStorageApi<TItem extends HistoryItem>(\n storage: Storage<TItem>\n): StorageApi<TItem> {\n return {\n addItem(item) {\n storage.onRemove(item.id);\n storage.onAdd(item);\n },\n removeItem(id) {\n storage.onRemove(id);\n },\n getAll(query) {\n return storage.getAll(query);\n },\n };\n}\n","/** @jsxRuntime classic */\n/** @jsx createElement */\nimport { SourceTemplates } from '@algolia/autocomplete-js';\n\nimport { RecentSearchesItem } from './types';\n\nexport type GetTemplatesParams<TItem extends RecentSearchesItem> = {\n onRemove(id: string): void;\n onTapAhead(item: TItem): void;\n};\n\nexport function getTemplates<TItem extends RecentSearchesItem>({\n onRemove,\n onTapAhead,\n}: GetTemplatesParams<TItem>): SourceTemplates<TItem> {\n return {\n item({ item, createElement, components }) {\n return (\n <div className=\"aa-ItemWrapper\">\n <div className=\"aa-ItemContent\">\n <div className=\"aa-ItemIcon aa-ItemIcon--noBorder\">\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12.516 6.984v5.25l4.5 2.672-0.75 1.266-5.25-3.188v-6h1.5zM12 20.016q3.281 0 5.648-2.367t2.367-5.648-2.367-5.648-5.648-2.367-5.648 2.367-2.367 5.648 2.367 5.648 5.648 2.367zM12 2.016q4.125 0 7.055 2.93t2.93 7.055-2.93 7.055-7.055 2.93-7.055-2.93-2.93-7.055 2.93-7.055 7.055-2.93z\" />\n </svg>\n </div>\n <div className=\"aa-ItemContentBody\">\n <div className=\"aa-ItemContentTitle\">\n <components.ReverseHighlight hit={item} attribute=\"label\" />\n {item.category && (\n <span className=\"aa-ItemContentSubtitle aa-ItemContentSubtitle--inline\">\n <span className=\"aa-ItemContentSubtitleIcon\" /> in{' '}\n <span className=\"aa-ItemContentSubtitleCategory\">\n {item.category}\n </span>\n </span>\n )}\n </div>\n </div>\n </div>\n <div className=\"aa-ItemActions\">\n <button\n className=\"aa-ItemActionButton\"\n title=\"Remove this search\"\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onRemove(item.id);\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M18 7v13c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-10c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-13zM17 5v-1c0-0.828-0.337-1.58-0.879-2.121s-1.293-0.879-2.121-0.879h-4c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v1h-4c-0.552 0-1 0.448-1 1s0.448 1 1 1h1v13c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h10c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-13h1c0.552 0 1-0.448 1-1s-0.448-1-1-1zM9 5v-1c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h4c0.276 0 0.525 0.111 0.707 0.293s0.293 0.431 0.293 0.707v1zM9 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM13 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1z\" />\n </svg>\n </button>\n <button\n className=\"aa-ItemActionButton\"\n title={`Fill query with \"${item.label}\"`}\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onTapAhead(item);\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z\" />\n </svg>\n </button>\n </div>\n </div>\n );\n },\n };\n}\n","import { PluginSubscribeParams } from '@algolia/autocomplete-core';\nimport {\n AutocompleteSource,\n AutocompleteState,\n AutocompletePlugin,\n} from '@algolia/autocomplete-js';\nimport { createRef, MaybePromise, warn } from '@algolia/autocomplete-shared';\nimport { SearchOptions } from '@algolia/client-search';\n\nimport { createStorageApi } from './createStorageApi';\nimport { getTemplates } from './getTemplates';\nimport { RecentSearchesItem, Storage, StorageApi } from './types';\n\nexport interface RecentSearchesPluginData<TItem extends RecentSearchesItem>\n extends StorageApi<TItem> {\n /**\n * Optimized [Algolia search parameters](https://www.algolia.com/doc/api-reference/search-api-parameters/). This is useful when using the plugin along with the [Query Suggestions](createQuerySuggestionsPlugin) plugin.\n *\n * This function enhances the provided search parameters by:\n * - Excluding Query Suggestions that are already displayed in recent searches.\n * - Using a shared `hitsPerPage` value to get a group limit of Query Suggestions and recent searches.\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-getalgoliasearchparams\n */\n getAlgoliaSearchParams(params?: SearchOptions): SearchOptions;\n}\n\nexport type CreateRecentSearchesPluginParams<TItem extends RecentSearchesItem> =\n {\n /**\n * The storage to fetch from and save recent searches into.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-storage\n */\n storage: Storage<TItem>;\n /**\n * A function to transform the provided source.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-transformsource\n */\n transformSource?(params: {\n source: AutocompleteSource<TItem>;\n state: AutocompleteState<TItem>;\n onRemove(id: string): void;\n onTapAhead(item: TItem): void;\n }): AutocompleteSource<TItem>;\n subscribe?(params: PluginSubscribeParams<TItem>): void;\n };\n\nfunction getDefaultSubscribe<TItem extends RecentSearchesItem>(\n store: StorageApi<TItem>\n) {\n return function subscribe({ onSelect }: PluginSubscribeParams<TItem>) {\n onSelect(({ item, state, source }) => {\n const inputValue = source.getItemInputValue({ item, state });\n\n if (source.sourceId === 'querySuggestionsPlugin' && inputValue) {\n const recentItem: RecentSearchesItem = {\n id: inputValue,\n label: inputValue,\n category: (item as any).__autocomplete_qsCategory,\n };\n store.addItem(recentItem as TItem);\n }\n });\n };\n}\n\nexport function createRecentSearchesPlugin<TItem extends RecentSearchesItem>(\n options: CreateRecentSearchesPluginParams<TItem>\n): AutocompletePlugin<TItem, RecentSearchesPluginData<TItem>> {\n const { storage, transformSource, subscribe } = getOptions(options);\n const store = createStorageApi<TItem>(storage);\n const lastItemsRef = createRef<MaybePromise<TItem[]>>([]);\n\n return {\n name: 'aa.recentSearchesPlugin',\n subscribe: subscribe ?? getDefaultSubscribe(store),\n onSubmit({ state }) {\n const { query } = state;\n\n if (query) {\n const recentItem: RecentSearchesItem = {\n id: query,\n label: query,\n };\n store.addItem(recentItem as TItem);\n }\n },\n getSources({ query, setQuery, refresh, state }) {\n lastItemsRef.current = store.getAll(query);\n\n function onRemove(id: string) {\n store.removeItem(id);\n refresh();\n }\n\n function onTapAhead(item: TItem) {\n setQuery(item.label);\n refresh();\n }\n\n return Promise.resolve(lastItemsRef.current).then((items) => {\n if (items.length === 0) {\n return [];\n }\n\n return [\n transformSource({\n source: {\n sourceId: 'recentSearchesPlugin',\n getItemInputValue({ item }) {\n return item.label;\n },\n getItems() {\n return items;\n },\n templates: getTemplates({ onRemove, onTapAhead }),\n },\n onRemove,\n onTapAhead,\n state: state as AutocompleteState<TItem>,\n }),\n ];\n });\n },\n data: {\n ...store,\n // @ts-ignore SearchOptions `facetFilters` is ReadonlyArray\n getAlgoliaSearchParams(params = {}) {\n // If the items returned by `store.getAll` are contained in a Promise,\n // we cannot provide the search params in time when this function is called\n // because we need to resolve the promise before getting the value.\n if (!Array.isArray(lastItemsRef.current)) {\n warn(\n false,\n 'The `getAlgoliaSearchParams` function is not supported with storages that return promises in `getAll`.'\n );\n return params;\n }\n\n return {\n ...params,\n facetFilters: [\n ...(params.facetFilters ?? []),\n // @TODO: we need to base the filter on the `query` attribute, not\n // `objectID`, because the Query Suggestions index cannot ensure\n // that the `objectID` will always be equal to the query.\n ...lastItemsRef.current.map((item) => [`objectID:-${item.label}`]),\n ],\n hitsPerPage: Math.max(\n 1,\n (params.hitsPerPage ?? 10) - lastItemsRef.current.length\n ),\n };\n },\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getOptions<TItem extends RecentSearchesItem>(\n options: CreateRecentSearchesPluginParams<TItem>\n) {\n return {\n transformSource: ({ source }) => source,\n ...options,\n };\n}\n","import { addHighlightedAttribute } from './addHighlightedAttribute';\nimport { Highlighted, RecentSearchesItem } from './types';\n\nexport type SearchParams<TItem extends RecentSearchesItem> = {\n query: string;\n items: TItem[];\n limit: number;\n};\n\nexport function search<TItem extends RecentSearchesItem>({\n query,\n items,\n limit,\n}: SearchParams<TItem>): Array<Highlighted<TItem>> {\n if (!query) {\n return items\n .slice(0, limit)\n .map((item) => addHighlightedAttribute({ item, query }));\n }\n\n return items\n .filter((item) => item.label.toLowerCase().includes(query.toLowerCase()))\n .slice(0, limit)\n .map((item) => addHighlightedAttribute({ item, query }));\n}\n","import { AutocompletePlugin } from '@algolia/autocomplete-js';\n\nimport { LOCAL_STORAGE_KEY } from './constants';\nimport { createLocalStorage } from './createLocalStorage';\nimport {\n createRecentSearchesPlugin,\n CreateRecentSearchesPluginParams,\n RecentSearchesPluginData,\n} from './createRecentSearchesPlugin';\nimport { search as defaultSearch, SearchParams } from './search';\nimport { Highlighted, RecentSearchesItem } from './types';\n\nexport type CreateRecentSearchesLocalStorageOptions<\n TItem extends RecentSearchesItem\n> = {\n /**\n * A local storage key to identify where to save and retrieve the recent searches.\n *\n * For example:\n * - \"navbar\"\n * - \"search\"\n * - \"main\"\n *\n * The plugin namespaces all keys to avoid collisions.\n *\n * @example \"top_searchbar\"\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-key\n */\n key: string;\n\n /**\n * The number of recent searches to display.\n *\n * @default 5\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-limit\n */\n limit?: number;\n\n /**\n * A search function to retrieve recent searches from.\n *\n * This function is called in [`storage.getAll`](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-storage) to retrieve recent searches and is useful to filter and highlight recent searches when typing a query.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-search\n */\n search?(params: SearchParams<TItem>): Array<Highlighted<TItem>>;\n};\n\ntype LocalStorageRecentSearchesPluginOptions<TItem extends RecentSearchesItem> =\n Pick<\n CreateRecentSearchesPluginParams<TItem>,\n 'transformSource' | 'subscribe'\n > &\n CreateRecentSearchesLocalStorageOptions<TItem>;\n\nexport function createLocalStorageRecentSearchesPlugin<\n TItem extends RecentSearchesItem\n>(\n options: LocalStorageRecentSearchesPluginOptions<TItem>\n): AutocompletePlugin<TItem, RecentSearchesPluginData<TItem>> {\n const { key, limit, transformSource, search, subscribe } =\n getOptions(options);\n const storage = createLocalStorage<TItem>({\n key: [LOCAL_STORAGE_KEY, key].join(':'),\n limit,\n search,\n });\n\n const recentSearchesPlugin = createRecentSearchesPlugin<TItem>({\n transformSource,\n storage,\n subscribe,\n });\n\n return {\n ...recentSearchesPlugin,\n name: 'aa.localStorageRecentSearchesPlugin',\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getOptions<TItem extends RecentSearchesItem>(\n options: LocalStorageRecentSearchesPluginOptions<TItem>\n) {\n return {\n limit: 5,\n search: defaultSearch,\n transformSource: ({ source }) => source,\n ...options,\n };\n}\n"],"names":["addHighlightedAttribute","_ref","item","query","_objectSpread","_highlightResult","label","value","replace","RegExp","match","concat","LOCAL_STORAGE_KEY","LOCAL_STORAGE_KEY_TEST","isLocalStorageSupported","localStorage","setItem","removeItem","error","getLocalStorage","key","getItem","items","window","JSON","stringify","parse","createLocalStorage","limit","search","storage","onAdd","_toConsumableArray","onRemove","id","filter","x","getAll","arguments","length","undefined","slice","createRef","initialValue","current","warnCache","warn","condition","message","sanitizedMessage","trim","hasAlreadyPrinted","console","createStorageApi","addItem","getTemplates","onTapAhead","_ref2","createElement","components","className","viewBox","fill","d","ReverseHighlight","hit","attribute","category","title","onClick","event","preventDefault","stopPropagation","getDefaultSubscribe","store","subscribe","onSelect","state","source","inputValue","getItemInputValue","sourceId","recentItem","__autocomplete_qsCategory","createRecentSearchesPlugin","options","_getOptions","getOptions","transformSource","lastItemsRef","name","onSubmit","_ref3","getSources","_ref4","setQuery","refresh","Promise","resolve","then","_ref5","getItems","templates","data","getAlgoliaSearchParams","_params$facetFilters","_params$hitsPerPage","params","Array","isArray","process","facetFilters","map","hitsPerPage","Math","max","__autocomplete_pluginOptions","_ref6","toLowerCase","includes","createLocalStorageRecentSearchesPlugin","join","recentSearchesPlugin","defaultSearch"],"mappings":"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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC1CJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAMK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAI,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC1CJ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;EAAMK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAC,EAAC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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AA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;GACA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CA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"}
@@ -1,3 +1,3 @@
1
- /*! @algolia/autocomplete-plugin-recent-searches 1.8.2 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
2
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-plugin-recent-searches"]={})}(this,(function(e){"use strict";function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(e){for(var n=1;n<arguments.length;n++){var o=null!=arguments[n]?arguments[n]:{};n%2?t(Object(o),!0).forEach((function(t){r(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):t(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e){return function(e){if(Array.isArray(e))return a(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return a(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return a(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function i(e){var t=e.item,r=e.query;return n(n({},t),{},{_highlightResult:{label:{value:r?t.label.replace(new RegExp(r.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"gi"),(function(e){return"__aa-highlight__".concat(e,"__/aa-highlight__")})):t.label}}})}var c="AUTOCOMPLETE_RECENT_SEARCHES",u="__AUTOCOMPLETE_RECENT_SEARCHES_PLUGIN_TEST_KEY__";function l(e){var t=e.key;return function(){try{return localStorage.setItem(u,""),localStorage.removeItem(u),!0}catch(e){return!1}}()?{setItem:function(e){return window.localStorage.setItem(t,JSON.stringify(e))},getItem:function(){var e=window.localStorage.getItem(t);return e?JSON.parse(e):[]}}:{setItem:function(){},getItem:function(){return[]}}}function s(e){var t=e.onRemove,n=e.onTapAhead;return{item:function(e){var r=e.item,o=e.createElement,a=e.components;return o("div",{className:"aa-ItemWrapper"},o("div",{className:"aa-ItemContent"},o("div",{className:"aa-ItemIcon aa-ItemIcon--noBorder"},o("svg",{viewBox:"0 0 24 24",fill:"currentColor"},o("path",{d:"M12.516 6.984v5.25l4.5 2.672-0.75 1.266-5.25-3.188v-6h1.5zM12 20.016q3.281 0 5.648-2.367t2.367-5.648-2.367-5.648-5.648-2.367-5.648 2.367-2.367 5.648 2.367 5.648 5.648 2.367zM12 2.016q4.125 0 7.055 2.93t2.93 7.055-2.93 7.055-7.055 2.93-7.055-2.93-2.93-7.055 2.93-7.055 7.055-2.93z"}))),o("div",{className:"aa-ItemContentBody"},o("div",{className:"aa-ItemContentTitle"},o(a.ReverseHighlight,{hit:r,attribute:"label"}),r.category&&o("span",{className:"aa-ItemContentSubtitle aa-ItemContentSubtitle--inline"},o("span",{className:"aa-ItemContentSubtitleIcon"})," in"," ",o("span",{className:"aa-ItemContentSubtitleCategory"},r.category))))),o("div",{className:"aa-ItemActions"},o("button",{className:"aa-ItemActionButton",title:"Remove this search",onClick:function(e){e.preventDefault(),e.stopPropagation(),t(r.id)}},o("svg",{viewBox:"0 0 24 24",fill:"currentColor"},o("path",{d:"M18 7v13c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-10c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-13zM17 5v-1c0-0.828-0.337-1.58-0.879-2.121s-1.293-0.879-2.121-0.879h-4c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v1h-4c-0.552 0-1 0.448-1 1s0.448 1 1 1h1v13c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h10c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-13h1c0.552 0 1-0.448 1-1s-0.448-1-1-1zM9 5v-1c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h4c0.276 0 0.525 0.111 0.707 0.293s0.293 0.431 0.293 0.707v1zM9 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM13 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1z"}))),o("button",{className:"aa-ItemActionButton",title:'Fill query with "'.concat(r.label,'"'),onClick:function(e){e.preventDefault(),e.stopPropagation(),n(r)}},o("svg",{viewBox:"0 0 24 24",fill:"currentColor"},o("path",{d:"M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z"})))))}}}function m(e){return function(t){(0,t.onSelect)((function(t){var n=t.item,r=t.state,o=t.source,a=o.getItemInputValue({item:n,state:r});if("querySuggestionsPlugin"===o.sourceId&&a){var i={id:a,label:a,category:n.__autocomplete_qsCategory};e.addItem(i)}}))}}function f(e){var t=function(e){return n({transformSource:function(e){return e.source}},e)}(e),r=t.storage,a=t.transformSource,i=t.subscribe,c=function(e){return{addItem:function(t){e.onRemove(t.id),e.onAdd(t)},removeItem:function(t){e.onRemove(t)},getAll:function(t){return e.getAll(t)}}}(r),u={current:[]};return{name:"aa.recentSearchesPlugin",subscribe:null!=i?i:m(c),onSubmit:function(e){var t=e.state.query;if(t){var n={id:t,label:t};c.addItem(n)}},getSources:function(e){var t=e.query,n=e.setQuery,r=e.refresh,o=e.state;function i(e){c.removeItem(e),r()}function l(e){n(e.label),r()}return u.current=c.getAll(t),Promise.resolve(u.current).then((function(e){return 0===e.length?[]:[a({source:{sourceId:"recentSearchesPlugin",getItemInputValue:function(e){return e.item.label},getItems:function(){return e},templates:s({onRemove:i,onTapAhead:l})},onRemove:i,onTapAhead:l,state:o})]}))},data:n(n({},c),{},{getAlgoliaSearchParams:function(){var e,t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Array.isArray(u.current)?n(n({},r),{},{facetFilters:[].concat(o(null!==(e=r.facetFilters)&&void 0!==e?e:[]),o(u.current.map((function(e){return["objectID:-".concat(e.label)]})))),hitsPerPage:Math.max(1,(null!==(t=r.hitsPerPage)&&void 0!==t?t:10)-u.current.length)}):r}}),__autocomplete_pluginOptions:e}}function g(e){var t=e.query,n=e.items,r=e.limit;return t?n.filter((function(e){return e.label.toLowerCase().includes(t.toLowerCase())})).slice(0,r).map((function(e){return i({item:e,query:t})})):n.slice(0,r).map((function(e){return i({item:e,query:t})}))}function v(e){return n({limit:5,search:g,transformSource:function(e){return e.source}},e)}e.addHighlightedAttribute=i,e.createLocalStorageRecentSearchesPlugin=function(e){var t=v(e),r=t.key,a=t.limit,i=t.transformSource,u=t.search,s=t.subscribe,m=function(e){var t=e.key,n=e.limit,r=e.search,a=l({key:t});return{onAdd:function(e){a.setItem([e].concat(o(a.getItem())))},onRemove:function(e){a.setItem(a.getItem().filter((function(t){return t.id!==e})))},getAll:function(){return r({query:arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",items:a.getItem(),limit:n}).slice(0,n)}}}({key:[c,r].join(":"),limit:a,search:u});return n(n({},f({transformSource:i,storage:m,subscribe:s})),{},{name:"aa.localStorageRecentSearchesPlugin",__autocomplete_pluginOptions:e})},e.createRecentSearchesPlugin=f,e.getTemplates=s,e.search=g,Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ /*! @algolia/autocomplete-plugin-recent-searches 1.9.0 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
2
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-plugin-recent-searches"]={})}(this,(function(e){"use strict";function t(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function r(e){for(var r=1;r<arguments.length;r++){var o=null!=arguments[r]?arguments[r]:{};r%2?t(Object(o),!0).forEach((function(t){n(e,t,o[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):t(Object(o)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))}))}return e}function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e){return function(e){if(Array.isArray(e))return a(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return a(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return a(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function i(e){var t=e.item,n=e.query;return r(r({},t),{},{_highlightResult:{label:{value:n?t.label.replace(new RegExp(n.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"gi"),(function(e){return"__aa-highlight__".concat(e,"__/aa-highlight__")})):t.label}}})}var c="AUTOCOMPLETE_RECENT_SEARCHES",u="__AUTOCOMPLETE_RECENT_SEARCHES_PLUGIN_TEST_KEY__";function l(e){var t=e.key;return function(){try{return localStorage.setItem(u,""),localStorage.removeItem(u),!0}catch(e){return!1}}()?{setItem:function(e){return window.localStorage.setItem(t,JSON.stringify(e))},getItem:function(){var e=window.localStorage.getItem(t);return e?JSON.parse(e):[]}}:{setItem:function(){},getItem:function(){return[]}}}function s(e){var t=e.onRemove,r=e.onTapAhead;return{item:function(e){var n=e.item,o=e.createElement,a=e.components;return o("div",{className:"aa-ItemWrapper"},o("div",{className:"aa-ItemContent"},o("div",{className:"aa-ItemIcon aa-ItemIcon--noBorder"},o("svg",{viewBox:"0 0 24 24",fill:"currentColor"},o("path",{d:"M12.516 6.984v5.25l4.5 2.672-0.75 1.266-5.25-3.188v-6h1.5zM12 20.016q3.281 0 5.648-2.367t2.367-5.648-2.367-5.648-5.648-2.367-5.648 2.367-2.367 5.648 2.367 5.648 5.648 2.367zM12 2.016q4.125 0 7.055 2.93t2.93 7.055-2.93 7.055-7.055 2.93-7.055-2.93-2.93-7.055 2.93-7.055 7.055-2.93z"}))),o("div",{className:"aa-ItemContentBody"},o("div",{className:"aa-ItemContentTitle"},o(a.ReverseHighlight,{hit:n,attribute:"label"}),n.category&&o("span",{className:"aa-ItemContentSubtitle aa-ItemContentSubtitle--inline"},o("span",{className:"aa-ItemContentSubtitleIcon"})," in"," ",o("span",{className:"aa-ItemContentSubtitleCategory"},n.category))))),o("div",{className:"aa-ItemActions"},o("button",{className:"aa-ItemActionButton",title:"Remove this search",onClick:function(e){e.preventDefault(),e.stopPropagation(),t(n.id)}},o("svg",{viewBox:"0 0 24 24",fill:"currentColor"},o("path",{d:"M18 7v13c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-10c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-13zM17 5v-1c0-0.828-0.337-1.58-0.879-2.121s-1.293-0.879-2.121-0.879h-4c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v1h-4c-0.552 0-1 0.448-1 1s0.448 1 1 1h1v13c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h10c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-13h1c0.552 0 1-0.448 1-1s-0.448-1-1-1zM9 5v-1c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h4c0.276 0 0.525 0.111 0.707 0.293s0.293 0.431 0.293 0.707v1zM9 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM13 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1z"}))),o("button",{className:"aa-ItemActionButton",title:'Fill query with "'.concat(n.label,'"'),onClick:function(e){e.preventDefault(),e.stopPropagation(),r(n)}},o("svg",{viewBox:"0 0 24 24",fill:"currentColor"},o("path",{d:"M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z"})))))}}}function f(e){return function(t){(0,t.onSelect)((function(t){var r=t.item,n=t.state,o=t.source,a=o.getItemInputValue({item:r,state:n});if("querySuggestionsPlugin"===o.sourceId&&a){var i={id:a,label:a,category:r.__autocomplete_qsCategory};e.addItem(i)}}))}}function m(e){var t=function(e){return r({transformSource:function(e){return e.source}},e)}(e),n=t.storage,a=t.transformSource,i=t.subscribe,c=function(e){return{addItem:function(t){e.onRemove(t.id),e.onAdd(t)},removeItem:function(t){e.onRemove(t)},getAll:function(t){return e.getAll(t)}}}(n),u={current:[]};return{name:"aa.recentSearchesPlugin",subscribe:null!=i?i:f(c),onSubmit:function(e){var t=e.state.query;if(t){var r={id:t,label:t};c.addItem(r)}},getSources:function(e){var t=e.query,r=e.setQuery,n=e.refresh,o=e.state;function i(e){c.removeItem(e),n()}function l(e){r(e.label),n()}return u.current=c.getAll(t),Promise.resolve(u.current).then((function(e){return 0===e.length?[]:[a({source:{sourceId:"recentSearchesPlugin",getItemInputValue:function(e){return e.item.label},getItems:function(){return e},templates:s({onRemove:i,onTapAhead:l})},onRemove:i,onTapAhead:l,state:o})]}))},data:r(r({},c),{},{getAlgoliaSearchParams:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Array.isArray(u.current)?r(r({},n),{},{facetFilters:[].concat(o(null!==(e=n.facetFilters)&&void 0!==e?e:[]),o(u.current.map((function(e){return["objectID:-".concat(e.label)]})))),hitsPerPage:Math.max(1,(null!==(t=n.hitsPerPage)&&void 0!==t?t:10)-u.current.length)}):n}}),__autocomplete_pluginOptions:e}}function g(e){var t=e.query,r=e.items,n=e.limit;return t?r.filter((function(e){return e.label.toLowerCase().includes(t.toLowerCase())})).slice(0,n).map((function(e){return i({item:e,query:t})})):r.slice(0,n).map((function(e){return i({item:e,query:t})}))}function v(e){return r({limit:5,search:g,transformSource:function(e){return e.source}},e)}e.addHighlightedAttribute=i,e.createLocalStorageRecentSearchesPlugin=function(e){var t=v(e),n=t.key,a=t.limit,i=t.transformSource,u=t.search,s=t.subscribe,f=function(e){var t=e.key,r=e.limit,n=e.search,a=l({key:t});return{onAdd:function(e){a.setItem([e].concat(o(a.getItem())))},onRemove:function(e){a.setItem(a.getItem().filter((function(t){return t.id!==e})))},getAll:function(){return n({query:arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",items:a.getItem(),limit:r}).slice(0,r)}}}({key:[c,n].join(":"),limit:a,search:u});return r(r({},m({transformSource:i,storage:f,subscribe:s})),{},{name:"aa.localStorageRecentSearchesPlugin",__autocomplete_pluginOptions:e})},e.createRecentSearchesPlugin=m,e.getTemplates=s,e.search=g,Object.defineProperty(e,"__esModule",{value:!0})}));
3
3
  //# sourceMappingURL=index.production.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.production.js","sources":["../../src/addHighlightedAttribute.ts","../../src/constants.ts","../../src/getLocalStorage.ts","../../src/getTemplates.tsx","../../src/createRecentSearchesPlugin.ts","../../src/createStorageApi.ts","../../../autocomplete-shared/dist/esm/createRef.js","../../src/search.ts","../../src/createLocalStorageRecentSearchesPlugin.ts","../../src/createLocalStorage.ts"],"sourcesContent":["import { Highlighted, HistoryItem } from './types';\n\ntype HighlightParams<TItem> = {\n item: TItem;\n query: string;\n};\n\nexport function addHighlightedAttribute<TItem extends HistoryItem>({\n item,\n query,\n}: HighlightParams<TItem>): Highlighted<TItem> {\n return {\n ...item,\n _highlightResult: {\n label: {\n value: query\n ? item.label.replace(\n new RegExp(query.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&'), 'gi'),\n (match) => {\n return `__aa-highlight__${match}__/aa-highlight__`;\n }\n )\n : item.label,\n },\n },\n };\n}\n","export const LOCAL_STORAGE_KEY = 'AUTOCOMPLETE_RECENT_SEARCHES';\nexport const LOCAL_STORAGE_KEY_TEST =\n '__AUTOCOMPLETE_RECENT_SEARCHES_PLUGIN_TEST_KEY__';\n","import { LOCAL_STORAGE_KEY_TEST } from './constants';\n\nfunction isLocalStorageSupported() {\n try {\n localStorage.setItem(LOCAL_STORAGE_KEY_TEST, '');\n localStorage.removeItem(LOCAL_STORAGE_KEY_TEST);\n\n return true;\n } catch (error) {\n return false;\n }\n}\n\ntype LocalStorageProps = {\n key: string;\n};\n\nexport function getLocalStorage<TItem>({ key }: LocalStorageProps) {\n if (!isLocalStorageSupported()) {\n return {\n setItem() {},\n getItem() {\n return [];\n },\n };\n }\n\n return {\n setItem(items: TItem[]) {\n return window.localStorage.setItem(key, JSON.stringify(items));\n },\n getItem(): TItem[] {\n const items = window.localStorage.getItem(key);\n\n return items ? (JSON.parse(items) as TItem[]) : [];\n },\n };\n}\n","/** @jsxRuntime classic */\n/** @jsx createElement */\nimport { SourceTemplates } from '@algolia/autocomplete-js';\n\nimport { RecentSearchesItem } from './types';\n\nexport type GetTemplatesParams<TItem extends RecentSearchesItem> = {\n onRemove(id: string): void;\n onTapAhead(item: TItem): void;\n};\n\nexport function getTemplates<TItem extends RecentSearchesItem>({\n onRemove,\n onTapAhead,\n}: GetTemplatesParams<TItem>): SourceTemplates<TItem> {\n return {\n item({ item, createElement, components }) {\n return (\n <div className=\"aa-ItemWrapper\">\n <div className=\"aa-ItemContent\">\n <div className=\"aa-ItemIcon aa-ItemIcon--noBorder\">\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12.516 6.984v5.25l4.5 2.672-0.75 1.266-5.25-3.188v-6h1.5zM12 20.016q3.281 0 5.648-2.367t2.367-5.648-2.367-5.648-5.648-2.367-5.648 2.367-2.367 5.648 2.367 5.648 5.648 2.367zM12 2.016q4.125 0 7.055 2.93t2.93 7.055-2.93 7.055-7.055 2.93-7.055-2.93-2.93-7.055 2.93-7.055 7.055-2.93z\" />\n </svg>\n </div>\n <div className=\"aa-ItemContentBody\">\n <div className=\"aa-ItemContentTitle\">\n <components.ReverseHighlight hit={item} attribute=\"label\" />\n {item.category && (\n <span className=\"aa-ItemContentSubtitle aa-ItemContentSubtitle--inline\">\n <span className=\"aa-ItemContentSubtitleIcon\" /> in{' '}\n <span className=\"aa-ItemContentSubtitleCategory\">\n {item.category}\n </span>\n </span>\n )}\n </div>\n </div>\n </div>\n <div className=\"aa-ItemActions\">\n <button\n className=\"aa-ItemActionButton\"\n title=\"Remove this search\"\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onRemove(item.id);\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M18 7v13c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-10c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-13zM17 5v-1c0-0.828-0.337-1.58-0.879-2.121s-1.293-0.879-2.121-0.879h-4c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v1h-4c-0.552 0-1 0.448-1 1s0.448 1 1 1h1v13c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h10c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-13h1c0.552 0 1-0.448 1-1s-0.448-1-1-1zM9 5v-1c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h4c0.276 0 0.525 0.111 0.707 0.293s0.293 0.431 0.293 0.707v1zM9 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM13 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1z\" />\n </svg>\n </button>\n <button\n className=\"aa-ItemActionButton\"\n title={`Fill query with \"${item.label}\"`}\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onTapAhead(item);\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z\" />\n </svg>\n </button>\n </div>\n </div>\n );\n },\n };\n}\n","import { PluginSubscribeParams } from '@algolia/autocomplete-core';\nimport {\n AutocompleteSource,\n AutocompleteState,\n AutocompletePlugin,\n} from '@algolia/autocomplete-js';\nimport { createRef, MaybePromise, warn } from '@algolia/autocomplete-shared';\nimport { SearchOptions } from '@algolia/client-search';\n\nimport { createStorageApi } from './createStorageApi';\nimport { getTemplates } from './getTemplates';\nimport { RecentSearchesItem, Storage, StorageApi } from './types';\n\nexport interface RecentSearchesPluginData<TItem extends RecentSearchesItem>\n extends StorageApi<TItem> {\n /**\n * Optimized [Algolia search parameters](https://www.algolia.com/doc/api-reference/search-api-parameters/). This is useful when using the plugin along with the [Query Suggestions](createQuerySuggestionsPlugin) plugin.\n *\n * This function enhances the provided search parameters by:\n * - Excluding Query Suggestions that are already displayed in recent searches.\n * - Using a shared `hitsPerPage` value to get a group limit of Query Suggestions and recent searches.\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-getalgoliasearchparams\n */\n getAlgoliaSearchParams(params?: SearchOptions): SearchOptions;\n}\n\nexport type CreateRecentSearchesPluginParams<\n TItem extends RecentSearchesItem\n> = {\n /**\n * The storage to fetch from and save recent searches into.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-storage\n */\n storage: Storage<TItem>;\n /**\n * A function to transform the provided source.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-transformsource\n */\n transformSource?(params: {\n source: AutocompleteSource<TItem>;\n state: AutocompleteState<TItem>;\n onRemove(id: string): void;\n onTapAhead(item: TItem): void;\n }): AutocompleteSource<TItem>;\n subscribe?(params: PluginSubscribeParams<TItem>): void;\n};\n\nfunction getDefaultSubscribe<TItem extends RecentSearchesItem>(\n store: StorageApi<TItem>\n) {\n return function subscribe({ onSelect }: PluginSubscribeParams<TItem>) {\n onSelect(({ item, state, source }) => {\n const inputValue = source.getItemInputValue({ item, state });\n\n if (source.sourceId === 'querySuggestionsPlugin' && inputValue) {\n const recentItem: RecentSearchesItem = {\n id: inputValue,\n label: inputValue,\n category: (item as any).__autocomplete_qsCategory,\n };\n store.addItem(recentItem as TItem);\n }\n });\n };\n}\n\nexport function createRecentSearchesPlugin<TItem extends RecentSearchesItem>(\n options: CreateRecentSearchesPluginParams<TItem>\n): AutocompletePlugin<TItem, RecentSearchesPluginData<TItem>> {\n const { storage, transformSource, subscribe } = getOptions(options);\n const store = createStorageApi<TItem>(storage);\n const lastItemsRef = createRef<MaybePromise<TItem[]>>([]);\n\n return {\n name: 'aa.recentSearchesPlugin',\n subscribe: subscribe ?? getDefaultSubscribe(store),\n onSubmit({ state }) {\n const { query } = state;\n\n if (query) {\n const recentItem: RecentSearchesItem = {\n id: query,\n label: query,\n };\n store.addItem(recentItem as TItem);\n }\n },\n getSources({ query, setQuery, refresh, state }) {\n lastItemsRef.current = store.getAll(query);\n\n function onRemove(id: string) {\n store.removeItem(id);\n refresh();\n }\n\n function onTapAhead(item: TItem) {\n setQuery(item.label);\n refresh();\n }\n\n return Promise.resolve(lastItemsRef.current).then((items) => {\n if (items.length === 0) {\n return [];\n }\n\n return [\n transformSource({\n source: {\n sourceId: 'recentSearchesPlugin',\n getItemInputValue({ item }) {\n return item.label;\n },\n getItems() {\n return items;\n },\n templates: getTemplates({ onRemove, onTapAhead }),\n },\n onRemove,\n onTapAhead,\n state: state as AutocompleteState<TItem>,\n }),\n ];\n });\n },\n data: {\n ...store,\n // @ts-ignore SearchOptions `facetFilters` is ReadonlyArray\n getAlgoliaSearchParams(params = {}) {\n // If the items returned by `store.getAll` are contained in a Promise,\n // we cannot provide the search params in time when this function is called\n // because we need to resolve the promise before getting the value.\n if (!Array.isArray(lastItemsRef.current)) {\n warn(\n false,\n 'The `getAlgoliaSearchParams` function is not supported with storages that return promises in `getAll`.'\n );\n return params;\n }\n\n return {\n ...params,\n facetFilters: [\n ...(params.facetFilters ?? []),\n // @TODO: we need to base the filter on the `query` attribute, not\n // `objectID`, because the Query Suggestions index cannot ensure\n // that the `objectID` will always be equal to the query.\n ...lastItemsRef.current.map((item) => [`objectID:-${item.label}`]),\n ],\n hitsPerPage: Math.max(\n 1,\n (params.hitsPerPage ?? 10) - lastItemsRef.current.length\n ),\n };\n },\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getOptions<TItem extends RecentSearchesItem>(\n options: CreateRecentSearchesPluginParams<TItem>\n) {\n return {\n transformSource: ({ source }) => source,\n ...options,\n };\n}\n","import { HistoryItem, Storage, StorageApi } from './types';\n\nexport function createStorageApi<TItem extends HistoryItem>(\n storage: Storage<TItem>\n): StorageApi<TItem> {\n return {\n addItem(item) {\n storage.onRemove(item.id);\n storage.onAdd(item);\n },\n removeItem(id) {\n storage.onRemove(id);\n },\n getAll(query) {\n return storage.getAll(query);\n },\n };\n}\n","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","import { addHighlightedAttribute } from './addHighlightedAttribute';\nimport { Highlighted, RecentSearchesItem } from './types';\n\nexport type SearchParams<TItem extends RecentSearchesItem> = {\n query: string;\n items: TItem[];\n limit: number;\n};\n\nexport function search<TItem extends RecentSearchesItem>({\n query,\n items,\n limit,\n}: SearchParams<TItem>): Array<Highlighted<TItem>> {\n if (!query) {\n return items\n .slice(0, limit)\n .map((item) => addHighlightedAttribute({ item, query }));\n }\n\n return items\n .filter((item) => item.label.toLowerCase().includes(query.toLowerCase()))\n .slice(0, limit)\n .map((item) => addHighlightedAttribute({ item, query }));\n}\n","import { AutocompletePlugin } from '@algolia/autocomplete-js';\n\nimport { LOCAL_STORAGE_KEY } from './constants';\nimport { createLocalStorage } from './createLocalStorage';\nimport {\n createRecentSearchesPlugin,\n CreateRecentSearchesPluginParams,\n RecentSearchesPluginData,\n} from './createRecentSearchesPlugin';\nimport { search as defaultSearch, SearchParams } from './search';\nimport { Highlighted, RecentSearchesItem } from './types';\n\nexport type CreateRecentSearchesLocalStorageOptions<\n TItem extends RecentSearchesItem\n> = {\n /**\n * A local storage key to identify where to save and retrieve the recent searches.\n *\n * For example:\n * - \"navbar\"\n * - \"search\"\n * - \"main\"\n *\n * The plugin namespaces all keys to avoid collisions.\n *\n * @example \"top_searchbar\"\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-key\n */\n key: string;\n\n /**\n * The number of recent searches to display.\n *\n * @default 5\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-limit\n */\n limit?: number;\n\n /**\n * A search function to retrieve recent searches from.\n *\n * This function is called in [`storage.getAll`](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-storage) to retrieve recent searches and is useful to filter and highlight recent searches when typing a query.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-search\n */\n search?(params: SearchParams<TItem>): Array<Highlighted<TItem>>;\n};\n\ntype LocalStorageRecentSearchesPluginOptions<\n TItem extends RecentSearchesItem\n> = Pick<\n CreateRecentSearchesPluginParams<TItem>,\n 'transformSource' | 'subscribe'\n> &\n CreateRecentSearchesLocalStorageOptions<TItem>;\n\nexport function createLocalStorageRecentSearchesPlugin<\n TItem extends RecentSearchesItem\n>(\n options: LocalStorageRecentSearchesPluginOptions<TItem>\n): AutocompletePlugin<TItem, RecentSearchesPluginData<TItem>> {\n const { key, limit, transformSource, search, subscribe } = getOptions(\n options\n );\n const storage = createLocalStorage<TItem>({\n key: [LOCAL_STORAGE_KEY, key].join(':'),\n limit,\n search,\n });\n\n const recentSearchesPlugin = createRecentSearchesPlugin<TItem>({\n transformSource,\n storage,\n subscribe,\n });\n\n return {\n ...recentSearchesPlugin,\n name: 'aa.localStorageRecentSearchesPlugin',\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getOptions<TItem extends RecentSearchesItem>(\n options: LocalStorageRecentSearchesPluginOptions<TItem>\n) {\n return {\n limit: 5,\n search: defaultSearch,\n transformSource: ({ source }) => source,\n ...options,\n };\n}\n","import { CreateRecentSearchesLocalStorageOptions } from './createLocalStorageRecentSearchesPlugin';\nimport { getLocalStorage } from './getLocalStorage';\nimport { HistoryItem, Storage } from './types';\n\nexport type CreateLocalStorageProps<TItem extends HistoryItem> = Required<\n CreateRecentSearchesLocalStorageOptions<TItem>\n>;\n\nexport function createLocalStorage<TItem extends HistoryItem>({\n key,\n limit,\n search,\n}: CreateLocalStorageProps<TItem>): Storage<TItem> {\n const storage = getLocalStorage<TItem>({ key });\n\n return {\n onAdd(item) {\n storage.setItem([item, ...storage.getItem()]);\n },\n onRemove(id) {\n storage.setItem(storage.getItem().filter((x) => x.id !== id));\n },\n getAll(query = '') {\n return search({ query, items: storage.getItem(), limit }).slice(0, limit);\n },\n };\n}\n"],"names":["addHighlightedAttribute","_ref","item","query","_objectSpread","_highlightResult","label","value","replace","RegExp","match","concat","LOCAL_STORAGE_KEY","LOCAL_STORAGE_KEY_TEST","getLocalStorage","key","localStorage","setItem","removeItem","error","isLocalStorageSupported","items","window","JSON","stringify","getItem","parse","getTemplates","onRemove","onTapAhead","_ref2","createElement","components","className","viewBox","fill","d","ReverseHighlight","hit","attribute","category","title","onClick","event","preventDefault","stopPropagation","id","getDefaultSubscribe","store","onSelect","state","source","inputValue","getItemInputValue","sourceId","recentItem","__autocomplete_qsCategory","addItem","createRecentSearchesPlugin","options","getOptions","transformSource","_ref6","storage","subscribe","onAdd","getAll","createStorageApi","lastItemsRef","current","name","onSubmit","_ref3","getSources","_ref4","setQuery","refresh","Promise","resolve","then","length","_ref5","getItems","templates","data","getAlgoliaSearchParams","_params$facetFilters","_params$hitsPerPage","params","Array","isArray","facetFilters","_toConsumableArray","map","hitsPerPage","Math","max","__autocomplete_pluginOptions","search","limit","filter","toLowerCase","includes","slice","defaultSearch","x","createLocalStorage","join"],"mappings":"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"}
1
+ {"version":3,"file":"index.production.js","sources":["../../src/addHighlightedAttribute.ts","../../src/constants.ts","../../src/getLocalStorage.ts","../../src/getTemplates.tsx","../../src/createRecentSearchesPlugin.ts","../../src/createStorageApi.ts","../../../autocomplete-shared/dist/esm/createRef.js","../../src/search.ts","../../src/createLocalStorageRecentSearchesPlugin.ts","../../src/createLocalStorage.ts"],"sourcesContent":["import { Highlighted, HistoryItem } from './types';\n\ntype HighlightParams<TItem> = {\n item: TItem;\n query: string;\n};\n\nexport function addHighlightedAttribute<TItem extends HistoryItem>({\n item,\n query,\n}: HighlightParams<TItem>): Highlighted<TItem> {\n return {\n ...item,\n _highlightResult: {\n label: {\n value: query\n ? item.label.replace(\n new RegExp(query.replace(/[-/\\\\^$*+?.()|[\\]{}]/g, '\\\\$&'), 'gi'),\n (match) => {\n return `__aa-highlight__${match}__/aa-highlight__`;\n }\n )\n : item.label,\n },\n },\n };\n}\n","export const LOCAL_STORAGE_KEY = 'AUTOCOMPLETE_RECENT_SEARCHES';\nexport const LOCAL_STORAGE_KEY_TEST =\n '__AUTOCOMPLETE_RECENT_SEARCHES_PLUGIN_TEST_KEY__';\n","import { LOCAL_STORAGE_KEY_TEST } from './constants';\n\nfunction isLocalStorageSupported() {\n try {\n localStorage.setItem(LOCAL_STORAGE_KEY_TEST, '');\n localStorage.removeItem(LOCAL_STORAGE_KEY_TEST);\n\n return true;\n } catch (error) {\n return false;\n }\n}\n\ntype LocalStorageProps = {\n key: string;\n};\n\nexport function getLocalStorage<TItem>({ key }: LocalStorageProps) {\n if (!isLocalStorageSupported()) {\n return {\n setItem() {},\n getItem() {\n return [];\n },\n };\n }\n\n return {\n setItem(items: TItem[]) {\n return window.localStorage.setItem(key, JSON.stringify(items));\n },\n getItem(): TItem[] {\n const items = window.localStorage.getItem(key);\n\n return items ? (JSON.parse(items) as TItem[]) : [];\n },\n };\n}\n","/** @jsxRuntime classic */\n/** @jsx createElement */\nimport { SourceTemplates } from '@algolia/autocomplete-js';\n\nimport { RecentSearchesItem } from './types';\n\nexport type GetTemplatesParams<TItem extends RecentSearchesItem> = {\n onRemove(id: string): void;\n onTapAhead(item: TItem): void;\n};\n\nexport function getTemplates<TItem extends RecentSearchesItem>({\n onRemove,\n onTapAhead,\n}: GetTemplatesParams<TItem>): SourceTemplates<TItem> {\n return {\n item({ item, createElement, components }) {\n return (\n <div className=\"aa-ItemWrapper\">\n <div className=\"aa-ItemContent\">\n <div className=\"aa-ItemIcon aa-ItemIcon--noBorder\">\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M12.516 6.984v5.25l4.5 2.672-0.75 1.266-5.25-3.188v-6h1.5zM12 20.016q3.281 0 5.648-2.367t2.367-5.648-2.367-5.648-5.648-2.367-5.648 2.367-2.367 5.648 2.367 5.648 5.648 2.367zM12 2.016q4.125 0 7.055 2.93t2.93 7.055-2.93 7.055-7.055 2.93-7.055-2.93-2.93-7.055 2.93-7.055 7.055-2.93z\" />\n </svg>\n </div>\n <div className=\"aa-ItemContentBody\">\n <div className=\"aa-ItemContentTitle\">\n <components.ReverseHighlight hit={item} attribute=\"label\" />\n {item.category && (\n <span className=\"aa-ItemContentSubtitle aa-ItemContentSubtitle--inline\">\n <span className=\"aa-ItemContentSubtitleIcon\" /> in{' '}\n <span className=\"aa-ItemContentSubtitleCategory\">\n {item.category}\n </span>\n </span>\n )}\n </div>\n </div>\n </div>\n <div className=\"aa-ItemActions\">\n <button\n className=\"aa-ItemActionButton\"\n title=\"Remove this search\"\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onRemove(item.id);\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M18 7v13c0 0.276-0.111 0.525-0.293 0.707s-0.431 0.293-0.707 0.293h-10c-0.276 0-0.525-0.111-0.707-0.293s-0.293-0.431-0.293-0.707v-13zM17 5v-1c0-0.828-0.337-1.58-0.879-2.121s-1.293-0.879-2.121-0.879h-4c-0.828 0-1.58 0.337-2.121 0.879s-0.879 1.293-0.879 2.121v1h-4c-0.552 0-1 0.448-1 1s0.448 1 1 1h1v13c0 0.828 0.337 1.58 0.879 2.121s1.293 0.879 2.121 0.879h10c0.828 0 1.58-0.337 2.121-0.879s0.879-1.293 0.879-2.121v-13h1c0.552 0 1-0.448 1-1s-0.448-1-1-1zM9 5v-1c0-0.276 0.111-0.525 0.293-0.707s0.431-0.293 0.707-0.293h4c0.276 0 0.525 0.111 0.707 0.293s0.293 0.431 0.293 0.707v1zM9 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1zM13 11v6c0 0.552 0.448 1 1 1s1-0.448 1-1v-6c0-0.552-0.448-1-1-1s-1 0.448-1 1z\" />\n </svg>\n </button>\n <button\n className=\"aa-ItemActionButton\"\n title={`Fill query with \"${item.label}\"`}\n onClick={(event) => {\n event.preventDefault();\n event.stopPropagation();\n onTapAhead(item);\n }}\n >\n <svg viewBox=\"0 0 24 24\" fill=\"currentColor\">\n <path d=\"M8 17v-7.586l8.293 8.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-8.293-8.293h7.586c0.552 0 1-0.448 1-1s-0.448-1-1-1h-10c-0.552 0-1 0.448-1 1v10c0 0.552 0.448 1 1 1s1-0.448 1-1z\" />\n </svg>\n </button>\n </div>\n </div>\n );\n },\n };\n}\n","import { PluginSubscribeParams } from '@algolia/autocomplete-core';\nimport {\n AutocompleteSource,\n AutocompleteState,\n AutocompletePlugin,\n} from '@algolia/autocomplete-js';\nimport { createRef, MaybePromise, warn } from '@algolia/autocomplete-shared';\nimport { SearchOptions } from '@algolia/client-search';\n\nimport { createStorageApi } from './createStorageApi';\nimport { getTemplates } from './getTemplates';\nimport { RecentSearchesItem, Storage, StorageApi } from './types';\n\nexport interface RecentSearchesPluginData<TItem extends RecentSearchesItem>\n extends StorageApi<TItem> {\n /**\n * Optimized [Algolia search parameters](https://www.algolia.com/doc/api-reference/search-api-parameters/). This is useful when using the plugin along with the [Query Suggestions](createQuerySuggestionsPlugin) plugin.\n *\n * This function enhances the provided search parameters by:\n * - Excluding Query Suggestions that are already displayed in recent searches.\n * - Using a shared `hitsPerPage` value to get a group limit of Query Suggestions and recent searches.\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-getalgoliasearchparams\n */\n getAlgoliaSearchParams(params?: SearchOptions): SearchOptions;\n}\n\nexport type CreateRecentSearchesPluginParams<TItem extends RecentSearchesItem> =\n {\n /**\n * The storage to fetch from and save recent searches into.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-storage\n */\n storage: Storage<TItem>;\n /**\n * A function to transform the provided source.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-transformsource\n */\n transformSource?(params: {\n source: AutocompleteSource<TItem>;\n state: AutocompleteState<TItem>;\n onRemove(id: string): void;\n onTapAhead(item: TItem): void;\n }): AutocompleteSource<TItem>;\n subscribe?(params: PluginSubscribeParams<TItem>): void;\n };\n\nfunction getDefaultSubscribe<TItem extends RecentSearchesItem>(\n store: StorageApi<TItem>\n) {\n return function subscribe({ onSelect }: PluginSubscribeParams<TItem>) {\n onSelect(({ item, state, source }) => {\n const inputValue = source.getItemInputValue({ item, state });\n\n if (source.sourceId === 'querySuggestionsPlugin' && inputValue) {\n const recentItem: RecentSearchesItem = {\n id: inputValue,\n label: inputValue,\n category: (item as any).__autocomplete_qsCategory,\n };\n store.addItem(recentItem as TItem);\n }\n });\n };\n}\n\nexport function createRecentSearchesPlugin<TItem extends RecentSearchesItem>(\n options: CreateRecentSearchesPluginParams<TItem>\n): AutocompletePlugin<TItem, RecentSearchesPluginData<TItem>> {\n const { storage, transformSource, subscribe } = getOptions(options);\n const store = createStorageApi<TItem>(storage);\n const lastItemsRef = createRef<MaybePromise<TItem[]>>([]);\n\n return {\n name: 'aa.recentSearchesPlugin',\n subscribe: subscribe ?? getDefaultSubscribe(store),\n onSubmit({ state }) {\n const { query } = state;\n\n if (query) {\n const recentItem: RecentSearchesItem = {\n id: query,\n label: query,\n };\n store.addItem(recentItem as TItem);\n }\n },\n getSources({ query, setQuery, refresh, state }) {\n lastItemsRef.current = store.getAll(query);\n\n function onRemove(id: string) {\n store.removeItem(id);\n refresh();\n }\n\n function onTapAhead(item: TItem) {\n setQuery(item.label);\n refresh();\n }\n\n return Promise.resolve(lastItemsRef.current).then((items) => {\n if (items.length === 0) {\n return [];\n }\n\n return [\n transformSource({\n source: {\n sourceId: 'recentSearchesPlugin',\n getItemInputValue({ item }) {\n return item.label;\n },\n getItems() {\n return items;\n },\n templates: getTemplates({ onRemove, onTapAhead }),\n },\n onRemove,\n onTapAhead,\n state: state as AutocompleteState<TItem>,\n }),\n ];\n });\n },\n data: {\n ...store,\n // @ts-ignore SearchOptions `facetFilters` is ReadonlyArray\n getAlgoliaSearchParams(params = {}) {\n // If the items returned by `store.getAll` are contained in a Promise,\n // we cannot provide the search params in time when this function is called\n // because we need to resolve the promise before getting the value.\n if (!Array.isArray(lastItemsRef.current)) {\n warn(\n false,\n 'The `getAlgoliaSearchParams` function is not supported with storages that return promises in `getAll`.'\n );\n return params;\n }\n\n return {\n ...params,\n facetFilters: [\n ...(params.facetFilters ?? []),\n // @TODO: we need to base the filter on the `query` attribute, not\n // `objectID`, because the Query Suggestions index cannot ensure\n // that the `objectID` will always be equal to the query.\n ...lastItemsRef.current.map((item) => [`objectID:-${item.label}`]),\n ],\n hitsPerPage: Math.max(\n 1,\n (params.hitsPerPage ?? 10) - lastItemsRef.current.length\n ),\n };\n },\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getOptions<TItem extends RecentSearchesItem>(\n options: CreateRecentSearchesPluginParams<TItem>\n) {\n return {\n transformSource: ({ source }) => source,\n ...options,\n };\n}\n","import { HistoryItem, Storage, StorageApi } from './types';\n\nexport function createStorageApi<TItem extends HistoryItem>(\n storage: Storage<TItem>\n): StorageApi<TItem> {\n return {\n addItem(item) {\n storage.onRemove(item.id);\n storage.onAdd(item);\n },\n removeItem(id) {\n storage.onRemove(id);\n },\n getAll(query) {\n return storage.getAll(query);\n },\n };\n}\n","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","import { addHighlightedAttribute } from './addHighlightedAttribute';\nimport { Highlighted, RecentSearchesItem } from './types';\n\nexport type SearchParams<TItem extends RecentSearchesItem> = {\n query: string;\n items: TItem[];\n limit: number;\n};\n\nexport function search<TItem extends RecentSearchesItem>({\n query,\n items,\n limit,\n}: SearchParams<TItem>): Array<Highlighted<TItem>> {\n if (!query) {\n return items\n .slice(0, limit)\n .map((item) => addHighlightedAttribute({ item, query }));\n }\n\n return items\n .filter((item) => item.label.toLowerCase().includes(query.toLowerCase()))\n .slice(0, limit)\n .map((item) => addHighlightedAttribute({ item, query }));\n}\n","import { AutocompletePlugin } from '@algolia/autocomplete-js';\n\nimport { LOCAL_STORAGE_KEY } from './constants';\nimport { createLocalStorage } from './createLocalStorage';\nimport {\n createRecentSearchesPlugin,\n CreateRecentSearchesPluginParams,\n RecentSearchesPluginData,\n} from './createRecentSearchesPlugin';\nimport { search as defaultSearch, SearchParams } from './search';\nimport { Highlighted, RecentSearchesItem } from './types';\n\nexport type CreateRecentSearchesLocalStorageOptions<\n TItem extends RecentSearchesItem\n> = {\n /**\n * A local storage key to identify where to save and retrieve the recent searches.\n *\n * For example:\n * - \"navbar\"\n * - \"search\"\n * - \"main\"\n *\n * The plugin namespaces all keys to avoid collisions.\n *\n * @example \"top_searchbar\"\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-key\n */\n key: string;\n\n /**\n * The number of recent searches to display.\n *\n * @default 5\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-limit\n */\n limit?: number;\n\n /**\n * A search function to retrieve recent searches from.\n *\n * This function is called in [`storage.getAll`](https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createRecentSearchesPlugin/#param-storage) to retrieve recent searches and is useful to filter and highlight recent searches when typing a query.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-recent-searches/createLocalStorageRecentSearchesPlugin/#param-search\n */\n search?(params: SearchParams<TItem>): Array<Highlighted<TItem>>;\n};\n\ntype LocalStorageRecentSearchesPluginOptions<TItem extends RecentSearchesItem> =\n Pick<\n CreateRecentSearchesPluginParams<TItem>,\n 'transformSource' | 'subscribe'\n > &\n CreateRecentSearchesLocalStorageOptions<TItem>;\n\nexport function createLocalStorageRecentSearchesPlugin<\n TItem extends RecentSearchesItem\n>(\n options: LocalStorageRecentSearchesPluginOptions<TItem>\n): AutocompletePlugin<TItem, RecentSearchesPluginData<TItem>> {\n const { key, limit, transformSource, search, subscribe } =\n getOptions(options);\n const storage = createLocalStorage<TItem>({\n key: [LOCAL_STORAGE_KEY, key].join(':'),\n limit,\n search,\n });\n\n const recentSearchesPlugin = createRecentSearchesPlugin<TItem>({\n transformSource,\n storage,\n subscribe,\n });\n\n return {\n ...recentSearchesPlugin,\n name: 'aa.localStorageRecentSearchesPlugin',\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getOptions<TItem extends RecentSearchesItem>(\n options: LocalStorageRecentSearchesPluginOptions<TItem>\n) {\n return {\n limit: 5,\n search: defaultSearch,\n transformSource: ({ source }) => source,\n ...options,\n };\n}\n","import { CreateRecentSearchesLocalStorageOptions } from './createLocalStorageRecentSearchesPlugin';\nimport { getLocalStorage } from './getLocalStorage';\nimport { HistoryItem, Storage } from './types';\n\nexport type CreateLocalStorageProps<TItem extends HistoryItem> = Required<\n CreateRecentSearchesLocalStorageOptions<TItem>\n>;\n\nexport function createLocalStorage<TItem extends HistoryItem>({\n key,\n limit,\n search,\n}: CreateLocalStorageProps<TItem>): Storage<TItem> {\n const storage = getLocalStorage<TItem>({ key });\n\n return {\n onAdd(item) {\n storage.setItem([item, ...storage.getItem()]);\n },\n onRemove(id) {\n storage.setItem(storage.getItem().filter((x) => x.id !== id));\n },\n getAll(query = '') {\n return search({ query, items: storage.getItem(), limit }).slice(0, limit);\n },\n };\n}\n"],"names":["addHighlightedAttribute","_ref","item","query","_objectSpread","_highlightResult","label","value","replace","RegExp","match","concat","LOCAL_STORAGE_KEY","LOCAL_STORAGE_KEY_TEST","getLocalStorage","key","localStorage","setItem","removeItem","error","isLocalStorageSupported","items","window","JSON","stringify","getItem","parse","getTemplates","onRemove","onTapAhead","_ref2","createElement","components","className","viewBox","fill","d","ReverseHighlight","hit","attribute","category","title","onClick","event","preventDefault","stopPropagation","id","getDefaultSubscribe","store","onSelect","state","source","inputValue","getItemInputValue","sourceId","recentItem","__autocomplete_qsCategory","addItem","createRecentSearchesPlugin","options","_getOptions","transformSource","_ref6","getOptions","storage","subscribe","onAdd","getAll","createStorageApi","lastItemsRef","current","name","onSubmit","_ref3","getSources","_ref4","setQuery","refresh","Promise","resolve","then","length","_ref5","getItems","templates","data","getAlgoliaSearchParams","_params$facetFilters","_params$hitsPerPage","params","arguments","undefined","Array","isArray","facetFilters","_toConsumableArray","map","hitsPerPage","Math","max","__autocomplete_pluginOptions","search","limit","filter","toLowerCase","includes","slice","defaultSearch","x","createLocalStorage","join"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@algolia/autocomplete-plugin-recent-searches",
3
3
  "description": "A plugin to add recent searches to Algolia Autocomplete.",
4
- "version": "1.8.2",
4
+ "version": "1.9.0",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/algolia/autocomplete",
7
7
  "repository": "algolia/autocomplete",
@@ -31,13 +31,13 @@
31
31
  "watch": "watch \"yarn on:change\" --ignoreDirectoryPattern \"/dist/\""
32
32
  },
33
33
  "dependencies": {
34
- "@algolia/autocomplete-core": "1.8.2",
35
- "@algolia/autocomplete-js": "1.8.2",
36
- "@algolia/autocomplete-preset-algolia": "1.8.2",
37
- "@algolia/autocomplete-shared": "1.8.2"
34
+ "@algolia/autocomplete-core": "1.9.0",
35
+ "@algolia/autocomplete-js": "1.9.0",
36
+ "@algolia/autocomplete-preset-algolia": "1.9.0",
37
+ "@algolia/autocomplete-shared": "1.9.0"
38
38
  },
39
39
  "devDependencies": {
40
- "@algolia/client-search": "4.14.3"
40
+ "@algolia/client-search": "4.16.0"
41
41
  },
42
42
  "peerDependencies": {
43
43
  "@algolia/client-search": ">= 4.5.1 < 6"