@mx-cartographer/experiences 9.1.4-alpha.al1 → 9.1.4-alpha.al3

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.
@@ -1,6 +1,6 @@
1
1
  import u from "react";
2
2
  import { getUnixTime as r } from "date-fns/getUnixTime";
3
- import { A as l } from "./GlobalCopyApi-Tz10hezK.mjs";
3
+ import { A as l } from "./GlobalCopyApi-CijHTy9S.mjs";
4
4
  const A = (s, i) => {
5
5
  const { session: t } = i, o = Object.values(i).reduce((e, n) => t && n?.onAnalyticEvent && typeof n?.onAnalyticEvent == "function" ? [...e, n.onAnalyticEvent] : e, []), a = [...s, ...o];
6
6
  return u.useMemo(() => (e) => {
@@ -51,4 +51,4 @@ export {
51
51
  d as b,
52
52
  A as u
53
53
  };
54
- //# sourceMappingURL=Analytics-BJDUP2qI.mjs.map
54
+ //# sourceMappingURL=Analytics-BPbO9yeu.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Analytics-BJDUP2qI.mjs","sources":["../src/common/hooks/useCombineEvents.tsx","../src/common/utils/Analytics.ts"],"sourcesContent":["import React from 'react'\n\nimport { AnalyticEventFunction, AnalyticPageviewFunction } from '../../core'\n\nexport const useCombineEvents = (events: AnalyticEventFunction[], store: any) => {\n const { session } = store\n\n const storeEvents = Object.values(store).reduce((acc: AnalyticEventFunction[], curr: any) => {\n if (session && curr?.onAnalyticEvent && typeof curr?.onAnalyticEvent === 'function') {\n return [...acc, curr.onAnalyticEvent]\n }\n\n return acc\n }, [])\n const eventFunctions = [...events, ...storeEvents]\n\n return React.useMemo(() => {\n return (event: string) => {\n eventFunctions.forEach((e) => {\n if (!session) {\n e(event)\n } else {\n e(event, session)\n }\n })\n }\n }, [events, session])\n}\n\nexport const useCombinePageviews = (pages: AnalyticPageviewFunction[], store: any) => {\n const { session } = store\n\n const storeEvents = Object.values(store).reduce((acc: AnalyticPageviewFunction[], curr: any) => {\n if (session && curr?.onAnalyticPageView && typeof curr?.onAnalyticPageView === 'function') {\n return [...acc, curr.onAnalyticPageView]\n }\n\n return acc\n }, [])\n const eventFunctions = [...pages, ...storeEvents]\n\n return React.useMemo(() => {\n return (event: string) => {\n eventFunctions.forEach((e) => {\n if (!session) {\n e(event)\n } else {\n e(event, session)\n }\n })\n }\n }, [pages, session])\n}\n","import { getUnixTime } from 'date-fns/getUnixTime'\n\nimport { AnalyticsApi } from '../../core/api'\nimport { BasicAnalyticsEvent, AnalyticsSession, BasicAnalyticsPageview } from '../../core'\n\nexport const analyticsSession = async (\n endpoint: string,\n token: string,\n version = '1.0.0',\n featureName = 'Experiences',\n) => {\n const analyticsApi = new AnalyticsApi(endpoint, token)\n const { analytics_session } = (await analyticsApi.initializeAnalyticsSession(\n version,\n featureName,\n )) as {\n analytics_session: AnalyticsSession\n }\n\n const host = window.location.hostname\n\n return {\n sendAnalyticEvent: async (event: BasicAnalyticsEvent) => {\n return await analyticsApi.sendAnalyticEvent({\n analytics_event: {\n ...event,\n app_version: 'widgets-v2',\n created_at: getUnixTime(new Date()).toString(),\n host,\n name: event?.label || '',\n session_id: analytics_session.guid,\n user_agent: navigator.userAgent || '',\n version: 2,\n },\n })\n },\n sendAnalyticsPageview: async (pageview: BasicAnalyticsPageview) => {\n return await analyticsApi.sendAnalyticsPageview({\n analytics_pageview: {\n ...pageview,\n app_version: 'widgets-v2',\n created_at: getUnixTime(new Date()).toString(),\n host,\n name: pageview.name,\n session_id: analytics_session.guid,\n user_agent: navigator.userAgent || '',\n },\n })\n },\n }\n}\n"],"names":["useCombineEvents","events","store","session","storeEvents","acc","curr","eventFunctions","React","event","e","useCombinePageviews","pages","analyticsSession","endpoint","token","version","featureName","analyticsApi","AnalyticsApi","analytics_session","host","getUnixTime","pageview"],"mappings":";;;AAIO,MAAMA,IAAmB,CAACC,GAAiCC,MAAe;AAC/E,QAAM,EAAE,SAAAC,MAAYD,GAEdE,IAAc,OAAO,OAAOF,CAAK,EAAE,OAAO,CAACG,GAA8BC,MACzEH,KAAWG,GAAM,mBAAmB,OAAOA,GAAM,mBAAoB,aAChE,CAAC,GAAGD,GAAKC,EAAK,eAAe,IAG/BD,GACN,CAAA,CAAE,GACCE,IAAiB,CAAC,GAAGN,GAAQ,GAAGG,CAAW;AAEjD,SAAOI,EAAM,QAAQ,MACZ,CAACC,MAAkB;AACxB,IAAAF,EAAe,QAAQ,CAACG,MAAM;AAC5B,MAAKP,IAGHO,EAAED,GAAON,CAAO,IAFhBO,EAAED,CAAK;AAAA,IAIX,CAAC;AAAA,EACH,GACC,CAACR,GAAQE,CAAO,CAAC;AACtB,GAEaQ,IAAsB,CAACC,GAAmCV,MAAe;AACpF,QAAM,EAAE,SAAAC,MAAYD,GAEdE,IAAc,OAAO,OAAOF,CAAK,EAAE,OAAO,CAACG,GAAiCC,MAC5EH,KAAWG,GAAM,sBAAsB,OAAOA,GAAM,sBAAuB,aACtE,CAAC,GAAGD,GAAKC,EAAK,kBAAkB,IAGlCD,GACN,CAAA,CAAE,GACCE,IAAiB,CAAC,GAAGK,GAAO,GAAGR,CAAW;AAEhD,SAAOI,EAAM,QAAQ,MACZ,CAACC,MAAkB;AACxB,IAAAF,EAAe,QAAQ,CAACG,MAAM;AAC5B,MAAKP,IAGHO,EAAED,GAAON,CAAO,IAFhBO,EAAED,CAAK;AAAA,IAIX,CAAC;AAAA,EACH,GACC,CAACG,GAAOT,CAAO,CAAC;AACrB,GC/CaU,IAAmB,OAC9BC,GACAC,GACAC,IAAU,SACVC,IAAc,kBACX;AACH,QAAMC,IAAe,IAAIC,EAAaL,GAAUC,CAAK,GAC/C,EAAE,mBAAAK,EAAA,IAAuB,MAAMF,EAAa;AAAA,IAChDF;AAAA,IACAC;AAAA,EAAA,GAKII,IAAO,OAAO,SAAS;AAE7B,SAAO;AAAA,IACL,mBAAmB,OAAOZ,MACjB,MAAMS,EAAa,kBAAkB;AAAA,MAC1C,iBAAiB;AAAA,QACf,GAAGT;AAAA,QACH,aAAa;AAAA,QACb,YAAYa,EAAY,oBAAI,KAAA,CAAM,EAAE,SAAA;AAAA,QACpC,MAAAD;AAAA,QACA,MAAMZ,GAAO,SAAS;AAAA,QACtB,YAAYW,EAAkB;AAAA,QAC9B,YAAY,UAAU,aAAa;AAAA,QACnC,SAAS;AAAA,MAAA;AAAA,IACX,CACD;AAAA,IAEH,uBAAuB,OAAOG,MACrB,MAAML,EAAa,sBAAsB;AAAA,MAC9C,oBAAoB;AAAA,QAClB,GAAGK;AAAA,QACH,aAAa;AAAA,QACb,YAAYD,EAAY,oBAAI,KAAA,CAAM,EAAE,SAAA;AAAA,QACpC,MAAAD;AAAA,QACA,MAAME,EAAS;AAAA,QACf,YAAYH,EAAkB;AAAA,QAC9B,YAAY,UAAU,aAAa;AAAA,MAAA;AAAA,IACrC,CACD;AAAA,EACH;AAEJ;"}
1
+ {"version":3,"file":"Analytics-BPbO9yeu.mjs","sources":["../src/common/hooks/useCombineEvents.tsx","../src/common/utils/Analytics.ts"],"sourcesContent":["import React from 'react'\n\nimport { AnalyticEventFunction, AnalyticPageviewFunction } from '../../core'\n\nexport const useCombineEvents = (events: AnalyticEventFunction[], store: any) => {\n const { session } = store\n\n const storeEvents = Object.values(store).reduce((acc: AnalyticEventFunction[], curr: any) => {\n if (session && curr?.onAnalyticEvent && typeof curr?.onAnalyticEvent === 'function') {\n return [...acc, curr.onAnalyticEvent]\n }\n\n return acc\n }, [])\n const eventFunctions = [...events, ...storeEvents]\n\n return React.useMemo(() => {\n return (event: string) => {\n eventFunctions.forEach((e) => {\n if (!session) {\n e(event)\n } else {\n e(event, session)\n }\n })\n }\n }, [events, session])\n}\n\nexport const useCombinePageviews = (pages: AnalyticPageviewFunction[], store: any) => {\n const { session } = store\n\n const storeEvents = Object.values(store).reduce((acc: AnalyticPageviewFunction[], curr: any) => {\n if (session && curr?.onAnalyticPageView && typeof curr?.onAnalyticPageView === 'function') {\n return [...acc, curr.onAnalyticPageView]\n }\n\n return acc\n }, [])\n const eventFunctions = [...pages, ...storeEvents]\n\n return React.useMemo(() => {\n return (event: string) => {\n eventFunctions.forEach((e) => {\n if (!session) {\n e(event)\n } else {\n e(event, session)\n }\n })\n }\n }, [pages, session])\n}\n","import { getUnixTime } from 'date-fns/getUnixTime'\n\nimport { AnalyticsApi } from '../../core/api'\nimport { BasicAnalyticsEvent, AnalyticsSession, BasicAnalyticsPageview } from '../../core'\n\nexport const analyticsSession = async (\n endpoint: string,\n token: string,\n version = '1.0.0',\n featureName = 'Experiences',\n) => {\n const analyticsApi = new AnalyticsApi(endpoint, token)\n const { analytics_session } = (await analyticsApi.initializeAnalyticsSession(\n version,\n featureName,\n )) as {\n analytics_session: AnalyticsSession\n }\n\n const host = window.location.hostname\n\n return {\n sendAnalyticEvent: async (event: BasicAnalyticsEvent) => {\n return await analyticsApi.sendAnalyticEvent({\n analytics_event: {\n ...event,\n app_version: 'widgets-v2',\n created_at: getUnixTime(new Date()).toString(),\n host,\n name: event?.label || '',\n session_id: analytics_session.guid,\n user_agent: navigator.userAgent || '',\n version: 2,\n },\n })\n },\n sendAnalyticsPageview: async (pageview: BasicAnalyticsPageview) => {\n return await analyticsApi.sendAnalyticsPageview({\n analytics_pageview: {\n ...pageview,\n app_version: 'widgets-v2',\n created_at: getUnixTime(new Date()).toString(),\n host,\n name: pageview.name,\n session_id: analytics_session.guid,\n user_agent: navigator.userAgent || '',\n },\n })\n },\n }\n}\n"],"names":["useCombineEvents","events","store","session","storeEvents","acc","curr","eventFunctions","React","event","e","useCombinePageviews","pages","analyticsSession","endpoint","token","version","featureName","analyticsApi","AnalyticsApi","analytics_session","host","getUnixTime","pageview"],"mappings":";;;AAIO,MAAMA,IAAmB,CAACC,GAAiCC,MAAe;AAC/E,QAAM,EAAE,SAAAC,MAAYD,GAEdE,IAAc,OAAO,OAAOF,CAAK,EAAE,OAAO,CAACG,GAA8BC,MACzEH,KAAWG,GAAM,mBAAmB,OAAOA,GAAM,mBAAoB,aAChE,CAAC,GAAGD,GAAKC,EAAK,eAAe,IAG/BD,GACN,CAAA,CAAE,GACCE,IAAiB,CAAC,GAAGN,GAAQ,GAAGG,CAAW;AAEjD,SAAOI,EAAM,QAAQ,MACZ,CAACC,MAAkB;AACxB,IAAAF,EAAe,QAAQ,CAACG,MAAM;AAC5B,MAAKP,IAGHO,EAAED,GAAON,CAAO,IAFhBO,EAAED,CAAK;AAAA,IAIX,CAAC;AAAA,EACH,GACC,CAACR,GAAQE,CAAO,CAAC;AACtB,GAEaQ,IAAsB,CAACC,GAAmCV,MAAe;AACpF,QAAM,EAAE,SAAAC,MAAYD,GAEdE,IAAc,OAAO,OAAOF,CAAK,EAAE,OAAO,CAACG,GAAiCC,MAC5EH,KAAWG,GAAM,sBAAsB,OAAOA,GAAM,sBAAuB,aACtE,CAAC,GAAGD,GAAKC,EAAK,kBAAkB,IAGlCD,GACN,CAAA,CAAE,GACCE,IAAiB,CAAC,GAAGK,GAAO,GAAGR,CAAW;AAEhD,SAAOI,EAAM,QAAQ,MACZ,CAACC,MAAkB;AACxB,IAAAF,EAAe,QAAQ,CAACG,MAAM;AAC5B,MAAKP,IAGHO,EAAED,GAAON,CAAO,IAFhBO,EAAED,CAAK;AAAA,IAIX,CAAC;AAAA,EACH,GACC,CAACG,GAAOT,CAAO,CAAC;AACrB,GC/CaU,IAAmB,OAC9BC,GACAC,GACAC,IAAU,SACVC,IAAc,kBACX;AACH,QAAMC,IAAe,IAAIC,EAAaL,GAAUC,CAAK,GAC/C,EAAE,mBAAAK,EAAA,IAAuB,MAAMF,EAAa;AAAA,IAChDF;AAAA,IACAC;AAAA,EAAA,GAKII,IAAO,OAAO,SAAS;AAE7B,SAAO;AAAA,IACL,mBAAmB,OAAOZ,MACjB,MAAMS,EAAa,kBAAkB;AAAA,MAC1C,iBAAiB;AAAA,QACf,GAAGT;AAAA,QACH,aAAa;AAAA,QACb,YAAYa,EAAY,oBAAI,KAAA,CAAM,EAAE,SAAA;AAAA,QACpC,MAAAD;AAAA,QACA,MAAMZ,GAAO,SAAS;AAAA,QACtB,YAAYW,EAAkB;AAAA,QAC9B,YAAY,UAAU,aAAa;AAAA,QACnC,SAAS;AAAA,MAAA;AAAA,IACX,CACD;AAAA,IAEH,uBAAuB,OAAOG,MACrB,MAAML,EAAa,sBAAsB;AAAA,MAC9C,oBAAoB;AAAA,QAClB,GAAGK;AAAA,QACH,aAAa;AAAA,QACb,YAAYD,EAAY,oBAAI,KAAA,CAAM,EAAE,SAAA;AAAA,QACpC,MAAAD;AAAA,QACA,MAAME,EAAS;AAAA,QACf,YAAYH,EAAkB;AAAA,QAC9B,YAAY,UAAU,aAAa;AAAA,MAAA;AAAA,IACrC,CACD;AAAA,EACH;AAEJ;"}
@@ -1,20 +1,20 @@
1
1
  import h from "bowser";
2
- import { A as o } from "./ApiEndpoints-DXwIYNUV.mjs";
3
- import { g as p } from "./Localization-DnoVyBNK.mjs";
4
- class r {
2
+ import { A as a } from "./ApiEndpoints-DXwIYNUV.mjs";
3
+ import { g as u } from "./Localization-DnoVyBNK.mjs";
4
+ class o {
5
5
  endpoint = "/";
6
6
  headers;
7
7
  onCaptureException;
8
8
  onError;
9
- constructor(e, n, t, i, s) {
9
+ constructor(e, n, t, r, s) {
10
10
  this.endpoint = e;
11
11
  const c = {
12
12
  Accept: "application/json",
13
- "Accept-Language": p(),
13
+ "Accept-Language": u(),
14
14
  "Content-Type": "application/json",
15
15
  "MD-Session-Token": n
16
16
  };
17
- this.headers = t || c, this.onCaptureException = s, this.onError = i;
17
+ this.headers = t || c, this.onCaptureException = s, this.onError = r;
18
18
  }
19
19
  get = async (e) => {
20
20
  const n = {
@@ -22,39 +22,39 @@ class r {
22
22
  headers: this.headers
23
23
  };
24
24
  return fetch(`${this.endpoint}${e}`, n).then((t) => {
25
- if (t.ok)
26
- return t.text();
27
- throw t;
25
+ if (!t.ok)
26
+ throw new Error(`ApiGetRequestError: ${t.status} ${t.statusText}`);
27
+ return t.text();
28
28
  }).then((t) => t.length ? JSON.parse(t) : {}).then((t) => t).catch((t) => {
29
- throw this.onCaptureException?.(t, { method: "GET", url: e }), this.onError?.(t, void 0, "ApiGetRequestError"), t;
29
+ throw this.onError?.(t, void 0, "ApiGetRequestError"), t;
30
30
  });
31
31
  };
32
32
  post = async (e, n) => {
33
- const t = n ? JSON.stringify(n) : void 0, i = {
33
+ const t = n ? JSON.stringify(n) : void 0, r = {
34
34
  method: "POST",
35
35
  headers: this.headers,
36
36
  body: t
37
37
  };
38
- return fetch(`${this.endpoint}${e}`, i).then((s) => {
38
+ return fetch(`${this.endpoint}${e}`, r).then((s) => {
39
39
  if (!s.ok)
40
- throw s;
40
+ throw new Error(`ApiPostRequestError: ${s.status} ${s.statusText}`);
41
41
  return s.text();
42
42
  }).then((s) => s.length ? JSON.parse(s) : {}).then((s) => s).catch((s) => {
43
- throw this.onCaptureException?.(s, { method: "POST", url: e }), s;
43
+ throw s;
44
44
  });
45
45
  };
46
46
  put = async (e, n) => {
47
- const t = JSON.stringify(n), i = {
47
+ const t = JSON.stringify(n), r = {
48
48
  method: "PUT",
49
49
  headers: this.headers,
50
50
  body: t
51
51
  };
52
- return fetch(`${this.endpoint}${e}`, i).then((s) => {
53
- if (s.ok)
54
- return s.text();
55
- throw new Error(`${s.status}`);
52
+ return fetch(`${this.endpoint}${e}`, r).then((s) => {
53
+ if (!s.ok)
54
+ throw new Error(`ApiPutRequestError: ${s.status} ${s.statusText}`);
55
+ return s.text();
56
56
  }).then((s) => s.length ? JSON.parse(s) : {}).then((s) => s).catch((s) => {
57
- throw this.onCaptureException?.(s, { method: "PUT", url: e }), window?.app?.config?.type === "pulse" && this.onError?.(s.message), s.message;
57
+ throw window?.app?.config?.type === "pulse" && this.onError?.(s.message), s;
58
58
  });
59
59
  };
60
60
  delete = async (e) => {
@@ -62,69 +62,69 @@ class r {
62
62
  method: "DELETE",
63
63
  headers: this.headers
64
64
  };
65
- return fetch(`${this.endpoint}${e}`, n).then((t) => t.ok ? t.text() : t.text().then((i) => {
66
- throw new Error(i);
65
+ return fetch(`${this.endpoint}${e}`, n).then((t) => t.ok ? t.text() : t.text().then((r) => {
66
+ throw new Error(r);
67
67
  })).then((t) => t.length ? JSON.parse(t) : {}).then((t) => t).catch((t) => {
68
- throw this.onCaptureException?.(t, { method: "DELETE", url: e }), t;
68
+ throw t;
69
69
  });
70
70
  };
71
71
  }
72
72
  class E {
73
73
  fetchInstance;
74
- constructor(e, n, t, i) {
75
- this.fetchInstance = new r(e, n, void 0, t, i);
74
+ constructor(e, n, t, r) {
75
+ this.fetchInstance = new o(e, n, void 0, t, r);
76
76
  }
77
77
  initializeAnalyticsSession = async (e, n) => {
78
- const t = h.getParser(window.navigator.userAgent), { analytics_session: i } = await this.fetchInstance.post(o.ANALYTICS_SESSION, {
78
+ const t = h.getParser(window.navigator.userAgent), { analytics_session: r } = await this.fetchInstance.post(a.ANALYTICS_SESSION, {
79
79
  browser_name: t.getBrowserName() || "Unknown",
80
80
  browser_version: t.getBrowserVersion() || "0.0.0",
81
81
  is_first_visit: !1,
82
82
  product_name: "Individual Widget",
83
83
  product_version: e
84
84
  });
85
- return i ? (this.fetchInstance.post(o.ANALYTICS_FEATURE_VISITS, {
85
+ return r ? (this.fetchInstance.post(a.ANALYTICS_FEATURE_VISITS, {
86
86
  feature_visit: {
87
- analytics_session_guid: i.guid,
87
+ analytics_session_guid: r.guid,
88
88
  feature_name: n || "Experiences",
89
- is_first_visit: i.is_first_visit
89
+ is_first_visit: r.is_first_visit
90
90
  }
91
- }), { analytics_session: i }) : { analytics_session: null };
91
+ }), { analytics_session: r }) : { analytics_session: null };
92
92
  };
93
- sendAnalyticEvent = async (e) => this.fetchInstance.post(o.ANALYTICS_EVENTS, e).catch((n) => {
93
+ sendAnalyticEvent = async (e) => this.fetchInstance.post(a.ANALYTICS_EVENTS, e).catch((n) => {
94
94
  throw n;
95
95
  });
96
- sendAnalyticsPageview = async (e) => this.fetchInstance.post(o.ANALYTICS_PAGEVIEWS, e).catch((n) => {
96
+ sendAnalyticsPageview = async (e) => this.fetchInstance.post(a.ANALYTICS_PAGEVIEWS, e).catch((n) => {
97
97
  throw n;
98
98
  });
99
99
  }
100
- class g {
100
+ class l {
101
101
  fetchInstance;
102
- constructor(e, n, t, i) {
103
- this.fetchInstance = new r(e, n, void 0, t, i);
102
+ constructor(e, n, t, r) {
103
+ this.fetchInstance = new o(e, n, void 0, t, r);
104
104
  }
105
105
  getBeats = async (e, n) => {
106
106
  const t = `page=${e || 1}&per_page=${n || 5}`;
107
- return this.fetchInstance.get(`${o.BEATS}?${t}`).then((i) => i.beats);
107
+ return this.fetchInstance.get(`${a.BEATS}?${t}`).then((r) => r.beats);
108
108
  };
109
109
  getBeatsWithAssociatedTransaction = async (e) => {
110
110
  let n = "has_associated_transaction_guid=true";
111
- return n += e ? `&from_date=${e}` : "", this.fetchInstance.get(`${o.BEATS}?${n}`).then((t) => t.beats);
111
+ return n += e ? `&from_date=${e}` : "", this.fetchInstance.get(`${a.BEATS}?${n}`).then((t) => t.beats);
112
112
  };
113
- getOffers = async () => this.fetchInstance.get(`${o.OFFERS}/${o.PULSE_COMMUNICATIONS}`).then((e) => e.pulse_communications);
114
- updateBeat = async (e) => this.fetchInstance.put(`${o.BEATS}/${e.guid}`, e).then((n) => n.beat);
115
- updateOffer = async (e) => this.fetchInstance.put(`${o.OFFERS}/${e.guid}`, e).then((n) => n.beat);
113
+ getOffers = async () => this.fetchInstance.get(`${a.OFFERS}/${a.PULSE_COMMUNICATIONS}`).then((e) => e.pulse_communications);
114
+ updateBeat = async (e) => this.fetchInstance.put(`${a.BEATS}/${e.guid}`, e).then((n) => n.beat);
115
+ updateOffer = async (e) => this.fetchInstance.put(`${a.OFFERS}/${e.guid}`, e).then((n) => n.beat);
116
116
  }
117
- class l {
117
+ class A {
118
118
  fetchInstance;
119
- constructor(e, n, t, i) {
120
- this.fetchInstance = new r(e, n, void 0, t, i);
119
+ constructor(e, n, t, r) {
120
+ this.fetchInstance = new o(e, n, void 0, t, r);
121
121
  }
122
- getGlobalCopy = async (e, n) => this.fetchInstance.post(`${o.LOCALIZED_CONTENT}/${e}`, { translation_key: n }).then((t) => t);
122
+ getGlobalCopy = async (e, n) => this.fetchInstance.post(`${a.LOCALIZED_CONTENT}/${e}`, { translation_key: n }).then((t) => t);
123
123
  }
124
124
  export {
125
125
  E as A,
126
- g as B,
127
- r as F,
128
- l as G
126
+ l as B,
127
+ o as F,
128
+ A as G
129
129
  };
130
- //# sourceMappingURL=GlobalCopyApi-Tz10hezK.mjs.map
130
+ //# sourceMappingURL=GlobalCopyApi-CijHTy9S.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GlobalCopyApi-CijHTy9S.mjs","sources":["../src/core/utils/Fetch.ts","../src/core/api/AnalyticsApi.ts","../src/core/api/BeatApi.ts","../src/core/api/GlobalCopyApi.ts"],"sourcesContent":["import { type GlobalCaptureException, type GlobalErrorHandler } from '../types'\nimport { getLocale } from './Localization'\n\nexport class Fetch {\n endpoint = '/'\n headers: Record<string, string>\n onCaptureException?: GlobalCaptureException\n onError?: GlobalErrorHandler\n\n constructor(\n endpoint: string,\n token: string,\n headers?: Record<string, string>,\n onError?: GlobalErrorHandler,\n onCaptureException?: GlobalCaptureException,\n ) {\n this.endpoint = endpoint\n const defaultHeaders = {\n Accept: 'application/json',\n 'Accept-Language': getLocale(),\n 'Content-Type': 'application/json',\n 'MD-Session-Token': token,\n }\n this.headers = headers || defaultHeaders\n this.onCaptureException = onCaptureException\n this.onError = onError\n }\n\n get = async (url: string) => {\n const options = {\n method: 'GET',\n headers: this.headers,\n }\n\n return fetch(`${this.endpoint}${url}`, options)\n .then((response) => {\n if (!response.ok) {\n throw new Error(`ApiGetRequestError: ${response.status} ${response.statusText}`)\n }\n return response.text()\n })\n .then((text) => (text.length ? JSON.parse(text) : {}))\n .then((data) => data)\n .catch((err) => {\n this.onError?.(err, undefined, 'ApiGetRequestError')\n throw err\n })\n }\n\n post = async (url: string, data?: any) => {\n const body = data ? JSON.stringify(data) : undefined\n const options = {\n method: 'POST',\n headers: this.headers,\n body,\n }\n\n return fetch(`${this.endpoint}${url}`, options)\n .then((response) => {\n if (!response.ok) {\n throw new Error(`ApiPostRequestError: ${response.status} ${response.statusText}`)\n }\n\n return response.text()\n })\n .then((text) => (text.length ? JSON.parse(text) : {}))\n .then((data) => data)\n .catch((error) => {\n throw error\n })\n }\n\n put = async (url: string, data: any) => {\n const body = JSON.stringify(data)\n const options = {\n method: 'PUT',\n headers: this.headers,\n body,\n }\n\n return fetch(`${this.endpoint}${url}`, options)\n .then((response) => {\n if (!response.ok) {\n throw new Error(`ApiPutRequestError: ${response.status} ${response.statusText}`)\n }\n return response.text()\n })\n .then((text) => (text.length ? JSON.parse(text) : {}))\n .then((data) => data)\n .catch((err) => {\n if (window?.app?.config?.type === 'pulse') {\n this.onError?.(err.message)\n }\n throw err\n })\n }\n\n delete = async (url: string) => {\n const options = {\n method: 'DELETE',\n headers: this.headers,\n }\n\n return fetch(`${this.endpoint}${url}`, options)\n .then((response) => {\n if (response.ok) {\n return response.text()\n } else {\n return response.text().then((text) => {\n throw new Error(text)\n })\n }\n })\n .then((text) => (text.length ? JSON.parse(text) : {}))\n .then((data) => data)\n .catch((err) => {\n throw err\n })\n }\n}\n\nexport default Fetch\n","import Bowser from 'bowser'\n\nimport { Fetch } from '../utils'\nimport { ApiEndpoints } from '../constants'\nimport type { AnalyticsEvent, GlobalCaptureException, GlobalErrorHandler } from '..'\n\nexport class AnalyticsApi {\n fetchInstance: Fetch\n\n constructor(\n endpoint: string,\n token: string,\n onError?: GlobalErrorHandler,\n onCaptureException?: GlobalCaptureException,\n ) {\n this.fetchInstance = new Fetch(endpoint, token, undefined, onError, onCaptureException)\n }\n\n initializeAnalyticsSession = async (version: string, featureName?: string) => {\n const browser = Bowser.getParser(window.navigator.userAgent)\n\n const { analytics_session } = await this.fetchInstance.post(ApiEndpoints.ANALYTICS_SESSION, {\n browser_name: browser.getBrowserName() || 'Unknown',\n browser_version: browser.getBrowserVersion() || '0.0.0',\n is_first_visit: false,\n product_name: 'Individual Widget',\n product_version: version,\n })\n if (!analytics_session) {\n return { analytics_session: null }\n }\n this.fetchInstance.post(ApiEndpoints.ANALYTICS_FEATURE_VISITS, {\n feature_visit: {\n analytics_session_guid: analytics_session.guid,\n feature_name: featureName ? featureName : 'Experiences',\n is_first_visit: analytics_session.is_first_visit,\n },\n })\n return { analytics_session }\n }\n\n sendAnalyticEvent = async (event: AnalyticsEvent) => {\n return this.fetchInstance.post(ApiEndpoints.ANALYTICS_EVENTS, event).catch((err) => {\n throw err\n })\n }\n\n sendAnalyticsPageview = async (event: any) => {\n return this.fetchInstance.post(ApiEndpoints.ANALYTICS_PAGEVIEWS, event).catch((err) => {\n throw err\n })\n }\n}\n","import { Fetch } from '../utils'\nimport { ApiEndpoints } from '../constants'\nimport type { Beat, GlobalCaptureException, GlobalErrorHandler } from '..'\n\nexport class BeatApi {\n fetchInstance: Fetch\n\n constructor(\n endpoint: string,\n token: string,\n onError?: GlobalErrorHandler,\n onCaptureException?: GlobalCaptureException,\n ) {\n this.fetchInstance = new Fetch(endpoint, token, undefined, onError, onCaptureException)\n }\n\n getBeats = async (pageNum?: number, perPage?: number) => {\n const beatParams = `page=${pageNum ? pageNum : 1}&per_page=${perPage ? perPage : 5}`\n\n return this.fetchInstance.get(`${ApiEndpoints.BEATS}?${beatParams}`).then((data) => data.beats)\n }\n\n getBeatsWithAssociatedTransaction = async (fromDate?: string) => {\n let beatParams = 'has_associated_transaction_guid=true'\n beatParams += fromDate ? `&from_date=${fromDate}` : ''\n\n return this.fetchInstance.get(`${ApiEndpoints.BEATS}?${beatParams}`).then((data) => data.beats)\n }\n\n getOffers = async () => {\n return this.fetchInstance\n .get(`${ApiEndpoints.OFFERS}/${ApiEndpoints.PULSE_COMMUNICATIONS}`)\n .then((data) => data.pulse_communications)\n }\n\n updateBeat = async (beat: Beat) => {\n return this.fetchInstance\n .put(`${ApiEndpoints.BEATS}/${beat.guid}`, beat)\n .then((data) => data.beat)\n }\n\n updateOffer = async (beat: Beat) => {\n return this.fetchInstance\n .put(`${ApiEndpoints.OFFERS}/${beat.guid}`, beat)\n .then((data) => data.beat)\n }\n}\n","import { Fetch } from '../utils'\nimport { ApiEndpoints } from '../constants'\nimport type { GlobalCaptureException, GlobalErrorHandler } from '..'\n\nexport class GlobalCopyApi {\n fetchInstance: Fetch\n\n constructor(\n endpoint: string,\n token: string,\n onError?: GlobalErrorHandler,\n onCaptureException?: GlobalCaptureException,\n ) {\n this.fetchInstance = new Fetch(endpoint, token, undefined, onError, onCaptureException)\n }\n\n getGlobalCopy = async (namespace: string, translationKey: string) => {\n return this.fetchInstance\n .post(`${ApiEndpoints.LOCALIZED_CONTENT}/${namespace}`, { translation_key: translationKey })\n .then((data) => data)\n }\n}\n"],"names":["Fetch","endpoint","token","headers","onError","onCaptureException","defaultHeaders","getLocale","url","options","response","text","data","err","body","error","AnalyticsApi","version","featureName","browser","Bowser","analytics_session","ApiEndpoints","event","BeatApi","pageNum","perPage","beatParams","fromDate","beat","GlobalCopyApi","namespace","translationKey"],"mappings":"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"}