@braze/web-sdk 5.6.1 → 5.7.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 (121) hide show
  1. package/README.md +1 -1
  2. package/index.d.ts +14 -4
  3. package/package.json +1 -1
  4. package/shared-lib/encoding-utils.js +1 -1
  5. package/shared-lib/event-types.js +20 -20
  6. package/shared-lib/indexed-db-adapter.js +15 -15
  7. package/shared-lib/logger.js +2 -2
  8. package/shared-lib/supported-options.js +14 -14
  9. package/src/Banner/banner-provider.js +53 -50
  10. package/src/Banner/banner.js +1 -1
  11. package/src/Banner/get-all-banners.js +2 -2
  12. package/src/Banner/get-banner.js +2 -2
  13. package/src/Banner/log-banner-click.js +1 -1
  14. package/src/Banner/log-banner-impressions.js +4 -4
  15. package/src/Banner/request-banners-refresh.js +2 -2
  16. package/src/Banner/subscribe-to-banners-updates.js +5 -5
  17. package/src/Card/card-manager.js +10 -10
  18. package/src/Card/models/captioned-image.js +1 -1
  19. package/src/Card/models/card.js +3 -3
  20. package/src/Card/models/classic-card.js +1 -1
  21. package/src/Card/models/control-card.js +1 -1
  22. package/src/Card/models/image-only.js +1 -1
  23. package/src/ContentCards/content-cards-provider.js +139 -180
  24. package/src/ContentCards/get-cached-content-cards.js +1 -1
  25. package/src/ContentCards/request-content-cards-refresh.js +1 -1
  26. package/src/ContentCards/subscribe-to-content-cards-updates.js +10 -10
  27. package/src/ContentCards/ui/show-content-cards.js +3 -3
  28. package/src/Core/disable-sdk.js +3 -3
  29. package/src/Core/enable-sdk.js +3 -3
  30. package/src/Core/log-custom-event.js +3 -3
  31. package/src/Core/log-purchase.js +1 -1
  32. package/src/Core/open-session.js +6 -6
  33. package/src/Core/wipe-data.js +4 -4
  34. package/src/FeatureFlags/feature-flag.js +1 -1
  35. package/src/FeatureFlags/feature-flags-provider.js +81 -78
  36. package/src/FeatureFlags/get-all-feature-flags.js +2 -2
  37. package/src/FeatureFlags/get-feature-flag.js +2 -2
  38. package/src/FeatureFlags/log-feature-flag-impression.js +4 -4
  39. package/src/FeatureFlags/subscribe-to-feature-flags-updates.js +2 -2
  40. package/src/Feed/feed-provider.js +34 -34
  41. package/src/Feed/get-cached-feed.js +1 -1
  42. package/src/Feed/request-feed-refresh.js +1 -1
  43. package/src/Feed/subscribe-to-feed-updates.js +1 -1
  44. package/src/Feed/ui/show-feed.js +1 -1
  45. package/src/InAppMessage/defer-in-app-message.js +1 -1
  46. package/src/InAppMessage/display/html-message-to-html.js +9 -9
  47. package/src/InAppMessage/display/in-app-message-to-html.js +16 -16
  48. package/src/InAppMessage/display/modal-utils.js +5 -5
  49. package/src/InAppMessage/in-app-message-factory.js +4 -4
  50. package/src/InAppMessage/in-app-message-manager.js +115 -91
  51. package/src/InAppMessage/log-in-app-message-button-click.js +2 -2
  52. package/src/InAppMessage/log-in-app-message-click.js +2 -2
  53. package/src/InAppMessage/log-in-app-message-html-click.js +4 -4
  54. package/src/InAppMessage/log-in-app-message-impression.js +2 -2
  55. package/src/InAppMessage/models/full-screen-message.js +5 -5
  56. package/src/InAppMessage/models/html-message.js +10 -10
  57. package/src/InAppMessage/models/in-app-message-button.js +5 -5
  58. package/src/InAppMessage/models/in-app-message.js +37 -37
  59. package/src/InAppMessage/models/modal-message.js +5 -5
  60. package/src/InAppMessage/models/slide-up-message.js +7 -7
  61. package/src/InAppMessage/models/templated-in-app-message.js +8 -8
  62. package/src/InAppMessage/subscribe-to-in-app-message.js +1 -1
  63. package/src/InAppMessage/ui/automatically-show-in-app-messages.js +3 -3
  64. package/src/InAppMessage/ui/show-in-app-message.js +14 -14
  65. package/src/Push/is-push-blocked.js +2 -2
  66. package/src/Push/is-push-permission-granted.js +2 -2
  67. package/src/Push/is-push-supported.js +2 -2
  68. package/src/Push/push-manager.js +88 -88
  69. package/src/Push/utils/push-utils.js +12 -12
  70. package/src/User/user-manager.js +10 -10
  71. package/src/User/user.js +46 -34
  72. package/src/common/constants.js +1 -1
  73. package/src/common/event-logger.js +3 -3
  74. package/src/common/feed-display.js +10 -10
  75. package/src/l10n/l10n-manager.js +1 -1
  76. package/src/managers/auth-manager.js +10 -10
  77. package/src/managers/braze-instance.js +110 -110
  78. package/src/managers/device-manager.js +17 -17
  79. package/src/managers/network-manager.js +180 -143
  80. package/src/managers/server-config-manager.js +65 -65
  81. package/src/managers/session-manager.js +22 -22
  82. package/src/managers/storage-manager-factory.js +9 -9
  83. package/src/managers/storage-manager.js +134 -134
  84. package/src/managers/subscription-manager.js +8 -8
  85. package/src/managers/utils.js +1 -1
  86. package/src/models/backend-errors.js +5 -5
  87. package/src/models/braze-event.js +8 -8
  88. package/src/models/device.js +2 -2
  89. package/src/models/identifier.js +10 -10
  90. package/src/models/push-token.js +8 -8
  91. package/src/models/server-config.js +31 -31
  92. package/src/request-controller.js +158 -146
  93. package/src/triggers/models/custom-event-data.js +5 -5
  94. package/src/triggers/models/custom-event-property-data.js +6 -6
  95. package/src/triggers/models/filter-set.js +6 -6
  96. package/src/triggers/models/filter.js +16 -16
  97. package/src/triggers/models/in-app-message-click-data.js +2 -2
  98. package/src/triggers/models/purchase-data.js +2 -2
  99. package/src/triggers/models/purchase-property-data.js +4 -4
  100. package/src/triggers/models/push-click-data.js +2 -2
  101. package/src/triggers/models/trigger-condition.js +36 -36
  102. package/src/triggers/models/trigger-events.js +1 -1
  103. package/src/triggers/models/trigger.js +11 -11
  104. package/src/triggers/triggers-provider-factory.js +2 -2
  105. package/src/triggers/triggers-provider.js +37 -37
  106. package/src/ui/js/attach-css.js +1 -1
  107. package/src/ui/js/iam-css.js +1 -1
  108. package/src/ui/js/load-font-awesome.js +1 -1
  109. package/src/util/base-device-parser.js +1 -1
  110. package/src/util/braze-actions.js +4 -4
  111. package/src/util/browser-detector.js +6 -6
  112. package/src/util/client-hints-parser.js +1 -1
  113. package/src/util/component-utils.js +2 -2
  114. package/src/util/dom-utils.js +3 -3
  115. package/src/util/html-display-utils.js +1 -0
  116. package/src/util/key-codes.js +1 -1
  117. package/src/util/net.js +22 -23
  118. package/src/util/request-header-utils.js +23 -20
  119. package/src/util/user-agent-parser.js +1 -1
  120. package/src/util/validation-utils.js +14 -14
  121. package/src/util/window-utils.js +2 -2
