@braze/web-sdk 4.7.2 → 4.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/index.d.ts +32 -26
  2. package/package.json +1 -1
  3. package/shared-lib/braze-shared-lib.js +5 -5
  4. package/shared-lib/encoding-utils.js +1 -1
  5. package/shared-lib/event-types.js +25 -25
  6. package/shared-lib/guid.js +3 -3
  7. package/shared-lib/indexed-db-adapter.js +74 -74
  8. package/shared-lib/logger.js +18 -18
  9. package/shared-lib/supported-options.js +18 -18
  10. package/src/Card/card-manager-factory.js +2 -2
  11. package/src/Card/card-manager.js +48 -42
  12. package/src/Card/display/card-display.js +70 -67
  13. package/src/Card/log-card-click.js +1 -1
  14. package/src/Card/log-card-dismissal.js +1 -1
  15. package/src/Card/log-card-impressions.js +3 -3
  16. package/src/Card/models/banner.js +3 -2
  17. package/src/Card/models/captioned-image.js +6 -5
  18. package/src/Card/models/card.js +107 -87
  19. package/src/Card/models/classic-card.js +5 -5
  20. package/src/Card/models/control-card.js +5 -21
  21. package/src/Card/types.js +1 -0
  22. package/src/Card/util/card-factory.js +32 -32
  23. package/src/ContentCards/content-cards-provider-factory.js +3 -3
  24. package/src/ContentCards/content-cards-provider.js +283 -175
  25. package/src/ContentCards/content-cards.js +2 -2
  26. package/src/ContentCards/get-cached-content-cards.js +1 -1
  27. package/src/ContentCards/log-content-cards-displayed.js +2 -2
  28. package/src/ContentCards/request-content-cards-refresh.js +1 -1
  29. package/src/ContentCards/subscribe-to-content-cards-updates.js +9 -6
  30. package/src/ContentCards/types.js +1 -0
  31. package/src/ContentCards/ui/hide-content-cards.js +2 -2
  32. package/src/ContentCards/ui/show-content-cards.js +36 -34
  33. package/src/Core/add-sdk-metadata.js +17 -18
  34. package/src/Core/change-user.js +12 -14
  35. package/src/Core/destroy.js +1 -1
  36. package/src/Core/disable-sdk.js +8 -6
  37. package/src/Core/enable-sdk.js +4 -4
  38. package/src/Core/get-device-id.js +7 -6
  39. package/src/Core/get-user.js +1 -1
  40. package/src/Core/handle-braze-action.js +57 -40
  41. package/src/Core/is-disabled.js +2 -2
  42. package/src/Core/log-custom-event.js +22 -15
  43. package/src/Core/log-purchase.js +33 -33
  44. package/src/Core/open-session.js +17 -15
  45. package/src/Core/request-immediate-data-flush.js +4 -2
  46. package/src/Core/set-logger.js +1 -1
  47. package/src/Core/set-sdk-authentication-signature.js +5 -6
  48. package/src/Core/subscribe-to-sdk-authentication-failures.js +3 -1
  49. package/src/Core/toggle-logging.js +1 -1
  50. package/src/Core/types.js +1 -0
  51. package/src/Core/wipe-data.js +11 -10
  52. package/src/FeatureFlags/feature-flag-factory.js +6 -6
  53. package/src/FeatureFlags/feature-flag.js +17 -17
  54. package/src/FeatureFlags/feature-flags-provider-factory.js +2 -2
  55. package/src/FeatureFlags/feature-flags-provider.js +67 -65
  56. package/src/FeatureFlags/get-all-feature-flags.js +3 -3
  57. package/src/FeatureFlags/get-feature-flag.js +4 -4
  58. package/src/FeatureFlags/subscribe-to-feature-flags-updates.js +4 -1
  59. package/src/Feed/feed-provider-factory.js +8 -8
  60. package/src/Feed/feed-provider.js +57 -46
  61. package/src/Feed/feed.js +1 -1
  62. package/src/Feed/get-cached-feed.js +2 -2
  63. package/src/Feed/log-feed-displayed.js +3 -1
  64. package/src/Feed/request-feed-refresh.js +2 -2
  65. package/src/Feed/subscribe-to-feed-updates.js +2 -2
  66. package/src/Feed/types.js +1 -0
  67. package/src/Feed/ui/hide-feed.js +2 -2
  68. package/src/Feed/ui/show-feed.js +41 -37
  69. package/src/InAppMessage/display/html-message-to-html.js +125 -119
  70. package/src/InAppMessage/display/in-app-message-to-html.js +72 -69
  71. package/src/InAppMessage/display/modal-utils.js +18 -13
  72. package/src/InAppMessage/in-app-message-factory.js +9 -8
  73. package/src/InAppMessage/in-app-message-manager-factory.js +7 -7
  74. package/src/InAppMessage/in-app-message-manager.js +130 -110
  75. package/src/InAppMessage/log-in-app-message-button-click.js +10 -10
  76. package/src/InAppMessage/log-in-app-message-click.js +9 -9
  77. package/src/InAppMessage/log-in-app-message-html-click.js +10 -10
  78. package/src/InAppMessage/log-in-app-message-impression.js +5 -5
  79. package/src/InAppMessage/models/control-message.js +4 -1
  80. package/src/InAppMessage/models/full-screen-message.js +35 -37
  81. package/src/InAppMessage/models/html-message.js +34 -33
  82. package/src/InAppMessage/models/in-app-message-button.js +23 -16
  83. package/src/InAppMessage/models/in-app-message.js +147 -105
  84. package/src/InAppMessage/models/modal-message.js +34 -36
  85. package/src/InAppMessage/models/slide-up-message.js +25 -27
  86. package/src/InAppMessage/models/templated-in-app-message.js +12 -7
  87. package/src/InAppMessage/subscribe-to-in-app-message.js +2 -2
  88. package/src/InAppMessage/types.js +1 -0
  89. package/src/InAppMessage/ui/automatically-show-in-app-messages.js +4 -4
  90. package/src/InAppMessage/ui/show-in-app-message.js +95 -89
  91. package/src/InAppMessage/utils/in-app-message-utils.js +1 -0
  92. package/src/Push/is-push-blocked.js +2 -2
  93. package/src/Push/is-push-permission-granted.js +2 -2
  94. package/src/Push/is-push-supported.js +2 -2
  95. package/src/Push/push-manager-factory.js +20 -20
  96. package/src/Push/push-manager.js +193 -174
  97. package/src/Push/request-push-permission.js +4 -3
  98. package/src/Push/types.js +1 -0
  99. package/src/Push/unregister-push.js +2 -2
  100. package/src/Push/utils/push-utils.js +10 -10
  101. package/src/User/types.js +1 -0
  102. package/src/User/user-manager.js +24 -24
  103. package/src/User/user.js +117 -105
  104. package/src/common/base-feed.js +7 -7
  105. package/src/common/base-provider.js +2 -2
  106. package/src/common/constants.js +6 -0
  107. package/src/common/event-logger.js +6 -6
  108. package/src/common/feed-display.js +95 -85
  109. package/src/common/types.js +1 -0
  110. package/src/l10n/l10n-manager-factory.js +10 -10
  111. package/src/l10n/l10n-manager.js +1 -1
  112. package/src/managers/auth-manager.js +37 -34
  113. package/src/managers/braze-instance.js +209 -193
  114. package/src/managers/device-manager.js +43 -38
  115. package/src/managers/network-manager.js +119 -96
  116. package/src/managers/server-config-manager.js +68 -48
  117. package/src/managers/session-manager.js +52 -45
  118. package/src/managers/storage-manager-factory.js +29 -22
  119. package/src/managers/storage-manager.js +288 -273
  120. package/src/managers/subscription-manager.js +9 -6
  121. package/src/managers/types.js +1 -0
  122. package/src/models/backend-errors.js +5 -5
  123. package/src/models/braze-event.js +14 -8
  124. package/src/models/device.js +10 -18
  125. package/src/models/identifier.js +10 -11
  126. package/src/models/push-token.js +17 -12
  127. package/src/models/request-result.js +4 -4
  128. package/src/models/server-config.js +36 -20
  129. package/src/models/types.js +1 -0
  130. package/src/request-controller.js +176 -174
  131. package/src/triggers/models/custom-event-data.js +6 -6
  132. package/src/triggers/models/custom-event-property-data.js +9 -9
  133. package/src/triggers/models/filter-set.js +9 -9
  134. package/src/triggers/models/filter.js +64 -64
  135. package/src/triggers/models/in-app-message-click-data.js +12 -12
  136. package/src/triggers/models/purchase-data.js +3 -3
  137. package/src/triggers/models/purchase-property-data.js +9 -9
  138. package/src/triggers/models/push-click-data.js +7 -7
  139. package/src/triggers/models/trigger-condition.js +57 -57
  140. package/src/triggers/models/trigger-events.js +2 -2
  141. package/src/triggers/models/trigger.js +42 -42
  142. package/src/triggers/triggers-provider-factory.js +8 -8
  143. package/src/triggers/triggers-provider.js +173 -170
  144. package/src/types.js +1 -0
  145. package/src/ui/js/attach-css.js +3 -3
  146. package/src/ui/js/load-font-awesome.js +2 -2
  147. package/src/util/base-device-parser.js +2 -2
  148. package/src/util/braze-actions.js +20 -20
  149. package/src/util/browser-detector.js +22 -22
  150. package/src/util/client-hints-parser.js +7 -7
  151. package/src/util/code-utils.js +1 -1
  152. package/src/util/color-utils.js +2 -2
  153. package/src/util/component-utils.js +2 -2
  154. package/src/util/deprecation-utils.js +1 -1
  155. package/src/util/device-constants.js +3 -3
  156. package/src/util/dom-utils.js +7 -7
  157. package/src/util/error-utils.js +2 -0
  158. package/src/util/key-codes.js +1 -1
  159. package/src/util/net.js +11 -11
  160. package/src/util/request-header-utils.js +23 -0
  161. package/src/util/string-utils.js +1 -1
  162. package/src/util/user-agent-parser.js +21 -21
  163. package/src/util/validation-utils.js +44 -44
  164. package/src/util/window-utils.js +3 -3
