@braze/web-sdk 6.7.1 → 6.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/index.d.ts +165 -38
  2. package/package.json +1 -1
  3. package/shared-lib/encoding-utils.js +2 -2
  4. package/shared-lib/event-types.js +16 -16
  5. package/shared-lib/indexed-db-adapter.js +65 -65
  6. package/shared-lib/logger.js +18 -18
  7. package/shared-lib/supported-options.js +1 -1
  8. package/src/Banner/banner-provider.js +67 -59
  9. package/src/Banner/banner.js +40 -19
  10. package/src/Banner/dismiss-banner.js +4 -0
  11. package/src/Banner/display/banner-to-html.js +10 -10
  12. package/src/Banner/display/destroy-banner-html.js +2 -2
  13. package/src/Banner/get-all-banners.js +6 -6
  14. package/src/Banner/get-banner.js +6 -6
  15. package/src/Banner/index.js +1 -0
  16. package/src/Banner/log-banner-click.js +7 -7
  17. package/src/Banner/log-banner-dismissal.js +7 -7
  18. package/src/Banner/log-banner-impressions.js +27 -18
  19. package/src/Banner/request-banners-refresh.js +8 -8
  20. package/src/Banner/subscribe-to-banners-updates.js +5 -5
  21. package/src/Banner/ui/insert-banner.js +8 -8
  22. package/src/Card/card-manager.js +31 -31
  23. package/src/Card/log-card-dismissal.js +2 -2
  24. package/src/Card/log-content-card-click.js +2 -2
  25. package/src/Card/log-content-card-impressions.js +4 -4
  26. package/src/Card/models/captioned-image.js +15 -15
  27. package/src/Card/models/card.js +89 -89
  28. package/src/Card/models/classic-card.js +16 -16
  29. package/src/Card/models/control-card.js +7 -7
  30. package/src/Card/models/image-only.js +13 -13
  31. package/src/Card/util/card-factory.js +32 -32
  32. package/src/ContentCards/content-cards-provider-factory.js +13 -11
  33. package/src/ContentCards/content-cards-provider.js +105 -105
  34. package/src/ContentCards/get-cached-content-cards.js +2 -2
  35. package/src/ContentCards/request-content-cards-refresh.js +2 -2
  36. package/src/ContentCards/subscribe-to-content-cards-updates.js +10 -10
  37. package/src/ContentCards/ui/show-content-cards.js +7 -7
  38. package/src/Core/add-sdk-metadata.js +2 -2
  39. package/src/Core/change-user.js +5 -5
  40. package/src/Core/destroy.js +2 -2
  41. package/src/Core/disable-sdk.js +4 -4
  42. package/src/Core/enable-sdk.js +4 -4
  43. package/src/Core/get-device-id.js +2 -2
  44. package/src/Core/handle-braze-action.js +5 -5
  45. package/src/Core/index.js +1 -0
  46. package/src/Core/log-custom-event.js +5 -5
  47. package/src/Core/log-ecommerce-event.js +29 -0
  48. package/src/Core/log-purchase.js +23 -198
  49. package/src/Core/open-session.js +10 -10
  50. package/src/Core/set-logger.js +2 -2
  51. package/src/Core/set-sdk-authentication-signature.js +1 -1
  52. package/src/Core/subscribe-to-sdk-authentication-failures.js +1 -1
  53. package/src/Core/toggle-logging.js +2 -2
  54. package/src/Core/wipe-data.js +6 -6
  55. package/src/DUST/dust-connection-core.js +1 -0
  56. package/src/DUST/dust-provider-factory.js +10 -10
  57. package/src/DUST/dust-provider.js +258 -226
  58. package/src/DUST/dust-shared-worker-code.js +1 -1
  59. package/src/DUST/dust-shared-worker-impl.js +97 -103
  60. package/src/DUST/dust-worker-bridge.js +55 -40
  61. package/src/DUST/subscribe-to-dust.js +7 -7
  62. package/src/FeatureFlags/feature-flag-factory.js +8 -8
  63. package/src/FeatureFlags/feature-flag.js +3 -3
  64. package/src/FeatureFlags/feature-flags-provider.js +21 -21
  65. package/src/FeatureFlags/log-feature-flag-impression.js +5 -5
  66. package/src/FeatureFlags/subscribe-to-feature-flags-updates.js +1 -1
  67. package/src/InAppMessage/constants.js +3 -3
  68. package/src/InAppMessage/defer-in-app-message.js +3 -3
  69. package/src/InAppMessage/display/html-message-to-html.js +4 -4
  70. package/src/InAppMessage/display/in-app-message-to-html.js +32 -32
  71. package/src/InAppMessage/display/modal-utils.js +2 -2
  72. package/src/InAppMessage/in-app-message-factory.js +36 -36
  73. package/src/InAppMessage/in-app-message-manager.js +35 -35
  74. package/src/InAppMessage/log-in-app-message-button-click.js +3 -3
  75. package/src/InAppMessage/log-in-app-message-click.js +3 -3
  76. package/src/InAppMessage/log-in-app-message-html-click.js +3 -3
  77. package/src/InAppMessage/log-in-app-message-impression.js +3 -3
  78. package/src/InAppMessage/models/control-message.js +4 -4
  79. package/src/InAppMessage/models/full-screen-message.js +9 -9
  80. package/src/InAppMessage/models/html-message.js +2 -2
  81. package/src/InAppMessage/models/in-app-message-button.js +4 -4
  82. package/src/InAppMessage/models/in-app-message.js +34 -34
  83. package/src/InAppMessage/models/modal-message.js +7 -7
  84. package/src/InAppMessage/models/slide-up-message.js +8 -8
  85. package/src/InAppMessage/ui/show-in-app-message.js +20 -20
  86. package/src/Push/push-manager.js +44 -44
  87. package/src/User/user-manager.js +19 -19
  88. package/src/User/user.js +17 -17
  89. package/src/common/base-provider.js +1 -1
  90. package/src/common/constants.js +1 -0
  91. package/src/common/content-cards-display.js +6 -6
  92. package/src/common/event-logger.js +3 -3
  93. package/src/common/properties-base.js +3 -3
  94. package/src/l10n/l10n-manager.js +2 -2
  95. package/src/managers/auth-manager.js +11 -11
  96. package/src/managers/braze-instance.js +59 -59
  97. package/src/managers/device-manager.js +9 -9
  98. package/src/managers/network-manager.js +65 -63
  99. package/src/managers/server-config-manager.js +110 -93
  100. package/src/managers/session-manager.js +20 -20
  101. package/src/managers/storage-manager-factory.js +9 -9
  102. package/src/managers/storage-manager.js +137 -137
  103. package/src/managers/subscription-manager.js +2 -2
  104. package/src/managers/utils.js +1 -1
  105. package/src/models/braze-event.js +2 -2
  106. package/src/models/identifier.js +5 -5
  107. package/src/models/push-token.js +8 -8
  108. package/src/models/request-result.js +1 -1
  109. package/src/models/server-config.js +46 -28
  110. package/src/request-controller.js +124 -124
  111. package/src/triggers/models/custom-event-data.js +4 -4
  112. package/src/triggers/models/custom-event-property-data.js +5 -5
  113. package/src/triggers/models/filter-set.js +2 -2
  114. package/src/triggers/models/filter.js +1 -1
  115. package/src/triggers/models/in-app-message-click-data.js +5 -5
  116. package/src/triggers/models/purchase-data.js +1 -1
  117. package/src/triggers/models/purchase-property-data.js +2 -2
  118. package/src/triggers/models/push-click-data.js +5 -5
  119. package/src/triggers/models/trigger-condition.js +45 -45
  120. package/src/triggers/models/trigger-events.js +3 -3
  121. package/src/triggers/models/trigger.js +30 -30
  122. package/src/triggers/triggers-provider.js +63 -63
  123. package/src/types.js +5 -1
  124. package/src/ui/js/attach-css.js +1 -1
  125. package/src/util/braze-actions.js +6 -6
  126. package/src/util/browser-detector.js +13 -13
  127. package/src/util/client-hints-parser.js +5 -5
  128. package/src/util/code-utils.js +2 -2
  129. package/src/util/deprecation-utils.js +2 -2
  130. package/src/util/dom-utils.js +8 -8
  131. package/src/util/ecommerce-event-validation.js +343 -0
  132. package/src/util/html-display-utils.js +11 -11
  133. package/src/util/iso-4217-currency-codes.js +176 -0
  134. package/src/util/net.js +4 -4
  135. package/src/util/request-header-utils.js +10 -10
  136. package/src/util/string-utils.js +2 -2
  137. package/src/util/user-agent-parser.js +15 -15
  138. package/src/util/validation-utils.js +14 -14
