{"version":3,"file":"js/2624.377eff948fa2da6ab0a5.chunk.js","mappings":"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","sources":["webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/debounce.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/createRef.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/isEqual.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/noop.js","webpack://ti_west/./node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createClickedEvent.js","webpack://ti_west/./node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isModernInsightsClient.js","webpack://ti_west/./node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createSearchInsightsApi.js","webpack://ti_west/./node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createViewedEvents.js","webpack://ti_west/./node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/isAlgoliaInsightsHit.js","webpack://ti_west/./node_modules/@algolia/autocomplete-plugin-algolia-insights/dist/esm/createAlgoliaInsightsPlugin.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/safelyRunOnBrowser.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/createStore.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/flatten.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/getAutocompleteSetters.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/getItemsCount.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/generateAutocompleteId.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/decycle.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/getNormalizedSources.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/getDefaultProps.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/reshape.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/resolve.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromise.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/getActiveItem.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/onInput.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/createConcurrentSafePromise.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/mapToAlgoliaResponse.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/getAutocompleteElementId.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/onKeyDown.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/isSamsung.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/getNativeEvent.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/getPropGetters.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/isOrContainsNode.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/metadata.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/getCompletion.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/getNextActiveItemId.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/stateReducer.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/createAutocomplete.js","webpack://ti_west/./node_modules/@algolia/autocomplete-core/dist/esm/utils/createCancelablePromiseList.js","webpack://ti_west/./node_modules/htm/dist/htm.module.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/elements/SearchIcon.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/elements/ClearIcon.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/elements/LoadingIcon.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/utils/setProperties.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/getCreateDomElement.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/elements/Input.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/createAutocompleteDom.js","webpack://ti_west/./node_modules/preact/dist/preact.module.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAttribute.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitHighlight.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/components/Highlight.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/isPartHighlighted.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/reverseHighlightedParts.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/components/ReverseHighlight.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseHighlight.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitSnippet.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/components/ReverseSnippet.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/highlight/parseAlgoliaHitReverseSnippet.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/components/Snippet.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/utils/getHTMLElement.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/utils/mergeClassNames.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/getDefaultOptions.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/getPanelPlacementStyle.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/render.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/utils/mergeDeep.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/utils/pickBy.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/autocomplete.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/createReactiveWrapper.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/createEffectWrapper.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/requesters/getAlgoliaFacets.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/requester/createRequester.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/search/fetchAlgoliaResults.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/requesters/createAlgoliaRequester.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/utils/getAppIdAndApiKey.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/requesters/getAlgoliaResults.js","webpack://ti_west/./node_modules/@algolia/autocomplete-js/dist/esm/userAgents.js","webpack://ti_west/./node_modules/@algolia/autocomplete-plugin-query-suggestions/dist/esm/getTemplates.js","webpack://ti_west/./node_modules/@algolia/autocomplete-plugin-query-suggestions/dist/esm/createQuerySuggestionsPlugin.js","webpack://ti_west/./node_modules/@algolia/autocomplete-preset-algolia/dist/esm/constants/index.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/getAttributeValueByPath.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/invariant.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/userAgents.js","webpack://ti_west/./node_modules/@algolia/autocomplete-shared/dist/esm/version.js","webpack://ti_west/./node_modules/algoliasearch/dist/algoliasearch.umd.js","webpack://ti_west/./node_modules/search-insights/dist/search-insights-browser.cjs.min.js","webpack://ti_west/./node_modules/search-insights/index-browser.cjs.js"],"sourcesContent":["export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","export function createClickedEvent(_ref) {\n var item = _ref.item,\n _ref$items = _ref.items,\n items = _ref$items === void 0 ? [] : _ref$items;\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex(function (x) {\n return x.objectID === item.objectID;\n })],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete']\n };\n}","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _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); }\nfunction _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; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n/**\n * Determines if a given insights `client` supports the optional call to `init`\n * and the ability to set credentials via extra parameters when sending events.\n */\nexport function isModernInsightsClient(client) {\n var _split$map = (client.version || '').split('.').map(Number),\n _split$map2 = _slicedToArray(_split$map, 2),\n major = _split$map2[0],\n minor = _split$map2[1];\n\n /* eslint-disable @typescript-eslint/camelcase */\n var v3 = major >= 3;\n var v2_4 = major === 2 && minor >= 4;\n var v1_10 = major === 1 && minor >= 10;\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}","var _excluded = [\"items\"],\n _excluded2 = [\"items\"];\nfunction _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); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { isModernInsightsClient } from './isModernInsightsClient';\nfunction chunk(item) {\n var chunkSize = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 20;\n var chunks = [];\n for (var i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push(_objectSpread(_objectSpread({}, item), {}, {\n objectIDs: item.objectIDs.slice(i, i + chunkSize)\n }));\n }\n return chunks;\n}\nfunction mapToInsightsParamsApi(params) {\n return params.map(function (_ref) {\n var items = _ref.items,\n param = _objectWithoutProperties(_ref, _excluded);\n return _objectSpread(_objectSpread({}, param), {}, {\n objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref2) {\n var objectID = _ref2.objectID;\n return objectID;\n })) || param.objectIDs\n });\n });\n}\nexport function createSearchInsightsApi(searchInsights) {\n var canSendHeaders = isModernInsightsClient(searchInsights);\n function sendToInsights(method, payloads, items) {\n if (canSendHeaders && typeof items !== 'undefined') {\n var _items$0$__autocomple = items[0].__autocomplete_algoliaCredentials,\n appId = _items$0$__autocomple.appId,\n apiKey = _items$0$__autocomple.apiKey;\n var headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey\n };\n searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads), [{\n headers: headers\n }]));\n } else {\n searchInsights.apply(void 0, [method].concat(_toConsumableArray(payloads)));\n }\n }\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init: function init(appId, apiKey) {\n searchInsights('init', {\n appId: appId,\n apiKey: apiKey\n });\n },\n /**\n * Sets the authenticated user token to attach to events.\n * Unsets the authenticated token by passing `undefined`.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/set-authenticated-user-token/\n */\n setAuthenticatedUserToken: function setAuthenticatedUserToken(authenticatedUserToken) {\n searchInsights('setAuthenticatedUserToken', authenticatedUserToken);\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken: function setUserToken(userToken) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch: function clickedObjectIDsAfterSearch() {\n for (var _len = arguments.length, params = new Array(_len), _key = 0; _key < _len; _key++) {\n params[_key] = arguments[_key];\n }\n if (params.length > 0) {\n sendToInsights('clickedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs: function clickedObjectIDs() {\n for (var _len2 = arguments.length, params = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n params[_key2] = arguments[_key2];\n }\n if (params.length > 0) {\n sendToInsights('clickedObjectIDs', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters: function clickedFilters() {\n for (var _len3 = arguments.length, params = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n params[_key3] = arguments[_key3];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['clickedFilters'].concat(params));\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch: function convertedObjectIDsAfterSearch() {\n for (var _len4 = arguments.length, params = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n params[_key4] = arguments[_key4];\n }\n if (params.length > 0) {\n sendToInsights('convertedObjectIDsAfterSearch', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs: function convertedObjectIDs() {\n for (var _len5 = arguments.length, params = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n params[_key5] = arguments[_key5];\n }\n if (params.length > 0) {\n sendToInsights('convertedObjectIDs', mapToInsightsParamsApi(params), params[0].items);\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters: function convertedFilters() {\n for (var _len6 = arguments.length, params = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n params[_key6] = arguments[_key6];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['convertedFilters'].concat(params));\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs: function viewedObjectIDs() {\n for (var _len7 = arguments.length, params = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n params[_key7] = arguments[_key7];\n }\n if (params.length > 0) {\n params.reduce(function (acc, _ref3) {\n var items = _ref3.items,\n param = _objectWithoutProperties(_ref3, _excluded2);\n return [].concat(_toConsumableArray(acc), _toConsumableArray(chunk(_objectSpread(_objectSpread({}, param), {}, {\n objectIDs: (items === null || items === void 0 ? void 0 : items.map(function (_ref4) {\n var objectID = _ref4.objectID;\n return objectID;\n })) || param.objectIDs\n })).map(function (payload) {\n return {\n items: items,\n payload: payload\n };\n })));\n }, []).forEach(function (_ref5) {\n var items = _ref5.items,\n payload = _ref5.payload;\n return sendToInsights('viewedObjectIDs', [payload], items);\n });\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters: function viewedFilters() {\n for (var _len8 = arguments.length, params = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {\n params[_key8] = arguments[_key8];\n }\n if (params.length > 0) {\n searchInsights.apply(void 0, ['viewedFilters'].concat(params));\n }\n }\n };\n}","export function createViewedEvents(_ref) {\n var items = _ref.items;\n var itemsByIndexName = items.reduce(function (acc, current) {\n var _acc$current$__autoco;\n acc[current.__autocomplete_indexName] = ((_acc$current$__autoco = acc[current.__autocomplete_indexName]) !== null && _acc$current$__autoco !== void 0 ? _acc$current$__autoco : []).concat(current);\n return acc;\n }, {});\n return Object.keys(itemsByIndexName).map(function (indexName) {\n var items = itemsByIndexName[indexName];\n return {\n index: indexName,\n items: items,\n algoliaSource: ['autocomplete']\n };\n });\n}","export function isAlgoliaInsightsHit(hit) {\n return hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID;\n}","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); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { createRef, debounce, isEqual, noop, safelyRunOnBrowser } from '@algolia/autocomplete-shared';\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nvar VIEW_EVENT_DELAY = 400;\nvar ALGOLIA_INSIGHTS_VERSION = '2.13.0';\nvar ALGOLIA_INSIGHTS_SRC = \"https://cdn.jsdelivr.net/npm/search-insights@\".concat(ALGOLIA_INSIGHTS_VERSION, \"/dist/search-insights.min.js\");\nvar sendViewedObjectIDs = debounce(function (_ref) {\n var onItemsChange = _ref.onItemsChange,\n items = _ref.items,\n insights = _ref.insights,\n state = _ref.state;\n onItemsChange({\n insights: insights,\n insightsEvents: createViewedEvents({\n items: items\n }).map(function (event) {\n return _objectSpread({\n eventName: 'Items Viewed'\n }, event);\n }),\n state: state\n });\n}, VIEW_EVENT_DELAY);\nexport function createAlgoliaInsightsPlugin(options) {\n var _getOptions = getOptions(options),\n providedInsightsClient = _getOptions.insightsClient,\n insightsInitParams = _getOptions.insightsInitParams,\n onItemsChange = _getOptions.onItemsChange,\n onSelectEvent = _getOptions.onSelect,\n onActiveEvent = _getOptions.onActive,\n __autocomplete_clickAnalytics = _getOptions.__autocomplete_clickAnalytics;\n var insightsClient = providedInsightsClient;\n if (!providedInsightsClient) {\n safelyRunOnBrowser(function (_ref2) {\n var window = _ref2.window;\n var pointer = window.AlgoliaAnalyticsObject || 'aa';\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n if (!window[pointer]) {\n window[pointer] = function () {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n window[pointer].queue.push(args);\n };\n }\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n insightsClient = window[pointer];\n loadInsights(window);\n }\n });\n }\n\n // We return an empty plugin if `insightsClient` is still undefined at\n // this stage, which can happen in server environments.\n if (!insightsClient) {\n return {};\n }\n if (insightsInitParams) {\n insightsClient('init', _objectSpread({\n partial: true\n }, insightsInitParams));\n }\n var insights = createSearchInsightsApi(insightsClient);\n var previousItems = createRef([]);\n var debouncedOnStateChange = debounce(function (_ref3) {\n var state = _ref3.state;\n if (!state.isOpen) {\n return;\n }\n var items = state.collections.reduce(function (acc, current) {\n return [].concat(_toConsumableArray(acc), _toConsumableArray(current.items));\n }, []).filter(isAlgoliaInsightsHit);\n if (!isEqual(previousItems.current.map(function (x) {\n return x.objectID;\n }), items.map(function (x) {\n return x.objectID;\n }))) {\n previousItems.current = items;\n if (items.length > 0) {\n sendViewedObjectIDs({\n onItemsChange: onItemsChange,\n items: items,\n insights: insights,\n state: state\n });\n }\n }\n }, 0);\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe: function subscribe(_ref4) {\n var setContext = _ref4.setContext,\n onSelect = _ref4.onSelect,\n onActive = _ref4.onActive;\n var isAuthenticatedToken = false;\n function setInsightsContext(userToken) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: _objectSpread(_objectSpread({}, __autocomplete_clickAnalytics ? {\n clickAnalytics: true\n } : {}), userToken ? {\n userToken: normalizeUserToken(userToken)\n } : {}),\n insights: insights\n }\n });\n }\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n setInsightsContext();\n\n // Handles user token changes\n insightsClient('onUserTokenChange', function (userToken) {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n insightsClient('getUserToken', null, function (_error, userToken) {\n if (!isAuthenticatedToken) {\n setInsightsContext(userToken);\n }\n });\n\n // Handles authenticated user token changes\n insightsClient('onAuthenticatedUserTokenChange', function (authenticatedUserToken) {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n } else {\n isAuthenticatedToken = false;\n insightsClient('getUserToken', null, function (_error, userToken) {\n return setInsightsContext(userToken);\n });\n }\n });\n insightsClient('getAuthenticatedUserToken', null, function (_error, authenticatedUserToken) {\n if (authenticatedUserToken) {\n isAuthenticatedToken = true;\n setInsightsContext(authenticatedUserToken);\n }\n });\n onSelect(function (_ref5) {\n var item = _ref5.item,\n state = _ref5.state,\n event = _ref5.event,\n source = _ref5.source;\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n onSelectEvent({\n state: state,\n event: event,\n insights: insights,\n item: item,\n insightsEvents: [_objectSpread({\n eventName: 'Item Selected'\n }, createClickedEvent({\n item: item,\n items: source.getItems().filter(isAlgoliaInsightsHit)\n }))]\n });\n });\n onActive(function (_ref6) {\n var item = _ref6.item,\n source = _ref6.source,\n state = _ref6.state,\n event = _ref6.event;\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n onActiveEvent({\n state: state,\n event: event,\n insights: insights,\n item: item,\n insightsEvents: [_objectSpread({\n eventName: 'Item Active'\n }, createClickedEvent({\n item: item,\n items: source.getItems().filter(isAlgoliaInsightsHit)\n }))]\n });\n });\n },\n onStateChange: function onStateChange(_ref7) {\n var state = _ref7.state;\n debouncedOnStateChange({\n state: state\n });\n },\n __autocomplete_pluginOptions: options\n };\n}\nfunction getAlgoliaSources() {\n var _context$algoliaInsig;\n var algoliaSourceBase = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var context = arguments.length > 1 ? arguments[1] : undefined;\n return [].concat(_toConsumableArray(algoliaSourceBase), ['autocomplete-internal'], _toConsumableArray((_context$algoliaInsig = context.algoliaInsightsPlugin) !== null && _context$algoliaInsig !== void 0 && _context$algoliaInsig.__automaticInsights ? ['autocomplete-automatic'] : []));\n}\nfunction getOptions(options) {\n return _objectSpread({\n onItemsChange: function onItemsChange(_ref8) {\n var insights = _ref8.insights,\n insightsEvents = _ref8.insightsEvents,\n state = _ref8.state;\n insights.viewedObjectIDs.apply(insights, _toConsumableArray(insightsEvents.map(function (event) {\n return _objectSpread(_objectSpread({}, event), {}, {\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context)\n });\n })));\n },\n onSelect: function onSelect(_ref9) {\n var insights = _ref9.insights,\n insightsEvents = _ref9.insightsEvents,\n state = _ref9.state;\n insights.clickedObjectIDsAfterSearch.apply(insights, _toConsumableArray(insightsEvents.map(function (event) {\n return _objectSpread(_objectSpread({}, event), {}, {\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context)\n });\n })));\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true\n }, options);\n}\nfunction loadInsights(environment) {\n var errorMessage = \"[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete\";\n try {\n var script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n script.onerror = function () {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n\n/**\n * While `search-insights` supports both string and number user tokens,\n * the Search API only accepts strings. This function normalizes the user token.\n */\nfunction normalizeUserToken(userToken) {\n return typeof userToken === 'number' ? userToken.toString() : userToken;\n}","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { createCancelablePromiseList } from './utils';\nexport function createStore(reducer, props, onStoreStateChange) {\n var state = props.initialState;\n return {\n getState: function getState() {\n return state;\n },\n dispatch: function dispatch(action, payload) {\n var prevState = _objectSpread({}, state);\n state = reducer(state, {\n type: action,\n props: props,\n payload: payload\n });\n onStoreStateChange({\n state: state,\n prevState: prevState\n });\n },\n pendingRequests: createCancelablePromiseList()\n };\n}","export function flatten(values) {\n return values.reduce(function (a, b) {\n return a.concat(b);\n }, []);\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { flatten } from '@algolia/autocomplete-shared';\nexport function getAutocompleteSetters(_ref) {\n var store = _ref.store;\n var setActiveItemId = function setActiveItemId(value) {\n store.dispatch('setActiveItemId', value);\n };\n var setQuery = function setQuery(value) {\n store.dispatch('setQuery', value);\n };\n var setCollections = function setCollections(rawValue) {\n var baseItemId = 0;\n var value = rawValue.map(function (collection) {\n return _objectSpread(_objectSpread({}, collection), {}, {\n // We flatten the stored items to support calling `getAlgoliaResults`\n // from the source itself.\n items: flatten(collection.items).map(function (item) {\n return _objectSpread(_objectSpread({}, item), {}, {\n __autocomplete_id: baseItemId++\n });\n })\n });\n });\n store.dispatch('setCollections', value);\n };\n var setIsOpen = function setIsOpen(value) {\n store.dispatch('setIsOpen', value);\n };\n var setStatus = function setStatus(value) {\n store.dispatch('setStatus', value);\n };\n var setContext = function setContext(value) {\n store.dispatch('setContext', value);\n };\n return {\n setActiveItemId: setActiveItemId,\n setQuery: setQuery,\n setCollections: setCollections,\n setIsOpen: setIsOpen,\n setStatus: setStatus,\n setContext: setContext\n };\n}","export function getItemsCount(state) {\n if (state.collections.length === 0) {\n return 0;\n }\n return state.collections.reduce(function (sum, collection) {\n return sum + collection.items.length;\n }, 0);\n}","var autocompleteId = 0;\nexport function generateAutocompleteId() {\n return \"autocomplete-\".concat(autocompleteId++);\n}","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _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); }\nfunction _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; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\nfunction _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); }\n/**\n * Decycles objects with circular references.\n * This is used to print cyclic structures in development environment only.\n */\nexport function decycle(obj) {\n var seen = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new Set();\n if (!(process.env.NODE_ENV !== 'production') || !obj || _typeof(obj) !== 'object') {\n return obj;\n }\n if (seen.has(obj)) {\n return '[Circular]';\n }\n var newSeen = seen.add(obj);\n if (Array.isArray(obj)) {\n return obj.map(function (x) {\n return decycle(x, newSeen);\n });\n }\n return Object.fromEntries(Object.entries(obj).map(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n return [key, decycle(value, newSeen)];\n }));\n}","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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _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); }\nimport { invariant, decycle, noop } from '@algolia/autocomplete-shared';\nexport function getNormalizedSources(getSources, params) {\n var seenSourceIds = [];\n return Promise.resolve(getSources(params)).then(function (sources) {\n invariant(Array.isArray(sources), function () {\n return \"The `getSources` function must return an array of sources but returned type \".concat(JSON.stringify(_typeof(sources)), \":\\n\\n\").concat(JSON.stringify(decycle(sources), null, 2));\n });\n return Promise.all(sources\n // We allow `undefined` and `false` sources to allow users to use\n // `Boolean(query) && source` (=> `false`).\n // We need to remove these values at this point.\n .filter(function (maybeSource) {\n return Boolean(maybeSource);\n }).map(function (source) {\n invariant(typeof source.sourceId === 'string', 'A source must provide a `sourceId` string.');\n if (seenSourceIds.includes(source.sourceId)) {\n throw new Error(\"[Autocomplete] The `sourceId` \".concat(JSON.stringify(source.sourceId), \" is not unique.\"));\n }\n seenSourceIds.push(source.sourceId);\n var defaultSource = {\n getItemInputValue: function getItemInputValue(_ref) {\n var state = _ref.state;\n return state.query;\n },\n getItemUrl: function getItemUrl() {\n return undefined;\n },\n onSelect: function onSelect(_ref2) {\n var setIsOpen = _ref2.setIsOpen;\n setIsOpen(false);\n },\n onActive: noop,\n onResolve: noop\n };\n Object.keys(defaultSource).forEach(function (key) {\n defaultSource[key].__default = true;\n });\n var normalizedSource = _objectSpread(_objectSpread({}, defaultSource), source);\n return Promise.resolve(normalizedSource);\n }));\n });\n}","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); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { getItemsCount, generateAutocompleteId, flatten } from '@algolia/autocomplete-shared';\nimport { getNormalizedSources } from './utils';\nexport function getDefaultProps(props, pluginSubscribers) {\n var _props$id;\n /* eslint-disable no-restricted-globals */\n var environment = typeof window !== 'undefined' ? window : {};\n /* eslint-enable no-restricted-globals */\n var plugins = props.plugins || [];\n return _objectSpread(_objectSpread({\n debug: false,\n openOnFocus: false,\n enterKeyHint: undefined,\n ignoreCompositionEvents: false,\n placeholder: '',\n autoFocus: false,\n defaultActiveItemId: null,\n stallThreshold: 300,\n insights: undefined,\n environment: environment,\n shouldPanelOpen: function shouldPanelOpen(_ref) {\n var state = _ref.state;\n return getItemsCount(state) > 0;\n },\n reshape: function reshape(_ref2) {\n var sources = _ref2.sources;\n return sources;\n }\n }, props), {}, {\n // Since `generateAutocompleteId` triggers a side effect (it increments\n // an internal counter), we don't want to execute it if unnecessary.\n id: (_props$id = props.id) !== null && _props$id !== void 0 ? _props$id : generateAutocompleteId(),\n plugins: plugins,\n // The following props need to be deeply defaulted.\n initialState: _objectSpread({\n activeItemId: null,\n query: '',\n completion: null,\n collections: [],\n isOpen: false,\n status: 'idle',\n context: {}\n }, props.initialState),\n onStateChange: function onStateChange(params) {\n var _props$onStateChange;\n (_props$onStateChange = props.onStateChange) === null || _props$onStateChange === void 0 ? void 0 : _props$onStateChange.call(props, params);\n plugins.forEach(function (x) {\n var _x$onStateChange;\n return (_x$onStateChange = x.onStateChange) === null || _x$onStateChange === void 0 ? void 0 : _x$onStateChange.call(x, params);\n });\n },\n onSubmit: function onSubmit(params) {\n var _props$onSubmit;\n (_props$onSubmit = props.onSubmit) === null || _props$onSubmit === void 0 ? void 0 : _props$onSubmit.call(props, params);\n plugins.forEach(function (x) {\n var _x$onSubmit;\n return (_x$onSubmit = x.onSubmit) === null || _x$onSubmit === void 0 ? void 0 : _x$onSubmit.call(x, params);\n });\n },\n onReset: function onReset(params) {\n var _props$onReset;\n (_props$onReset = props.onReset) === null || _props$onReset === void 0 ? void 0 : _props$onReset.call(props, params);\n plugins.forEach(function (x) {\n var _x$onReset;\n return (_x$onReset = x.onReset) === null || _x$onReset === void 0 ? void 0 : _x$onReset.call(x, params);\n });\n },\n getSources: function getSources(params) {\n return Promise.all([].concat(_toConsumableArray(plugins.map(function (plugin) {\n return plugin.getSources;\n })), [props.getSources]).filter(Boolean).map(function (getSources) {\n return getNormalizedSources(getSources, params);\n })).then(function (nested) {\n return flatten(nested);\n }).then(function (sources) {\n return sources.map(function (source) {\n return _objectSpread(_objectSpread({}, source), {}, {\n onSelect: function onSelect(params) {\n source.onSelect(params);\n pluginSubscribers.forEach(function (x) {\n var _x$onSelect;\n return (_x$onSelect = x.onSelect) === null || _x$onSelect === void 0 ? void 0 : _x$onSelect.call(x, params);\n });\n },\n onActive: function onActive(params) {\n source.onActive(params);\n pluginSubscribers.forEach(function (x) {\n var _x$onActive;\n return (_x$onActive = x.onActive) === null || _x$onActive === void 0 ? void 0 : _x$onActive.call(x, params);\n });\n },\n onResolve: function onResolve(params) {\n source.onResolve(params);\n pluginSubscribers.forEach(function (x) {\n var _x$onResolve;\n return (_x$onResolve = x.onResolve) === null || _x$onResolve === void 0 ? void 0 : _x$onResolve.call(x, params);\n });\n }\n });\n });\n });\n },\n navigator: _objectSpread({\n navigate: function navigate(_ref3) {\n var itemUrl = _ref3.itemUrl;\n environment.location.assign(itemUrl);\n },\n navigateNewTab: function navigateNewTab(_ref4) {\n var itemUrl = _ref4.itemUrl;\n var windowReference = environment.open(itemUrl, '_blank', 'noopener');\n windowReference === null || windowReference === void 0 ? void 0 : windowReference.focus();\n },\n navigateNewWindow: function navigateNewWindow(_ref5) {\n var itemUrl = _ref5.itemUrl;\n environment.open(itemUrl, '_blank', 'noopener');\n }\n }, props.navigator)\n });\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { flatten } from '@algolia/autocomplete-shared';\nexport function reshape(_ref) {\n var collections = _ref.collections,\n props = _ref.props,\n state = _ref.state;\n // Sources are grouped by `sourceId` to conveniently pick them via destructuring.\n // Example: `const { recentSearchesPlugin } = sourcesBySourceId`\n var originalSourcesBySourceId = collections.reduce(function (acc, collection) {\n return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, collection.source.sourceId, _objectSpread(_objectSpread({}, collection.source), {}, {\n getItems: function getItems() {\n // We provide the resolved items from the collection to the `reshape` prop.\n return flatten(collection.items);\n }\n })));\n }, {});\n var _props$plugins$reduce = props.plugins.reduce(function (acc, plugin) {\n if (plugin.reshape) {\n return plugin.reshape(acc);\n }\n return acc;\n }, {\n sourcesBySourceId: originalSourcesBySourceId,\n state: state\n }),\n sourcesBySourceId = _props$plugins$reduce.sourcesBySourceId;\n var reshapeSources = props.reshape({\n sourcesBySourceId: sourcesBySourceId,\n sources: Object.values(sourcesBySourceId),\n state: state\n });\n\n // We reconstruct the collections with the items modified by the `reshape` prop.\n return flatten(reshapeSources).filter(Boolean).map(function (source) {\n return {\n source: source,\n items: source.getItems()\n };\n });\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nimport { decycle, flatten, invariant } from '@algolia/autocomplete-shared';\nimport { mapToAlgoliaResponse } from './utils';\nfunction isDescription(item) {\n return Boolean(item.execute);\n}\nfunction isRequesterDescription(description) {\n return Boolean(description === null || description === void 0 ? void 0 : description.execute);\n}\nexport function preResolve(itemsOrDescription, sourceId, state) {\n if (isRequesterDescription(itemsOrDescription)) {\n var contextParameters = itemsOrDescription.requesterId === 'algolia' ? Object.assign.apply(Object, [{}].concat(_toConsumableArray(Object.keys(state.context).map(function (key) {\n var _state$context$key;\n return (_state$context$key = state.context[key]) === null || _state$context$key === void 0 ? void 0 : _state$context$key.__algoliaSearchParameters;\n })))) : {};\n return _objectSpread(_objectSpread({}, itemsOrDescription), {}, {\n requests: itemsOrDescription.queries.map(function (query) {\n return {\n query: itemsOrDescription.requesterId === 'algolia' ? _objectSpread(_objectSpread({}, query), {}, {\n params: _objectSpread(_objectSpread({}, contextParameters), query.params)\n }) : query,\n sourceId: sourceId,\n transformResponse: itemsOrDescription.transformResponse\n };\n })\n });\n }\n return {\n items: itemsOrDescription,\n sourceId: sourceId\n };\n}\nexport function resolve(items) {\n var packed = items.reduce(function (acc, current) {\n if (!isDescription(current)) {\n acc.push(current);\n return acc;\n }\n var searchClient = current.searchClient,\n execute = current.execute,\n requesterId = current.requesterId,\n requests = current.requests;\n var container = acc.find(function (item) {\n return isDescription(current) && isDescription(item) && item.searchClient === searchClient && Boolean(requesterId) && item.requesterId === requesterId;\n });\n if (container) {\n var _container$items;\n (_container$items = container.items).push.apply(_container$items, _toConsumableArray(requests));\n } else {\n var request = {\n execute: execute,\n requesterId: requesterId,\n items: requests,\n searchClient: searchClient\n };\n acc.push(request);\n }\n return acc;\n }, []);\n var values = packed.map(function (maybeDescription) {\n if (!isDescription(maybeDescription)) {\n return Promise.resolve(maybeDescription);\n }\n var _ref = maybeDescription,\n execute = _ref.execute,\n items = _ref.items,\n searchClient = _ref.searchClient;\n return execute({\n searchClient: searchClient,\n requests: items\n });\n });\n return Promise.all(values).then(function (responses) {\n return flatten(responses);\n });\n}\nexport function postResolve(responses, sources, store) {\n return sources.map(function (source) {\n var matches = responses.filter(function (response) {\n return response.sourceId === source.sourceId;\n });\n var results = matches.map(function (_ref2) {\n var items = _ref2.items;\n return items;\n });\n var transform = matches[0].transformResponse;\n var items = transform ? transform(mapToAlgoliaResponse(results)) : results;\n source.onResolve({\n source: source,\n results: results,\n items: items,\n state: store.getState()\n });\n invariant(Array.isArray(items), function () {\n return \"The `getItems` function from source \\\"\".concat(source.sourceId, \"\\\" must return an array of items but returned type \").concat(JSON.stringify(_typeof(items)), \":\\n\\n\").concat(JSON.stringify(decycle(items), null, 2), \".\\n\\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems\");\n });\n invariant(items.every(Boolean), \"The `getItems` function from source \\\"\".concat(source.sourceId, \"\\\" must return an array of items but returned \").concat(JSON.stringify(undefined), \".\\n\\nDid you forget to return items?\\n\\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/core-concepts/sources/#param-getitems\"));\n return {\n source: source,\n items: items\n };\n });\n}","function createInternalCancelablePromise(promise, initialState) {\n var state = initialState;\n return {\n then: function then(onfulfilled, onrejected) {\n return createInternalCancelablePromise(promise.then(createCallback(onfulfilled, state, promise), createCallback(onrejected, state, promise)), state);\n },\n catch: function _catch(onrejected) {\n return createInternalCancelablePromise(promise.catch(createCallback(onrejected, state, promise)), state);\n },\n finally: function _finally(onfinally) {\n if (onfinally) {\n state.onCancelList.push(onfinally);\n }\n return createInternalCancelablePromise(promise.finally(createCallback(onfinally && function () {\n state.onCancelList = [];\n return onfinally();\n }, state, promise)), state);\n },\n cancel: function cancel() {\n state.isCanceled = true;\n var callbacks = state.onCancelList;\n state.onCancelList = [];\n callbacks.forEach(function (callback) {\n callback();\n });\n },\n isCanceled: function isCanceled() {\n return state.isCanceled === true;\n }\n };\n}\nexport function createCancelablePromise(executor) {\n return createInternalCancelablePromise(new Promise(function (resolve, reject) {\n return executor(resolve, reject);\n }), {\n isCanceled: false,\n onCancelList: []\n });\n}\ncreateCancelablePromise.resolve = function (value) {\n return cancelable(Promise.resolve(value));\n};\ncreateCancelablePromise.reject = function (reason) {\n return cancelable(Promise.reject(reason));\n};\nexport function cancelable(promise) {\n return createInternalCancelablePromise(promise, {\n isCanceled: false,\n onCancelList: []\n });\n}\nfunction createCallback(onResult, state, fallback) {\n if (!onResult) {\n return fallback;\n }\n return function callback(arg) {\n if (state.isCanceled) {\n return arg;\n }\n return onResult(arg);\n };\n}","// We don't have access to the autocomplete source when we call `onKeyDown`\n// or `onClick` because those are native browser events.\n// However, we can get the source from the suggestion index.\nfunction getCollectionFromActiveItemId(state) {\n // Given 3 sources with respectively 1, 2 and 3 suggestions: [1, 2, 3]\n // We want to get the accumulated counts:\n // [1, 1 + 2, 1 + 2 + 3] = [1, 3, 3 + 3] = [1, 3, 6]\n var accumulatedCollectionsCount = state.collections.map(function (collections) {\n return collections.items.length;\n }).reduce(function (acc, collectionsCount, index) {\n var previousValue = acc[index - 1] || 0;\n var nextValue = previousValue + collectionsCount;\n acc.push(nextValue);\n return acc;\n }, []);\n\n // Based on the accumulated counts, we can infer the index of the suggestion.\n var collectionIndex = accumulatedCollectionsCount.reduce(function (acc, current) {\n if (current <= state.activeItemId) {\n return acc + 1;\n }\n return acc;\n }, 0);\n return state.collections[collectionIndex];\n}\n\n/**\n * Gets the highlighted index relative to a suggestion object (not the absolute\n * highlighted index).\n *\n * Example:\n * [['a', 'b'], ['c', 'd', 'e'], ['f']]\n * ↑\n * (absolute: 3, relative: 1)\n */\nfunction getRelativeActiveItemId(_ref) {\n var state = _ref.state,\n collection = _ref.collection;\n var isOffsetFound = false;\n var counter = 0;\n var previousItemsOffset = 0;\n while (isOffsetFound === false) {\n var currentCollection = state.collections[counter];\n if (currentCollection === collection) {\n isOffsetFound = true;\n break;\n }\n previousItemsOffset += currentCollection.items.length;\n counter++;\n }\n return state.activeItemId - previousItemsOffset;\n}\nexport function getActiveItem(state) {\n var collection = getCollectionFromActiveItemId(state);\n if (!collection) {\n return null;\n }\n var item = collection.items[getRelativeActiveItemId({\n state: state,\n collection: collection\n })];\n var source = collection.source;\n var itemInputValue = source.getItemInputValue({\n item: item,\n state: state\n });\n var itemUrl = source.getItemUrl({\n item: item,\n state: state\n });\n return {\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n source: source\n };\n}","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); }\nvar _excluded = [\"event\", \"nextState\", \"props\", \"query\", \"refresh\", \"store\"];\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { reshape } from './reshape';\nimport { preResolve, resolve, postResolve } from './resolve';\nimport { cancelable, createConcurrentSafePromise, getActiveItem } from './utils';\nvar lastStalledId = null;\nvar runConcurrentSafePromise = createConcurrentSafePromise();\nexport function onInput(_ref) {\n var event = _ref.event,\n _ref$nextState = _ref.nextState,\n nextState = _ref$nextState === void 0 ? {} : _ref$nextState,\n props = _ref.props,\n query = _ref.query,\n refresh = _ref.refresh,\n store = _ref.store,\n setters = _objectWithoutProperties(_ref, _excluded);\n if (lastStalledId) {\n props.environment.clearTimeout(lastStalledId);\n }\n var setCollections = setters.setCollections,\n setIsOpen = setters.setIsOpen,\n setQuery = setters.setQuery,\n setActiveItemId = setters.setActiveItemId,\n setStatus = setters.setStatus,\n setContext = setters.setContext;\n setQuery(query);\n setActiveItemId(props.defaultActiveItemId);\n if (!query && props.openOnFocus === false) {\n var _nextState$isOpen;\n var collections = store.getState().collections.map(function (collection) {\n return _objectSpread(_objectSpread({}, collection), {}, {\n items: []\n });\n });\n setStatus('idle');\n setCollections(collections);\n setIsOpen((_nextState$isOpen = nextState.isOpen) !== null && _nextState$isOpen !== void 0 ? _nextState$isOpen : props.shouldPanelOpen({\n state: store.getState()\n }));\n\n // We make sure to update the latest resolved value of the tracked\n // promises to keep late resolving promises from \"cancelling\" the state\n // updates performed in this code path.\n // We chain with a void promise to respect `onInput`'s expected return type.\n var _request = cancelable(runConcurrentSafePromise(collections).then(function () {\n return Promise.resolve();\n }));\n return store.pendingRequests.add(_request);\n }\n setStatus('loading');\n lastStalledId = props.environment.setTimeout(function () {\n setStatus('stalled');\n }, props.stallThreshold);\n\n // We track the entire promise chain triggered by `onInput` before mutating\n // the Autocomplete state to make sure that any state manipulation is based on\n // fresh data regardless of when promises individually resolve.\n // We don't track nested promises and only rely on the full chain resolution,\n // meaning we should only ever manipulate the state once this concurrent-safe\n // promise is resolved.\n var request = cancelable(runConcurrentSafePromise(props.getSources(_objectSpread({\n query: query,\n refresh: refresh,\n state: store.getState()\n }, setters)).then(function (sources) {\n return Promise.all(sources.map(function (source) {\n return Promise.resolve(source.getItems(_objectSpread({\n query: query,\n refresh: refresh,\n state: store.getState()\n }, setters))).then(function (itemsOrDescription) {\n return preResolve(itemsOrDescription, source.sourceId, store.getState());\n });\n })).then(resolve).then(function (responses) {\n var __automaticInsights = responses.some(function (_ref2) {\n var items = _ref2.items;\n return isSearchResponseWithAutomaticInsightsFlag(items);\n });\n\n // No need to pollute the context if `__automaticInsights=false`\n if (__automaticInsights) {\n var _store$getState$conte;\n setContext({\n algoliaInsightsPlugin: _objectSpread(_objectSpread({}, ((_store$getState$conte = store.getState().context) === null || _store$getState$conte === void 0 ? void 0 : _store$getState$conte.algoliaInsightsPlugin) || {}), {}, {\n __automaticInsights: __automaticInsights\n })\n });\n }\n return postResolve(responses, sources, store);\n }).then(function (collections) {\n return reshape({\n collections: collections,\n props: props,\n state: store.getState()\n });\n });\n }))).then(function (collections) {\n var _nextState$isOpen2;\n // Parameters passed to `onInput` could be stale when the following code\n // executes, because `onInput` calls may not resolve in order.\n // If it becomes a problem we'll need to save the last passed parameters.\n // See: https://codesandbox.io/s/agitated-cookies-y290z\n\n setStatus('idle');\n setCollections(collections);\n var isPanelOpen = props.shouldPanelOpen({\n state: store.getState()\n });\n setIsOpen((_nextState$isOpen2 = nextState.isOpen) !== null && _nextState$isOpen2 !== void 0 ? _nextState$isOpen2 : props.openOnFocus && !query && isPanelOpen || isPanelOpen);\n var highlightedItem = getActiveItem(store.getState());\n if (store.getState().activeItemId !== null && highlightedItem) {\n var item = highlightedItem.item,\n itemInputValue = highlightedItem.itemInputValue,\n itemUrl = highlightedItem.itemUrl,\n source = highlightedItem.source;\n source.onActive(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n }\n }).finally(function () {\n setStatus('idle');\n if (lastStalledId) {\n props.environment.clearTimeout(lastStalledId);\n }\n });\n return store.pendingRequests.add(request);\n}\nfunction isSearchResponseWithAutomaticInsightsFlag(items) {\n return !Array.isArray(items) && Boolean(items === null || items === void 0 ? void 0 : items._automaticInsights);\n}","/**\n * Creates a runner that executes promises in a concurrent-safe way.\n *\n * This is useful to prevent older promises to resolve after a newer promise,\n * otherwise resulting in stale resolved values.\n */\nexport function createConcurrentSafePromise() {\n var basePromiseId = -1;\n var latestResolvedId = -1;\n var latestResolvedValue = undefined;\n return function runConcurrentSafePromise(promise) {\n basePromiseId++;\n var currentPromiseId = basePromiseId;\n return Promise.resolve(promise).then(function (x) {\n // The promise might take too long to resolve and get outdated. This would\n // result in resolving stale values.\n // When this happens, we ignore the promise value and return the one\n // coming from the latest resolved value.\n //\n // +----------------------------------+\n // | 100ms |\n // | run(1) +---> R1 |\n // | 300ms |\n // | run(2) +-------------> R2 (SKIP) |\n // | 200ms |\n // | run(3) +--------> R3 |\n // +----------------------------------+\n if (latestResolvedValue && currentPromiseId < latestResolvedId) {\n return latestResolvedValue;\n }\n latestResolvedId = currentPromiseId;\n latestResolvedValue = x;\n return x;\n });\n };\n}","export function mapToAlgoliaResponse(rawResults) {\n return {\n results: rawResults,\n hits: rawResults.map(function (result) {\n return result.hits;\n }).filter(Boolean),\n facetHits: rawResults.map(function (result) {\n var _facetHits;\n return (_facetHits = result.facetHits) === null || _facetHits === void 0 ? void 0 : _facetHits.map(function (facetHit) {\n // Bring support for the highlighting components.\n return {\n label: facetHit.value,\n count: facetHit.count,\n _highlightResult: {\n label: {\n value: facetHit.highlighted\n }\n }\n };\n });\n }).filter(Boolean)\n };\n}","/**\n * Returns a full element id for an autocomplete element.\n *\n * @param autocompleteInstanceId The id of the autocomplete instance\n * @param elementId The specific element id\n * @param source The source of the element, when it needs to be scoped\n */\nexport function getAutocompleteElementId(autocompleteInstanceId, elementId, source) {\n return [autocompleteInstanceId, source === null || source === void 0 ? void 0 : source.sourceId, elementId].filter(Boolean).join('-').replace(/\\s/g, '');\n}","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); }\nvar _excluded = [\"event\", \"props\", \"refresh\", \"store\"];\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { onInput } from './onInput';\nimport { getActiveItem, getAutocompleteElementId } from './utils';\nexport function onKeyDown(_ref) {\n var event = _ref.event,\n props = _ref.props,\n refresh = _ref.refresh,\n store = _ref.store,\n setters = _objectWithoutProperties(_ref, _excluded);\n if (event.key === 'ArrowUp' || event.key === 'ArrowDown') {\n // eslint-disable-next-line no-inner-declarations\n var triggerScrollIntoView = function triggerScrollIntoView() {\n var highlightedItem = getActiveItem(store.getState());\n var nodeItem = props.environment.document.getElementById(getAutocompleteElementId(props.id, \"item-\".concat(store.getState().activeItemId), highlightedItem === null || highlightedItem === void 0 ? void 0 : highlightedItem.source));\n if (nodeItem) {\n if (nodeItem.scrollIntoViewIfNeeded) {\n nodeItem.scrollIntoViewIfNeeded(false);\n } else {\n nodeItem.scrollIntoView(false);\n }\n }\n }; // eslint-disable-next-line no-inner-declarations\n var triggerOnActive = function triggerOnActive() {\n var highlightedItem = getActiveItem(store.getState());\n if (store.getState().activeItemId !== null && highlightedItem) {\n var item = highlightedItem.item,\n itemInputValue = highlightedItem.itemInputValue,\n itemUrl = highlightedItem.itemUrl,\n source = highlightedItem.source;\n source.onActive(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n }\n }; // Default browser behavior changes the caret placement on ArrowUp and\n // ArrowDown.\n event.preventDefault();\n\n // When re-opening the panel, we need to split the logic to keep the actions\n // synchronized as `onInput` returns a promise.\n if (store.getState().isOpen === false && (props.openOnFocus || Boolean(store.getState().query))) {\n onInput(_objectSpread({\n event: event,\n props: props,\n query: store.getState().query,\n refresh: refresh,\n store: store\n }, setters)).then(function () {\n store.dispatch(event.key, {\n nextActiveItemId: props.defaultActiveItemId\n });\n triggerOnActive();\n // Since we rely on the DOM, we need to wait for all the micro tasks to\n // finish (which include re-opening the panel) to make sure all the\n // elements are available.\n setTimeout(triggerScrollIntoView, 0);\n });\n } else {\n store.dispatch(event.key, {});\n triggerOnActive();\n triggerScrollIntoView();\n }\n } else if (event.key === 'Escape') {\n // This prevents the default browser behavior on `input[type=\"search\"]`\n // from removing the query right away because we first want to close the\n // panel.\n event.preventDefault();\n store.dispatch(event.key, null);\n\n // Hitting the `Escape` key signals the end of a user interaction with the\n // autocomplete. At this point, we should ignore any requests that are still\n // pending and could reopen the panel once they resolve, because that would\n // result in an unsolicited UI behavior.\n store.pendingRequests.cancelAll();\n } else if (event.key === 'Tab') {\n store.dispatch('blur', null);\n\n // Hitting the `Tab` key signals the end of a user interaction with the\n // autocomplete. At this point, we should ignore any requests that are still\n // pending and could reopen the panel once they resolve, because that would\n // result in an unsolicited UI behavior.\n store.pendingRequests.cancelAll();\n } else if (event.key === 'Enter') {\n // No active item, so we let the browser handle the native `onSubmit` form\n // event.\n if (store.getState().activeItemId === null || store.getState().collections.every(function (collection) {\n return collection.items.length === 0;\n })) {\n // If requests are still pending when the panel closes, they could reopen\n // the panel once they resolve.\n // We want to prevent any subsequent query from reopening the panel\n // because it would result in an unsolicited UI behavior.\n if (!props.debug) {\n store.pendingRequests.cancelAll();\n }\n return;\n }\n\n // This prevents the `onSubmit` event to be sent because an item is\n // highlighted.\n event.preventDefault();\n var _ref2 = getActiveItem(store.getState()),\n item = _ref2.item,\n itemInputValue = _ref2.itemInputValue,\n itemUrl = _ref2.itemUrl,\n source = _ref2.source;\n if (event.metaKey || event.ctrlKey) {\n if (itemUrl !== undefined) {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n props.navigator.navigateNewTab({\n itemUrl: itemUrl,\n item: item,\n state: store.getState()\n });\n }\n } else if (event.shiftKey) {\n if (itemUrl !== undefined) {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n props.navigator.navigateNewWindow({\n itemUrl: itemUrl,\n item: item,\n state: store.getState()\n });\n }\n } else if (event.altKey) {\n // Keep native browser behavior\n } else {\n if (itemUrl !== undefined) {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n props.navigator.navigate({\n itemUrl: itemUrl,\n item: item,\n state: store.getState()\n });\n return;\n }\n onInput(_objectSpread({\n event: event,\n nextState: {\n isOpen: false\n },\n props: props,\n query: itemInputValue,\n refresh: refresh,\n store: store\n }, setters)).then(function () {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n });\n }\n }\n}","var regex = /((gt|sm)-|galaxy nexus)|samsung[- ]|samsungbrowser/i;\nexport function isSamsung(userAgent) {\n return Boolean(userAgent && userAgent.match(regex));\n}","export function getNativeEvent(event) {\n return event.nativeEvent || event;\n}","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); }\nvar _excluded = [\"props\", \"refresh\", \"store\"],\n _excluded2 = [\"inputElement\", \"formElement\", \"panelElement\"],\n _excluded3 = [\"inputElement\"],\n _excluded4 = [\"inputElement\", \"maxLength\"],\n _excluded5 = [\"source\"],\n _excluded6 = [\"item\", \"source\"];\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { noop } from '@algolia/autocomplete-shared';\nimport { onInput } from './onInput';\nimport { onKeyDown as _onKeyDown } from './onKeyDown';\nimport { getActiveItem, getAutocompleteElementId, isOrContainsNode, isSamsung, getNativeEvent } from './utils';\nexport function getPropGetters(_ref) {\n var props = _ref.props,\n refresh = _ref.refresh,\n store = _ref.store,\n setters = _objectWithoutProperties(_ref, _excluded);\n var getEnvironmentProps = function getEnvironmentProps(providedProps) {\n var inputElement = providedProps.inputElement,\n formElement = providedProps.formElement,\n panelElement = providedProps.panelElement,\n rest = _objectWithoutProperties(providedProps, _excluded2);\n function onMouseDownOrTouchStart(event) {\n // The `onTouchStart`/`onMouseDown` events shouldn't trigger the `blur`\n // handler when it's not an interaction with Autocomplete.\n // We detect it with the following heuristics:\n // - the panel is closed AND there are no pending requests\n // (no interaction with the autocomplete, no future state updates)\n // - OR the touched target is the input element (should open the panel)\n var isAutocompleteInteraction = store.getState().isOpen || !store.pendingRequests.isEmpty();\n if (!isAutocompleteInteraction || event.target === inputElement) {\n return;\n }\n\n // @TODO: support cases where there are multiple Autocomplete instances.\n // Right now, a second instance makes this computation return false.\n var isTargetWithinAutocomplete = [formElement, panelElement].some(function (contextNode) {\n return isOrContainsNode(contextNode, event.target);\n });\n if (isTargetWithinAutocomplete === false) {\n store.dispatch('blur', null);\n\n // If requests are still pending when the user closes the panel, they\n // could reopen the panel once they resolve.\n // We want to prevent any subsequent query from reopening the panel\n // because it would result in an unsolicited UI behavior.\n if (!props.debug) {\n store.pendingRequests.cancelAll();\n }\n }\n }\n return _objectSpread({\n // We do not rely on the native `blur` event of the input to close the\n // panel, but rather on a custom `touchstart`/`mousedown` event outside\n // of the autocomplete elements.\n // This ensures we don't mistakenly interpret interactions within the\n // autocomplete (but outside of the input) as a signal to close the panel.\n // For example, clicking reset button causes an input blur, but if\n // `openOnFocus=true`, it shouldn't close the panel.\n // On touch devices, scrolling results (`touchmove`) causes an input blur\n // but shouldn't close the panel.\n onTouchStart: onMouseDownOrTouchStart,\n onMouseDown: onMouseDownOrTouchStart,\n // When scrolling on touch devices (mobiles, tablets, etc.), we want to\n // mimic the native platform behavior where the input is blurred to\n // hide the virtual keyboard. This gives more vertical space to\n // discover all the suggestions showing up in the panel.\n onTouchMove: function onTouchMove(event) {\n if (store.getState().isOpen === false || inputElement !== props.environment.document.activeElement || event.target === inputElement) {\n return;\n }\n inputElement.blur();\n }\n }, rest);\n };\n var getRootProps = function getRootProps(rest) {\n return _objectSpread({\n role: 'combobox',\n 'aria-expanded': store.getState().isOpen,\n 'aria-haspopup': 'listbox',\n 'aria-owns': store.getState().isOpen ? store.getState().collections.map(function (_ref2) {\n var source = _ref2.source;\n return getAutocompleteElementId(props.id, 'list', source);\n }).join(' ') : undefined,\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label')\n }, rest);\n };\n var getFormProps = function getFormProps(providedProps) {\n var inputElement = providedProps.inputElement,\n rest = _objectWithoutProperties(providedProps, _excluded3);\n return _objectSpread({\n action: '',\n noValidate: true,\n role: 'search',\n onSubmit: function onSubmit(event) {\n var _providedProps$inputE;\n event.preventDefault();\n props.onSubmit(_objectSpread({\n event: event,\n refresh: refresh,\n state: store.getState()\n }, setters));\n store.dispatch('submit', null);\n (_providedProps$inputE = providedProps.inputElement) === null || _providedProps$inputE === void 0 ? void 0 : _providedProps$inputE.blur();\n },\n onReset: function onReset(event) {\n var _providedProps$inputE2;\n event.preventDefault();\n props.onReset(_objectSpread({\n event: event,\n refresh: refresh,\n state: store.getState()\n }, setters));\n store.dispatch('reset', null);\n (_providedProps$inputE2 = providedProps.inputElement) === null || _providedProps$inputE2 === void 0 ? void 0 : _providedProps$inputE2.focus();\n }\n }, rest);\n };\n var getInputProps = function getInputProps(providedProps) {\n var _props$environment$na;\n function onFocus(event) {\n // We want to trigger a query when `openOnFocus` is true\n // because the panel should open with the current query.\n if (props.openOnFocus || Boolean(store.getState().query)) {\n onInput(_objectSpread({\n event: event,\n props: props,\n query: store.getState().completion || store.getState().query,\n refresh: refresh,\n store: store\n }, setters));\n }\n store.dispatch('focus', null);\n }\n var _ref3 = providedProps || {},\n inputElement = _ref3.inputElement,\n _ref3$maxLength = _ref3.maxLength,\n maxLength = _ref3$maxLength === void 0 ? 512 : _ref3$maxLength,\n rest = _objectWithoutProperties(_ref3, _excluded4);\n var activeItem = getActiveItem(store.getState());\n var userAgent = ((_props$environment$na = props.environment.navigator) === null || _props$environment$na === void 0 ? void 0 : _props$environment$na.userAgent) || '';\n var shouldFallbackKeyHint = isSamsung(userAgent);\n var enterKeyHint = props.enterKeyHint || (activeItem !== null && activeItem !== void 0 && activeItem.itemUrl && !shouldFallbackKeyHint ? 'go' : 'search');\n return _objectSpread({\n 'aria-autocomplete': 'both',\n 'aria-activedescendant': store.getState().isOpen && store.getState().activeItemId !== null ? getAutocompleteElementId(props.id, \"item-\".concat(store.getState().activeItemId), activeItem === null || activeItem === void 0 ? void 0 : activeItem.source) : undefined,\n 'aria-controls': store.getState().isOpen ? store.getState().collections.map(function (_ref4) {\n var source = _ref4.source;\n return getAutocompleteElementId(props.id, 'list', source);\n }).join(' ') : undefined,\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n value: store.getState().completion || store.getState().query,\n id: getAutocompleteElementId(props.id, 'input'),\n autoComplete: 'off',\n autoCorrect: 'off',\n autoCapitalize: 'off',\n enterKeyHint: enterKeyHint,\n spellCheck: 'false',\n autoFocus: props.autoFocus,\n placeholder: props.placeholder,\n maxLength: maxLength,\n type: 'search',\n onChange: function onChange(event) {\n var value = event.currentTarget.value;\n if (props.ignoreCompositionEvents && getNativeEvent(event).isComposing) {\n setters.setQuery(value);\n return;\n }\n onInput(_objectSpread({\n event: event,\n props: props,\n query: value.slice(0, maxLength),\n refresh: refresh,\n store: store\n }, setters));\n },\n onCompositionEnd: function onCompositionEnd(event) {\n onInput(_objectSpread({\n event: event,\n props: props,\n query: event.currentTarget.value.slice(0, maxLength),\n refresh: refresh,\n store: store\n }, setters));\n },\n onKeyDown: function onKeyDown(event) {\n if (getNativeEvent(event).isComposing) {\n return;\n }\n _onKeyDown(_objectSpread({\n event: event,\n props: props,\n refresh: refresh,\n store: store\n }, setters));\n },\n onFocus: onFocus,\n // We don't rely on the `blur` event.\n // See explanation in `onTouchStart`/`onMouseDown`.\n // @MAJOR See if we need to keep this handler.\n onBlur: noop,\n onClick: function onClick(event) {\n // When the panel is closed and you click on the input while\n // the input is focused, the `onFocus` event is not triggered\n // (default browser behavior).\n // In an autocomplete context, it makes sense to open the panel in this\n // case.\n // We mimic this event by catching the `onClick` event which\n // triggers the `onFocus` for the panel to open.\n if (providedProps.inputElement === props.environment.document.activeElement && !store.getState().isOpen) {\n onFocus(event);\n }\n }\n }, rest);\n };\n var getLabelProps = function getLabelProps(rest) {\n return _objectSpread({\n htmlFor: getAutocompleteElementId(props.id, 'input'),\n id: getAutocompleteElementId(props.id, 'label')\n }, rest);\n };\n var getListProps = function getListProps(providedProps) {\n var _ref5 = providedProps || {},\n source = _ref5.source,\n rest = _objectWithoutProperties(_ref5, _excluded5);\n return _objectSpread({\n role: 'listbox',\n 'aria-labelledby': getAutocompleteElementId(props.id, 'label'),\n id: getAutocompleteElementId(props.id, 'list', source)\n }, rest);\n };\n var getPanelProps = function getPanelProps(rest) {\n return _objectSpread({\n onMouseDown: function onMouseDown(event) {\n // Prevents the `activeElement` from being changed to the panel so\n // that the blur event is not triggered, otherwise it closes the\n // panel.\n event.preventDefault();\n },\n onMouseLeave: function onMouseLeave() {\n store.dispatch('mouseleave', null);\n }\n }, rest);\n };\n var getItemProps = function getItemProps(providedProps) {\n var item = providedProps.item,\n source = providedProps.source,\n rest = _objectWithoutProperties(providedProps, _excluded6);\n return _objectSpread({\n id: getAutocompleteElementId(props.id, \"item-\".concat(item.__autocomplete_id), source),\n role: 'option',\n 'aria-selected': store.getState().activeItemId === item.__autocomplete_id,\n onMouseMove: function onMouseMove(event) {\n if (item.__autocomplete_id === store.getState().activeItemId) {\n return;\n }\n store.dispatch('mousemove', item.__autocomplete_id);\n var activeItem = getActiveItem(store.getState());\n if (store.getState().activeItemId !== null && activeItem) {\n var _item = activeItem.item,\n itemInputValue = activeItem.itemInputValue,\n itemUrl = activeItem.itemUrl,\n _source = activeItem.source;\n _source.onActive(_objectSpread({\n event: event,\n item: _item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: _source,\n state: store.getState()\n }, setters));\n }\n },\n onMouseDown: function onMouseDown(event) {\n // Prevents the `activeElement` from being changed to the item so it\n // can remain with the current `activeElement`.\n event.preventDefault();\n },\n onClick: function onClick(event) {\n var itemInputValue = source.getItemInputValue({\n item: item,\n state: store.getState()\n });\n var itemUrl = source.getItemUrl({\n item: item,\n state: store.getState()\n });\n\n // If `getItemUrl` is provided, it means that the suggestion\n // is a link, not plain text that aims at updating the query.\n // We can therefore skip the state change because it will update\n // the `activeItemId`, resulting in a UI flash, especially\n // noticeable on mobile.\n var runPreCommand = itemUrl ? Promise.resolve() : onInput(_objectSpread({\n event: event,\n nextState: {\n isOpen: false\n },\n props: props,\n query: itemInputValue,\n refresh: refresh,\n store: store\n }, setters));\n runPreCommand.then(function () {\n source.onSelect(_objectSpread({\n event: event,\n item: item,\n itemInputValue: itemInputValue,\n itemUrl: itemUrl,\n refresh: refresh,\n source: source,\n state: store.getState()\n }, setters));\n });\n }\n }, rest);\n };\n return {\n getEnvironmentProps: getEnvironmentProps,\n getRootProps: getRootProps,\n getFormProps: getFormProps,\n getLabelProps: getLabelProps,\n getInputProps: getInputProps,\n getPanelProps: getPanelProps,\n getListProps: getListProps,\n getItemProps: getItemProps\n };\n}","export function isOrContainsNode(parent, child) {\n return parent === child || parent.contains(child);\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { userAgents } from '@algolia/autocomplete-shared';\nexport function getMetadata(_ref) {\n var _, _options$__autocomple, _options$__autocomple2, _options$__autocomple3;\n var plugins = _ref.plugins,\n options = _ref.options;\n var optionsKey = (_ = (((_options$__autocomple = options.__autocomplete_metadata) === null || _options$__autocomple === void 0 ? void 0 : _options$__autocomple.userAgents) || [])[0]) === null || _ === void 0 ? void 0 : _.segment;\n var extraOptions = optionsKey ? _defineProperty({}, optionsKey, Object.keys(((_options$__autocomple2 = options.__autocomplete_metadata) === null || _options$__autocomple2 === void 0 ? void 0 : _options$__autocomple2.options) || {})) : {};\n return {\n plugins: plugins.map(function (plugin) {\n return {\n name: plugin.name,\n options: Object.keys(plugin.__autocomplete_pluginOptions || [])\n };\n }),\n options: _objectSpread({\n 'autocomplete-core': Object.keys(options)\n }, extraOptions),\n ua: userAgents.concat(((_options$__autocomple3 = options.__autocomplete_metadata) === null || _options$__autocomple3 === void 0 ? void 0 : _options$__autocomple3.userAgents) || [])\n };\n}\nexport function injectMetadata(_ref3) {\n var _environment$navigato, _environment$navigato2;\n var metadata = _ref3.metadata,\n environment = _ref3.environment;\n var isMetadataEnabled = (_environment$navigato = environment.navigator) === null || _environment$navigato === void 0 ? void 0 : (_environment$navigato2 = _environment$navigato.userAgent) === null || _environment$navigato2 === void 0 ? void 0 : _environment$navigato2.includes('Algolia Crawler');\n if (isMetadataEnabled) {\n var metadataContainer = environment.document.createElement('meta');\n var headRef = environment.document.querySelector('head');\n metadataContainer.name = 'algolia:metadata';\n setTimeout(function () {\n metadataContainer.content = JSON.stringify(metadata);\n headRef.appendChild(metadataContainer);\n }, 0);\n }\n}","import { getActiveItem } from './utils';\nexport function getCompletion(_ref) {\n var _getActiveItem;\n var state = _ref.state;\n if (state.isOpen === false || state.activeItemId === null) {\n return null;\n }\n return ((_getActiveItem = getActiveItem(state)) === null || _getActiveItem === void 0 ? void 0 : _getActiveItem.itemInputValue) || null;\n}","/**\n * Returns the next active item ID from the current state.\n *\n * We allow circular keyboard navigation from the base index.\n * The base index can either be `null` (nothing is highlighted) or `0`\n * (the first item is highlighted).\n * The base index is allowed to get assigned `null` only if\n * `props.defaultActiveItemId` is `null`. This pattern allows to \"stop\"\n * by the actual query before navigating to other suggestions as seen on\n * Google or Amazon.\n *\n * @param moveAmount The offset to increment (or decrement) the last index\n * @param baseIndex The current index to compute the next index from\n * @param itemCount The number of items\n * @param defaultActiveItemId The default active index to fallback to\n */\nexport function getNextActiveItemId(moveAmount, baseIndex, itemCount, defaultActiveItemId) {\n if (!itemCount) {\n return null;\n }\n if (moveAmount < 0 && (baseIndex === null || defaultActiveItemId !== null && baseIndex === 0)) {\n return itemCount + moveAmount;\n }\n var numericIndex = (baseIndex === null ? -1 : baseIndex) + moveAmount;\n if (numericIndex <= -1 || numericIndex >= itemCount) {\n return defaultActiveItemId === null ? null : 0;\n }\n return numericIndex;\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { getItemsCount, invariant } from '@algolia/autocomplete-shared';\nimport { getCompletion } from './getCompletion';\nimport { getNextActiveItemId } from './utils';\nexport var stateReducer = function stateReducer(state, action) {\n switch (action.type) {\n case 'setActiveItemId':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.payload\n });\n }\n case 'setQuery':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n query: action.payload,\n completion: null\n });\n }\n case 'setCollections':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n collections: action.payload\n });\n }\n case 'setIsOpen':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n isOpen: action.payload\n });\n }\n case 'setStatus':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n status: action.payload\n });\n }\n case 'setContext':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n context: _objectSpread(_objectSpread({}, state.context), action.payload)\n });\n }\n case 'ArrowDown':\n {\n var nextState = _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.payload.hasOwnProperty('nextActiveItemId') ? action.payload.nextActiveItemId : getNextActiveItemId(1, state.activeItemId, getItemsCount(state), action.props.defaultActiveItemId)\n });\n return _objectSpread(_objectSpread({}, nextState), {}, {\n completion: getCompletion({\n state: nextState\n })\n });\n }\n case 'ArrowUp':\n {\n var _nextState = _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: getNextActiveItemId(-1, state.activeItemId, getItemsCount(state), action.props.defaultActiveItemId)\n });\n return _objectSpread(_objectSpread({}, _nextState), {}, {\n completion: getCompletion({\n state: _nextState\n })\n });\n }\n case 'Escape':\n {\n if (state.isOpen) {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: null,\n isOpen: false,\n completion: null\n });\n }\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: null,\n query: '',\n status: 'idle',\n collections: []\n });\n }\n case 'submit':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: null,\n isOpen: false,\n status: 'idle'\n });\n }\n case 'reset':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId:\n // Since we open the panel on reset when openOnFocus=true\n // we need to restore the highlighted index to the defaultActiveItemId. (DocSearch use-case)\n\n // Since we close the panel when openOnFocus=false\n // we lose track of the highlighted index. (Query-suggestions use-case)\n action.props.openOnFocus === true ? action.props.defaultActiveItemId : null,\n status: 'idle',\n completion: null,\n query: ''\n });\n }\n case 'focus':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.props.defaultActiveItemId,\n isOpen: (action.props.openOnFocus || Boolean(state.query)) && action.props.shouldPanelOpen({\n state: state\n })\n });\n }\n case 'blur':\n {\n if (action.props.debug) {\n return state;\n }\n return _objectSpread(_objectSpread({}, state), {}, {\n isOpen: false,\n activeItemId: null\n });\n }\n case 'mousemove':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.payload\n });\n }\n case 'mouseleave':\n {\n return _objectSpread(_objectSpread({}, state), {}, {\n activeItemId: action.props.defaultActiveItemId\n });\n }\n default:\n invariant(false, \"The reducer action \".concat(JSON.stringify(action.type), \" is not supported.\"));\n return state;\n }\n};","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { createAlgoliaInsightsPlugin } from '@algolia/autocomplete-plugin-algolia-insights';\nimport { checkOptions } from './checkOptions';\nimport { createStore } from './createStore';\nimport { getAutocompleteSetters } from './getAutocompleteSetters';\nimport { getDefaultProps } from './getDefaultProps';\nimport { getPropGetters } from './getPropGetters';\nimport { getMetadata, injectMetadata } from './metadata';\nimport { onInput } from './onInput';\nimport { stateReducer } from './stateReducer';\nexport function createAutocomplete(options) {\n checkOptions(options);\n var subscribers = [];\n var props = getDefaultProps(options, subscribers);\n var store = createStore(stateReducer, props, onStoreStateChange);\n var setters = getAutocompleteSetters({\n store: store\n });\n var propGetters = getPropGetters(_objectSpread({\n props: props,\n refresh: refresh,\n store: store,\n navigator: props.navigator\n }, setters));\n function onStoreStateChange(_ref) {\n var _state$context, _state$context$algoli;\n var prevState = _ref.prevState,\n state = _ref.state;\n props.onStateChange(_objectSpread({\n prevState: prevState,\n state: state,\n refresh: refresh,\n navigator: props.navigator\n }, setters));\n if (!isAlgoliaInsightsPluginEnabled() && (_state$context = state.context) !== null && _state$context !== void 0 && (_state$context$algoli = _state$context.algoliaInsightsPlugin) !== null && _state$context$algoli !== void 0 && _state$context$algoli.__automaticInsights && props.insights !== false) {\n var plugin = createAlgoliaInsightsPlugin({\n __autocomplete_clickAnalytics: false\n });\n props.plugins.push(plugin);\n subscribePlugins([plugin]);\n }\n }\n function refresh() {\n return onInput(_objectSpread({\n event: new Event('input'),\n nextState: {\n isOpen: store.getState().isOpen\n },\n props: props,\n navigator: props.navigator,\n query: store.getState().query,\n refresh: refresh,\n store: store\n }, setters));\n }\n function subscribePlugins(plugins) {\n plugins.forEach(function (plugin) {\n var _plugin$subscribe;\n return (_plugin$subscribe = plugin.subscribe) === null || _plugin$subscribe === void 0 ? void 0 : _plugin$subscribe.call(plugin, _objectSpread(_objectSpread({}, setters), {}, {\n navigator: props.navigator,\n refresh: refresh,\n onSelect: function onSelect(fn) {\n subscribers.push({\n onSelect: fn\n });\n },\n onActive: function onActive(fn) {\n subscribers.push({\n onActive: fn\n });\n },\n onResolve: function onResolve(fn) {\n subscribers.push({\n onResolve: fn\n });\n }\n }));\n });\n }\n function isAlgoliaInsightsPluginEnabled() {\n return props.plugins.some(function (plugin) {\n return plugin.name === 'aa.algoliaInsightsPlugin';\n });\n }\n if (props.insights && !isAlgoliaInsightsPluginEnabled()) {\n var insightsParams = typeof props.insights === 'boolean' ? {} : props.insights;\n props.plugins.push(createAlgoliaInsightsPlugin(insightsParams));\n }\n subscribePlugins(props.plugins);\n injectMetadata({\n metadata: getMetadata({\n plugins: props.plugins,\n options: options\n }),\n environment: props.environment\n });\n return _objectSpread(_objectSpread({\n refresh: refresh,\n navigator: props.navigator\n }, propGetters), setters);\n}","export function createCancelablePromiseList() {\n var list = [];\n return {\n add: function add(cancelablePromise) {\n list.push(cancelablePromise);\n return cancelablePromise.finally(function () {\n list = list.filter(function (item) {\n return item !== cancelablePromise;\n });\n });\n },\n cancelAll: function cancelAll() {\n list.forEach(function (promise) {\n return promise.cancel();\n });\n },\n isEmpty: function isEmpty() {\n return list.length === 0;\n }\n };\n}","var n=function(t,s,r,e){var u;s[0]=0;for(var h=1;h=5&&((e||!n&&5===r)&&(h.push(r,0,e,s),r=6),n&&(h.push(r,n,0,s),r=6)),e=\"\"},a=0;a\"===t?(r=1,e=\"\"):e=t+e[0]:u?t===u?u=\"\":e+=t:'\"'===t||\"'\"===t?u=t:\">\"===t?(p(),r=1):r&&(\"=\"===t?(r=5,s=e,e=\"\"):\"/\"===t&&(r<5||\">\"===n[a][l+1])?(p(),3===r&&(h=h[0]),r=h,(h=h[0]).push(2,0,r),r=0):\" \"===t||\"\\t\"===t||\"\\n\"===t||\"\\r\"===t?(p(),r=2):e+=t),3===r&&\"!--\"===e&&(r=4,h=h[0])}return p(),h}(s)),r),arguments,[])).length>1?r:r[0]}\n","export var SearchIcon = function SearchIcon(_ref) {\n var environment = _ref.environment;\n var element = environment.document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n element.setAttribute('class', 'aa-SubmitIcon');\n element.setAttribute('viewBox', '0 0 24 24');\n element.setAttribute('width', '20');\n element.setAttribute('height', '20');\n element.setAttribute('fill', 'currentColor');\n var path = environment.document.createElementNS('http://www.w3.org/2000/svg', 'path');\n path.setAttribute('d', 'M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z');\n element.appendChild(path);\n return element;\n};","export var ClearIcon = function ClearIcon(_ref) {\n var environment = _ref.environment;\n var element = environment.document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n element.setAttribute('class', 'aa-ClearIcon');\n element.setAttribute('viewBox', '0 0 24 24');\n element.setAttribute('width', '18');\n element.setAttribute('height', '18');\n element.setAttribute('fill', 'currentColor');\n var path = environment.document.createElementNS('http://www.w3.org/2000/svg', 'path');\n path.setAttribute('d', 'M5.293 6.707l5.293 5.293-5.293 5.293c-0.391 0.391-0.391 1.024 0 1.414s1.024 0.391 1.414 0l5.293-5.293 5.293 5.293c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414l-5.293-5.293 5.293-5.293c0.391-0.391 0.391-1.024 0-1.414s-1.024-0.391-1.414 0l-5.293 5.293-5.293-5.293c-0.391-0.391-1.024-0.391-1.414 0s-0.391 1.024 0 1.414z');\n element.appendChild(path);\n return element;\n};","export var LoadingIcon = function LoadingIcon(_ref) {\n var environment = _ref.environment;\n var element = environment.document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n element.setAttribute('class', 'aa-LoadingIcon');\n element.setAttribute('viewBox', '0 0 100 100');\n element.setAttribute('width', '20');\n element.setAttribute('height', '20');\n element.innerHTML = \"\\n \\n\";\n return element;\n};","/* eslint-disable */\n\n/**\n * Touch-specific event aliases\n *\n * See https://w3c.github.io/touch-events/#extensions-to-the-globaleventhandlers-mixin\n */\nvar TOUCH_EVENTS_ALIASES = ['ontouchstart', 'ontouchend', 'ontouchmove', 'ontouchcancel'];\n\n/*\n * Taken from Preact\n *\n * See https://github.com/preactjs/preact/blob/6ab49d9020740127577bf4af66bf63f4af7f9fee/src/diff/props.js#L58-L151\n */\n\nfunction setStyle(style, key, value) {\n if (value === null) {\n style[key] = '';\n } else if (typeof value !== 'number') {\n style[key] = value;\n } else {\n style[key] = value + 'px';\n }\n}\n\n/**\n * Proxy an event to hooked event handlers\n */\nfunction eventProxy(event) {\n this._listeners[event.type](event);\n}\n\n/**\n * Set a property value on a DOM node\n */\nexport function setProperty(dom, name, value) {\n var useCapture;\n var nameLower;\n var oldValue = dom[name];\n if (name === 'style') {\n if (typeof value == 'string') {\n dom.style = value;\n } else {\n if (value === null) {\n dom.style = '';\n } else {\n for (name in value) {\n if (!oldValue || value[name] !== oldValue[name]) {\n setStyle(dom.style, name, value[name]);\n }\n }\n }\n }\n }\n // Benchmark for comparison: https://esbench.com/bench/574c954bdb965b9a00965ac6\n else if (name[0] === 'o' && name[1] === 'n') {\n useCapture = name !== (name = name.replace(/Capture$/, ''));\n nameLower = name.toLowerCase();\n if (nameLower in dom || TOUCH_EVENTS_ALIASES.includes(nameLower)) name = nameLower;\n name = name.slice(2);\n if (!dom._listeners) dom._listeners = {};\n dom._listeners[name] = value;\n if (value) {\n if (!oldValue) dom.addEventListener(name, eventProxy, useCapture);\n } else {\n dom.removeEventListener(name, eventProxy, useCapture);\n }\n } else if (name !== 'list' && name !== 'tagName' &&\n // HTMLButtonElement.form and HTMLInputElement.form are read-only but can be set using\n // setAttribute\n name !== 'form' && name !== 'type' && name !== 'size' && name !== 'download' && name !== 'href' && name in dom) {\n dom[name] = value == null ? '' : value;\n } else if (typeof value != 'function' && name !== 'dangerouslySetInnerHTML') {\n if (value == null || value === false &&\n // ARIA-attributes have a different notion of boolean values.\n // The value `false` is different from the attribute not\n // existing on the DOM, so we can't remove it. For non-boolean\n // ARIA-attributes we could treat false as a removal, but the\n // amount of exceptions would cost us too many bytes. On top of\n // that other VDOM frameworks also always stringify `false`.\n !/^ar/.test(name)) {\n dom.removeAttribute(name);\n } else {\n dom.setAttribute(name, value);\n }\n }\n}\nfunction getNormalizedName(name) {\n switch (name) {\n case 'onChange':\n return 'onInput';\n // see: https://github.com/preactjs/preact/issues/1978\n case 'onCompositionEnd':\n return 'oncompositionend';\n default:\n return name;\n }\n}\nexport function setProperties(dom, props) {\n for (var name in props) {\n setProperty(dom, getNormalizedName(name), props[name]);\n }\n}\nexport function setPropertiesWithoutEvents(dom, props) {\n for (var name in props) {\n if (!(name[0] === 'o' && name[1] === 'n')) {\n setProperty(dom, getNormalizedName(name), props[name]);\n }\n }\n}","var _excluded = [\"children\"];\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { setProperties } from './utils';\nexport function getCreateDomElement(environment) {\n return function createDomElement(tagName, _ref) {\n var _ref$children = _ref.children,\n children = _ref$children === void 0 ? [] : _ref$children,\n props = _objectWithoutProperties(_ref, _excluded);\n var element = environment.document.createElement(tagName);\n setProperties(element, props);\n element.append.apply(element, _toConsumableArray(children));\n return element;\n };\n}","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); }\nvar _excluded = [\"autocompleteScopeApi\", \"environment\", \"classNames\", \"getInputProps\", \"getInputPropsCore\", \"isDetached\", \"state\"];\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { getCreateDomElement } from '../getCreateDomElement';\nimport { setProperties } from '../utils';\nexport var Input = function Input(_ref) {\n var autocompleteScopeApi = _ref.autocompleteScopeApi,\n environment = _ref.environment,\n classNames = _ref.classNames,\n getInputProps = _ref.getInputProps,\n getInputPropsCore = _ref.getInputPropsCore,\n isDetached = _ref.isDetached,\n state = _ref.state,\n props = _objectWithoutProperties(_ref, _excluded);\n var createDomElement = getCreateDomElement(environment);\n var element = createDomElement('input', props);\n var inputProps = getInputProps(_objectSpread({\n state: state,\n props: getInputPropsCore({\n inputElement: element\n }),\n inputElement: element\n }, autocompleteScopeApi));\n setProperties(element, _objectSpread(_objectSpread({}, inputProps), {}, {\n onKeyDown: function onKeyDown(event) {\n // In detached mode we don't want to close the panel when hitting `Tab`.\n if (isDetached && event.key === 'Tab') {\n return;\n }\n inputProps.onKeyDown(event);\n }\n }));\n return element;\n};","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { ClearIcon, Input, LoadingIcon, SearchIcon } from './elements';\nimport { getCreateDomElement } from './getCreateDomElement';\nimport { setProperties } from './utils';\nexport function createAutocompleteDom(_ref) {\n var autocomplete = _ref.autocomplete,\n autocompleteScopeApi = _ref.autocompleteScopeApi,\n classNames = _ref.classNames,\n environment = _ref.environment,\n isDetached = _ref.isDetached,\n _ref$placeholder = _ref.placeholder,\n placeholder = _ref$placeholder === void 0 ? 'Search' : _ref$placeholder,\n propGetters = _ref.propGetters,\n setIsModalOpen = _ref.setIsModalOpen,\n state = _ref.state,\n translations = _ref.translations;\n var createDomElement = getCreateDomElement(environment);\n var rootProps = propGetters.getRootProps(_objectSpread({\n state: state,\n props: autocomplete.getRootProps({})\n }, autocompleteScopeApi));\n var root = createDomElement('div', _objectSpread({\n class: classNames.root\n }, rootProps));\n var detachedContainer = createDomElement('div', {\n class: classNames.detachedContainer,\n onMouseDown: function onMouseDown(event) {\n event.stopPropagation();\n }\n });\n var detachedOverlay = createDomElement('div', {\n class: classNames.detachedOverlay,\n children: [detachedContainer],\n onMouseDown: function onMouseDown() {\n setIsModalOpen(false);\n autocomplete.setIsOpen(false);\n }\n });\n var labelProps = propGetters.getLabelProps(_objectSpread({\n state: state,\n props: autocomplete.getLabelProps({})\n }, autocompleteScopeApi));\n var submitButton = createDomElement('button', {\n class: classNames.submitButton,\n type: 'submit',\n title: translations.submitButtonTitle,\n children: [SearchIcon({\n environment: environment\n })]\n });\n var label = createDomElement('label', _objectSpread({\n class: classNames.label,\n children: [submitButton]\n }, labelProps));\n var clearButton = createDomElement('button', {\n class: classNames.clearButton,\n type: 'reset',\n title: translations.clearButtonTitle,\n children: [ClearIcon({\n environment: environment\n })]\n });\n var loadingIndicator = createDomElement('div', {\n class: classNames.loadingIndicator,\n children: [LoadingIcon({\n environment: environment\n })]\n });\n var input = Input({\n class: classNames.input,\n environment: environment,\n state: state,\n getInputProps: propGetters.getInputProps,\n getInputPropsCore: autocomplete.getInputProps,\n autocompleteScopeApi: autocompleteScopeApi,\n isDetached: isDetached\n });\n var inputWrapperPrefix = createDomElement('div', {\n class: classNames.inputWrapperPrefix,\n children: [label, loadingIndicator]\n });\n var inputWrapperSuffix = createDomElement('div', {\n class: classNames.inputWrapperSuffix,\n children: [clearButton]\n });\n var inputWrapper = createDomElement('div', {\n class: classNames.inputWrapper,\n children: [input]\n });\n var formProps = propGetters.getFormProps(_objectSpread({\n state: state,\n props: autocomplete.getFormProps({\n inputElement: input\n })\n }, autocompleteScopeApi));\n var form = createDomElement('form', _objectSpread({\n class: classNames.form,\n children: [inputWrapperPrefix, inputWrapper, inputWrapperSuffix]\n }, formProps));\n var panelProps = propGetters.getPanelProps(_objectSpread({\n state: state,\n props: autocomplete.getPanelProps({})\n }, autocompleteScopeApi));\n var panel = createDomElement('div', _objectSpread({\n class: classNames.panel\n }, panelProps));\n var detachedSearchButtonQuery = createDomElement('div', {\n class: classNames.detachedSearchButtonQuery,\n textContent: state.query\n });\n var detachedSearchButtonPlaceholder = createDomElement('div', {\n class: classNames.detachedSearchButtonPlaceholder,\n hidden: Boolean(state.query),\n textContent: placeholder\n });\n if (process.env.NODE_ENV === 'test') {\n setProperties(panel, {\n 'data-testid': 'panel'\n });\n }\n if (isDetached) {\n var detachedSearchButtonIcon = createDomElement('div', {\n class: classNames.detachedSearchButtonIcon,\n children: [SearchIcon({\n environment: environment\n })]\n });\n var detachedSearchButton = createDomElement('button', {\n type: 'button',\n class: classNames.detachedSearchButton,\n onClick: function onClick() {\n setIsModalOpen(true);\n },\n children: [detachedSearchButtonIcon, detachedSearchButtonPlaceholder, detachedSearchButtonQuery]\n });\n var detachedCancelButton = createDomElement('button', {\n type: 'button',\n class: classNames.detachedCancelButton,\n textContent: translations.detachedCancelButtonText,\n // Prevent `onTouchStart` from closing the panel\n // since it should be initiated by `onClick` only\n onTouchStart: function onTouchStart(event) {\n event.stopPropagation();\n },\n onClick: function onClick() {\n autocomplete.setIsOpen(false);\n setIsModalOpen(false);\n }\n });\n var detachedFormContainer = createDomElement('div', {\n class: classNames.detachedFormContainer,\n children: [form, detachedCancelButton]\n });\n detachedContainer.appendChild(detachedFormContainer);\n root.appendChild(detachedSearchButton);\n } else {\n root.appendChild(form);\n }\n return {\n detachedContainer: detachedContainer,\n detachedOverlay: detachedOverlay,\n detachedSearchButtonQuery: detachedSearchButtonQuery,\n detachedSearchButtonPlaceholder: detachedSearchButtonPlaceholder,\n inputWrapper: inputWrapper,\n input: input,\n root: root,\n form: form,\n label: label,\n submitButton: submitButton,\n clearButton: clearButton,\n loadingIndicator: loadingIndicator,\n panel: panel\n };\n}","var n,l,u,i,t,r,o,f,e,c={},s=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function h(n,l){for(var u in l)n[u]=l[u];return n}function v(n){var l=n.parentNode;l&&l.removeChild(n)}function y(l,u,i){var t,r,o,f={};for(o in u)\"key\"==o?t=u[o]:\"ref\"==o?r=u[o]:f[o]=u[o];if(arguments.length>2&&(f.children=arguments.length>3?n.call(arguments,2):i),\"function\"==typeof l&&null!=l.defaultProps)for(o in l.defaultProps)void 0===f[o]&&(f[o]=l.defaultProps[o]);return p(l,f,t,r,null)}function p(n,i,t,r,o){var f={type:n,props:i,key:t,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:null==o?++u:o};return null==o&&null!=l.vnode&&l.vnode(f),f}function d(){return{current:null}}function _(n){return n.children}function k(n,l){this.props=n,this.context=l}function b(n,l){if(null==l)return n.__?b(n.__,n.__.__k.indexOf(n)+1):null;for(var u;ll&&t.sort(f));w.__r=0}function x(n,l,u,i,t,r,o,f,e,a){var h,v,y,d,k,g,m,w=i&&i.__k||s,x=w.length;for(u.__k=[],h=0;h0?p(d.type,d.props,d.key,d.ref?d.ref:null,d.__v):d)){if(d.__=u,d.__b=u.__b+1,null===(y=w[h])||y&&d.key==y.key&&d.type===y.type)w[h]=void 0;else for(v=0;v=0;l--)if((u=n.__k[l])&&(i=$(u)))return i;return null}function H(n,l,u,i,t){var r;for(r in u)\"children\"===r||\"key\"===r||r in l||T(n,r,null,u[r],i);for(r in l)t&&\"function\"!=typeof l[r]||\"children\"===r||\"key\"===r||\"value\"===r||\"checked\"===r||u[r]===l[r]||T(n,r,l[r],u[r],i)}function I(n,l,u){\"-\"===l[0]?n.setProperty(l,null==u?\"\":u):n[l]=null==u?\"\":\"number\"!=typeof u||a.test(l)?u:u+\"px\"}function T(n,l,u,i,t){var r;n:if(\"style\"===l)if(\"string\"==typeof u)n.style.cssText=u;else{if(\"string\"==typeof i&&(n.style.cssText=i=\"\"),i)for(l in i)u&&l in u||I(n.style,l,\"\");if(u)for(l in u)i&&u[l]===i[l]||I(n.style,l,u[l])}else if(\"o\"===l[0]&&\"n\"===l[1])r=l!==(l=l.replace(/Capture$/,\"\")),l=l.toLowerCase()in n?l.toLowerCase().slice(2):l.slice(2),n.l||(n.l={}),n.l[l+r]=u,u?i||n.addEventListener(l,r?z:j,r):n.removeEventListener(l,r?z:j,r);else if(\"dangerouslySetInnerHTML\"!==l){if(t)l=l.replace(/xlink(H|:h)/,\"h\").replace(/sName$/,\"s\");else if(\"width\"!==l&&\"height\"!==l&&\"href\"!==l&&\"list\"!==l&&\"form\"!==l&&\"tabIndex\"!==l&&\"download\"!==l&&l in n)try{n[l]=null==u?\"\":u;break n}catch(n){}\"function\"==typeof u||(null==u||!1===u&&\"-\"!==l[4]?n.removeAttribute(l):n.setAttribute(l,u))}}function j(n){return this.l[n.type+!1](l.event?l.event(n):n)}function z(n){return this.l[n.type+!0](l.event?l.event(n):n)}function L(n,u,i,t,r,o,f,e,c){var s,a,v,y,p,d,b,g,m,w,A,P,C,$,H,I=u.type;if(void 0!==u.constructor)return null;null!=i.__h&&(c=i.__h,e=u.__e=i.__e,u.__h=null,o=[e]),(s=l.__b)&&s(u);try{n:if(\"function\"==typeof I){if(g=u.props,m=(s=I.contextType)&&t[s.__c],w=s?m?m.props.value:s.__:t,i.__c?b=(a=u.__c=i.__c).__=a.__E:(\"prototype\"in I&&I.prototype.render?u.__c=a=new I(g,w):(u.__c=a=new k(g,w),a.constructor=I,a.render=q),m&&m.sub(a),a.props=g,a.state||(a.state={}),a.context=w,a.__n=t,v=a.__d=!0,a.__h=[],a._sb=[]),null==a.__s&&(a.__s=a.state),null!=I.getDerivedStateFromProps&&(a.__s==a.state&&(a.__s=h({},a.__s)),h(a.__s,I.getDerivedStateFromProps(g,a.__s))),y=a.props,p=a.state,a.__v=u,v)null==I.getDerivedStateFromProps&&null!=a.componentWillMount&&a.componentWillMount(),null!=a.componentDidMount&&a.__h.push(a.componentDidMount);else{if(null==I.getDerivedStateFromProps&&g!==y&&null!=a.componentWillReceiveProps&&a.componentWillReceiveProps(g,w),!a.__e&&null!=a.shouldComponentUpdate&&!1===a.shouldComponentUpdate(g,a.__s,w)||u.__v===i.__v){for(u.__v!==i.__v&&(a.props=g,a.state=a.__s,a.__d=!1),a.__e=!1,u.__e=i.__e,u.__k=i.__k,u.__k.forEach(function(n){n&&(n.__=u)}),A=0;A2&&(f.children=arguments.length>3?n.call(arguments,2):i),p(l.type,f,t||l.key,r||l.ref,null)}function F(n,l){var u={__c:l=\"__cC\"+e++,__:n,Consumer:function(n,l){return n.children(l)},Provider:function(n){var u,i;return this.getChildContext||(u=[],(i={})[l]=this,this.getChildContext=function(){return i},this.shouldComponentUpdate=function(n){this.props.value!==n.value&&u.some(function(n){n.__e=!0,m(n)})},this.sub=function(n){u.push(n);var l=n.componentWillUnmount;n.componentWillUnmount=function(){u.splice(u.indexOf(n),1),l&&l.call(n)}}),n.children}};return u.Provider.__=u.Consumer.contextType=u}n=s.slice,l={__e:function(n,l,u,i){for(var t,r,o;l=l.__;)if((t=l.__c)&&!t.__)try{if((r=t.constructor)&&null!=r.getDerivedStateFromError&&(t.setState(r.getDerivedStateFromError(n)),o=t.__d),null!=t.componentDidCatch&&(t.componentDidCatch(n,i||{}),o=t.__d),o)return t.__E=t}catch(l){n=l}throw n}},u=0,i=function(n){return null!=n&&void 0===n.constructor},k.prototype.setState=function(n,l){var u;u=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=h({},this.state),\"function\"==typeof n&&(n=n(h({},u),this.props)),n&&h(u,n),null!=n&&this.__v&&(l&&this._sb.push(l),m(this))},k.prototype.forceUpdate=function(n){this.__v&&(this.__e=!0,n&&this.__h.push(n),m(this))},k.prototype.render=_,t=[],o=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,f=function(n,l){return n.__v.__b-l.__v.__b},w.__r=0,e=0;export{k as Component,_ as Fragment,E as cloneElement,F as createContext,y as createElement,d as createRef,y as h,D as hydrate,i as isValidElement,l as options,B as render,P as toChildArray};\n//# sourceMappingURL=preact.module.js.map\n","import { HIGHLIGHT_PRE_TAG, HIGHLIGHT_POST_TAG } from '../constants';\n/**\n * Creates a data structure that allows to concatenate similar highlighting\n * parts in a single value.\n */\nfunction createAttributeSet() {\n var initialValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var value = initialValue;\n return {\n get: function get() {\n return value;\n },\n add: function add(part) {\n var lastPart = value[value.length - 1];\n if ((lastPart === null || lastPart === void 0 ? void 0 : lastPart.isHighlighted) === part.isHighlighted) {\n value[value.length - 1] = {\n value: lastPart.value + part.value,\n isHighlighted: lastPart.isHighlighted\n };\n } else {\n value.push(part);\n }\n }\n };\n}\nexport function parseAttribute(_ref) {\n var highlightedValue = _ref.highlightedValue;\n var preTagParts = highlightedValue.split(HIGHLIGHT_PRE_TAG);\n var firstValue = preTagParts.shift();\n var parts = createAttributeSet(firstValue ? [{\n value: firstValue,\n isHighlighted: false\n }] : []);\n preTagParts.forEach(function (part) {\n var postTagParts = part.split(HIGHLIGHT_POST_TAG);\n parts.add({\n value: postTagParts[0],\n isHighlighted: true\n });\n if (postTagParts[1] !== '') {\n parts.add({\n value: postTagParts[1],\n isHighlighted: false\n });\n }\n });\n return parts.get();\n}","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nimport { getAttributeValueByPath, warn } from '@algolia/autocomplete-shared';\nimport { parseAttribute } from './parseAttribute';\nexport function parseAlgoliaHitHighlight(_ref) {\n var hit = _ref.hit,\n attribute = _ref.attribute;\n var path = Array.isArray(attribute) ? attribute : [attribute];\n var highlightedValue = getAttributeValueByPath(hit, ['_highlightResult'].concat(_toConsumableArray(path), ['value']));\n if (typeof highlightedValue !== 'string') {\n process.env.NODE_ENV !== 'production' ? warn(false, \"The attribute \\\"\".concat(path.join('.'), \"\\\" described by the path \").concat(JSON.stringify(path), \" does not exist on the hit. Did you set it in `attributesToHighlight`?\") + '\\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToHighlight/') : void 0;\n highlightedValue = getAttributeValueByPath(hit, path) || '';\n }\n return parseAttribute({\n highlightedValue: highlightedValue\n });\n}","import { parseAlgoliaHitHighlight } from '@algolia/autocomplete-preset-algolia';\nexport function createHighlightComponent(_ref) {\n var createElement = _ref.createElement,\n Fragment = _ref.Fragment;\n function Highlight(_ref2) {\n var hit = _ref2.hit,\n attribute = _ref2.attribute,\n _ref2$tagName = _ref2.tagName,\n tagName = _ref2$tagName === void 0 ? 'mark' : _ref2$tagName;\n return createElement(Fragment, {}, parseAlgoliaHitHighlight({\n hit: hit,\n attribute: attribute\n }).map(function (x, index) {\n return x.isHighlighted ? createElement(tagName, {\n key: index\n }, x.value) : x.value;\n }));\n }\n Highlight.__autocomplete_componentName = 'Highlight';\n return Highlight;\n}","var htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n};\nvar hasAlphanumeric = new RegExp(/\\w/i);\nvar regexEscapedHtml = /&(amp|quot|lt|gt|#39);/g;\nvar regexHasEscapedHtml = RegExp(regexEscapedHtml.source);\nfunction unescape(value) {\n return value && regexHasEscapedHtml.test(value) ? value.replace(regexEscapedHtml, function (character) {\n return htmlEscapes[character];\n }) : value;\n}\nexport function isPartHighlighted(parts, i) {\n var _parts, _parts2;\n var current = parts[i];\n var isNextHighlighted = ((_parts = parts[i + 1]) === null || _parts === void 0 ? void 0 : _parts.isHighlighted) || true;\n var isPreviousHighlighted = ((_parts2 = parts[i - 1]) === null || _parts2 === void 0 ? void 0 : _parts2.isHighlighted) || true;\n if (!hasAlphanumeric.test(unescape(current.value)) && isPreviousHighlighted === isNextHighlighted) {\n return isPreviousHighlighted;\n }\n return current.isHighlighted;\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { isPartHighlighted } from './isPartHighlighted';\nexport function reverseHighlightedParts(parts) {\n // We don't want to highlight the whole word when no parts match.\n if (!parts.some(function (part) {\n return part.isHighlighted;\n })) {\n return parts.map(function (part) {\n return _objectSpread(_objectSpread({}, part), {}, {\n isHighlighted: false\n });\n });\n }\n return parts.map(function (part, i) {\n return _objectSpread(_objectSpread({}, part), {}, {\n isHighlighted: !isPartHighlighted(parts, i)\n });\n });\n}","import { parseAlgoliaHitReverseHighlight } from '@algolia/autocomplete-preset-algolia';\nexport function createReverseHighlightComponent(_ref) {\n var createElement = _ref.createElement,\n Fragment = _ref.Fragment;\n function ReverseHighlight(_ref2) {\n var hit = _ref2.hit,\n attribute = _ref2.attribute,\n _ref2$tagName = _ref2.tagName,\n tagName = _ref2$tagName === void 0 ? 'mark' : _ref2$tagName;\n return createElement(Fragment, {}, parseAlgoliaHitReverseHighlight({\n hit: hit,\n attribute: attribute\n }).map(function (x, index) {\n return x.isHighlighted ? createElement(tagName, {\n key: index\n }, x.value) : x.value;\n }));\n }\n ReverseHighlight.__autocomplete_componentName = 'ReverseHighlight';\n return ReverseHighlight;\n}","import { parseAlgoliaHitHighlight } from './parseAlgoliaHitHighlight';\nimport { reverseHighlightedParts } from './reverseHighlightedParts';\nexport function parseAlgoliaHitReverseHighlight(props) {\n return reverseHighlightedParts(parseAlgoliaHitHighlight(props));\n}","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nimport { getAttributeValueByPath, warn } from '@algolia/autocomplete-shared';\nimport { parseAttribute } from './parseAttribute';\nexport function parseAlgoliaHitSnippet(_ref) {\n var hit = _ref.hit,\n attribute = _ref.attribute;\n var path = Array.isArray(attribute) ? attribute : [attribute];\n var highlightedValue = getAttributeValueByPath(hit, ['_snippetResult'].concat(_toConsumableArray(path), ['value']));\n if (typeof highlightedValue !== 'string') {\n process.env.NODE_ENV !== 'production' ? warn(false, \"The attribute \\\"\".concat(path.join('.'), \"\\\" described by the path \").concat(JSON.stringify(path), \" does not exist on the hit. Did you set it in `attributesToSnippet`?\") + '\\nSee https://www.algolia.com/doc/api-reference/api-parameters/attributesToSnippet/') : void 0;\n highlightedValue = getAttributeValueByPath(hit, path) || '';\n }\n return parseAttribute({\n highlightedValue: highlightedValue\n });\n}","import { parseAlgoliaHitReverseSnippet } from '@algolia/autocomplete-preset-algolia';\nexport function createReverseSnippetComponent(_ref) {\n var createElement = _ref.createElement,\n Fragment = _ref.Fragment;\n function ReverseSnippet(_ref2) {\n var hit = _ref2.hit,\n attribute = _ref2.attribute,\n _ref2$tagName = _ref2.tagName,\n tagName = _ref2$tagName === void 0 ? 'mark' : _ref2$tagName;\n return createElement(Fragment, {}, parseAlgoliaHitReverseSnippet({\n hit: hit,\n attribute: attribute\n }).map(function (x, index) {\n return x.isHighlighted ? createElement(tagName, {\n key: index\n }, x.value) : x.value;\n }));\n }\n ReverseSnippet.__autocomplete_componentName = 'ReverseSnippet';\n return ReverseSnippet;\n}","import { parseAlgoliaHitSnippet } from './parseAlgoliaHitSnippet';\nimport { reverseHighlightedParts } from './reverseHighlightedParts';\nexport function parseAlgoliaHitReverseSnippet(props) {\n return reverseHighlightedParts(parseAlgoliaHitSnippet(props));\n}","import { parseAlgoliaHitSnippet } from '@algolia/autocomplete-preset-algolia';\nexport function createSnippetComponent(_ref) {\n var createElement = _ref.createElement,\n Fragment = _ref.Fragment;\n function Snippet(_ref2) {\n var hit = _ref2.hit,\n attribute = _ref2.attribute,\n _ref2$tagName = _ref2.tagName,\n tagName = _ref2$tagName === void 0 ? 'mark' : _ref2$tagName;\n return createElement(Fragment, {}, parseAlgoliaHitSnippet({\n hit: hit,\n attribute: attribute\n }).map(function (x, index) {\n return x.isHighlighted ? createElement(tagName, {\n key: index\n }, x.value) : x.value;\n }));\n }\n Snippet.__autocomplete_componentName = 'Snippet';\n return Snippet;\n}","import { invariant } from '@algolia/autocomplete-shared';\nexport function getHTMLElement(environment, value) {\n if (typeof value === 'string') {\n var element = environment.document.querySelector(value);\n invariant(element !== null, \"The element \".concat(JSON.stringify(value), \" is not in the document.\"));\n return element;\n }\n return value;\n}","export function mergeClassNames() {\n for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {\n values[_key] = arguments[_key];\n }\n return values.reduce(function (acc, current) {\n Object.keys(current).forEach(function (key) {\n var accValue = acc[key];\n var currentValue = current[key];\n if (accValue !== currentValue) {\n acc[key] = [accValue, currentValue].filter(Boolean).join(' ');\n }\n });\n return acc;\n }, {});\n}","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); }\nvar _excluded = [\"classNames\", \"container\", \"getEnvironmentProps\", \"getFormProps\", \"getInputProps\", \"getItemProps\", \"getLabelProps\", \"getListProps\", \"getPanelProps\", \"getRootProps\", \"panelContainer\", \"panelPlacement\", \"render\", \"renderNoResults\", \"renderer\", \"detachedMediaQuery\", \"components\", \"translations\"];\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { generateAutocompleteId, invariant, warn } from '@algolia/autocomplete-shared';\nimport { createElement as preactCreateElement, Fragment as PreactFragment, render } from 'preact';\nimport { createHighlightComponent, createReverseHighlightComponent, createReverseSnippetComponent, createSnippetComponent } from './components';\nimport { getHTMLElement, mergeClassNames } from './utils';\nvar defaultClassNames = {\n clearButton: 'aa-ClearButton',\n detachedCancelButton: 'aa-DetachedCancelButton',\n detachedContainer: 'aa-DetachedContainer',\n detachedFormContainer: 'aa-DetachedFormContainer',\n detachedOverlay: 'aa-DetachedOverlay',\n detachedSearchButton: 'aa-DetachedSearchButton',\n detachedSearchButtonIcon: 'aa-DetachedSearchButtonIcon',\n detachedSearchButtonPlaceholder: 'aa-DetachedSearchButtonPlaceholder',\n detachedSearchButtonQuery: 'aa-DetachedSearchButtonQuery',\n form: 'aa-Form',\n input: 'aa-Input',\n inputWrapper: 'aa-InputWrapper',\n inputWrapperPrefix: 'aa-InputWrapperPrefix',\n inputWrapperSuffix: 'aa-InputWrapperSuffix',\n item: 'aa-Item',\n label: 'aa-Label',\n list: 'aa-List',\n loadingIndicator: 'aa-LoadingIndicator',\n panel: 'aa-Panel',\n panelLayout: 'aa-PanelLayout aa-Panel--scrollable',\n root: 'aa-Autocomplete',\n source: 'aa-Source',\n sourceFooter: 'aa-SourceFooter',\n sourceHeader: 'aa-SourceHeader',\n sourceNoResults: 'aa-SourceNoResults',\n submitButton: 'aa-SubmitButton'\n};\nvar defaultRender = function defaultRender(_ref, root) {\n var children = _ref.children,\n render = _ref.render;\n render(children, root);\n};\nvar defaultRenderer = {\n createElement: preactCreateElement,\n Fragment: PreactFragment,\n render: render\n};\nexport function getDefaultOptions(options) {\n var _core$id;\n var classNames = options.classNames,\n container = options.container,\n getEnvironmentProps = options.getEnvironmentProps,\n getFormProps = options.getFormProps,\n getInputProps = options.getInputProps,\n getItemProps = options.getItemProps,\n getLabelProps = options.getLabelProps,\n getListProps = options.getListProps,\n getPanelProps = options.getPanelProps,\n getRootProps = options.getRootProps,\n panelContainer = options.panelContainer,\n panelPlacement = options.panelPlacement,\n render = options.render,\n renderNoResults = options.renderNoResults,\n renderer = options.renderer,\n detachedMediaQuery = options.detachedMediaQuery,\n components = options.components,\n translations = options.translations,\n core = _objectWithoutProperties(options, _excluded);\n\n /* eslint-disable no-restricted-globals */\n var environment = typeof window !== 'undefined' ? window : {};\n /* eslint-enable no-restricted-globals */\n var containerElement = getHTMLElement(environment, container);\n invariant(containerElement.tagName !== 'INPUT', 'The `container` option does not support `input` elements. You need to change the container to a `div`.');\n process.env.NODE_ENV !== 'production' ? warn(!(render && renderer && !(renderer !== null && renderer !== void 0 && renderer.render)), \"You provided the `render` option but did not provide a `renderer.render`. Since v1.6.0, you can provide a `render` function directly in `renderer`.\" + \"\\nTo get rid of this warning, do any of the following depending on your use case.\" + \"\\n- If you are using the `render` option only to override Autocomplete's default `render` function, pass the `render` function into `renderer` and remove the `render` option.\" + '\\n- If you are using the `render` option to customize the layout, pass your `render` function into `renderer` and use it from the provided parameters of the `render` option.' + '\\n- If you are using the `render` option to work with React 18, pass an empty `render` function into `renderer`.' + '\\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-render') : void 0;\n process.env.NODE_ENV !== 'production' ? warn(!renderer || render || renderer.Fragment && renderer.createElement && renderer.render, \"You provided an incomplete `renderer` (missing: \".concat([!(renderer !== null && renderer !== void 0 && renderer.createElement) && '`renderer.createElement`', !(renderer !== null && renderer !== void 0 && renderer.Fragment) && '`renderer.Fragment`', !(renderer !== null && renderer !== void 0 && renderer.render) && '`renderer.render`'].filter(Boolean).join(', '), \"). This can cause rendering issues.\") + '\\nSee https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-renderer') : void 0;\n var defaultedRenderer = _objectSpread(_objectSpread({}, defaultRenderer), renderer);\n var defaultComponents = {\n Highlight: createHighlightComponent(defaultedRenderer),\n ReverseHighlight: createReverseHighlightComponent(defaultedRenderer),\n ReverseSnippet: createReverseSnippetComponent(defaultedRenderer),\n Snippet: createSnippetComponent(defaultedRenderer)\n };\n var defaultTranslations = {\n clearButtonTitle: 'Clear',\n detachedCancelButtonText: 'Cancel',\n submitButtonTitle: 'Submit'\n };\n return {\n renderer: {\n classNames: mergeClassNames(defaultClassNames, classNames !== null && classNames !== void 0 ? classNames : {}),\n container: containerElement,\n getEnvironmentProps: getEnvironmentProps !== null && getEnvironmentProps !== void 0 ? getEnvironmentProps : function (_ref2) {\n var props = _ref2.props;\n return props;\n },\n getFormProps: getFormProps !== null && getFormProps !== void 0 ? getFormProps : function (_ref3) {\n var props = _ref3.props;\n return props;\n },\n getInputProps: getInputProps !== null && getInputProps !== void 0 ? getInputProps : function (_ref4) {\n var props = _ref4.props;\n return props;\n },\n getItemProps: getItemProps !== null && getItemProps !== void 0 ? getItemProps : function (_ref5) {\n var props = _ref5.props;\n return props;\n },\n getLabelProps: getLabelProps !== null && getLabelProps !== void 0 ? getLabelProps : function (_ref6) {\n var props = _ref6.props;\n return props;\n },\n getListProps: getListProps !== null && getListProps !== void 0 ? getListProps : function (_ref7) {\n var props = _ref7.props;\n return props;\n },\n getPanelProps: getPanelProps !== null && getPanelProps !== void 0 ? getPanelProps : function (_ref8) {\n var props = _ref8.props;\n return props;\n },\n getRootProps: getRootProps !== null && getRootProps !== void 0 ? getRootProps : function (_ref9) {\n var props = _ref9.props;\n return props;\n },\n panelContainer: panelContainer ? getHTMLElement(environment, panelContainer) : environment.document.body,\n panelPlacement: panelPlacement !== null && panelPlacement !== void 0 ? panelPlacement : 'input-wrapper-width',\n render: render !== null && render !== void 0 ? render : defaultRender,\n renderNoResults: renderNoResults,\n renderer: defaultedRenderer,\n detachedMediaQuery: detachedMediaQuery !== null && detachedMediaQuery !== void 0 ? detachedMediaQuery : getComputedStyle(environment.document.documentElement).getPropertyValue('--aa-detached-media-query'),\n components: _objectSpread(_objectSpread({}, defaultComponents), components),\n translations: _objectSpread(_objectSpread({}, defaultTranslations), translations)\n },\n core: _objectSpread(_objectSpread({}, core), {}, {\n id: (_core$id = core.id) !== null && _core$id !== void 0 ? _core$id : generateAutocompleteId(),\n environment: environment\n })\n };\n}","export function getPanelPlacementStyle(_ref) {\n var panelPlacement = _ref.panelPlacement,\n container = _ref.container,\n form = _ref.form,\n environment = _ref.environment;\n var containerRect = container.getBoundingClientRect();\n // Some browsers have specificities to retrieve the document scroll position.\n // See https://stackoverflow.com/a/28633515/9940315\n var scrollTop = environment.pageYOffset || environment.document.documentElement.scrollTop || environment.document.body.scrollTop || 0;\n var top = scrollTop + containerRect.top + containerRect.height;\n switch (panelPlacement) {\n case 'start':\n {\n return {\n top: top,\n left: containerRect.left\n };\n }\n case 'end':\n {\n return {\n top: top,\n right: environment.document.documentElement.clientWidth - (containerRect.left + containerRect.width)\n };\n }\n case 'full-width':\n {\n return {\n top: top,\n left: 0,\n right: 0,\n width: 'unset',\n maxWidth: 'unset'\n };\n }\n case 'input-wrapper-width':\n {\n var formRect = form.getBoundingClientRect();\n return {\n top: top,\n left: formRect.left,\n right: environment.document.documentElement.clientWidth - (formRect.left + formRect.width),\n width: 'unset',\n maxWidth: 'unset'\n };\n }\n default:\n {\n throw new Error(\"[Autocomplete] The `panelPlacement` value \".concat(JSON.stringify(panelPlacement), \" is not valid.\"));\n }\n }\n}","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); }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\n/** @jsxRuntime classic */\n/** @jsx renderer.createElement */\n\nimport { setProperties, setPropertiesWithoutEvents } from './utils';\nexport function renderSearchBox(_ref) {\n var autocomplete = _ref.autocomplete,\n autocompleteScopeApi = _ref.autocompleteScopeApi,\n dom = _ref.dom,\n propGetters = _ref.propGetters,\n state = _ref.state;\n setPropertiesWithoutEvents(dom.root, propGetters.getRootProps(_objectSpread({\n state: state,\n props: autocomplete.getRootProps({})\n }, autocompleteScopeApi)));\n setPropertiesWithoutEvents(dom.input, propGetters.getInputProps(_objectSpread({\n state: state,\n props: autocomplete.getInputProps({\n inputElement: dom.input\n }),\n inputElement: dom.input\n }, autocompleteScopeApi)));\n setProperties(dom.label, {\n hidden: state.status === 'stalled'\n });\n setProperties(dom.loadingIndicator, {\n hidden: state.status !== 'stalled'\n });\n setProperties(dom.clearButton, {\n hidden: !state.query\n });\n setProperties(dom.detachedSearchButtonQuery, {\n textContent: state.query\n });\n setProperties(dom.detachedSearchButtonPlaceholder, {\n hidden: Boolean(state.query)\n });\n}\nexport function renderPanel(render, _ref2) {\n var autocomplete = _ref2.autocomplete,\n autocompleteScopeApi = _ref2.autocompleteScopeApi,\n classNames = _ref2.classNames,\n html = _ref2.html,\n dom = _ref2.dom,\n panelContainer = _ref2.panelContainer,\n propGetters = _ref2.propGetters,\n state = _ref2.state,\n components = _ref2.components,\n renderer = _ref2.renderer;\n if (!state.isOpen) {\n if (panelContainer.contains(dom.panel)) {\n panelContainer.removeChild(dom.panel);\n }\n return;\n }\n\n // We add the panel element to the DOM when it's not yet appended and that the\n // items are fetched.\n if (!panelContainer.contains(dom.panel) && state.status !== 'loading') {\n panelContainer.appendChild(dom.panel);\n }\n dom.panel.classList.toggle('aa-Panel--stalled', state.status === 'stalled');\n var sections = state.collections.filter(function (_ref3) {\n var source = _ref3.source,\n items = _ref3.items;\n return source.templates.noResults || items.length > 0;\n }).map(function (_ref4, sourceIndex) {\n var source = _ref4.source,\n items = _ref4.items;\n return renderer.createElement(\"section\", {\n key: sourceIndex,\n className: classNames.source,\n \"data-autocomplete-source-id\": source.sourceId\n }, source.templates.header && renderer.createElement(\"div\", {\n className: classNames.sourceHeader\n }, source.templates.header({\n components: components,\n createElement: renderer.createElement,\n Fragment: renderer.Fragment,\n items: items,\n source: source,\n state: state,\n html: html\n })), source.templates.noResults && items.length === 0 ? renderer.createElement(\"div\", {\n className: classNames.sourceNoResults\n }, source.templates.noResults({\n components: components,\n createElement: renderer.createElement,\n Fragment: renderer.Fragment,\n source: source,\n state: state,\n html: html\n })) : renderer.createElement(\"ul\", _extends({\n className: classNames.list\n }, propGetters.getListProps(_objectSpread({\n state: state,\n props: autocomplete.getListProps({\n source: source\n })\n }, autocompleteScopeApi))), items.map(function (item) {\n var itemProps = autocomplete.getItemProps({\n item: item,\n source: source\n });\n return renderer.createElement(\"li\", _extends({\n key: itemProps.id,\n className: classNames.item\n }, propGetters.getItemProps(_objectSpread({\n state: state,\n props: itemProps\n }, autocompleteScopeApi))), source.templates.item({\n components: components,\n createElement: renderer.createElement,\n Fragment: renderer.Fragment,\n item: item,\n state: state,\n html: html\n }));\n })), source.templates.footer && renderer.createElement(\"div\", {\n className: classNames.sourceFooter\n }, source.templates.footer({\n components: components,\n createElement: renderer.createElement,\n Fragment: renderer.Fragment,\n items: items,\n source: source,\n state: state,\n html: html\n })));\n });\n var children = renderer.createElement(renderer.Fragment, null, renderer.createElement(\"div\", {\n className: classNames.panelLayout\n }, sections), renderer.createElement(\"div\", {\n className: \"aa-GradientBottom\"\n }));\n var elements = sections.reduce(function (acc, current) {\n acc[current.props['data-autocomplete-source-id']] = current;\n return acc;\n }, {});\n render(_objectSpread(_objectSpread({\n children: children,\n state: state,\n sections: sections,\n elements: elements\n }, renderer), {}, {\n components: components,\n html: html\n }, autocompleteScopeApi), dom.panel);\n}","function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nfunction _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); }\nvar isPlainObject = function isPlainObject(value) {\n return value && _typeof(value) === 'object' && Object.prototype.toString.call(value) === '[object Object]';\n};\nexport function mergeDeep() {\n for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) {\n values[_key] = arguments[_key];\n }\n return values.reduce(function (acc, current) {\n Object.keys(current).forEach(function (key) {\n var accValue = acc[key];\n var currentValue = current[key];\n if (Array.isArray(accValue) && Array.isArray(currentValue)) {\n acc[key] = accValue.concat.apply(accValue, _toConsumableArray(currentValue));\n } else if (isPlainObject(accValue) && isPlainObject(currentValue)) {\n acc[key] = mergeDeep(accValue, currentValue);\n } else {\n acc[key] = currentValue;\n }\n });\n return acc;\n }, {});\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\nfunction _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); }\nfunction _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; }\nfunction _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\nexport function pickBy(obj, predicate) {\n return Object.entries(obj).reduce(function (acc, _ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n if (predicate({\n key: key,\n value: value\n })) {\n return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, key, value));\n }\n return acc;\n }, {});\n}","var _excluded = [\"components\"];\nfunction _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); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { createAutocomplete } from '@algolia/autocomplete-core';\nimport { createRef, debounce, getItemsCount, warn } from '@algolia/autocomplete-shared';\nimport htm from 'htm';\nimport { createAutocompleteDom } from './createAutocompleteDom';\nimport { createEffectWrapper } from './createEffectWrapper';\nimport { createReactiveWrapper } from './createReactiveWrapper';\nimport { getDefaultOptions } from './getDefaultOptions';\nimport { getPanelPlacementStyle } from './getPanelPlacementStyle';\nimport { renderPanel, renderSearchBox } from './render';\nimport { userAgents } from './userAgents';\nimport { mergeDeep, pickBy, setProperties } from './utils';\nvar instancesCount = 0;\nexport function autocomplete(options) {\n var _createEffectWrapper = createEffectWrapper(),\n runEffect = _createEffectWrapper.runEffect,\n cleanupEffects = _createEffectWrapper.cleanupEffects,\n runEffects = _createEffectWrapper.runEffects;\n var _createReactiveWrappe = createReactiveWrapper(),\n reactive = _createReactiveWrappe.reactive,\n runReactives = _createReactiveWrappe.runReactives;\n var hasNoResultsSourceTemplateRef = createRef(false);\n var optionsRef = createRef(options);\n var onStateChangeRef = createRef(undefined);\n var props = reactive(function () {\n return getDefaultOptions(optionsRef.current);\n });\n var isDetached = reactive(function () {\n return props.value.core.environment.matchMedia(props.value.renderer.detachedMediaQuery).matches;\n });\n var autocomplete = reactive(function () {\n return createAutocomplete(_objectSpread(_objectSpread({}, props.value.core), {}, {\n onStateChange: function onStateChange(params) {\n var _onStateChangeRef$cur, _props$value$core$onS, _props$value$core;\n hasNoResultsSourceTemplateRef.current = params.state.collections.some(function (collection) {\n return collection.source.templates.noResults;\n });\n (_onStateChangeRef$cur = onStateChangeRef.current) === null || _onStateChangeRef$cur === void 0 ? void 0 : _onStateChangeRef$cur.call(onStateChangeRef, params);\n (_props$value$core$onS = (_props$value$core = props.value.core).onStateChange) === null || _props$value$core$onS === void 0 ? void 0 : _props$value$core$onS.call(_props$value$core, params);\n },\n shouldPanelOpen: optionsRef.current.shouldPanelOpen || function (_ref) {\n var state = _ref.state;\n if (isDetached.value) {\n return true;\n }\n var hasItems = getItemsCount(state) > 0;\n if (!props.value.core.openOnFocus && !state.query) {\n return hasItems;\n }\n var hasNoResultsTemplate = Boolean(hasNoResultsSourceTemplateRef.current || props.value.renderer.renderNoResults);\n return !hasItems && hasNoResultsTemplate || hasItems;\n },\n __autocomplete_metadata: {\n userAgents: userAgents,\n options: options\n }\n }));\n });\n var lastStateRef = createRef(_objectSpread({\n collections: [],\n completion: null,\n context: {},\n isOpen: false,\n query: '',\n activeItemId: null,\n status: 'idle'\n }, props.value.core.initialState));\n var propGetters = {\n getEnvironmentProps: props.value.renderer.getEnvironmentProps,\n getFormProps: props.value.renderer.getFormProps,\n getInputProps: props.value.renderer.getInputProps,\n getItemProps: props.value.renderer.getItemProps,\n getLabelProps: props.value.renderer.getLabelProps,\n getListProps: props.value.renderer.getListProps,\n getPanelProps: props.value.renderer.getPanelProps,\n getRootProps: props.value.renderer.getRootProps\n };\n var autocompleteScopeApi = {\n setActiveItemId: autocomplete.value.setActiveItemId,\n setQuery: autocomplete.value.setQuery,\n setCollections: autocomplete.value.setCollections,\n setIsOpen: autocomplete.value.setIsOpen,\n setStatus: autocomplete.value.setStatus,\n setContext: autocomplete.value.setContext,\n refresh: autocomplete.value.refresh,\n navigator: autocomplete.value.navigator\n };\n var html = reactive(function () {\n return htm.bind(props.value.renderer.renderer.createElement);\n });\n var dom = reactive(function () {\n return createAutocompleteDom({\n autocomplete: autocomplete.value,\n autocompleteScopeApi: autocompleteScopeApi,\n classNames: props.value.renderer.classNames,\n environment: props.value.core.environment,\n isDetached: isDetached.value,\n placeholder: props.value.core.placeholder,\n propGetters: propGetters,\n setIsModalOpen: setIsModalOpen,\n state: lastStateRef.current,\n translations: props.value.renderer.translations\n });\n });\n function setPanelPosition() {\n setProperties(dom.value.panel, {\n style: isDetached.value ? {} : getPanelPlacementStyle({\n panelPlacement: props.value.renderer.panelPlacement,\n container: dom.value.root,\n form: dom.value.form,\n environment: props.value.core.environment\n })\n });\n }\n function scheduleRender(state) {\n lastStateRef.current = state;\n var renderProps = {\n autocomplete: autocomplete.value,\n autocompleteScopeApi: autocompleteScopeApi,\n classNames: props.value.renderer.classNames,\n components: props.value.renderer.components,\n container: props.value.renderer.container,\n html: html.value,\n dom: dom.value,\n panelContainer: isDetached.value ? dom.value.detachedContainer : props.value.renderer.panelContainer,\n propGetters: propGetters,\n state: lastStateRef.current,\n renderer: props.value.renderer.renderer\n };\n var render = !getItemsCount(state) && !hasNoResultsSourceTemplateRef.current && props.value.renderer.renderNoResults || props.value.renderer.render;\n renderSearchBox(renderProps);\n renderPanel(render, renderProps);\n }\n runEffect(function () {\n var environmentProps = autocomplete.value.getEnvironmentProps({\n formElement: dom.value.form,\n panelElement: dom.value.panel,\n inputElement: dom.value.input\n });\n setProperties(props.value.core.environment, environmentProps);\n return function () {\n setProperties(props.value.core.environment, Object.keys(environmentProps).reduce(function (acc, key) {\n return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, key, undefined));\n }, {}));\n };\n });\n runEffect(function () {\n var panelContainerElement = isDetached.value ? props.value.core.environment.document.body : props.value.renderer.panelContainer;\n var panelElement = isDetached.value ? dom.value.detachedOverlay : dom.value.panel;\n if (isDetached.value && lastStateRef.current.isOpen) {\n setIsModalOpen(true);\n }\n scheduleRender(lastStateRef.current);\n return function () {\n if (panelContainerElement.contains(panelElement)) {\n panelContainerElement.removeChild(panelElement);\n }\n };\n });\n runEffect(function () {\n var containerElement = props.value.renderer.container;\n containerElement.appendChild(dom.value.root);\n return function () {\n containerElement.removeChild(dom.value.root);\n };\n });\n runEffect(function () {\n var debouncedRender = debounce(function (_ref2) {\n var state = _ref2.state;\n scheduleRender(state);\n }, 0);\n onStateChangeRef.current = function (_ref3) {\n var state = _ref3.state,\n prevState = _ref3.prevState;\n if (isDetached.value && prevState.isOpen !== state.isOpen) {\n setIsModalOpen(state.isOpen);\n }\n\n // The outer DOM might have changed since the last time the panel was\n // positioned. The layout might have shifted vertically for instance.\n // It's therefore safer to re-calculate the panel position before opening\n // it again.\n if (!isDetached.value && state.isOpen && !prevState.isOpen) {\n setPanelPosition();\n }\n\n // We scroll to the top of the panel whenever the query changes (i.e. new\n // results come in) so that users don't have to.\n if (state.query !== prevState.query) {\n var scrollablePanels = props.value.core.environment.document.querySelectorAll('.aa-Panel--scrollable');\n scrollablePanels.forEach(function (scrollablePanel) {\n if (scrollablePanel.scrollTop !== 0) {\n scrollablePanel.scrollTop = 0;\n }\n });\n }\n debouncedRender({\n state: state\n });\n };\n return function () {\n onStateChangeRef.current = undefined;\n };\n });\n runEffect(function () {\n var onResize = debounce(function () {\n var previousIsDetached = isDetached.value;\n isDetached.value = props.value.core.environment.matchMedia(props.value.renderer.detachedMediaQuery).matches;\n if (previousIsDetached !== isDetached.value) {\n update({});\n } else {\n requestAnimationFrame(setPanelPosition);\n }\n }, 20);\n props.value.core.environment.addEventListener('resize', onResize);\n return function () {\n props.value.core.environment.removeEventListener('resize', onResize);\n };\n });\n runEffect(function () {\n if (!isDetached.value) {\n return function () {};\n }\n function toggleModalClassname(isActive) {\n dom.value.detachedContainer.classList.toggle('aa-DetachedContainer--modal', isActive);\n }\n function onChange(event) {\n toggleModalClassname(event.matches);\n }\n var isModalDetachedMql = props.value.core.environment.matchMedia(getComputedStyle(props.value.core.environment.document.documentElement).getPropertyValue('--aa-detached-modal-media-query'));\n toggleModalClassname(isModalDetachedMql.matches);\n\n // Prior to Safari 14, `MediaQueryList` isn't based on `EventTarget`,\n // so we must use `addListener` and `removeListener` to observe media query lists.\n // See https://developer.mozilla.org/en-US/docs/Web/API/MediaQueryList/addListener\n var hasModernEventListener = Boolean(isModalDetachedMql.addEventListener);\n hasModernEventListener ? isModalDetachedMql.addEventListener('change', onChange) : isModalDetachedMql.addListener(onChange);\n return function () {\n hasModernEventListener ? isModalDetachedMql.removeEventListener('change', onChange) : isModalDetachedMql.removeListener(onChange);\n };\n });\n runEffect(function () {\n requestAnimationFrame(setPanelPosition);\n return function () {};\n });\n function destroy() {\n instancesCount--;\n cleanupEffects();\n }\n function update() {\n var updatedOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n cleanupEffects();\n var _props$value$renderer = props.value.renderer,\n components = _props$value$renderer.components,\n rendererProps = _objectWithoutProperties(_props$value$renderer, _excluded);\n optionsRef.current = mergeDeep(rendererProps, props.value.core, {\n // We need to filter out default components so they can be replaced with\n // a new `renderer`, without getting rid of user components.\n // @MAJOR Deal with registering components with the same name as the\n // default ones. If we disallow overriding default components, we'd just\n // need to pass all `components` here.\n components: pickBy(components, function (_ref4) {\n var value = _ref4.value;\n return !value.hasOwnProperty('__autocomplete_componentName');\n }),\n initialState: lastStateRef.current\n }, updatedOptions);\n runReactives();\n runEffects();\n autocomplete.value.refresh().then(function () {\n scheduleRender(lastStateRef.current);\n });\n }\n function setIsModalOpen(value) {\n var prevValue = props.value.core.environment.document.body.contains(dom.value.detachedOverlay);\n if (value === prevValue) {\n return;\n }\n if (value) {\n props.value.core.environment.document.body.appendChild(dom.value.detachedOverlay);\n props.value.core.environment.document.body.classList.add('aa-Detached');\n dom.value.input.focus();\n } else {\n props.value.core.environment.document.body.removeChild(dom.value.detachedOverlay);\n props.value.core.environment.document.body.classList.remove('aa-Detached');\n }\n }\n process.env.NODE_ENV !== 'production' ? warn(instancesCount === 0, \"Autocomplete doesn't support multiple instances running at the same time. Make sure to destroy the previous instance before creating a new one.\\n\\nSee: https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-js/autocomplete/#param-destroy\") : void 0;\n instancesCount++;\n return _objectSpread(_objectSpread({}, autocompleteScopeApi), {}, {\n update: update,\n destroy: destroy\n });\n}","export function createReactiveWrapper() {\n var reactives = [];\n return {\n reactive: function reactive(value) {\n var current = value();\n var reactive = {\n _fn: value,\n _ref: {\n current: current\n },\n get value() {\n return this._ref.current;\n },\n set value(value) {\n this._ref.current = value;\n }\n };\n reactives.push(reactive);\n return reactive;\n },\n runReactives: function runReactives() {\n reactives.forEach(function (value) {\n value._ref.current = value._fn();\n });\n }\n };\n}","export function createEffectWrapper() {\n var effects = [];\n var cleanups = [];\n function runEffect(fn) {\n effects.push(fn);\n var effectCleanup = fn();\n cleanups.push(effectCleanup);\n }\n return {\n runEffect: runEffect,\n cleanupEffects: function cleanupEffects() {\n var currentCleanups = cleanups;\n cleanups = [];\n currentCleanups.forEach(function (cleanup) {\n cleanup();\n });\n },\n runEffects: function runEffects() {\n var currentEffects = effects;\n effects = [];\n currentEffects.forEach(function (effect) {\n runEffect(effect);\n });\n }\n };\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { createAlgoliaRequester } from './createAlgoliaRequester';\n\n/**\n * Retrieves Algolia facet hits from multiple indices.\n */\nexport function getAlgoliaFacets(requestParams) {\n var requester = createAlgoliaRequester({\n transformResponse: function transformResponse(response) {\n return response.facetHits;\n }\n });\n var queries = requestParams.queries.map(function (query) {\n return _objectSpread(_objectSpread({}, query), {}, {\n type: 'facet'\n });\n });\n return requester(_objectSpread(_objectSpread({}, requestParams), {}, {\n queries: queries\n }));\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nexport function createRequester(fetcher, requesterId) {\n function execute(fetcherParams) {\n return fetcher({\n searchClient: fetcherParams.searchClient,\n queries: fetcherParams.requests.map(function (x) {\n return x.query;\n })\n }).then(function (responses) {\n return responses.map(function (response, index) {\n var _fetcherParams$reques = fetcherParams.requests[index],\n sourceId = _fetcherParams$reques.sourceId,\n transformResponse = _fetcherParams$reques.transformResponse;\n return {\n items: response,\n sourceId: sourceId,\n transformResponse: transformResponse\n };\n });\n });\n }\n return function createSpecifiedRequester(requesterParams) {\n return function requester(requestParams) {\n return _objectSpread(_objectSpread({\n requesterId: requesterId,\n execute: execute\n }, requesterParams), requestParams);\n };\n };\n}","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); }\nvar _excluded = [\"params\"];\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\nfunction _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.\"); }\nfunction _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); }\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\nfunction _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; }\nimport { userAgents as coreUserAgents, invariant } from '@algolia/autocomplete-shared';\nimport { HIGHLIGHT_PRE_TAG, HIGHLIGHT_POST_TAG } from '../constants';\nimport { getAppIdAndApiKey } from '../utils';\nexport function fetchAlgoliaResults(_ref) {\n var searchClient = _ref.searchClient,\n queries = _ref.queries,\n _ref$userAgents = _ref.userAgents,\n userAgents = _ref$userAgents === void 0 ? [] : _ref$userAgents;\n if (typeof searchClient.addAlgoliaAgent === 'function') {\n var algoliaAgents = [].concat(_toConsumableArray(coreUserAgents), _toConsumableArray(userAgents));\n algoliaAgents.forEach(function (_ref2) {\n var segment = _ref2.segment,\n version = _ref2.version;\n searchClient.addAlgoliaAgent(segment, version);\n });\n }\n var _getAppIdAndApiKey = getAppIdAndApiKey(searchClient),\n appId = _getAppIdAndApiKey.appId,\n apiKey = _getAppIdAndApiKey.apiKey;\n invariant(Boolean(appId), 'The Algolia `appId` was not accessible from the searchClient passed.');\n invariant(Boolean(apiKey), 'The Algolia `apiKey` was not accessible from the searchClient passed.');\n return searchClient.search(queries.map(function (searchParameters) {\n var params = searchParameters.params,\n headers = _objectWithoutProperties(searchParameters, _excluded);\n return _objectSpread(_objectSpread({}, headers), {}, {\n params: _objectSpread({\n hitsPerPage: 5,\n highlightPreTag: HIGHLIGHT_PRE_TAG,\n highlightPostTag: HIGHLIGHT_POST_TAG\n }, params)\n });\n })).then(function (response) {\n return response.results.map(function (result, resultIndex) {\n var _result$hits;\n return _objectSpread(_objectSpread({}, result), {}, {\n hits: (_result$hits = result.hits) === null || _result$hits === void 0 ? void 0 : _result$hits.map(function (hit) {\n return _objectSpread(_objectSpread({}, hit), {}, {\n // Bring support for the Insights plugin.\n __autocomplete_indexName: result.index || queries[resultIndex].indexName,\n __autocomplete_queryID: result.queryID,\n __autocomplete_algoliaCredentials: {\n appId: appId,\n apiKey: apiKey\n }\n });\n })\n });\n });\n });\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nimport { createRequester, fetchAlgoliaResults } from '@algolia/autocomplete-preset-algolia';\nimport { userAgents } from '../userAgents';\nexport var createAlgoliaRequester = createRequester(function (params) {\n return fetchAlgoliaResults(_objectSpread(_objectSpread({}, params), {}, {\n userAgents: userAgents\n }));\n}, 'algolia');","export function getAppIdAndApiKey(searchClient) {\n var _ref = searchClient.transporter || {},\n _ref$headers = _ref.headers,\n headers = _ref$headers === void 0 ? {} : _ref$headers,\n _ref$queryParameters = _ref.queryParameters,\n queryParameters = _ref$queryParameters === void 0 ? {} : _ref$queryParameters;\n var APP_ID = 'x-algolia-application-id';\n var API_KEY = 'x-algolia-api-key';\n var appId = headers[APP_ID] || queryParameters[APP_ID];\n var apiKey = headers[API_KEY] || queryParameters[API_KEY];\n return {\n appId: appId,\n apiKey: apiKey\n };\n}","import { createAlgoliaRequester } from './createAlgoliaRequester';\n\n/**\n * Retrieves Algolia results from multiple indices.\n */\nexport var getAlgoliaResults = createAlgoliaRequester({\n transformResponse: function transformResponse(response) {\n return response.hits;\n }\n});","import { version } from '@algolia/autocomplete-shared';\nexport var userAgents = [{\n segment: 'autocomplete-js',\n version: version\n}];","/** @jsxRuntime classic */\n/** @jsx createElement */\n\nexport function getTemplates(_ref) {\n var onTapAhead = _ref.onTapAhead;\n return {\n item: function item(_ref2) {\n var item = _ref2.item,\n createElement = _ref2.createElement,\n components = _ref2.components;\n if (item.__autocomplete_qsCategory) {\n return createElement(\"div\", {\n className: \"aa-ItemWrapper\"\n }, createElement(\"div\", {\n className: \"aa-ItemContent aa-ItemContent--indented\"\n }, createElement(\"div\", {\n className: \"aa-ItemContentSubtitle aa-ItemContentSubtitle--standalone\"\n }, createElement(\"span\", {\n className: \"aa-ItemContentSubtitleIcon\"\n }), createElement(\"span\", null, \"in\", ' ', createElement(\"span\", {\n className: \"aa-ItemContentSubtitleCategory\"\n }, item.__autocomplete_qsCategory)))));\n }\n return createElement(\"div\", {\n className: \"aa-ItemWrapper\"\n }, createElement(\"div\", {\n className: \"aa-ItemContent\"\n }, createElement(\"div\", {\n className: \"aa-ItemIcon aa-ItemIcon--noBorder\"\n }, createElement(\"svg\", {\n viewBox: \"0 0 24 24\",\n fill: \"currentColor\"\n }, createElement(\"path\", {\n d: \"M16.041 15.856c-0.034 0.026-0.067 0.055-0.099 0.087s-0.060 0.064-0.087 0.099c-1.258 1.213-2.969 1.958-4.855 1.958-1.933 0-3.682-0.782-4.95-2.050s-2.050-3.017-2.050-4.95 0.782-3.682 2.050-4.95 3.017-2.050 4.95-2.050 3.682 0.782 4.95 2.050 2.050 3.017 2.050 4.95c0 1.886-0.745 3.597-1.959 4.856zM21.707 20.293l-3.675-3.675c1.231-1.54 1.968-3.493 1.968-5.618 0-2.485-1.008-4.736-2.636-6.364s-3.879-2.636-6.364-2.636-4.736 1.008-6.364 2.636-2.636 3.879-2.636 6.364 1.008 4.736 2.636 6.364 3.879 2.636 6.364 2.636c2.125 0 4.078-0.737 5.618-1.968l3.675 3.675c0.391 0.391 1.024 0.391 1.414 0s0.391-1.024 0-1.414z\"\n }))), createElement(\"div\", {\n className: \"aa-ItemContentBody\"\n }, createElement(\"div\", {\n className: \"aa-ItemContentTitle\"\n }, createElement(components.ReverseHighlight, {\n hit: item,\n attribute: \"query\"\n })))), createElement(\"div\", {\n className: \"aa-ItemActions\"\n }, createElement(\"button\", {\n className: \"aa-ItemActionButton\",\n title: \"Fill query with \\\"\".concat(item.query, \"\\\"\"),\n onClick: function onClick(event) {\n event.preventDefault();\n event.stopPropagation();\n onTapAhead(item);\n }\n }, createElement(\"svg\", {\n viewBox: \"0 0 24 24\",\n fill: \"currentColor\"\n }, createElement(\"path\", {\n 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 })))));\n }\n };\n}","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); }\nfunction 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; }\nfunction _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; }\nfunction _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; }\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return _typeof(key) === \"symbol\" ? key : String(key); }\nfunction _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); }\nfunction _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }\nfunction _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); }\nfunction _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; }\nimport { getAlgoliaResults } from '@algolia/autocomplete-js';\nimport { getAttributeValueByPath } from '@algolia/autocomplete-shared';\nimport { getTemplates } from './getTemplates';\nexport function createQuerySuggestionsPlugin(options) {\n var _getOptions = getOptions(options),\n searchClient = _getOptions.searchClient,\n indexName = _getOptions.indexName,\n getSearchParams = _getOptions.getSearchParams,\n transformSource = _getOptions.transformSource,\n categoryAttribute = _getOptions.categoryAttribute,\n itemsWithCategories = _getOptions.itemsWithCategories,\n categoriesPerItem = _getOptions.categoriesPerItem;\n return {\n name: 'aa.querySuggestionsPlugin',\n getSources: function getSources(_ref) {\n var query = _ref.query,\n setQuery = _ref.setQuery,\n refresh = _ref.refresh,\n state = _ref.state;\n function onTapAhead(item) {\n setQuery(\"\".concat(item.query, \" \"));\n refresh();\n }\n return [transformSource({\n source: {\n sourceId: 'querySuggestionsPlugin',\n getItemInputValue: function getItemInputValue(_ref2) {\n var item = _ref2.item;\n return item.query;\n },\n getItems: function getItems() {\n return getAlgoliaResults({\n searchClient: searchClient,\n queries: [{\n indexName: indexName,\n query: query,\n params: getSearchParams({\n state: state\n })\n }],\n transformResponse: function transformResponse(_ref3) {\n var hits = _ref3.hits;\n var querySuggestionsHits = hits[0];\n if (!query || !categoryAttribute) {\n return querySuggestionsHits;\n }\n var itemsWithCategoriesAdded = 0;\n return querySuggestionsHits.reduce(function (acc, current) {\n var items = [current];\n if (itemsWithCategoriesAdded < itemsWithCategories) {\n var categories = (getAttributeValueByPath(current, Array.isArray(categoryAttribute) ? categoryAttribute : [categoryAttribute]) || []).map(function (x) {\n return x.value;\n }).slice(0, categoriesPerItem);\n if (categories.length > 0) {\n itemsWithCategoriesAdded++;\n }\n var _iterator = _createForOfIteratorHelper(categories),\n _step;\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var category = _step.value;\n items.push(_objectSpread({\n __autocomplete_qsCategory: category\n }, current));\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n }\n acc.push.apply(acc, items);\n return acc;\n }, []);\n }\n });\n },\n templates: getTemplates({\n onTapAhead: onTapAhead\n })\n },\n onTapAhead: onTapAhead,\n state: state\n })];\n },\n __autocomplete_pluginOptions: options\n };\n}\nfunction getOptions(options) {\n return _objectSpread({\n getSearchParams: function getSearchParams() {\n return {};\n },\n transformSource: function transformSource(_ref4) {\n var source = _ref4.source;\n return source;\n },\n itemsWithCategories: 1,\n categoriesPerItem: 1\n }, options);\n}","export var HIGHLIGHT_PRE_TAG = '__aa-highlight__';\nexport var HIGHLIGHT_POST_TAG = '__/aa-highlight__';","export function getAttributeValueByPath(record, path) {\n return path.reduce(function (current, key) {\n return current && current[key];\n }, record);\n}","/**\n * Throws an error if the condition is not met in development mode.\n * This is used to make development a better experience to provide guidance as\n * to where the error comes from.\n */\nexport function invariant(condition, message) {\n if (!(process.env.NODE_ENV !== 'production')) {\n return;\n }\n if (!condition) {\n throw new Error(\"[Autocomplete] \".concat(typeof message === 'function' ? message() : message));\n }\n}","import { version } from './version';\nexport var userAgents = [{\n segment: 'autocomplete-core',\n version: version\n}];","export var version = '1.15.1';","/*! algoliasearch.umd.js | 4.22.1 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=t||self).algoliasearch=e()}(this,(function(){\"use strict\";function t(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function e(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function r(r){for(var n=1;n=0||(a[r]=t[r]);return a}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}function a(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if(!(Symbol.iterator in Object(t)||\"[object Arguments]\"===Object.prototype.toString.call(t)))return;var r=[],n=!0,a=!1,o=void 0;try{for(var i,u=t[Symbol.iterator]();!(n=(i=u.next()).done)&&(r.push(i.value),!e||r.length!==e);n=!0);}catch(t){a=!0,o=t}finally{try{n||null==u.return||u.return()}finally{if(a)throw o}}return r}(t,e)||function(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}()}function o(t){return function(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){u();var e=JSON.stringify(t);return o()[e]})).then((function(t){return Promise.all([t?t.value:e(),void 0!==t])})).then((function(t){var e=a(t,2),n=e[0],o=e[1];return Promise.all([n,o||r.miss(n)])})).then((function(t){return a(t,1)[0]}))},set:function(t,e){return Promise.resolve().then((function(){var a=o();return a[JSON.stringify(t)]={timestamp:(new Date).getTime(),value:e},n().setItem(r,JSON.stringify(a)),e}))},delete:function(t){return Promise.resolve().then((function(){var e=o();delete e[JSON.stringify(t)],n().setItem(r,JSON.stringify(e))}))},clear:function(){return Promise.resolve().then((function(){n().removeItem(r)}))}}}function u(t){var e=o(t.caches),r=e.shift();return void 0===r?{get:function(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},n=e();return n.then((function(t){return Promise.all([t,r.miss(t)])})).then((function(t){return a(t,1)[0]}))},set:function(t,e){return Promise.resolve(e)},delete:function(t){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(t,n){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return r.get(t,n,a).catch((function(){return u({caches:e}).get(t,n,a)}))},set:function(t,n){return r.set(t,n).catch((function(){return u({caches:e}).set(t,n)}))},delete:function(t){return r.delete(t).catch((function(){return u({caches:e}).delete(t)}))},clear:function(){return r.clear().catch((function(){return u({caches:e}).clear()}))}}}function s(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},e={};return{get:function(r,n){var a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},o=JSON.stringify(r);if(o in e)return Promise.resolve(t.serializable?JSON.parse(e[o]):e[o]);var i=n(),u=a&&a.miss||function(){return Promise.resolve()};return i.then((function(t){return u(t)})).then((function(){return i}))},set:function(r,n){return e[JSON.stringify(r)]=t.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete:function(t){return delete e[JSON.stringify(t)],Promise.resolve()},clear:function(){return e={},Promise.resolve()}}}function c(t,e,r){var n={\"x-algolia-api-key\":r,\"x-algolia-application-id\":e};return{headers:function(){return t===m.WithinHeaders?n:{}},queryParameters:function(){return t===m.WithinQueryParameters?n:{}}}}function f(t){var e=0;return t((function r(){return e++,new Promise((function(n){setTimeout((function(){n(t(r))}),Math.min(100*e,1e3))}))}))}function d(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(t,e){return Promise.resolve()};return Object.assign(t,{wait:function(r){return d(t.then((function(t){return Promise.all([e(t,r),t])})).then((function(t){return t[1]})))}})}function l(t){for(var e=t.length-1;e>0;e--){var r=Math.floor(Math.random()*(e+1)),n=t[e];t[e]=t[r],t[r]=n}return t}function p(t,e){return e?(Object.keys(e).forEach((function(r){t[r]=e[r](t)})),t):t}function h(t){for(var e=arguments.length,r=new Array(e>1?e-1:0),n=1;n0?n:void 0,timeout:r.timeout||e,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var g={Read:1,Write:2,Any:3},v=1,b=2,O=3;function P(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:v;return r(r({},t),{},{status:e,lastUpdate:Date.now()})}function w(t){return\"string\"==typeof t?{protocol:\"https\",url:t,accept:g.Any}:{protocol:t.protocol||\"https\",url:t.url,accept:t.accept||g.Any}}var I=\"DELETE\",j=\"GET\",x=\"POST\",D=\"PUT\";function q(t,e){return Promise.all(e.map((function(e){return t.get(e,(function(){return Promise.resolve(P(e))}))}))).then((function(t){var r=t.filter((function(t){return function(t){return t.status===v||Date.now()-t.lastUpdate>12e4}(t)})),n=t.filter((function(t){return function(t){return t.status===O&&Date.now()-t.lastUpdate<=12e4}(t)})),a=[].concat(o(r),o(n));return{getTimeout:function(t,e){return(0===n.length&&0===t?1:n.length+3+t)*e},statelessHosts:a.length>0?a.map((function(t){return w(t)})):e}}))}function S(t,e,n,a){var i=[],u=function(t,e){if(t.method===j||void 0===t.data&&void 0===e.data)return;var n=Array.isArray(t.data)?t.data:r(r({},t.data),e.data);return JSON.stringify(n)}(n,a),s=function(t,e){var n=r(r({},t.headers),e.headers),a={};return Object.keys(n).forEach((function(t){var e=n[t];a[t.toLowerCase()]=e})),a}(t,a),c=n.method,f=n.method!==j?{}:r(r({},n.data),a.data),d=r(r(r({\"x-algolia-agent\":t.userAgent.value},t.queryParameters),f),a.queryParameters),l=0,p=function e(r,o){var f=r.pop();if(void 0===f)throw{name:\"RetryError\",message:\"Unreachable hosts - your application id may be incorrect. If the error persists, contact support@algolia.com.\",transporterStackTrace:R(i)};var p={data:u,headers:s,method:c,url:N(f,n.path,d),connectTimeout:o(l,t.timeouts.connect),responseTimeout:o(l,a.timeout)},h=function(t){var e={request:p,response:t,host:f,triesLeft:r.length};return i.push(e),e},m={onSuccess:function(t){return function(t){try{return JSON.parse(t.content)}catch(e){throw function(t,e){return{name:\"DeserializationError\",message:t,response:e}}(e.message,t)}}(t)},onRetry:function(n){var a=h(n);return n.isTimedOut&&l++,Promise.all([t.logger.info(\"Retryable failure\",A(a)),t.hostsCache.set(f,P(f,n.isTimedOut?O:b))]).then((function(){return e(r,o)}))},onFail:function(t){throw h(t),function(t,e){var r=t.content,n=t.status,a=r;try{a=JSON.parse(r).message}catch(t){}return function(t,e,r){return{name:\"ApiError\",message:t,status:e,transporterStackTrace:r}}(a,n,e)}(t,R(i))}};return t.requester.send(p).then((function(t){return function(t,e){return function(t){var e=t.status;return t.isTimedOut||function(t){var e=t.isTimedOut,r=t.status;return!e&&0==~~r}(t)||2!=~~(e/100)&&4!=~~(e/100)}(t)?e.onRetry(t):2==~~(t.status/100)?e.onSuccess(t):e.onFail(t)}(t,m)}))};return q(t.hostsCache,e).then((function(t){return p(o(t.statelessHosts).reverse(),t.getTimeout)}))}function k(t){var e=t.hostsCache,r=t.logger,n=t.requester,o=t.requestsCache,i=t.responsesCache,u=t.timeouts,s=t.userAgent,c=t.hosts,f=t.queryParameters,d={hostsCache:e,logger:r,requester:n,requestsCache:o,responsesCache:i,timeouts:u,userAgent:s,headers:t.headers,queryParameters:f,hosts:c.map((function(t){return w(t)})),read:function(t,e){var r=y(e,d.timeouts.read),n=function(){return S(d,d.hosts.filter((function(t){return 0!=(t.accept&g.Read)})),t,r)};if(!0!==(void 0!==r.cacheable?r.cacheable:t.cacheable))return n();var o={request:t,mappedRequestOptions:r,transporter:{queryParameters:d.queryParameters,headers:d.headers}};return d.responsesCache.get(o,(function(){return d.requestsCache.get(o,(function(){return d.requestsCache.set(o,n()).then((function(t){return Promise.all([d.requestsCache.delete(o),t])}),(function(t){return Promise.all([d.requestsCache.delete(o),Promise.reject(t)])})).then((function(t){var e=a(t,2);e[0];return e[1]}))}))}),{miss:function(t){return d.responsesCache.set(o,t)}})},write:function(t,e){return S(d,d.hosts.filter((function(t){return 0!=(t.accept&g.Write)})),t,y(e,d.timeouts.write))}};return d}function T(t){var e={value:\"Algolia for JavaScript (\".concat(t,\")\"),add:function(t){var r=\"; \".concat(t.segment).concat(void 0!==t.version?\" (\".concat(t.version,\")\"):\"\");return-1===e.value.indexOf(r)&&(e.value=\"\".concat(e.value).concat(r)),e}};return e}function N(t,e,r){var n=E(r),a=\"\".concat(t.protocol,\"://\").concat(t.url,\"/\").concat(\"/\"===e.charAt(0)?e.substr(1):e);return n.length&&(a+=\"?\".concat(n)),a}function E(t){return Object.keys(t).map((function(e){return h(\"%s=%s\",e,(r=t[e],\"[object Object]\"===Object.prototype.toString.call(r)||\"[object Array]\"===Object.prototype.toString.call(r)?JSON.stringify(t[e]):t[e]));var r})).join(\"&\")}function R(t){return t.map((function(t){return A(t)}))}function A(t){var e=t.request.headers[\"x-algolia-api-key\"]?{\"x-algolia-api-key\":\"*****\"}:{};return r(r({},t),{},{request:r(r({},t.request),{},{headers:r(r({},t.request.headers),e)})})}var C=function(t){return function(e,r){return t.transporter.write({method:x,path:\"2/abtests\",data:e},r)}},U=function(t){return function(e,r){return t.transporter.write({method:I,path:h(\"2/abtests/%s\",e)},r)}},z=function(t){return function(e,r){return t.transporter.read({method:j,path:h(\"2/abtests/%s\",e)},r)}},J=function(t){return function(e){return t.transporter.read({method:j,path:\"2/abtests\"},e)}},F=function(t){return function(e,r){return t.transporter.write({method:x,path:h(\"2/abtests/%s/stop\",e)},r)}},H=function(t){return function(e){return t.transporter.read({method:j,path:\"1/strategies/personalization\"},e)}},M=function(t){return function(e,r){return t.transporter.write({method:x,path:\"1/strategies/personalization\",data:e},r)}};function K(t){return function e(r){return t.request(r).then((function(n){if(void 0!==t.batch&&t.batch(n.hits),!t.shouldStop(n))return n.cursor?e({cursor:n.cursor}):e({page:(r.page||0)+1})}))}({})}var W=function(t){return function(e,a){var o=a||{},i=o.queryParameters,u=n(o,[\"queryParameters\"]),s=r({acl:e},void 0!==i?{queryParameters:i}:{});return d(t.transporter.write({method:x,path:\"1/keys\",data:s},u),(function(e,r){return f((function(n){return tt(t)(e.key,r).catch((function(t){if(404!==t.status)throw t;return n()}))}))}))}},B=function(t){return function(e,r,n){var a=y(n);return a.queryParameters[\"X-Algolia-User-ID\"]=e,t.transporter.write({method:x,path:\"1/clusters/mapping\",data:{cluster:r}},a)}},Q=function(t){return function(e,r,n){return t.transporter.write({method:x,path:\"1/clusters/mapping/batch\",data:{users:e,cluster:r}},n)}},G=function(t){return function(e,r){return d(t.transporter.write({method:x,path:h(\"/1/dictionaries/%s/batch\",e),data:{clearExistingDictionaryEntries:!0,requests:{action:\"addEntry\",body:[]}}},r),(function(e,r){return xt(t)(e.taskID,r)}))}},L=function(t){return function(e,r,n){return d(t.transporter.write({method:x,path:h(\"1/indexes/%s/operation\",e),data:{operation:\"copy\",destination:r}},n),(function(r,n){return ut(t)(e,{methods:{waitTask:de}}).waitTask(r.taskID,n)}))}},V=function(t){return function(e,n,a){return L(t)(e,n,r(r({},a),{},{scope:[pe.Rules]}))}},_=function(t){return function(e,n,a){return L(t)(e,n,r(r({},a),{},{scope:[pe.Settings]}))}},X=function(t){return function(e,n,a){return L(t)(e,n,r(r({},a),{},{scope:[pe.Synonyms]}))}},Y=function(t){return function(e,r){return e.method===j?t.transporter.read(e,r):t.transporter.write(e,r)}},Z=function(t){return function(e,r){return d(t.transporter.write({method:I,path:h(\"1/keys/%s\",e)},r),(function(r,n){return f((function(r){return tt(t)(e,n).then(r).catch((function(t){if(404!==t.status)throw t}))}))}))}},$=function(t){return function(e,r,n){var a=r.map((function(t){return{action:\"deleteEntry\",body:{objectID:t}}}));return d(t.transporter.write({method:x,path:h(\"/1/dictionaries/%s/batch\",e),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(function(e,r){return xt(t)(e.taskID,r)}))}},tt=function(t){return function(e,r){return t.transporter.read({method:j,path:h(\"1/keys/%s\",e)},r)}},et=function(t){return function(e,r){return t.transporter.read({method:j,path:h(\"1/task/%s\",e.toString())},r)}},rt=function(t){return function(e){return t.transporter.read({method:j,path:\"/1/dictionaries/*/settings\"},e)}},nt=function(t){return function(e){return t.transporter.read({method:j,path:\"1/logs\"},e)}},at=function(t){return function(e){return t.transporter.read({method:j,path:\"1/clusters/mapping/top\"},e)}},ot=function(t){return function(e,r){return t.transporter.read({method:j,path:h(\"1/clusters/mapping/%s\",e)},r)}},it=function(t){return function(e){var r=e||{},a=r.retrieveMappings,o=n(r,[\"retrieveMappings\"]);return!0===a&&(o.getClusters=!0),t.transporter.read({method:j,path:\"1/clusters/mapping/pending\"},o)}},ut=function(t){return function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={transporter:t.transporter,appId:t.appId,indexName:e};return p(n,r.methods)}},st=function(t){return function(e){return t.transporter.read({method:j,path:\"1/keys\"},e)}},ct=function(t){return function(e){return t.transporter.read({method:j,path:\"1/clusters\"},e)}},ft=function(t){return function(e){return t.transporter.read({method:j,path:\"1/indexes\"},e)}},dt=function(t){return function(e){return t.transporter.read({method:j,path:\"1/clusters/mapping\"},e)}},lt=function(t){return function(e,r,n){return d(t.transporter.write({method:x,path:h(\"1/indexes/%s/operation\",e),data:{operation:\"move\",destination:r}},n),(function(r,n){return ut(t)(e,{methods:{waitTask:de}}).waitTask(r.taskID,n)}))}},pt=function(t){return function(e,r){return d(t.transporter.write({method:x,path:\"1/indexes/*/batch\",data:{requests:e}},r),(function(e,r){return Promise.all(Object.keys(e.taskID).map((function(n){return ut(t)(n,{methods:{waitTask:de}}).waitTask(e.taskID[n],r)})))}))}},ht=function(t){return function(e,r){return t.transporter.read({method:x,path:\"1/indexes/*/objects\",data:{requests:e}},r)}},mt=function(t){return function(e,n){var a=e.map((function(t){return r(r({},t),{},{params:E(t.params||{})})}));return t.transporter.read({method:x,path:\"1/indexes/*/queries\",data:{requests:a},cacheable:!0},n)}},yt=function(t){return function(e,a){return Promise.all(e.map((function(e){var o=e.params,i=o.facetName,u=o.facetQuery,s=n(o,[\"facetName\",\"facetQuery\"]);return ut(t)(e.indexName,{methods:{searchForFacetValues:ue}}).searchForFacetValues(i,u,r(r({},a),s))})))}},gt=function(t){return function(e,r){var n=y(r);return n.queryParameters[\"X-Algolia-User-ID\"]=e,t.transporter.write({method:I,path:\"1/clusters/mapping\"},n)}},vt=function(t){return function(e,r,n){var a=r.map((function(t){return{action:\"addEntry\",body:t}}));return d(t.transporter.write({method:x,path:h(\"/1/dictionaries/%s/batch\",e),data:{clearExistingDictionaryEntries:!0,requests:a}},n),(function(e,r){return xt(t)(e.taskID,r)}))}},bt=function(t){return function(e,r){return d(t.transporter.write({method:x,path:h(\"1/keys/%s/restore\",e)},r),(function(r,n){return f((function(r){return tt(t)(e,n).catch((function(t){if(404!==t.status)throw t;return r()}))}))}))}},Ot=function(t){return function(e,r,n){var a=r.map((function(t){return{action:\"addEntry\",body:t}}));return d(t.transporter.write({method:x,path:h(\"/1/dictionaries/%s/batch\",e),data:{clearExistingDictionaryEntries:!1,requests:a}},n),(function(e,r){return xt(t)(e.taskID,r)}))}},Pt=function(t){return function(e,r,n){return t.transporter.read({method:x,path:h(\"/1/dictionaries/%s/search\",e),data:{query:r},cacheable:!0},n)}},wt=function(t){return function(e,r){return t.transporter.read({method:x,path:\"1/clusters/mapping/search\",data:{query:e}},r)}},It=function(t){return function(e,r){return d(t.transporter.write({method:D,path:\"/1/dictionaries/*/settings\",data:e},r),(function(e,r){return xt(t)(e.taskID,r)}))}},jt=function(t){return function(e,r){var a=Object.assign({},r),o=r||{},i=o.queryParameters,u=n(o,[\"queryParameters\"]),s=i?{queryParameters:i}:{},c=[\"acl\",\"indexes\",\"referers\",\"restrictSources\",\"queryParameters\",\"description\",\"maxQueriesPerIPPerHour\",\"maxHitsPerQuery\"];return d(t.transporter.write({method:D,path:h(\"1/keys/%s\",e),data:s},u),(function(r,n){return f((function(r){return tt(t)(e,n).then((function(t){return function(t){return Object.keys(a).filter((function(t){return-1!==c.indexOf(t)})).every((function(e){if(Array.isArray(t[e])&&Array.isArray(a[e])){var r=t[e];return r.length===a[e].length&&r.every((function(t,r){return t===a[e][r]}))}return t[e]===a[e]}))}(t)?Promise.resolve():r()}))}))}))}},xt=function(t){return function(e,r){return f((function(n){return et(t)(e,r).then((function(t){return\"published\"!==t.status?n():void 0}))}))}},Dt=function(t){return function(e,r){return d(t.transporter.write({method:x,path:h(\"1/indexes/%s/batch\",t.indexName),data:{requests:e}},r),(function(e,r){return de(t)(e.taskID,r)}))}},qt=function(t){return function(e){return K(r(r({shouldStop:function(t){return void 0===t.cursor}},e),{},{request:function(r){return t.transporter.read({method:x,path:h(\"1/indexes/%s/browse\",t.indexName),data:r},e)}}))}},St=function(t){return function(e){var n=r({hitsPerPage:1e3},e);return K(r(r({shouldStop:function(t){return t.hits.length0&&void 0!==arguments[0]?arguments[0]:0,c=[];for(a=o;a=t.nbPages)throw{name:\"ObjectNotFoundError\",message:\"Object not found.\"};return n()}))}()}},Wt=function(t){return function(e,r){return t.transporter.read({method:j,path:h(\"1/indexes/%s/%s\",t.indexName,e)},r)}},Bt=function(){return function(t,e){for(var r=0,n=Object.entries(t.hits);rr.OPENED&&void 0===n&&(clearTimeout(o),n=a(t.responseTimeout,\"Socket timeout\"))},r.onerror=function(){0===r.status&&(clearTimeout(o),clearTimeout(n),e({content:r.responseText||\"Network request failed\",status:r.status,isTimedOut:!1}))},r.onload=function(){clearTimeout(o),clearTimeout(n),e({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(t.data)}))}},logger:(a=ye,{debug:function(t,e){return he>=a&&console.debug(t,e),Promise.resolve()},info:function(t,e){return me>=a&&console.info(t,e),Promise.resolve()},error:function(t,e){return console.error(t,e),Promise.resolve()}}),responsesCache:s(),requestsCache:s({serializable:!1}),hostsCache:u({caches:[i({key:\"\".concat(\"4.22.1\",\"-\").concat(t)}),s()]}),userAgent:T(\"4.22.1\").add({segment:\"Browser\"})},f=r(r({},o),n),d=function(){return function(t){return function(t){var e=t.region||\"us\",n=c(m.WithinHeaders,t.appId,t.apiKey),a=k(r(r({hosts:[{url:\"personalization.\".concat(e,\".algolia.com\")}]},t),{},{headers:r(r(r({},n.headers()),{\"content-type\":\"application/json\"}),t.headers),queryParameters:r(r({},n.queryParameters()),t.queryParameters)}));return p({appId:t.appId,transporter:a},t.methods)}(r(r(r({},o),t),{},{methods:{getPersonalizationStrategy:H,setPersonalizationStrategy:M}}))}};return function(t){var e=t.appId,n=c(void 0!==t.authMode?t.authMode:m.WithinHeaders,e,t.apiKey),a=k(r(r({hosts:[{url:\"\".concat(e,\"-dsn.algolia.net\"),accept:g.Read},{url:\"\".concat(e,\".algolia.net\"),accept:g.Write}].concat(l([{url:\"\".concat(e,\"-1.algolianet.com\")},{url:\"\".concat(e,\"-2.algolianet.com\")},{url:\"\".concat(e,\"-3.algolianet.com\")}]))},t),{},{headers:r(r(r({},n.headers()),{\"content-type\":\"application/x-www-form-urlencoded\"}),t.headers),queryParameters:r(r({},n.queryParameters()),t.queryParameters)}));return p({transporter:a,appId:e,addAlgoliaAgent:function(t,e){a.userAgent.add({segment:t,version:e})},clearCache:function(){return Promise.all([a.requestsCache.clear(),a.responsesCache.clear()]).then((function(){}))}},t.methods)}(r(r({},f),{},{methods:{search:mt,searchForFacetValues:yt,multipleBatch:pt,multipleGetObjects:ht,multipleQueries:mt,copyIndex:L,copySettings:_,copySynonyms:X,copyRules:V,moveIndex:lt,listIndices:ft,getLogs:nt,listClusters:ct,multipleSearchForFacetValues:yt,getApiKey:tt,addApiKey:W,listApiKeys:st,updateApiKey:jt,deleteApiKey:Z,restoreApiKey:bt,assignUserID:B,assignUserIDs:Q,getUserID:ot,searchUserIDs:wt,listUserIDs:dt,getTopUserIDs:at,removeUserID:gt,hasPendingMappings:it,clearDictionaryEntries:G,deleteDictionaryEntries:$,getDictionarySettings:rt,getAppTask:et,replaceDictionaryEntries:vt,saveDictionaryEntries:Ot,searchDictionaryEntries:Pt,setDictionarySettings:It,waitAppTask:xt,customRequest:Y,initIndex:function(t){return function(e){return ut(t)(e,{methods:{batch:Dt,delete:Ct,findAnswers:Mt,getObject:Wt,getObjects:Qt,saveObject:te,saveObjects:ee,search:ie,searchForFacetValues:ue,waitTask:de,setSettings:fe,getSettings:Lt,partialUpdateObject:_t,partialUpdateObjects:Xt,deleteObject:Ut,deleteObjects:zt,deleteBy:At,clearObjects:Nt,browseObjects:qt,getObjectPosition:Bt,findObject:Kt,exists:Ht,saveSynonym:ae,saveSynonyms:oe,getSynonym:Vt,searchSynonyms:ce,browseSynonyms:kt,deleteSynonym:Ft,clearSynonyms:Rt,replaceAllObjects:Yt,replaceAllSynonyms:$t,searchRules:se,getRule:Gt,deleteRule:Jt,saveRule:re,saveRules:ne,replaceAllRules:Zt,browseRules:St,clearRules:Et}})}},initAnalytics:function(){return function(t){return function(t){var e=t.region||\"us\",n=c(m.WithinHeaders,t.appId,t.apiKey),a=k(r(r({hosts:[{url:\"analytics.\".concat(e,\".algolia.com\")}]},t),{},{headers:r(r(r({},n.headers()),{\"content-type\":\"application/json\"}),t.headers),queryParameters:r(r({},n.queryParameters()),t.queryParameters)}));return p({appId:t.appId,transporter:a},t.methods)}(r(r(r({},o),t),{},{methods:{addABTest:C,getABTest:z,getABTests:J,stopABTest:F,deleteABTest:U}}))}},initPersonalization:d,initRecommendation:function(){return function(t){return f.logger.info(\"The `initRecommendation` method is deprecated. Use `initPersonalization` instead.\"),d()(t)}}}}))}return ge.version=\"4.22.1\",ge}));\n","\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:!0});var version=\"2.13.0\";function extractAdditionalParams(e){return e.reduce(function(e,t){var n=e.events,e=e.additionalParams;return\"index\"in t?{additionalParams:e,events:n.concat([t])}:{events:n,additionalParams:t}},{events:[],additionalParams:void 0})}var supportsCookies=function(){try{return Boolean(navigator.cookieEnabled)}catch(e){return!1}},supportsSendBeacon=function(){try{return Boolean(navigator.sendBeacon)}catch(e){return!1}},supportsXMLHttpRequest=function(){try{return Boolean(XMLHttpRequest)}catch(e){return!1}},supportsNativeFetch=function(){try{return void 0!==fetch}catch(e){return!1}},isUndefined=function(e){return void 0===e},isNumber=function(e){return\"number\"==typeof e},isFunction=function(e){return\"function\"==typeof e};function getFunctionalInterface(i){return function(e){for(var t=[],n=arguments.length-1;0 {\n if (key !== \"default\") {\n module.exports[key] = aa[key];\n }\n});\n"],"names":["debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","createRef","initialValue","current","isPrimitive","obj","Object","isEqual","first","second","keys","_i","_Object$keys","key","noop","createClickedEvent","_ref","item","_ref$items","items","index","__autocomplete_indexName","positions","findIndex","x","objectID","queryID","__autocomplete_queryID","algoliaSource","_arrayLikeToArray","arr","len","i","arr2","_excluded","_excluded2","_typeof","Symbol","iterator","constructor","prototype","_toConsumableArray","isArray","_arrayWithoutHoles","iter","from","_iterableToArray","o","minLen","n","toString","call","slice","name","test","TypeError","_nonIterableSpread","_objectWithoutProperties","source","excluded","target","sourceKeys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","ownKeys","object","enumerableOnly","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","arg","input","hint","prim","toPrimitive","res","String","_toPrimitive","_toPropertyKey","configurable","writable","mapToInsightsParamsApi","params","map","param","objectIDs","_ref2","createSearchInsightsApi","searchInsights","_split$map2","major","minor","canSendHeaders","version","split","Number","_arrayWithHoles","_s","_e","_x","_r","_arr","_n","_d","next","done","err","return","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","headers","appId","apiKey","concat","init","setAuthenticatedUserToken","authenticatedUserToken","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","reduce","acc","_ref3","chunkSize","chunks","chunk","_ref4","payload","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","state","insightsEvents","event","eventName","createAlgoliaInsightsPlugin","options","_getOptions","_ref8","getAlgoliaSources","context","onSelect","_ref9","onActive","__autocomplete_clickAnalytics","getOptions","providedInsightsClient","insightsClient","insightsInitParams","onSelectEvent","onActiveEvent","window","pointer","AlgoliaAnalyticsObject","queue","environment","errorMessage","script","document","createElement","async","src","onerror","console","error","body","appendChild","cause","loadInsights","callback","partial","previousItems","debouncedOnStateChange","isOpen","collections","subscribe","setContext","isAuthenticatedToken","setInsightsContext","algoliaInsightsPlugin","__algoliaSearchParameters","clickAnalytics","normalizeUserToken","_error","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions","_context$algoliaInsig","__automaticInsights","flatten","values","a","b","getItemsCount","sum","collection","autocompleteId","generateAutocompleteId","decycle","Set","getDefaultProps","props","pluginSubscribers","_props$id","plugins","debug","openOnFocus","enterKeyHint","ignoreCompositionEvents","placeholder","autoFocus","defaultActiveItemId","stallThreshold","shouldPanelOpen","reshape","sources","id","initialState","activeItemId","query","completion","status","_props$onStateChange","_x$onStateChange","onSubmit","_props$onSubmit","_x$onSubmit","onReset","_props$onReset","_x$onReset","getSources","Promise","all","plugin","Boolean","seenSourceIds","resolve","then","invariant","JSON","stringify","maybeSource","sourceId","includes","Error","defaultSource","getItemInputValue","getItemUrl","setIsOpen","onResolve","__default","normalizedSource","getNormalizedSources","nested","_x$onSelect","_x$onActive","_x$onResolve","navigator","navigate","itemUrl","location","assign","navigateNewTab","windowReference","open","focus","navigateNewWindow","isDescription","execute","searchClient","requesterId","requests","container","find","_container$items","request","maybeDescription","responses","createInternalCancelablePromise","promise","onfulfilled","onrejected","createCallback","catch","finally","onfinally","onCancelList","cancel","isCanceled","callbacks","createCancelablePromise","executor","reject","cancelable","onResult","fallback","getActiveItem","collectionIndex","collectionsCount","nextValue","getCollectionFromActiveItemId","isOffsetFound","counter","previousItemsOffset","currentCollection","getRelativeActiveItemId","itemInputValue","reason","basePromiseId","latestResolvedId","latestResolvedValue","lastStalledId","runConcurrentSafePromise","currentPromiseId","onInput","_ref$nextState","nextState","refresh","store","setters","setCollections","setQuery","setActiveItemId","setStatus","_nextState$isOpen","getState","_request","pendingRequests","add","itemsOrDescription","description","contextParameters","_state$context$key","queries","transformResponse","preResolve","_store$getState$conte","some","_automaticInsights","rawResults","matches","response","results","transform","hits","result","facetHits","_facetHits","facetHit","label","count","_highlightResult","highlighted","every","postResolve","originalSourcesBySourceId","sourcesBySourceId","_nextState$isOpen2","isPanelOpen","highlightedItem","getAutocompleteElementId","autocompleteInstanceId","elementId","join","replace","regex","getNativeEvent","nativeEvent","_excluded3","_excluded4","_excluded5","_excluded6","getPropGetters","getEnvironmentProps","providedProps","inputElement","formElement","panelElement","onMouseDownOrTouchStart","isEmpty","contextNode","parent","child","contains","dispatch","cancelAll","onTouchStart","onMouseDown","onTouchMove","activeElement","blur","getRootProps","rest","role","getFormProps","action","noValidate","_providedProps$inputE","preventDefault","_providedProps$inputE2","getLabelProps","htmlFor","getInputProps","_props$environment$na","onFocus","userAgent","_ref3$maxLength","maxLength","activeItem","shouldFallbackKeyHint","match","autoComplete","autoCorrect","autoCapitalize","spellCheck","type","onChange","currentTarget","isComposing","onCompositionEnd","onKeyDown","triggerScrollIntoView","nodeItem","getElementById","scrollIntoViewIfNeeded","scrollIntoView","triggerOnActive","nextActiveItemId","metaKey","ctrlKey","shiftKey","altKey","onBlur","onClick","getPanelProps","onMouseLeave","getListProps","getItemProps","__autocomplete_id","onMouseMove","_item","_source","getMetadata","_","_options$__autocomple","_options$__autocomple2","_options$__autocomple3","optionsKey","__autocomplete_metadata","userAgents","segment","extraOptions","ua","getCompletion","_getActiveItem","getNextActiveItemId","moveAmount","baseIndex","itemCount","numericIndex","stateReducer","hasOwnProperty","_nextState","createAutocomplete","subscribers","reducer","onStoreStateChange","list","prevState","cancelablePromise","createStore","_state$context","_state$context$algoli","isAlgoliaInsightsPluginEnabled","subscribePlugins","rawValue","baseItemId","getAutocompleteSetters","propGetters","Event","_plugin$subscribe","insightsParams","_environment$navigato","_environment$navigato2","metadata","metadataContainer","headRef","querySelector","content","injectMetadata","t","s","r","e","u","h","p","Map","get","this","set","l","SearchIcon","element","createElementNS","setAttribute","path","ClearIcon","LoadingIcon","innerHTML","TOUCH_EVENTS_ALIASES","setStyle","style","eventProxy","_listeners","setProperty","dom","useCapture","nameLower","oldValue","toLowerCase","addEventListener","removeEventListener","removeAttribute","getNormalizedName","setProperties","setPropertiesWithoutEvents","getCreateDomElement","tagName","_ref$children","children","append","Input","autocompleteScopeApi","classNames","getInputPropsCore","isDetached","createDomElement","inputProps","f","c","v","parentNode","removeChild","y","defaultProps","ref","__k","__","__b","__e","__d","__c","__h","__v","vnode","k","g","base","m","w","__r","debounceRendering","sort","shift","__P","L","__n","ownerSVGElement","M","d","A","C","$","nextSibling","S","O","insertBefore","I","T","cssText","z","j","P","H","contextType","__E","render","q","sub","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","N","diffed","localName","nodeType","createTextNode","is","data","childNodes","dangerouslySetInnerHTML","attributes","__html","checked","unmount","componentWillUnmount","getDerivedStateFromError","setState","componentDidCatch","forceUpdate","bind","parseAttribute","preTagParts","highlightedValue","firstValue","parts","part","lastPart","isHighlighted","createAttributeSet","postTagParts","parseAlgoliaHitHighlight","attribute","getAttributeValueByPath","createHighlightComponent","Fragment","Highlight","_ref2$tagName","__autocomplete_componentName","htmlEscapes","hasAlphanumeric","RegExp","regexEscapedHtml","regexHasEscapedHtml","isPartHighlighted","_parts","_parts2","isNextHighlighted","isPreviousHighlighted","character","reverseHighlightedParts","createReverseHighlightComponent","ReverseHighlight","parseAlgoliaHitSnippet","createReverseSnippetComponent","ReverseSnippet","createSnippetComponent","Snippet","getHTMLElement","mergeClassNames","accValue","currentValue","defaultClassNames","clearButton","detachedCancelButton","detachedContainer","detachedFormContainer","detachedOverlay","detachedSearchButton","detachedSearchButtonIcon","detachedSearchButtonPlaceholder","detachedSearchButtonQuery","form","inputWrapper","inputWrapperPrefix","inputWrapperSuffix","loadingIndicator","panel","panelLayout","root","sourceFooter","sourceHeader","sourceNoResults","submitButton","defaultRender","defaultRenderer","firstChild","getPanelPlacementStyle","panelPlacement","containerRect","getBoundingClientRect","top","pageYOffset","documentElement","scrollTop","height","left","right","clientWidth","width","maxWidth","formRect","_extends","isPlainObject","mergeDeep","autocomplete","reactives","_createEffectWrapper","effects","cleanups","runEffect","effectCleanup","cleanupEffects","currentCleanups","cleanup","runEffects","currentEffects","effect","createEffectWrapper","_createReactiveWrappe","reactive","_fn","runReactives","hasNoResultsSourceTemplateRef","optionsRef","onStateChangeRef","_core$id","panelContainer","renderNoResults","renderer","detachedMediaQuery","components","translations","core","containerElement","defaultedRenderer","defaultComponents","getComputedStyle","getPropertyValue","clearButtonTitle","detachedCancelButtonText","submitButtonTitle","getDefaultOptions","matchMedia","_onStateChangeRef$cur","_props$value$core$onS","_props$value$core","templates","noResults","hasItems","hasNoResultsTemplate","lastStateRef","html","_ref$placeholder","setIsModalOpen","rootProps","class","stopPropagation","labelProps","title","formProps","panelProps","textContent","hidden","createAutocompleteDom","setPanelPosition","scheduleRender","renderProps","renderSearchBox","classList","toggle","sections","sourceIndex","className","header","itemProps","footer","elements","renderPanel","update","updatedOptions","predicate","_props$value$renderer","rendererProps","entries","remove","environmentProps","panelContainerElement","debouncedRender","querySelectorAll","scrollablePanel","onResize","previousIsDetached","requestAnimationFrame","toggleModalClassname","isActive","isModalDetachedMql","hasModernEventListener","addListener","removeListener","destroy","getAlgoliaFacets","requestParams","requester","createAlgoliaRequester","fetcher","fetcherParams","_ref$userAgents","addAlgoliaAgent","_getAppIdAndApiKey","transporter","_ref$headers","_ref$queryParameters","queryParameters","APP_ID","API_KEY","getAppIdAndApiKey","search","searchParameters","hitsPerPage","highlightPreTag","highlightPostTag","resultIndex","_result$hits","fetchAlgoliaResults","_fetcherParams$reques","requesterParams","createRequester","getAlgoliaResults","getTemplates","onTapAhead","__autocomplete_qsCategory","viewBox","fill","createQuerySuggestionsPlugin","getSearchParams","transformSource","itemsWithCategories","categoriesPerItem","categoryAttribute","querySuggestionsHits","itemsWithCategoriesAdded","categories","_step","_iterator","allowArrayLike","it","F","normalCompletion","didErr","step","_e2","_createForOfIteratorHelper","category","HIGHLIGHT_PRE_TAG","HIGHLIGHT_POST_TAG","record","condition","message","module","exports","localStorage","parse","getItem","setItem","timeToLive","fromEntries","timestamp","Date","getTime","miss","delete","clear","removeItem","caches","serializable","WithinHeaders","WithinQueryParameters","Math","min","wait","floor","random","encodeURIComponent","timeout","cacheable","Read","Write","Any","lastUpdate","now","protocol","url","accept","D","pop","transporterStackTrace","R","connectTimeout","timeouts","connect","responseTimeout","host","triesLeft","onSuccess","onRetry","isTimedOut","logger","info","hostsCache","onFail","send","getTimeout","statelessHosts","reverse","requestsCache","responsesCache","hosts","read","mappedRequestOptions","write","E","charAt","substr","U","J","K","batch","shouldStop","cursor","page","W","acl","tt","B","cluster","Q","users","G","clearExistingDictionaryEntries","xt","taskID","operation","destination","ut","methods","waitTask","de","V","scope","pe","Rules","Settings","X","Synonyms","Y","Z","et","rt","nt","at","ot","retrieveMappings","getClusters","st","ct","ft","dt","lt","pt","ht","mt","yt","facetName","facetQuery","searchForFacetValues","ue","gt","vt","bt","Ot","Pt","wt","It","jt","Dt","qt","St","se","kt","ce","Tt","batchSize","taskIDs","Nt","Et","forwardToReplicas","Rt","At","Ct","Ut","zt","le","DeleteObject","Jt","Ft","Ht","Lt","Mt","queryLanguages","Kt","paginate","ie","position","parseInt","nbPages","Wt","Bt","Qt","attributesToRetrieve","Gt","getVersion","Vt","_t","Xt","createIfNotExists","PartialUpdateObject","PartialUpdateObjectNoCreate","Yt","safe","autoGenerateObjectIDIfNotExist","substring","ee","Zt","ne","clearExistingRules","$t","oe","clearExistingSynonyms","te","AddObject","UpdateObject","re","ae","replaceExistingSynonyms","fe","DeleteIndex","ClearIndex","ge","XMLHttpRequest","setRequestHeader","abort","onreadystatechange","readyState","OPENED","responseText","onload","region","getPersonalizationStrategy","setPersonalizationStrategy","authMode","clearCache","multipleBatch","multipleGetObjects","multipleQueries","copyIndex","copySettings","copySynonyms","copyRules","moveIndex","listIndices","getLogs","listClusters","multipleSearchForFacetValues","getApiKey","addApiKey","listApiKeys","updateApiKey","deleteApiKey","restoreApiKey","assignUserID","assignUserIDs","getUserID","searchUserIDs","listUserIDs","getTopUserIDs","removeUserID","hasPendingMappings","clearDictionaryEntries","deleteDictionaryEntries","getDictionarySettings","getAppTask","replaceDictionaryEntries","saveDictionaryEntries","searchDictionaryEntries","setDictionarySettings","waitAppTask","customRequest","initIndex","findAnswers","getObject","getObjects","saveObject","saveObjects","setSettings","getSettings","partialUpdateObject","partialUpdateObjects","deleteObject","deleteObjects","deleteBy","clearObjects","browseObjects","getObjectPosition","findObject","exists","saveSynonym","saveSynonyms","getSynonym","searchSynonyms","browseSynonyms","deleteSynonym","clearSynonyms","replaceAllObjects","replaceAllSynonyms","searchRules","getRule","deleteRule","saveRule","saveRules","replaceAllRules","browseRules","clearRules","initAnalytics","addABTest","getABTest","getABTests","stopABTest","deleteABTest","initPersonalization","initRecommendation","extractAdditionalParams","events","additionalParams","isUndefined","isFunction","getFunctionalInterface","warn","DEFAULT_ALGOLIA_AGENTS","_ua","__rest","createUUID","COOKIE_KEY","MONTH","setAnonymousUserToken","cookieEnabled","supportsCookies","cookie","getCookie","setTime","toUTCString","setCookie","_cookieDuration","_userToken","_onUserTokenChangeCallback","getUserToken","onUserTokenChange","immediate","_authenticatedUserToken","_onAuthenticatedUserTokenChangeCallback","getAuthenticatedUserToken","onAuthenticatedUserTokenChange","addEventType","eventType","addEventTypeAndSubtype","eventSubtype","sendEvents","addedToCartObjectIDsAfterSearch","purchasedObjectIDsAfterSearch","addedToCartObjectIDs","purchasedObjectIDs","SUPPORTED_REGIONS","cookieDuration","isNumber","isFinite","setOptions","_userHasOptedOut","userHasOptedOut","_region","_host","_anonymousUserToken","anonymousUserToken","_useCookie","useCookie","_endpointOrigin","AlgoliaAnalytics","requestFn","_apiKey","_appId","filters","sendRequest","requestWithXMLHttpRequest","requestWithSendBeacon","sendBeacon","requestWithNativeFetch","fetch","getRequesterForBrowser","supportsSendBeacon","supportsXMLHttpRequest","supportsNativeFetch","entryBrowserCjs","createInsightsClient","processQueue","aa","default"],"sourceRoot":""}