@algolia/client-insights 5.56.0 → 5.57.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/dist/browser.d.ts +32 -6
- package/dist/builds/browser.js +1 -1
- package/dist/builds/browser.js.map +1 -1
- package/dist/builds/browser.min.js +5 -5
- package/dist/builds/browser.min.js.map +1 -1
- package/dist/builds/browser.umd.js +7 -7
- package/dist/builds/fetch.js +1 -1
- package/dist/builds/fetch.js.map +1 -1
- package/dist/builds/node.cjs +1 -1
- package/dist/builds/node.cjs.map +1 -1
- package/dist/builds/node.js +1 -1
- package/dist/builds/node.js.map +1 -1
- package/dist/builds/worker.js +1 -1
- package/dist/builds/worker.js.map +1 -1
- package/dist/fetch.d.ts +32 -6
- package/dist/node.d.cts +32 -6
- package/dist/node.d.ts +32 -6
- package/dist/src/insightsClient.cjs +1 -1
- package/dist/src/insightsClient.cjs.map +1 -1
- package/dist/src/insightsClient.js +1 -1
- package/dist/src/insightsClient.js.map +1 -1
- package/dist/worker.d.ts +32 -6
- package/package.json +9 -9
package/README.md
CHANGED
|
@@ -40,11 +40,11 @@ All of our clients comes with type definition, and are available for both browse
|
|
|
40
40
|
### With a package manager
|
|
41
41
|
|
|
42
42
|
```bash
|
|
43
|
-
yarn add @algolia/client-insights@5.
|
|
43
|
+
yarn add @algolia/client-insights@5.57.0
|
|
44
44
|
# or
|
|
45
|
-
npm install @algolia/client-insights@5.
|
|
45
|
+
npm install @algolia/client-insights@5.57.0
|
|
46
46
|
# or
|
|
47
|
-
pnpm add @algolia/client-insights@5.
|
|
47
|
+
pnpm add @algolia/client-insights@5.57.0
|
|
48
48
|
```
|
|
49
49
|
|
|
50
50
|
### Without a package manager
|
|
@@ -52,7 +52,7 @@ pnpm add @algolia/client-insights@5.56.0
|
|
|
52
52
|
Add the following JavaScript snippet to the <head> of your website:
|
|
53
53
|
|
|
54
54
|
```html
|
|
55
|
-
<script src="https://cdn.jsdelivr.net/npm/@algolia/client-insights@5.
|
|
55
|
+
<script src="https://cdn.jsdelivr.net/npm/@algolia/client-insights@5.57.0/dist/builds/browser.umd.js"></script>
|
|
56
56
|
```
|
|
57
57
|
|
|
58
58
|
### Usage
|
package/dist/browser.d.ts
CHANGED
|
@@ -112,7 +112,7 @@ type AddedToCartObjectIDsAfterSearch = {
|
|
|
112
112
|
*/
|
|
113
113
|
index: string;
|
|
114
114
|
/**
|
|
115
|
-
* Unique identifier for a search query. The query ID is required for events related to search or browse requests. If you add `clickAnalytics: true` as a search request parameter, the query ID is included in the API response.
|
|
115
|
+
* Unique identifier for a search query. The query ID is required for events related to search or browse requests. If you add `clickAnalytics: true` as a search request parameter, the query ID is included in the API response. For agentic analytics events, the query ID may be prefixed with `message_` followed by any printable string.
|
|
116
116
|
*/
|
|
117
117
|
queryID: string;
|
|
118
118
|
/**
|
|
@@ -228,7 +228,7 @@ type ClickedObjectIDsAfterSearch = {
|
|
|
228
228
|
*/
|
|
229
229
|
positions: Array<number>;
|
|
230
230
|
/**
|
|
231
|
-
* Unique identifier for a search query. The query ID is required for events related to search or browse requests. If you add `clickAnalytics: true` as a search request parameter, the query ID is included in the API response.
|
|
231
|
+
* Unique identifier for a search query. The query ID is required for events related to search or browse requests. If you add `clickAnalytics: true` as a search request parameter, the query ID is included in the API response. For agentic analytics events, the query ID may be prefixed with `message_` followed by any printable string.
|
|
232
232
|
*/
|
|
233
233
|
queryID: string;
|
|
234
234
|
/**
|
|
@@ -322,7 +322,7 @@ type ConvertedObjectIDsAfterSearch = {
|
|
|
322
322
|
*/
|
|
323
323
|
objectIDs: Array<string>;
|
|
324
324
|
/**
|
|
325
|
-
* Unique identifier for a search query. The query ID is required for events related to search or browse requests. If you add `clickAnalytics: true` as a search request parameter, the query ID is included in the API response.
|
|
325
|
+
* Unique identifier for a search query. The query ID is required for events related to search or browse requests. If you add `clickAnalytics: true` as a search request parameter, the query ID is included in the API response. For agentic analytics events, the query ID may be prefixed with `message_` followed by any printable string.
|
|
326
326
|
*/
|
|
327
327
|
queryID: string;
|
|
328
328
|
/**
|
|
@@ -339,6 +339,32 @@ type ConvertedObjectIDsAfterSearch = {
|
|
|
339
339
|
timestamp?: number | undefined;
|
|
340
340
|
};
|
|
341
341
|
|
|
342
|
+
type InstantsearchEvent = 'instantsearch';
|
|
343
|
+
|
|
344
|
+
type Instantsearch = {
|
|
345
|
+
/**
|
|
346
|
+
* Event name, up to 64 ASCII characters. Consider naming events consistently—for example, by adopting Segment\'s [object-action](https://segment.com/academy/collecting-data/naming-conventions-for-clean-data/#the-object-action-framework) framework.
|
|
347
|
+
*/
|
|
348
|
+
eventName: string;
|
|
349
|
+
eventType: InstantsearchEvent;
|
|
350
|
+
/**
|
|
351
|
+
* Anonymous or pseudonymous user identifier. Don\'t use personally identifiable information in user tokens. For more information, see [User token](https://www.algolia.com/doc/guides/sending-events/concepts/usertoken).
|
|
352
|
+
*/
|
|
353
|
+
userToken: string;
|
|
354
|
+
/**
|
|
355
|
+
* Identifier for authenticated users. When the user signs in, you can get an identifier from your system and send it as `authenticatedUserToken`. This lets you keep using the `userToken` from before the user signed in, while providing a reliable way to identify users across sessions. Don\'t use personally identifiable information in user tokens. For more information, see [User token](https://www.algolia.com/doc/guides/sending-events/concepts/usertoken).
|
|
356
|
+
*/
|
|
357
|
+
authenticatedUserToken?: string | undefined;
|
|
358
|
+
/**
|
|
359
|
+
* Timestamp of the event, measured in milliseconds since the Unix epoch. Must be no older than 30 days. If not provided, we use the time at which the request was received.
|
|
360
|
+
*/
|
|
361
|
+
timestamp?: number | undefined;
|
|
362
|
+
/**
|
|
363
|
+
* Unique identifier for an agent session. Used to correlate instantsearch events with a specific agent interaction.
|
|
364
|
+
*/
|
|
365
|
+
agentID?: string | undefined;
|
|
366
|
+
};
|
|
367
|
+
|
|
342
368
|
type PurchaseEvent = 'purchase';
|
|
343
369
|
|
|
344
370
|
/**
|
|
@@ -487,7 +513,7 @@ type ViewedObjectIDs = {
|
|
|
487
513
|
timestamp?: number | undefined;
|
|
488
514
|
};
|
|
489
515
|
|
|
490
|
-
type EventsItems = ClickedObjectIDsAfterSearch | AddedToCartObjectIDsAfterSearch | PurchasedObjectIDsAfterSearch | ConvertedObjectIDsAfterSearch | ClickedObjectIDs | PurchasedObjectIDs | AddedToCartObjectIDs | ConvertedObjectIDs | ClickedFilters | ConvertedFilters | ViewedObjectIDs | ViewedFilters;
|
|
516
|
+
type EventsItems = ClickedObjectIDsAfterSearch | AddedToCartObjectIDsAfterSearch | PurchasedObjectIDsAfterSearch | ConvertedObjectIDsAfterSearch | ClickedObjectIDs | PurchasedObjectIDs | AddedToCartObjectIDs | ConvertedObjectIDs | ClickedFilters | ConvertedFilters | ViewedObjectIDs | ViewedFilters | Instantsearch;
|
|
491
517
|
|
|
492
518
|
type InsightsEvents = {
|
|
493
519
|
/**
|
|
@@ -574,7 +600,7 @@ type DeleteUserTokenProps = {
|
|
|
574
600
|
userToken: string;
|
|
575
601
|
};
|
|
576
602
|
|
|
577
|
-
declare const apiClientVersion = "5.
|
|
603
|
+
declare const apiClientVersion = "5.57.0";
|
|
578
604
|
declare const REGIONS: readonly ["de", "us"];
|
|
579
605
|
type Region = (typeof REGIONS)[number];
|
|
580
606
|
type RegionOptions = {
|
|
@@ -750,4 +776,4 @@ type ErrorBase = Record<string, any> & {
|
|
|
750
776
|
declare function insightsClient(appId: string, apiKey: string, region?: Region | undefined, options?: ClientOptions | undefined): InsightsClient;
|
|
751
777
|
type InsightsClient = ReturnType<typeof createInsightsClient>;
|
|
752
778
|
|
|
753
|
-
export { type AddToCartEvent, type AddedToCartObjectIDs, type AddedToCartObjectIDsAfterSearch, type ClickEvent, type ClickedFilters, type ClickedObjectIDs, type ClickedObjectIDsAfterSearch, type ConversionEvent, type ConvertedFilters, type ConvertedObjectIDs, type ConvertedObjectIDsAfterSearch, type CustomDeleteProps, type CustomGetProps, type CustomPostProps, type CustomPutProps, type DeleteUserTokenProps, type Discount, type ErrorBase, type EventsItems, type EventsResponse, type InsightsClient, type InsightsEvents, type ObjectData, type ObjectDataAfterSearch, type Price, type PurchaseEvent, type PurchasedObjectIDs, type PurchasedObjectIDsAfterSearch, type Region, type RegionOptions, type Value, type ViewEvent, type ViewedFilters, type ViewedObjectIDs, apiClientVersion, insightsClient };
|
|
779
|
+
export { type AddToCartEvent, type AddedToCartObjectIDs, type AddedToCartObjectIDsAfterSearch, type ClickEvent, type ClickedFilters, type ClickedObjectIDs, type ClickedObjectIDsAfterSearch, type ConversionEvent, type ConvertedFilters, type ConvertedObjectIDs, type ConvertedObjectIDsAfterSearch, type CustomDeleteProps, type CustomGetProps, type CustomPostProps, type CustomPutProps, type DeleteUserTokenProps, type Discount, type ErrorBase, type EventsItems, type EventsResponse, type InsightsClient, type InsightsEvents, type Instantsearch, type InstantsearchEvent, type ObjectData, type ObjectDataAfterSearch, type Price, type PurchaseEvent, type PurchasedObjectIDs, type PurchasedObjectIDsAfterSearch, type Region, type RegionOptions, type Value, type ViewEvent, type ViewedFilters, type ViewedObjectIDs, apiClientVersion, insightsClient };
|
package/dist/builds/browser.js
CHANGED
|
@@ -9,7 +9,7 @@ import { createXhrRequester } from "@algolia/requester-browser-xhr";
|
|
|
9
9
|
|
|
10
10
|
// src/insightsClient.ts
|
|
11
11
|
import { createAuth, createTransporter, getAlgoliaAgent, validateRequired } from "@algolia/client-common";
|
|
12
|
-
var apiClientVersion = "5.
|
|
12
|
+
var apiClientVersion = "5.57.0";
|
|
13
13
|
var REGIONS = ["de", "us"];
|
|
14
14
|
function getDefaultHosts(region) {
|
|
15
15
|
const url = !region ? "insights.algolia.io" : "insights.{region}.algolia.io".replace("{region}", region);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../builds/browser.ts","../../src/insightsClient.ts"],"sourcesContent":["// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.\n\nimport {\n createBrowserLocalStorageCache,\n createFallbackableCache,\n createMemoryCache,\n createNullLogger,\n} from '@algolia/client-common';\nimport { createXhrRequester } from '@algolia/requester-browser-xhr';\n\nimport type { ClientOptions } from '@algolia/client-common';\n\nimport { apiClientVersion, createInsightsClient } from '../src/insightsClient';\n\nimport type { Region } from '../src/insightsClient';\nimport { REGIONS } from '../src/insightsClient';\n\nexport type { Region, RegionOptions } from '../src/insightsClient';\n\nexport { apiClientVersion } from '../src/insightsClient';\n\nexport * from '../model';\n\nexport function insightsClient(\n appId: string,\n apiKey: string,\n region?: Region | undefined,\n options?: ClientOptions | undefined,\n): InsightsClient {\n if (!appId || typeof appId !== 'string') {\n throw new Error('`appId` is missing.');\n }\n\n if (!apiKey || typeof apiKey !== 'string') {\n throw new Error('`apiKey` is missing.');\n }\n\n if (region && (typeof region !== 'string' || !REGIONS.includes(region))) {\n throw new Error(`\\`region\\` must be one of the following: ${REGIONS.join(', ')}`);\n }\n\n const { compression: _compression, ...browserOptions } = options || {};\n\n return createInsightsClient({\n appId,\n apiKey,\n region,\n timeouts: {\n connect: 1000,\n read: 2000,\n write: 30000,\n },\n logger: createNullLogger(),\n requester: createXhrRequester(),\n algoliaAgents: [{ segment: 'Browser' }],\n authMode: 'WithinQueryParameters',\n responsesCache: createMemoryCache(),\n requestsCache: createMemoryCache({ serializable: false }),\n hostsCache: createFallbackableCache({\n caches: [createBrowserLocalStorageCache({ key: `${apiClientVersion}-${appId}` }), createMemoryCache()],\n }),\n ...browserOptions,\n });\n}\n\nexport type InsightsClient = ReturnType<typeof createInsightsClient>;\n","// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.\n\nimport type {\n AlgoliaHttpResponse,\n CreateClientOptions,\n Headers,\n Host,\n QueryParameters,\n Request,\n RequestOptions,\n} from '@algolia/client-common';\nimport { createAuth, createTransporter, getAlgoliaAgent, validateRequired } from '@algolia/client-common';\n\nimport type { EventsResponse } from '../model/eventsResponse';\nimport type { InsightsEvents } from '../model/insightsEvents';\n\nimport type {\n CustomDeleteProps,\n CustomGetProps,\n CustomPostProps,\n CustomPutProps,\n DeleteUserTokenProps,\n} from '../model/clientMethodProps';\n\nexport const apiClientVersion = '5.56.0';\n\nexport const REGIONS = ['de', 'us'] as const;\nexport type Region = (typeof REGIONS)[number];\nexport type RegionOptions = { region?: Region | undefined };\n\nfunction getDefaultHosts(region?: Region | undefined): Host[] {\n const url = !region ? 'insights.algolia.io' : 'insights.{region}.algolia.io'.replace('{region}', region);\n\n return [{ url, accept: 'readWrite', protocol: 'https' }];\n}\n\nexport function createInsightsClient({\n appId: appIdOption,\n apiKey: apiKeyOption,\n authMode,\n algoliaAgents,\n region: regionOption,\n ...options\n}: CreateClientOptions & RegionOptions) {\n const auth = createAuth(appIdOption, apiKeyOption, authMode);\n const transporter = createTransporter({\n hosts: getDefaultHosts(regionOption),\n ...options,\n algoliaAgent: getAlgoliaAgent({\n algoliaAgents,\n client: 'Insights',\n version: apiClientVersion,\n }),\n baseHeaders: {\n 'content-type': 'text/plain',\n ...auth.headers(),\n ...options.baseHeaders,\n },\n baseQueryParameters: {\n ...auth.queryParameters(),\n ...options.baseQueryParameters,\n },\n });\n\n return {\n transporter,\n\n /**\n * The `appId` currently in use.\n */\n appId: appIdOption,\n\n /**\n * The `apiKey` currently in use.\n */\n apiKey: apiKeyOption,\n\n /**\n * Clears the cache of the transporter for the `requestsCache` and `responsesCache` properties.\n */\n clearCache(): Promise<void> {\n return Promise.all([transporter.requestsCache.clear(), transporter.responsesCache.clear()]).then(() => undefined);\n },\n\n /**\n * Get the value of the `algoliaAgent`, used by our libraries internally and telemetry system.\n */\n get _ua(): string {\n return transporter.algoliaAgent.value;\n },\n\n /**\n * Adds a `segment` to the `x-algolia-agent` sent with every requests.\n *\n * @param segment - The algolia agent (user-agent) segment to add.\n * @param version - The version of the agent.\n */\n addAlgoliaAgent(segment: string, version?: string | undefined): void {\n transporter.algoliaAgent.add({ segment, version });\n },\n\n /**\n * Helper method to switch the API key used to authenticate the requests.\n *\n * @param params - Method params.\n * @param params.apiKey - The new API Key to use.\n */\n setClientApiKey({ apiKey }: { apiKey: string }): void {\n if (!authMode || authMode === 'WithinHeaders') {\n transporter.baseHeaders['x-algolia-api-key'] = apiKey;\n } else {\n transporter.baseQueryParameters['x-algolia-api-key'] = apiKey;\n }\n },\n\n /**\n * This method lets you send requests to the Algolia REST API.\n * @param customDelete - The customDelete object.\n * @param customDelete.path - Path of the endpoint, for example `1/newFeature`.\n * @param customDelete.parameters - Query parameters to apply to the current query.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n customDelete(\n { path, parameters }: CustomDeleteProps,\n requestOptions?: RequestOptions,\n ): Promise<Record<string, unknown>> {\n validateRequired('path', 'customDelete', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'DELETE',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * This method lets you send requests to the Algolia REST API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n * @param customDelete - The customDelete object.\n * @param customDelete.path - Path of the endpoint, for example `1/newFeature`.\n * @param customDelete.parameters - Query parameters to apply to the current query.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see customDelete for the plain version.\n */\n customDeleteWithHTTPInfo(\n { path, parameters }: CustomDeleteProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<Record<string, unknown>>> {\n validateRequired('path', 'customDeleteWithHTTPInfo', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'DELETE',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * This method lets you send requests to the Algolia REST API.\n * @param customGet - The customGet object.\n * @param customGet.path - Path of the endpoint, for example `1/newFeature`.\n * @param customGet.parameters - Query parameters to apply to the current query.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n customGet({ path, parameters }: CustomGetProps, requestOptions?: RequestOptions): Promise<Record<string, unknown>> {\n validateRequired('path', 'customGet', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'GET',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * This method lets you send requests to the Algolia REST API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n * @param customGet - The customGet object.\n * @param customGet.path - Path of the endpoint, for example `1/newFeature`.\n * @param customGet.parameters - Query parameters to apply to the current query.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see customGet for the plain version.\n */\n customGetWithHTTPInfo(\n { path, parameters }: CustomGetProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<Record<string, unknown>>> {\n validateRequired('path', 'customGetWithHTTPInfo', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'GET',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * This method lets you send requests to the Algolia REST API.\n * @param customPost - The customPost object.\n * @param customPost.path - Path of the endpoint, for example `1/newFeature`.\n * @param customPost.parameters - Query parameters to apply to the current query.\n * @param customPost.body - Parameters to send with the custom request.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n customPost(\n { path, parameters, body }: CustomPostProps,\n requestOptions?: RequestOptions,\n ): Promise<Record<string, unknown>> {\n validateRequired('path', 'customPost', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'POST',\n path: requestPath,\n queryParameters,\n headers,\n data: body ? body : {},\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * This method lets you send requests to the Algolia REST API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n * @param customPost - The customPost object.\n * @param customPost.path - Path of the endpoint, for example `1/newFeature`.\n * @param customPost.parameters - Query parameters to apply to the current query.\n * @param customPost.body - Parameters to send with the custom request.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see customPost for the plain version.\n */\n customPostWithHTTPInfo(\n { path, parameters, body }: CustomPostProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<Record<string, unknown>>> {\n validateRequired('path', 'customPostWithHTTPInfo', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'POST',\n path: requestPath,\n queryParameters,\n headers,\n data: body ? body : {},\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * This method lets you send requests to the Algolia REST API.\n * @param customPut - The customPut object.\n * @param customPut.path - Path of the endpoint, for example `1/newFeature`.\n * @param customPut.parameters - Query parameters to apply to the current query.\n * @param customPut.body - Parameters to send with the custom request.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n customPut(\n { path, parameters, body }: CustomPutProps,\n requestOptions?: RequestOptions,\n ): Promise<Record<string, unknown>> {\n validateRequired('path', 'customPut', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'PUT',\n path: requestPath,\n queryParameters,\n headers,\n data: body ? body : {},\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * This method lets you send requests to the Algolia REST API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n * @param customPut - The customPut object.\n * @param customPut.path - Path of the endpoint, for example `1/newFeature`.\n * @param customPut.parameters - Query parameters to apply to the current query.\n * @param customPut.body - Parameters to send with the custom request.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see customPut for the plain version.\n */\n customPutWithHTTPInfo(\n { path, parameters, body }: CustomPutProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<Record<string, unknown>>> {\n validateRequired('path', 'customPutWithHTTPInfo', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'PUT',\n path: requestPath,\n queryParameters,\n headers,\n data: body ? body : {},\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * Deletes all events related to the specified user token from events metrics and analytics. The deletion is asynchronous, and processed within 48 hours. To delete a personalization user profile, see `Delete a user profile` in the Personalization API.\n *\n * Required API Key ACLs:\n * - deleteObject\n * @param deleteUserToken - The deleteUserToken object.\n * @param deleteUserToken.userToken - User token for which to delete all associated events.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n deleteUserToken({ userToken }: DeleteUserTokenProps, requestOptions?: RequestOptions): Promise<void> {\n validateRequired('userToken', 'deleteUserToken', userToken);\n\n const requestPath = '/1/usertokens/{userToken}'.replace('{userToken}', encodeURIComponent(userToken));\n const headers: Headers = {};\n const queryParameters: QueryParameters = {};\n\n const request: Request = {\n method: 'DELETE',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * Deletes all events related to the specified user token from events metrics and analytics. The deletion is asynchronous, and processed within 48 hours. To delete a personalization user profile, see `Delete a user profile` in the Personalization API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n *\n * Required API Key ACLs:\n * - deleteObject\n * @param deleteUserToken - The deleteUserToken object.\n * @param deleteUserToken.userToken - User token for which to delete all associated events.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see deleteUserToken for the plain version.\n */\n deleteUserTokenWithHTTPInfo(\n { userToken }: DeleteUserTokenProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<void>> {\n validateRequired('userToken', 'deleteUserTokenWithHTTPInfo', userToken);\n\n const requestPath = '/1/usertokens/{userToken}'.replace('{userToken}', encodeURIComponent(userToken));\n const headers: Headers = {};\n const queryParameters: QueryParameters = {};\n\n const request: Request = {\n method: 'DELETE',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * Sends a list of events to the Insights API. You can include up to 1,000 events in a single request, but the request body must be smaller than 2 MB.\n *\n * Required API Key ACLs:\n * - search\n * @param insightsEvents - The insightsEvents object.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n pushEvents(insightsEvents: InsightsEvents, requestOptions?: RequestOptions): Promise<EventsResponse> {\n validateRequired('insightsEvents', 'pushEvents', insightsEvents);\n\n validateRequired('insightsEvents.events', 'pushEvents', insightsEvents.events);\n\n const requestPath = '/1/events';\n const headers: Headers = {};\n const queryParameters: QueryParameters = {};\n\n const request: Request = {\n method: 'POST',\n path: requestPath,\n queryParameters,\n headers,\n data: insightsEvents,\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * Sends a list of events to the Insights API. You can include up to 1,000 events in a single request, but the request body must be smaller than 2 MB.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n *\n * Required API Key ACLs:\n * - search\n * @param insightsEvents - The insightsEvents object.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see pushEvents for the plain version.\n */\n pushEventsWithHTTPInfo(\n insightsEvents: InsightsEvents,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<EventsResponse>> {\n validateRequired('insightsEvents', 'pushEventsWithHTTPInfo', insightsEvents);\n\n validateRequired('insightsEvents.events', 'pushEventsWithHTTPInfo', insightsEvents.events);\n\n const requestPath = '/1/events';\n const headers: Headers = {};\n const queryParameters: QueryParameters = {};\n\n const request: Request = {\n method: 'POST',\n path: requestPath,\n queryParameters,\n headers,\n data: insightsEvents,\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n };\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../builds/browser.ts","../../src/insightsClient.ts"],"sourcesContent":["// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.\n\nimport {\n createBrowserLocalStorageCache,\n createFallbackableCache,\n createMemoryCache,\n createNullLogger,\n} from '@algolia/client-common';\nimport { createXhrRequester } from '@algolia/requester-browser-xhr';\n\nimport type { ClientOptions } from '@algolia/client-common';\n\nimport { apiClientVersion, createInsightsClient } from '../src/insightsClient';\n\nimport type { Region } from '../src/insightsClient';\nimport { REGIONS } from '../src/insightsClient';\n\nexport type { Region, RegionOptions } from '../src/insightsClient';\n\nexport { apiClientVersion } from '../src/insightsClient';\n\nexport * from '../model';\n\nexport function insightsClient(\n appId: string,\n apiKey: string,\n region?: Region | undefined,\n options?: ClientOptions | undefined,\n): InsightsClient {\n if (!appId || typeof appId !== 'string') {\n throw new Error('`appId` is missing.');\n }\n\n if (!apiKey || typeof apiKey !== 'string') {\n throw new Error('`apiKey` is missing.');\n }\n\n if (region && (typeof region !== 'string' || !REGIONS.includes(region))) {\n throw new Error(`\\`region\\` must be one of the following: ${REGIONS.join(', ')}`);\n }\n\n const { compression: _compression, ...browserOptions } = options || {};\n\n return createInsightsClient({\n appId,\n apiKey,\n region,\n timeouts: {\n connect: 1000,\n read: 2000,\n write: 30000,\n },\n logger: createNullLogger(),\n requester: createXhrRequester(),\n algoliaAgents: [{ segment: 'Browser' }],\n authMode: 'WithinQueryParameters',\n responsesCache: createMemoryCache(),\n requestsCache: createMemoryCache({ serializable: false }),\n hostsCache: createFallbackableCache({\n caches: [createBrowserLocalStorageCache({ key: `${apiClientVersion}-${appId}` }), createMemoryCache()],\n }),\n ...browserOptions,\n });\n}\n\nexport type InsightsClient = ReturnType<typeof createInsightsClient>;\n","// Code generated by OpenAPI Generator (https://openapi-generator.tech), manual changes will be lost - read more on https://github.com/algolia/api-clients-automation. DO NOT EDIT.\n\nimport type {\n AlgoliaHttpResponse,\n CreateClientOptions,\n Headers,\n Host,\n QueryParameters,\n Request,\n RequestOptions,\n} from '@algolia/client-common';\nimport { createAuth, createTransporter, getAlgoliaAgent, validateRequired } from '@algolia/client-common';\n\nimport type { EventsResponse } from '../model/eventsResponse';\nimport type { InsightsEvents } from '../model/insightsEvents';\n\nimport type {\n CustomDeleteProps,\n CustomGetProps,\n CustomPostProps,\n CustomPutProps,\n DeleteUserTokenProps,\n} from '../model/clientMethodProps';\n\nexport const apiClientVersion = '5.57.0';\n\nexport const REGIONS = ['de', 'us'] as const;\nexport type Region = (typeof REGIONS)[number];\nexport type RegionOptions = { region?: Region | undefined };\n\nfunction getDefaultHosts(region?: Region | undefined): Host[] {\n const url = !region ? 'insights.algolia.io' : 'insights.{region}.algolia.io'.replace('{region}', region);\n\n return [{ url, accept: 'readWrite', protocol: 'https' }];\n}\n\nexport function createInsightsClient({\n appId: appIdOption,\n apiKey: apiKeyOption,\n authMode,\n algoliaAgents,\n region: regionOption,\n ...options\n}: CreateClientOptions & RegionOptions) {\n const auth = createAuth(appIdOption, apiKeyOption, authMode);\n const transporter = createTransporter({\n hosts: getDefaultHosts(regionOption),\n ...options,\n algoliaAgent: getAlgoliaAgent({\n algoliaAgents,\n client: 'Insights',\n version: apiClientVersion,\n }),\n baseHeaders: {\n 'content-type': 'text/plain',\n ...auth.headers(),\n ...options.baseHeaders,\n },\n baseQueryParameters: {\n ...auth.queryParameters(),\n ...options.baseQueryParameters,\n },\n });\n\n return {\n transporter,\n\n /**\n * The `appId` currently in use.\n */\n appId: appIdOption,\n\n /**\n * The `apiKey` currently in use.\n */\n apiKey: apiKeyOption,\n\n /**\n * Clears the cache of the transporter for the `requestsCache` and `responsesCache` properties.\n */\n clearCache(): Promise<void> {\n return Promise.all([transporter.requestsCache.clear(), transporter.responsesCache.clear()]).then(() => undefined);\n },\n\n /**\n * Get the value of the `algoliaAgent`, used by our libraries internally and telemetry system.\n */\n get _ua(): string {\n return transporter.algoliaAgent.value;\n },\n\n /**\n * Adds a `segment` to the `x-algolia-agent` sent with every requests.\n *\n * @param segment - The algolia agent (user-agent) segment to add.\n * @param version - The version of the agent.\n */\n addAlgoliaAgent(segment: string, version?: string | undefined): void {\n transporter.algoliaAgent.add({ segment, version });\n },\n\n /**\n * Helper method to switch the API key used to authenticate the requests.\n *\n * @param params - Method params.\n * @param params.apiKey - The new API Key to use.\n */\n setClientApiKey({ apiKey }: { apiKey: string }): void {\n if (!authMode || authMode === 'WithinHeaders') {\n transporter.baseHeaders['x-algolia-api-key'] = apiKey;\n } else {\n transporter.baseQueryParameters['x-algolia-api-key'] = apiKey;\n }\n },\n\n /**\n * This method lets you send requests to the Algolia REST API.\n * @param customDelete - The customDelete object.\n * @param customDelete.path - Path of the endpoint, for example `1/newFeature`.\n * @param customDelete.parameters - Query parameters to apply to the current query.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n customDelete(\n { path, parameters }: CustomDeleteProps,\n requestOptions?: RequestOptions,\n ): Promise<Record<string, unknown>> {\n validateRequired('path', 'customDelete', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'DELETE',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * This method lets you send requests to the Algolia REST API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n * @param customDelete - The customDelete object.\n * @param customDelete.path - Path of the endpoint, for example `1/newFeature`.\n * @param customDelete.parameters - Query parameters to apply to the current query.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see customDelete for the plain version.\n */\n customDeleteWithHTTPInfo(\n { path, parameters }: CustomDeleteProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<Record<string, unknown>>> {\n validateRequired('path', 'customDeleteWithHTTPInfo', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'DELETE',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * This method lets you send requests to the Algolia REST API.\n * @param customGet - The customGet object.\n * @param customGet.path - Path of the endpoint, for example `1/newFeature`.\n * @param customGet.parameters - Query parameters to apply to the current query.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n customGet({ path, parameters }: CustomGetProps, requestOptions?: RequestOptions): Promise<Record<string, unknown>> {\n validateRequired('path', 'customGet', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'GET',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * This method lets you send requests to the Algolia REST API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n * @param customGet - The customGet object.\n * @param customGet.path - Path of the endpoint, for example `1/newFeature`.\n * @param customGet.parameters - Query parameters to apply to the current query.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see customGet for the plain version.\n */\n customGetWithHTTPInfo(\n { path, parameters }: CustomGetProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<Record<string, unknown>>> {\n validateRequired('path', 'customGetWithHTTPInfo', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'GET',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * This method lets you send requests to the Algolia REST API.\n * @param customPost - The customPost object.\n * @param customPost.path - Path of the endpoint, for example `1/newFeature`.\n * @param customPost.parameters - Query parameters to apply to the current query.\n * @param customPost.body - Parameters to send with the custom request.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n customPost(\n { path, parameters, body }: CustomPostProps,\n requestOptions?: RequestOptions,\n ): Promise<Record<string, unknown>> {\n validateRequired('path', 'customPost', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'POST',\n path: requestPath,\n queryParameters,\n headers,\n data: body ? body : {},\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * This method lets you send requests to the Algolia REST API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n * @param customPost - The customPost object.\n * @param customPost.path - Path of the endpoint, for example `1/newFeature`.\n * @param customPost.parameters - Query parameters to apply to the current query.\n * @param customPost.body - Parameters to send with the custom request.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see customPost for the plain version.\n */\n customPostWithHTTPInfo(\n { path, parameters, body }: CustomPostProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<Record<string, unknown>>> {\n validateRequired('path', 'customPostWithHTTPInfo', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'POST',\n path: requestPath,\n queryParameters,\n headers,\n data: body ? body : {},\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * This method lets you send requests to the Algolia REST API.\n * @param customPut - The customPut object.\n * @param customPut.path - Path of the endpoint, for example `1/newFeature`.\n * @param customPut.parameters - Query parameters to apply to the current query.\n * @param customPut.body - Parameters to send with the custom request.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n customPut(\n { path, parameters, body }: CustomPutProps,\n requestOptions?: RequestOptions,\n ): Promise<Record<string, unknown>> {\n validateRequired('path', 'customPut', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'PUT',\n path: requestPath,\n queryParameters,\n headers,\n data: body ? body : {},\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * This method lets you send requests to the Algolia REST API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n * @param customPut - The customPut object.\n * @param customPut.path - Path of the endpoint, for example `1/newFeature`.\n * @param customPut.parameters - Query parameters to apply to the current query.\n * @param customPut.body - Parameters to send with the custom request.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see customPut for the plain version.\n */\n customPutWithHTTPInfo(\n { path, parameters, body }: CustomPutProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<Record<string, unknown>>> {\n validateRequired('path', 'customPutWithHTTPInfo', path);\n\n const requestPath = '/{path}'.replace('{path}', path);\n const headers: Headers = {};\n const queryParameters: QueryParameters = parameters ? parameters : {};\n\n const request: Request = {\n method: 'PUT',\n path: requestPath,\n queryParameters,\n headers,\n data: body ? body : {},\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * Deletes all events related to the specified user token from events metrics and analytics. The deletion is asynchronous, and processed within 48 hours. To delete a personalization user profile, see `Delete a user profile` in the Personalization API.\n *\n * Required API Key ACLs:\n * - deleteObject\n * @param deleteUserToken - The deleteUserToken object.\n * @param deleteUserToken.userToken - User token for which to delete all associated events.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n deleteUserToken({ userToken }: DeleteUserTokenProps, requestOptions?: RequestOptions): Promise<void> {\n validateRequired('userToken', 'deleteUserToken', userToken);\n\n const requestPath = '/1/usertokens/{userToken}'.replace('{userToken}', encodeURIComponent(userToken));\n const headers: Headers = {};\n const queryParameters: QueryParameters = {};\n\n const request: Request = {\n method: 'DELETE',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * Deletes all events related to the specified user token from events metrics and analytics. The deletion is asynchronous, and processed within 48 hours. To delete a personalization user profile, see `Delete a user profile` in the Personalization API.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n *\n * Required API Key ACLs:\n * - deleteObject\n * @param deleteUserToken - The deleteUserToken object.\n * @param deleteUserToken.userToken - User token for which to delete all associated events.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see deleteUserToken for the plain version.\n */\n deleteUserTokenWithHTTPInfo(\n { userToken }: DeleteUserTokenProps,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<void>> {\n validateRequired('userToken', 'deleteUserTokenWithHTTPInfo', userToken);\n\n const requestPath = '/1/usertokens/{userToken}'.replace('{userToken}', encodeURIComponent(userToken));\n const headers: Headers = {};\n const queryParameters: QueryParameters = {};\n\n const request: Request = {\n method: 'DELETE',\n path: requestPath,\n queryParameters,\n headers,\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n\n /**\n * Sends a list of events to the Insights API. You can include up to 1,000 events in a single request, but the request body must be smaller than 2 MB.\n *\n * Required API Key ACLs:\n * - search\n * @param insightsEvents - The insightsEvents object.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n */\n pushEvents(insightsEvents: InsightsEvents, requestOptions?: RequestOptions): Promise<EventsResponse> {\n validateRequired('insightsEvents', 'pushEvents', insightsEvents);\n\n validateRequired('insightsEvents.events', 'pushEvents', insightsEvents.events);\n\n const requestPath = '/1/events';\n const headers: Headers = {};\n const queryParameters: QueryParameters = {};\n\n const request: Request = {\n method: 'POST',\n path: requestPath,\n queryParameters,\n headers,\n data: insightsEvents,\n };\n\n return transporter.request(request, requestOptions);\n },\n /**\n * Sends a list of events to the Insights API. You can include up to 1,000 events in a single request, but the request body must be smaller than 2 MB.\n *\n * Resolves with the full HTTP response information: status code, headers (when the requester captures them), raw body and deserialized data. Bypasses the requests and responses caches: always performs the API call.\n *\n * Required API Key ACLs:\n * - search\n * @param insightsEvents - The insightsEvents object.\n * @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.\n * @see pushEvents for the plain version.\n */\n pushEventsWithHTTPInfo(\n insightsEvents: InsightsEvents,\n requestOptions?: RequestOptions,\n ): Promise<AlgoliaHttpResponse<EventsResponse>> {\n validateRequired('insightsEvents', 'pushEventsWithHTTPInfo', insightsEvents);\n\n validateRequired('insightsEvents.events', 'pushEventsWithHTTPInfo', insightsEvents.events);\n\n const requestPath = '/1/events';\n const headers: Headers = {};\n const queryParameters: QueryParameters = {};\n\n const request: Request = {\n method: 'POST',\n path: requestPath,\n queryParameters,\n headers,\n data: insightsEvents,\n };\n\n return transporter.requestWithHttpInfo(request, requestOptions);\n },\n };\n}\n"],"mappings":";AAEA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,0BAA0B;;;ACGnC,SAAS,YAAY,mBAAmB,iBAAiB,wBAAwB;AAa1E,IAAM,mBAAmB;AAEzB,IAAM,UAAU,CAAC,MAAM,IAAI;AAIlC,SAAS,gBAAgB,QAAqC;AAC5D,QAAM,MAAM,CAAC,SAAS,wBAAwB,+BAA+B,QAAQ,YAAY,MAAM;AAEvG,SAAO,CAAC,EAAE,KAAK,QAAQ,aAAa,UAAU,QAAQ,CAAC;AACzD;AAEO,SAAS,qBAAqB;AAAA,EACnC,OAAO;AAAA,EACP,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR,GAAG;AACL,GAAwC;AACtC,QAAM,OAAO,WAAW,aAAa,cAAc,QAAQ;AAC3D,QAAM,cAAc,kBAAkB;AAAA,IACpC,OAAO,gBAAgB,YAAY;AAAA,IACnC,GAAG;AAAA,IACH,cAAc,gBAAgB;AAAA,MAC5B;AAAA,MACA,QAAQ;AAAA,MACR,SAAS;AAAA,IACX,CAAC;AAAA,IACD,aAAa;AAAA,MACX,gBAAgB;AAAA,MAChB,GAAG,KAAK,QAAQ;AAAA,MAChB,GAAG,QAAQ;AAAA,IACb;AAAA,IACA,qBAAqB;AAAA,MACnB,GAAG,KAAK,gBAAgB;AAAA,MACxB,GAAG,QAAQ;AAAA,IACb;AAAA,EACF,CAAC;AAED,SAAO;AAAA,IACL;AAAA;AAAA;AAAA;AAAA,IAKA,OAAO;AAAA;AAAA;AAAA;AAAA,IAKP,QAAQ;AAAA;AAAA;AAAA;AAAA,IAKR,aAA4B;AAC1B,aAAO,QAAQ,IAAI,CAAC,YAAY,cAAc,MAAM,GAAG,YAAY,eAAe,MAAM,CAAC,CAAC,EAAE,KAAK,MAAM,MAAS;AAAA,IAClH;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,MAAc;AAChB,aAAO,YAAY,aAAa;AAAA,IAClC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,gBAAgB,SAAiB,SAAoC;AACnE,kBAAY,aAAa,IAAI,EAAE,SAAS,QAAQ,CAAC;AAAA,IACnD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAQA,gBAAgB,EAAE,OAAO,GAA6B;AACpD,UAAI,CAAC,YAAY,aAAa,iBAAiB;AAC7C,oBAAY,YAAY,mBAAmB,IAAI;AAAA,MACjD,OAAO;AACL,oBAAY,oBAAoB,mBAAmB,IAAI;AAAA,MACzD;AAAA,IACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASA,aACE,EAAE,MAAM,WAAW,GACnB,gBACkC;AAClC,uBAAiB,QAAQ,gBAAgB,IAAI;AAE7C,YAAM,cAAc,UAAU,QAAQ,UAAU,IAAI;AACpD,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,aAAa,aAAa,CAAC;AAEpE,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAEA,aAAO,YAAY,QAAQ,SAAS,cAAc;AAAA,IACpD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAWA,yBACE,EAAE,MAAM,WAAW,GACnB,gBACuD;AACvD,uBAAiB,QAAQ,4BAA4B,IAAI;AAEzD,YAAM,cAAc,UAAU,QAAQ,UAAU,IAAI;AACpD,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,aAAa,aAAa,CAAC;AAEpE,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAEA,aAAO,YAAY,oBAAoB,SAAS,cAAc;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IASA,UAAU,EAAE,MAAM,WAAW,GAAmB,gBAAmE;AACjH,uBAAiB,QAAQ,aAAa,IAAI;AAE1C,YAAM,cAAc,UAAU,QAAQ,UAAU,IAAI;AACpD,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,aAAa,aAAa,CAAC;AAEpE,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAEA,aAAO,YAAY,QAAQ,SAAS,cAAc;AAAA,IACpD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAWA,sBACE,EAAE,MAAM,WAAW,GACnB,gBACuD;AACvD,uBAAiB,QAAQ,yBAAyB,IAAI;AAEtD,YAAM,cAAc,UAAU,QAAQ,UAAU,IAAI;AACpD,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,aAAa,aAAa,CAAC;AAEpE,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAEA,aAAO,YAAY,oBAAoB,SAAS,cAAc;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUA,WACE,EAAE,MAAM,YAAY,KAAK,GACzB,gBACkC;AAClC,uBAAiB,QAAQ,cAAc,IAAI;AAE3C,YAAM,cAAc,UAAU,QAAQ,UAAU,IAAI;AACpD,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,aAAa,aAAa,CAAC;AAEpE,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,QACA,MAAM,OAAO,OAAO,CAAC;AAAA,MACvB;AAEA,aAAO,YAAY,QAAQ,SAAS,cAAc;AAAA,IACpD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAYA,uBACE,EAAE,MAAM,YAAY,KAAK,GACzB,gBACuD;AACvD,uBAAiB,QAAQ,0BAA0B,IAAI;AAEvD,YAAM,cAAc,UAAU,QAAQ,UAAU,IAAI;AACpD,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,aAAa,aAAa,CAAC;AAEpE,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,QACA,MAAM,OAAO,OAAO,CAAC;AAAA,MACvB;AAEA,aAAO,YAAY,oBAAoB,SAAS,cAAc;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUA,UACE,EAAE,MAAM,YAAY,KAAK,GACzB,gBACkC;AAClC,uBAAiB,QAAQ,aAAa,IAAI;AAE1C,YAAM,cAAc,UAAU,QAAQ,UAAU,IAAI;AACpD,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,aAAa,aAAa,CAAC;AAEpE,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,QACA,MAAM,OAAO,OAAO,CAAC;AAAA,MACvB;AAEA,aAAO,YAAY,QAAQ,SAAS,cAAc;AAAA,IACpD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAYA,sBACE,EAAE,MAAM,YAAY,KAAK,GACzB,gBACuD;AACvD,uBAAiB,QAAQ,yBAAyB,IAAI;AAEtD,YAAM,cAAc,UAAU,QAAQ,UAAU,IAAI;AACpD,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,aAAa,aAAa,CAAC;AAEpE,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,QACA,MAAM,OAAO,OAAO,CAAC;AAAA,MACvB;AAEA,aAAO,YAAY,oBAAoB,SAAS,cAAc;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAWA,gBAAgB,EAAE,UAAU,GAAyB,gBAAgD;AACnG,uBAAiB,aAAa,mBAAmB,SAAS;AAE1D,YAAM,cAAc,4BAA4B,QAAQ,eAAe,mBAAmB,SAAS,CAAC;AACpG,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,CAAC;AAE1C,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAEA,aAAO,YAAY,QAAQ,SAAS,cAAc;AAAA,IACpD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAaA,4BACE,EAAE,UAAU,GACZ,gBACoC;AACpC,uBAAiB,aAAa,+BAA+B,SAAS;AAEtE,YAAM,cAAc,4BAA4B,QAAQ,eAAe,mBAAmB,SAAS,CAAC;AACpG,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,CAAC;AAE1C,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,MACF;AAEA,aAAO,YAAY,oBAAoB,SAAS,cAAc;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAUA,WAAW,gBAAgC,gBAA0D;AACnG,uBAAiB,kBAAkB,cAAc,cAAc;AAE/D,uBAAiB,yBAAyB,cAAc,eAAe,MAAM;AAE7E,YAAM,cAAc;AACpB,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,CAAC;AAE1C,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,QACA,MAAM;AAAA,MACR;AAEA,aAAO,YAAY,QAAQ,SAAS,cAAc;AAAA,IACpD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAYA,uBACE,gBACA,gBAC8C;AAC9C,uBAAiB,kBAAkB,0BAA0B,cAAc;AAE3E,uBAAiB,yBAAyB,0BAA0B,eAAe,MAAM;AAEzF,YAAM,cAAc;AACpB,YAAM,UAAmB,CAAC;AAC1B,YAAM,kBAAmC,CAAC;AAE1C,YAAM,UAAmB;AAAA,QACvB,QAAQ;AAAA,QACR,MAAM;AAAA,QACN;AAAA,QACA;AAAA,QACA,MAAM;AAAA,MACR;AAEA,aAAO,YAAY,oBAAoB,SAAS,cAAc;AAAA,IAChE;AAAA,EACF;AACF;;;ADvbO,SAAS,eACd,OACA,QACA,QACA,SACgB;AAChB,MAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACvC,UAAM,IAAI,MAAM,qBAAqB;AAAA,EACvC;AAEA,MAAI,CAAC,UAAU,OAAO,WAAW,UAAU;AACzC,UAAM,IAAI,MAAM,sBAAsB;AAAA,EACxC;AAEA,MAAI,WAAW,OAAO,WAAW,YAAY,CAAC,QAAQ,SAAS,MAAM,IAAI;AACvE,UAAM,IAAI,MAAM,4CAA4C,QAAQ,KAAK,IAAI,CAAC,EAAE;AAAA,EAClF;AAEA,QAAM,EAAE,aAAa,cAAc,GAAG,eAAe,IAAI,WAAW,CAAC;AAErE,SAAO,qBAAqB;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA,UAAU;AAAA,MACR,SAAS;AAAA,MACT,MAAM;AAAA,MACN,OAAO;AAAA,IACT;AAAA,IACA,QAAQ,iBAAiB;AAAA,IACzB,WAAW,mBAAmB;AAAA,IAC9B,eAAe,CAAC,EAAE,SAAS,UAAU,CAAC;AAAA,IACtC,UAAU;AAAA,IACV,gBAAgB,kBAAkB;AAAA,IAClC,eAAe,kBAAkB,EAAE,cAAc,MAAM,CAAC;AAAA,IACxD,YAAY,wBAAwB;AAAA,MAClC,QAAQ,CAAC,+BAA+B,EAAE,KAAK,GAAG,gBAAgB,IAAI,KAAK,GAAG,CAAC,GAAG,kBAAkB,CAAC;AAAA,IACvG,CAAC;AAAA,IACD,GAAG;AAAA,EACL,CAAC;AACH;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
function
|
|
2
|
-
`&&(
|
|
3
|
-
`,
|
|
4
|
-
`?2:1:(a=!0,m=1)):(
|
|
5
|
-
`),event:e,id:this.lastEventId,retry:this.retry};return this.data=[],t}};async function*ge(e){let t=new Pe;for await(let s of fe(e)){let r=t.decode(s);r!==null&&(yield r)}}var ye=750,M=120*1e3;function B(e,t="up"){let s=Date.now();function r(){return t==="up"||Date.now()-s>M}function a(){return t==="timed out"&&Date.now()-s<=M}return{...e,status:t,lastUpdate:s,isUp:r,isTimedOut:a}}var se=class extends Error{name="AlgoliaError";constructor(e,t){super(e),t&&(this.name=t)}};var ne=class extends se{stackTrace;constructor(e,t,s){super(e,s),this.stackTrace=t}},X=class extends ne{constructor(e){super("Unreachable hosts - your application id may be incorrect. If the error persists, please visit our help center https://alg.li/support-unreachable-hosts or reach out to the Algolia Support team: https://alg.li/support",e,"RetryError")}},j=class extends ne{status;constructor(e,t,s,r="ApiError"){super(e,s,r),this.status=t}},Te=class extends se{response;constructor(e,t){super(e,"DeserializationError"),this.response=t}},Ee=class extends j{error;constructor(e,t,s,r){super(e,t,r,"DetailedApiError"),this.error=s}};function K(e,t,s){let r=ve(s),a=`${e.protocol}://${e.url}${e.port?`:${e.port}`:""}/${t.charAt(0)==="/"?t.substring(1):t}`;return r.length&&(a+=`?${r}`),a}function ve(e){return Object.keys(e).filter(t=>e[t]!==void 0).sort().map(t=>`${t}=${encodeURIComponent(Object.prototype.toString.call(e[t])==="[object Array]"?e[t].join(","):e[t]).replace(/\+/g,"%20")}`).join("&")}function V(e,t){if(e.method==="GET"||e.data===void 0&&t.data===void 0)return;let s=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(s)}function Y(e,t,s){let r={Accept:"application/json",...e,...t,...s},a={};return Object.keys(r).forEach(d=>{let f=r[d];a[d.toLowerCase()]=f}),a}function oe(e){if(!(e.status===204||e.content.length===0))try{return JSON.parse(e.content)}catch(t){throw new Te(t.message,e)}}function Re(e){return{status:e.status,headers:e.headers,content:e.content,data:oe(e)}}function qe({content:e,status:t},s){try{let r=JSON.parse(e);return"error"in r?new Ee(r.message,t,r.error,s):new j(r.message,t,s)}catch{}return new j(e,t,s)}function xe({isTimedOut:e,status:t}){return!e&&~~t===0}function we({isTimedOut:e,status:t}){return e||xe({isTimedOut:e,status:t})||~~(t/100)!==2&&~~(t/100)!==4}function Ie({status:e}){return~~(e/100)===2}function Se(e){return e.map(t=>ae(t))}function ae(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function ie({hosts:e,hostsCache:t,baseHeaders:s,logger:r,baseQueryParameters:a,algoliaAgent:d,timeouts:f,requester:c,requestsCache:n,responsesCache:o,compress:i,compression:h}){async function P(u){let l=await Promise.all(u.map(p=>t.get(p,()=>Promise.resolve(B(p))))),x=l.filter(p=>p.isUp()),v=l.filter(p=>p.isTimedOut()),w=[...x,...v];return{hosts:w.length>0?w:u,getTimeout(p,I){return(v.length===0&&p===0?1:v.length+3+p)*I}}}async function m(u,l,x){let v=[],w=V(u,l),y=Y(s,u.headers,l.headers),p=h==="gzip"&&w!==void 0&&w.length>ye&&(u.method==="POST"||u.method==="PUT");p&&i===void 0&&r.info("Compression is disabled because no compress method is available.");let I=p&&i!==void 0,N=I?await i(w):w;I&&(y["content-encoding"]="gzip");let k=u.method==="GET"?{...u.data,...l.data}:{},S={...a,...u.queryParameters,...k};if(d.value&&(S["x-algolia-agent"]=d.value),l&&l.queryParameters)for(let R of Object.keys(l.queryParameters))!l.queryParameters[R]||Object.prototype.toString.call(l.queryParameters[R])==="[object Object]"?S[R]=l.queryParameters[R]:S[R]=l.queryParameters[R].toString();let b=0,D=async(R,L)=>{let H=R.pop();if(H===void 0)throw new X(Se(v));let U={...f,...l.timeouts},G={data:N,headers:y,method:u.method,url:K(H,u.path,S),connectTimeout:L(b,U.connect),responseTimeout:L(b,x?U.read:U.write)},Q=$=>{let J={request:G,response:$,host:H,triesLeft:R.length};return v.push(J),J},A=await c.send(G);if(we(A)){let $=Q(A);return A.isTimedOut&&b++,r.info("Retryable failure",ae($)),await t.set(H,B(H,A.isTimedOut?"timed out":"down")),D(R,L)}if(Ie(A))return A;throw Q(A),qe(A,v)},q=e.filter(R=>R.accept==="readWrite"||(x?R.accept==="read":R.accept==="write")),z=await P(q);return D([...z.hosts].reverse(),z.getTimeout)}function g(u,l={}){let x=()=>m(u,l,v).then(p=>oe(p)),v=u.useReadTransporter||u.method==="GET";if((l.cacheable||u.cacheable)!==!0)return x();let y={request:u,requestOptions:l,transporter:{queryParameters:a,headers:s}};return o.get(y,()=>n.get(y,()=>n.set(y,x()).then(p=>Promise.all([n.delete(y),p]),p=>Promise.all([n.delete(y),Promise.reject(p)])).then(([p,I])=>I)),{miss:p=>o.set(y,p)})}function E(u,l={}){let x=u.useReadTransporter||u.method==="GET";return m(u,l,x).then(v=>Re(v))}async function*C(u,l={}){if(!c.sendStream)throw new Error("This requester does not support streaming");let x=V(u,l),v=Y(s,u.headers,l.headers);v.accept="text/event-stream";let w=u.method==="GET"?{...u.data,...l.data}:{},y={...a,...u.queryParameters,...w};if(d.value&&(y["x-algolia-agent"]=d.value),l&&l.queryParameters)for(let q of Object.keys(l.queryParameters))!l.queryParameters[q]||Object.prototype.toString.call(l.queryParameters[q])==="[object Object]"?y[q]=l.queryParameters[q]:y[q]=l.queryParameters[q].toString();let p=u.useReadTransporter||u.method==="GET",I=e.filter(q=>q.accept==="readWrite"||(p?q.accept==="read":q.accept==="write")),k=(await P(I)).hosts[0];if(!k)throw new X([]);let S={...f,...l.timeouts},b={data:x,headers:v,method:u.method,url:K(k,u.path,y),connectTimeout:S.connect,responseTimeout:p?S.read:S.write},D=await c.sendStream(b);yield*ge(D)}return{hostsCache:t,requester:c,timeouts:f,logger:r,algoliaAgent:d,baseHeaders:s,baseQueryParameters:a,hosts:e,request:g,requestWithHttpInfo:E,requestStream:C,requestsCache:n,responsesCache:o}}function T(e,t,s){if(s==null||typeof s=="string"&&s.length===0)throw new Error(`Parameter \`${e}\` is required when calling \`${t}\`.`)}function Ae(e){let t={};for(let s of e.trim().split(/[\r\n]+/)){let r=s.indexOf(": ");r>0&&(t[s.slice(0,r).toLowerCase()]=s.slice(r+2))}return t}function ce(){function e(t){return new Promise(s=>{let r=new XMLHttpRequest;r.open(t.method,t.url,!0),Object.keys(t.headers).forEach(c=>r.setRequestHeader(c,t.headers[c]));let a=(c,n)=>setTimeout(()=>{r.abort(),s({status:0,content:n,isTimedOut:!0})},c),d=a(t.connectTimeout,"Connection timeout"),f;r.onreadystatechange=()=>{r.readyState>r.OPENED&&f===void 0&&(clearTimeout(d),f=a(t.responseTimeout,"Socket timeout"))},r.onerror=()=>{r.status===0&&(clearTimeout(d),clearTimeout(f),s({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=()=>{clearTimeout(d),clearTimeout(f),s({content:r.responseText,headers:Ae(r.getAllResponseHeaders()),status:r.status,isTimedOut:!1})},r.send(t.data)})}return{send:e}}var _="5.56.0",F=["de","us"];function Oe(e){return[{url:e?"insights.{region}.algolia.io".replace("{region}",e):"insights.algolia.io",accept:"readWrite",protocol:"https"}]}function ue({appId:e,apiKey:t,authMode:s,algoliaAgents:r,region:a,...d}){let f=ee(e,t,s),c=ie({hosts:Oe(a),...d,algoliaAgent:te({algoliaAgents:r,client:"Insights",version:_}),baseHeaders:{"content-type":"text/plain",...f.headers(),...d.baseHeaders},baseQueryParameters:{...f.queryParameters(),...d.baseQueryParameters}});return{transporter:c,appId:e,apiKey:t,clearCache(){return Promise.all([c.requestsCache.clear(),c.responsesCache.clear()]).then(()=>{})},get _ua(){return c.algoliaAgent.value},addAlgoliaAgent(n,o){c.algoliaAgent.add({segment:n,version:o})},setClientApiKey({apiKey:n}){!s||s==="WithinHeaders"?c.baseHeaders["x-algolia-api-key"]=n:c.baseQueryParameters["x-algolia-api-key"]=n},customDelete({path:n,parameters:o},i){T("path","customDelete",n);let g={method:"DELETE",path:"/{path}".replace("{path}",n),queryParameters:o||{},headers:{}};return c.request(g,i)},customDeleteWithHTTPInfo({path:n,parameters:o},i){T("path","customDeleteWithHTTPInfo",n);let g={method:"DELETE",path:"/{path}".replace("{path}",n),queryParameters:o||{},headers:{}};return c.requestWithHttpInfo(g,i)},customGet({path:n,parameters:o},i){T("path","customGet",n);let g={method:"GET",path:"/{path}".replace("{path}",n),queryParameters:o||{},headers:{}};return c.request(g,i)},customGetWithHTTPInfo({path:n,parameters:o},i){T("path","customGetWithHTTPInfo",n);let g={method:"GET",path:"/{path}".replace("{path}",n),queryParameters:o||{},headers:{}};return c.requestWithHttpInfo(g,i)},customPost({path:n,parameters:o,body:i},h){T("path","customPost",n);let E={method:"POST",path:"/{path}".replace("{path}",n),queryParameters:o||{},headers:{},data:i||{}};return c.request(E,h)},customPostWithHTTPInfo({path:n,parameters:o,body:i},h){T("path","customPostWithHTTPInfo",n);let E={method:"POST",path:"/{path}".replace("{path}",n),queryParameters:o||{},headers:{},data:i||{}};return c.requestWithHttpInfo(E,h)},customPut({path:n,parameters:o,body:i},h){T("path","customPut",n);let E={method:"PUT",path:"/{path}".replace("{path}",n),queryParameters:o||{},headers:{},data:i||{}};return c.request(E,h)},customPutWithHTTPInfo({path:n,parameters:o,body:i},h){T("path","customPutWithHTTPInfo",n);let E={method:"PUT",path:"/{path}".replace("{path}",n),queryParameters:o||{},headers:{},data:i||{}};return c.requestWithHttpInfo(E,h)},deleteUserToken({userToken:n},o){T("userToken","deleteUserToken",n);let m={method:"DELETE",path:"/1/usertokens/{userToken}".replace("{userToken}",encodeURIComponent(n)),queryParameters:{},headers:{}};return c.request(m,o)},deleteUserTokenWithHTTPInfo({userToken:n},o){T("userToken","deleteUserTokenWithHTTPInfo",n);let m={method:"DELETE",path:"/1/usertokens/{userToken}".replace("{userToken}",encodeURIComponent(n)),queryParameters:{},headers:{}};return c.requestWithHttpInfo(m,o)},pushEvents(n,o){T("insightsEvents","pushEvents",n),T("insightsEvents.events","pushEvents",n.events);let m={method:"POST",path:"/1/events",queryParameters:{},headers:{},data:n};return c.request(m,o)},pushEventsWithHTTPInfo(n,o){T("insightsEvents","pushEventsWithHTTPInfo",n),T("insightsEvents.events","pushEventsWithHTTPInfo",n.events);let m={method:"POST",path:"/1/events",queryParameters:{},headers:{},data:n};return c.requestWithHttpInfo(m,o)}}}function yt(e,t,s,r){if(!e||typeof e!="string")throw new Error("`appId` is missing.");if(!t||typeof t!="string")throw new Error("`apiKey` is missing.");if(s&&(typeof s!="string"||!F.includes(s)))throw new Error(`\`region\` must be one of the following: ${F.join(", ")}`);let{compression:a,...d}=r||{};return ue({appId:e,apiKey:t,region:s,timeouts:{connect:1e3,read:2e3,write:3e4},logger:re(),requester:ce(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:W(),requestsCache:W({serializable:!1}),hostsCache:O({caches:[Z({key:`${_}-${e}`}),W()]}),...d})}export{_ as apiClientVersion,yt as insightsClient};
|
|
1
|
+
function se(e){let t,r=`algolia-client-js-${e.key}`;function s(){return t===void 0&&(t=e.localStorage||window.localStorage),t}function a(){return JSON.parse(s().getItem(r)||"{}")}function u(o){s().setItem(r,JSON.stringify(o))}function p(){return new Promise(o=>setTimeout(o,0))}function c(){let o=e.timeToLive?e.timeToLive*1e3:null,n=a(),i=new Date().getTime(),h=!1;return{namespace:Object.fromEntries(Object.entries(n).filter(([,m])=>!m||m.timestamp===void 0||o&&m.timestamp+o<i?(h=!0,!1):!0)),changed:h}}return{get(o,n,i={miss:()=>Promise.resolve()}){return p().then(()=>{let{namespace:h,changed:g}=c(),m=h[JSON.stringify(o)];return g&&u(h),m?m.value:n().then(P=>i.miss(P).then(()=>P))})},set(o,n){return p().then(()=>{let i=a();return i[JSON.stringify(o)]={timestamp:new Date().getTime(),value:n},s().setItem(r,JSON.stringify(i)),n})},delete(o){return p().then(()=>{let n=a();delete n[JSON.stringify(o)],s().setItem(r,JSON.stringify(n))})},clear(){return Promise.resolve().then(()=>{s().removeItem(r)})}}}function ge(){return{get(e,t,r={miss:()=>Promise.resolve()}){return t().then(a=>Promise.all([a,r.miss(a)])).then(([a])=>a)},set(e,t){return Promise.resolve(t)},delete(e){return Promise.resolve()},clear(){return Promise.resolve()}}}function b(e){let t=[...e.caches],r=t.shift();return r===void 0?ge():{get(s,a,u={miss:()=>Promise.resolve()}){return r.get(s,a,u).catch(()=>b({caches:t}).get(s,a,u))},set(s,a){return r.set(s,a).catch(()=>b({caches:t}).set(s,a))},delete(s){return r.delete(s).catch(()=>b({caches:t}).delete(s))},clear(){return r.clear().catch(()=>b({caches:t}).clear())}}}function W(e={serializable:!0}){let t={};return{get(r,s,a={miss:()=>Promise.resolve()}){let u=JSON.stringify(r);if(u in t)return Promise.resolve(e.serializable?JSON.parse(t[u]):t[u]);let p=s();return p.then(c=>a.miss(c)).then(()=>p)},set(r,s){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(s):s,Promise.resolve(s)},delete(r){return delete t[JSON.stringify(r)],Promise.resolve()},clear(){return t={},Promise.resolve()}}}function Pe(e){let t={value:`Algolia for JavaScript (${e})`,add(r){let s=`; ${r.segment}${r.version!==void 0?` (${r.version})`:""}`;return t.value.indexOf(s)===-1&&(t.value=`${t.value}${s}`),t}};return t}function oe(e,t,r="WithinHeaders"){let s={"x-algolia-api-key":t,"x-algolia-application-id":e};return{headers(){return r==="WithinHeaders"?s:{}},queryParameters(){return r==="WithinQueryParameters"?s:{}}}}function ne({algoliaAgents:e,client:t,version:r}){let s=Pe(r).add({segment:t,version:r});return e.forEach(a=>s.add(a)),s}function ae(){return{debug(e,t){return Promise.resolve()},info(e,t){return Promise.resolve()},error(e,t){return Promise.resolve()}}}var ye=10*1024*1024;async function*Te(e){let t=e.getReader();try{for(;;){let{done:r,value:s}=await t.read();if(r)return;yield s}}finally{t.releaseLock()}}function ve(e){return Symbol.asyncIterator in e?e:Te(e)}async function*Ee(e){let t=new TextDecoder("utf-8"),r=[],s=0,a=!1,u=!0;for await(let c of ve(e)){let o=t.decode(c,{stream:!0}),n=0;for(a&&(a=!1,o.length>0&&o[0]===`
|
|
2
|
+
`&&(n=1));n<o.length;){let i=o.indexOf("\r",n),h=o.indexOf(`
|
|
3
|
+
`,n);if(i===-1&&h===-1){let O=o.slice(n);if(r.push(O),s+=O.length,s>ye)throw new Error("SSE line buffer exceeded 10MB");break}let g,m;i!==-1&&(h===-1||i<h)?(g=i,i+1<o.length?m=o[i+1]===`
|
|
4
|
+
`?2:1:(a=!0,m=1)):(g=h,m=1);let P=o.slice(n,g);r.push(P);let v=r.length===1?r[0]:r.join("");r.length=0,s=0,u&&(v.startsWith("\uFEFF")&&(v=v.slice(1)),u=!1),yield v,n=g+m}}let p=t.decode();if(p&&r.push(p),r.length>0){let c=r.join("");u&&c.startsWith("\uFEFF")&&(c=c.slice(1)),yield c}}var Re=class{data=[];eventType="";lastEventId=null;retry=null;decode(e){if(e==="")return this.dispatch();if(e[0]===":")return null;let t=e.indexOf(":"),r,s;switch(t===-1?(r=e,s=""):(r=e.slice(0,t),s=e.slice(t+1),s[0]===" "&&(s=s.slice(1))),r){case"data":this.data.push(s);break;case"event":this.eventType=s;break;case"id":s.includes("\0")||(this.lastEventId=s);break;case"retry":/^[0-9]+$/.test(s)&&(this.retry=parseInt(s,10));break}return null}dispatch(){let e=this.eventType;if(this.eventType="",this.data.length===0)return null;let t={data:this.data.join(`
|
|
5
|
+
`),event:e,id:this.lastEventId,retry:this.retry};return this.data=[],t}};async function*qe(e){let t=new Re;for await(let r of Ee(e)){let s=t.decode(r);s!==null&&(yield s)}}var Ie=750,X=120*1e3;function V(e,t="up"){let r=Date.now();function s(){return t==="up"||Date.now()-r>X}function a(){return t==="timed out"&&Date.now()-r<=X}return{...e,status:t,lastUpdate:r,isUp:s,isTimedOut:a}}var ie=class extends Error{name="AlgoliaError";constructor(e,t){super(e),t&&(this.name=t)}};var ce=class extends ie{stackTrace;correlationId;constructor(e,t,r,s){super(s?`${e} (Correlation-ID: ${s})`:e,r),this.stackTrace=t,this.correlationId=s}},K=class extends ce{constructor(e,t){super("Unreachable hosts - your application id may be incorrect. If the error persists, please visit our help center https://alg.li/support-unreachable-hosts or reach out to the Algolia Support team: https://alg.li/support",e,"RetryError",t)}},F=class extends ce{status;constructor(e,t,r,s="ApiError",a){super(e,r,s,a),this.status=t}},we=class extends ie{response;correlationId;constructor(e,t,r){super(r?`${e} (Correlation-ID: ${r})`:e,"DeserializationError"),this.response=t,this.correlationId=r}},xe=class extends F{error;constructor(e,t,r,s,a){super(e,t,s,"DetailedApiError",a),this.error=r}};function Y(e,t,r){let s=Se(r),a=`${e.protocol}://${e.url}${e.port?`:${e.port}`:""}/${t.charAt(0)==="/"?t.substring(1):t}`;return s.length&&(a+=`?${s}`),a}function Se(e){return Object.keys(e).filter(t=>e[t]!==void 0).sort().map(t=>`${t}=${encodeURIComponent(Object.prototype.toString.call(e[t])==="[object Array]"?e[t].join(","):e[t]).replace(/\+/g,"%20")}`).join("&")}function Z(e,t){if(e.method==="GET"||e.data===void 0&&t.data===void 0)return;let r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}function ee(e,t,r){let s={Accept:"application/json",...e,...t,...r},a={};return Object.keys(s).forEach(u=>{let p=s[u];a[u.toLowerCase()]=p}),a}function ue(e){if(!(e.status===204||e.content.length===0))try{return JSON.parse(e.content)}catch(t){throw new we(t.message,e,Q(e.headers))}}function Ae(e){return{status:e.status,headers:e.headers,content:e.content,data:ue(e)}}function Q(e){if(!e)return;if(e["correlation-id"]!==void 0)return e["correlation-id"];let t=Object.keys(e).find(r=>r.toLowerCase()==="correlation-id");return t===void 0?void 0:e[t]}function be(e){for(let t=e.length-1;t>=0;t--){let r=Q(e[t].response.headers);if(r!==void 0)return r}}function Ce(e,t){let{content:r,status:s}=e,a=Q(e.headers);try{let u=JSON.parse(r);return"error"in u?new xe(u.message,s,u.error,t,a):new F(u.message,s,t,"ApiError",a)}catch{}return new F(r,s,t,"ApiError",a)}var _="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",te=11;function re(){var e;let t="";if(typeof((e=globalThis.crypto)==null?void 0:e.getRandomValues)=="function"){let r=new Uint8Array(te);globalThis.crypto.getRandomValues(r);for(let s of r)t+=_[s%_.length];return t}for(let r=0;r<te;r++)t+=_[Math.floor(Math.random()*_.length)];return t}function He({isTimedOut:e,status:t}){return!e&&~~t===0}function Oe({isTimedOut:e,status:t}){return e||He({isTimedOut:e,status:t})||~~(t/100)!==2&&~~(t/100)!==4}function ke({status:e}){return~~(e/100)===2}function De(e){return e.map(t=>le(t))}function le(e){let t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function de({hosts:e,hostsCache:t,baseHeaders:r,logger:s,baseQueryParameters:a,algoliaAgent:u,timeouts:p,requester:c,requestsCache:o,responsesCache:n,compress:i,compression:h,requestIdChannel:g}){function m(l,d){g===void 0||l["request-id"]!==void 0||Object.keys(d).some(q=>q.toLowerCase()==="x-algolia-request-id")||(g==="headers"?l["request-id"]=re():d["x-algolia-request-id"]=re())}async function P(l){let d=await Promise.all(l.map(f=>t.get(f,()=>Promise.resolve(V(f))))),q=d.filter(f=>f.isUp()),T=d.filter(f=>f.isTimedOut()),w=[...q,...T];return{hosts:w.length>0?w:l,getTimeout(f,S){return(T.length===0&&f===0?1:T.length+3+f)*S}}}async function v(l,d,q){let T=[],w=Z(l,d),y=ee(r,l.headers,d.headers),f=h==="gzip"&&w!==void 0&&w.length>Ie&&(l.method==="POST"||l.method==="PUT");f&&i===void 0&&s.info("Compression is disabled because no compress method is available.");let S=f&&i!==void 0,N=S?await i(w):w;S&&(y["content-encoding"]="gzip");let k=l.method==="GET"?{...l.data,...d.data}:{},x={...a,...l.queryParameters,...k};if(u.value&&(x["x-algolia-agent"]=u.value),d&&d.queryParameters)for(let R of Object.keys(d.queryParameters))!d.queryParameters[R]||Object.prototype.toString.call(d.queryParameters[R])==="[object Object]"?x[R]=d.queryParameters[R]:x[R]=d.queryParameters[R].toString();m(y,x);let C=0,D=async(R,U)=>{let H=R.pop();if(H===void 0)throw new K(De(T),be(T));let j={...p,...d.timeouts},z={data:N,headers:y,method:l.method,url:Y(H,l.path,x),connectTimeout:U(C,j.connect),responseTimeout:U(C,q?j.read:j.write)},J=$=>{let B={request:z,response:$,host:H,triesLeft:R.length};return T.push(B),B},A=await c.send(z);if(Oe(A)){let $=J(A);return A.isTimedOut&&C++,s.info("Retryable failure",le($)),await t.set(H,V(H,A.isTimedOut?"timed out":"down")),D(R,U)}if(ke(A))return A;throw J(A),Ce(A,T)},I=e.filter(R=>R.accept==="readWrite"||(q?R.accept==="read":R.accept==="write")),M=await P(I);return D([...M.hosts].reverse(),M.getTimeout)}function O(l,d={}){let q=()=>v(l,d,T).then(f=>ue(f)),T=l.useReadTransporter||l.method==="GET";if((d.cacheable||l.cacheable)!==!0)return q();let y={request:l,requestOptions:d,transporter:{queryParameters:a,headers:r}};return n.get(y,()=>o.get(y,()=>o.set(y,q()).then(f=>Promise.all([o.delete(y),f]),f=>Promise.all([o.delete(y),Promise.reject(f)])).then(([f,S])=>S)),{miss:f=>n.set(y,f)})}function fe(l,d={}){let q=l.useReadTransporter||l.method==="GET";return v(l,d,q).then(T=>Ae(T))}async function*pe(l,d={}){if(!c.sendStream)throw new Error("This requester does not support streaming");let q=Z(l,d),T=ee(r,l.headers,d.headers);T.accept="text/event-stream";let w=l.method==="GET"?{...l.data,...d.data}:{},y={...a,...l.queryParameters,...w};if(u.value&&(y["x-algolia-agent"]=u.value),d&&d.queryParameters)for(let I of Object.keys(d.queryParameters))!d.queryParameters[I]||Object.prototype.toString.call(d.queryParameters[I])==="[object Object]"?y[I]=d.queryParameters[I]:y[I]=d.queryParameters[I].toString();m(T,y);let f=l.useReadTransporter||l.method==="GET",S=e.filter(I=>I.accept==="readWrite"||(f?I.accept==="read":I.accept==="write")),k=(await P(S)).hosts[0];if(!k)throw new K([]);let x={...p,...d.timeouts},C={data:q,headers:T,method:l.method,url:Y(k,l.path,y),connectTimeout:x.connect,responseTimeout:f?x.read:x.write},D=await c.sendStream(C);yield*qe(D)}return{hostsCache:t,requester:c,timeouts:p,logger:s,algoliaAgent:u,baseHeaders:r,baseQueryParameters:a,requestIdChannel:g,hosts:e,request:O,requestWithHttpInfo:fe,requestStream:pe,requestsCache:o,responsesCache:n}}function E(e,t,r){if(r==null||typeof r=="string"&&r.length===0)throw new Error(`Parameter \`${e}\` is required when calling \`${t}\`.`)}function _e(e){let t={};for(let r of e.trim().split(/[\r\n]+/)){let s=r.indexOf(": ");s>0&&(t[r.slice(0,s).toLowerCase()]=r.slice(s+2))}return t}function me(){function e(t){return new Promise(r=>{let s=new XMLHttpRequest;s.open(t.method,t.url,!0),Object.keys(t.headers).forEach(c=>s.setRequestHeader(c,t.headers[c]));let a=(c,o)=>setTimeout(()=>{s.abort(),r({status:0,content:o,isTimedOut:!0})},c),u=a(t.connectTimeout,"Connection timeout"),p;s.onreadystatechange=()=>{s.readyState>s.OPENED&&p===void 0&&(clearTimeout(u),p=a(t.responseTimeout,"Socket timeout"))},s.onerror=()=>{s.status===0&&(clearTimeout(u),clearTimeout(p),r({content:s.responseText||"Network request failed",status:s.status,isTimedOut:!1}))},s.onload=()=>{clearTimeout(u),clearTimeout(p),r({content:s.responseText,headers:_e(s.getAllResponseHeaders()),status:s.status,isTimedOut:!1})},s.send(t.data)})}return{send:e}}var L="5.57.0",G=["de","us"];function We(e){return[{url:e?"insights.{region}.algolia.io".replace("{region}",e):"insights.algolia.io",accept:"readWrite",protocol:"https"}]}function he({appId:e,apiKey:t,authMode:r,algoliaAgents:s,region:a,...u}){let p=oe(e,t,r),c=de({hosts:We(a),...u,algoliaAgent:ne({algoliaAgents:s,client:"Insights",version:L}),baseHeaders:{"content-type":"text/plain",...p.headers(),...u.baseHeaders},baseQueryParameters:{...p.queryParameters(),...u.baseQueryParameters}});return{transporter:c,appId:e,apiKey:t,clearCache(){return Promise.all([c.requestsCache.clear(),c.responsesCache.clear()]).then(()=>{})},get _ua(){return c.algoliaAgent.value},addAlgoliaAgent(o,n){c.algoliaAgent.add({segment:o,version:n})},setClientApiKey({apiKey:o}){!r||r==="WithinHeaders"?c.baseHeaders["x-algolia-api-key"]=o:c.baseQueryParameters["x-algolia-api-key"]=o},customDelete({path:o,parameters:n},i){E("path","customDelete",o);let P={method:"DELETE",path:"/{path}".replace("{path}",o),queryParameters:n||{},headers:{}};return c.request(P,i)},customDeleteWithHTTPInfo({path:o,parameters:n},i){E("path","customDeleteWithHTTPInfo",o);let P={method:"DELETE",path:"/{path}".replace("{path}",o),queryParameters:n||{},headers:{}};return c.requestWithHttpInfo(P,i)},customGet({path:o,parameters:n},i){E("path","customGet",o);let P={method:"GET",path:"/{path}".replace("{path}",o),queryParameters:n||{},headers:{}};return c.request(P,i)},customGetWithHTTPInfo({path:o,parameters:n},i){E("path","customGetWithHTTPInfo",o);let P={method:"GET",path:"/{path}".replace("{path}",o),queryParameters:n||{},headers:{}};return c.requestWithHttpInfo(P,i)},customPost({path:o,parameters:n,body:i},h){E("path","customPost",o);let v={method:"POST",path:"/{path}".replace("{path}",o),queryParameters:n||{},headers:{},data:i||{}};return c.request(v,h)},customPostWithHTTPInfo({path:o,parameters:n,body:i},h){E("path","customPostWithHTTPInfo",o);let v={method:"POST",path:"/{path}".replace("{path}",o),queryParameters:n||{},headers:{},data:i||{}};return c.requestWithHttpInfo(v,h)},customPut({path:o,parameters:n,body:i},h){E("path","customPut",o);let v={method:"PUT",path:"/{path}".replace("{path}",o),queryParameters:n||{},headers:{},data:i||{}};return c.request(v,h)},customPutWithHTTPInfo({path:o,parameters:n,body:i},h){E("path","customPutWithHTTPInfo",o);let v={method:"PUT",path:"/{path}".replace("{path}",o),queryParameters:n||{},headers:{},data:i||{}};return c.requestWithHttpInfo(v,h)},deleteUserToken({userToken:o},n){E("userToken","deleteUserToken",o);let m={method:"DELETE",path:"/1/usertokens/{userToken}".replace("{userToken}",encodeURIComponent(o)),queryParameters:{},headers:{}};return c.request(m,n)},deleteUserTokenWithHTTPInfo({userToken:o},n){E("userToken","deleteUserTokenWithHTTPInfo",o);let m={method:"DELETE",path:"/1/usertokens/{userToken}".replace("{userToken}",encodeURIComponent(o)),queryParameters:{},headers:{}};return c.requestWithHttpInfo(m,n)},pushEvents(o,n){E("insightsEvents","pushEvents",o),E("insightsEvents.events","pushEvents",o.events);let m={method:"POST",path:"/1/events",queryParameters:{},headers:{},data:o};return c.request(m,n)},pushEventsWithHTTPInfo(o,n){E("insightsEvents","pushEventsWithHTTPInfo",o),E("insightsEvents.events","pushEventsWithHTTPInfo",o.events);let m={method:"POST",path:"/1/events",queryParameters:{},headers:{},data:o};return c.requestWithHttpInfo(m,n)}}}function St(e,t,r,s){if(!e||typeof e!="string")throw new Error("`appId` is missing.");if(!t||typeof t!="string")throw new Error("`apiKey` is missing.");if(r&&(typeof r!="string"||!G.includes(r)))throw new Error(`\`region\` must be one of the following: ${G.join(", ")}`);let{compression:a,...u}=s||{};return he({appId:e,apiKey:t,region:r,timeouts:{connect:1e3,read:2e3,write:3e4},logger:ae(),requester:me(),algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:W(),requestsCache:W({serializable:!1}),hostsCache:b({caches:[se({key:`${L}-${e}`}),W()]}),...u})}export{L as apiClientVersion,St as insightsClient};
|
|
6
6
|
//# sourceMappingURL=browser.min.js.map
|