@algolia/autocomplete-plugin-algolia-insights 1.12.1 → 1.12.2
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.
|
@@ -69,6 +69,12 @@ export function createAlgoliaInsightsPlugin(options) {
|
|
|
69
69
|
}
|
|
70
70
|
});
|
|
71
71
|
}
|
|
72
|
+
|
|
73
|
+
// We return an empty plugin if `insightsClient` is still undefined at
|
|
74
|
+
// this stage, which can happen in server environments.
|
|
75
|
+
if (!insightsClient) {
|
|
76
|
+
return {};
|
|
77
|
+
}
|
|
72
78
|
var insights = createSearchInsightsApi(insightsClient);
|
|
73
79
|
var previousItems = createRef([]);
|
|
74
80
|
var debouncedOnStateChange = debounce(function (_ref3) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! @algolia/autocomplete-plugin-algolia-insights 1.12.
|
|
1
|
+
/*! @algolia/autocomplete-plugin-algolia-insights 1.12.2 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
|
|
2
2
|
(function (global, factory) {
|
|
3
3
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
|
|
4
4
|
typeof define === 'function' && define.amd ? define(['exports'], factory) :
|
|
@@ -494,6 +494,12 @@
|
|
|
494
494
|
}
|
|
495
495
|
});
|
|
496
496
|
}
|
|
497
|
+
|
|
498
|
+
// We return an empty plugin if `insightsClient` is still undefined at
|
|
499
|
+
// this stage, which can happen in server environments.
|
|
500
|
+
if (!insightsClient) {
|
|
501
|
+
return {};
|
|
502
|
+
}
|
|
497
503
|
var insights = createSearchInsightsApi(insightsClient);
|
|
498
504
|
var previousItems = createRef([]);
|
|
499
505
|
var debouncedOnStateChange = debounce(function (_ref3) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.development.js","sources":["../../../autocomplete-shared/dist/esm/createRef.js","../../../autocomplete-shared/dist/esm/debounce.js","../../../autocomplete-shared/dist/esm/isEqual.js","../../../autocomplete-shared/dist/esm/noop.js","../../../autocomplete-shared/dist/esm/safelyRunOnBrowser.js","../../src/createClickedEvent.ts","../../src/isModernInsightsClient.ts","../../src/createSearchInsightsApi.ts","../../src/createViewedEvents.ts","../../src/isAlgoliaInsightsHit.ts","../../src/createAlgoliaInsightsPlugin.ts"],"sourcesContent":["export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","import type {\n AlgoliaInsightsHit,\n ClickedObjectIDsAfterSearchParams,\n InsightsParamsWithItems,\n} from './types';\n\ntype CreateClickedEventParams = {\n item: AlgoliaInsightsHit;\n items: AlgoliaInsightsHit[];\n};\n\nexport function createClickedEvent({\n item,\n items = [],\n}: CreateClickedEventParams): Omit<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>,\n 'eventName'\n> & { algoliaSource?: string[] } {\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex((x) => x.objectID === item.objectID)],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete'],\n };\n}\n","import type { InsightsClient } from './types';\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 */\nexport function isModernInsightsClient(client: InsightsClient): boolean {\n const [major, minor] = (client.version || '').split('.').map(Number);\n\n /* eslint-disable @typescript-eslint/camelcase */\n const v3 = major >= 3;\n const v2_4 = major === 2 && minor >= 4;\n const v1_10 = major === 1 && minor >= 10;\n\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}\n","import type { InsightsMethodMap } from 'search-insights';\n\nimport { isModernInsightsClient } from './isModernInsightsClient';\nimport {\n AlgoliaInsightsHit,\n ClickedFiltersParams,\n ClickedObjectIDsAfterSearchParams,\n ClickedObjectIDsParams,\n ConvertedFiltersParams,\n ConvertedObjectIDsAfterSearchParams,\n ConvertedObjectIDsParams,\n InsightsClient,\n InsightsClientMethod,\n WithArbitraryParams,\n InsightsParamsWithItems,\n ViewedFiltersParams,\n ViewedObjectIDsParams,\n} from './types';\n\nfunction chunk<TItem extends { objectIDs: string[] }>(\n item: TItem,\n chunkSize: number = 20\n): TItem[] {\n const chunks: TItem[] = [];\n for (let i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push({\n ...item,\n objectIDs: item.objectIDs.slice(i, i + chunkSize),\n });\n }\n return chunks;\n}\n\nfunction mapToInsightsParamsApi<\n TInsightsParamsType extends {\n items: AlgoliaInsightsHit[];\n objectIDs?: string[];\n }\n>(params: TInsightsParamsType[]) {\n return params.map(({ items, ...param }) => ({\n ...param,\n objectIDs: items?.map(({ objectID }) => objectID) || param.objectIDs,\n }));\n}\n\nexport function createSearchInsightsApi(searchInsights: InsightsClient) {\n const canSendHeaders = isModernInsightsClient(searchInsights);\n\n function sendToInsights<TInsightsMethod extends InsightsClientMethod>(\n method: InsightsClientMethod,\n payloads: InsightsMethodMap[TInsightsMethod],\n items?: AlgoliaInsightsHit[]\n ) {\n if (canSendHeaders && typeof items !== 'undefined') {\n const { appId, apiKey } = items[0].__autocomplete_algoliaCredentials;\n const headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey,\n };\n\n searchInsights(method, ...payloads, { headers });\n } else {\n searchInsights(method, ...payloads);\n }\n }\n\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init(appId: string, apiKey: string) {\n searchInsights('init', { appId, apiKey });\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken(userToken: string) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ClickedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ClickedObjectIDsParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters(\n ...params: Array<WithArbitraryParams<ClickedFiltersParams>>\n ) {\n if (params.length > 0) {\n searchInsights('clickedFilters', ...params);\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems<ConvertedObjectIDsAfterSearchParams>\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ConvertedObjectIDsAfterSearchParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ConvertedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ConvertedObjectIDsParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters(\n ...params: Array<WithArbitraryParams<ConvertedFiltersParams>>\n ) {\n if (params.length > 0) {\n searchInsights('convertedFilters', ...params);\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ViewedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n params\n .reduce<\n Array<{\n items?: AlgoliaInsightsHit[];\n payload: ViewedObjectIDsParams;\n }>\n >(\n (acc, { items, ...param }) => [\n ...acc,\n ...chunk<ViewedObjectIDsParams>({\n ...param,\n objectIDs:\n items?.map(({ objectID }) => objectID) || param.objectIDs,\n }).map((payload) => {\n return { items, payload };\n }),\n ],\n []\n )\n .forEach(({ items, payload }) =>\n sendToInsights('viewedObjectIDs', [payload], items)\n );\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters(...params: Array<WithArbitraryParams<ViewedFiltersParams>>) {\n if (params.length > 0) {\n searchInsights('viewedFilters', ...params);\n }\n },\n };\n}\n","import {\n AlgoliaInsightsHit,\n InsightsParamsWithItems,\n ViewedObjectIDsParams,\n} from './types';\n\ntype CreateViewedEventsParams = {\n items: AlgoliaInsightsHit[];\n};\n\nexport function createViewedEvents({\n items,\n}: CreateViewedEventsParams): Array<\n Omit<InsightsParamsWithItems<ViewedObjectIDsParams>, 'eventName'>\n> {\n const itemsByIndexName = items.reduce<Record<string, AlgoliaInsightsHit[]>>(\n (acc, current) => {\n acc[current.__autocomplete_indexName] = (\n acc[current.__autocomplete_indexName] ?? []\n ).concat(current);\n\n return acc;\n },\n {}\n );\n\n return Object.keys(itemsByIndexName).map((indexName) => {\n const items = itemsByIndexName[indexName];\n\n return {\n index: indexName,\n items,\n algoliaSource: ['autocomplete'],\n };\n });\n}\n","import { AlgoliaInsightsHit } from './types';\n\nexport function isAlgoliaInsightsHit(hit: any): hit is AlgoliaInsightsHit {\n return (\n hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID\n );\n}\n","import {\n AutocompleteState,\n AutocompletePlugin,\n createRef,\n debounce,\n isEqual,\n noop,\n safelyRunOnBrowser,\n} from '@algolia/autocomplete-shared';\nimport {\n AutocompleteContext,\n AutocompleteReshapeSource,\n} from '@algolia/autocomplete-shared/dist/esm/core';\n\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nimport {\n AlgoliaInsightsHit,\n AutocompleteInsightsApi,\n InsightsClient,\n OnActiveParams,\n OnItemsChangeParams,\n OnSelectParams,\n} from './types';\n\nconst VIEW_EVENT_DELAY = 400;\nconst ALGOLIA_INSIGHTS_VERSION = '2.6.0';\nconst ALGOLIA_INSIGHTS_SRC = `https://cdn.jsdelivr.net/npm/search-insights@${ALGOLIA_INSIGHTS_VERSION}/dist/search-insights.min.js`;\n\ntype SendViewedObjectIDsParams = {\n onItemsChange(params: OnItemsChangeParams): void;\n items: AlgoliaInsightsHit[];\n insights: AutocompleteInsightsApi;\n state: AutocompleteState<any>;\n};\n\nconst sendViewedObjectIDs = debounce<SendViewedObjectIDsParams>(\n ({ onItemsChange, items, insights, state }) => {\n onItemsChange({\n insights,\n insightsEvents: createViewedEvents({ items }).map((event) => ({\n eventName: 'Items Viewed',\n ...event,\n })),\n state,\n });\n },\n VIEW_EVENT_DELAY\n);\n\nexport type CreateAlgoliaInsightsPluginParams = {\n /**\n * The initialized Search Insights client.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsclient\n */\n insightsClient?: InsightsClient;\n /**\n * Hook to send an Insights event when the items change.\n *\n * By default, it sends a `viewedObjectIDs` event.\n *\n * In as-you-type experiences, items change as the user types. This hook is debounced every 400ms to reflect actual items that users notice and avoid generating too many events for items matching \"in progress\" queries.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onitemschange\n */\n onItemsChange?(params: OnItemsChangeParams): void;\n /**\n * Hook to send an Insights event when an item is selected.\n *\n * By default, it sends a clickedObjectIDsAfterSearch event.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onselect\n */\n onSelect?(params: OnSelectParams): void;\n /**\n * Hook to send an Insights event when an item is active.\n *\n * By default, it doesn't send any events.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onactive\n */\n onActive?(params: OnActiveParams): void;\n /**\n * @internal\n */\n __autocomplete_clickAnalytics?: boolean;\n};\n\nexport function createAlgoliaInsightsPlugin(\n options: CreateAlgoliaInsightsPluginParams\n): AutocompletePlugin<any, undefined> {\n const {\n insightsClient: providedInsightsClient,\n onItemsChange,\n onSelect: onSelectEvent,\n onActive: onActiveEvent,\n __autocomplete_clickAnalytics,\n } = getOptions(options);\n let insightsClient = providedInsightsClient as InsightsClient;\n\n if (!providedInsightsClient) {\n safelyRunOnBrowser(({ window }) => {\n const pointer = window.AlgoliaAnalyticsObject || 'aa';\n\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n\n if (!window[pointer]) {\n window[pointer] = (...args: any[]) => {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n\n window[pointer].queue.push(args);\n };\n }\n\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n\n insightsClient = window[pointer];\n\n loadInsights(window);\n }\n });\n }\n\n const insights = createSearchInsightsApi(insightsClient);\n const previousItems = createRef<AlgoliaInsightsHit[]>([]);\n\n const debouncedOnStateChange = debounce<{\n state: AutocompleteState<any>;\n }>(({ state }) => {\n if (!state.isOpen) {\n return;\n }\n\n const items = state.collections\n .reduce<unknown[]>((acc, current) => {\n return [...acc, ...current.items];\n }, [])\n .filter(isAlgoliaInsightsHit);\n\n if (\n !isEqual(\n previousItems.current.map((x) => x.objectID),\n items.map((x) => x.objectID)\n )\n ) {\n previousItems.current = items;\n\n if (items.length > 0) {\n sendViewedObjectIDs({ onItemsChange, items, insights, state });\n }\n }\n }, 0);\n\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe({ setContext, onSelect, onActive }) {\n function setInsightsContext(userToken?: string) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: {\n ...(__autocomplete_clickAnalytics\n ? { clickAnalytics: true }\n : {}),\n ...(userToken ? { userToken } : {}),\n },\n insights,\n },\n });\n }\n\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n\n setInsightsContext();\n insightsClient('onUserTokenChange', setInsightsContext);\n insightsClient('getUserToken', null, (_error, userToken) => {\n setInsightsContext(userToken);\n });\n\n onSelect(({ item, state, event, source }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onSelectEvent({\n state: state as AutocompleteState<any>,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Selected',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource<any>)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n\n onActive(({ item, source, state, event }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onActiveEvent({\n state: state as AutocompleteState<any>,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Active',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource<any>)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n },\n onStateChange({ state }) {\n debouncedOnStateChange({ state: state as AutocompleteState<any> });\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getAlgoliaSources(\n algoliaSourceBase: string[] = [],\n context: AutocompleteContext\n) {\n return [\n ...algoliaSourceBase,\n 'autocomplete-internal',\n ...((context.algoliaInsightsPlugin as Record<string, unknown>)\n ?.__automaticInsights\n ? ['autocomplete-automatic']\n : []),\n ];\n}\n\nfunction getOptions(options: CreateAlgoliaInsightsPluginParams) {\n return {\n onItemsChange({ insights, insightsEvents, state }: OnItemsChangeParams) {\n insights.viewedObjectIDs(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onSelect({ insights, insightsEvents, state }: OnSelectParams) {\n insights.clickedObjectIDsAfterSearch(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true,\n ...options,\n };\n}\n\nfunction loadInsights(environment: typeof window) {\n const errorMessage = `[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete`;\n\n try {\n const script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n\n script.onerror = () => {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n"],"names":["createRef","initialValue","current","debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","isPrimitive","obj","Object","isEqual","first","second","keys","_i","_Object$keys","key","noop","safelyRunOnBrowser","callback","window","createClickedEvent","_ref","item","_ref$items","items","index","__autocomplete_indexName","positions","findIndex","x","objectID","queryID","__autocomplete_queryID","algoliaSource","isModernInsightsClient","client","_split$map","version","split","map","Number","_split$map2","_slicedToArray","major","minor","v3","v2_4","v1_10","chunk","chunkSize","chunks","i","objectIDs","push","_objectSpread","slice","mapToInsightsParamsApi","params","param","_objectWithoutProperties","_excluded","_ref2","createSearchInsightsApi","searchInsights","canSendHeaders","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","appId","apiKey","headers","concat","_toConsumableArray","init","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","reduce","acc","_ref3","_excluded2","_ref4","payload","forEach","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","VIEW_EVENT_DELAY","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","state","insightsEvents","event","eventName","createAlgoliaInsightsPlugin","options","_getOptions","getOptions","providedInsightsClient","insightsClient","onSelectEvent","onSelect","onActiveEvent","onActive","__autocomplete_clickAnalytics","pointer","AlgoliaAnalyticsObject","queue","loadInsights","previousItems","debouncedOnStateChange","isOpen","collections","filter","name","subscribe","setContext","setInsightsContext","algoliaInsightsPlugin","__algoliaSearchParameters","clickAnalytics","_error","source","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions","getAlgoliaSources","_context$algoliaInsig","algoliaSourceBase","context","__automaticInsights","_ref8","_ref9","environment","errorMessage","script","document","createElement","async","src","onerror","console","error","body","appendChild","cause"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.development.js","sources":["../../../autocomplete-shared/dist/esm/createRef.js","../../../autocomplete-shared/dist/esm/debounce.js","../../../autocomplete-shared/dist/esm/isEqual.js","../../../autocomplete-shared/dist/esm/noop.js","../../../autocomplete-shared/dist/esm/safelyRunOnBrowser.js","../../src/createClickedEvent.ts","../../src/isModernInsightsClient.ts","../../src/createSearchInsightsApi.ts","../../src/createViewedEvents.ts","../../src/isAlgoliaInsightsHit.ts","../../src/createAlgoliaInsightsPlugin.ts"],"sourcesContent":["export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}","export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","import type {\n AlgoliaInsightsHit,\n ClickedObjectIDsAfterSearchParams,\n InsightsParamsWithItems,\n} from './types';\n\ntype CreateClickedEventParams = {\n item: AlgoliaInsightsHit;\n items: AlgoliaInsightsHit[];\n};\n\nexport function createClickedEvent({\n item,\n items = [],\n}: CreateClickedEventParams): Omit<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>,\n 'eventName'\n> & { algoliaSource?: string[] } {\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex((x) => x.objectID === item.objectID)],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete'],\n };\n}\n","import type { InsightsClient } from './types';\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 */\nexport function isModernInsightsClient(client: InsightsClient): boolean {\n const [major, minor] = (client.version || '').split('.').map(Number);\n\n /* eslint-disable @typescript-eslint/camelcase */\n const v3 = major >= 3;\n const v2_4 = major === 2 && minor >= 4;\n const v1_10 = major === 1 && minor >= 10;\n\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}\n","import type { InsightsMethodMap } from 'search-insights';\n\nimport { isModernInsightsClient } from './isModernInsightsClient';\nimport {\n AlgoliaInsightsHit,\n ClickedFiltersParams,\n ClickedObjectIDsAfterSearchParams,\n ClickedObjectIDsParams,\n ConvertedFiltersParams,\n ConvertedObjectIDsAfterSearchParams,\n ConvertedObjectIDsParams,\n InsightsClient,\n InsightsClientMethod,\n WithArbitraryParams,\n InsightsParamsWithItems,\n ViewedFiltersParams,\n ViewedObjectIDsParams,\n} from './types';\n\nfunction chunk<TItem extends { objectIDs: string[] }>(\n item: TItem,\n chunkSize: number = 20\n): TItem[] {\n const chunks: TItem[] = [];\n for (let i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push({\n ...item,\n objectIDs: item.objectIDs.slice(i, i + chunkSize),\n });\n }\n return chunks;\n}\n\nfunction mapToInsightsParamsApi<\n TInsightsParamsType extends {\n items: AlgoliaInsightsHit[];\n objectIDs?: string[];\n }\n>(params: TInsightsParamsType[]) {\n return params.map(({ items, ...param }) => ({\n ...param,\n objectIDs: items?.map(({ objectID }) => objectID) || param.objectIDs,\n }));\n}\n\nexport function createSearchInsightsApi(searchInsights: InsightsClient) {\n const canSendHeaders = isModernInsightsClient(searchInsights);\n\n function sendToInsights<TInsightsMethod extends InsightsClientMethod>(\n method: InsightsClientMethod,\n payloads: InsightsMethodMap[TInsightsMethod],\n items?: AlgoliaInsightsHit[]\n ) {\n if (canSendHeaders && typeof items !== 'undefined') {\n const { appId, apiKey } = items[0].__autocomplete_algoliaCredentials;\n const headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey,\n };\n\n searchInsights(method, ...payloads, { headers });\n } else {\n searchInsights(method, ...payloads);\n }\n }\n\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init(appId: string, apiKey: string) {\n searchInsights('init', { appId, apiKey });\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken(userToken: string) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ClickedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ClickedObjectIDsParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters(\n ...params: Array<WithArbitraryParams<ClickedFiltersParams>>\n ) {\n if (params.length > 0) {\n searchInsights('clickedFilters', ...params);\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems<ConvertedObjectIDsAfterSearchParams>\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ConvertedObjectIDsAfterSearchParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ConvertedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ConvertedObjectIDsParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters(\n ...params: Array<WithArbitraryParams<ConvertedFiltersParams>>\n ) {\n if (params.length > 0) {\n searchInsights('convertedFilters', ...params);\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ViewedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n params\n .reduce<\n Array<{\n items?: AlgoliaInsightsHit[];\n payload: ViewedObjectIDsParams;\n }>\n >(\n (acc, { items, ...param }) => [\n ...acc,\n ...chunk<ViewedObjectIDsParams>({\n ...param,\n objectIDs:\n items?.map(({ objectID }) => objectID) || param.objectIDs,\n }).map((payload) => {\n return { items, payload };\n }),\n ],\n []\n )\n .forEach(({ items, payload }) =>\n sendToInsights('viewedObjectIDs', [payload], items)\n );\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters(...params: Array<WithArbitraryParams<ViewedFiltersParams>>) {\n if (params.length > 0) {\n searchInsights('viewedFilters', ...params);\n }\n },\n };\n}\n","import {\n AlgoliaInsightsHit,\n InsightsParamsWithItems,\n ViewedObjectIDsParams,\n} from './types';\n\ntype CreateViewedEventsParams = {\n items: AlgoliaInsightsHit[];\n};\n\nexport function createViewedEvents({\n items,\n}: CreateViewedEventsParams): Array<\n Omit<InsightsParamsWithItems<ViewedObjectIDsParams>, 'eventName'>\n> {\n const itemsByIndexName = items.reduce<Record<string, AlgoliaInsightsHit[]>>(\n (acc, current) => {\n acc[current.__autocomplete_indexName] = (\n acc[current.__autocomplete_indexName] ?? []\n ).concat(current);\n\n return acc;\n },\n {}\n );\n\n return Object.keys(itemsByIndexName).map((indexName) => {\n const items = itemsByIndexName[indexName];\n\n return {\n index: indexName,\n items,\n algoliaSource: ['autocomplete'],\n };\n });\n}\n","import { AlgoliaInsightsHit } from './types';\n\nexport function isAlgoliaInsightsHit(hit: any): hit is AlgoliaInsightsHit {\n return (\n hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID\n );\n}\n","import {\n AutocompleteState,\n AutocompletePlugin,\n createRef,\n debounce,\n isEqual,\n noop,\n safelyRunOnBrowser,\n} from '@algolia/autocomplete-shared';\nimport {\n AutocompleteContext,\n AutocompleteReshapeSource,\n} from '@algolia/autocomplete-shared/dist/esm/core';\n\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nimport {\n AlgoliaInsightsHit,\n AutocompleteInsightsApi,\n InsightsClient,\n OnActiveParams,\n OnItemsChangeParams,\n OnSelectParams,\n} from './types';\n\nconst VIEW_EVENT_DELAY = 400;\nconst ALGOLIA_INSIGHTS_VERSION = '2.6.0';\nconst ALGOLIA_INSIGHTS_SRC = `https://cdn.jsdelivr.net/npm/search-insights@${ALGOLIA_INSIGHTS_VERSION}/dist/search-insights.min.js`;\n\ntype SendViewedObjectIDsParams = {\n onItemsChange(params: OnItemsChangeParams): void;\n items: AlgoliaInsightsHit[];\n insights: AutocompleteInsightsApi;\n state: AutocompleteState<any>;\n};\n\nconst sendViewedObjectIDs = debounce<SendViewedObjectIDsParams>(\n ({ onItemsChange, items, insights, state }) => {\n onItemsChange({\n insights,\n insightsEvents: createViewedEvents({ items }).map((event) => ({\n eventName: 'Items Viewed',\n ...event,\n })),\n state,\n });\n },\n VIEW_EVENT_DELAY\n);\n\nexport type CreateAlgoliaInsightsPluginParams = {\n /**\n * The initialized Search Insights client.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsclient\n */\n insightsClient?: InsightsClient;\n /**\n * Hook to send an Insights event when the items change.\n *\n * By default, it sends a `viewedObjectIDs` event.\n *\n * In as-you-type experiences, items change as the user types. This hook is debounced every 400ms to reflect actual items that users notice and avoid generating too many events for items matching \"in progress\" queries.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onitemschange\n */\n onItemsChange?(params: OnItemsChangeParams): void;\n /**\n * Hook to send an Insights event when an item is selected.\n *\n * By default, it sends a clickedObjectIDsAfterSearch event.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onselect\n */\n onSelect?(params: OnSelectParams): void;\n /**\n * Hook to send an Insights event when an item is active.\n *\n * By default, it doesn't send any events.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onactive\n */\n onActive?(params: OnActiveParams): void;\n /**\n * @internal\n */\n __autocomplete_clickAnalytics?: boolean;\n};\n\nexport function createAlgoliaInsightsPlugin(\n options: CreateAlgoliaInsightsPluginParams\n): AutocompletePlugin<any, undefined> {\n const {\n insightsClient: providedInsightsClient,\n onItemsChange,\n onSelect: onSelectEvent,\n onActive: onActiveEvent,\n __autocomplete_clickAnalytics,\n } = getOptions(options);\n let insightsClient = providedInsightsClient as InsightsClient;\n\n if (!providedInsightsClient) {\n safelyRunOnBrowser(({ window }) => {\n const pointer = window.AlgoliaAnalyticsObject || 'aa';\n\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n\n if (!window[pointer]) {\n window[pointer] = (...args: any[]) => {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n\n window[pointer].queue.push(args);\n };\n }\n\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n\n insightsClient = window[pointer];\n\n loadInsights(window);\n }\n });\n }\n\n // We return an empty plugin if `insightsClient` is still undefined at\n // this stage, which can happen in server environments.\n if (!insightsClient) {\n return {};\n }\n\n const insights = createSearchInsightsApi(insightsClient);\n const previousItems = createRef<AlgoliaInsightsHit[]>([]);\n\n const debouncedOnStateChange = debounce<{\n state: AutocompleteState<any>;\n }>(({ state }) => {\n if (!state.isOpen) {\n return;\n }\n\n const items = state.collections\n .reduce<unknown[]>((acc, current) => {\n return [...acc, ...current.items];\n }, [])\n .filter(isAlgoliaInsightsHit);\n\n if (\n !isEqual(\n previousItems.current.map((x) => x.objectID),\n items.map((x) => x.objectID)\n )\n ) {\n previousItems.current = items;\n\n if (items.length > 0) {\n sendViewedObjectIDs({ onItemsChange, items, insights, state });\n }\n }\n }, 0);\n\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe({ setContext, onSelect, onActive }) {\n function setInsightsContext(userToken?: string) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: {\n ...(__autocomplete_clickAnalytics\n ? { clickAnalytics: true }\n : {}),\n ...(userToken ? { userToken } : {}),\n },\n insights,\n },\n });\n }\n\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n\n setInsightsContext();\n insightsClient('onUserTokenChange', setInsightsContext);\n insightsClient('getUserToken', null, (_error, userToken) => {\n setInsightsContext(userToken);\n });\n\n onSelect(({ item, state, event, source }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onSelectEvent({\n state: state as AutocompleteState<any>,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Selected',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource<any>)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n\n onActive(({ item, source, state, event }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onActiveEvent({\n state: state as AutocompleteState<any>,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Active',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource<any>)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n },\n onStateChange({ state }) {\n debouncedOnStateChange({ state: state as AutocompleteState<any> });\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getAlgoliaSources(\n algoliaSourceBase: string[] = [],\n context: AutocompleteContext\n) {\n return [\n ...algoliaSourceBase,\n 'autocomplete-internal',\n ...((context.algoliaInsightsPlugin as Record<string, unknown>)\n ?.__automaticInsights\n ? ['autocomplete-automatic']\n : []),\n ];\n}\n\nfunction getOptions(options: CreateAlgoliaInsightsPluginParams) {\n return {\n onItemsChange({ insights, insightsEvents, state }: OnItemsChangeParams) {\n insights.viewedObjectIDs(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onSelect({ insights, insightsEvents, state }: OnSelectParams) {\n insights.clickedObjectIDsAfterSearch(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true,\n ...options,\n };\n}\n\nfunction loadInsights(environment: typeof window) {\n const errorMessage = `[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete`;\n\n try {\n const script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n\n script.onerror = () => {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n"],"names":["createRef","initialValue","current","debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","isPrimitive","obj","Object","isEqual","first","second","keys","_i","_Object$keys","key","noop","safelyRunOnBrowser","callback","window","createClickedEvent","_ref","item","_ref$items","items","index","__autocomplete_indexName","positions","findIndex","x","objectID","queryID","__autocomplete_queryID","algoliaSource","isModernInsightsClient","client","_split$map","version","split","map","Number","_split$map2","_slicedToArray","major","minor","v3","v2_4","v1_10","chunk","chunkSize","chunks","i","objectIDs","push","_objectSpread","slice","mapToInsightsParamsApi","params","param","_objectWithoutProperties","_excluded","_ref2","createSearchInsightsApi","searchInsights","canSendHeaders","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","appId","apiKey","headers","concat","_toConsumableArray","init","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","reduce","acc","_ref3","_excluded2","_ref4","payload","forEach","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","VIEW_EVENT_DELAY","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","state","insightsEvents","event","eventName","createAlgoliaInsightsPlugin","options","_getOptions","getOptions","providedInsightsClient","insightsClient","onSelectEvent","onSelect","onActiveEvent","onActive","__autocomplete_clickAnalytics","pointer","AlgoliaAnalyticsObject","queue","loadInsights","previousItems","debouncedOnStateChange","isOpen","collections","filter","name","subscribe","setContext","setInsightsContext","algoliaInsightsPlugin","__algoliaSearchParameters","clickAnalytics","_error","source","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions","getAlgoliaSources","_context$algoliaInsig","algoliaSourceBase","context","__automaticInsights","_ref8","_ref9","environment","errorMessage","script","document","createElement","async","src","onerror","console","error","body","appendChild","cause"],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! @algolia/autocomplete-plugin-algolia-insights 1.12.
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-plugin-algolia-insights"]={})}(this,(function(e){"use strict";function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(e){for(var n=1;n<arguments.length;n++){var i=null!=arguments[n]?arguments[n]:{};n%2?t(Object(i),!0).forEach((function(t){r(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):t(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}function r(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,c,a=[],u=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=o.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){l=!0,i=e}finally{try{if(!u&&null!=n.return&&(c=n.return(),Object(c)!==c))return}finally{if(l)throw i}}return a}}(e,t)||a(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||a(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function l(e,t){var n=void 0;return function(){for(var r=arguments.length,i=new Array(r),o=0;o<r;o++)i[o]=arguments[o];n&&clearTimeout(n),n=setTimeout((function(){return e.apply(void 0,i)}),t)}}function s(e){return e!==Object(e)}function f(e,t){if(e===t)return!0;if(s(e)||s(t)||"function"==typeof e||"function"==typeof t)return e===t;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n=0,r=Object.keys(e);n<r.length;n++){var i=r[n];if(!(i in t))return!1;if(!f(e[i],t[i]))return!1}return!0}var p=function(){};function m(e){var t=e.item,n=e.items,r=void 0===n?[]:n;return{index:t.__autocomplete_indexName,items:[t],positions:[1+r.findIndex((function(e){return e.objectID===t.objectID}))],queryID:t.__autocomplete_queryID,algoliaSource:["autocomplete"]}}var g=["items"],v=["items"];function d(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,r=[],i=0;i<e.objectIDs.length;i+=t)r.push(n(n({},e),{},{objectIDs:e.objectIDs.slice(i,i+t)}));return r}function y(e){return e.map((function(e){var t=e.items,r=i(e,g);return n(n({},r),{},{objectIDs:(null==t?void 0:t.map((function(e){return e.objectID})))||r.objectIDs})}))}function h(e){var t,r,a,u=(t=o((e.version||"").split(".").map(Number),2),r=t[0],a=t[1],r>=3||2===r&&a>=4||1===r&&a>=10);function l(t,n,r){if(u&&void 0!==r){var i=r[0].__autocomplete_algoliaCredentials,o={"X-Algolia-Application-Id":i.appId,"X-Algolia-API-Key":i.apiKey};e.apply(void 0,[t].concat(c(n),[{headers:o}]))}else e.apply(void 0,[t].concat(c(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&l("clickedObjectIDsAfterSearch",y(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&l("clickedObjectIDs",y(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&l("convertedObjectIDsAfterSearch",y(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&l("convertedObjectIDs",y(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];t.length>0&&t.reduce((function(e,t){var r=t.items,o=i(t,v);return[].concat(c(e),c(d(n(n({},o),{},{objectIDs:(null==r?void 0:r.map((function(e){return e.objectID})))||o.objectIDs})).map((function(e){return{items:r,payload:e}}))))}),[]).forEach((function(e){var t=e.items;return l("viewedObjectIDs",[e.payload],t)}))},viewedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function b(e){var t=e.items.reduce((function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function j(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}var I="2.6.0",O="https://cdn.jsdelivr.net/npm/search-insights@".concat(I,"/dist/search-insights.min.js"),A=l((function(e){var t=e.onItemsChange,r=e.items,i=e.insights,o=e.state;t({insights:i,insightsEvents:b({items:r}).map((function(e){return n({eventName:"Items Viewed"},e)})),state:o})}),400);function w(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1?arguments[1]:void 0;return[].concat(c(t),["autocomplete-internal"],c(null!==(e=n.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?["autocomplete-automatic"]:[]))}e.createAlgoliaInsightsPlugin=function(e){var t=function(e){return n({onItemsChange:function(e){var t=e.insights,r=e.insightsEvents,i=e.state;t.viewedObjectIDs.apply(t,c(r.map((function(e){return n(n({},e),{},{algoliaSource:w(e.algoliaSource,i.context)})}))))},onSelect:function(e){var t=e.insights,r=e.insightsEvents,i=e.state;t.clickedObjectIDsAfterSearch.apply(t,c(r.map((function(e){return n(n({},e),{},{algoliaSource:w(e.algoliaSource,i.context)})}))))},onActive:p,__autocomplete_clickAnalytics:!0},e)}(e),r=t.insightsClient,i=t.onItemsChange,o=t.onSelect,a=t.onActive,u=t.__autocomplete_clickAnalytics,s=r;r||function(e){if("undefined"!=typeof window)e({window:window})}((function(e){var t=e.window,n=t.AlgoliaAnalyticsObject||"aa";"string"==typeof n&&(s=t[n]),s||(t.AlgoliaAnalyticsObject=n,t[n]||(t[n]=function(){t[n].queue||(t[n].queue=[]);for(var e=arguments.length,r=new Array(e),i=0;i<e;i++)r[i]=arguments[i];t[n].queue.push(r)}),t[n].version=I,s=t[n],function(e){var t="[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete";try{var n=e.document.createElement("script");n.async=!0,n.src=O,n.onerror=function(){console.error(t)},document.body.appendChild(n)}catch(e){console.error(t)}}(t))}));var g=h(s),v={current:[]},d=l((function(e){var t=e.state;if(t.isOpen){var n=t.collections.reduce((function(e,t){return[].concat(c(e),c(t.items))}),[]).filter(j);f(v.current.map((function(e){return e.objectID})),n.map((function(e){return e.objectID})))||(v.current=n,n.length>0&&A({onItemsChange:i,items:n,insights:g,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,r=e.onSelect,i=e.onActive;function c(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:n(n({},u?{clickAnalytics:!0}:{}),e?{userToken:e}:{}),insights:g}})}s("addAlgoliaAgent","insights-plugin"),c(),s("onUserTokenChange",c),s("getUserToken",null,(function(e,t){c(t)})),r((function(e){var t=e.item,r=e.state,i=e.event,c=e.source;j(t)&&o({state:r,event:i,insights:g,item:t,insightsEvents:[n({eventName:"Item Selected"},m({item:t,items:c.getItems().filter(j)}))]})})),i((function(e){var t=e.item,r=e.source,i=e.state,o=e.event;j(t)&&a({state:i,event:o,insights:g,item:t,insightsEvents:[n({eventName:"Item Active"},m({item:t,items:r.getItems().filter(j)}))]})}))},onStateChange:function(e){var t=e.state;d({state:t})},__autocomplete_pluginOptions:e}},Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
1
|
+
/*! @algolia/autocomplete-plugin-algolia-insights 1.12.2 | MIT License | © Algolia, Inc. and contributors | https://github.com/algolia/autocomplete */
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@algolia/autocomplete-plugin-algolia-insights"]={})}(this,(function(e){"use strict";function t(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function n(e){for(var n=1;n<arguments.length;n++){var i=null!=arguments[n]?arguments[n]:{};n%2?t(Object(i),!0).forEach((function(t){r(e,t,i[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):t(Object(i)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))}))}return e}function r(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,i,o,c,a=[],u=!0,l=!1;try{if(o=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=o.call(n)).done)&&(a.push(r.value),a.length!==t);u=!0);}catch(e){l=!0,i=e}finally{try{if(!u&&null!=n.return&&(c=n.return(),Object(c)!==c))return}finally{if(l)throw i}}return a}}(e,t)||a(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||a(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){if(e){if("string"==typeof e)return u(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?u(e,t):void 0}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function l(e,t){var n=void 0;return function(){for(var r=arguments.length,i=new Array(r),o=0;o<r;o++)i[o]=arguments[o];n&&clearTimeout(n),n=setTimeout((function(){return e.apply(void 0,i)}),t)}}function s(e){return e!==Object(e)}function f(e,t){if(e===t)return!0;if(s(e)||s(t)||"function"==typeof e||"function"==typeof t)return e===t;if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n=0,r=Object.keys(e);n<r.length;n++){var i=r[n];if(!(i in t))return!1;if(!f(e[i],t[i]))return!1}return!0}var p=function(){};function m(e){var t=e.item,n=e.items,r=void 0===n?[]:n;return{index:t.__autocomplete_indexName,items:[t],positions:[1+r.findIndex((function(e){return e.objectID===t.objectID}))],queryID:t.__autocomplete_queryID,algoliaSource:["autocomplete"]}}var g=["items"],v=["items"];function d(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:20,r=[],i=0;i<e.objectIDs.length;i+=t)r.push(n(n({},e),{},{objectIDs:e.objectIDs.slice(i,i+t)}));return r}function y(e){return e.map((function(e){var t=e.items,r=i(e,g);return n(n({},r),{},{objectIDs:(null==t?void 0:t.map((function(e){return e.objectID})))||r.objectIDs})}))}function h(e){var t,r,a,u=(t=o((e.version||"").split(".").map(Number),2),r=t[0],a=t[1],r>=3||2===r&&a>=4||1===r&&a>=10);function l(t,n,r){if(u&&void 0!==r){var i=r[0].__autocomplete_algoliaCredentials,o={"X-Algolia-Application-Id":i.appId,"X-Algolia-API-Key":i.apiKey};e.apply(void 0,[t].concat(c(n),[{headers:o}]))}else e.apply(void 0,[t].concat(c(n)))}return{init:function(t,n){e("init",{appId:t,apiKey:n})},setUserToken:function(t){e("setUserToken",t)},clickedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&l("clickedObjectIDsAfterSearch",y(t),t[0].items)},clickedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&l("clickedObjectIDs",y(t),t[0].items)},clickedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["clickedFilters"].concat(n))},convertedObjectIDsAfterSearch:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&l("convertedObjectIDsAfterSearch",y(t),t[0].items)},convertedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];t.length>0&&l("convertedObjectIDs",y(t),t[0].items)},convertedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["convertedFilters"].concat(n))},viewedObjectIDs:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];t.length>0&&t.reduce((function(e,t){var r=t.items,o=i(t,v);return[].concat(c(e),c(d(n(n({},o),{},{objectIDs:(null==r?void 0:r.map((function(e){return e.objectID})))||o.objectIDs})).map((function(e){return{items:r,payload:e}}))))}),[]).forEach((function(e){var t=e.items;return l("viewedObjectIDs",[e.payload],t)}))},viewedFilters:function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];n.length>0&&e.apply(void 0,["viewedFilters"].concat(n))}}}function b(e){var t=e.items.reduce((function(e,t){var n;return e[t.__autocomplete_indexName]=(null!==(n=e[t.__autocomplete_indexName])&&void 0!==n?n:[]).concat(t),e}),{});return Object.keys(t).map((function(e){return{index:e,items:t[e],algoliaSource:["autocomplete"]}}))}function j(e){return e.objectID&&e.__autocomplete_indexName&&e.__autocomplete_queryID}var I="2.6.0",O="https://cdn.jsdelivr.net/npm/search-insights@".concat(I,"/dist/search-insights.min.js"),A=l((function(e){var t=e.onItemsChange,r=e.items,i=e.insights,o=e.state;t({insights:i,insightsEvents:b({items:r}).map((function(e){return n({eventName:"Items Viewed"},e)})),state:o})}),400);function w(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1?arguments[1]:void 0;return[].concat(c(t),["autocomplete-internal"],c(null!==(e=n.algoliaInsightsPlugin)&&void 0!==e&&e.__automaticInsights?["autocomplete-automatic"]:[]))}e.createAlgoliaInsightsPlugin=function(e){var t=function(e){return n({onItemsChange:function(e){var t=e.insights,r=e.insightsEvents,i=e.state;t.viewedObjectIDs.apply(t,c(r.map((function(e){return n(n({},e),{},{algoliaSource:w(e.algoliaSource,i.context)})}))))},onSelect:function(e){var t=e.insights,r=e.insightsEvents,i=e.state;t.clickedObjectIDsAfterSearch.apply(t,c(r.map((function(e){return n(n({},e),{},{algoliaSource:w(e.algoliaSource,i.context)})}))))},onActive:p,__autocomplete_clickAnalytics:!0},e)}(e),r=t.insightsClient,i=t.onItemsChange,o=t.onSelect,a=t.onActive,u=t.__autocomplete_clickAnalytics,s=r;if(r||function(e){if("undefined"!=typeof window)e({window:window})}((function(e){var t=e.window,n=t.AlgoliaAnalyticsObject||"aa";"string"==typeof n&&(s=t[n]),s||(t.AlgoliaAnalyticsObject=n,t[n]||(t[n]=function(){t[n].queue||(t[n].queue=[]);for(var e=arguments.length,r=new Array(e),i=0;i<e;i++)r[i]=arguments[i];t[n].queue.push(r)}),t[n].version=I,s=t[n],function(e){var t="[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete";try{var n=e.document.createElement("script");n.async=!0,n.src=O,n.onerror=function(){console.error(t)},document.body.appendChild(n)}catch(e){console.error(t)}}(t))})),!s)return{};var g=h(s),v={current:[]},d=l((function(e){var t=e.state;if(t.isOpen){var n=t.collections.reduce((function(e,t){return[].concat(c(e),c(t.items))}),[]).filter(j);f(v.current.map((function(e){return e.objectID})),n.map((function(e){return e.objectID})))||(v.current=n,n.length>0&&A({onItemsChange:i,items:n,insights:g,state:t}))}}),0);return{name:"aa.algoliaInsightsPlugin",subscribe:function(e){var t=e.setContext,r=e.onSelect,i=e.onActive;function c(e){t({algoliaInsightsPlugin:{__algoliaSearchParameters:n(n({},u?{clickAnalytics:!0}:{}),e?{userToken:e}:{}),insights:g}})}s("addAlgoliaAgent","insights-plugin"),c(),s("onUserTokenChange",c),s("getUserToken",null,(function(e,t){c(t)})),r((function(e){var t=e.item,r=e.state,i=e.event,c=e.source;j(t)&&o({state:r,event:i,insights:g,item:t,insightsEvents:[n({eventName:"Item Selected"},m({item:t,items:c.getItems().filter(j)}))]})})),i((function(e){var t=e.item,r=e.source,i=e.state,o=e.event;j(t)&&a({state:i,event:o,insights:g,item:t,insightsEvents:[n({eventName:"Item Active"},m({item:t,items:r.getItems().filter(j)}))]})}))},onStateChange:function(e){var t=e.state;d({state:t})},__autocomplete_pluginOptions:e}},Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
3
3
|
//# sourceMappingURL=index.production.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.production.js","sources":["../../../autocomplete-shared/dist/esm/debounce.js","../../../autocomplete-shared/dist/esm/isEqual.js","../../../autocomplete-shared/dist/esm/noop.js","../../src/createClickedEvent.ts","../../src/createSearchInsightsApi.ts","../../src/isModernInsightsClient.ts","../../src/createViewedEvents.ts","../../src/isAlgoliaInsightsHit.ts","../../src/createAlgoliaInsightsPlugin.ts","../../../autocomplete-shared/dist/esm/safelyRunOnBrowser.js","../../../autocomplete-shared/dist/esm/createRef.js"],"sourcesContent":["export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","import type {\n AlgoliaInsightsHit,\n ClickedObjectIDsAfterSearchParams,\n InsightsParamsWithItems,\n} from './types';\n\ntype CreateClickedEventParams = {\n item: AlgoliaInsightsHit;\n items: AlgoliaInsightsHit[];\n};\n\nexport function createClickedEvent({\n item,\n items = [],\n}: CreateClickedEventParams): Omit<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>,\n 'eventName'\n> & { algoliaSource?: string[] } {\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex((x) => x.objectID === item.objectID)],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete'],\n };\n}\n","import type { InsightsMethodMap } from 'search-insights';\n\nimport { isModernInsightsClient } from './isModernInsightsClient';\nimport {\n AlgoliaInsightsHit,\n ClickedFiltersParams,\n ClickedObjectIDsAfterSearchParams,\n ClickedObjectIDsParams,\n ConvertedFiltersParams,\n ConvertedObjectIDsAfterSearchParams,\n ConvertedObjectIDsParams,\n InsightsClient,\n InsightsClientMethod,\n WithArbitraryParams,\n InsightsParamsWithItems,\n ViewedFiltersParams,\n ViewedObjectIDsParams,\n} from './types';\n\nfunction chunk<TItem extends { objectIDs: string[] }>(\n item: TItem,\n chunkSize: number = 20\n): TItem[] {\n const chunks: TItem[] = [];\n for (let i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push({\n ...item,\n objectIDs: item.objectIDs.slice(i, i + chunkSize),\n });\n }\n return chunks;\n}\n\nfunction mapToInsightsParamsApi<\n TInsightsParamsType extends {\n items: AlgoliaInsightsHit[];\n objectIDs?: string[];\n }\n>(params: TInsightsParamsType[]) {\n return params.map(({ items, ...param }) => ({\n ...param,\n objectIDs: items?.map(({ objectID }) => objectID) || param.objectIDs,\n }));\n}\n\nexport function createSearchInsightsApi(searchInsights: InsightsClient) {\n const canSendHeaders = isModernInsightsClient(searchInsights);\n\n function sendToInsights<TInsightsMethod extends InsightsClientMethod>(\n method: InsightsClientMethod,\n payloads: InsightsMethodMap[TInsightsMethod],\n items?: AlgoliaInsightsHit[]\n ) {\n if (canSendHeaders && typeof items !== 'undefined') {\n const { appId, apiKey } = items[0].__autocomplete_algoliaCredentials;\n const headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey,\n };\n\n searchInsights(method, ...payloads, { headers });\n } else {\n searchInsights(method, ...payloads);\n }\n }\n\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init(appId: string, apiKey: string) {\n searchInsights('init', { appId, apiKey });\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken(userToken: string) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ClickedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ClickedObjectIDsParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters(\n ...params: Array<WithArbitraryParams<ClickedFiltersParams>>\n ) {\n if (params.length > 0) {\n searchInsights('clickedFilters', ...params);\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems<ConvertedObjectIDsAfterSearchParams>\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ConvertedObjectIDsAfterSearchParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ConvertedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ConvertedObjectIDsParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters(\n ...params: Array<WithArbitraryParams<ConvertedFiltersParams>>\n ) {\n if (params.length > 0) {\n searchInsights('convertedFilters', ...params);\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ViewedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n params\n .reduce<\n Array<{\n items?: AlgoliaInsightsHit[];\n payload: ViewedObjectIDsParams;\n }>\n >(\n (acc, { items, ...param }) => [\n ...acc,\n ...chunk<ViewedObjectIDsParams>({\n ...param,\n objectIDs:\n items?.map(({ objectID }) => objectID) || param.objectIDs,\n }).map((payload) => {\n return { items, payload };\n }),\n ],\n []\n )\n .forEach(({ items, payload }) =>\n sendToInsights('viewedObjectIDs', [payload], items)\n );\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters(...params: Array<WithArbitraryParams<ViewedFiltersParams>>) {\n if (params.length > 0) {\n searchInsights('viewedFilters', ...params);\n }\n },\n };\n}\n","import type { InsightsClient } from './types';\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 */\nexport function isModernInsightsClient(client: InsightsClient): boolean {\n const [major, minor] = (client.version || '').split('.').map(Number);\n\n /* eslint-disable @typescript-eslint/camelcase */\n const v3 = major >= 3;\n const v2_4 = major === 2 && minor >= 4;\n const v1_10 = major === 1 && minor >= 10;\n\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}\n","import {\n AlgoliaInsightsHit,\n InsightsParamsWithItems,\n ViewedObjectIDsParams,\n} from './types';\n\ntype CreateViewedEventsParams = {\n items: AlgoliaInsightsHit[];\n};\n\nexport function createViewedEvents({\n items,\n}: CreateViewedEventsParams): Array<\n Omit<InsightsParamsWithItems<ViewedObjectIDsParams>, 'eventName'>\n> {\n const itemsByIndexName = items.reduce<Record<string, AlgoliaInsightsHit[]>>(\n (acc, current) => {\n acc[current.__autocomplete_indexName] = (\n acc[current.__autocomplete_indexName] ?? []\n ).concat(current);\n\n return acc;\n },\n {}\n );\n\n return Object.keys(itemsByIndexName).map((indexName) => {\n const items = itemsByIndexName[indexName];\n\n return {\n index: indexName,\n items,\n algoliaSource: ['autocomplete'],\n };\n });\n}\n","import { AlgoliaInsightsHit } from './types';\n\nexport function isAlgoliaInsightsHit(hit: any): hit is AlgoliaInsightsHit {\n return (\n hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID\n );\n}\n","import {\n AutocompleteState,\n AutocompletePlugin,\n createRef,\n debounce,\n isEqual,\n noop,\n safelyRunOnBrowser,\n} from '@algolia/autocomplete-shared';\nimport {\n AutocompleteContext,\n AutocompleteReshapeSource,\n} from '@algolia/autocomplete-shared/dist/esm/core';\n\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nimport {\n AlgoliaInsightsHit,\n AutocompleteInsightsApi,\n InsightsClient,\n OnActiveParams,\n OnItemsChangeParams,\n OnSelectParams,\n} from './types';\n\nconst VIEW_EVENT_DELAY = 400;\nconst ALGOLIA_INSIGHTS_VERSION = '2.6.0';\nconst ALGOLIA_INSIGHTS_SRC = `https://cdn.jsdelivr.net/npm/search-insights@${ALGOLIA_INSIGHTS_VERSION}/dist/search-insights.min.js`;\n\ntype SendViewedObjectIDsParams = {\n onItemsChange(params: OnItemsChangeParams): void;\n items: AlgoliaInsightsHit[];\n insights: AutocompleteInsightsApi;\n state: AutocompleteState<any>;\n};\n\nconst sendViewedObjectIDs = debounce<SendViewedObjectIDsParams>(\n ({ onItemsChange, items, insights, state }) => {\n onItemsChange({\n insights,\n insightsEvents: createViewedEvents({ items }).map((event) => ({\n eventName: 'Items Viewed',\n ...event,\n })),\n state,\n });\n },\n VIEW_EVENT_DELAY\n);\n\nexport type CreateAlgoliaInsightsPluginParams = {\n /**\n * The initialized Search Insights client.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsclient\n */\n insightsClient?: InsightsClient;\n /**\n * Hook to send an Insights event when the items change.\n *\n * By default, it sends a `viewedObjectIDs` event.\n *\n * In as-you-type experiences, items change as the user types. This hook is debounced every 400ms to reflect actual items that users notice and avoid generating too many events for items matching \"in progress\" queries.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onitemschange\n */\n onItemsChange?(params: OnItemsChangeParams): void;\n /**\n * Hook to send an Insights event when an item is selected.\n *\n * By default, it sends a clickedObjectIDsAfterSearch event.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onselect\n */\n onSelect?(params: OnSelectParams): void;\n /**\n * Hook to send an Insights event when an item is active.\n *\n * By default, it doesn't send any events.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onactive\n */\n onActive?(params: OnActiveParams): void;\n /**\n * @internal\n */\n __autocomplete_clickAnalytics?: boolean;\n};\n\nexport function createAlgoliaInsightsPlugin(\n options: CreateAlgoliaInsightsPluginParams\n): AutocompletePlugin<any, undefined> {\n const {\n insightsClient: providedInsightsClient,\n onItemsChange,\n onSelect: onSelectEvent,\n onActive: onActiveEvent,\n __autocomplete_clickAnalytics,\n } = getOptions(options);\n let insightsClient = providedInsightsClient as InsightsClient;\n\n if (!providedInsightsClient) {\n safelyRunOnBrowser(({ window }) => {\n const pointer = window.AlgoliaAnalyticsObject || 'aa';\n\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n\n if (!window[pointer]) {\n window[pointer] = (...args: any[]) => {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n\n window[pointer].queue.push(args);\n };\n }\n\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n\n insightsClient = window[pointer];\n\n loadInsights(window);\n }\n });\n }\n\n const insights = createSearchInsightsApi(insightsClient);\n const previousItems = createRef<AlgoliaInsightsHit[]>([]);\n\n const debouncedOnStateChange = debounce<{\n state: AutocompleteState<any>;\n }>(({ state }) => {\n if (!state.isOpen) {\n return;\n }\n\n const items = state.collections\n .reduce<unknown[]>((acc, current) => {\n return [...acc, ...current.items];\n }, [])\n .filter(isAlgoliaInsightsHit);\n\n if (\n !isEqual(\n previousItems.current.map((x) => x.objectID),\n items.map((x) => x.objectID)\n )\n ) {\n previousItems.current = items;\n\n if (items.length > 0) {\n sendViewedObjectIDs({ onItemsChange, items, insights, state });\n }\n }\n }, 0);\n\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe({ setContext, onSelect, onActive }) {\n function setInsightsContext(userToken?: string) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: {\n ...(__autocomplete_clickAnalytics\n ? { clickAnalytics: true }\n : {}),\n ...(userToken ? { userToken } : {}),\n },\n insights,\n },\n });\n }\n\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n\n setInsightsContext();\n insightsClient('onUserTokenChange', setInsightsContext);\n insightsClient('getUserToken', null, (_error, userToken) => {\n setInsightsContext(userToken);\n });\n\n onSelect(({ item, state, event, source }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onSelectEvent({\n state: state as AutocompleteState<any>,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Selected',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource<any>)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n\n onActive(({ item, source, state, event }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onActiveEvent({\n state: state as AutocompleteState<any>,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Active',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource<any>)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n },\n onStateChange({ state }) {\n debouncedOnStateChange({ state: state as AutocompleteState<any> });\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getAlgoliaSources(\n algoliaSourceBase: string[] = [],\n context: AutocompleteContext\n) {\n return [\n ...algoliaSourceBase,\n 'autocomplete-internal',\n ...((context.algoliaInsightsPlugin as Record<string, unknown>)\n ?.__automaticInsights\n ? ['autocomplete-automatic']\n : []),\n ];\n}\n\nfunction getOptions(options: CreateAlgoliaInsightsPluginParams) {\n return {\n onItemsChange({ insights, insightsEvents, state }: OnItemsChangeParams) {\n insights.viewedObjectIDs(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onSelect({ insights, insightsEvents, state }: OnSelectParams) {\n insights.clickedObjectIDsAfterSearch(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true,\n ...options,\n };\n}\n\nfunction loadInsights(environment: typeof window) {\n const errorMessage = `[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete`;\n\n try {\n const script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n\n script.onerror = () => {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}"],"names":["debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","isPrimitive","obj","Object","isEqual","first","second","keys","_i","_Object$keys","key","noop","createClickedEvent","_ref","item","_ref$items","items","index","__autocomplete_indexName","positions","findIndex","x","objectID","queryID","__autocomplete_queryID","algoliaSource","chunk","chunkSize","chunks","i","objectIDs","push","_objectSpread","slice","mapToInsightsParamsApi","params","map","param","_objectWithoutProperties","_excluded","_ref2","createSearchInsightsApi","searchInsights","_split$map2","major","minor","canSendHeaders","_slicedToArray","version","split","Number","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","headers","appId","apiKey","concat","_toConsumableArray","init","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","reduce","acc","_ref3","_excluded2","_ref4","payload","forEach","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","current","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","state","insightsEvents","event","eventName","getAlgoliaSources","_context$algoliaInsig","algoliaSourceBase","context","algoliaInsightsPlugin","__automaticInsights","options","_getOptions","_ref8","onSelect","_ref9","onActive","__autocomplete_clickAnalytics","getOptions","providedInsightsClient","insightsClient","onSelectEvent","onActiveEvent","callback","window","safelyRunOnBrowser","pointer","AlgoliaAnalyticsObject","queue","environment","errorMessage","script","document","createElement","async","src","onerror","console","error","body","appendChild","cause","loadInsights","previousItems","debouncedOnStateChange","isOpen","collections","filter","name","subscribe","setContext","setInsightsContext","__algoliaSearchParameters","clickAnalytics","_error","source","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.production.js","sources":["../../../autocomplete-shared/dist/esm/debounce.js","../../../autocomplete-shared/dist/esm/isEqual.js","../../../autocomplete-shared/dist/esm/noop.js","../../src/createClickedEvent.ts","../../src/createSearchInsightsApi.ts","../../src/isModernInsightsClient.ts","../../src/createViewedEvents.ts","../../src/isAlgoliaInsightsHit.ts","../../src/createAlgoliaInsightsPlugin.ts","../../../autocomplete-shared/dist/esm/safelyRunOnBrowser.js","../../../autocomplete-shared/dist/esm/createRef.js"],"sourcesContent":["export function debounce(fn, time) {\n var timerId = undefined;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (timerId) {\n clearTimeout(timerId);\n }\n timerId = setTimeout(function () {\n return fn.apply(void 0, args);\n }, time);\n };\n}","function isPrimitive(obj) {\n return obj !== Object(obj);\n}\nexport function isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (isPrimitive(first) || isPrimitive(second) || typeof first === 'function' || typeof second === 'function') {\n return first === second;\n }\n if (Object.keys(first).length !== Object.keys(second).length) {\n return false;\n }\n for (var _i = 0, _Object$keys = Object.keys(first); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n if (!(key in second)) {\n return false;\n }\n if (!isEqual(first[key], second[key])) {\n return false;\n }\n }\n return true;\n}","export var noop = function noop() {};","import type {\n AlgoliaInsightsHit,\n ClickedObjectIDsAfterSearchParams,\n InsightsParamsWithItems,\n} from './types';\n\ntype CreateClickedEventParams = {\n item: AlgoliaInsightsHit;\n items: AlgoliaInsightsHit[];\n};\n\nexport function createClickedEvent({\n item,\n items = [],\n}: CreateClickedEventParams): Omit<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>,\n 'eventName'\n> & { algoliaSource?: string[] } {\n return {\n index: item.__autocomplete_indexName,\n items: [item],\n positions: [1 + items.findIndex((x) => x.objectID === item.objectID)],\n queryID: item.__autocomplete_queryID,\n algoliaSource: ['autocomplete'],\n };\n}\n","import type { InsightsMethodMap } from 'search-insights';\n\nimport { isModernInsightsClient } from './isModernInsightsClient';\nimport {\n AlgoliaInsightsHit,\n ClickedFiltersParams,\n ClickedObjectIDsAfterSearchParams,\n ClickedObjectIDsParams,\n ConvertedFiltersParams,\n ConvertedObjectIDsAfterSearchParams,\n ConvertedObjectIDsParams,\n InsightsClient,\n InsightsClientMethod,\n WithArbitraryParams,\n InsightsParamsWithItems,\n ViewedFiltersParams,\n ViewedObjectIDsParams,\n} from './types';\n\nfunction chunk<TItem extends { objectIDs: string[] }>(\n item: TItem,\n chunkSize: number = 20\n): TItem[] {\n const chunks: TItem[] = [];\n for (let i = 0; i < item.objectIDs.length; i += chunkSize) {\n chunks.push({\n ...item,\n objectIDs: item.objectIDs.slice(i, i + chunkSize),\n });\n }\n return chunks;\n}\n\nfunction mapToInsightsParamsApi<\n TInsightsParamsType extends {\n items: AlgoliaInsightsHit[];\n objectIDs?: string[];\n }\n>(params: TInsightsParamsType[]) {\n return params.map(({ items, ...param }) => ({\n ...param,\n objectIDs: items?.map(({ objectID }) => objectID) || param.objectIDs,\n }));\n}\n\nexport function createSearchInsightsApi(searchInsights: InsightsClient) {\n const canSendHeaders = isModernInsightsClient(searchInsights);\n\n function sendToInsights<TInsightsMethod extends InsightsClientMethod>(\n method: InsightsClientMethod,\n payloads: InsightsMethodMap[TInsightsMethod],\n items?: AlgoliaInsightsHit[]\n ) {\n if (canSendHeaders && typeof items !== 'undefined') {\n const { appId, apiKey } = items[0].__autocomplete_algoliaCredentials;\n const headers = {\n 'X-Algolia-Application-Id': appId,\n 'X-Algolia-API-Key': apiKey,\n };\n\n searchInsights(method, ...payloads, { headers });\n } else {\n searchInsights(method, ...payloads);\n }\n }\n\n return {\n /**\n * Initializes Insights with Algolia credentials.\n */\n init(appId: string, apiKey: string) {\n searchInsights('init', { appId, apiKey });\n },\n /**\n * Sets the user token to attach to events.\n */\n setUserToken(userToken: string) {\n searchInsights('setUserToken', userToken);\n },\n /**\n * Sends click events to capture a query and its clicked items and positions.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids-after-search/\n */\n clickedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ClickedObjectIDsAfterSearchParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-object-ids/\n */\n clickedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ClickedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'clickedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ClickedObjectIDsParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends click events to capture the filters a user clicks on.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/clicked-filters/\n */\n clickedFilters(\n ...params: Array<WithArbitraryParams<ClickedFiltersParams>>\n ) {\n if (params.length > 0) {\n searchInsights('clickedFilters', ...params);\n }\n },\n /**\n * Sends conversion events to capture a query and its clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids-after-search/\n */\n convertedObjectIDsAfterSearch(\n ...params: Array<\n WithArbitraryParams<\n InsightsParamsWithItems<ConvertedObjectIDsAfterSearchParams>\n >\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDsAfterSearch',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ConvertedObjectIDsAfterSearchParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-object-ids/\n */\n convertedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ConvertedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n sendToInsights(\n 'convertedObjectIDs',\n mapToInsightsParamsApi<\n InsightsParamsWithItems<ConvertedObjectIDsParams>\n >(params),\n params[0].items\n );\n }\n },\n /**\n * Sends conversion events to capture the filters a user uses when converting.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/converted-filters/\n */\n convertedFilters(\n ...params: Array<WithArbitraryParams<ConvertedFiltersParams>>\n ) {\n if (params.length > 0) {\n searchInsights('convertedFilters', ...params);\n }\n },\n /**\n * Sends view events to capture clicked items.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-object-ids/\n */\n viewedObjectIDs(\n ...params: Array<\n WithArbitraryParams<InsightsParamsWithItems<ViewedObjectIDsParams>>\n >\n ) {\n if (params.length > 0) {\n params\n .reduce<\n Array<{\n items?: AlgoliaInsightsHit[];\n payload: ViewedObjectIDsParams;\n }>\n >(\n (acc, { items, ...param }) => [\n ...acc,\n ...chunk<ViewedObjectIDsParams>({\n ...param,\n objectIDs:\n items?.map(({ objectID }) => objectID) || param.objectIDs,\n }).map((payload) => {\n return { items, payload };\n }),\n ],\n []\n )\n .forEach(({ items, payload }) =>\n sendToInsights('viewedObjectIDs', [payload], items)\n );\n }\n },\n /**\n * Sends view events to capture the filters a user uses when viewing.\n *\n * @link https://www.algolia.com/doc/api-reference/api-methods/viewed-filters/\n */\n viewedFilters(...params: Array<WithArbitraryParams<ViewedFiltersParams>>) {\n if (params.length > 0) {\n searchInsights('viewedFilters', ...params);\n }\n },\n };\n}\n","import type { InsightsClient } from './types';\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 */\nexport function isModernInsightsClient(client: InsightsClient): boolean {\n const [major, minor] = (client.version || '').split('.').map(Number);\n\n /* eslint-disable @typescript-eslint/camelcase */\n const v3 = major >= 3;\n const v2_4 = major === 2 && minor >= 4;\n const v1_10 = major === 1 && minor >= 10;\n\n return v3 || v2_4 || v1_10;\n /* eslint-enable @typescript-eslint/camelcase */\n}\n","import {\n AlgoliaInsightsHit,\n InsightsParamsWithItems,\n ViewedObjectIDsParams,\n} from './types';\n\ntype CreateViewedEventsParams = {\n items: AlgoliaInsightsHit[];\n};\n\nexport function createViewedEvents({\n items,\n}: CreateViewedEventsParams): Array<\n Omit<InsightsParamsWithItems<ViewedObjectIDsParams>, 'eventName'>\n> {\n const itemsByIndexName = items.reduce<Record<string, AlgoliaInsightsHit[]>>(\n (acc, current) => {\n acc[current.__autocomplete_indexName] = (\n acc[current.__autocomplete_indexName] ?? []\n ).concat(current);\n\n return acc;\n },\n {}\n );\n\n return Object.keys(itemsByIndexName).map((indexName) => {\n const items = itemsByIndexName[indexName];\n\n return {\n index: indexName,\n items,\n algoliaSource: ['autocomplete'],\n };\n });\n}\n","import { AlgoliaInsightsHit } from './types';\n\nexport function isAlgoliaInsightsHit(hit: any): hit is AlgoliaInsightsHit {\n return (\n hit.objectID && hit.__autocomplete_indexName && hit.__autocomplete_queryID\n );\n}\n","import {\n AutocompleteState,\n AutocompletePlugin,\n createRef,\n debounce,\n isEqual,\n noop,\n safelyRunOnBrowser,\n} from '@algolia/autocomplete-shared';\nimport {\n AutocompleteContext,\n AutocompleteReshapeSource,\n} from '@algolia/autocomplete-shared/dist/esm/core';\n\nimport { createClickedEvent } from './createClickedEvent';\nimport { createSearchInsightsApi } from './createSearchInsightsApi';\nimport { createViewedEvents } from './createViewedEvents';\nimport { isAlgoliaInsightsHit } from './isAlgoliaInsightsHit';\nimport {\n AlgoliaInsightsHit,\n AutocompleteInsightsApi,\n InsightsClient,\n OnActiveParams,\n OnItemsChangeParams,\n OnSelectParams,\n} from './types';\n\nconst VIEW_EVENT_DELAY = 400;\nconst ALGOLIA_INSIGHTS_VERSION = '2.6.0';\nconst ALGOLIA_INSIGHTS_SRC = `https://cdn.jsdelivr.net/npm/search-insights@${ALGOLIA_INSIGHTS_VERSION}/dist/search-insights.min.js`;\n\ntype SendViewedObjectIDsParams = {\n onItemsChange(params: OnItemsChangeParams): void;\n items: AlgoliaInsightsHit[];\n insights: AutocompleteInsightsApi;\n state: AutocompleteState<any>;\n};\n\nconst sendViewedObjectIDs = debounce<SendViewedObjectIDsParams>(\n ({ onItemsChange, items, insights, state }) => {\n onItemsChange({\n insights,\n insightsEvents: createViewedEvents({ items }).map((event) => ({\n eventName: 'Items Viewed',\n ...event,\n })),\n state,\n });\n },\n VIEW_EVENT_DELAY\n);\n\nexport type CreateAlgoliaInsightsPluginParams = {\n /**\n * The initialized Search Insights client.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-insightsclient\n */\n insightsClient?: InsightsClient;\n /**\n * Hook to send an Insights event when the items change.\n *\n * By default, it sends a `viewedObjectIDs` event.\n *\n * In as-you-type experiences, items change as the user types. This hook is debounced every 400ms to reflect actual items that users notice and avoid generating too many events for items matching \"in progress\" queries.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onitemschange\n */\n onItemsChange?(params: OnItemsChangeParams): void;\n /**\n * Hook to send an Insights event when an item is selected.\n *\n * By default, it sends a clickedObjectIDsAfterSearch event.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onselect\n */\n onSelect?(params: OnSelectParams): void;\n /**\n * Hook to send an Insights event when an item is active.\n *\n * By default, it doesn't send any events.\n *\n * @link https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-plugin-algolia-insights/createAlgoliaInsightsPlugin/#param-onactive\n */\n onActive?(params: OnActiveParams): void;\n /**\n * @internal\n */\n __autocomplete_clickAnalytics?: boolean;\n};\n\nexport function createAlgoliaInsightsPlugin(\n options: CreateAlgoliaInsightsPluginParams\n): AutocompletePlugin<any, undefined> {\n const {\n insightsClient: providedInsightsClient,\n onItemsChange,\n onSelect: onSelectEvent,\n onActive: onActiveEvent,\n __autocomplete_clickAnalytics,\n } = getOptions(options);\n let insightsClient = providedInsightsClient as InsightsClient;\n\n if (!providedInsightsClient) {\n safelyRunOnBrowser(({ window }) => {\n const pointer = window.AlgoliaAnalyticsObject || 'aa';\n\n if (typeof pointer === 'string') {\n insightsClient = window[pointer];\n }\n\n if (!insightsClient) {\n window.AlgoliaAnalyticsObject = pointer;\n\n if (!window[pointer]) {\n window[pointer] = (...args: any[]) => {\n if (!window[pointer].queue) {\n window[pointer].queue = [];\n }\n\n window[pointer].queue.push(args);\n };\n }\n\n window[pointer].version = ALGOLIA_INSIGHTS_VERSION;\n\n insightsClient = window[pointer];\n\n loadInsights(window);\n }\n });\n }\n\n // We return an empty plugin if `insightsClient` is still undefined at\n // this stage, which can happen in server environments.\n if (!insightsClient) {\n return {};\n }\n\n const insights = createSearchInsightsApi(insightsClient);\n const previousItems = createRef<AlgoliaInsightsHit[]>([]);\n\n const debouncedOnStateChange = debounce<{\n state: AutocompleteState<any>;\n }>(({ state }) => {\n if (!state.isOpen) {\n return;\n }\n\n const items = state.collections\n .reduce<unknown[]>((acc, current) => {\n return [...acc, ...current.items];\n }, [])\n .filter(isAlgoliaInsightsHit);\n\n if (\n !isEqual(\n previousItems.current.map((x) => x.objectID),\n items.map((x) => x.objectID)\n )\n ) {\n previousItems.current = items;\n\n if (items.length > 0) {\n sendViewedObjectIDs({ onItemsChange, items, insights, state });\n }\n }\n }, 0);\n\n return {\n name: 'aa.algoliaInsightsPlugin',\n subscribe({ setContext, onSelect, onActive }) {\n function setInsightsContext(userToken?: string) {\n setContext({\n algoliaInsightsPlugin: {\n __algoliaSearchParameters: {\n ...(__autocomplete_clickAnalytics\n ? { clickAnalytics: true }\n : {}),\n ...(userToken ? { userToken } : {}),\n },\n insights,\n },\n });\n }\n\n insightsClient('addAlgoliaAgent', 'insights-plugin');\n\n setInsightsContext();\n insightsClient('onUserTokenChange', setInsightsContext);\n insightsClient('getUserToken', null, (_error, userToken) => {\n setInsightsContext(userToken);\n });\n\n onSelect(({ item, state, event, source }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onSelectEvent({\n state: state as AutocompleteState<any>,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Selected',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource<any>)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n\n onActive(({ item, source, state, event }) => {\n if (!isAlgoliaInsightsHit(item)) {\n return;\n }\n\n onActiveEvent({\n state: state as AutocompleteState<any>,\n event,\n insights,\n item,\n insightsEvents: [\n {\n eventName: 'Item Active',\n ...createClickedEvent({\n item,\n items: (source as AutocompleteReshapeSource<any>)\n .getItems()\n .filter(isAlgoliaInsightsHit),\n }),\n },\n ],\n });\n });\n },\n onStateChange({ state }) {\n debouncedOnStateChange({ state: state as AutocompleteState<any> });\n },\n __autocomplete_pluginOptions: options,\n };\n}\n\nfunction getAlgoliaSources(\n algoliaSourceBase: string[] = [],\n context: AutocompleteContext\n) {\n return [\n ...algoliaSourceBase,\n 'autocomplete-internal',\n ...((context.algoliaInsightsPlugin as Record<string, unknown>)\n ?.__automaticInsights\n ? ['autocomplete-automatic']\n : []),\n ];\n}\n\nfunction getOptions(options: CreateAlgoliaInsightsPluginParams) {\n return {\n onItemsChange({ insights, insightsEvents, state }: OnItemsChangeParams) {\n insights.viewedObjectIDs(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onSelect({ insights, insightsEvents, state }: OnSelectParams) {\n insights.clickedObjectIDsAfterSearch(\n ...insightsEvents.map((event) => ({\n ...event,\n algoliaSource: getAlgoliaSources(event.algoliaSource, state.context),\n }))\n );\n },\n onActive: noop,\n __autocomplete_clickAnalytics: true,\n ...options,\n };\n}\n\nfunction loadInsights(environment: typeof window) {\n const errorMessage = `[Autocomplete]: Could not load search-insights.js. Please load it manually following https://alg.li/insights-autocomplete`;\n\n try {\n const script = environment.document.createElement('script');\n script.async = true;\n script.src = ALGOLIA_INSIGHTS_SRC;\n\n script.onerror = () => {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n };\n\n document.body.appendChild(script);\n } catch (cause) {\n // eslint-disable-next-line no-console\n console.error(errorMessage);\n }\n}\n","/**\n * Safely runs code meant for browser environments only.\n */\nexport function safelyRunOnBrowser(callback) {\n if (typeof window !== 'undefined') {\n return callback({\n window: window\n });\n }\n return undefined;\n}","export function createRef(initialValue) {\n return {\n current: initialValue\n };\n}"],"names":["debounce","fn","time","timerId","undefined","_len","arguments","length","args","Array","_key","clearTimeout","setTimeout","apply","isPrimitive","obj","Object","isEqual","first","second","keys","_i","_Object$keys","key","noop","createClickedEvent","_ref","item","_ref$items","items","index","__autocomplete_indexName","positions","findIndex","x","objectID","queryID","__autocomplete_queryID","algoliaSource","chunk","chunkSize","chunks","i","objectIDs","push","_objectSpread","slice","mapToInsightsParamsApi","params","map","param","_objectWithoutProperties","_excluded","_ref2","createSearchInsightsApi","searchInsights","_split$map2","major","minor","canSendHeaders","_slicedToArray","version","split","Number","sendToInsights","method","payloads","_items$0$__autocomple","__autocomplete_algoliaCredentials","headers","appId","apiKey","concat","_toConsumableArray","init","setUserToken","userToken","clickedObjectIDsAfterSearch","clickedObjectIDs","_len2","_key2","clickedFilters","_len3","_key3","convertedObjectIDsAfterSearch","_len4","_key4","convertedObjectIDs","_len5","_key5","convertedFilters","_len6","_key6","viewedObjectIDs","_len7","_key7","reduce","acc","_ref3","_excluded2","_ref4","payload","forEach","_ref5","viewedFilters","_len8","_key8","createViewedEvents","itemsByIndexName","current","_acc$current$__autoco","indexName","isAlgoliaInsightsHit","hit","ALGOLIA_INSIGHTS_VERSION","ALGOLIA_INSIGHTS_SRC","sendViewedObjectIDs","onItemsChange","insights","state","insightsEvents","event","eventName","getAlgoliaSources","_context$algoliaInsig","algoliaSourceBase","context","algoliaInsightsPlugin","__automaticInsights","options","_getOptions","_ref8","onSelect","_ref9","onActive","__autocomplete_clickAnalytics","getOptions","providedInsightsClient","insightsClient","onSelectEvent","onActiveEvent","callback","window","safelyRunOnBrowser","pointer","AlgoliaAnalyticsObject","queue","environment","errorMessage","script","document","createElement","async","src","onerror","console","error","body","appendChild","cause","loadInsights","previousItems","debouncedOnStateChange","isOpen","collections","filter","name","subscribe","setContext","setInsightsContext","__algoliaSearchParameters","clickAnalytics","_error","source","getItems","_ref6","onStateChange","_ref7","__autocomplete_pluginOptions"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@algolia/autocomplete-plugin-algolia-insights",
|
|
3
3
|
"description": "A plugin to add Algolia Insights to Algolia Autocomplete.",
|
|
4
|
-
"version": "1.12.
|
|
4
|
+
"version": "1.12.2",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/algolia/autocomplete",
|
|
7
7
|
"repository": "algolia/autocomplete",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"watch": "watch \"yarn on:change\" --ignoreDirectoryPattern \"/dist/\""
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@algolia/autocomplete-shared": "1.12.
|
|
34
|
+
"@algolia/autocomplete-shared": "1.12.2"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
37
|
"search-insights": ">= 1 < 3"
|