@algolia/client-insights 5.0.0-alpha.106 → 5.0.0-alpha.108
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/dist/client-insights.cjs +4 -4
- package/dist/client-insights.esm.browser.js +4 -4
- package/dist/client-insights.esm.node.js +4 -4
- package/dist/client-insights.umd.js +2 -2
- package/dist/model/addedToCartObjectIDs.d.ts +6 -6
- package/dist/model/addedToCartObjectIDsAfterSearch.d.ts +6 -6
- package/dist/model/clickedFilters.d.ts +6 -6
- package/dist/model/clickedObjectIDs.d.ts +6 -6
- package/dist/model/clickedObjectIDsAfterSearch.d.ts +7 -7
- package/dist/model/clientMethodProps.d.ts +1 -1
- package/dist/model/convertedFilters.d.ts +6 -6
- package/dist/model/convertedObjectIDs.d.ts +6 -6
- package/dist/model/convertedObjectIDsAfterSearch.d.ts +6 -6
- package/dist/model/discount.d.ts +1 -1
- package/dist/model/insightsEvents.d.ts +1 -1
- package/dist/model/objectData.d.ts +1 -1
- package/dist/model/objectDataAfterSearch.d.ts +1 -1
- package/dist/model/price.d.ts +1 -1
- package/dist/model/purchasedObjectIDs.d.ts +6 -6
- package/dist/model/purchasedObjectIDsAfterSearch.d.ts +6 -6
- package/dist/model/viewedFilters.d.ts +6 -6
- package/dist/model/viewedObjectIDs.d.ts +6 -6
- package/dist/src/insightsClient.d.ts +4 -4
- package/model/addedToCartObjectIDs.ts +6 -6
- package/model/addedToCartObjectIDsAfterSearch.ts +6 -6
- package/model/clickedFilters.ts +6 -6
- package/model/clickedObjectIDs.ts +6 -6
- package/model/clickedObjectIDsAfterSearch.ts +7 -7
- package/model/clientMethodProps.ts +1 -1
- package/model/convertedFilters.ts +6 -6
- package/model/convertedObjectIDs.ts +6 -6
- package/model/convertedObjectIDsAfterSearch.ts +6 -6
- package/model/discount.ts +1 -1
- package/model/insightsEvents.ts +1 -1
- package/model/objectData.ts +1 -1
- package/model/objectDataAfterSearch.ts +1 -1
- package/model/price.ts +1 -1
- package/model/purchasedObjectIDs.ts +6 -6
- package/model/purchasedObjectIDsAfterSearch.ts +6 -6
- package/model/viewedFilters.ts +6 -6
- package/model/viewedObjectIDs.ts +6 -6
- package/package.json +7 -7
package/dist/client-insights.cjs
CHANGED
|
@@ -4,7 +4,7 @@ var clientCommon = require('@algolia/client-common');
|
|
|
4
4
|
var requesterNodeHttp = require('@algolia/requester-node-http');
|
|
5
5
|
|
|
6
6
|
// 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.
|
|
7
|
-
const apiClientVersion = '5.0.0-alpha.
|
|
7
|
+
const apiClientVersion = '5.0.0-alpha.108';
|
|
8
8
|
const REGIONS = ['de', 'us'];
|
|
9
9
|
function getDefaultHosts(region) {
|
|
10
10
|
const url = !region
|
|
@@ -160,10 +160,10 @@ function createInsightsClient({ appId: appIdOption, apiKey: apiKeyOption, authMo
|
|
|
160
160
|
return transporter.request(request, requestOptions);
|
|
161
161
|
},
|
|
162
162
|
/**
|
|
163
|
-
*
|
|
163
|
+
* Deletes all events related to the specified user token from events metrics and analytics. To delete a personalization user profile, see [Delete a user profile](/specs/personalization#tag/profiles/operation/deleteUserProfile).
|
|
164
164
|
*
|
|
165
165
|
* @param deleteUserToken - The deleteUserToken object.
|
|
166
|
-
* @param deleteUserToken.userToken -
|
|
166
|
+
* @param deleteUserToken.userToken - User token for which to delete all associated events.
|
|
167
167
|
* @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
|
|
168
168
|
*/
|
|
169
169
|
deleteUserToken({ userToken }, requestOptions) {
|
|
@@ -182,7 +182,7 @@ function createInsightsClient({ appId: appIdOption, apiKey: apiKeyOption, authMo
|
|
|
182
182
|
return transporter.request(request, requestOptions);
|
|
183
183
|
},
|
|
184
184
|
/**
|
|
185
|
-
*
|
|
185
|
+
* 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.
|
|
186
186
|
*
|
|
187
187
|
* @param insightsEvents - The insightsEvents object.
|
|
188
188
|
* @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
|
|
@@ -686,7 +686,7 @@ function createXhrRequester() {
|
|
|
686
686
|
}
|
|
687
687
|
|
|
688
688
|
// 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.
|
|
689
|
-
const apiClientVersion = '5.0.0-alpha.
|
|
689
|
+
const apiClientVersion = '5.0.0-alpha.108';
|
|
690
690
|
const REGIONS = ['de', 'us'];
|
|
691
691
|
function getDefaultHosts(region) {
|
|
692
692
|
const url = !region
|
|
@@ -842,10 +842,10 @@ function createInsightsClient({ appId: appIdOption, apiKey: apiKeyOption, authMo
|
|
|
842
842
|
return transporter.request(request, requestOptions);
|
|
843
843
|
},
|
|
844
844
|
/**
|
|
845
|
-
*
|
|
845
|
+
* Deletes all events related to the specified user token from events metrics and analytics. To delete a personalization user profile, see [Delete a user profile](/specs/personalization#tag/profiles/operation/deleteUserProfile).
|
|
846
846
|
*
|
|
847
847
|
* @param deleteUserToken - The deleteUserToken object.
|
|
848
|
-
* @param deleteUserToken.userToken -
|
|
848
|
+
* @param deleteUserToken.userToken - User token for which to delete all associated events.
|
|
849
849
|
* @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
|
|
850
850
|
*/
|
|
851
851
|
deleteUserToken({ userToken }, requestOptions) {
|
|
@@ -864,7 +864,7 @@ function createInsightsClient({ appId: appIdOption, apiKey: apiKeyOption, authMo
|
|
|
864
864
|
return transporter.request(request, requestOptions);
|
|
865
865
|
},
|
|
866
866
|
/**
|
|
867
|
-
*
|
|
867
|
+
* 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.
|
|
868
868
|
*
|
|
869
869
|
* @param insightsEvents - The insightsEvents object.
|
|
870
870
|
* @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
|
|
@@ -2,7 +2,7 @@ import { createAuth, createTransporter, getAlgoliaAgent, DEFAULT_CONNECT_TIMEOUT
|
|
|
2
2
|
import { createHttpRequester } from '@algolia/requester-node-http';
|
|
3
3
|
|
|
4
4
|
// 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.
|
|
5
|
-
const apiClientVersion = '5.0.0-alpha.
|
|
5
|
+
const apiClientVersion = '5.0.0-alpha.108';
|
|
6
6
|
const REGIONS = ['de', 'us'];
|
|
7
7
|
function getDefaultHosts(region) {
|
|
8
8
|
const url = !region
|
|
@@ -158,10 +158,10 @@ function createInsightsClient({ appId: appIdOption, apiKey: apiKeyOption, authMo
|
|
|
158
158
|
return transporter.request(request, requestOptions);
|
|
159
159
|
},
|
|
160
160
|
/**
|
|
161
|
-
*
|
|
161
|
+
* Deletes all events related to the specified user token from events metrics and analytics. To delete a personalization user profile, see [Delete a user profile](/specs/personalization#tag/profiles/operation/deleteUserProfile).
|
|
162
162
|
*
|
|
163
163
|
* @param deleteUserToken - The deleteUserToken object.
|
|
164
|
-
* @param deleteUserToken.userToken -
|
|
164
|
+
* @param deleteUserToken.userToken - User token for which to delete all associated events.
|
|
165
165
|
* @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
|
|
166
166
|
*/
|
|
167
167
|
deleteUserToken({ userToken }, requestOptions) {
|
|
@@ -180,7 +180,7 @@ function createInsightsClient({ appId: appIdOption, apiKey: apiKeyOption, authMo
|
|
|
180
180
|
return transporter.request(request, requestOptions);
|
|
181
181
|
},
|
|
182
182
|
/**
|
|
183
|
-
*
|
|
183
|
+
* 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.
|
|
184
184
|
*
|
|
185
185
|
* @param insightsEvents - The insightsEvents object.
|
|
186
186
|
* @param requestOptions - The requestOptions to send along with the query, they will be merged with the transporter requestOptions.
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/*! client-insights.umd.js | 5.0.0-alpha.
|
|
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/client-insights"]={})}(this,(function(e){"use strict";function t(e){let t;const r=`algolia-client-js-${e.key}`;function s(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function a(){return JSON.parse(s().getItem(r)||"{}")}function n(e){s().setItem(r,JSON.stringify(e))}return{get:(t,r,s={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>(function(){const t=e.timeToLive?1e3*e.timeToLive:null,r=a(),s=Object.fromEntries(Object.entries(r).filter((([,e])=>void 0!==e.timestamp)));if(n(s),!t)return;n(Object.fromEntries(Object.entries(s).filter((([,e])=>{const r=(new Date).getTime();return!(e.timestamp+t<r)}))))}(),a()[JSON.stringify(t)]))).then((e=>Promise.all([e?e.value:r(),void 0!==e]))).then((([e,t])=>Promise.all([e,t||s.miss(e)]))).then((([e])=>e)),set:(e,t)=>Promise.resolve().then((()=>{const n=a();return n[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:t},s().setItem(r,JSON.stringify(n)),t})),delete:e=>Promise.resolve().then((()=>{const t=a();delete t[JSON.stringify(e)],s().setItem(r,JSON.stringify(t))})),clear:()=>Promise.resolve().then((()=>{s().removeItem(r)}))}}function r(e){const t=[...e.caches],s=t.shift();return void 0===s?{get:(e,t,r={miss:()=>Promise.resolve()})=>t().then((e=>Promise.all([e,r.miss(e)]))).then((([e])=>e)),set:(e,t)=>Promise.resolve(t),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,a,n={miss:()=>Promise.resolve()})=>s.get(e,a,n).catch((()=>r({caches:t}).get(e,a,n))),set:(e,a)=>s.set(e,a).catch((()=>r({caches:t}).set(e,a))),delete:e=>s.delete(e).catch((()=>r({caches:t}).delete(e))),clear:()=>s.clear().catch((()=>r({caches:t}).clear()))}}function s(e={serializable:!0}){let t={};return{get(r,s,a={miss:()=>Promise.resolve()}){const n=JSON.stringify(r);if(n in t)return Promise.resolve(e.serializable?JSON.parse(t[n]):t[n]);const o=s();return o.then((e=>a.miss(e))).then((()=>o))},set:(r,s)=>(t[JSON.stringify(r)]=e.serializable?JSON.stringify(s):s,Promise.resolve(s)),delete:e=>(delete t[JSON.stringify(e)],Promise.resolve()),clear:()=>(t={},Promise.resolve())}}const a=12e4;function n(e,t="up"){const r=Date.now();return{...e,status:t,lastUpdate:r,isUp:function(){return"up"===t||Date.now()-r>a},isTimedOut:function(){return"timed out"===t&&Date.now()-r<=a}}}function o(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var s=r.call(e,t||"default");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}function i(e,t,r){return(t=o(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class c extends Error{constructor(e,t){super(e),i(this,"name","AlgoliaError"),t&&(this.name=t)}}class u extends c{constructor(e,t,r){super(e,r),i(this,"stackTrace",void 0),this.stackTrace=t}}class l extends u{constructor(e){super("Unreachable hosts - your application id may be incorrect. If the error persists, please create a ticket at https://support.algolia.com/ sharing steps we can use to reproduce the issue.",e,"RetryError")}}class h extends u{constructor(e,t,r,s="ApiError"){super(e,r,s),i(this,"status",void 0),this.status=t}}class m extends c{constructor(e,t){super(e,"DeserializationError"),i(this,"response",void 0),this.response=t}}class d extends h{constructor(e,t,r,s){super(e,t,s,"DetailedApiError"),i(this,"error",void 0),this.error=r}}function p(e,t,r){const s=function(e){const t=e=>"[object Object]"===Object.prototype.toString.call(e)||"[object Array]"===Object.prototype.toString.call(e);return Object.keys(e).map((r=>`${r}=${encodeURIComponent(t(e[r])?JSON.stringify(e[r]):e[r]).replaceAll("+","%20")}`)).join("&")}(r);let a=`${e.protocol}://${e.url}${e.port?`:${e.port}`:""}/${"/"===t.charAt(0)?t.substring(1):t}`;return s.length&&(a+=`?${s}`),a}function g(e){const t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function f({hosts:e,hostsCache:t,baseHeaders:r,baseQueryParameters:s,algoliaAgent:a,timeouts:o,requester:i,requestsCache:c,responsesCache:u}){async function f(c,u,f=!0){const y=[],v=function(e,t){if("GET"===e.method||void 0===e.data&&void 0===t.data)return;const r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}(c,u),P=function(e,t,r){const s={Accept:"application/json",...e,...t,...r},a={};return Object.keys(s).forEach((e=>{const t=s[e];a[e.toLowerCase()]=t})),a}(r,c.headers,u.headers),w="GET"===c.method?{...c.data,...u.data}:{},b={...s,...c.queryParameters,...w};if(a.value&&(b["x-algolia-agent"]=a.value),u&&u.queryParameters)for(const e of Object.keys(u.queryParameters))u.queryParameters[e]&&"[object Object]"!==Object.prototype.toString.call(u.queryParameters[e])?b[e]=u.queryParameters[e].toString():b[e]=u.queryParameters[e];let T=0;const q=async(e,r)=>{const s=e.pop();if(void 0===s)throw new l(function(e){return e.map((e=>g(e)))}(y));let a=u.timeout;void 0===a&&(a=f?o.read:o.write);const w={data:v,headers:P,method:c.method,url:p(s,c.path,b),connectTimeout:r(T,o.connect),responseTimeout:r(T,a)},O=t=>{const r={request:w,response:t,host:s,triesLeft:e.length};return y.push(r),r},E=await i.send(w);if(function({isTimedOut:e,status:t}){return e||function({isTimedOut:e,status:t}){return!e&&0==~~t}({isTimedOut:e,status:t})||2!=~~(t/100)&&4!=~~(t/100)}(E)){const a=O(E);return E.isTimedOut&&T++,console.log("Retryable failure",g(a)),await t.set(s,n(s,E.isTimedOut?"timed out":"down")),q(e,r)}if(function({status:e}){return 2==~~(e/100)}(E))return function(e){try{return JSON.parse(e.content)}catch(t){throw new m(t.message,e)}}(E);throw O(E),function({content:e,status:t},r){try{const s=JSON.parse(e);return"error"in s?new d(s.message,t,s.error,r):new h(s.message,t,r)}catch(e){}return new h(e,t,r)}(E,y)},O=e.filter((e=>"readWrite"===e.accept||(f?"read"===e.accept:"write"===e.accept))),E=await async function(e){const r=await Promise.all(e.map((e=>t.get(e,(()=>Promise.resolve(n(e))))))),s=r.filter((e=>e.isUp())),a=r.filter((e=>e.isTimedOut())),o=[...s,...a];return{hosts:o.length>0?o:e,getTimeout:(e,t)=>(0===a.length&&0===e?1:a.length+3+e)*t}}(O);return q([...E.hosts].reverse(),E.getTimeout)}return{hostsCache:t,requester:i,timeouts:o,algoliaAgent:a,baseHeaders:r,baseQueryParameters:s,hosts:e,request:function(e,t={}){const a=e.useReadTransporter||"GET"===e.method;if(!a)return f(e,t,a);const n=()=>f(e,t);if(!0!==(t.cacheable||e.cacheable))return n();const o={request:e,requestOptions:t,transporter:{queryParameters:s,headers:r}};return u.get(o,(()=>c.get(o,(()=>c.set(o,n()).then((e=>Promise.all([c.delete(o),e])),(e=>Promise.all([c.delete(o),Promise.reject(e)]))).then((([e,t])=>t))))),{miss:e=>u.set(o,e)})},requestsCache:c,responsesCache:u}}function y({algoliaAgents:e,client:t,version:r}){const s=function(e){const t={value:`Algolia for JavaScript (${e})`,add(e){const r=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===t.value.indexOf(r)&&(t.value=`${t.value}${r}`),t}};return t}(r).add({segment:t,version:r});return e.forEach((e=>s.add(e))),s}const v="5.0.0-alpha.106",P=["de","us"];e.apiClientVersion=v,e.insightsClient=function(e,a,n,o){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!a||"string"!=typeof a)throw new Error("`apiKey` is missing.");if(n&&("string"!=typeof n||!P.includes(n)))throw new Error(`\`region\` must be one of the following: ${P.join(", ")}`);return function({appId:e,apiKey:t,authMode:r,algoliaAgents:s,region:a,...n}){const o=function(e,t,r="WithinHeaders"){const s={"x-algolia-api-key":t,"x-algolia-application-id":e};return{headers:()=>"WithinHeaders"===r?s:{},queryParameters:()=>"WithinQueryParameters"===r?s:{}}}(e,t,r),i=f({hosts:(c=a,[{url:c?"insights.{region}.algolia.io".replace("{region}",c):"insights.algolia.io",accept:"readWrite",protocol:"https"}]),...n,algoliaAgent:y({algoliaAgents:s,client:"Insights",version:v}),baseHeaders:{"content-type":"text/plain",...o.headers(),...n.baseHeaders},baseQueryParameters:{...o.queryParameters(),...n.baseQueryParameters}});var c;return{transporter:i,appId:e,clearCache:()=>Promise.all([i.requestsCache.clear(),i.responsesCache.clear()]).then((()=>{})),get _ua(){return i.algoliaAgent.value},addAlgoliaAgent(e,t){i.algoliaAgent.add({segment:e,version:t})},customDelete({path:e,parameters:t},r){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const s={method:"DELETE",path:"/1{path}".replace("{path}",e),queryParameters:t||{},headers:{}};return i.request(s,r)},customGet({path:e,parameters:t},r){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const s={method:"GET",path:"/1{path}".replace("{path}",e),queryParameters:t||{},headers:{}};return i.request(s,r)},customPost({path:e,parameters:t,body:r},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const a={method:"POST",path:"/1{path}".replace("{path}",e),queryParameters:t||{},headers:{},data:r||{}};return i.request(a,s)},customPut({path:e,parameters:t,body:r},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const a={method:"PUT",path:"/1{path}".replace("{path}",e),queryParameters:t||{},headers:{},data:r||{}};return i.request(a,s)},deleteUserToken({userToken:e},t){if(!e)throw new Error("Parameter `userToken` is required when calling `deleteUserToken`.");const r={method:"DELETE",path:"/1/usertokens/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return i.request(r,t)},pushEvents(e,t){if(!e)throw new Error("Parameter `insightsEvents` is required when calling `pushEvents`.");if(!e.events)throw new Error("Parameter `insightsEvents.events` is required when calling `pushEvents`.");const r={method:"POST",path:"/1/events",queryParameters:{},headers:{},data:e};return i.request(r,t)}}}({appId:e,apiKey:a,region:n,timeouts:{connect:1e3,read:2e3,write:3e4},requester:{send:function(e){return new Promise((t=>{const r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((t=>r.setRequestHeader(t,e.headers[t])));const s=(e,s)=>setTimeout((()=>{r.abort(),t({status:0,content:s,isTimedOut:!0})}),e),a=s(e.connectTimeout,"Connection timeout");let n;r.onreadystatechange=()=>{r.readyState>r.OPENED&&void 0===n&&(clearTimeout(a),n=s(e.responseTimeout,"Socket timeout"))},r.onerror=()=>{0===r.status&&(clearTimeout(a),clearTimeout(n),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=()=>{clearTimeout(a),clearTimeout(n),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:s(),requestsCache:s({serializable:!1}),hostsCache:r({caches:[t({key:`${v}-${e}`}),s()]}),...o})}}));
|
|
1
|
+
/*! client-insights.umd.js | 5.0.0-alpha.108 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */
|
|
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/client-insights"]={})}(this,(function(e){"use strict";function t(e){let t;const r=`algolia-client-js-${e.key}`;function s(){return void 0===t&&(t=e.localStorage||window.localStorage),t}function a(){return JSON.parse(s().getItem(r)||"{}")}function n(e){s().setItem(r,JSON.stringify(e))}return{get:(t,r,s={miss:()=>Promise.resolve()})=>Promise.resolve().then((()=>(function(){const t=e.timeToLive?1e3*e.timeToLive:null,r=a(),s=Object.fromEntries(Object.entries(r).filter((([,e])=>void 0!==e.timestamp)));if(n(s),!t)return;n(Object.fromEntries(Object.entries(s).filter((([,e])=>{const r=(new Date).getTime();return!(e.timestamp+t<r)}))))}(),a()[JSON.stringify(t)]))).then((e=>Promise.all([e?e.value:r(),void 0!==e]))).then((([e,t])=>Promise.all([e,t||s.miss(e)]))).then((([e])=>e)),set:(e,t)=>Promise.resolve().then((()=>{const n=a();return n[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:t},s().setItem(r,JSON.stringify(n)),t})),delete:e=>Promise.resolve().then((()=>{const t=a();delete t[JSON.stringify(e)],s().setItem(r,JSON.stringify(t))})),clear:()=>Promise.resolve().then((()=>{s().removeItem(r)}))}}function r(e){const t=[...e.caches],s=t.shift();return void 0===s?{get:(e,t,r={miss:()=>Promise.resolve()})=>t().then((e=>Promise.all([e,r.miss(e)]))).then((([e])=>e)),set:(e,t)=>Promise.resolve(t),delete:e=>Promise.resolve(),clear:()=>Promise.resolve()}:{get:(e,a,n={miss:()=>Promise.resolve()})=>s.get(e,a,n).catch((()=>r({caches:t}).get(e,a,n))),set:(e,a)=>s.set(e,a).catch((()=>r({caches:t}).set(e,a))),delete:e=>s.delete(e).catch((()=>r({caches:t}).delete(e))),clear:()=>s.clear().catch((()=>r({caches:t}).clear()))}}function s(e={serializable:!0}){let t={};return{get(r,s,a={miss:()=>Promise.resolve()}){const n=JSON.stringify(r);if(n in t)return Promise.resolve(e.serializable?JSON.parse(t[n]):t[n]);const o=s();return o.then((e=>a.miss(e))).then((()=>o))},set:(r,s)=>(t[JSON.stringify(r)]=e.serializable?JSON.stringify(s):s,Promise.resolve(s)),delete:e=>(delete t[JSON.stringify(e)],Promise.resolve()),clear:()=>(t={},Promise.resolve())}}const a=12e4;function n(e,t="up"){const r=Date.now();return{...e,status:t,lastUpdate:r,isUp:function(){return"up"===t||Date.now()-r>a},isTimedOut:function(){return"timed out"===t&&Date.now()-r<=a}}}function o(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var s=r.call(e,t||"default");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}function i(e,t,r){return(t=o(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}class c extends Error{constructor(e,t){super(e),i(this,"name","AlgoliaError"),t&&(this.name=t)}}class u extends c{constructor(e,t,r){super(e,r),i(this,"stackTrace",void 0),this.stackTrace=t}}class l extends u{constructor(e){super("Unreachable hosts - your application id may be incorrect. If the error persists, please create a ticket at https://support.algolia.com/ sharing steps we can use to reproduce the issue.",e,"RetryError")}}class h extends u{constructor(e,t,r,s="ApiError"){super(e,r,s),i(this,"status",void 0),this.status=t}}class m extends c{constructor(e,t){super(e,"DeserializationError"),i(this,"response",void 0),this.response=t}}class d extends h{constructor(e,t,r,s){super(e,t,s,"DetailedApiError"),i(this,"error",void 0),this.error=r}}function p(e,t,r){const s=function(e){const t=e=>"[object Object]"===Object.prototype.toString.call(e)||"[object Array]"===Object.prototype.toString.call(e);return Object.keys(e).map((r=>`${r}=${encodeURIComponent(t(e[r])?JSON.stringify(e[r]):e[r]).replaceAll("+","%20")}`)).join("&")}(r);let a=`${e.protocol}://${e.url}${e.port?`:${e.port}`:""}/${"/"===t.charAt(0)?t.substring(1):t}`;return s.length&&(a+=`?${s}`),a}function g(e){const t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return{...e,request:{...e.request,headers:{...e.request.headers,...t}}}}function f({hosts:e,hostsCache:t,baseHeaders:r,baseQueryParameters:s,algoliaAgent:a,timeouts:o,requester:i,requestsCache:c,responsesCache:u}){async function f(c,u,f=!0){const y=[],v=function(e,t){if("GET"===e.method||void 0===e.data&&void 0===t.data)return;const r=Array.isArray(e.data)?e.data:{...e.data,...t.data};return JSON.stringify(r)}(c,u),P=function(e,t,r){const s={Accept:"application/json",...e,...t,...r},a={};return Object.keys(s).forEach((e=>{const t=s[e];a[e.toLowerCase()]=t})),a}(r,c.headers,u.headers),w="GET"===c.method?{...c.data,...u.data}:{},b={...s,...c.queryParameters,...w};if(a.value&&(b["x-algolia-agent"]=a.value),u&&u.queryParameters)for(const e of Object.keys(u.queryParameters))u.queryParameters[e]&&"[object Object]"!==Object.prototype.toString.call(u.queryParameters[e])?b[e]=u.queryParameters[e].toString():b[e]=u.queryParameters[e];let T=0;const q=async(e,r)=>{const s=e.pop();if(void 0===s)throw new l(function(e){return e.map((e=>g(e)))}(y));let a=u.timeout;void 0===a&&(a=f?o.read:o.write);const w={data:v,headers:P,method:c.method,url:p(s,c.path,b),connectTimeout:r(T,o.connect),responseTimeout:r(T,a)},O=t=>{const r={request:w,response:t,host:s,triesLeft:e.length};return y.push(r),r},E=await i.send(w);if(function({isTimedOut:e,status:t}){return e||function({isTimedOut:e,status:t}){return!e&&!~~t}({isTimedOut:e,status:t})||2!=~~(t/100)&&4!=~~(t/100)}(E)){const a=O(E);return E.isTimedOut&&T++,console.log("Retryable failure",g(a)),await t.set(s,n(s,E.isTimedOut?"timed out":"down")),q(e,r)}if(function({status:e}){return 2==~~(e/100)}(E))return function(e){try{return JSON.parse(e.content)}catch(t){throw new m(t.message,e)}}(E);throw O(E),function({content:e,status:t},r){try{const s=JSON.parse(e);return"error"in s?new d(s.message,t,s.error,r):new h(s.message,t,r)}catch(e){}return new h(e,t,r)}(E,y)},O=e.filter((e=>"readWrite"===e.accept||(f?"read"===e.accept:"write"===e.accept))),E=await async function(e){const r=await Promise.all(e.map((e=>t.get(e,(()=>Promise.resolve(n(e))))))),s=r.filter((e=>e.isUp())),a=r.filter((e=>e.isTimedOut())),o=[...s,...a];return{hosts:o.length>0?o:e,getTimeout:(e,t)=>(0===a.length&&0===e?1:a.length+3+e)*t}}(O);return q([...E.hosts].reverse(),E.getTimeout)}return{hostsCache:t,requester:i,timeouts:o,algoliaAgent:a,baseHeaders:r,baseQueryParameters:s,hosts:e,request:function(e,t={}){const a=e.useReadTransporter||"GET"===e.method;if(!a)return f(e,t,a);const n=()=>f(e,t);if(!0!==(t.cacheable||e.cacheable))return n();const o={request:e,requestOptions:t,transporter:{queryParameters:s,headers:r}};return u.get(o,(()=>c.get(o,(()=>c.set(o,n()).then((e=>Promise.all([c.delete(o),e])),(e=>Promise.all([c.delete(o),Promise.reject(e)]))).then((([e,t])=>t))))),{miss:e=>u.set(o,e)})},requestsCache:c,responsesCache:u}}function y({algoliaAgents:e,client:t,version:r}){const s=function(e){const t={value:`Algolia for JavaScript (${e})`,add(e){const r=`; ${e.segment}${void 0!==e.version?` (${e.version})`:""}`;return-1===t.value.indexOf(r)&&(t.value=`${t.value}${r}`),t}};return t}(r).add({segment:t,version:r});return e.forEach((e=>s.add(e))),s}const v="5.0.0-alpha.108",P=["de","us"];e.apiClientVersion=v,e.insightsClient=function(e,a,n,o){if(!e||"string"!=typeof e)throw new Error("`appId` is missing.");if(!a||"string"!=typeof a)throw new Error("`apiKey` is missing.");if(n&&("string"!=typeof n||!P.includes(n)))throw new Error(`\`region\` must be one of the following: ${P.join(", ")}`);return function({appId:e,apiKey:t,authMode:r,algoliaAgents:s,region:a,...n}){const o=function(e,t,r="WithinHeaders"){const s={"x-algolia-api-key":t,"x-algolia-application-id":e};return{headers:()=>"WithinHeaders"===r?s:{},queryParameters:()=>"WithinQueryParameters"===r?s:{}}}(e,t,r),i=f({hosts:(c=a,[{url:c?"insights.{region}.algolia.io".replace("{region}",c):"insights.algolia.io",accept:"readWrite",protocol:"https"}]),...n,algoliaAgent:y({algoliaAgents:s,client:"Insights",version:v}),baseHeaders:{"content-type":"text/plain",...o.headers(),...n.baseHeaders},baseQueryParameters:{...o.queryParameters(),...n.baseQueryParameters}});var c;return{transporter:i,appId:e,clearCache:()=>Promise.all([i.requestsCache.clear(),i.responsesCache.clear()]).then((()=>{})),get _ua(){return i.algoliaAgent.value},addAlgoliaAgent(e,t){i.algoliaAgent.add({segment:e,version:t})},customDelete({path:e,parameters:t},r){if(!e)throw new Error("Parameter `path` is required when calling `customDelete`.");const s={method:"DELETE",path:"/1{path}".replace("{path}",e),queryParameters:t||{},headers:{}};return i.request(s,r)},customGet({path:e,parameters:t},r){if(!e)throw new Error("Parameter `path` is required when calling `customGet`.");const s={method:"GET",path:"/1{path}".replace("{path}",e),queryParameters:t||{},headers:{}};return i.request(s,r)},customPost({path:e,parameters:t,body:r},s){if(!e)throw new Error("Parameter `path` is required when calling `customPost`.");const a={method:"POST",path:"/1{path}".replace("{path}",e),queryParameters:t||{},headers:{},data:r||{}};return i.request(a,s)},customPut({path:e,parameters:t,body:r},s){if(!e)throw new Error("Parameter `path` is required when calling `customPut`.");const a={method:"PUT",path:"/1{path}".replace("{path}",e),queryParameters:t||{},headers:{},data:r||{}};return i.request(a,s)},deleteUserToken({userToken:e},t){if(!e)throw new Error("Parameter `userToken` is required when calling `deleteUserToken`.");const r={method:"DELETE",path:"/1/usertokens/{userToken}".replace("{userToken}",encodeURIComponent(e)),queryParameters:{},headers:{}};return i.request(r,t)},pushEvents(e,t){if(!e)throw new Error("Parameter `insightsEvents` is required when calling `pushEvents`.");if(!e.events)throw new Error("Parameter `insightsEvents.events` is required when calling `pushEvents`.");const r={method:"POST",path:"/1/events",queryParameters:{},headers:{},data:e};return i.request(r,t)}}}({appId:e,apiKey:a,region:n,timeouts:{connect:1e3,read:2e3,write:3e4},requester:{send:function(e){return new Promise((t=>{const r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((t=>r.setRequestHeader(t,e.headers[t])));const s=(e,s)=>setTimeout((()=>{r.abort(),t({status:0,content:s,isTimedOut:!0})}),e),a=s(e.connectTimeout,"Connection timeout");let n;r.onreadystatechange=()=>{r.readyState>r.OPENED&&void 0===n&&(clearTimeout(a),n=s(e.responseTimeout,"Socket timeout"))},r.onerror=()=>{0===r.status&&(clearTimeout(a),clearTimeout(n),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=()=>{clearTimeout(a),clearTimeout(n),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))}},algoliaAgents:[{segment:"Browser"}],authMode:"WithinQueryParameters",responsesCache:s(),requestsCache:s({serializable:!1}),hostsCache:r({caches:[t({key:`${v}-${e}`}),s()]}),...o})}}));
|
|
@@ -7,25 +7,25 @@ import type { Value } from './value';
|
|
|
7
7
|
*/
|
|
8
8
|
export type AddedToCartObjectIDs = {
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* 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.
|
|
11
11
|
*/
|
|
12
12
|
eventName: string;
|
|
13
13
|
eventType: ConversionEvent;
|
|
14
14
|
eventSubtype: AddToCartEvent;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Index name to which the event\'s items belong.
|
|
17
17
|
*/
|
|
18
18
|
index: string;
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* Object IDs of the records that are part of the event.
|
|
21
21
|
*/
|
|
22
22
|
objectIDs: string[];
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* 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/).
|
|
25
25
|
*/
|
|
26
26
|
userToken: string;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* 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/).
|
|
29
29
|
*/
|
|
30
30
|
authenticatedUserToken?: string;
|
|
31
31
|
/**
|
|
@@ -37,7 +37,7 @@ export type AddedToCartObjectIDs = {
|
|
|
37
37
|
*/
|
|
38
38
|
objectData?: ObjectData[];
|
|
39
39
|
/**
|
|
40
|
-
*
|
|
40
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
41
41
|
*/
|
|
42
42
|
timestamp?: number;
|
|
43
43
|
value?: Value;
|
|
@@ -7,13 +7,13 @@ import type { Value } from './value';
|
|
|
7
7
|
*/
|
|
8
8
|
export type AddedToCartObjectIDsAfterSearch = {
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* 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.
|
|
11
11
|
*/
|
|
12
12
|
eventName: string;
|
|
13
13
|
eventType: ConversionEvent;
|
|
14
14
|
eventSubtype: AddToCartEvent;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Index name to which the event\'s items belong.
|
|
17
17
|
*/
|
|
18
18
|
index: string;
|
|
19
19
|
/**
|
|
@@ -21,15 +21,15 @@ export type AddedToCartObjectIDsAfterSearch = {
|
|
|
21
21
|
*/
|
|
22
22
|
queryID: string;
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* Object IDs of the records that are part of the event.
|
|
25
25
|
*/
|
|
26
26
|
objectIDs: string[];
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* 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/).
|
|
29
29
|
*/
|
|
30
30
|
userToken: string;
|
|
31
31
|
/**
|
|
32
|
-
*
|
|
32
|
+
* 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/).
|
|
33
33
|
*/
|
|
34
34
|
authenticatedUserToken?: string;
|
|
35
35
|
/**
|
|
@@ -41,7 +41,7 @@ export type AddedToCartObjectIDsAfterSearch = {
|
|
|
41
41
|
*/
|
|
42
42
|
objectData?: ObjectDataAfterSearch[];
|
|
43
43
|
/**
|
|
44
|
-
*
|
|
44
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
45
45
|
*/
|
|
46
46
|
timestamp?: number;
|
|
47
47
|
value?: Value;
|
|
@@ -4,28 +4,28 @@ import type { ClickEvent } from './clickEvent';
|
|
|
4
4
|
*/
|
|
5
5
|
export type ClickedFilters = {
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* 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.
|
|
8
8
|
*/
|
|
9
9
|
eventName: string;
|
|
10
10
|
eventType: ClickEvent;
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Index name to which the event\'s items belong.
|
|
13
13
|
*/
|
|
14
14
|
index: string;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Applied facet filters. Facet filters are `facet:value` pairs. Facet values must be URL-encoded, such as, `discount:10%25`.
|
|
17
17
|
*/
|
|
18
18
|
filters: string[];
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* 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/).
|
|
21
21
|
*/
|
|
22
22
|
userToken: string;
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* 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/).
|
|
25
25
|
*/
|
|
26
26
|
authenticatedUserToken?: string;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
29
29
|
*/
|
|
30
30
|
timestamp?: number;
|
|
31
31
|
};
|
|
@@ -4,28 +4,28 @@ import type { ClickEvent } from './clickEvent';
|
|
|
4
4
|
*/
|
|
5
5
|
export type ClickedObjectIDs = {
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* 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.
|
|
8
8
|
*/
|
|
9
9
|
eventName: string;
|
|
10
10
|
eventType: ClickEvent;
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Index name to which the event\'s items belong.
|
|
13
13
|
*/
|
|
14
14
|
index: string;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Object IDs of the records that are part of the event.
|
|
17
17
|
*/
|
|
18
18
|
objectIDs: string[];
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* 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/).
|
|
21
21
|
*/
|
|
22
22
|
userToken: string;
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* 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/).
|
|
25
25
|
*/
|
|
26
26
|
authenticatedUserToken?: string;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
29
29
|
*/
|
|
30
30
|
timestamp?: number;
|
|
31
31
|
};
|
|
@@ -4,20 +4,20 @@ import type { ClickEvent } from './clickEvent';
|
|
|
4
4
|
*/
|
|
5
5
|
export type ClickedObjectIDsAfterSearch = {
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* 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.
|
|
8
8
|
*/
|
|
9
9
|
eventName: string;
|
|
10
10
|
eventType: ClickEvent;
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Index name to which the event\'s items belong.
|
|
13
13
|
*/
|
|
14
14
|
index: string;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Object IDs of the records that are part of the event.
|
|
17
17
|
*/
|
|
18
18
|
objectIDs: string[];
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* Position of the clicked item the search results. You must provide 1 `position` for each `objectID`.
|
|
21
21
|
*/
|
|
22
22
|
positions: number[];
|
|
23
23
|
/**
|
|
@@ -25,15 +25,15 @@ export type ClickedObjectIDsAfterSearch = {
|
|
|
25
25
|
*/
|
|
26
26
|
queryID: string;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* 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/).
|
|
29
29
|
*/
|
|
30
30
|
userToken: string;
|
|
31
31
|
/**
|
|
32
|
-
*
|
|
32
|
+
* 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/).
|
|
33
33
|
*/
|
|
34
34
|
authenticatedUserToken?: string;
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
36
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
37
37
|
*/
|
|
38
38
|
timestamp?: number;
|
|
39
39
|
};
|
|
@@ -1,28 +1,28 @@
|
|
|
1
1
|
import type { ConversionEvent } from './conversionEvent';
|
|
2
2
|
export type ConvertedFilters = {
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* 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.
|
|
5
5
|
*/
|
|
6
6
|
eventName: string;
|
|
7
7
|
eventType: ConversionEvent;
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
9
|
+
* Index name to which the event\'s items belong.
|
|
10
10
|
*/
|
|
11
11
|
index: string;
|
|
12
12
|
/**
|
|
13
|
-
*
|
|
13
|
+
* Applied facet filters. Facet filters are `facet:value` pairs. Facet values must be URL-encoded, such as, `discount:10%25`.
|
|
14
14
|
*/
|
|
15
15
|
filters: string[];
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* 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/).
|
|
18
18
|
*/
|
|
19
19
|
userToken: string;
|
|
20
20
|
/**
|
|
21
|
-
*
|
|
21
|
+
* 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/).
|
|
22
22
|
*/
|
|
23
23
|
authenticatedUserToken?: string;
|
|
24
24
|
/**
|
|
25
|
-
*
|
|
25
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
26
26
|
*/
|
|
27
27
|
timestamp?: number;
|
|
28
28
|
};
|
|
@@ -4,28 +4,28 @@ import type { ConversionEvent } from './conversionEvent';
|
|
|
4
4
|
*/
|
|
5
5
|
export type ConvertedObjectIDs = {
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* 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.
|
|
8
8
|
*/
|
|
9
9
|
eventName: string;
|
|
10
10
|
eventType: ConversionEvent;
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Index name to which the event\'s items belong.
|
|
13
13
|
*/
|
|
14
14
|
index: string;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Object IDs of the records that are part of the event.
|
|
17
17
|
*/
|
|
18
18
|
objectIDs: string[];
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* 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/).
|
|
21
21
|
*/
|
|
22
22
|
userToken: string;
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* 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/).
|
|
25
25
|
*/
|
|
26
26
|
authenticatedUserToken?: string;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
29
29
|
*/
|
|
30
30
|
timestamp?: number;
|
|
31
31
|
};
|
|
@@ -4,16 +4,16 @@ import type { ConversionEvent } from './conversionEvent';
|
|
|
4
4
|
*/
|
|
5
5
|
export type ConvertedObjectIDsAfterSearch = {
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
7
|
+
* 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.
|
|
8
8
|
*/
|
|
9
9
|
eventName: string;
|
|
10
10
|
eventType: ConversionEvent;
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Index name to which the event\'s items belong.
|
|
13
13
|
*/
|
|
14
14
|
index: string;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Object IDs of the records that are part of the event.
|
|
17
17
|
*/
|
|
18
18
|
objectIDs: string[];
|
|
19
19
|
/**
|
|
@@ -21,15 +21,15 @@ export type ConvertedObjectIDsAfterSearch = {
|
|
|
21
21
|
*/
|
|
22
22
|
queryID: string;
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* 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/).
|
|
25
25
|
*/
|
|
26
26
|
userToken: string;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* 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/).
|
|
29
29
|
*/
|
|
30
30
|
authenticatedUserToken?: string;
|
|
31
31
|
/**
|
|
32
|
-
*
|
|
32
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
33
33
|
*/
|
|
34
34
|
timestamp?: number;
|
|
35
35
|
};
|
package/dist/model/discount.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { EventsItems } from './eventsItems';
|
|
2
2
|
export type InsightsEvents = {
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Click and conversion events. **All** events must be valid, otherwise the API returns an error.
|
|
5
5
|
*/
|
|
6
6
|
events: EventsItems[];
|
|
7
7
|
};
|
|
@@ -3,7 +3,7 @@ import type { Price } from './price';
|
|
|
3
3
|
export type ObjectData = {
|
|
4
4
|
price?: Price;
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Quantity of a product that has been purchased or added to the cart. The total purchase value is the sum of `quantity` multiplied with the `price` for each purchased item.
|
|
7
7
|
*/
|
|
8
8
|
quantity?: number;
|
|
9
9
|
discount?: Discount;
|
|
@@ -7,7 +7,7 @@ export type ObjectDataAfterSearch = {
|
|
|
7
7
|
queryID?: string;
|
|
8
8
|
price?: Price;
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* Quantity of a product that has been purchased or added to the cart. The total purchase value is the sum of `quantity` multiplied with the `price` for each purchased item.
|
|
11
11
|
*/
|
|
12
12
|
quantity?: number;
|
|
13
13
|
discount?: Discount;
|
package/dist/model/price.d.ts
CHANGED
|
@@ -7,25 +7,25 @@ import type { Value } from './value';
|
|
|
7
7
|
*/
|
|
8
8
|
export type PurchasedObjectIDs = {
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
10
|
+
* 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.
|
|
11
11
|
*/
|
|
12
12
|
eventName: string;
|
|
13
13
|
eventType: ConversionEvent;
|
|
14
14
|
eventSubtype: PurchaseEvent;
|
|
15
15
|
/**
|
|
16
|
-
*
|
|
16
|
+
* Index name to which the event\'s items belong.
|
|
17
17
|
*/
|
|
18
18
|
index: string;
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* Object IDs of the records that are part of the event.
|
|
21
21
|
*/
|
|
22
22
|
objectIDs: string[];
|
|
23
23
|
/**
|
|
24
|
-
*
|
|
24
|
+
* 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/).
|
|
25
25
|
*/
|
|
26
26
|
userToken: string;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* 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/).
|
|
29
29
|
*/
|
|
30
30
|
authenticatedUserToken?: string;
|
|
31
31
|
/**
|
|
@@ -37,7 +37,7 @@ export type PurchasedObjectIDs = {
|
|
|
37
37
|
*/
|
|
38
38
|
objectData?: ObjectData[];
|
|
39
39
|
/**
|
|
40
|
-
*
|
|
40
|
+
* Timestamp of the event in milliseconds in [Unix epoch time](https://wikipedia.org/wiki/Unix_time). By default, the Insights API uses the time it receives an event as its timestamp.
|
|
41
41
|
*/
|
|
42
42
|
timestamp?: number;
|
|
43
43
|
value?: Value;
|