@sunrise-upc/sales-static-components 3.10.0 → 3.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dist/cjs/components/GlobalPromoRibbon/GlobalPromoRibbon.js +1 -1
  2. package/dist/cjs/components/GlobalPromoRibbon/GlobalPromoRibbon.js.map +1 -1
  3. package/dist/cjs/components/StageTeaserV3/DoubleGrid/DoubleGridComponent.js +1 -1
  4. package/dist/cjs/components/StageTeaserV3/DoubleGrid/DoubleGridComponent.js.map +1 -1
  5. package/dist/cjs/components/StageTeaserV3/SingleGrid/SingleGridComponent.js +1 -1
  6. package/dist/cjs/components/StageTeaserV3/SingleGrid/SingleGridComponent.js.map +1 -1
  7. package/dist/cjs/components/StageTeaserV3/StageTeaserV3.js +1 -1
  8. package/dist/cjs/components/StageTeaserV3/StageTeaserV3.js.map +1 -1
  9. package/dist/cjs/node_modules/algoliasearch-helper/src/SearchParameters/RefinementList.js.map +1 -1
  10. package/dist/cjs/node_modules/algoliasearch-helper/src/SearchParameters/index.js.map +1 -1
  11. package/dist/cjs/node_modules/algoliasearch-helper/src/SearchResults/index.js.map +1 -1
  12. package/dist/cjs/node_modules/algoliasearch-helper/src/algoliasearch.helper.js.map +1 -1
  13. package/dist/cjs/node_modules/algoliasearch-helper/src/utils/sortAndMergeRecommendations.js.map +1 -1
  14. package/dist/cjs/node_modules/algoliasearch-helper/src/version.js +1 -1
  15. package/dist/cjs/node_modules/algoliasearch-helper/src/version.js.map +1 -1
  16. package/dist/cjs/node_modules/immer/dist/immer.js.map +1 -1
  17. package/dist/cjs/node_modules/instantsearch.js/es/lib/chat/openChat.js +1 -1
  18. package/dist/cjs/node_modules/instantsearch.js/es/lib/chat/openChat.js.map +1 -1
  19. package/dist/cjs/node_modules/instantsearch.js/es/lib/utils/addInsightsToRecommendParameters.js +2 -0
  20. package/dist/cjs/node_modules/instantsearch.js/es/lib/utils/addInsightsToRecommendParameters.js.map +1 -0
  21. package/dist/cjs/node_modules/instantsearch.js/es/lib/version.js +1 -1
  22. package/dist/cjs/node_modules/instantsearch.js/es/lib/version.js.map +1 -1
  23. package/dist/cjs/node_modules/instantsearch.js/es/middlewares/createInsightsMiddleware.js +1 -1
  24. package/dist/cjs/node_modules/instantsearch.js/es/middlewares/createInsightsMiddleware.js.map +1 -1
  25. package/dist/cjs/node_modules/instantsearch.js/es/widgets/index/index.js +1 -1
  26. package/dist/cjs/node_modules/instantsearch.js/es/widgets/index/index.js.map +1 -1
  27. package/dist/cjs/node_modules/react-instantsearch-core/dist/es/version.js +1 -1
  28. package/dist/cjs/node_modules/react-instantsearch-core/dist/es/version.js.map +1 -1
  29. package/dist/esm/components/GlobalPromoRibbon/GlobalPromoRibbon.js +1 -1
  30. package/dist/esm/components/GlobalPromoRibbon/GlobalPromoRibbon.js.map +1 -1
  31. package/dist/esm/components/StageTeaserV3/DoubleGrid/DoubleGridComponent.js +1 -1
  32. package/dist/esm/components/StageTeaserV3/DoubleGrid/DoubleGridComponent.js.map +1 -1
  33. package/dist/esm/components/StageTeaserV3/SingleGrid/SingleGridComponent.js +1 -1
  34. package/dist/esm/components/StageTeaserV3/SingleGrid/SingleGridComponent.js.map +1 -1
  35. package/dist/esm/components/StageTeaserV3/StageTeaserV3.js +1 -1
  36. package/dist/esm/components/StageTeaserV3/StageTeaserV3.js.map +1 -1
  37. package/dist/esm/node_modules/algoliasearch-helper/src/SearchParameters/RefinementList.js.map +1 -1
  38. package/dist/esm/node_modules/algoliasearch-helper/src/SearchParameters/index.js.map +1 -1
  39. package/dist/esm/node_modules/algoliasearch-helper/src/SearchResults/index.js.map +1 -1
  40. package/dist/esm/node_modules/algoliasearch-helper/src/algoliasearch.helper.js.map +1 -1
  41. package/dist/esm/node_modules/algoliasearch-helper/src/utils/sortAndMergeRecommendations.js.map +1 -1
  42. package/dist/esm/node_modules/algoliasearch-helper/src/version.js +1 -1
  43. package/dist/esm/node_modules/algoliasearch-helper/src/version.js.map +1 -1
  44. package/dist/esm/node_modules/immer/dist/immer.js.map +1 -1
  45. package/dist/esm/node_modules/instantsearch.js/es/lib/chat/openChat.js +1 -1
  46. package/dist/esm/node_modules/instantsearch.js/es/lib/chat/openChat.js.map +1 -1
  47. package/dist/esm/node_modules/instantsearch.js/es/lib/utils/addInsightsToRecommendParameters.js +2 -0
  48. package/dist/esm/node_modules/instantsearch.js/es/lib/utils/addInsightsToRecommendParameters.js.map +1 -0
  49. package/dist/esm/node_modules/instantsearch.js/es/lib/version.js +1 -1
  50. package/dist/esm/node_modules/instantsearch.js/es/lib/version.js.map +1 -1
  51. package/dist/esm/node_modules/instantsearch.js/es/middlewares/createInsightsMiddleware.js +1 -1
  52. package/dist/esm/node_modules/instantsearch.js/es/middlewares/createInsightsMiddleware.js.map +1 -1
  53. package/dist/esm/node_modules/instantsearch.js/es/widgets/index/index.js +1 -1
  54. package/dist/esm/node_modules/instantsearch.js/es/widgets/index/index.js.map +1 -1
  55. package/dist/esm/node_modules/react-instantsearch-core/dist/es/version.js +1 -1
  56. package/dist/esm/node_modules/react-instantsearch-core/dist/es/version.js.map +1 -1
  57. package/dist/index.d.ts +1 -0
  58. package/dist/navigation.css +229 -229
  59. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"createInsightsMiddleware.js","sources":["../../../../../../node_modules/instantsearch.js/es/middlewares/createInsightsMiddleware.js"],"sourcesContent":["import { _ as _$2 } from '@swc/helpers/esm/_object_spread.js';\nimport { _ as _$3 } from '@swc/helpers/esm/_object_spread_props.js';\nimport { _ as _$1 } from '@swc/helpers/esm/_sliced_to_array.js';\nimport { _ } from '@swc/helpers/esm/_to_consumable_array.js';\nimport { createUUID } from '../lib/utils/uuid.js';\nimport version from '../lib/version.js';\nimport { getInsightsAnonymousUserTokenInternal } from '../helpers/get-insights-anonymous-user-token.js';\nimport { getUsageSessionId } from '../helpers/insights.js';\nimport { now } from '../lib/utils/now.js';\nimport { serializeWidgetParams, buildWidgetTree } from '../lib/utils/buildWidgetTree.js';\nimport { omit } from '../lib/utils/omit.js';\nimport { safelyRunOnBrowser } from '../lib/utils/safelyRunOnBrowser.js';\nimport { getAppIdAndApiKey } from '../lib/utils/getAppIdAndApiKey.js';\nimport { find } from '../lib/utils/find.js';\nimport { noop } from '../lib/utils/noop.js';\nimport { getAlgoliaAgent } from '../lib/utils/getAlgoliaAgent.js';\n\nvar ALGOLIA_INSIGHTS_VERSION = '2.17.2';\nvar ALGOLIA_INSIGHTS_SRC = \"https://cdn.jsdelivr.net/npm/search-insights@\".concat(ALGOLIA_INSIGHTS_VERSION, \"/dist/search-insights.min.js\");\n// InstantSearch options that must never be sent in usage events because\n// they carry credentials or end-user data. Everything else is reported as-is.\nvar SENSITIVE_OPTIONS = [\n 'searchClient',\n 'insightsClient',\n 'initialUiState'\n];\nfunction createInsightsMiddleware() {\n var props = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n var _insightsClient = props.insightsClient, insightsInitParams = props.insightsInitParams, onEvent = props.onEvent, _props_$$internal = props.$$internal, $$internal = _props_$$internal === void 0 ? false : _props_$$internal, _props_$$automatic = props.$$automatic, $$automatic = _props_$$automatic === void 0 ? false : _props_$$automatic;\n var potentialInsightsClient = _insightsClient;\n if (!_insightsClient && _insightsClient !== null) {\n safelyRunOnBrowser(function(param) {\n var window = param.window;\n var pointer = window.AlgoliaAnalyticsObject || 'aa';\n if (typeof pointer === 'string') {\n potentialInsightsClient = window[pointer];\n }\n if (!potentialInsightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n if (!window[pointer]) {\n window[pointer] = function() {\n for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){\n args[_key] = arguments[_key];\n }\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n window[pointer].queue.push(args);\n };\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n window[pointer].shouldAddScript = true;\n }\n potentialInsightsClient = window[pointer];\n }\n });\n }\n // if still no insightsClient was found, we use a noop\n var insightsClient = potentialInsightsClient || noop;\n return function(param) {\n var instantSearchInstance = param.instantSearchInstance;\n var _instantSearchInstance;\n // remove existing default insights middleware\n // user-provided insights middleware takes precedence\n var existingInsightsMiddlewares = instantSearchInstance.middleware.filter(function(m) {\n return m.instance.$$type === 'ais.insights' && m.instance.$$internal;\n }).map(function(m) {\n return m.creator;\n });\n (_instantSearchInstance = instantSearchInstance).unuse.apply(_instantSearchInstance, _(existingInsightsMiddlewares));\n var _getAppIdAndApiKey = _$1(getAppIdAndApiKey(instantSearchInstance.client), 2), appId = _getAppIdAndApiKey[0], apiKey = _getAppIdAndApiKey[1];\n var queuedInitParams = undefined;\n var queuedUserToken = undefined;\n var userTokenBeforeInit = undefined;\n var queue = insightsClient.queue;\n if (Array.isArray(queue)) {\n var ref;\n // Context: The umd build of search-insights is asynchronously loaded by the snippet.\n //\n // When user calls `aa('setUserToken', 'my-user-token')` before `search-insights` is loaded,\n // ['setUserToken', 'my-user-token'] gets stored in `aa.queue`.\n // Whenever `search-insights` is finally loaded, it will process the queue.\n //\n // But here's the reason why we handle it here:\n // At this point, even though `search-insights` is not loaded yet,\n // we still want to read the token from the queue.\n // Otherwise, the first search call will be fired without the token.\n ref = _$1([\n 'setUserToken',\n 'init'\n ].map(function(key) {\n var _ref = _$1(find(queue.slice().reverse(), function(param) {\n var _param = _$1(param, 1), method = _param[0];\n return method === key;\n }) || [], 2), value = _ref[1];\n return value;\n }), 2), queuedUserToken = ref[0], queuedInitParams = ref[1];\n }\n // If user called `aa('setUserToken')` before creating the Insights middleware,\n // we temporarily store the token and set it later on.\n //\n // Otherwise, the `init` call might override them with anonymous user token.\n insightsClient('getUserToken', null, function(_error, userToken) {\n userTokenBeforeInit = normalizeUserToken(userToken);\n });\n // Only `init` if the `insightsInitParams` option is passed or\n // if the `insightsClient` version doesn't supports optional `init` calling.\n if (insightsInitParams || !isModernInsightsClient(insightsClient)) {\n insightsClient('init', _$2({\n appId: appId,\n apiKey: apiKey,\n partial: true\n }, insightsInitParams));\n }\n var initialParameters;\n var helper;\n var removeStartEventListener = null;\n return {\n $$type: 'ais.insights',\n $$internal: $$internal,\n $$automatic: $$automatic,\n onStateChange: function onStateChange() {},\n subscribe: function subscribe() {\n if (!insightsClient.shouldAddScript) return;\n var errorMessage = '[insights middleware]: could not load search-insights.js. Please load it manually following https://alg.li/insights-init';\n try {\n var script = document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n script.onerror = function() {\n instantSearchInstance.emit('error', new Error(errorMessage));\n };\n document.body.appendChild(script);\n insightsClient.shouldAddScript = false;\n } catch (cause) {\n insightsClient.shouldAddScript = false;\n instantSearchInstance.emit('error', new Error(errorMessage));\n }\n },\n started: function started() {\n insightsClient('addAlgoliaAgent', 'insights-middleware');\n helper = instantSearchInstance.mainHelper;\n var queueAtStart = insightsClient.queue;\n if (Array.isArray(queueAtStart)) {\n var ref;\n ref = _$1([\n 'setUserToken',\n 'init'\n ].map(function(key) {\n var _ref = _$1(find(queueAtStart.slice().reverse(), function(param) {\n var _param = _$1(param, 1), method = _param[0];\n return method === key;\n }) || [], 2), value = _ref[1];\n return value;\n }), 2), queuedUserToken = ref[0], queuedInitParams = ref[1];\n }\n initialParameters = getInitialParameters(instantSearchInstance);\n // We don't want to force clickAnalytics when the insights is enabled from the search response.\n // This means we don't enable insights for indices that don't opt in\n if (!$$automatic) {\n helper.overrideStateWithoutTriggeringChangeEvent(_$3(_$2({}, helper.state), {\n clickAnalytics: true\n }));\n }\n if (!$$internal) {\n instantSearchInstance.scheduleSearch();\n }\n var setUserTokenToSearch = function setUserTokenToSearch(userToken) {\n var immediate = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;\n var normalizedUserToken = normalizeUserToken(userToken);\n if (!normalizedUserToken) {\n return;\n }\n var existingToken = helper.state.userToken;\n function applyToken() {\n helper.overrideStateWithoutTriggeringChangeEvent(_$3(_$2({}, helper.state), {\n userToken: normalizedUserToken\n }));\n if (existingToken && existingToken !== userToken) {\n instantSearchInstance.scheduleSearch();\n }\n }\n // Delay the token application to the next render cycle\n if (!immediate) {\n setTimeout(applyToken, 0);\n } else {\n applyToken();\n }\n };\n function setUserToken(token) {\n setUserTokenToSearch(token, true);\n insightsClient('setUserToken', token);\n }\n var anonymousUserToken = undefined;\n var anonymousTokenFromInsights = getInsightsAnonymousUserTokenInternal();\n if (anonymousTokenFromInsights) {\n // When `aa('init', { ... })` is called, it creates an anonymous user token in cookie.\n // We can set it as userToken on instantsearch and insights. If it's not set as an insights\n // userToken before a sendEvent, insights automatically generates a new anonymous token,\n // causing a state change and an unnecessary query on instantsearch.\n anonymousUserToken = anonymousTokenFromInsights;\n } else {\n var token = \"anonymous-\".concat(createUUID());\n anonymousUserToken = token;\n }\n var userTokenFromInit;\n // With SSR, the token could be be set on the state. We make sure\n // that insights is in sync with that token since, there is no\n // insights lib on the server.\n var tokenFromSearchParameters = initialParameters.userToken;\n // When the first query is sent, the token is possibly not yet set by\n // the insights onChange callbacks (if insights isn't yet loaded).\n // It is explicitly being set here so that the first query has the\n // initial tokens set and ensure a second query isn't automatically\n // made when the onChange callback actually changes the state.\n if (insightsInitParams === null || insightsInitParams === void 0 ? void 0 : insightsInitParams.userToken) {\n userTokenFromInit = insightsInitParams.userToken;\n }\n if (userTokenFromInit) {\n setUserToken(userTokenFromInit);\n } else if (tokenFromSearchParameters) {\n setUserToken(tokenFromSearchParameters);\n } else if (userTokenBeforeInit) {\n setUserToken(userTokenBeforeInit);\n } else if (queuedUserToken) {\n setUserToken(queuedUserToken);\n } else if (anonymousUserToken) {\n setUserToken(anonymousUserToken);\n if ((insightsInitParams === null || insightsInitParams === void 0 ? void 0 : insightsInitParams.useCookie) || (queuedInitParams === null || queuedInitParams === void 0 ? void 0 : queuedInitParams.useCookie)) {\n saveTokenAsCookie(anonymousUserToken, (insightsInitParams === null || insightsInitParams === void 0 ? void 0 : insightsInitParams.cookieDuration) || (queuedInitParams === null || queuedInitParams === void 0 ? void 0 : queuedInitParams.cookieDuration));\n }\n }\n // This updates userToken which is set explicitly by `aa('setUserToken', userToken)`\n insightsClient('onUserTokenChange', function(token) {\n return setUserTokenToSearch(token, true);\n }, {\n immediate: true\n });\n var insightsClientWithLocalCredentials = insightsClient;\n if (isModernInsightsClient(insightsClient)) {\n insightsClientWithLocalCredentials = function insightsClientWithLocalCredentials(method, payload) {\n var _getAppIdAndApiKey = _$1(getAppIdAndApiKey(instantSearchInstance.client), 2), latestAppId = _getAppIdAndApiKey[0], latestApiKey = _getAppIdAndApiKey[1];\n var extraParams = {\n headers: {\n 'X-Algolia-Application-Id': latestAppId,\n 'X-Algolia-API-Key': latestApiKey\n }\n };\n // @ts-ignore we are calling this only when we know that the client actually is correct\n return insightsClient(method, payload, extraParams);\n };\n }\n var viewedObjectIDs = new Set();\n var lastQueryId;\n instantSearchInstance.mainHelper.derivedHelpers[0].on('result', function(param) {\n var results = param.results;\n if (results && (!results.queryID || results.queryID !== lastQueryId)) {\n lastQueryId = results.queryID;\n viewedObjectIDs.clear();\n }\n });\n instantSearchInstance.sendEventToInsights = function(event) {\n if (onEvent) {\n onEvent(event, insightsClientWithLocalCredentials);\n } else if (event.insightsMethod) {\n if (event.insightsMethod === 'viewedObjectIDs') {\n var payload = event.payload;\n var difference = payload.objectIDs.filter(function(objectID) {\n return !viewedObjectIDs.has(objectID);\n });\n if (difference.length === 0) {\n return;\n }\n difference.forEach(function(objectID) {\n return viewedObjectIDs.add(objectID);\n });\n payload.objectIDs = difference;\n }\n // Source is used to differentiate events sent by instantsearch from those sent manually.\n event.payload.algoliaSource = [\n 'instantsearch'\n ];\n if ($$automatic) {\n event.payload.algoliaSource.push('instantsearch-automatic');\n }\n if (event.eventModifier === 'internal') {\n event.payload.algoliaSource.push('instantsearch-internal');\n }\n insightsClientWithLocalCredentials(event.insightsMethod, event.payload);\n } else ;\n };\n // usage tracking (browser-only)\n safelyRunOnBrowser(function() {\n var usageSessionId = getUsageSessionId();\n function sendUsageEvent(event) {\n var _helper_state;\n var userToken = (_helper_state = helper.state) === null || _helper_state === void 0 ? void 0 : _helper_state.userToken;\n insightsClientWithLocalCredentials('sendEvents', [\n _$2({\n eventType: 'instantsearch',\n timestamp: Date.now(),\n sessionID: usageSessionId,\n userToken: userToken ? String(userToken) : undefined\n }, event)\n ]);\n }\n // Send the start event on the first `render`, by which point every\n // flavor has registered its widgets. `bootstrapMs` then measures the\n // time between the constructor running and that point, so for flavors\n // that register widgets right at start (e.g. React) it captures the\n // cost of adding them.\n var sendStartEvent = function sendStartEvent() {\n try {\n var bootstrapMs = Math.round(now() - instantSearchInstance._createdAt);\n sendUsageEvent({\n eventName: '__start__',\n algoliaAgent: getAlgoliaAgent(instantSearchInstance.client),\n version: version,\n applicationId: appId,\n performance: {\n bootstrapMs: bootstrapMs\n },\n widgets: [\n {\n type: 'ais.instantSearch',\n // The options the instance was created with, serialized the\n // same way every widget's params are. Derived dynamically from\n // `_initialOptions` so new options are reported automatically,\n // minus the keys that carry credentials or user data. Functions\n // (`onStateChange`, `searchFunction`) report their `fn.name`\n // when present, tagged `type: 'function'`.\n params: instantSearchInstance._initialOptions ? serializeWidgetParams(omit(instantSearchInstance._initialOptions, _(SENSITIVE_OPTIONS))) : [],\n children: buildWidgetTree(instantSearchInstance.mainIndex.getWidgets(), instantSearchInstance)\n }\n ]\n });\n } catch (unused) {\n // usage tracking must never crash the host app\n }\n };\n instantSearchInstance.once('render', sendStartEvent);\n removeStartEventListener = function removeStartEventListener() {\n return instantSearchInstance.removeListener('render', sendStartEvent);\n };\n });\n },\n unsubscribe: function unsubscribe() {\n if (removeStartEventListener) {\n removeStartEventListener();\n }\n insightsClient('onUserTokenChange', undefined);\n instantSearchInstance.sendEventToInsights = noop;\n if (helper && initialParameters) {\n helper.overrideStateWithoutTriggeringChangeEvent(_$2({}, helper.state, initialParameters));\n instantSearchInstance.scheduleSearch();\n }\n }\n };\n };\n}\nfunction getInitialParameters(instantSearchInstance) {\n var _instantSearchInstance__initialResults_instantSearchInstance_indexName, _instantSearchInstance__initialResults;\n // in SSR, the initial state we use in this domain is set on the main index\n var stateFromInitialResults = ((_instantSearchInstance__initialResults = instantSearchInstance._initialResults) === null || _instantSearchInstance__initialResults === void 0 ? void 0 : (_instantSearchInstance__initialResults_instantSearchInstance_indexName = _instantSearchInstance__initialResults[instantSearchInstance.indexName]) === null || _instantSearchInstance__initialResults_instantSearchInstance_indexName === void 0 ? void 0 : _instantSearchInstance__initialResults_instantSearchInstance_indexName.state) || {};\n var stateFromHelper = instantSearchInstance.mainHelper.state;\n return {\n userToken: stateFromInitialResults.userToken || stateFromHelper.userToken,\n clickAnalytics: stateFromInitialResults.clickAnalytics || stateFromHelper.clickAnalytics\n };\n}\nfunction saveTokenAsCookie(token, cookieDuration) {\n var MONTH = 30 * 24 * 60 * 60 * 1000;\n var d = new Date();\n d.setTime(d.getTime() + (cookieDuration || MONTH * 6));\n var expires = \"expires=\".concat(d.toUTCString());\n document.cookie = \"_ALGOLIA=\".concat(token, \";\").concat(expires, \";path=/\");\n}\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 */ function isModernInsightsClient(client) {\n var _split_map = _$1((client.version || '').split('.').map(Number), 2), major = _split_map[0], minor = _split_map[1];\n /* eslint-disable instantsearch/naming-convention */ var v3 = major >= 3;\n var v2_6 = major === 2 && minor >= 6;\n var v1_10 = major === 1 && minor >= 10;\n /* eslint-enable instantsearch/naming-convention */ return v3 || v2_6 || v1_10;\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 */ function normalizeUserToken(userToken) {\n if (!userToken) {\n return undefined;\n }\n return typeof userToken === 'number' ? userToken.toString() : userToken;\n}\n\nexport { createInsightsMiddleware };\n"],"names":["ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","concat","SENSITIVE_OPTIONS","isModernInsightsClient","client","_split_map","_$1","version","split","map","Number","major","minor","normalizeUserToken","userToken","toString","props","arguments","length","_insightsClient","insightsClient","insightsInitParams","onEvent","_props_$$internal","$$internal","_props_$$automatic","$$automatic","potentialInsightsClient","safelyRunOnBrowser","param","window","pointer","AlgoliaAnalyticsObject","_len","args","Array","_key","queue","push","shouldAddScript","noop","_instantSearchInstance","instantSearchInstance","existingInsightsMiddlewares","middleware","filter","m","instance","$$type","creator","unuse","apply","_","ref","initialParameters","helper","_getAppIdAndApiKey","getAppIdAndApiKey","appId","apiKey","queuedInitParams","undefined","queuedUserToken","userTokenBeforeInit","isArray","key","_ref","find","slice","reverse","_error","_$2","partial","removeStartEventListener","onStateChange","subscribe","errorMessage","script","document","createElement","async","src","onerror","emit","Error","body","appendChild","cause","started","mainHelper","queueAtStart","_instantSearchInstance__initialResults_instantSearchInstance_indexName","_instantSearchInstance__initialResults","stateFromInitialResults","_initialResults","indexName","state","stateFromHelper","clickAnalytics","getInitialParameters","overrideStateWithoutTriggeringChangeEvent","_$3","scheduleSearch","setUserTokenToSearch","immediate","normalizedUserToken","existingToken","applyToken","setTimeout","setUserToken","token","userTokenFromInit","anonymousUserToken","anonymousTokenFromInsights","getInsightsAnonymousUserTokenInternal","createUUID","tokenFromSearchParameters","useCookie","cookieDuration","MONTH","d","Date","setTime","getTime","expires","toUTCString","cookie","saveTokenAsCookie","insightsClientWithLocalCredentials","method","payload","latestAppId","latestApiKey","headers","lastQueryId","viewedObjectIDs","Set","derivedHelpers","on","results","queryID","clear","sendEventToInsights","event","insightsMethod","difference","objectIDs","objectID","has","forEach","add","algoliaSource","eventModifier","usageSessionId","getUsageSessionId","sendStartEvent","bootstrapMs","Math","round","now","_createdAt","eventName","algoliaAgent","getAlgoliaAgent","applicationId","performance","widgets","type","params","_initialOptions","serializeWidgetParams","omit","children","buildWidgetTree","mainIndex","getWidgets","_helper_state","eventType","timestamp","sessionID","String","unused","once","removeListener","unsubscribe"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"createInsightsMiddleware.js","sources":["../../../../../../node_modules/instantsearch.js/es/middlewares/createInsightsMiddleware.js"],"sourcesContent":["import { _ as _$2 } from '@swc/helpers/esm/_object_spread.js';\nimport { _ as _$3 } from '@swc/helpers/esm/_object_spread_props.js';\nimport { _ as _$1 } from '@swc/helpers/esm/_sliced_to_array.js';\nimport { _ } from '@swc/helpers/esm/_to_consumable_array.js';\nimport { createUUID } from '../lib/utils/uuid.js';\nimport version from '../lib/version.js';\nimport { getInsightsAnonymousUserTokenInternal } from '../helpers/get-insights-anonymous-user-token.js';\nimport { getUsageSessionId } from '../helpers/insights.js';\nimport { now } from '../lib/utils/now.js';\nimport { serializeWidgetParams, buildWidgetTree } from '../lib/utils/buildWidgetTree.js';\nimport { omit } from '../lib/utils/omit.js';\nimport { safelyRunOnBrowser } from '../lib/utils/safelyRunOnBrowser.js';\nimport { getAppIdAndApiKey } from '../lib/utils/getAppIdAndApiKey.js';\nimport { find } from '../lib/utils/find.js';\nimport { noop } from '../lib/utils/noop.js';\nimport { getAlgoliaAgent } from '../lib/utils/getAlgoliaAgent.js';\n\nvar ALGOLIA_INSIGHTS_VERSION = '2.17.2';\nvar ALGOLIA_INSIGHTS_SRC = \"https://cdn.jsdelivr.net/npm/search-insights@\".concat(ALGOLIA_INSIGHTS_VERSION, \"/dist/search-insights.min.js\");\n// InstantSearch options that must never be sent in usage events because\n// they carry credentials or end-user data. Everything else is reported as-is.\nvar SENSITIVE_OPTIONS = [\n 'searchClient',\n 'insightsClient',\n 'initialUiState'\n];\nfunction createInsightsMiddleware() {\n var props = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n var _insightsClient = props.insightsClient, insightsInitParams = props.insightsInitParams, onEvent = props.onEvent, _props_$$internal = props.$$internal, $$internal = _props_$$internal === void 0 ? false : _props_$$internal, _props_$$automatic = props.$$automatic, $$automatic = _props_$$automatic === void 0 ? false : _props_$$automatic;\n var potentialInsightsClient = _insightsClient;\n if (!_insightsClient && _insightsClient !== null) {\n safelyRunOnBrowser(function(param) {\n var window = param.window;\n var pointer = window.AlgoliaAnalyticsObject || 'aa';\n if (typeof pointer === 'string') {\n potentialInsightsClient = window[pointer];\n }\n if (!potentialInsightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n if (!window[pointer]) {\n window[pointer] = function() {\n for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){\n args[_key] = arguments[_key];\n }\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n window[pointer].queue.push(args);\n };\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n window[pointer].shouldAddScript = true;\n }\n potentialInsightsClient = window[pointer];\n }\n });\n }\n // if still no insightsClient was found, we use a noop\n var insightsClient = potentialInsightsClient || noop;\n return function(param) {\n var instantSearchInstance = param.instantSearchInstance;\n var _instantSearchInstance;\n // remove existing default insights middleware\n // user-provided insights middleware takes precedence\n var existingInsightsMiddlewares = instantSearchInstance.middleware.filter(function(m) {\n return m.instance.$$type === 'ais.insights' && m.instance.$$internal;\n }).map(function(m) {\n return m.creator;\n });\n (_instantSearchInstance = instantSearchInstance).unuse.apply(_instantSearchInstance, _(existingInsightsMiddlewares));\n var _getAppIdAndApiKey = _$1(getAppIdAndApiKey(instantSearchInstance.client), 2), appId = _getAppIdAndApiKey[0], apiKey = _getAppIdAndApiKey[1];\n var queuedInitParams = undefined;\n var queuedUserToken = undefined;\n var userTokenBeforeInit = undefined;\n var queue = insightsClient.queue;\n if (Array.isArray(queue)) {\n var ref;\n // Context: The umd build of search-insights is asynchronously loaded by the snippet.\n //\n // When user calls `aa('setUserToken', 'my-user-token')` before `search-insights` is loaded,\n // ['setUserToken', 'my-user-token'] gets stored in `aa.queue`.\n // Whenever `search-insights` is finally loaded, it will process the queue.\n //\n // But here's the reason why we handle it here:\n // At this point, even though `search-insights` is not loaded yet,\n // we still want to read the token from the queue.\n // Otherwise, the first search call will be fired without the token.\n ref = _$1([\n 'setUserToken',\n 'init'\n ].map(function(key) {\n var _ref = _$1(find(queue.slice().reverse(), function(param) {\n var _param = _$1(param, 1), method = _param[0];\n return method === key;\n }) || [], 2), value = _ref[1];\n return value;\n }), 2), queuedUserToken = ref[0], queuedInitParams = ref[1];\n }\n // If user called `aa('setUserToken')` before creating the Insights middleware,\n // we temporarily store the token and set it later on.\n //\n // Otherwise, the `init` call might override them with anonymous user token.\n insightsClient('getUserToken', null, function(_error, userToken) {\n userTokenBeforeInit = normalizeUserToken(userToken);\n });\n // Only `init` if the `insightsInitParams` option is passed or\n // if the `insightsClient` version doesn't supports optional `init` calling.\n if (insightsInitParams || !isModernInsightsClient(insightsClient)) {\n insightsClient('init', _$2({\n appId: appId,\n apiKey: apiKey,\n partial: true\n }, insightsInitParams));\n }\n var initialParameters;\n var helper;\n var removeStartEventListener = null;\n return {\n $$type: 'ais.insights',\n $$internal: $$internal,\n $$automatic: $$automatic,\n onStateChange: function onStateChange() {},\n subscribe: function subscribe() {\n if (!insightsClient.shouldAddScript) return;\n var errorMessage = '[insights middleware]: could not load search-insights.js. Please load it manually following https://alg.li/insights-init';\n try {\n var script = document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n script.onerror = function() {\n instantSearchInstance.emit('error', new Error(errorMessage));\n };\n document.body.appendChild(script);\n insightsClient.shouldAddScript = false;\n } catch (cause) {\n insightsClient.shouldAddScript = false;\n instantSearchInstance.emit('error', new Error(errorMessage));\n }\n },\n started: function started() {\n insightsClient('addAlgoliaAgent', 'insights-middleware');\n helper = instantSearchInstance.mainHelper;\n var queueAtStart = insightsClient.queue;\n if (Array.isArray(queueAtStart)) {\n var ref;\n ref = _$1([\n 'setUserToken',\n 'init'\n ].map(function(key) {\n var _ref = _$1(find(queueAtStart.slice().reverse(), function(param) {\n var _param = _$1(param, 1), method = _param[0];\n return method === key;\n }) || [], 2), value = _ref[1];\n return value;\n }), 2), queuedUserToken = ref[0], queuedInitParams = ref[1];\n }\n initialParameters = getInitialParameters(instantSearchInstance);\n // We don't want to force clickAnalytics when the insights is enabled from the search response.\n // This means we don't enable insights for indices that don't opt in\n if (!$$automatic) {\n helper.overrideStateWithoutTriggeringChangeEvent(_$3(_$2({}, helper.state), {\n clickAnalytics: true\n }));\n }\n if (!$$internal) {\n instantSearchInstance.scheduleSearch();\n }\n var setUserTokenToSearch = function setUserTokenToSearch(userToken) {\n var immediate = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;\n var normalizedUserToken = normalizeUserToken(userToken);\n if (!normalizedUserToken) {\n return;\n }\n var existingToken = helper.state.userToken;\n function applyToken() {\n helper.overrideStateWithoutTriggeringChangeEvent(_$3(_$2({}, helper.state), {\n userToken: normalizedUserToken\n }));\n if (existingToken && existingToken !== normalizedUserToken) {\n helper._recommendCache = {};\n instantSearchInstance.scheduleSearch();\n }\n }\n // Delay the token application to the next render cycle\n if (!immediate) {\n setTimeout(applyToken, 0);\n } else {\n applyToken();\n }\n };\n function setUserToken(token) {\n setUserTokenToSearch(token, true);\n insightsClient('setUserToken', token);\n }\n var anonymousUserToken = undefined;\n var anonymousTokenFromInsights = getInsightsAnonymousUserTokenInternal();\n if (anonymousTokenFromInsights) {\n // When `aa('init', { ... })` is called, it creates an anonymous user token in cookie.\n // We can set it as userToken on instantsearch and insights. If it's not set as an insights\n // userToken before a sendEvent, insights automatically generates a new anonymous token,\n // causing a state change and an unnecessary query on instantsearch.\n anonymousUserToken = anonymousTokenFromInsights;\n } else {\n var token = \"anonymous-\".concat(createUUID());\n anonymousUserToken = token;\n }\n var userTokenFromInit;\n // With SSR, the token could be be set on the state. We make sure\n // that insights is in sync with that token since, there is no\n // insights lib on the server.\n var tokenFromSearchParameters = initialParameters.userToken;\n // When the first query is sent, the token is possibly not yet set by\n // the insights onChange callbacks (if insights isn't yet loaded).\n // It is explicitly being set here so that the first query has the\n // initial tokens set and ensure a second query isn't automatically\n // made when the onChange callback actually changes the state.\n if (insightsInitParams === null || insightsInitParams === void 0 ? void 0 : insightsInitParams.userToken) {\n userTokenFromInit = insightsInitParams.userToken;\n }\n if (userTokenFromInit) {\n setUserToken(userTokenFromInit);\n } else if (tokenFromSearchParameters) {\n setUserToken(tokenFromSearchParameters);\n } else if (userTokenBeforeInit) {\n setUserToken(userTokenBeforeInit);\n } else if (queuedUserToken) {\n setUserToken(queuedUserToken);\n } else if (anonymousUserToken) {\n setUserToken(anonymousUserToken);\n if ((insightsInitParams === null || insightsInitParams === void 0 ? void 0 : insightsInitParams.useCookie) || (queuedInitParams === null || queuedInitParams === void 0 ? void 0 : queuedInitParams.useCookie)) {\n saveTokenAsCookie(anonymousUserToken, (insightsInitParams === null || insightsInitParams === void 0 ? void 0 : insightsInitParams.cookieDuration) || (queuedInitParams === null || queuedInitParams === void 0 ? void 0 : queuedInitParams.cookieDuration));\n }\n }\n // This updates userToken which is set explicitly by `aa('setUserToken', userToken)`\n insightsClient('onUserTokenChange', function(token) {\n return setUserTokenToSearch(token, true);\n }, {\n immediate: true\n });\n var insightsClientWithLocalCredentials = insightsClient;\n if (isModernInsightsClient(insightsClient)) {\n insightsClientWithLocalCredentials = function insightsClientWithLocalCredentials(method, payload) {\n var _getAppIdAndApiKey = _$1(getAppIdAndApiKey(instantSearchInstance.client), 2), latestAppId = _getAppIdAndApiKey[0], latestApiKey = _getAppIdAndApiKey[1];\n var extraParams = {\n headers: {\n 'X-Algolia-Application-Id': latestAppId,\n 'X-Algolia-API-Key': latestApiKey\n }\n };\n // @ts-ignore we are calling this only when we know that the client actually is correct\n return insightsClient(method, payload, extraParams);\n };\n }\n var viewedObjectIDs = new Set();\n var lastQueryId;\n instantSearchInstance.mainHelper.derivedHelpers[0].on('result', function(param) {\n var results = param.results;\n if (results && (!results.queryID || results.queryID !== lastQueryId)) {\n lastQueryId = results.queryID;\n viewedObjectIDs.clear();\n }\n });\n instantSearchInstance.sendEventToInsights = function(event) {\n if (onEvent) {\n onEvent(event, insightsClientWithLocalCredentials);\n } else if (event.insightsMethod) {\n if (event.insightsMethod === 'viewedObjectIDs') {\n var payload = event.payload;\n var getViewEventKey = function getViewEventKey(objectID) {\n return payload.queryID ? \"\".concat(payload.queryID, \":\").concat(objectID) : objectID;\n };\n var difference = payload.objectIDs.filter(function(objectID) {\n return !viewedObjectIDs.has(getViewEventKey(objectID));\n });\n if (difference.length === 0) {\n return;\n }\n difference.forEach(function(objectID) {\n return viewedObjectIDs.add(getViewEventKey(objectID));\n });\n payload.objectIDs = difference;\n }\n // Source is used to differentiate events sent by instantsearch from those sent manually.\n event.payload.algoliaSource = [\n 'instantsearch'\n ];\n if ($$automatic) {\n event.payload.algoliaSource.push('instantsearch-automatic');\n }\n if (event.eventModifier === 'internal') {\n event.payload.algoliaSource.push('instantsearch-internal');\n }\n insightsClientWithLocalCredentials(event.insightsMethod, event.payload);\n } else ;\n };\n // usage tracking (browser-only)\n safelyRunOnBrowser(function() {\n var usageSessionId = getUsageSessionId();\n function sendUsageEvent(event) {\n var _helper_state;\n var userToken = (_helper_state = helper.state) === null || _helper_state === void 0 ? void 0 : _helper_state.userToken;\n insightsClientWithLocalCredentials('sendEvents', [\n _$2({\n eventType: 'instantsearch',\n timestamp: Date.now(),\n sessionID: usageSessionId,\n userToken: userToken ? String(userToken) : undefined\n }, event)\n ]);\n }\n // Send the start event on the first `render`, by which point every\n // flavor has registered its widgets. `bootstrapMs` then measures the\n // time between the constructor running and that point, so for flavors\n // that register widgets right at start (e.g. React) it captures the\n // cost of adding them.\n var sendStartEvent = function sendStartEvent() {\n try {\n var bootstrapMs = Math.round(now() - instantSearchInstance._createdAt);\n sendUsageEvent({\n eventName: '__start__',\n algoliaAgent: getAlgoliaAgent(instantSearchInstance.client),\n version: version,\n applicationId: appId,\n performance: {\n bootstrapMs: bootstrapMs\n },\n widgets: [\n {\n type: 'ais.instantSearch',\n // The options the instance was created with, serialized the\n // same way every widget's params are. Derived dynamically from\n // `_initialOptions` so new options are reported automatically,\n // minus the keys that carry credentials or user data. Functions\n // (`onStateChange`, `searchFunction`) report their `fn.name`\n // when present, tagged `type: 'function'`.\n params: instantSearchInstance._initialOptions ? serializeWidgetParams(omit(instantSearchInstance._initialOptions, _(SENSITIVE_OPTIONS))) : [],\n children: buildWidgetTree(instantSearchInstance.mainIndex.getWidgets(), instantSearchInstance)\n }\n ]\n });\n } catch (unused) {\n // usage tracking must never crash the host app\n }\n };\n instantSearchInstance.once('render', sendStartEvent);\n removeStartEventListener = function removeStartEventListener() {\n return instantSearchInstance.removeListener('render', sendStartEvent);\n };\n });\n },\n unsubscribe: function unsubscribe() {\n if (removeStartEventListener) {\n removeStartEventListener();\n }\n insightsClient('onUserTokenChange', undefined);\n instantSearchInstance.sendEventToInsights = noop;\n if (helper && initialParameters) {\n helper.overrideStateWithoutTriggeringChangeEvent(_$2({}, helper.state, initialParameters));\n instantSearchInstance.scheduleSearch();\n }\n }\n };\n };\n}\nfunction getInitialParameters(instantSearchInstance) {\n var _instantSearchInstance__initialResults_instantSearchInstance_indexName, _instantSearchInstance__initialResults;\n // in SSR, the initial state we use in this domain is set on the main index\n var stateFromInitialResults = ((_instantSearchInstance__initialResults = instantSearchInstance._initialResults) === null || _instantSearchInstance__initialResults === void 0 ? void 0 : (_instantSearchInstance__initialResults_instantSearchInstance_indexName = _instantSearchInstance__initialResults[instantSearchInstance.indexName]) === null || _instantSearchInstance__initialResults_instantSearchInstance_indexName === void 0 ? void 0 : _instantSearchInstance__initialResults_instantSearchInstance_indexName.state) || {};\n var stateFromHelper = instantSearchInstance.mainHelper.state;\n return {\n userToken: stateFromInitialResults.userToken || stateFromHelper.userToken,\n clickAnalytics: stateFromInitialResults.clickAnalytics || stateFromHelper.clickAnalytics\n };\n}\nfunction saveTokenAsCookie(token, cookieDuration) {\n var MONTH = 30 * 24 * 60 * 60 * 1000;\n var d = new Date();\n d.setTime(d.getTime() + (cookieDuration || MONTH * 6));\n var expires = \"expires=\".concat(d.toUTCString());\n document.cookie = \"_ALGOLIA=\".concat(token, \";\").concat(expires, \";path=/\");\n}\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 */ function isModernInsightsClient(client) {\n var _split_map = _$1((client.version || '').split('.').map(Number), 2), major = _split_map[0], minor = _split_map[1];\n /* oxlint-disable instantsearch/naming-convention */ var v3 = major >= 3;\n var v2_6 = major === 2 && minor >= 6;\n var v1_10 = major === 1 && minor >= 10;\n /* oxlint-enable instantsearch/naming-convention */ return v3 || v2_6 || v1_10;\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 */ function normalizeUserToken(userToken) {\n if (!userToken) {\n return undefined;\n }\n return typeof userToken === 'number' ? userToken.toString() : userToken;\n}\n\nexport { createInsightsMiddleware };\n"],"names":["ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","concat","SENSITIVE_OPTIONS","isModernInsightsClient","client","_split_map","_$1","version","split","map","Number","major","minor","normalizeUserToken","userToken","toString","props","arguments","length","_insightsClient","insightsClient","insightsInitParams","onEvent","_props_$$internal","$$internal","_props_$$automatic","$$automatic","potentialInsightsClient","safelyRunOnBrowser","param","window","pointer","AlgoliaAnalyticsObject","_len","args","Array","_key","queue","push","shouldAddScript","noop","_instantSearchInstance","instantSearchInstance","existingInsightsMiddlewares","middleware","filter","m","instance","$$type","creator","unuse","apply","_","ref","initialParameters","helper","_getAppIdAndApiKey","getAppIdAndApiKey","appId","apiKey","queuedInitParams","undefined","queuedUserToken","userTokenBeforeInit","isArray","key","_ref","find","slice","reverse","_error","_$2","partial","removeStartEventListener","onStateChange","subscribe","errorMessage","script","document","createElement","async","src","onerror","emit","Error","body","appendChild","cause","started","mainHelper","queueAtStart","_instantSearchInstance__initialResults_instantSearchInstance_indexName","_instantSearchInstance__initialResults","stateFromInitialResults","_initialResults","indexName","state","stateFromHelper","clickAnalytics","getInitialParameters","overrideStateWithoutTriggeringChangeEvent","_$3","scheduleSearch","setUserTokenToSearch","immediate","normalizedUserToken","existingToken","applyToken","setTimeout","_recommendCache","setUserToken","token","userTokenFromInit","anonymousUserToken","anonymousTokenFromInsights","getInsightsAnonymousUserTokenInternal","createUUID","tokenFromSearchParameters","useCookie","cookieDuration","MONTH","d","Date","setTime","getTime","expires","toUTCString","cookie","saveTokenAsCookie","insightsClientWithLocalCredentials","method","payload","latestAppId","latestApiKey","headers","lastQueryId","viewedObjectIDs","Set","derivedHelpers","on","results","queryID","clear","sendEventToInsights","event","insightsMethod","getViewEventKey","objectID","difference","objectIDs","has","forEach","add","algoliaSource","eventModifier","usageSessionId","getUsageSessionId","sendStartEvent","bootstrapMs","Math","round","now","_createdAt","eventName","algoliaAgent","getAlgoliaAgent","applicationId","performance","widgets","type","params","_initialOptions","serializeWidgetParams","omit","children","buildWidgetTree","mainIndex","getWidgets","_helper_state","eventType","timestamp","sessionID","String","unused","once","removeListener","unsubscribe"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../@swc/helpers/esm/_define_property.js"),t=require("../../../../@swc/helpers/esm/_instanceof.js"),r=require("../../../../@swc/helpers/esm/_object_spread.js"),n=require("../../../../@swc/helpers/esm/_object_spread_props.js"),a=require("../../../../@swc/helpers/esm/_object_without_properties.js"),i=require("../../../../@swc/helpers/esm/_to_consumable_array.js"),s=require("../../../../../_virtual/index2.js"),d=require("../../lib/utils/addWidgetId.js"),c=require("../../lib/utils/isIndexWidget.js"),u=require("../../lib/utils/defer.js"),o=require("../../lib/utils/resolveSearchParameters.js"),l=require("../../lib/utils/documentation.js"),m=require("../../lib/utils/mergeSearchParameters.js"),h=require("../../lib/utils/render-args.js"),g=l.createDocumentationMessageGenerator({name:"index-widget"});function f(e,t){var r=t.state,n=t.recommendState,a=t.isPageReset,i=t._uiState;r!==e.state&&(e.state=r,e.emit("change",{state:e.state,results:e.lastResults,isPageReset:a,_uiState:i})),n!==e.recommendState&&(e.recommendState=n)}function S(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.reduce(function(e,r){return c.isIndexWidget(r)?e:r.getWidgetUiState||r.getWidgetState?r.getWidgetUiState?r.getWidgetUiState(e,t):r.getWidgetState(e,t):e},r)}function p(e,t){var r=t.initialSearchParameters,n=a._(t,["initialSearchParameters"]);return e.reduce(function(e,t){return!t.getWidgetSearchParameters||c.isIndexWidget(t)?e:"search"===t.dependsOn&&t.getWidgetParameters?t.getWidgetParameters(e,n):t.getWidgetSearchParameters(e,n)},r)}function R(e,t){var r=t.initialRecommendParameters,n=a._(t,["initialRecommendParameters"]);return e.reduce(function(e,t){return!c.isIndexWidget(t)&&"recommend"===t.dependsOn&&t.getWidgetParameters?t.getWidgetParameters(e,n):e},r)}function v(e){var t=e.filter(c.isIndexWidget);0!==t.length&&t.forEach(function(e){var t=e.getHelper();f(t,{state:t.state.resetPage(),recommendState:t.recommendState,isPageReset:!0}),v(e.getWidgets())})}function _(e){return e.filter(c.isIndexWidget).reduce(function(e,t){var r;return(r=e).concat.apply(r,[{indexId:t.getIndexId(),results:t.getResults(),helper:t.getHelper()}].concat(i._(_(t.getWidgets()))))},[])}function W(e){return e.reduce(function(e,t){if(c.isIndexWidget(t)){if(t._isolated)return e;var a=W(t.getWidgets());return{hasSearchWidget:e.hasSearchWidget||a.hasSearchWidget,hasRecommendWidget:e.hasRecommendWidget||a.hasRecommendWidget}}return"recommend"===t.dependsOn?n._(r._({},e),{hasRecommendWidget:!0}):"none"===t.dependsOn?e:n._(r._({},e),{hasSearchWidget:!0})},{hasSearchWidget:!1,hasRecommendWidget:!1})}function P(e){var t=W(e.mainIndex.getWidgets()),r=t.hasSearchWidget,n=t.hasRecommendWidget;e._hasSearchWidget=r,e._hasRecommendWidget=n}exports.default=function(a){var l;if(void 0===a||void 0===a.indexName&&!a.isolated&&!a.EXPERIMENTAL_isolated)throw new Error(g("The `indexName` option is required."));var W=a.indexName,I=void 0===W?"":W,x=a.indexId,w=void 0===x?I:x,y=a.isolated,E=void 0===y?null!==(l=a.EXPERIMENTAL_isolated)&&void 0!==l&&l:y,j=[],U={},A=null,q=null,b=null,H=null,O=null,L=function(){A&&P(A)};return{$$type:"ais.index",$$widgetType:"ais.index",_isolated:E,getIndexName:function(){return I},getIndexId:function(){return w},getHelper:function(){return b},getResults:function(){return(null==H?void 0:H.lastResults)?(H.lastResults._state=b.state,H.lastResults):null},getResultsForWidget:function(e){return"recommend"!==e.dependsOn||c.isIndexWidget(e)||void 0===e.$$id?this.getResults():(null==b?void 0:b.lastRecommendResults)?b.lastRecommendResults[e.$$id]:null},getPreviousState:function(){return O},getScopedResults:function(){var e=this.getParent();return _(e?e.getWidgets():0===I.length?this.getWidgets():[this])},getParent:function(){return E?null:q},createURL:function(t){return"function"==typeof t?A._createURL(e._({},w,t(U))):A._createURL(e._({},w,S(j,{searchParameters:t,helper:b})))},scheduleLocalSearch:u.defer(function(){E&&(null==b||b.search())}),getWidgets:function(){return j},addWidgets:function(e){var t=this;if(!Array.isArray(e))throw new Error(g("The `addWidgets` method expects an array of widgets."));var r=e.reduce(function(e,t){return e.concat(Array.isArray(t)?t:[t])},[]);if(r.some(function(e){return"function"!=typeof e.init&&"function"!=typeof e.render}))throw new Error(g("The widget definition expects a `render` and/or an `init` method."));return r.forEach(function(e){e.parent=t,c.isIndexWidget(e)||d.addWidgetId(e)}),j=j.concat(r),L(),A&&Boolean(r.length)&&(f(b,{state:p(j,{uiState:U,initialSearchParameters:b.state}),recommendState:R(j,{uiState:U,initialRecommendParameters:b.recommendState}),_uiState:U}),r.forEach(function(e){if(e.getRenderState){var r=e.getRenderState(A.renderState[t.getIndexId()]||{},h.createInitArgs(A,t,A._initialUiState));h.storeRenderState({renderState:r,instantSearchInstance:A,parent:t})}}),r.forEach(function(e){e.init&&e.init(h.createInitArgs(A,t,A._initialUiState))}),E?this.scheduleLocalSearch():A.scheduleSearch()),this},removeWidgets:function(e){var r=this;if(!Array.isArray(e))throw new Error(g("The `removeWidgets` method expects an array of widgets."));var n=e.reduce(function(e,t){return e.concat(Array.isArray(t)?t:[t])},[]);if(n.some(function(e){return"function"!=typeof e.dispose}))throw new Error(g("The widget definition expects a `dispose` method."));if(j=j.filter(function(e){return-1===n.indexOf(e)}),n.forEach(function(e){e.parent=void 0}),L(),A&&Boolean(n.length)){var a=n.reduce(function(e,n){var a=n.dispose({helper:b,state:e.cleanedSearchState,recommendState:e.cleanedRecommendState,parent:r});return t._(a,s.default.RecommendParameters)?e.cleanedRecommendState=a:a&&(e.cleanedSearchState=a),e},{cleanedSearchState:b.state,cleanedRecommendState:b.recommendState}),i=a.cleanedSearchState,d=a.cleanedRecommendState,c=A.future.preserveSharedStateOnUnmount?p(j,{uiState:U,initialSearchParameters:new s.default.SearchParameters({index:this.getIndexName()})}):p(j,{uiState:S(j,{searchParameters:i,helper:b}),initialSearchParameters:i});U=S(j,{searchParameters:c,helper:b}),b.setState(c),b.recommendState=d,j.length&&(E?this.scheduleLocalSearch():A.scheduleSearch())}return this},init:function(e){var t,r=this,n=e.instantSearchInstance,a=e.parent,d=e.uiState;if(null===b){A=n,q=a,U=d[w]||{};var c=n.mainHelper,u=p(j,{uiState:U,initialSearchParameters:new s.default.SearchParameters({index:I})}),l=R(j,{uiState:U,initialRecommendParameters:new s.default.RecommendParameters});(b=s.default(c.getClient(),u.index,u)).recommendState=l,b.search=function(){return E?(n.status="loading",r.render({instantSearchInstance:n}),n.compositionID?b.searchWithComposition():b.searchOnlyWithDerivedHelpers()):n.onStateChange?(n.onStateChange({uiState:n.mainIndex.getWidgetUiState({}),setUiState:function(e){return n.setUiState(e,!1)}}),c):c.search()},b.searchWithoutTriggeringOnStateChange=function(){return c.search()},b.searchForFacetValues=function(e,t,n,a){var s=m.mergeSearchParameters.apply(void 0,[c.state].concat(i._(o.resolveSearchParameters(r)))).setQueryParameters(a);return c.searchForFacetValues(e,t,n,s)};var g=I?b:s.default({},"__empty_index__",{}),f=E?g:function(e,t){for(;e;){if(e._isolated)return e.getHelper();e=e.getParent()}return t}(a,c);H=f.derive(function(){return m.mergeSearchParameters.apply(void 0,[c.state].concat(i._(o.resolveSearchParameters(r))))},function(){return r.getHelper().recommendState});var _=null===(t=n._initialResults)||void 0===t?void 0:t[this.getIndexId()];if(null==_?void 0:_.results){var W=new s.default.SearchResults(new s.default.SearchParameters(_.state),_.results);H.lastResults=W,b.lastResults=W}if(null==_?void 0:_.recommendResults){var P=new s.default.RecommendResults(new s.default.RecommendParameters({params:_.recommendResults.params}),_.recommendResults.results);H.lastRecommendResults=P,b.lastRecommendResults=P}b.on("change",function(e){e.isPageReset&&v(j)}),H.on("search",function(){n.scheduleStalledRender()}),H.on("result",function(e){var t=e.results;n.scheduleRender(),b.lastResults=t,O=null==t?void 0:t._state}),H.on("recommend:result",function(e){var t=e.recommend;n.scheduleRender(),b.lastRecommendResults=t.results}),j.forEach(function(e){if(e.getRenderState){var t=e.getRenderState(n.renderState[r.getIndexId()]||{},h.createInitArgs(n,r,d));h.storeRenderState({renderState:t,instantSearchInstance:n,parent:r})}}),j.forEach(function(e){e.init&&e.init(h.createInitArgs(n,r,d))}),b.on("change",function(e){var t=e.state,r=e._uiState;U=S(j,{searchParameters:t,helper:b},r||{}),n.onStateChange||n.onInternalStateChange()}),_&&n.scheduleRender(),L()}},render:function(e){var t=this,r=e.instantSearchInstance;"error"===r.status&&!r.mainHelper.hasPendingRequests()&&O&&b.setState(O);var n=this.getResults()||(null==H?void 0:H.lastRecommendResults)||E&&!I?j:j.filter(function(e){return e.shouldRender});(n=n.filter(function(e){return!e.shouldRender||e.shouldRender({instantSearchInstance:r})})).forEach(function(e){if(e.getRenderState){var n=e.getRenderState(r.renderState[t.getIndexId()]||{},h.createRenderArgs(r,t,e));h.storeRenderState({renderState:n,instantSearchInstance:r,parent:t})}}),n.forEach(function(e){e.render&&e.render(h.createRenderArgs(r,t,e))})},dispose:function(){var e=this;j.forEach(function(t){t.dispose&&b&&t.dispose({helper:b,state:b.state,recommendState:b.recommendState,parent:e})}),A=null,q=null,null==b||b.removeAllListeners(),b=null,null==H||H.detach(),H=null},getWidgetUiState:function(t){return j.filter(c.isIndexWidget).filter(function(e){return!e._isolated}).reduce(function(e,t){return t.getWidgetUiState(e)},n._(r._({},t),e._({},w,r._({},t[w],U))))},getWidgetState:function(e){return this.getWidgetUiState(e)},getWidgetSearchParameters:function(e,t){var r=t.uiState;return p(j,{uiState:r,initialSearchParameters:e})},shouldRender:function(){return!0},refreshUiState:function(){U=S(j,{searchParameters:this.getHelper().state,helper:this.getHelper()},U)},setIndexUiState:function(t){var a="function"==typeof t?t(U):t;A.setUiState(function(t){return n._(r._({},t),e._({},w,a))})}}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../@swc/helpers/esm/_define_property.js"),t=require("../../../../@swc/helpers/esm/_instanceof.js"),r=require("../../../../@swc/helpers/esm/_object_spread.js"),n=require("../../../../@swc/helpers/esm/_object_spread_props.js"),a=require("../../../../@swc/helpers/esm/_object_without_properties.js"),i=require("../../../../@swc/helpers/esm/_to_consumable_array.js"),s=require("../../../../../_virtual/index2.js"),d=require("../../lib/utils/addWidgetId.js"),c=require("../../lib/utils/isIndexWidget.js"),u=require("../../lib/utils/defer.js"),o=require("../../lib/utils/resolveSearchParameters.js"),l=require("../../lib/utils/addInsightsToRecommendParameters.js"),m=require("../../lib/utils/documentation.js"),h=require("../../lib/utils/mergeSearchParameters.js"),g=require("../../lib/utils/render-args.js"),f=m.createDocumentationMessageGenerator({name:"index-widget"});function S(e,t){var r=t.state,n=t.recommendState,a=t.isPageReset,i=t._uiState;r!==e.state&&(e.state=r,e.emit("change",{state:e.state,results:e.lastResults,isPageReset:a,_uiState:i})),n!==e.recommendState&&(e.recommendState=n)}function R(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.reduce(function(e,r){return c.isIndexWidget(r)?e:r.getWidgetUiState||r.getWidgetState?r.getWidgetUiState?r.getWidgetUiState(e,t):r.getWidgetState(e,t):e},r)}function p(e,t){var r=t.initialSearchParameters,n=a._(t,["initialSearchParameters"]);return e.reduce(function(e,t){return!t.getWidgetSearchParameters||c.isIndexWidget(t)?e:"search"===t.dependsOn&&t.getWidgetParameters?t.getWidgetParameters(e,n):t.getWidgetSearchParameters(e,n)},r)}function v(e,t){var r=t.initialRecommendParameters,n=a._(t,["initialRecommendParameters"]);return e.reduce(function(e,t){return!c.isIndexWidget(t)&&"recommend"===t.dependsOn&&t.getWidgetParameters?t.getWidgetParameters(e,n):e},r)}function _(e){var t=e.filter(c.isIndexWidget);0!==t.length&&t.forEach(function(e){var t=e.getHelper();S(t,{state:t.state.resetPage(),recommendState:t.recommendState,isPageReset:!0}),_(e.getWidgets())})}function W(e){return e.filter(c.isIndexWidget).reduce(function(e,t){var r;return(r=e).concat.apply(r,[{indexId:t.getIndexId(),results:t.getResults(),helper:t.getHelper()}].concat(i._(W(t.getWidgets()))))},[])}function P(e){return e.reduce(function(e,t){if(c.isIndexWidget(t)){if(t._isolated)return e;var a=P(t.getWidgets());return{hasSearchWidget:e.hasSearchWidget||a.hasSearchWidget,hasRecommendWidget:e.hasRecommendWidget||a.hasRecommendWidget}}return"recommend"===t.dependsOn?n._(r._({},e),{hasRecommendWidget:!0}):"none"===t.dependsOn?e:n._(r._({},e),{hasSearchWidget:!0})},{hasSearchWidget:!1,hasRecommendWidget:!1})}function I(e){var t=P(e.mainIndex.getWidgets()),r=t.hasSearchWidget,n=t.hasRecommendWidget;e._hasSearchWidget=r,e._hasRecommendWidget=n}exports.default=function(a){var m;if(void 0===a||void 0===a.indexName&&!a.isolated&&!a.EXPERIMENTAL_isolated)throw new Error(f("The `indexName` option is required."));var P=a.indexName,x=void 0===P?"":P,w=a.indexId,y=void 0===w?x:w,E=a.isolated,j=void 0===E?null!==(m=a.EXPERIMENTAL_isolated)&&void 0!==m&&m:E,U=[],q={},A=null,b=null,T=null,H=null,O=null,L=function(){A&&I(A)};return{$$type:"ais.index",$$widgetType:"ais.index",_isolated:j,getIndexName:function(){return x},getIndexId:function(){return y},getHelper:function(){return T},getResults:function(){return(null==H?void 0:H.lastResults)?(H.lastResults._state=T.state,H.lastResults):null},getResultsForWidget:function(e){return"recommend"!==e.dependsOn||c.isIndexWidget(e)||void 0===e.$$id?this.getResults():(null==T?void 0:T.lastRecommendResults)?T.lastRecommendResults[e.$$id]:null},getPreviousState:function(){return O},getScopedResults:function(){var e=this.getParent();return W(e?e.getWidgets():0===x.length?this.getWidgets():[this])},getParent:function(){return j?null:b},createURL:function(t){return"function"==typeof t?A._createURL(e._({},y,t(q))):A._createURL(e._({},y,R(U,{searchParameters:t,helper:T})))},scheduleLocalSearch:u.defer(function(){j&&(null==T||T.search())}),getWidgets:function(){return U},addWidgets:function(e){var t=this;if(!Array.isArray(e))throw new Error(f("The `addWidgets` method expects an array of widgets."));var r=e.reduce(function(e,t){return e.concat(Array.isArray(t)?t:[t])},[]);if(r.some(function(e){return"function"!=typeof e.init&&"function"!=typeof e.render}))throw new Error(f("The widget definition expects a `render` and/or an `init` method."));return r.forEach(function(e){e.parent=t,c.isIndexWidget(e)||d.addWidgetId(e)}),U=U.concat(r),L(),A&&Boolean(r.length)&&(S(T,{state:p(U,{uiState:q,initialSearchParameters:T.state}),recommendState:v(U,{uiState:q,initialRecommendParameters:T.recommendState}),_uiState:q}),r.forEach(function(e){if(e.getRenderState){var r=e.getRenderState(A.renderState[t.getIndexId()]||{},g.createInitArgs(A,t,A._initialUiState));g.storeRenderState({renderState:r,instantSearchInstance:A,parent:t})}}),r.forEach(function(e){e.init&&e.init(g.createInitArgs(A,t,A._initialUiState))}),j?this.scheduleLocalSearch():A.scheduleSearch()),this},removeWidgets:function(e){var r=this;if(!Array.isArray(e))throw new Error(f("The `removeWidgets` method expects an array of widgets."));var n=e.reduce(function(e,t){return e.concat(Array.isArray(t)?t:[t])},[]);if(n.some(function(e){return"function"!=typeof e.dispose}))throw new Error(f("The widget definition expects a `dispose` method."));if(U=U.filter(function(e){return-1===n.indexOf(e)}),n.forEach(function(e){e.parent=void 0}),L(),A&&Boolean(n.length)){var a=n.reduce(function(e,n){var a=n.dispose({helper:T,state:e.cleanedSearchState,recommendState:e.cleanedRecommendState,parent:r});return t._(a,s.default.RecommendParameters)?e.cleanedRecommendState=a:a&&(e.cleanedSearchState=a),e},{cleanedSearchState:T.state,cleanedRecommendState:T.recommendState}),i=a.cleanedSearchState,d=a.cleanedRecommendState,c=A.future.preserveSharedStateOnUnmount?p(U,{uiState:q,initialSearchParameters:new s.default.SearchParameters({index:this.getIndexName()})}):p(U,{uiState:R(U,{searchParameters:i,helper:T}),initialSearchParameters:i});q=R(U,{searchParameters:c,helper:T}),T.setState(c),T.recommendState=d,U.length&&(j?this.scheduleLocalSearch():A.scheduleSearch())}return this},init:function(e){var t,r=this,n=e.instantSearchInstance,a=e.parent,d=e.uiState;if(null===T){A=n,b=a,q=d[y]||{};var c=n.mainHelper,u=p(U,{uiState:q,initialSearchParameters:new s.default.SearchParameters({index:x})}),m=v(U,{uiState:q,initialRecommendParameters:new s.default.RecommendParameters});(T=s.default(c.getClient(),u.index,u)).recommendState=m,T.search=function(){return j?(n.status="loading",r.render({instantSearchInstance:n}),n.compositionID?T.searchWithComposition():T.searchOnlyWithDerivedHelpers()):n.onStateChange?(n.onStateChange({uiState:n.mainIndex.getWidgetUiState({}),setUiState:function(e){return n.setUiState(e,!1)}}),c):c.search()},T.searchWithoutTriggeringOnStateChange=function(){return c.search()},T.searchForFacetValues=function(e,t,n,a){var s=h.mergeSearchParameters.apply(void 0,[c.state].concat(i._(o.resolveSearchParameters(r)))).setQueryParameters(a);return c.searchForFacetValues(e,t,n,s)};var f=x?T:s.default({},"__empty_index__",{}),S=j?f:function(e,t){for(;e;){if(e._isolated)return e.getHelper();e=e.getParent()}return t}(a,c);H=S.derive(function(){return h.mergeSearchParameters.apply(void 0,[c.state].concat(i._(o.resolveSearchParameters(r))))},function(){return l.addInsightsToRecommendParameters(r.getHelper().recommendState,c.state)});var W=null===(t=n._initialResults)||void 0===t?void 0:t[this.getIndexId()];if(null==W?void 0:W.results){var P=new s.default.SearchResults(new s.default.SearchParameters(W.state),W.results);H.lastResults=P,T.lastResults=P}if(null==W?void 0:W.recommendResults){var I=new s.default.RecommendResults(new s.default.RecommendParameters({params:W.recommendResults.params}),W.recommendResults.results);H.lastRecommendResults=I,T.lastRecommendResults=I}T.on("change",function(e){e.isPageReset&&_(U)}),H.on("search",function(){n.scheduleStalledRender()}),H.on("result",function(e){var t=e.results;n.scheduleRender(),T.lastResults=t,O=null==t?void 0:t._state}),H.on("recommend:result",function(e){var t=e.recommend;n.scheduleRender(),T.lastRecommendResults=t.results}),U.forEach(function(e){if(e.getRenderState){var t=e.getRenderState(n.renderState[r.getIndexId()]||{},g.createInitArgs(n,r,d));g.storeRenderState({renderState:t,instantSearchInstance:n,parent:r})}}),U.forEach(function(e){e.init&&e.init(g.createInitArgs(n,r,d))}),T.on("change",function(e){var t=e.state,r=e._uiState;q=R(U,{searchParameters:t,helper:T},r||{}),n.onStateChange||n.onInternalStateChange()}),W&&n.scheduleRender(),L()}},render:function(e){var t=this,r=e.instantSearchInstance;"error"===r.status&&!r.mainHelper.hasPendingRequests()&&O&&T.setState(O);var n=this.getResults()||(null==H?void 0:H.lastRecommendResults)||j&&!x?U:U.filter(function(e){return e.shouldRender});(n=n.filter(function(e){return!e.shouldRender||e.shouldRender({instantSearchInstance:r})})).forEach(function(e){if(e.getRenderState){var n=e.getRenderState(r.renderState[t.getIndexId()]||{},g.createRenderArgs(r,t,e));g.storeRenderState({renderState:n,instantSearchInstance:r,parent:t})}}),n.forEach(function(e){e.render&&e.render(g.createRenderArgs(r,t,e))})},dispose:function(){var e=this;U.forEach(function(t){t.dispose&&T&&t.dispose({helper:T,state:T.state,recommendState:T.recommendState,parent:e})}),A=null,b=null,null==T||T.removeAllListeners(),T=null,null==H||H.detach(),H=null},getWidgetUiState:function(t){return U.filter(c.isIndexWidget).filter(function(e){return!e._isolated}).reduce(function(e,t){return t.getWidgetUiState(e)},n._(r._({},t),e._({},y,r._({},t[y],q))))},getWidgetState:function(e){return this.getWidgetUiState(e)},getWidgetSearchParameters:function(e,t){var r=t.uiState;return p(U,{uiState:r,initialSearchParameters:e})},shouldRender:function(){return!0},refreshUiState:function(){q=R(U,{searchParameters:this.getHelper().state,helper:this.getHelper()},q)},setIndexUiState:function(t){var a="function"==typeof t?t(q):t;A.setUiState(function(t){return n._(r._({},t),e._({},y,a))})}}};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../../node_modules/instantsearch.js/es/widgets/index/index.js"],"sourcesContent":["import { _ } from '@swc/helpers/esm/_define_property.js';\nimport { _ as _$5 } from '@swc/helpers/esm/_instanceof.js';\nimport { _ as _$3 } from '@swc/helpers/esm/_object_spread.js';\nimport { _ as _$2 } from '@swc/helpers/esm/_object_spread_props.js';\nimport { _ as _$4 } from '@swc/helpers/esm/_object_without_properties.js';\nimport { _ as _$1 } from '@swc/helpers/esm/_to_consumable_array.js';\nimport algoliasearchHelper from 'algoliasearch-helper';\nimport { addWidgetId } from '../../lib/utils/addWidgetId.js';\nimport { isIndexWidget } from '../../lib/utils/isIndexWidget.js';\nimport { defer } from '../../lib/utils/defer.js';\nimport { resolveSearchParameters } from '../../lib/utils/resolveSearchParameters.js';\nimport { createDocumentationMessageGenerator } from '../../lib/utils/documentation.js';\nimport { mergeSearchParameters } from '../../lib/utils/mergeSearchParameters.js';\nimport { createInitArgs, storeRenderState, createRenderArgs } from '../../lib/utils/render-args.js';\n\nvar withUsage = createDocumentationMessageGenerator({\n name: 'index-widget'\n});\n/**\n * This is the same content as helper._change / setState, but allowing for extra\n * UiState to be synchronized.\n * see: https://github.com/algolia/algoliasearch-helper-js/blob/6b835ffd07742f2d6b314022cce6848f5cfecd4a/src/algoliasearch.helper.js#L1311-L1324\n */ function privateHelperSetState(helper, param) {\n var state = param.state, recommendState = param.recommendState, isPageReset = param.isPageReset, _uiState = param._uiState;\n if (state !== helper.state) {\n helper.state = state;\n helper.emit('change', {\n state: helper.state,\n results: helper.lastResults,\n isPageReset: isPageReset,\n _uiState: _uiState\n });\n }\n if (recommendState !== helper.recommendState) {\n helper.recommendState = recommendState;\n // eslint-disable-next-line no-warning-comments\n // TODO: emit \"change\" event when events for Recommend are implemented\n }\n}\nfunction getLocalWidgetsUiState(widgets, widgetStateOptions) {\n var initialUiState = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n return widgets.reduce(function(uiState, widget) {\n if (isIndexWidget(widget)) {\n return uiState;\n }\n if (!widget.getWidgetUiState && !widget.getWidgetState) {\n return uiState;\n }\n if (widget.getWidgetUiState) {\n return widget.getWidgetUiState(uiState, widgetStateOptions);\n }\n return widget.getWidgetState(uiState, widgetStateOptions);\n }, initialUiState);\n}\nfunction getLocalWidgetsSearchParameters(widgets, widgetSearchParametersOptions) {\n var initialSearchParameters = widgetSearchParametersOptions.initialSearchParameters, rest = _$4(widgetSearchParametersOptions, [\n \"initialSearchParameters\"\n ]);\n return widgets.reduce(function(state, widget) {\n if (!widget.getWidgetSearchParameters || isIndexWidget(widget)) {\n return state;\n }\n if (widget.dependsOn === 'search' && widget.getWidgetParameters) {\n return widget.getWidgetParameters(state, rest);\n }\n return widget.getWidgetSearchParameters(state, rest);\n }, initialSearchParameters);\n}\nfunction getLocalWidgetsRecommendParameters(widgets, widgetRecommendParametersOptions) {\n var initialRecommendParameters = widgetRecommendParametersOptions.initialRecommendParameters, rest = _$4(widgetRecommendParametersOptions, [\n \"initialRecommendParameters\"\n ]);\n return widgets.reduce(function(state, widget) {\n if (!isIndexWidget(widget) && widget.dependsOn === 'recommend' && widget.getWidgetParameters) {\n return widget.getWidgetParameters(state, rest);\n }\n return state;\n }, initialRecommendParameters);\n}\nfunction resetPageFromWidgets(widgets) {\n var indexWidgets = widgets.filter(isIndexWidget);\n if (indexWidgets.length === 0) {\n return;\n }\n indexWidgets.forEach(function(widget) {\n var widgetHelper = widget.getHelper();\n privateHelperSetState(widgetHelper, {\n state: widgetHelper.state.resetPage(),\n recommendState: widgetHelper.recommendState,\n isPageReset: true\n });\n resetPageFromWidgets(widget.getWidgets());\n });\n}\nfunction resolveScopedResultsFromWidgets(widgets) {\n var indexWidgets = widgets.filter(isIndexWidget);\n return indexWidgets.reduce(function(scopedResults, current) {\n var _scopedResults;\n return (_scopedResults = scopedResults).concat.apply(_scopedResults, [\n {\n indexId: current.getIndexId(),\n results: current.getResults(),\n helper: current.getHelper()\n }\n ].concat(_$1(resolveScopedResultsFromWidgets(current.getWidgets()))));\n }, []);\n}\nfunction getWidgetsRequestDependencies(widgets) {\n return widgets.reduce(function(dependencies, widget) {\n if (isIndexWidget(widget)) {\n if (widget._isolated) {\n return dependencies;\n }\n var childDependencies = getWidgetsRequestDependencies(widget.getWidgets());\n return {\n hasSearchWidget: dependencies.hasSearchWidget || childDependencies.hasSearchWidget,\n hasRecommendWidget: dependencies.hasRecommendWidget || childDependencies.hasRecommendWidget\n };\n }\n if (widget.dependsOn === 'recommend') {\n return _$2(_$3({}, dependencies), {\n hasRecommendWidget: true\n });\n }\n if (widget.dependsOn === 'none') {\n return dependencies;\n }\n return _$2(_$3({}, dependencies), {\n hasSearchWidget: true\n });\n }, {\n hasSearchWidget: false,\n hasRecommendWidget: false\n });\n}\nfunction recomputeInstantSearchRequestDependencies(instantSearchInstance) {\n var _getWidgetsRequestDependencies = getWidgetsRequestDependencies(instantSearchInstance.mainIndex.getWidgets()), hasSearchWidget = _getWidgetsRequestDependencies.hasSearchWidget, hasRecommendWidget = _getWidgetsRequestDependencies.hasRecommendWidget;\n instantSearchInstance._hasSearchWidget = hasSearchWidget;\n instantSearchInstance._hasRecommendWidget = hasRecommendWidget;\n}\nvar index = function index(widgetParams) {\n var _widgetParams_EXPERIMENTAL_isolated;\n if (widgetParams === undefined || widgetParams.indexName === undefined && !widgetParams.isolated && !widgetParams.EXPERIMENTAL_isolated) {\n throw new Error(withUsage('The `indexName` option is required.'));\n }\n // When isolated=true, we use an empty string as the default indexName.\n // This is intentional: isolated indices do not require a real index name.\n var _widgetParams_indexName = widgetParams.indexName, indexName = _widgetParams_indexName === void 0 ? '' : _widgetParams_indexName, _widgetParams_indexId = widgetParams.indexId, indexId = _widgetParams_indexId === void 0 ? indexName : _widgetParams_indexId, _widgetParams_isolated = widgetParams.isolated, isolated = _widgetParams_isolated === void 0 ? (_widgetParams_EXPERIMENTAL_isolated = widgetParams.EXPERIMENTAL_isolated) !== null && _widgetParams_EXPERIMENTAL_isolated !== void 0 ? _widgetParams_EXPERIMENTAL_isolated : false : _widgetParams_isolated;\n var localWidgets = [];\n var localUiState = {};\n var localInstantSearchInstance = null;\n var localParent = null;\n var helper = null;\n var derivedHelper = null;\n var lastValidSearchParameters = null;\n var recomputeLocalRequestDependencies = function recomputeLocalRequestDependencies() {\n if (localInstantSearchInstance) {\n recomputeInstantSearchRequestDependencies(localInstantSearchInstance);\n }\n };\n return {\n $$type: 'ais.index',\n $$widgetType: 'ais.index',\n _isolated: isolated,\n getIndexName: function getIndexName() {\n return indexName;\n },\n getIndexId: function getIndexId() {\n return indexId;\n },\n getHelper: function getHelper() {\n return helper;\n },\n getResults: function getResults() {\n if (!(derivedHelper === null || derivedHelper === void 0 ? void 0 : derivedHelper.lastResults)) return null;\n // To make the UI optimistic, we patch the state to display to the current\n // one instead of the one associated with the latest results.\n // This means user-driven UI changes (e.g., checked checkbox) are reflected\n // immediately instead of waiting for Algolia to respond, regardless of\n // the status of the network request.\n derivedHelper.lastResults._state = helper.state;\n return derivedHelper.lastResults;\n },\n getResultsForWidget: function getResultsForWidget(widget) {\n if (widget.dependsOn !== 'recommend' || isIndexWidget(widget) || widget.$$id === undefined) {\n return this.getResults();\n }\n if (!(helper === null || helper === void 0 ? void 0 : helper.lastRecommendResults)) {\n return null;\n }\n return helper.lastRecommendResults[widget.$$id];\n },\n getPreviousState: function getPreviousState() {\n return lastValidSearchParameters;\n },\n getScopedResults: function getScopedResults() {\n var widgetParent = this.getParent();\n var widgetSiblings;\n if (widgetParent) {\n widgetSiblings = widgetParent.getWidgets();\n } else if (indexName.length === 0) {\n // The widget is the root but has no index name:\n // we resolve results from its children index widgets\n widgetSiblings = this.getWidgets();\n } else {\n // The widget is the root and has an index name:\n // we consider itself as the only sibling\n widgetSiblings = [\n this\n ];\n }\n return resolveScopedResultsFromWidgets(widgetSiblings);\n },\n getParent: function getParent() {\n return isolated ? null : localParent;\n },\n createURL: function createURL(nextState) {\n if (typeof nextState === 'function') {\n return localInstantSearchInstance._createURL(_({}, indexId, nextState(localUiState)));\n }\n return localInstantSearchInstance._createURL(_({}, indexId, getLocalWidgetsUiState(localWidgets, {\n searchParameters: nextState,\n helper: helper\n })));\n },\n scheduleLocalSearch: defer(function() {\n if (isolated) {\n helper === null || helper === void 0 ? void 0 : helper.search();\n }\n }),\n getWidgets: function getWidgets() {\n return localWidgets;\n },\n addWidgets: function addWidgets(widgets) {\n var _this = this;\n if (!Array.isArray(widgets)) {\n throw new Error(withUsage('The `addWidgets` method expects an array of widgets.'));\n }\n var flatWidgets = widgets.reduce(function(acc, w) {\n return acc.concat(Array.isArray(w) ? w : [\n w\n ]);\n }, []);\n if (flatWidgets.some(function(widget) {\n return typeof widget.init !== 'function' && typeof widget.render !== 'function';\n })) {\n throw new Error(withUsage('The widget definition expects a `render` and/or an `init` method.'));\n }\n flatWidgets.forEach(function(widget) {\n widget.parent = _this;\n if (!isIndexWidget(widget)) {\n addWidgetId(widget);\n }\n });\n localWidgets = localWidgets.concat(flatWidgets);\n recomputeLocalRequestDependencies();\n if (localInstantSearchInstance && Boolean(flatWidgets.length)) {\n privateHelperSetState(helper, {\n state: getLocalWidgetsSearchParameters(localWidgets, {\n uiState: localUiState,\n initialSearchParameters: helper.state\n }),\n recommendState: getLocalWidgetsRecommendParameters(localWidgets, {\n uiState: localUiState,\n initialRecommendParameters: helper.recommendState\n }),\n _uiState: localUiState\n });\n // We compute the render state before calling `init` in a separate loop\n // to construct the whole render state object that is then passed to\n // `init`.\n flatWidgets.forEach(function(widget) {\n if (widget.getRenderState) {\n var renderState = widget.getRenderState(localInstantSearchInstance.renderState[_this.getIndexId()] || {}, createInitArgs(localInstantSearchInstance, _this, localInstantSearchInstance._initialUiState));\n storeRenderState({\n renderState: renderState,\n instantSearchInstance: localInstantSearchInstance,\n parent: _this\n });\n }\n });\n flatWidgets.forEach(function(widget) {\n if (widget.init) {\n widget.init(createInitArgs(localInstantSearchInstance, _this, localInstantSearchInstance._initialUiState));\n }\n });\n if (isolated) {\n this.scheduleLocalSearch();\n } else {\n localInstantSearchInstance.scheduleSearch();\n }\n }\n return this;\n },\n removeWidgets: function removeWidgets(widgets) {\n var _this = this;\n if (!Array.isArray(widgets)) {\n throw new Error(withUsage('The `removeWidgets` method expects an array of widgets.'));\n }\n var flatWidgets = widgets.reduce(function(acc, w) {\n return acc.concat(Array.isArray(w) ? w : [\n w\n ]);\n }, []);\n if (flatWidgets.some(function(widget) {\n return typeof widget.dispose !== 'function';\n })) {\n throw new Error(withUsage('The widget definition expects a `dispose` method.'));\n }\n localWidgets = localWidgets.filter(function(widget) {\n return flatWidgets.indexOf(widget) === -1;\n });\n flatWidgets.forEach(function(widget) {\n widget.parent = undefined;\n });\n recomputeLocalRequestDependencies();\n if (localInstantSearchInstance && Boolean(flatWidgets.length)) {\n var _flatWidgets_reduce = flatWidgets.reduce(function(states, widget) {\n // the `dispose` method exists at this point we already assert it\n var next = widget.dispose({\n helper: helper,\n state: states.cleanedSearchState,\n recommendState: states.cleanedRecommendState,\n parent: _this\n });\n if (_$5(next, algoliasearchHelper.RecommendParameters)) {\n states.cleanedRecommendState = next;\n } else if (next) {\n states.cleanedSearchState = next;\n }\n return states;\n }, {\n cleanedSearchState: helper.state,\n cleanedRecommendState: helper.recommendState\n }), cleanedSearchState = _flatWidgets_reduce.cleanedSearchState, cleanedRecommendState = _flatWidgets_reduce.cleanedRecommendState;\n var newState = localInstantSearchInstance.future.preserveSharedStateOnUnmount ? getLocalWidgetsSearchParameters(localWidgets, {\n uiState: localUiState,\n initialSearchParameters: new algoliasearchHelper.SearchParameters({\n index: this.getIndexName()\n })\n }) : getLocalWidgetsSearchParameters(localWidgets, {\n uiState: getLocalWidgetsUiState(localWidgets, {\n searchParameters: cleanedSearchState,\n helper: helper\n }),\n initialSearchParameters: cleanedSearchState\n });\n localUiState = getLocalWidgetsUiState(localWidgets, {\n searchParameters: newState,\n helper: helper\n });\n helper.setState(newState);\n helper.recommendState = cleanedRecommendState;\n if (localWidgets.length) {\n if (isolated) {\n this.scheduleLocalSearch();\n } else {\n localInstantSearchInstance.scheduleSearch();\n }\n }\n }\n return this;\n },\n init: function init(param) {\n var _this = this;\n var instantSearchInstance = param.instantSearchInstance, parent = param.parent, uiState = param.uiState;\n var _instantSearchInstance__initialResults;\n if (helper !== null) {\n // helper is already initialized, therefore we do not need to set up\n // any listeners\n return;\n }\n localInstantSearchInstance = instantSearchInstance;\n localParent = parent;\n localUiState = uiState[indexId] || {};\n // The `mainHelper` is already defined at this point. The instance is created\n // inside InstantSearch at the `start` method, which occurs before the `init`\n // step.\n var mainHelper = instantSearchInstance.mainHelper;\n var parameters = getLocalWidgetsSearchParameters(localWidgets, {\n uiState: localUiState,\n initialSearchParameters: new algoliasearchHelper.SearchParameters({\n index: indexName\n })\n });\n var recommendParameters = getLocalWidgetsRecommendParameters(localWidgets, {\n uiState: localUiState,\n initialRecommendParameters: new algoliasearchHelper.RecommendParameters()\n });\n // This Helper is only used for state management we do not care about the\n // `searchClient`. Only the \"main\" Helper created at the `InstantSearch`\n // level is aware of the client.\n helper = algoliasearchHelper(mainHelper.getClient(), parameters.index, parameters);\n helper.recommendState = recommendParameters;\n // We forward the call to `search` to the \"main\" instance of the Helper\n // which is responsible for managing the queries (it's the only one that is\n // aware of the `searchClient`).\n helper.search = function() {\n if (isolated) {\n instantSearchInstance.status = 'loading';\n _this.render({\n instantSearchInstance: instantSearchInstance\n });\n return instantSearchInstance.compositionID ? helper.searchWithComposition() : helper.searchOnlyWithDerivedHelpers();\n }\n if (instantSearchInstance.onStateChange) {\n instantSearchInstance.onStateChange({\n uiState: instantSearchInstance.mainIndex.getWidgetUiState({}),\n setUiState: function setUiState(nextState) {\n return instantSearchInstance.setUiState(nextState, false);\n }\n });\n // We don't trigger a search when controlled because it becomes the\n // responsibility of `setUiState`.\n return mainHelper;\n }\n return mainHelper.search();\n };\n helper.searchWithoutTriggeringOnStateChange = function() {\n return mainHelper.search();\n };\n // We use the same pattern for the `searchForFacetValues`.\n helper.searchForFacetValues = function(facetName, facetValue, maxFacetHits, userState) {\n var state = mergeSearchParameters.apply(void 0, [\n mainHelper.state\n ].concat(_$1(resolveSearchParameters(_this)))).setQueryParameters(userState);\n return mainHelper.searchForFacetValues(facetName, facetValue, maxFacetHits, state);\n };\n var isolatedHelper = indexName ? helper : algoliasearchHelper({}, '__empty_index__', {});\n var derivingHelper = isolated ? isolatedHelper : nearestIsolatedHelper(parent, mainHelper);\n derivedHelper = derivingHelper.derive(function() {\n return mergeSearchParameters.apply(void 0, [\n mainHelper.state\n ].concat(_$1(resolveSearchParameters(_this))));\n }, function() {\n return _this.getHelper().recommendState;\n });\n var indexInitialResults = (_instantSearchInstance__initialResults = instantSearchInstance._initialResults) === null || _instantSearchInstance__initialResults === void 0 ? void 0 : _instantSearchInstance__initialResults[this.getIndexId()];\n if (indexInitialResults === null || indexInitialResults === void 0 ? void 0 : indexInitialResults.results) {\n // We restore the shape of the results provided to the instance to respect\n // the helper's structure.\n var results = new algoliasearchHelper.SearchResults(new algoliasearchHelper.SearchParameters(indexInitialResults.state), indexInitialResults.results);\n derivedHelper.lastResults = results;\n helper.lastResults = results;\n }\n if (indexInitialResults === null || indexInitialResults === void 0 ? void 0 : indexInitialResults.recommendResults) {\n var recommendResults = new algoliasearchHelper.RecommendResults(new algoliasearchHelper.RecommendParameters({\n params: indexInitialResults.recommendResults.params\n }), indexInitialResults.recommendResults.results);\n derivedHelper.lastRecommendResults = recommendResults;\n helper.lastRecommendResults = recommendResults;\n }\n // Subscribe to the Helper state changes for the page before widgets\n // are initialized. This behavior mimics the original one of the Helper.\n // It makes sense to replicate it at the `init` step. We have another\n // listener on `change` below, once `init` is done.\n helper.on('change', function(param) {\n var isPageReset = param.isPageReset;\n if (isPageReset) {\n resetPageFromWidgets(localWidgets);\n }\n });\n derivedHelper.on('search', function() {\n // The index does not manage the \"staleness\" of the search. This is the\n // responsibility of the main instance. It does not make sense to manage\n // it at the index level because it's either: all of them or none of them\n // that are stalled. The queries are performed into a single network request.\n instantSearchInstance.scheduleStalledRender();\n });\n derivedHelper.on('result', function(param) {\n var results = param.results;\n // The index does not render the results it schedules a new render\n // to let all the other indices emit their own results. It allows us to\n // run the render process in one pass.\n instantSearchInstance.scheduleRender();\n // the derived helper is the one which actually searches, but the helper\n // which is exposed e.g. via instance.helper, doesn't search, and thus\n // does not have access to lastResults, which it used to in pre-federated\n // search behavior.\n helper.lastResults = results;\n lastValidSearchParameters = results === null || results === void 0 ? void 0 : results._state;\n });\n // eslint-disable-next-line no-warning-comments\n // TODO: listen to \"result\" event when events for Recommend are implemented\n derivedHelper.on('recommend:result', function(param) {\n var recommend = param.recommend;\n // The index does not render the results it schedules a new render\n // to let all the other indices emit their own results. It allows us to\n // run the render process in one pass.\n instantSearchInstance.scheduleRender();\n // the derived helper is the one which actually searches, but the helper\n // which is exposed e.g. via instance.helper, doesn't search, and thus\n // does not have access to lastRecommendResults.\n helper.lastRecommendResults = recommend.results;\n });\n // We compute the render state before calling `init` in a separate loop\n // to construct the whole render state object that is then passed to\n // `init`.\n localWidgets.forEach(function(widget) {\n if (widget.getRenderState) {\n var renderState = widget.getRenderState(instantSearchInstance.renderState[_this.getIndexId()] || {}, createInitArgs(instantSearchInstance, _this, uiState));\n storeRenderState({\n renderState: renderState,\n instantSearchInstance: instantSearchInstance,\n parent: _this\n });\n }\n });\n localWidgets.forEach(function(widget) {\n if (widget.init) {\n widget.init(createInitArgs(instantSearchInstance, _this, uiState));\n }\n });\n // Subscribe to the Helper state changes for the `uiState` once widgets\n // are initialized. Until the first render, state changes are part of the\n // configuration step. This is mainly for backward compatibility with custom\n // widgets. When the subscription happens before the `init` step, the (static)\n // configuration of the widget is pushed in the URL. That's what we want to avoid.\n // https://github.com/algolia/instantsearch/pull/994/commits/4a672ae3fd78809e213de0368549ef12e9dc9454\n helper.on('change', function(event) {\n var state = event.state;\n var _uiState = event._uiState;\n localUiState = getLocalWidgetsUiState(localWidgets, {\n searchParameters: state,\n helper: helper\n }, _uiState || {});\n // We don't trigger an internal change when controlled because it\n // becomes the responsibility of `setUiState`.\n if (!instantSearchInstance.onStateChange) {\n instantSearchInstance.onInternalStateChange();\n }\n });\n if (indexInitialResults) {\n // If there are initial results, we're not notified of the next results\n // because we don't trigger an initial search. We therefore need to directly\n // schedule a render that will render the results injected on the helper.\n instantSearchInstance.scheduleRender();\n }\n recomputeLocalRequestDependencies();\n },\n render: function render(param) {\n var _this = this;\n var instantSearchInstance = param.instantSearchInstance;\n // we can't attach a listener to the error event of search, as the error\n // then would no longer be thrown for global handlers.\n if (instantSearchInstance.status === 'error' && !instantSearchInstance.mainHelper.hasPendingRequests() && lastValidSearchParameters) {\n helper.setState(lastValidSearchParameters);\n }\n // We only render index widgets if there are no results.\n // This makes sure `render` is never called with `results` being `null`.\n // If it's an isolated index without an index name, we render all widgets,\n // as there are no results to display for the isolated index itself.\n var widgetsToRender = this.getResults() || (derivedHelper === null || derivedHelper === void 0 ? void 0 : derivedHelper.lastRecommendResults) || isolated && !indexName ? localWidgets : localWidgets.filter(function(widget) {\n return widget.shouldRender;\n });\n widgetsToRender = widgetsToRender.filter(function(widget) {\n if (!widget.shouldRender) {\n return true;\n }\n return widget.shouldRender({\n instantSearchInstance: instantSearchInstance\n });\n });\n widgetsToRender.forEach(function(widget) {\n if (widget.getRenderState) {\n var renderState = widget.getRenderState(instantSearchInstance.renderState[_this.getIndexId()] || {}, createRenderArgs(instantSearchInstance, _this, widget));\n storeRenderState({\n renderState: renderState,\n instantSearchInstance: instantSearchInstance,\n parent: _this\n });\n }\n });\n widgetsToRender.forEach(function(widget) {\n // At this point, all the variables used below are set. Both `helper`\n // and `derivedHelper` have been created at the `init` step. The attribute\n // `lastResults` might be `null` though. It's possible that a stalled render\n // happens before the result e.g with a dynamically added index the request might\n // be delayed. The render is triggered for the complete tree but some parts do\n // not have results yet.\n if (widget.render) {\n widget.render(createRenderArgs(instantSearchInstance, _this, widget));\n }\n });\n },\n dispose: function dispose() {\n var _this = this;\n localWidgets.forEach(function(widget) {\n if (widget.dispose && helper) {\n // The dispose function is always called once the instance is started\n // (it's an effect of `removeWidgets`). The index is initialized and\n // the Helper is available. We don't care about the return value of\n // `dispose` because the index is removed. We can't call `removeWidgets`\n // because we want to keep the widgets on the instance, to allow idempotent\n // operations on `add` & `remove`.\n widget.dispose({\n helper: helper,\n state: helper.state,\n recommendState: helper.recommendState,\n parent: _this\n });\n }\n });\n localInstantSearchInstance = null;\n localParent = null;\n helper === null || helper === void 0 ? void 0 : helper.removeAllListeners();\n helper = null;\n derivedHelper === null || derivedHelper === void 0 ? void 0 : derivedHelper.detach();\n derivedHelper = null;\n },\n getWidgetUiState: function getWidgetUiState(uiState) {\n return localWidgets.filter(isIndexWidget).filter(function(w) {\n return !w._isolated;\n }).reduce(function(previousUiState, innerIndex) {\n return innerIndex.getWidgetUiState(previousUiState);\n }, _$2(_$3({}, uiState), _({}, indexId, _$3({}, uiState[indexId], localUiState))));\n },\n getWidgetState: function getWidgetState(uiState) {\n return this.getWidgetUiState(uiState);\n },\n getWidgetSearchParameters: function getWidgetSearchParameters(searchParameters, param) {\n var uiState = param.uiState;\n return getLocalWidgetsSearchParameters(localWidgets, {\n uiState: uiState,\n initialSearchParameters: searchParameters\n });\n },\n shouldRender: function shouldRender() {\n return true;\n },\n refreshUiState: function refreshUiState() {\n localUiState = getLocalWidgetsUiState(localWidgets, {\n searchParameters: this.getHelper().state,\n helper: this.getHelper()\n }, localUiState);\n },\n setIndexUiState: function setIndexUiState(indexUiState) {\n var nextIndexUiState = typeof indexUiState === 'function' ? indexUiState(localUiState) : indexUiState;\n localInstantSearchInstance.setUiState(function(state) {\n return _$2(_$3({}, state), _({}, indexId, nextIndexUiState));\n });\n }\n };\n};\n/**\n * Walk up the parent chain to find the closest isolated index, or fall back to mainHelper\n */ function nearestIsolatedHelper(current, mainHelper) {\n while(current){\n if (current._isolated) {\n return current.getHelper();\n }\n current = current.getParent();\n }\n return mainHelper;\n}\n\nexport { index as default };\n"],"names":["withUsage","createDocumentationMessageGenerator","name","privateHelperSetState","helper","param","state","recommendState","isPageReset","_uiState","emit","results","lastResults","getLocalWidgetsUiState","widgets","widgetStateOptions","initialUiState","arguments","length","reduce","uiState","widget","isIndexWidget","getWidgetUiState","getWidgetState","getLocalWidgetsSearchParameters","widgetSearchParametersOptions","initialSearchParameters","rest","_$4","getWidgetSearchParameters","dependsOn","getWidgetParameters","getLocalWidgetsRecommendParameters","widgetRecommendParametersOptions","initialRecommendParameters","resetPageFromWidgets","indexWidgets","filter","forEach","widgetHelper","getHelper","resetPage","getWidgets","resolveScopedResultsFromWidgets","scopedResults","current","_scopedResults","concat","apply","indexId","getIndexId","getResults","_$1","getWidgetsRequestDependencies","dependencies","_isolated","childDependencies","hasSearchWidget","hasRecommendWidget","_$2","_$3","recomputeInstantSearchRequestDependencies","instantSearchInstance","_getWidgetsRequestDependencies","mainIndex","_hasSearchWidget","_hasRecommendWidget","widgetParams","_widgetParams_EXPERIMENTAL_isolated","undefined","indexName","isolated","EXPERIMENTAL_isolated","Error","_widgetParams_indexName","_widgetParams_indexId","_widgetParams_isolated","localWidgets","localUiState","localInstantSearchInstance","localParent","derivedHelper","lastValidSearchParameters","recomputeLocalRequestDependencies","$$type","$$widgetType","getIndexName","_state","getResultsForWidget","$$id","this","lastRecommendResults","getPreviousState","getScopedResults","widgetParent","getParent","createURL","nextState","_createURL","_","searchParameters","scheduleLocalSearch","defer","search","addWidgets","_this","Array","isArray","flatWidgets","acc","w","some","init","render","parent","addWidgetId","Boolean","getRenderState","renderState","createInitArgs","_initialUiState","storeRenderState","scheduleSearch","removeWidgets","dispose","indexOf","_flatWidgets_reduce","states","next","cleanedSearchState","cleanedRecommendState","_$5","algoliasearchHelper","RecommendParameters","newState","future","preserveSharedStateOnUnmount","SearchParameters","index","setState","_instantSearchInstance__initialResults","mainHelper","parameters","recommendParameters","getClient","status","compositionID","searchWithComposition","searchOnlyWithDerivedHelpers","onStateChange","setUiState","searchWithoutTriggeringOnStateChange","searchForFacetValues","facetName","facetValue","maxFacetHits","userState","mergeSearchParameters","resolveSearchParameters","setQueryParameters","isolatedHelper","derivingHelper","nearestIsolatedHelper","derive","indexInitialResults","_initialResults","SearchResults","recommendResults","RecommendResults","params","on","scheduleStalledRender","scheduleRender","recommend","event","onInternalStateChange","hasPendingRequests","widgetsToRender","shouldRender","createRenderArgs","removeAllListeners","detach","previousUiState","innerIndex","refreshUiState","setIndexUiState","indexUiState","nextIndexUiState"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../node_modules/instantsearch.js/es/widgets/index/index.js"],"sourcesContent":["import { _ } from '@swc/helpers/esm/_define_property.js';\nimport { _ as _$5 } from '@swc/helpers/esm/_instanceof.js';\nimport { _ as _$3 } from '@swc/helpers/esm/_object_spread.js';\nimport { _ as _$2 } from '@swc/helpers/esm/_object_spread_props.js';\nimport { _ as _$4 } from '@swc/helpers/esm/_object_without_properties.js';\nimport { _ as _$1 } from '@swc/helpers/esm/_to_consumable_array.js';\nimport algoliasearchHelper from 'algoliasearch-helper';\nimport { addWidgetId } from '../../lib/utils/addWidgetId.js';\nimport { isIndexWidget } from '../../lib/utils/isIndexWidget.js';\nimport { defer } from '../../lib/utils/defer.js';\nimport { resolveSearchParameters } from '../../lib/utils/resolveSearchParameters.js';\nimport { addInsightsToRecommendParameters } from '../../lib/utils/addInsightsToRecommendParameters.js';\nimport { createDocumentationMessageGenerator } from '../../lib/utils/documentation.js';\nimport { mergeSearchParameters } from '../../lib/utils/mergeSearchParameters.js';\nimport { createInitArgs, storeRenderState, createRenderArgs } from '../../lib/utils/render-args.js';\n\nvar withUsage = createDocumentationMessageGenerator({\n name: 'index-widget'\n});\n/**\n * This is the same content as helper._change / setState, but allowing for extra\n * UiState to be synchronized.\n * see: https://github.com/algolia/algoliasearch-helper-js/blob/6b835ffd07742f2d6b314022cce6848f5cfecd4a/src/algoliasearch.helper.js#L1311-L1324\n */ function privateHelperSetState(helper, param) {\n var state = param.state, recommendState = param.recommendState, isPageReset = param.isPageReset, _uiState = param._uiState;\n if (state !== helper.state) {\n helper.state = state;\n helper.emit('change', {\n state: helper.state,\n results: helper.lastResults,\n isPageReset: isPageReset,\n _uiState: _uiState\n });\n }\n if (recommendState !== helper.recommendState) {\n helper.recommendState = recommendState;\n // eslint-disable-next-line no-warning-comments\n // TODO: emit \"change\" event when events for Recommend are implemented\n }\n}\nfunction getLocalWidgetsUiState(widgets, widgetStateOptions) {\n var initialUiState = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n return widgets.reduce(function(uiState, widget) {\n if (isIndexWidget(widget)) {\n return uiState;\n }\n if (!widget.getWidgetUiState && !widget.getWidgetState) {\n return uiState;\n }\n if (widget.getWidgetUiState) {\n return widget.getWidgetUiState(uiState, widgetStateOptions);\n }\n return widget.getWidgetState(uiState, widgetStateOptions);\n }, initialUiState);\n}\nfunction getLocalWidgetsSearchParameters(widgets, widgetSearchParametersOptions) {\n var initialSearchParameters = widgetSearchParametersOptions.initialSearchParameters, rest = _$4(widgetSearchParametersOptions, [\n \"initialSearchParameters\"\n ]);\n return widgets.reduce(function(state, widget) {\n if (!widget.getWidgetSearchParameters || isIndexWidget(widget)) {\n return state;\n }\n if (widget.dependsOn === 'search' && widget.getWidgetParameters) {\n return widget.getWidgetParameters(state, rest);\n }\n return widget.getWidgetSearchParameters(state, rest);\n }, initialSearchParameters);\n}\nfunction getLocalWidgetsRecommendParameters(widgets, widgetRecommendParametersOptions) {\n var initialRecommendParameters = widgetRecommendParametersOptions.initialRecommendParameters, rest = _$4(widgetRecommendParametersOptions, [\n \"initialRecommendParameters\"\n ]);\n return widgets.reduce(function(state, widget) {\n if (!isIndexWidget(widget) && widget.dependsOn === 'recommend' && widget.getWidgetParameters) {\n return widget.getWidgetParameters(state, rest);\n }\n return state;\n }, initialRecommendParameters);\n}\nfunction resetPageFromWidgets(widgets) {\n var indexWidgets = widgets.filter(isIndexWidget);\n if (indexWidgets.length === 0) {\n return;\n }\n indexWidgets.forEach(function(widget) {\n var widgetHelper = widget.getHelper();\n privateHelperSetState(widgetHelper, {\n state: widgetHelper.state.resetPage(),\n recommendState: widgetHelper.recommendState,\n isPageReset: true\n });\n resetPageFromWidgets(widget.getWidgets());\n });\n}\nfunction resolveScopedResultsFromWidgets(widgets) {\n var indexWidgets = widgets.filter(isIndexWidget);\n return indexWidgets.reduce(function(scopedResults, current) {\n var _scopedResults;\n return (_scopedResults = scopedResults).concat.apply(_scopedResults, [\n {\n indexId: current.getIndexId(),\n results: current.getResults(),\n helper: current.getHelper()\n }\n ].concat(_$1(resolveScopedResultsFromWidgets(current.getWidgets()))));\n }, []);\n}\nfunction getWidgetsRequestDependencies(widgets) {\n return widgets.reduce(function(dependencies, widget) {\n if (isIndexWidget(widget)) {\n if (widget._isolated) {\n return dependencies;\n }\n var childDependencies = getWidgetsRequestDependencies(widget.getWidgets());\n return {\n hasSearchWidget: dependencies.hasSearchWidget || childDependencies.hasSearchWidget,\n hasRecommendWidget: dependencies.hasRecommendWidget || childDependencies.hasRecommendWidget\n };\n }\n if (widget.dependsOn === 'recommend') {\n return _$2(_$3({}, dependencies), {\n hasRecommendWidget: true\n });\n }\n if (widget.dependsOn === 'none') {\n return dependencies;\n }\n return _$2(_$3({}, dependencies), {\n hasSearchWidget: true\n });\n }, {\n hasSearchWidget: false,\n hasRecommendWidget: false\n });\n}\nfunction recomputeInstantSearchRequestDependencies(instantSearchInstance) {\n var _getWidgetsRequestDependencies = getWidgetsRequestDependencies(instantSearchInstance.mainIndex.getWidgets()), hasSearchWidget = _getWidgetsRequestDependencies.hasSearchWidget, hasRecommendWidget = _getWidgetsRequestDependencies.hasRecommendWidget;\n instantSearchInstance._hasSearchWidget = hasSearchWidget;\n instantSearchInstance._hasRecommendWidget = hasRecommendWidget;\n}\nvar index = function index(widgetParams) {\n var _widgetParams_EXPERIMENTAL_isolated;\n if (widgetParams === undefined || widgetParams.indexName === undefined && !widgetParams.isolated && !widgetParams.EXPERIMENTAL_isolated) {\n throw new Error(withUsage('The `indexName` option is required.'));\n }\n // When isolated=true, we use an empty string as the default indexName.\n // This is intentional: isolated indices do not require a real index name.\n var _widgetParams_indexName = widgetParams.indexName, indexName = _widgetParams_indexName === void 0 ? '' : _widgetParams_indexName, _widgetParams_indexId = widgetParams.indexId, indexId = _widgetParams_indexId === void 0 ? indexName : _widgetParams_indexId, _widgetParams_isolated = widgetParams.isolated, isolated = _widgetParams_isolated === void 0 ? (_widgetParams_EXPERIMENTAL_isolated = widgetParams.EXPERIMENTAL_isolated) !== null && _widgetParams_EXPERIMENTAL_isolated !== void 0 ? _widgetParams_EXPERIMENTAL_isolated : false : _widgetParams_isolated;\n var localWidgets = [];\n var localUiState = {};\n var localInstantSearchInstance = null;\n var localParent = null;\n var helper = null;\n var derivedHelper = null;\n var lastValidSearchParameters = null;\n var recomputeLocalRequestDependencies = function recomputeLocalRequestDependencies() {\n if (localInstantSearchInstance) {\n recomputeInstantSearchRequestDependencies(localInstantSearchInstance);\n }\n };\n return {\n $$type: 'ais.index',\n $$widgetType: 'ais.index',\n _isolated: isolated,\n getIndexName: function getIndexName() {\n return indexName;\n },\n getIndexId: function getIndexId() {\n return indexId;\n },\n getHelper: function getHelper() {\n return helper;\n },\n getResults: function getResults() {\n if (!(derivedHelper === null || derivedHelper === void 0 ? void 0 : derivedHelper.lastResults)) return null;\n // To make the UI optimistic, we patch the state to display to the current\n // one instead of the one associated with the latest results.\n // This means user-driven UI changes (e.g., checked checkbox) are reflected\n // immediately instead of waiting for Algolia to respond, regardless of\n // the status of the network request.\n derivedHelper.lastResults._state = helper.state;\n return derivedHelper.lastResults;\n },\n getResultsForWidget: function getResultsForWidget(widget) {\n if (widget.dependsOn !== 'recommend' || isIndexWidget(widget) || widget.$$id === undefined) {\n return this.getResults();\n }\n if (!(helper === null || helper === void 0 ? void 0 : helper.lastRecommendResults)) {\n return null;\n }\n return helper.lastRecommendResults[widget.$$id];\n },\n getPreviousState: function getPreviousState() {\n return lastValidSearchParameters;\n },\n getScopedResults: function getScopedResults() {\n var widgetParent = this.getParent();\n var widgetSiblings;\n if (widgetParent) {\n widgetSiblings = widgetParent.getWidgets();\n } else if (indexName.length === 0) {\n // The widget is the root but has no index name:\n // we resolve results from its children index widgets\n widgetSiblings = this.getWidgets();\n } else {\n // The widget is the root and has an index name:\n // we consider itself as the only sibling\n widgetSiblings = [\n this\n ];\n }\n return resolveScopedResultsFromWidgets(widgetSiblings);\n },\n getParent: function getParent() {\n return isolated ? null : localParent;\n },\n createURL: function createURL(nextState) {\n if (typeof nextState === 'function') {\n return localInstantSearchInstance._createURL(_({}, indexId, nextState(localUiState)));\n }\n return localInstantSearchInstance._createURL(_({}, indexId, getLocalWidgetsUiState(localWidgets, {\n searchParameters: nextState,\n helper: helper\n })));\n },\n scheduleLocalSearch: defer(function() {\n if (isolated) {\n helper === null || helper === void 0 ? void 0 : helper.search();\n }\n }),\n getWidgets: function getWidgets() {\n return localWidgets;\n },\n addWidgets: function addWidgets(widgets) {\n var _this = this;\n if (!Array.isArray(widgets)) {\n throw new Error(withUsage('The `addWidgets` method expects an array of widgets.'));\n }\n var flatWidgets = widgets.reduce(function(acc, w) {\n return acc.concat(Array.isArray(w) ? w : [\n w\n ]);\n }, []);\n if (flatWidgets.some(function(widget) {\n return typeof widget.init !== 'function' && typeof widget.render !== 'function';\n })) {\n throw new Error(withUsage('The widget definition expects a `render` and/or an `init` method.'));\n }\n flatWidgets.forEach(function(widget) {\n widget.parent = _this;\n if (!isIndexWidget(widget)) {\n addWidgetId(widget);\n }\n });\n localWidgets = localWidgets.concat(flatWidgets);\n recomputeLocalRequestDependencies();\n if (localInstantSearchInstance && Boolean(flatWidgets.length)) {\n privateHelperSetState(helper, {\n state: getLocalWidgetsSearchParameters(localWidgets, {\n uiState: localUiState,\n initialSearchParameters: helper.state\n }),\n recommendState: getLocalWidgetsRecommendParameters(localWidgets, {\n uiState: localUiState,\n initialRecommendParameters: helper.recommendState\n }),\n _uiState: localUiState\n });\n // We compute the render state before calling `init` in a separate loop\n // to construct the whole render state object that is then passed to\n // `init`.\n flatWidgets.forEach(function(widget) {\n if (widget.getRenderState) {\n var renderState = widget.getRenderState(localInstantSearchInstance.renderState[_this.getIndexId()] || {}, createInitArgs(localInstantSearchInstance, _this, localInstantSearchInstance._initialUiState));\n storeRenderState({\n renderState: renderState,\n instantSearchInstance: localInstantSearchInstance,\n parent: _this\n });\n }\n });\n flatWidgets.forEach(function(widget) {\n if (widget.init) {\n widget.init(createInitArgs(localInstantSearchInstance, _this, localInstantSearchInstance._initialUiState));\n }\n });\n if (isolated) {\n this.scheduleLocalSearch();\n } else {\n localInstantSearchInstance.scheduleSearch();\n }\n }\n return this;\n },\n removeWidgets: function removeWidgets(widgets) {\n var _this = this;\n if (!Array.isArray(widgets)) {\n throw new Error(withUsage('The `removeWidgets` method expects an array of widgets.'));\n }\n var flatWidgets = widgets.reduce(function(acc, w) {\n return acc.concat(Array.isArray(w) ? w : [\n w\n ]);\n }, []);\n if (flatWidgets.some(function(widget) {\n return typeof widget.dispose !== 'function';\n })) {\n throw new Error(withUsage('The widget definition expects a `dispose` method.'));\n }\n localWidgets = localWidgets.filter(function(widget) {\n return flatWidgets.indexOf(widget) === -1;\n });\n flatWidgets.forEach(function(widget) {\n widget.parent = undefined;\n });\n recomputeLocalRequestDependencies();\n if (localInstantSearchInstance && Boolean(flatWidgets.length)) {\n var _flatWidgets_reduce = flatWidgets.reduce(function(states, widget) {\n // the `dispose` method exists at this point we already assert it\n var next = widget.dispose({\n helper: helper,\n state: states.cleanedSearchState,\n recommendState: states.cleanedRecommendState,\n parent: _this\n });\n if (_$5(next, algoliasearchHelper.RecommendParameters)) {\n states.cleanedRecommendState = next;\n } else if (next) {\n states.cleanedSearchState = next;\n }\n return states;\n }, {\n cleanedSearchState: helper.state,\n cleanedRecommendState: helper.recommendState\n }), cleanedSearchState = _flatWidgets_reduce.cleanedSearchState, cleanedRecommendState = _flatWidgets_reduce.cleanedRecommendState;\n var newState = localInstantSearchInstance.future.preserveSharedStateOnUnmount ? getLocalWidgetsSearchParameters(localWidgets, {\n uiState: localUiState,\n initialSearchParameters: new algoliasearchHelper.SearchParameters({\n index: this.getIndexName()\n })\n }) : getLocalWidgetsSearchParameters(localWidgets, {\n uiState: getLocalWidgetsUiState(localWidgets, {\n searchParameters: cleanedSearchState,\n helper: helper\n }),\n initialSearchParameters: cleanedSearchState\n });\n localUiState = getLocalWidgetsUiState(localWidgets, {\n searchParameters: newState,\n helper: helper\n });\n helper.setState(newState);\n helper.recommendState = cleanedRecommendState;\n if (localWidgets.length) {\n if (isolated) {\n this.scheduleLocalSearch();\n } else {\n localInstantSearchInstance.scheduleSearch();\n }\n }\n }\n return this;\n },\n init: function init(param) {\n var _this = this;\n var instantSearchInstance = param.instantSearchInstance, parent = param.parent, uiState = param.uiState;\n var _instantSearchInstance__initialResults;\n if (helper !== null) {\n // helper is already initialized, therefore we do not need to set up\n // any listeners\n return;\n }\n localInstantSearchInstance = instantSearchInstance;\n localParent = parent;\n localUiState = uiState[indexId] || {};\n // The `mainHelper` is already defined at this point. The instance is created\n // inside InstantSearch at the `start` method, which occurs before the `init`\n // step.\n var mainHelper = instantSearchInstance.mainHelper;\n var parameters = getLocalWidgetsSearchParameters(localWidgets, {\n uiState: localUiState,\n initialSearchParameters: new algoliasearchHelper.SearchParameters({\n index: indexName\n })\n });\n var recommendParameters = getLocalWidgetsRecommendParameters(localWidgets, {\n uiState: localUiState,\n initialRecommendParameters: new algoliasearchHelper.RecommendParameters()\n });\n // This Helper is only used for state management we do not care about the\n // `searchClient`. Only the \"main\" Helper created at the `InstantSearch`\n // level is aware of the client.\n helper = algoliasearchHelper(mainHelper.getClient(), parameters.index, parameters);\n helper.recommendState = recommendParameters;\n // We forward the call to `search` to the \"main\" instance of the Helper\n // which is responsible for managing the queries (it's the only one that is\n // aware of the `searchClient`).\n helper.search = function() {\n if (isolated) {\n instantSearchInstance.status = 'loading';\n _this.render({\n instantSearchInstance: instantSearchInstance\n });\n return instantSearchInstance.compositionID ? helper.searchWithComposition() : helper.searchOnlyWithDerivedHelpers();\n }\n if (instantSearchInstance.onStateChange) {\n instantSearchInstance.onStateChange({\n uiState: instantSearchInstance.mainIndex.getWidgetUiState({}),\n setUiState: function setUiState(nextState) {\n return instantSearchInstance.setUiState(nextState, false);\n }\n });\n // We don't trigger a search when controlled because it becomes the\n // responsibility of `setUiState`.\n return mainHelper;\n }\n return mainHelper.search();\n };\n helper.searchWithoutTriggeringOnStateChange = function() {\n return mainHelper.search();\n };\n // We use the same pattern for the `searchForFacetValues`.\n helper.searchForFacetValues = function(facetName, facetValue, maxFacetHits, userState) {\n var state = mergeSearchParameters.apply(void 0, [\n mainHelper.state\n ].concat(_$1(resolveSearchParameters(_this)))).setQueryParameters(userState);\n return mainHelper.searchForFacetValues(facetName, facetValue, maxFacetHits, state);\n };\n var isolatedHelper = indexName ? helper : algoliasearchHelper({}, '__empty_index__', {});\n var derivingHelper = isolated ? isolatedHelper : nearestIsolatedHelper(parent, mainHelper);\n derivedHelper = derivingHelper.derive(function() {\n return mergeSearchParameters.apply(void 0, [\n mainHelper.state\n ].concat(_$1(resolveSearchParameters(_this))));\n }, function() {\n return addInsightsToRecommendParameters(_this.getHelper().recommendState, mainHelper.state);\n });\n var indexInitialResults = (_instantSearchInstance__initialResults = instantSearchInstance._initialResults) === null || _instantSearchInstance__initialResults === void 0 ? void 0 : _instantSearchInstance__initialResults[this.getIndexId()];\n if (indexInitialResults === null || indexInitialResults === void 0 ? void 0 : indexInitialResults.results) {\n // We restore the shape of the results provided to the instance to respect\n // the helper's structure.\n var results = new algoliasearchHelper.SearchResults(new algoliasearchHelper.SearchParameters(indexInitialResults.state), indexInitialResults.results);\n derivedHelper.lastResults = results;\n helper.lastResults = results;\n }\n if (indexInitialResults === null || indexInitialResults === void 0 ? void 0 : indexInitialResults.recommendResults) {\n var recommendResults = new algoliasearchHelper.RecommendResults(new algoliasearchHelper.RecommendParameters({\n params: indexInitialResults.recommendResults.params\n }), indexInitialResults.recommendResults.results);\n derivedHelper.lastRecommendResults = recommendResults;\n helper.lastRecommendResults = recommendResults;\n }\n // Subscribe to the Helper state changes for the page before widgets\n // are initialized. This behavior mimics the original one of the Helper.\n // It makes sense to replicate it at the `init` step. We have another\n // listener on `change` below, once `init` is done.\n helper.on('change', function(param) {\n var isPageReset = param.isPageReset;\n if (isPageReset) {\n resetPageFromWidgets(localWidgets);\n }\n });\n derivedHelper.on('search', function() {\n // The index does not manage the \"staleness\" of the search. This is the\n // responsibility of the main instance. It does not make sense to manage\n // it at the index level because it's either: all of them or none of them\n // that are stalled. The queries are performed into a single network request.\n instantSearchInstance.scheduleStalledRender();\n });\n derivedHelper.on('result', function(param) {\n var results = param.results;\n // The index does not render the results it schedules a new render\n // to let all the other indices emit their own results. It allows us to\n // run the render process in one pass.\n instantSearchInstance.scheduleRender();\n // the derived helper is the one which actually searches, but the helper\n // which is exposed e.g. via instance.helper, doesn't search, and thus\n // does not have access to lastResults, which it used to in pre-federated\n // search behavior.\n helper.lastResults = results;\n lastValidSearchParameters = results === null || results === void 0 ? void 0 : results._state;\n });\n // eslint-disable-next-line no-warning-comments\n // TODO: listen to \"result\" event when events for Recommend are implemented\n derivedHelper.on('recommend:result', function(param) {\n var recommend = param.recommend;\n // The index does not render the results it schedules a new render\n // to let all the other indices emit their own results. It allows us to\n // run the render process in one pass.\n instantSearchInstance.scheduleRender();\n // the derived helper is the one which actually searches, but the helper\n // which is exposed e.g. via instance.helper, doesn't search, and thus\n // does not have access to lastRecommendResults.\n helper.lastRecommendResults = recommend.results;\n });\n // We compute the render state before calling `init` in a separate loop\n // to construct the whole render state object that is then passed to\n // `init`.\n localWidgets.forEach(function(widget) {\n if (widget.getRenderState) {\n var renderState = widget.getRenderState(instantSearchInstance.renderState[_this.getIndexId()] || {}, createInitArgs(instantSearchInstance, _this, uiState));\n storeRenderState({\n renderState: renderState,\n instantSearchInstance: instantSearchInstance,\n parent: _this\n });\n }\n });\n localWidgets.forEach(function(widget) {\n if (widget.init) {\n widget.init(createInitArgs(instantSearchInstance, _this, uiState));\n }\n });\n // Subscribe to the Helper state changes for the `uiState` once widgets\n // are initialized. Until the first render, state changes are part of the\n // configuration step. This is mainly for backward compatibility with custom\n // widgets. When the subscription happens before the `init` step, the (static)\n // configuration of the widget is pushed in the URL. That's what we want to avoid.\n // https://github.com/algolia/instantsearch/pull/994/commits/4a672ae3fd78809e213de0368549ef12e9dc9454\n helper.on('change', function(event) {\n var state = event.state;\n var _uiState = event._uiState;\n localUiState = getLocalWidgetsUiState(localWidgets, {\n searchParameters: state,\n helper: helper\n }, _uiState || {});\n // We don't trigger an internal change when controlled because it\n // becomes the responsibility of `setUiState`.\n if (!instantSearchInstance.onStateChange) {\n instantSearchInstance.onInternalStateChange();\n }\n });\n if (indexInitialResults) {\n // If there are initial results, we're not notified of the next results\n // because we don't trigger an initial search. We therefore need to directly\n // schedule a render that will render the results injected on the helper.\n instantSearchInstance.scheduleRender();\n }\n recomputeLocalRequestDependencies();\n },\n render: function render(param) {\n var _this = this;\n var instantSearchInstance = param.instantSearchInstance;\n // we can't attach a listener to the error event of search, as the error\n // then would no longer be thrown for global handlers.\n if (instantSearchInstance.status === 'error' && !instantSearchInstance.mainHelper.hasPendingRequests() && lastValidSearchParameters) {\n helper.setState(lastValidSearchParameters);\n }\n // We only render index widgets if there are no results.\n // This makes sure `render` is never called with `results` being `null`.\n // If it's an isolated index without an index name, we render all widgets,\n // as there are no results to display for the isolated index itself.\n var widgetsToRender = this.getResults() || (derivedHelper === null || derivedHelper === void 0 ? void 0 : derivedHelper.lastRecommendResults) || isolated && !indexName ? localWidgets : localWidgets.filter(function(widget) {\n return widget.shouldRender;\n });\n widgetsToRender = widgetsToRender.filter(function(widget) {\n if (!widget.shouldRender) {\n return true;\n }\n return widget.shouldRender({\n instantSearchInstance: instantSearchInstance\n });\n });\n widgetsToRender.forEach(function(widget) {\n if (widget.getRenderState) {\n var renderState = widget.getRenderState(instantSearchInstance.renderState[_this.getIndexId()] || {}, createRenderArgs(instantSearchInstance, _this, widget));\n storeRenderState({\n renderState: renderState,\n instantSearchInstance: instantSearchInstance,\n parent: _this\n });\n }\n });\n widgetsToRender.forEach(function(widget) {\n // At this point, all the variables used below are set. Both `helper`\n // and `derivedHelper` have been created at the `init` step. The attribute\n // `lastResults` might be `null` though. It's possible that a stalled render\n // happens before the result e.g with a dynamically added index the request might\n // be delayed. The render is triggered for the complete tree but some parts do\n // not have results yet.\n if (widget.render) {\n widget.render(createRenderArgs(instantSearchInstance, _this, widget));\n }\n });\n },\n dispose: function dispose() {\n var _this = this;\n localWidgets.forEach(function(widget) {\n if (widget.dispose && helper) {\n // The dispose function is always called once the instance is started\n // (it's an effect of `removeWidgets`). The index is initialized and\n // the Helper is available. We don't care about the return value of\n // `dispose` because the index is removed. We can't call `removeWidgets`\n // because we want to keep the widgets on the instance, to allow idempotent\n // operations on `add` & `remove`.\n widget.dispose({\n helper: helper,\n state: helper.state,\n recommendState: helper.recommendState,\n parent: _this\n });\n }\n });\n localInstantSearchInstance = null;\n localParent = null;\n helper === null || helper === void 0 ? void 0 : helper.removeAllListeners();\n helper = null;\n derivedHelper === null || derivedHelper === void 0 ? void 0 : derivedHelper.detach();\n derivedHelper = null;\n },\n getWidgetUiState: function getWidgetUiState(uiState) {\n return localWidgets.filter(isIndexWidget).filter(function(w) {\n return !w._isolated;\n }).reduce(function(previousUiState, innerIndex) {\n return innerIndex.getWidgetUiState(previousUiState);\n }, _$2(_$3({}, uiState), _({}, indexId, _$3({}, uiState[indexId], localUiState))));\n },\n getWidgetState: function getWidgetState(uiState) {\n return this.getWidgetUiState(uiState);\n },\n getWidgetSearchParameters: function getWidgetSearchParameters(searchParameters, param) {\n var uiState = param.uiState;\n return getLocalWidgetsSearchParameters(localWidgets, {\n uiState: uiState,\n initialSearchParameters: searchParameters\n });\n },\n shouldRender: function shouldRender() {\n return true;\n },\n refreshUiState: function refreshUiState() {\n localUiState = getLocalWidgetsUiState(localWidgets, {\n searchParameters: this.getHelper().state,\n helper: this.getHelper()\n }, localUiState);\n },\n setIndexUiState: function setIndexUiState(indexUiState) {\n var nextIndexUiState = typeof indexUiState === 'function' ? indexUiState(localUiState) : indexUiState;\n localInstantSearchInstance.setUiState(function(state) {\n return _$2(_$3({}, state), _({}, indexId, nextIndexUiState));\n });\n }\n };\n};\n/**\n * Walk up the parent chain to find the closest isolated index, or fall back to mainHelper\n */ function nearestIsolatedHelper(current, mainHelper) {\n while(current){\n if (current._isolated) {\n return current.getHelper();\n }\n current = current.getParent();\n }\n return mainHelper;\n}\n\nexport { index as default };\n"],"names":["withUsage","createDocumentationMessageGenerator","name","privateHelperSetState","helper","param","state","recommendState","isPageReset","_uiState","emit","results","lastResults","getLocalWidgetsUiState","widgets","widgetStateOptions","initialUiState","arguments","length","reduce","uiState","widget","isIndexWidget","getWidgetUiState","getWidgetState","getLocalWidgetsSearchParameters","widgetSearchParametersOptions","initialSearchParameters","rest","_$4","getWidgetSearchParameters","dependsOn","getWidgetParameters","getLocalWidgetsRecommendParameters","widgetRecommendParametersOptions","initialRecommendParameters","resetPageFromWidgets","indexWidgets","filter","forEach","widgetHelper","getHelper","resetPage","getWidgets","resolveScopedResultsFromWidgets","scopedResults","current","_scopedResults","concat","apply","indexId","getIndexId","getResults","_$1","getWidgetsRequestDependencies","dependencies","_isolated","childDependencies","hasSearchWidget","hasRecommendWidget","_$2","_$3","recomputeInstantSearchRequestDependencies","instantSearchInstance","_getWidgetsRequestDependencies","mainIndex","_hasSearchWidget","_hasRecommendWidget","widgetParams","_widgetParams_EXPERIMENTAL_isolated","undefined","indexName","isolated","EXPERIMENTAL_isolated","Error","_widgetParams_indexName","_widgetParams_indexId","_widgetParams_isolated","localWidgets","localUiState","localInstantSearchInstance","localParent","derivedHelper","lastValidSearchParameters","recomputeLocalRequestDependencies","$$type","$$widgetType","getIndexName","_state","getResultsForWidget","$$id","this","lastRecommendResults","getPreviousState","getScopedResults","widgetParent","getParent","createURL","nextState","_createURL","_","searchParameters","scheduleLocalSearch","defer","search","addWidgets","_this","Array","isArray","flatWidgets","acc","w","some","init","render","parent","addWidgetId","Boolean","getRenderState","renderState","createInitArgs","_initialUiState","storeRenderState","scheduleSearch","removeWidgets","dispose","indexOf","_flatWidgets_reduce","states","next","cleanedSearchState","cleanedRecommendState","_$5","algoliasearchHelper","RecommendParameters","newState","future","preserveSharedStateOnUnmount","SearchParameters","index","setState","_instantSearchInstance__initialResults","mainHelper","parameters","recommendParameters","getClient","status","compositionID","searchWithComposition","searchOnlyWithDerivedHelpers","onStateChange","setUiState","searchWithoutTriggeringOnStateChange","searchForFacetValues","facetName","facetValue","maxFacetHits","userState","mergeSearchParameters","resolveSearchParameters","setQueryParameters","isolatedHelper","derivingHelper","nearestIsolatedHelper","derive","addInsightsToRecommendParameters","indexInitialResults","_initialResults","SearchResults","recommendResults","RecommendResults","params","on","scheduleStalledRender","scheduleRender","recommend","event","onInternalStateChange","hasPendingRequests","widgetsToRender","shouldRender","createRenderArgs","removeAllListeners","detach","previousUiState","innerIndex","refreshUiState","setIndexUiState","indexUiState","nextIndexUiState"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.default="7.41.0";
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.default="7.44.1";
2
2
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sources":["../../../../../../node_modules/react-instantsearch-core/dist/es/version.js"],"sourcesContent":["var version = '7.41.0';\n\nexport { version as default };\n"],"names":[],"mappings":"oFAAc","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"version.js","sources":["../../../../../../node_modules/react-instantsearch-core/dist/es/version.js"],"sourcesContent":["var version = '7.44.1';\n\nexport { version as default };\n"],"names":[],"mappings":"oFAAc","x_google_ignoreList":[0]}
@@ -1,3 +1,3 @@
1
1
  import './GlobalPromoRibbon.css';
2
- import{jsx as e,Fragment as n,jsxs as o}from"react/jsx-runtime";import{useState as i,useRef as l,useEffect as t}from"react";import r from"./GlobalPromoRibbon.module.scss.js";import a from"../RibbonComponent/RibbonComponentTimer/RibbonComponentTimer.js";import{calculateDateTime as s}from"../RibbonComponent/utils.js";import{trackNewDatalayerEvent as d}from"../../utils/AnalyticUtils.js";import{VIEWPROMOTION as u,ALL as c,RIBBON as m,CMS as v}from"../../utils/AnalyticsConstants.js";import g from"../FalconButtonV3/FalconButtonV3.js";import{subscribeToCustomerSegmentRefresh as b,getCurrentCustomerSegment as p}from"../../services/customerSegmentSync.js";import{DISMISSED_RIBBONS_STORAGE_KEY as f,RIBBON_DISMISS_UPDATED_EVENT as w}from"../Constants.js";const h=e=>e?(Array.isArray(e)?e:[e]).filter(Boolean).map(e=>String(e).trim().toLowerCase()):[],T=e=>e?s(new Date(e.trim().replace(/-/g,"/"))):null,y=e=>{if(!(null==e?void 0:e.endTime))return!1;return s(new Date(e.endTime.replace(/-/g,"/"))).getTime()<=Date.now()},S=({content:s})=>{var S,N,C,I,k,_,j,B,L;const[O,x]=i(!1),[A,D]=i(!1),[R,E]=i(!1),[U,V]=i(new Date),F=l(null),[J,P]=i(!1),[G,$]=i(!1),[M,H]=i(null==s?void 0:s.teaserTimer[0]),[W,q]=i(y(null===(S=null==s?void 0:s.teaserTimer)||void 0===S?void 0:S[0])),z=()=>{const e=p(),n=(()=>{var e;if("undefined"==typeof window)return new Set;const n=window.localStorage.getItem("tealium_va");if(!n)return new Set;try{const o=null===(e=JSON.parse(n))||void 0===e?void 0:e.audiences;return o&&"object"==typeof o?new Set(Object.keys(o).map(e=>e.trim().toLowerCase())):new Set}catch(e){return new Set}})(),o="undefined"==typeof navigator?"":navigator.userAgent||"",i=h(null==s?void 0:s.tealiumAudiences).length>0,l=((e,n)=>{const o=h(e).map(e=>String(e).trim()).filter(Boolean);if(!o.length)return!0;if(!n)return!1;const i=n.toLowerCase();return o.some(e=>e.split("|").map(e=>e.trim().toLowerCase()).filter(Boolean).some(e=>i.includes(e)))})(null==s?void 0:s.customerDeviceSegment,o);if(!l)return E(!1),void D(!0);E(i?((e,n)=>{const o=h(e);return!o.length||o.some(e=>n.has(e))})(null==s?void 0:s.tealiumAudiences,n):((e,n)=>{const o=h(e);return!(o.length&&!o.includes("all"))||Boolean(n&&o.includes(n.trim().toLowerCase()))})(null==s?void 0:s.customerType,e)),D(!0)};t(()=>{x(!0),z();const e=b(()=>{z()});return()=>{e()}},[]);const K=()=>{if(!1===J){if("undefined"!=typeof window&&(null==s?void 0:s._uid)&&Number(null==s?void 0:s.expireTime)>0){const e=Date.now()+60*Number(s.expireTime)*1e3,n=(()=>{if("undefined"==typeof window)return{};const e=window.localStorage.getItem(f);if(!e)return{};try{const n=JSON.parse(e);return n&&"object"==typeof n?Object.entries(n).reduce((e,[n,o])=>("string"==typeof n&&Number.isFinite(o)&&(e[n]=Number(o)),e),{}):{}}catch(e){return{}}})();n[s._uid]=e,window.localStorage.setItem(f,JSON.stringify(n)),window.dispatchEvent(new Event(w))}P(!0)}};t(()=>{var e;if(null===(e=null==s?void 0:s.teaserTimer[0])||void 0===e?void 0:e.startTime){const e=null==s?void 0:s.teaserTimer[0];H(e),q(y(e))}else q(!1);$(!0)},[null==s?void 0:s.teaserTimer]),t(()=>{const e=T(null==s?void 0:s.scheduleStartTime),n=T(null==s?void 0:s.scheduleEndTime),o=U.getTime(),i=[e,n].filter(e=>Boolean(e)).map(e=>e.getTime()).filter(e=>e>o).sort((e,n)=>e-n)[0];if(!i)return;const l=i-o,t=window.setTimeout(()=>{V(new Date)},Math.max(l,0));return()=>{window.clearTimeout(t)}},[null==s?void 0:s.scheduleStartTime,null==s?void 0:s.scheduleEndTime,U]),t(()=>{var e;const n=new IntersectionObserver(e=>{var n,o;e[0].isIntersecting&&e[0].intersectionRatio>=.5&&!(null===(n=localStorage.getItem("analyticsUids"))||void 0===n?void 0:n.includes(s._uid))&&(d(u,u,{banner_promotion_name:null!==(o=null==s?void 0:s.bannerPromotionName)&&void 0!==o?o:null==s?void 0:s.title,banner_source:v,banner_type:m,banner_location:null==s?void 0:s.bannerLocation,audience_name:c,promotion_objective:c}),localStorage.setItem("analyticsUids",JSON.stringify([...localStorage.getItem("analyticsUids")?JSON.parse(localStorage.getItem("analyticsUids")||""):[],s._uid])))},{threshold:.5});return F.current&&!(null===(e=localStorage.getItem("analyticsUids"))||void 0===e?void 0:e.includes(s._uid))&&n.observe(F.current),()=>{n.disconnect()}});const Q=T(null==s?void 0:s.scheduleStartTime),X=T(null==s?void 0:s.scheduleEndTime),Y=!Q||U.getTime()>=Q.getTime(),Z=!X||X.getTime()>U.getTime(),ee=!1===J&&G&&A&&R&&(Y&&Z),ne=(null==s?void 0:s.gradientBackgroundGlobal)&&"none"!==(null==s?void 0:s.gradientBackgroundGlobal)?s.gradientBackgroundGlobal.replace(/;\s*$/,""):null==s?void 0:s.backgroundColor;return e("div",{className:"body-banner",suppressHydrationWarning:!0,children:O&&ee&&e(n,{children:e("div",{className:`${r.globalPromoRibbon} ${(null==s?void 0:s.slimVersion)?r.slim:""}`,style:{background:ne},ref:F,children:o("div",{className:r.card,children:[o("div",{className:r.descriptionBlockSection,children:[(null===(N=null==s?void 0:s.icon)||void 0===N?void 0:N.filename)&&e("div",{className:r.image,children:e("img",{className:r.icon,src:null===(C=null==s?void 0:s.icon)||void 0===C?void 0:C.filename})}),(null==s?void 0:s.title)&&o("div",{className:r.textContainer,children:[e("span",{style:{color:null==s?void 0:s.titleColor},children:null==s?void 0:s.title}),e("div",{})]})]}),o("div",{className:r.buttonSection,children:[(null===(I=null==s?void 0:s.teaserTimer[0])||void 0===I?void 0:I.startTime)&&!W&&e("div",{className:r.timer,children:e(a,{content:M,setTimerExpired:q,isSlimVersion:Boolean(null==s?void 0:s.slimVersion)})}),(null===(k=null==s?void 0:s.buttons)||void 0===k?void 0:k.length)?e("div",{className:r.buttons,children:s.buttons.map((n,o)=>{var i,l,t,a,d,u,c,m;return e(g,{wrapperClassName:r.button,href:n.href||(null===(i=n.buttonLink)||void 0===i?void 0:i.url)||(null===(l=n.buttonLink)||void 0===l?void 0:l.cached_url)||"",label:n.buttonLabel||n.label||"",buttonType:n.buttonType,isSlim:Boolean(null==s?void 0:s.slimVersion),target:null!==(a=null!==(t=n.target)&&void 0!==t?t:n.linkTarget)&&void 0!==a?a:"",rel:null!==(d=n.rel)&&void 0!==d?d:"_blank"===n.linkTarget?"opener":"noopener",iconFilename:n.iconFilename||(null===(u=n.buttonIcon)||void 0===u?void 0:u.filename),iconPosition:n.iconPosition},`${n.href||(null===(c=n.buttonLink)||void 0===c?void 0:c.url)||(null===(m=n.buttonLink)||void 0===m?void 0:m.cached_url)||o}`)})}):null,(null===(_=null==s?void 0:s.closeIcon)||void 0===_?void 0:_.filename)&&(null==s?void 0:s.showCloseIcon)&&e("div",{className:r.closeIcon,onClick:K,children:e("img",{src:null===(j=null==s?void 0:s.closeIcon)||void 0===j?void 0:j.filename})})]}),(null===(B=null==s?void 0:s.closeIcon)||void 0===B?void 0:B.filename)&&(null==s?void 0:s.showCloseIcon)&&e("div",{className:r.closeIconMobile,onClick:K,children:e("img",{src:null===(L=null==s?void 0:s.closeIcon)||void 0===L?void 0:L.filename})})]})})})})};export{S as default};
2
+ import{jsx as e,Fragment as n,jsxs as o}from"react/jsx-runtime";import{useState as i,useRef as l,useEffect as t}from"react";import r from"./GlobalPromoRibbon.module.scss.js";import a from"../RibbonComponent/RibbonComponentTimer/RibbonComponentTimer.js";import{calculateDateTime as s}from"../RibbonComponent/utils.js";import{trackNewDatalayerEvent as d}from"../../utils/AnalyticUtils.js";import{VIEWPROMOTION as u,ALL as c,RIBBON as m,CMS as v,SELECTPROMOTION as b}from"../../utils/AnalyticsConstants.js";import g from"../FalconButtonV3/FalconButtonV3.js";import{subscribeToCustomerSegmentRefresh as p,getCurrentCustomerSegment as f}from"../../services/customerSegmentSync.js";import{DISMISSED_RIBBONS_STORAGE_KEY as y,RIBBON_DISMISS_UPDATED_EVENT as h}from"../Constants.js";const w=e=>e?(Array.isArray(e)?e:[e]).filter(Boolean).map(e=>String(e).trim().toLowerCase()):[],T=e=>e?s(new Date(e.trim().replace(/-/g,"/"))):null,S=e=>{if(!(null==e?void 0:e.endTime))return!1;return s(new Date(e.endTime.replace(/-/g,"/"))).getTime()<=Date.now()},N=({content:s})=>{var N,_,C,I,k,j,A,B,L;const D=(e=>{const n=Array.isArray(e.tealiumAudiences)?e.tealiumAudiences:[e.tealiumAudiences],o=Array.isArray(e.customerType)?e.customerType:[e.customerType],i=[...n.some(Boolean)?n:o,...Array.isArray(e.customerDeviceSegment)?e.customerDeviceSegment:[e.customerDeviceSegment]].filter(Boolean).map(e=>String(e).trim()).filter(Boolean);return i.length?i.join(" | "):c})(s),[O,x]=i(!1),[R,E]=i(!1),[P,U]=i(!1),[V,F]=i(new Date),J=l(null),[G,$]=i(!1),[M,H]=i(!1),[W,q]=i(null==s?void 0:s.teaserTimer[0]),[z,K]=i(S(null===(N=null==s?void 0:s.teaserTimer)||void 0===N?void 0:N[0])),Q=()=>{const e=f(),n=(()=>{var e;if("undefined"==typeof window)return new Set;const n=window.localStorage.getItem("tealium_va");if(!n)return new Set;try{const o=null===(e=JSON.parse(n))||void 0===e?void 0:e.audiences;return o&&"object"==typeof o?new Set(Object.keys(o).map(e=>e.trim().toLowerCase())):new Set}catch(e){return new Set}})(),o="undefined"==typeof navigator?"":navigator.userAgent||"",i=w(null==s?void 0:s.tealiumAudiences).length>0,l=((e,n)=>{const o=w(e).map(e=>String(e).trim()).filter(Boolean);if(!o.length)return!0;if(!n)return!1;const i=n.toLowerCase();return o.some(e=>e.split("|").map(e=>e.trim().toLowerCase()).filter(Boolean).some(e=>i.includes(e)))})(null==s?void 0:s.customerDeviceSegment,o);if(!l)return U(!1),void E(!0);U(i?((e,n)=>{const o=w(e);return!o.length||o.some(e=>n.has(e))})(null==s?void 0:s.tealiumAudiences,n):((e,n)=>{const o=w(e);return!(o.length&&!o.includes("all"))||Boolean(n&&o.includes(n.trim().toLowerCase()))})(null==s?void 0:s.customerType,e)),E(!0)};t(()=>{x(!0),Q();const e=p(()=>{Q()});return()=>{e()}},[]);const X=()=>{if(!1===G){if("undefined"!=typeof window&&(null==s?void 0:s._uid)&&Number(null==s?void 0:s.expireTime)>0){const e=Date.now()+60*Number(s.expireTime)*1e3,n=(()=>{if("undefined"==typeof window)return{};const e=window.localStorage.getItem(y);if(!e)return{};try{const n=JSON.parse(e);return n&&"object"==typeof n?Object.entries(n).reduce((e,[n,o])=>("string"==typeof n&&Number.isFinite(o)&&(e[n]=Number(o)),e),{}):{}}catch(e){return{}}})();n[s._uid]=e,window.localStorage.setItem(y,JSON.stringify(n)),window.dispatchEvent(new Event(h))}$(!0)}};t(()=>{var e;if(null===(e=null==s?void 0:s.teaserTimer[0])||void 0===e?void 0:e.startTime){const e=null==s?void 0:s.teaserTimer[0];q(e),K(S(e))}else K(!1);H(!0)},[null==s?void 0:s.teaserTimer]),t(()=>{const e=T(null==s?void 0:s.scheduleStartTime),n=T(null==s?void 0:s.scheduleEndTime),o=V.getTime(),i=[e,n].filter(e=>Boolean(e)).map(e=>e.getTime()).filter(e=>e>o).sort((e,n)=>e-n)[0];if(!i)return;const l=i-o,t=window.setTimeout(()=>{F(new Date)},Math.max(l,0));return()=>{window.clearTimeout(t)}},[null==s?void 0:s.scheduleStartTime,null==s?void 0:s.scheduleEndTime,V]),t(()=>{var e;const n=new IntersectionObserver(e=>{var n,o;e[0].isIntersecting&&e[0].intersectionRatio>=.5&&!(null===(n=localStorage.getItem("analyticsUids"))||void 0===n?void 0:n.includes(s._uid))&&(d(u,u,{banner_promotion_name:null!==(o=null==s?void 0:s.bannerPromotionName)&&void 0!==o?o:null==s?void 0:s.title,banner_source:v,banner_type:m,banner_location:null==s?void 0:s.bannerLocation,audience_name:D,promotion_objective:c}),localStorage.setItem("analyticsUids",JSON.stringify([...localStorage.getItem("analyticsUids")?JSON.parse(localStorage.getItem("analyticsUids")||""):[],s._uid])))},{threshold:.5});return J.current&&!(null===(e=localStorage.getItem("analyticsUids"))||void 0===e?void 0:e.includes(s._uid))&&n.observe(J.current),()=>{n.disconnect()}});const Y=T(null==s?void 0:s.scheduleStartTime),Z=T(null==s?void 0:s.scheduleEndTime),ee=!Y||V.getTime()>=Y.getTime(),ne=!Z||Z.getTime()>V.getTime(),oe=!1===G&&M&&R&&P&&(ee&&ne),ie=(null==s?void 0:s.gradientBackgroundGlobal)&&"none"!==(null==s?void 0:s.gradientBackgroundGlobal)?s.gradientBackgroundGlobal.replace(/;\s*$/,""):null==s?void 0:s.backgroundColor;return e("div",{className:"body-banner",suppressHydrationWarning:!0,children:O&&oe&&e(n,{children:e("div",{className:`${r.globalPromoRibbon} ${(null==s?void 0:s.slimVersion)?r.slim:""}`,style:{background:ie},ref:J,children:o("div",{className:r.card,children:[o("div",{className:r.descriptionBlockSection,children:[(null===(_=null==s?void 0:s.icon)||void 0===_?void 0:_.filename)&&e("div",{className:r.image,children:e("img",{className:r.icon,src:null===(C=null==s?void 0:s.icon)||void 0===C?void 0:C.filename})}),(null==s?void 0:s.title)&&o("div",{className:r.textContainer,children:[e("span",{style:{color:null==s?void 0:s.titleColor},children:null==s?void 0:s.title}),e("div",{})]})]}),o("div",{className:r.buttonSection,children:[(null===(I=null==s?void 0:s.teaserTimer[0])||void 0===I?void 0:I.startTime)&&!z&&e("div",{className:r.timer,children:e(a,{content:W,setTimerExpired:K,isSlimVersion:Boolean(null==s?void 0:s.slimVersion)})}),(null===(k=null==s?void 0:s.buttons)||void 0===k?void 0:k.length)?e("div",{className:r.buttons,children:s.buttons.map((n,o)=>{var i,l,t,a,u,p,f,y;return e(g,{wrapperClassName:r.button,href:n.href||(null===(i=n.buttonLink)||void 0===i?void 0:i.url)||(null===(l=n.buttonLink)||void 0===l?void 0:l.cached_url)||"",label:n.buttonLabel||n.label||"",buttonType:n.buttonType,isSlim:Boolean(null==s?void 0:s.slimVersion),target:null!==(a=null!==(t=n.target)&&void 0!==t?t:n.linkTarget)&&void 0!==a?a:"",rel:null!==(u=n.rel)&&void 0!==u?u:"_blank"===n.linkTarget?"opener":"noopener",iconFilename:n.iconFilename||(null===(p=n.buttonIcon)||void 0===p?void 0:p.filename),iconPosition:n.iconPosition,onClick:()=>(e=>{var n,o;d(b,b,{banner_promotion_name:null!==(o=null!==(n=null==e?void 0:e.bannerPromotionName)&&void 0!==n?n:e.buttonLabel)&&void 0!==o?o:"",banner_source:v,banner_type:m,banner_location:null==s?void 0:s.bannerLocation,audience_name:D,promotion_objective:c})})(n)},`${n.href||(null===(f=n.buttonLink)||void 0===f?void 0:f.url)||(null===(y=n.buttonLink)||void 0===y?void 0:y.cached_url)||o}`)})}):null,(null===(j=null==s?void 0:s.closeIcon)||void 0===j?void 0:j.filename)&&(null==s?void 0:s.showCloseIcon)&&e("div",{className:r.closeIcon,onClick:X,children:e("img",{src:null===(A=null==s?void 0:s.closeIcon)||void 0===A?void 0:A.filename})})]}),(null===(B=null==s?void 0:s.closeIcon)||void 0===B?void 0:B.filename)&&(null==s?void 0:s.showCloseIcon)&&e("div",{className:r.closeIconMobile,onClick:X,children:e("img",{src:null===(L=null==s?void 0:s.closeIcon)||void 0===L?void 0:L.filename})})]})})})})};export{N as default};
3
3
  //# sourceMappingURL=GlobalPromoRibbon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalPromoRibbon.js","sources":["../../../../../src/components/GlobalPromoRibbon/GlobalPromoRibbon.tsx"],"sourcesContent":[null],"names":["normalizeStringArray","value","Array","isArray","filter","Boolean","map","item","String","trim","toLowerCase","getScheduleDateTime","calculateDateTime","Date","replace","isTeaserTimerExpired","timer","endTime","getTime","now","GlobalPromoRibbon","content","isHydrated","setIsHydrated","useState","isTargetingResolved","setIsTargetingResolved","isTargetingAllowed","setIsTargetingAllowed","currentTime","setCurrentTime","elementRef","useRef","closeBanner","setCloseBanner","displayMaintainance","seDisplayMaintainance","teaserContent","setTeaserContent","teaserTimer","isTimerExpired","setIsTimerExpired","_a","applyTargetingState","resolvedCustomerGroup","getCurrentCustomerSegment","tealiumAudiences","window","Set","rawValue","localStorage","getItem","audiences","JSON","parse","Object","keys","audience","_b","getTealiumAudienceKeys","userAgent","navigator","hasConfiguredTealiumAudiences","length","isAllowedForDeviceSegment","configuredDeviceSegments","normalizedSegments","segment","normalizedUserAgent","some","split","token","includes","matchesCustomerDeviceSegment","customerDeviceSegment","configuredAudiences","availableAudiences","normalizedAudiences","has","matchesTealiumAudiences","customerType","customerGroup","configuredTypes","matchesCustomerType","useEffect","unsubscribe","subscribeToCustomerSegmentRefresh","onClickClose","_uid","Number","expireTime","expiresAt","dismissedRibbonsMap","DISMISSED_RIBBONS_STORAGE_KEY","parsed","entries","reduce","acc","uid","isFinite","getDismissedRibbonsMap","setItem","stringify","dispatchEvent","Event","RIBBON_DISMISS_UPDATED_EVENT","startTime","tempContent","scheduleStart","scheduleStartTime","scheduleEnd","scheduleEndTime","presentTimeMs","nextRecalculationTimeMs","time","timeMs","sort","a","b","delay","setTimeout","Math","max","clearTimeout","observer","IntersectionObserver","isIntersecting","intersectionRatio","trackNewDatalayerEvent","VIEWPROMOTION","banner_promotion_name","bannerPromotionName","title","banner_source","CMS","banner_type","RIBBON","banner_location","bannerLocation","audience_name","ALL","promotion_objective","threshold","current","observe","disconnect","hasStarted","notExpired","shouldRenderRibbon","backgroundStyle","gradientBackgroundGlobal","backgroundColor","_jsx","className","suppressHydrationWarning","children","_Fragment","Styles","globalPromoRibbon","slimVersion","slim","style","background","ref","_jsxs","card","descriptionBlockSection","icon","filename","image","src","_c","textContainer","color","titleColor","buttonSection","_d","RibbonComponentTimer","setTimerExpired","isSlimVersion","_e","buttons","button","index","FalconButtonV3","wrapperClassName","href","buttonLink","url","cached_url","label","buttonLabel","buttonType","isSlim","target","linkTarget","rel","iconFilename","buttonIcon","_f","iconPosition","_g","_h","closeIcon","showCloseIcon","onClick","closeIconMobile","_j"],"mappings":"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"}
1
+ {"version":3,"file":"GlobalPromoRibbon.js","sources":["../../../../../src/components/GlobalPromoRibbon/GlobalPromoRibbon.tsx"],"sourcesContent":[null],"names":["normalizeStringArray","value","Array","isArray","filter","Boolean","map","item","String","trim","toLowerCase","getScheduleDateTime","calculateDateTime","Date","replace","isTeaserTimerExpired","timer","endTime","getTime","now","GlobalPromoRibbon","content","audienceName","configuredTealiumAudiences","tealiumAudiences","configuredCustomerTypes","customerType","audienceValues","some","customerDeviceSegment","length","join","ALL","getAudienceName","isHydrated","setIsHydrated","useState","isTargetingResolved","setIsTargetingResolved","isTargetingAllowed","setIsTargetingAllowed","currentTime","setCurrentTime","elementRef","useRef","closeBanner","setCloseBanner","displayMaintainance","seDisplayMaintainance","teaserContent","setTeaserContent","teaserTimer","isTimerExpired","setIsTimerExpired","_a","applyTargetingState","resolvedCustomerGroup","getCurrentCustomerSegment","window","Set","rawValue","localStorage","getItem","audiences","JSON","parse","Object","keys","audience","_b","getTealiumAudienceKeys","userAgent","navigator","hasConfiguredTealiumAudiences","isAllowedForDeviceSegment","configuredDeviceSegments","normalizedSegments","segment","normalizedUserAgent","split","token","includes","matchesCustomerDeviceSegment","configuredAudiences","availableAudiences","normalizedAudiences","has","matchesTealiumAudiences","customerGroup","configuredTypes","matchesCustomerType","useEffect","unsubscribe","subscribeToCustomerSegmentRefresh","onClickClose","_uid","Number","expireTime","expiresAt","dismissedRibbonsMap","DISMISSED_RIBBONS_STORAGE_KEY","parsed","entries","reduce","acc","uid","isFinite","getDismissedRibbonsMap","setItem","stringify","dispatchEvent","Event","RIBBON_DISMISS_UPDATED_EVENT","startTime","tempContent","scheduleStart","scheduleStartTime","scheduleEnd","scheduleEndTime","presentTimeMs","nextRecalculationTimeMs","time","timeMs","sort","a","b","delay","setTimeout","Math","max","clearTimeout","observer","IntersectionObserver","isIntersecting","intersectionRatio","trackNewDatalayerEvent","VIEWPROMOTION","banner_promotion_name","bannerPromotionName","title","banner_source","CMS","banner_type","RIBBON","banner_location","bannerLocation","audience_name","promotion_objective","threshold","current","observe","disconnect","hasStarted","notExpired","shouldRenderRibbon","backgroundStyle","gradientBackgroundGlobal","backgroundColor","_jsx","className","suppressHydrationWarning","children","_Fragment","Styles","globalPromoRibbon","slimVersion","slim","style","background","ref","_jsxs","card","descriptionBlockSection","icon","filename","image","src","_c","textContainer","color","titleColor","buttonSection","_d","RibbonComponentTimer","setTimerExpired","isSlimVersion","_e","buttons","button","index","FalconButtonV3","wrapperClassName","href","buttonLink","url","cached_url","label","buttonLabel","buttonType","isSlim","target","linkTarget","rel","iconFilename","_f","buttonIcon","iconPosition","onClick","SELECTPROMOTION","onClickButton","_g","_h","closeIcon","showCloseIcon","closeIconMobile","_j"],"mappings":"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"}