@@ -1,38 +1,38 @@
1
- const Ge = {
1
+ const Ae = {
2
2
  init: function(n) {
3
- (void 0 === n && void 0 !== Ge.zg) || (Ge.zg = !!n), Ge.Eg || (Ge.Eg = !0);
3
+ (void 0 === n && void 0 !== Ae.zg) || (Ae.zg = !!n), Ae.Eg || (Ae.Eg = !0);
4
4
  },
5
5
  destroy: function() {
6
- (Ge.Eg = !1), (Ge.zg = void 0), (Ge.nd = void 0);
6
+ (Ae.Eg = !1), (Ae.zg = void 0), (Ae.sd = void 0);
7
7
  },
8
8
  setLogger: function(n) {
9
9
  "function" == typeof n
10
- ? (Ge.init(), (Ge.nd = n))
11
- : Ge.info("Ignoring setLogger call since logger is not a function");
10
+ ? (Ae.init(), (Ae.sd = n))
11
+ : Ae.info("Ignoring setLogger call since logger is not a function");
12
12
  },
13
13
  toggleLogging: function() {
14
- Ge.init(),
15
- Ge.zg
16
- ? (console.log("Disabling Braze logging"), (Ge.zg = !1))
17
- : (console.log("Enabled Braze logging"), (Ge.zg = !0));
14
+ Ae.init(),
15
+ Ae.zg
16
+ ? (console.log("Disabling Braze logging"), (Ae.zg = !1))
17
+ : (console.log("Enabled Braze logging"), (Ae.zg = !0));
18
18
  },
19
19
  info: function(n) {
20
- if (Ge.zg) {
20
+ if (Ae.zg) {
21
21
  const o = "Braze: " + n;
22
- null != Ge.nd ? Ge.nd(o) : console.log(o);
22
+ null != Ae.sd ? Ae.sd(o) : console.log(o);
23
23
  }
24
24
  },
25
25
  warn: function(n) {
26
- if (Ge.zg) {
27
- const o = "Braze SDK Warning: " + n + " (v4.7.2)";
28
- null != Ge.nd ? Ge.nd(o) : console.warn(o);
26
+ if (Ae.zg) {
27
+ const o = "Braze SDK Warning: " + n + " (v4.8.1)";
28
+ null != Ae.sd ? Ae.sd(o) : console.warn(o);
29
29
  }
30
30
  },
31
31
  error: function(n) {
32
- if (Ge.zg) {
33
- const o = "Braze SDK Error: " + n + " (v4.7.2)";
34
- null != Ge.nd ? Ge.nd(o) : console.error(o);
32
+ if (Ae.zg) {
33
+ const o = "Braze SDK Error: " + n + " (v4.8.1)";
34
+ null != Ae.sd ? Ae.sd(o) : console.error(o);
35
35
  }
36
36
  }
37
37
  };
38
- export default Ge;
38
+ export default Ae;
@@ -1,26 +1,26 @@
1
1
  export default {
2
- Yn: "allowCrawlerActivity",
3
- Xn: "baseUrl",
4
- Zn: "noCookies",
5
- ho: "devicePropertyAllowlist",
2
+ ho: "allowCrawlerActivity",
3
+ Eo: "baseUrl",
4
+ _o: "noCookies",
5
+ Io: "devicePropertyAllowlist",
6
6
  ia: "disablePushTokenMaintenance",
7
- po: "enableLogging",
8
- Eo: "enableSdkAuthentication",
7
+ Ao: "enableLogging",
8
+ So: "enableSdkAuthentication",
9
9
  ta: "manageServiceWorkerExternally",
10
- _o: "minimumIntervalBetweenTriggerActionsInSeconds",
11
- Io: "sessionTimeoutInSeconds",
12
- Ao: "appVersion",
10
+ No: "minimumIntervalBetweenTriggerActionsInSeconds",
11
+ wo: "sessionTimeoutInSeconds",
12
+ To: "appVersion",
13
13
  na: "serviceWorkerLocation",
14
14
  ra: "safariWebsitePushId",
15
- jn: "localization",
16
- ao: "contentSecurityNonce",
17
- So: "enableHtmlInAppMessages",
18
- No: "allowUserSuppliedJavascript",
19
- no: "inAppMessageZIndex",
20
- lo: "openInAppMessagesInNewTab",
15
+ Mn: "localization",
16
+ lo: "contentSecurityNonce",
17
+ Oo: "enableHtmlInAppMessages",
18
+ Co: "allowUserSuppliedJavascript",
19
+ mo: "inAppMessageZIndex",
20
+ po: "openInAppMessagesInNewTab",
21
21
  en: "openNewsFeedCardsInNewTab",
22
- Ih: "requireExplicitInAppMessageDismissal",
23
- wo: "doNotLoadFontAwesome",
24
- To: "sdkFlavor",
22
+ Lh: "requireExplicitInAppMessageDismissal",
23
+ Lo: "doNotLoadFontAwesome",
24
+ Po: "sdkFlavor",
25
25
  tn: "openCardsInNewTab"
26
26
  };
@@ -3,9 +3,9 @@ import e from "../managers/braze-instance.js";
3
3
  const n = {
4
4
  t: !1,
5
5
  i: null,
6
- m: () => (n.o(), n.i || (n.i = new a(e.l(), e.g(), e.p())), n.i),
6
+ m: () => (n.o(), n.i || (n.i = new a(e.l())), n.i),
7
7
  o: () => {
8
- n.t || (e.u(n), (n.t = !0));
8
+ n.t || (e.g(n), (n.t = !0));
9
9
  },
10
10
  destroy: () => {
11
11
  (n.i = null), (n.t = !1);
@@ -2,71 +2,77 @@ import { ControlCard } from "./models/index.js";
2
2
  import s from "../common/event-logger.js";
3
3
  import t from "../models/request-result.js";
4
4
  import r from "../../shared-lib/braze-shared-lib.js";
5
- import { STORAGE_KEYS as o } from "../managers/storage-manager.js";
5
+ import { STORAGE_KEYS as i } from "../managers/storage-manager.js";
6
6
  export default class a {
7
- constructor(s, t, r) {
8
- (this.h = s), (this.j = t), (this.v = r);
7
+ constructor(s) {
8
+ (this.u = s), (this.u = s);
9
9
  }
10
- C(n, i) {
10
+ h(n, o) {
11
11
  const e = new t();
12
- if ((n.k(), null == n.url || "" === n.url))
12
+ if ((n.p(), null == n.url || "" === n.url))
13
13
  return (
14
- r.D.info(
14
+ r.j.info(
15
15
  `Card ${n.id} has no url. Not logging click to Braze servers.`
16
16
  ),
17
17
  e
18
18
  );
19
- if (i) {
20
- const s = this.h.I(o.q.$) || {};
21
- (s[n.id] = !0), this.h.B(o.q.$, s);
19
+ if (o && n.id && this.u) {
20
+ const s = this.u.v(i.k.C) || {};
21
+ (s[n.id] = !0), this.u.D(i.k.C, s);
22
22
  }
23
- const l = this.N([n]);
23
+ const l = this.I([n]);
24
24
  if (null == l) return e;
25
- const u = i ? r.A._ : r.A.F;
26
- return s.G(u, l);
25
+ const u = o ? r.q.$ : r.q.B;
26
+ return s.N(u, l);
27
27
  }
28
- H(n) {
29
- const i = new t();
30
- if (!n.J())
28
+ A(n) {
29
+ const o = new t();
30
+ if (!n.F())
31
31
  return (
32
- r.D.info(
32
+ r.j.info(
33
33
  `Card ${n.id} refused this dismissal. Ignoring analytics event.`
34
34
  ),
35
- i
35
+ o
36
36
  );
37
- const e = this.h.I(o.q.K) || {};
38
- (e[n.id] = !0), this.h.B(o.q.K, e);
39
- const l = this.N([n]);
40
- return null == l ? i : s.G(r.A.L, l);
37
+ if (n.id && this.u) {
38
+ const s = this.u.v(i.k.G) || {};
39
+ (s[n.id] = !0), this.u.D(i.k.G, s);
40
+ }
41
+ const e = this.I([n]);
42
+ return null == e ? o : s.N(r.q.H, e);
41
43
  }
42
- M(n, i) {
44
+ J(n, o) {
43
45
  const e = new t(!0),
44
46
  l = [],
45
47
  u = [];
46
- let a;
47
- a = i ? this.h.I(o.q.O) || {} : this.h.I(o.q.P) || {};
48
+ let a = {};
49
+ this.u && (a = o ? this.u.v(i.k.K) || {} : this.u.v(i.k.L) || {});
48
50
  for (const s of n)
49
- s.R(), s instanceof ControlCard ? u.push(s) : l.push(s), (a[s.id] = !0);
50
- const c = this.N(l),
51
- h = this.N(u);
52
- if (null == c && null == h) return (e.S = !1), e;
53
- if ((i ? this.h.B(o.q.O, a) : this.h.B(o.q.P, a), null != c)) {
54
- const t = i ? r.A.T : r.A.U,
55
- n = s.G(t, c);
56
- e.V(n);
51
+ s.M(),
52
+ s instanceof ControlCard ? u.push(s) : l.push(s),
53
+ s.id && (a[s.id] = !0);
54
+ const h = this.I(l),
55
+ c = this.I(u);
56
+ if (null == h && null == c) return (e.O = !1), e;
57
+ if ((this.u && (o ? this.u.D(i.k.K, a) : this.u.D(i.k.L, a)), null != h)) {
58
+ const t = o ? r.q.P : r.q.R,
59
+ n = s.N(t, h);
60
+ e.S(n);
57
61
  }
58
- if (null != h && i) {
59
- const t = s.G(r.A.W, h);
60
- e.V(t);
62
+ if (null != c && o) {
63
+ const t = s.N(r.q.T, c);
64
+ e.S(t);
61
65
  }
62
66
  return e;
63
67
  }
64
- N(s) {
65
- let t = null;
66
- for (let r = 0; r < s.length; r++)
67
- null != s[r].id &&
68
- "" !== s[r].id &&
69
- ((t = t || {}), (t.ids = t.ids || []), t.ids.push(s[r].id));
70
- return t;
68
+ I(s) {
69
+ let t,
70
+ r = null;
71
+ for (let n = 0; n < s.length; n++)
72
+ (t = s[n].id),
73
+ null != t &&
74
+ "" !== t &&
75
+ ((r = r || {}), (r.ids = r.ids || []), r.ids.push(t));
76
+ return r;
71
77
  }
72
78
  }
@@ -1,4 +1,4 @@
1
- import { createCloseButton as i } from "../../util/component-utils.js";
1
+ import { createCloseButton as o } from "../../util/component-utils.js";
2
2
  import { detectSwipe as d, DIRECTIONS as c } from "../../util/dom-utils.js";
3
3
  import { _handleBrazeAction as m } from "../../Core/handle-braze-action.js";
4
4
  import { logCardDismissal } from "../index.js";
@@ -9,13 +9,13 @@ export function topHadImpression(t) {
9
9
  return null != t && !!t.getAttribute("data-ab-had-top-impression");
10
10
  }
11
11
  export function impressOnTop(t) {
12
- null != t && t.setAttribute("data-ab-had-top-impression", !0);
12
+ null != t && t.setAttribute("data-ab-had-top-impression", "true");
13
13
  }
14
14
  export function bottomHadImpression(t) {
15
15
  return null != t && !!t.getAttribute("data-ab-had-bottom-impression");
16
16
  }
17
17
  export function impressOnBottom(t) {
18
- null != t && t.setAttribute("data-ab-had-bottom-impression", !0);
18
+ null != t && t.setAttribute("data-ab-had-bottom-impression", "true");
19
19
  }
20
20
  export function markCardAsRead(t) {
21
21
  if (null != t) {
@@ -27,28 +27,30 @@ export function getCardId(t) {
27
27
  return t.getAttribute("data-ab-card-id");
28
28
  }
29
29
  export function _setImageAltText(t, o) {
30
- let a = "";
31
- t.title || t.description || (a = "Feed Image"), o.setAttribute("alt", a);
30
+ let e = "";
31
+ t.title || t.description || (e = "Feed Image"), o.setAttribute("alt", e);
32
32
  }
33
33
  export function setCardHeight(t, o) {
34
- const a = o.querySelectorAll(".ab-image-area");
35
- let e,
34
+ const e = o.querySelectorAll(".ab-image-area");
35
+ let a,
36
36
  n = 0;
37
- a.length > 0 && (n = a[0].offsetWidth);
37
+ e.length > 0 && (n = e[0].offsetWidth);
38
38
  for (const o of t)
39
- if (((e = o.X), e && o.imageUrl && !isNaN(o.aspectRatio))) {
39
+ if (((a = o._), a && o.imageUrl && "number" == typeof o.aspectRatio)) {
40
40
  const t = n / o.aspectRatio;
41
- t && (e.style.height = `${t}px`);
41
+ t && (a.style.height = `${t}px`);
42
42
  }
43
43
  }
44
- export function cardToHtml(t, logCardClick, o) {
44
+ export function cardToHtml(t, logCardClick, e) {
45
45
  const a = document.createElement("div");
46
- (a.className = "ab-card ab-effect-card " + t.Y),
47
- a.setAttribute("data-ab-card-id", t.id),
46
+ (a.className = "ab-card ab-effect-card " + t.U),
47
+ t.id && a.setAttribute("data-ab-card-id", t.id),
48
48
  a.setAttribute("role", "article"),
49
49
  a.setAttribute("tabindex", "0");
50
- const e = t.url && "" !== t.url,
51
- n = n => (markCardAsRead(a), e && (logCardClick(t), m(t.url, n, o)), !1);
50
+ let n = "",
51
+ i = !1;
52
+ t.url && "" !== t.url && ((n = t.url), (i = !0));
53
+ const s = o => (markCardAsRead(a), i && (logCardClick(t), m(n, e, o)), !1);
52
54
  if (t.pinned) {
53
55
  const t = document.createElement("div");
54
56
  t.className = "ab-pinned-indicator";
@@ -58,77 +60,78 @@ export function cardToHtml(t, logCardClick, o) {
58
60
  if (t.imageUrl && "" !== t.imageUrl) {
59
61
  const o = document.createElement("div");
60
62
  o.className = "ab-image-area";
61
- const i = document.createElement("img");
63
+ const e = document.createElement("img");
62
64
  if (
63
- (i.setAttribute("src", t.imageUrl),
64
- (i.onload = () => {
65
+ (e.setAttribute("src", t.imageUrl),
66
+ (e.onload = () => {
65
67
  a.style.height = "auto";
66
68
  }),
67
- _setImageAltText(t, i),
68
- o.appendChild(i),
69
+ _setImageAltText(t, e),
70
+ o.appendChild(e),
69
71
  (a.className += " with-image"),
70
- e && !t.Z)
72
+ i && !t.V)
71
73
  ) {
72
- const e = document.createElement("a");
73
- e.setAttribute("href", t.url),
74
- (e.onclick = n),
75
- e.appendChild(o),
76
- a.appendChild(e);
74
+ const t = document.createElement("a");
75
+ t.setAttribute("href", n),
76
+ (t.onclick = s),
77
+ t.appendChild(o),
78
+ a.appendChild(t);
77
79
  } else a.appendChild(o);
78
80
  }
79
- const s = document.createElement("div");
80
- if (((s.className = "ab-card-body"), t.dismissible)) {
81
- t.tt = () => logCardDismissal(t);
82
- const o = i("Dismiss Card", void 0, t.dismissCard.bind(t));
83
- a.appendChild(o),
84
- d(s, c.ot, t => {
85
- (a.className += " ab-swiped-left"), o.onclick(t);
81
+ const u = document.createElement("div");
82
+ if (((u.className = "ab-card-body"), t.dismissible)) {
83
+ t.logCardDismissal = () => logCardDismissal(t);
84
+ const e = o("Dismiss Card", void 0, t.dismissCard.bind(t));
85
+ a.appendChild(e),
86
+ d(u, c.W, t => {
87
+ (a.className += " ab-swiped-left"), e.onclick(t);
86
88
  }),
87
- d(s, c.et, t => {
88
- (a.className += " ab-swiped-right"), o.onclick(t);
89
+ d(u, c.X, t => {
90
+ (a.className += " ab-swiped-right"), e.onclick(t);
89
91
  });
90
92
  }
91
- const u = t.title && "" !== t.title;
92
- if (u) {
93
- const o = document.createElement("h1");
93
+ let p = "",
94
+ b = !1;
95
+ if ((t.title && "" !== t.title && ((p = t.title), (b = !0)), b)) {
96
+ const t = document.createElement("h1");
94
97
  if (
95
- ((o.className = "ab-title"),
96
- (o.id = r.it.nt()),
97
- a.setAttribute("aria-labelledby", o.id),
98
- e)
98
+ ((t.className = "ab-title"),
99
+ (t.id = r.Z.Y()),
100
+ a.setAttribute("aria-labelledby", t.id),
101
+ i)
99
102
  ) {
100
- const a = document.createElement("a");
101
- a.setAttribute("href", t.url),
102
- (a.onclick = n),
103
- a.appendChild(document.createTextNode(t.title)),
104
- o.appendChild(a);
105
- } else o.appendChild(document.createTextNode(t.title));
106
- s.appendChild(o);
103
+ const o = document.createElement("a");
104
+ o.setAttribute("href", n),
105
+ (o.onclick = s),
106
+ o.appendChild(document.createTextNode(p)),
107
+ t.appendChild(o);
108
+ } else t.appendChild(document.createTextNode(p));
109
+ u.appendChild(t);
107
110
  }
108
- const p = document.createElement("div");
111
+ const l = document.createElement("div");
109
112
  if (
110
- ((p.className = u ? "ab-description" : "ab-description ab-no-title"),
111
- (p.id = r.it.nt()),
112
- a.setAttribute("aria-describedby", p.id),
113
- p.appendChild(document.createTextNode(t.description)),
114
- e)
113
+ ((l.className = b ? "ab-description" : "ab-description ab-no-title"),
114
+ (l.id = r.Z.Y()),
115
+ a.setAttribute("aria-describedby", l.id),
116
+ t.description && l.appendChild(document.createTextNode(t.description)),
117
+ i)
115
118
  ) {
116
119
  const o = document.createElement("div");
117
120
  o.className = "ab-url-area";
118
- const a = document.createElement("a");
119
- a.setAttribute("href", t.url),
120
- a.appendChild(document.createTextNode(t.linkText)),
121
- (a.onclick = n),
122
- o.appendChild(a),
123
- p.appendChild(o);
121
+ const e = document.createElement("a");
122
+ e.setAttribute("href", n),
123
+ t.linkText && e.appendChild(document.createTextNode(t.linkText)),
124
+ (e.onclick = s),
125
+ o.appendChild(e),
126
+ l.appendChild(o);
124
127
  }
125
- s.appendChild(p), a.appendChild(s);
126
- const b = document.createElement("div");
128
+ u.appendChild(l), a.appendChild(u);
129
+ const f = document.createElement("div");
127
130
  return (
128
- (b.className = "ab-unread-indicator"),
129
- t.viewed && (b.className += " read"),
130
- a.appendChild(b),
131
- (t.X = a),
131
+ (f.className = "ab-unread-indicator"),
132
+ t.viewed && (f.className += " read"),
133
+ a.appendChild(f),
134
+ (t._ = a),
132
135
  a
133
136
  );
134
137
  }
@@ -6,6 +6,6 @@ import r from "../../shared-lib/braze-shared-lib.js";
6
6
  export function logCardClick(o, a) {
7
7
  return (
8
8
  !!e.rr() &&
9
- (o instanceof Card ? n.m().C(o, a).S : (r.D.error("card " + f), !1))
9
+ (o instanceof Card ? n.m().h(o, a).O : (r.j.error("card " + f), !1))
10
10
  );
11
11
  }
@@ -6,6 +6,6 @@ import r from "../../shared-lib/braze-shared-lib.js";
6
6
  export function logCardDismissal(o) {
7
7
  return (
8
8
  !!e.rr() &&
9
- (o instanceof Card ? n.m().H(o).S : (r.D.error("card " + f), !1))
9
+ (o instanceof Card ? n.m().A(o).O : (r.j.error("card " + f), !1))
10
10
  );
11
11
  }
@@ -6,8 +6,8 @@ import { MUST_BE_CARD_WARNING_SUFFIX as f } from "../common/constants.js";
6
6
  import r from "../../shared-lib/braze-shared-lib.js";
7
7
  export function logCardImpressions(o, s) {
8
8
  if (!e.rr()) return !1;
9
- if (!p(o)) return r.D.error("cards must be an array"), !1;
9
+ if (!p(o)) return r.j.error("cards must be an array"), !1;
10
10
  for (const s of o)
11
- if (!(s instanceof Card)) return r.D.error(`Each card in cards ${f}`), !1;
12
- return n.m().M(o, s).S;
11
+ if (!(s instanceof Card)) return r.j.error(`Each card in cards ${f}`), !1;
12
+ return n.m().J(o, s).O;
13
13
  }
@@ -2,8 +2,9 @@ import Card from "./card.js";
2
2
  export default class Banner extends Card {
3
3
  constructor(s, t, i, h, r, e, n, l, a, o, u, c, d, p) {
4
4
  super(s, t, null, i, null, h, r, e, n, l, a, o, u, c, d, p),
5
- (this.Y = "ab-banner"),
6
- (this.Z = !1);
5
+ (this.U = "ab-banner"),
6
+ (this.V = !1),
7
+ (this.test = !1);
7
8
  }
8
9
  ss() {
9
10
  const s = {};
@@ -2,18 +2,19 @@ import Card from "./card.js";
2
2
  export default class CaptionedImage extends Card {
3
3
  constructor(t, s, i, h, e, r, a, o, c, n, d, p, u, l, m, f) {
4
4
  super(t, s, i, h, e, r, a, o, c, n, d, p, u, l, m, f),
5
- (this.Y = "ab-captioned-image"),
6
- (this.Z = !0);
5
+ (this.U = "ab-captioned-image"),
6
+ (this.V = !0),
7
+ (this.test = !1);
7
8
  }
8
9
  ss() {
9
10
  const t = {};
10
11
  return (
11
- (t[Card.hs.ts] = Card.es.st),
12
+ (t[Card.hs.ts] = Card.es.tt),
12
13
  (t[Card.hs.ns] = this.id),
13
14
  (t[Card.hs.ls] = this.viewed),
14
- (t[Card.hs.ht] = this.title),
15
+ (t[Card.hs.st] = this.title),
15
16
  (t[Card.hs.os] = this.imageUrl),
16
- (t[Card.hs.rt] = this.description),
17
+ (t[Card.hs.it] = this.description),
17
18
  (t[Card.hs.us] = this.updated),
18
19
  (t[Card.hs.cs] = this.created),
19
20
  (t[Card.hs.ds] = this.categories),