@@ -3,32 +3,32 @@ import u from "./subscription-manager.js";
3
3
  import Jt from "../models/server-config.js";
4
4
  import c from "../common/event-logger.js";
5
5
  import { EventTypes as d } from "../../shared-lib/index.js";
6
- export default class Dt {
6
+ export default class Mt {
7
7
  constructor(t) {
8
8
  (this.C = t),
9
9
  (this.C = t),
10
- (this.al = new u()),
11
10
  (this.hl = new u()),
12
11
  (this.ul = new u()),
13
12
  (this.cl = new u()),
14
- (this.ml = null),
15
- (this.gl = null);
16
- }
17
- bl() {
18
- if (null == this.gl) {
19
- const e = this.C.ps(t.bs.fl);
20
- this.gl = null != e ? Jt.Qn(e) : new Jt();
13
+ (this.ml = new u()),
14
+ (this.gl = null),
15
+ (this.bl = null);
16
+ }
17
+ fl() {
18
+ if (null == this.bl) {
19
+ const e = this.C.vs(t.gs.dl);
20
+ this.bl = null != e ? Jt.Yn(e) : new Jt();
21
21
  }
22
- return this.gl;
22
+ return this.bl;
23
23
  }
24
- Es() {
25
- return this.bl().dl;
24
+ Us() {
25
+ return this.fl().Rl;
26
26
  }
27
- Rl(e) {
27
+ Cl(e) {
28
28
  if (null != e && null != e.config) {
29
29
  const i = e.config;
30
- if (i.time > this.bl().dl) {
31
- const e = (t) => (null == t ? this.bl().Cl : t),
30
+ if (i.time > this.fl().Rl) {
31
+ const e = (t) => (null == t ? this.fl().El : t),
32
32
  s = new Jt(
33
33
  i.time,
34
34
  i.events_blacklist,
@@ -42,95 +42,95 @@ export default class Dt {
42
42
  i.banners,
43
43
  );
44
44
  let n = !1;
45
- null != s.El && this.Gn() !== s.El && (n = !0);
45
+ null != s.vl && this.Cn() !== s.vl && (n = !0);
46
46
  let r = !1;
47
- null != s.vl.enabled && this.Xi() !== s.vl.enabled && (r = !0);
47
+ null != s.wl.enabled && this.Fi() !== s.wl.enabled && (r = !0);
48
48
  let l = !1;
49
- null != s.Gi.enabled && this.Qi() !== s.Gi.enabled && (l = !0);
49
+ null != s.je.enabled && this.De() !== s.je.enabled && (l = !0);
50
50
  let a = !1;
51
51
  null != s.banners.enabled &&
52
- this.Us() !== s.banners.enabled &&
52
+ this.Ds() !== s.banners.enabled &&
53
53
  (a = !0),
54
- (this.gl = s),
55
- this.C.js(t.bs.fl, s.Bs()),
56
- n && this.al.X(),
57
- r && this.hl.X(),
58
- l && this.ul.X(),
59
- a && this.cl.X();
54
+ (this.bl = s),
55
+ this.C.Bs(t.gs.dl, s.bs()),
56
+ n && this.hl.X(),
57
+ r && this.ul.X(),
58
+ l && this.cl.X(),
59
+ a && this.ml.X();
60
60
  }
61
61
  }
62
62
  }
63
- Hn(t) {
64
- const e = this.al.Ns(t);
65
- return this.ml && this.al.removeSubscription(this.ml), (this.ml = e), e;
63
+ Fn(t) {
64
+ const e = this.hl.Fs(t);
65
+ return this.gl && this.hl.removeSubscription(this.gl), (this.gl = e), e;
66
66
  }
67
- $i(t) {
68
- return this.hl.Ns(t);
67
+ qi(t) {
68
+ return this.ul.Fs(t);
69
69
  }
70
- Re(t) {
71
- return this.ul.Ns(t);
70
+ Me(t) {
71
+ return this.cl.Fs(t);
72
72
  }
73
73
  A(t) {
74
- return this.cl.Ns(t);
74
+ return this.ml.Fs(t);
75
75
  }
76
76
  ge(t) {
77
- return -1 !== this.bl().wl.indexOf(t);
77
+ return -1 !== this.fl().yl.indexOf(t);
78
78
  }
79
79
  hu(t) {
80
- return -1 !== this.bl().yl.indexOf(t);
80
+ return -1 !== this.fl().Ll.indexOf(t);
81
81
  }
82
82
  Dr(t) {
83
- return -1 !== this.bl().Ll.indexOf(t);
83
+ return -1 !== this.fl().Bl.indexOf(t);
84
84
  }
85
- Bl() {
86
- return this.bl().Fl;
85
+ Fl() {
86
+ return this.fl().Tl;
87
87
  }
88
- Gn() {
89
- return this.bl().El;
88
+ Cn() {
89
+ return this.fl().vl;
90
90
  }
91
- Xi() {
92
- return this.bl().vl.enabled || !1;
91
+ Fi() {
92
+ return this.fl().wl.enabled || !1;
93
93
  }
94
- Tl() {
95
- const t = this.bl().Cl;
94
+ jl() {
95
+ const t = this.fl().El;
96
96
  return !(!t || null == t.enabled) && t.enabled;
97
97
  }
98
- il() {
99
- if (!this.Tl()) return -1;
100
- const t = this.bl().Cl;
98
+ sl() {
99
+ if (!this.jl()) return -1;
100
+ const t = this.fl().El;
101
101
  return null == t.capacity || t.capacity < 10 ? -1 : t.capacity;
102
102
  }
103
- sl() {
104
- if (!this.Tl()) return -1;
105
- const t = this.bl().Cl;
103
+ rl() {
104
+ if (!this.jl()) return -1;
105
+ const t = this.fl().El;
106
106
  return null == t.refill_rate || t.refill_rate <= 0 ? -1 : t.refill_rate;
107
107
  }
108
- jl(t) {
109
- const e = this.bl().Cl.endpoint_overrides;
108
+ Nl(t) {
109
+ const e = this.fl().El.endpoint_overrides;
110
110
  return null == e ? null : e[t];
111
111
  }
112
- rl(t) {
113
- const e = this.jl(t);
112
+ ol(t) {
113
+ const e = this.Nl(t);
114
114
  return null == e || isNaN(e.capacity) || e.capacity <= 0 ? -1 : e.capacity;
115
115
  }
116
- ol(t) {
117
- const e = this.jl(t);
116
+ al(t) {
117
+ const e = this.Nl(t);
118
118
  return null == e || isNaN(e.refill_rate) || e.refill_rate <= 0
119
119
  ? -1
120
120
  : e.refill_rate;
121
121
  }
122
- Qi() {
123
- return this.bl().Gi.enabled && null == this.Se()
124
- ? (c.ds(d.Li, { e: "Missing feature flag refresh_rate_limit." }), !1)
125
- : this.bl().Gi.enabled || !1;
122
+ De() {
123
+ return this.fl().je.enabled && null == this.Xe()
124
+ ? (c.cs(d.Tu, { e: "Missing feature flag refresh_rate_limit." }), !1)
125
+ : this.fl().je.enabled || !1;
126
126
  }
127
- Se() {
128
- return this.bl().Gi.refresh_rate_limit;
127
+ Xe() {
128
+ return this.fl().je.refresh_rate_limit;
129
129
  }
130
- Us() {
131
- return this.bl().banners.enabled || !1;
130
+ Ds() {
131
+ return this.fl().banners.enabled || !1;
132
132
  }
133
133
  ee() {
134
- return this.bl().banners.max_placements || 0;
134
+ return this.fl().banners.max_placements || 0;
135
135
  }
136
136
  }
@@ -7,7 +7,7 @@ import {
7
7
  Guid as G,
8
8
  EventTypes as d,
9
9
  } from "../../shared-lib/index.js";
10
- export default class Mt {
10
+ export default class Wt {
11
11
  constructor(s, t, i, e) {
12
12
  (this.C = s),
13
13
  (this.As = t),
@@ -30,46 +30,46 @@ export default class Mt {
30
30
  (this.Sl = e);
31
31
  }
32
32
  Dl(s, t) {
33
- return new ve(this.As.getUserId(), d.Gl, s, t.eu, { d: L(s - t.Nl) });
33
+ return new ve(this.As.getUserId(), d.Gl, s, t.eu, { d: L(s - t.zl) });
34
34
  }
35
35
  Ss() {
36
- const s = this.C.tu(t.iu.zl);
36
+ const s = this.C.tu(t.iu.Hl);
37
37
  return null == s ? null : s.eu;
38
38
  }
39
- Hl() {
39
+ Wl() {
40
40
  const s = new Date().valueOf(),
41
- i = this.B.Bl();
41
+ i = this.B.Fl();
42
42
  if (null == i) return !1;
43
- const e = this.C.ps(t.bs.Wl),
43
+ const e = this.C.vs(t.gs.kl),
44
44
  n = null == e || s - e > 1e3 * i;
45
- return n && this.C.js(t.bs.Wl, s), n;
45
+ return n && this.C.Bs(t.gs.kl, s), n;
46
46
  }
47
- kl(s, t) {
48
- return null == t || null == t.ql || (!(s - t.Nl < this.xl) && t.ql < s);
47
+ ql(s, t) {
48
+ return null == t || null == t.Al || (!(s - t.zl < this.xl) && t.Al < s);
49
49
  }
50
- qo() {
50
+ Eo() {
51
51
  const s = new Date().valueOf(),
52
52
  i = s + 1e3 * this.Sl,
53
- e = this.C.tu(t.iu.zl);
54
- if (this.kl(s, e)) {
53
+ e = this.C.tu(t.iu.Hl);
54
+ if (this.ql(s, e)) {
55
55
  let n = "Generating session start event with time " + s;
56
56
  if (null != e) {
57
- let s = e.Al;
58
- s - e.Nl < this.xl && (s = e.Nl + this.xl),
59
- this.C.Il(this.Dl(s, e)),
57
+ let s = e.Il;
58
+ s - e.zl < this.xl && (s = e.zl + this.xl),
59
+ this.C.Jl(this.Dl(s, e)),
60
60
  (n += " (old session ended " + s + ")");
61
61
  }
62
62
  (n += ". Will expire " + i.valueOf()), N.info(n);
63
63
  const o = new _t(G.Rt(), i);
64
- this.C.Il(new ve(this.As.getUserId(), d.Jl, s, o.eu)),
65
- this.C.uu(t.iu.zl, o);
66
- return null == this.C.ps(t.bs.Wl) && this.C.js(t.bs.Wl, s), o.eu;
64
+ this.C.Jl(new ve(this.As.getUserId(), d.Kl, s, o.eu)),
65
+ this.C.uu(t.iu.Hl, o);
66
+ return null == this.C.vs(t.gs.kl) && this.C.Bs(t.gs.kl, s), o.eu;
67
67
  }
68
- if (null != e) return (e.Al = s), (e.ql = i), this.C.uu(t.iu.zl, e), e.eu;
68
+ if (null != e) return (e.Il = s), (e.Al = i), this.C.uu(t.iu.Hl, e), e.eu;
69
69
  }
70
- Kl() {
71
- const s = this.C.tu(t.iu.zl);
70
+ Ml() {
71
+ const s = this.C.tu(t.iu.Hl);
72
72
  null != s &&
73
- (this.C.Ml(t.iu.zl), this.C.Il(this.Dl(new Date().valueOf(), s)));
73
+ (this.C.Ol(t.iu.Hl), this.C.Jl(this.Dl(new Date().valueOf(), s)));
74
74
  }
75
75
  }
@@ -1,14 +1,14 @@
1
1
  import ne, { STORAGE_KEYS as t } from "./storage-manager.js";
2
2
  import { logger as N } from "../../shared-lib/index.js";
3
- const Wt = {
4
- La: function (e, o = !1) {
3
+ const Bt = {
4
+ Va: function (e, o = !1) {
5
5
  let r = !1;
6
6
  try {
7
7
  if (localStorage && localStorage.getItem)
8
8
  try {
9
- localStorage.setItem(t.bs.ec, "true"),
10
- localStorage.getItem(t.bs.ec) &&
11
- (localStorage.removeItem(t.bs.ec), (r = !0));
9
+ localStorage.setItem(t.gs.ec, "true"),
10
+ localStorage.getItem(t.gs.ec) &&
11
+ (localStorage.removeItem(t.gs.ec), (r = !0));
12
12
  } catch (e) {
13
13
  if (
14
14
  !(
@@ -24,10 +24,10 @@ const Wt = {
24
24
  } catch (e) {
25
25
  N.info("Local Storage not supported!");
26
26
  }
27
- const a = Wt.oc(),
28
- n = new ne.tc(e, a && !o, r);
27
+ const a = Bt.oc(),
28
+ n = new ne.rc(e, a && !o, r);
29
29
  let c;
30
- return (c = r ? new ne.rc(e) : new ne.ac()), new ne(n, c);
30
+ return (c = r ? new ne.ac(e) : new ne.nc()), new ne(n, c);
31
31
  },
32
32
  oc: function () {
33
33
  return (
@@ -39,4 +39,4 @@ const Wt = {
39
39
  );
40
40
  },
41
41
  };
42
- export default Wt;
42
+ export default Bt;