@@ -3,25 +3,25 @@ import Ie from "../models/braze-event.js";
3
3
  import _t from "../models/identifier.js";
4
4
  import { convertMsToSeconds as X } from "../util/date-utils.js";
5
5
  import {
6
- logger as E,
6
+ logger as b,
7
7
  Guid as V,
8
8
  EventTypes as p,
9
9
  } from "../../shared-lib/index.js";
10
10
  import { DEFAULT_MINIMUM_SESSION_TIMEOUT_IN_MS as ts } from "./constants.js";
11
11
  export default class Xt {
12
12
  constructor(s, t, i, e) {
13
- (this.C = s),
13
+ (this.j = s),
14
14
  (this.Ss = t),
15
15
  (this.h = i),
16
16
  (this.tm = e),
17
- (this.C = s),
17
+ (this.j = s),
18
18
  (this.Ss = t),
19
19
  (this.h = i);
20
- const n = this.h.gc();
20
+ const n = this.h.Bd();
21
21
  (this.im = n ? 1e3 * n : ts),
22
22
  (null == e || isNaN(e)) && (e = 1800),
23
23
  e < this.im / 1e3 &&
24
- E.info(
24
+ b.info(
25
25
  "Specified session timeout of " +
26
26
  e +
27
27
  "s is too small, using the minimum session timeout of " +
@@ -34,19 +34,19 @@ export default class Xt {
34
34
  return new Ie(this.Ss.getUserId(), p.hm, s, t.Tu, { d: X(s - t.lm) });
35
35
  }
36
36
  al() {
37
- return this.C.$u(s.Ou.um);
37
+ return this.j.$u(s.Ou.um);
38
38
  }
39
- kt() {
40
- const t = this.C.$u(s.Ou.um);
39
+ $t() {
40
+ const t = this.j.$u(s.Ou.um);
41
41
  return null == t ? null : t.Tu;
42
42
  }
43
43
  am() {
44
44
  const t = new Date().valueOf(),
45
- i = this.h.hc();
45
+ i = this.h.pd();
46
46
  if (null == i) return !1;
47
- const e = this.C.Rt(s.Tt.dm),
47
+ const e = this.j.St(s.It.dm),
48
48
  n = null == e || t - e > 1e3 * i;
49
- return n && this.C.It(s.Tt.dm, t), n;
49
+ return n && this.j.Pt(s.It.dm, t), n;
50
50
  }
51
51
  ul(s, t) {
52
52
  return null == t || null == t.fm || (!(s - t.lm < this.im) && t.fm < s);
@@ -54,26 +54,26 @@ export default class Xt {
54
54
  el() {
55
55
  const t = new Date().valueOf(),
56
56
  i = t + 1e3 * this.tm,
57
- e = this.C.$u(s.Ou.um);
57
+ e = this.j.$u(s.Ou.um);
58
58
  if (this.ul(t, e)) {
59
59
  let n = "Generating session start event with time " + t;
60
60
  if (null != e) {
61
61
  let s = e.pm;
62
62
  s - e.lm < this.im && (s = e.lm + this.im),
63
- this.C.gm(this.nm(s, e)),
63
+ this.j.gm(this.nm(s, e)),
64
64
  (n += " (old session ended " + s + ")");
65
65
  }
66
- (n += ". Will expire " + i.valueOf()), E.info(n);
66
+ (n += ". Will expire " + i.valueOf()), b.info(n);
67
67
  const r = new _t(V.de(), i);
68
- this.C.gm(new Ie(this.Ss.getUserId(), p.wm, t, r.Tu)),
69
- this.C.Iu(s.Ou.um, r);
70
- return null == this.C.Rt(s.Tt.dm) && this.C.It(s.Tt.dm, t), r.Tu;
68
+ this.j.gm(new Ie(this.Ss.getUserId(), p.wm, t, r.Tu)),
69
+ this.j.Iu(s.Ou.um, r);
70
+ return null == this.j.St(s.It.dm) && this.j.Pt(s.It.dm, t), r.Tu;
71
71
  }
72
- if (null != e) return (e.pm = t), (e.fm = i), this.C.Iu(s.Ou.um, e), e.Tu;
72
+ if (null != e) return (e.pm = t), (e.fm = i), this.j.Iu(s.Ou.um, e), e.Tu;
73
73
  }
74
74
  Sm() {
75
- const t = this.C.$u(s.Ou.um);
75
+ const t = this.j.$u(s.Ou.um);
76
76
  null != t &&
77
- (this.C.jm(s.Ou.um), this.C.gm(this.nm(new Date().valueOf(), t)));
77
+ (this.j.jm(s.Ou.um), this.j.gm(this.nm(new Date().valueOf(), t)));
78
78
  }
79
79
  }
@@ -1,14 +1,14 @@
1
1
  import ne, { STORAGE_KEYS as s } from "./storage-manager.js";
2
- import { logger as E } from "../../shared-lib/index.js";
2
+ import { logger as b } from "../../shared-lib/index.js";
3
3
  const Zt = {
4
4
  rl: function (o, t = !1, e) {
5
- const r = Zt.Sc(),
5
+ const r = Zt.oc(),
6
6
  a = Zt.sl(),
7
- n = new ne.Ec(o, r && !t, a, e);
7
+ n = new ne.tc(o, r && !t, a, e);
8
8
  let c;
9
- return (c = a ? new ne.wc(o) : new ne.Rc()), new ne(n, c);
9
+ return (c = a ? new ne.ec(o) : new ne.rc()), new ne(n, c);
10
10
  },
11
- Sc: function () {
11
+ oc: function () {
12
12
  return (
13
13
  navigator.cookieEnabled ||
14
14
  ("cookie" in document &&
@@ -22,9 +22,9 @@ const Zt = {
22
22
  try {
23
23
  if (localStorage && localStorage.getItem)
24
24
  try {
25
- localStorage.setItem(s.Tt._c, "true"),
26
- localStorage.getItem(s.Tt._c)
27
- ? (localStorage.removeItem(s.Tt._c), (o = !0))
25
+ localStorage.setItem(s.It.ac, "true"),
26
+ localStorage.getItem(s.It.ac)
27
+ ? (localStorage.removeItem(s.It.ac), (o = !0))
28
28
  : (o = !1);
29
29
  } catch (t) {
30
30
  if (
@@ -39,7 +39,7 @@ const Zt = {
39
39
  o = !0;
40
40
  }
41
41
  } catch (o) {
42
- E.info("Local Storage not supported!");
42
+ b.info("Local Storage not supported!");
43
43
  }
44
44
  return o;
45
45
  },