@braze/web-sdk 6.0.0 → 6.1.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 (147) hide show
  1. package/index.d.ts +103 -33
  2. package/package.json +1 -1
  3. package/shared-lib/encoding-utils.js +1 -1
  4. package/shared-lib/event-types.js +22 -22
  5. package/shared-lib/guid.js +3 -3
  6. package/shared-lib/indexed-db-adapter.js +19 -19
  7. package/shared-lib/logger.js +18 -18
  8. package/shared-lib/supported-options.js +15 -15
  9. package/src/Banner/banner-factory.js +2 -1
  10. package/src/Banner/banner-provider-factory.js +7 -7
  11. package/src/Banner/banner-provider.js +92 -98
  12. package/src/Banner/banner.js +21 -18
  13. package/src/Banner/display/banner-to-html.js +9 -9
  14. package/src/Banner/display/destroy-banner-html.js +2 -2
  15. package/src/Banner/display/detect-banner-impressions.js +2 -2
  16. package/src/Banner/get-all-banners.js +5 -5
  17. package/src/Banner/get-banner.js +7 -7
  18. package/src/Banner/log-banner-click.js +7 -7
  19. package/src/Banner/log-banner-impressions.js +9 -9
  20. package/src/Banner/request-banners-refresh.js +16 -20
  21. package/src/Banner/subscribe-to-banners-updates.js +7 -7
  22. package/src/Banner/ui/insert-banner.js +6 -6
  23. package/src/Card/card-manager-factory.js +7 -7
  24. package/src/Card/card-manager.js +35 -35
  25. package/src/Card/display/card-display.js +11 -11
  26. package/src/Card/log-card-dismissal.js +4 -4
  27. package/src/Card/log-content-card-click.js +4 -4
  28. package/src/Card/log-content-card-impressions.js +6 -6
  29. package/src/Card/models/captioned-image.js +21 -21
  30. package/src/Card/models/card.js +68 -68
  31. package/src/Card/models/classic-card.js +21 -21
  32. package/src/Card/models/control-card.js +11 -11
  33. package/src/Card/models/image-only.js +18 -18
  34. package/src/Card/util/card-factory.js +35 -35
  35. package/src/ContentCards/content-cards-provider-factory.js +13 -13
  36. package/src/ContentCards/content-cards-provider.js +136 -136
  37. package/src/ContentCards/get-cached-content-cards.js +2 -2
  38. package/src/ContentCards/request-content-cards-refresh.js +2 -2
  39. package/src/ContentCards/subscribe-to-content-cards-updates.js +6 -6
  40. package/src/ContentCards/ui/show-content-cards.js +7 -7
  41. package/src/Core/add-sdk-metadata.js +3 -3
  42. package/src/Core/change-user.js +7 -7
  43. package/src/Core/destroy.js +2 -2
  44. package/src/Core/disable-sdk.js +8 -8
  45. package/src/Core/enable-sdk.js +6 -6
  46. package/src/Core/get-device-id.js +4 -4
  47. package/src/Core/handle-braze-action.js +5 -5
  48. package/src/Core/is-disabled.js +1 -1
  49. package/src/Core/log-custom-event.js +10 -10
  50. package/src/Core/log-purchase.js +13 -13
  51. package/src/Core/open-session.js +10 -10
  52. package/src/Core/set-logger.js +2 -2
  53. package/src/Core/set-sdk-authentication-signature.js +2 -2
  54. package/src/Core/toggle-logging.js +2 -2
  55. package/src/Core/wipe-data.js +7 -7
  56. package/src/FeatureFlags/feature-flag-factory.js +10 -10
  57. package/src/FeatureFlags/feature-flag.js +20 -71
  58. package/src/FeatureFlags/feature-flags-provider-factory.js +12 -12
  59. package/src/FeatureFlags/feature-flags-provider.js +87 -87
  60. package/src/FeatureFlags/get-all-feature-flags.js +4 -4
  61. package/src/FeatureFlags/get-feature-flag.js +4 -4
  62. package/src/FeatureFlags/log-feature-flag-impression.js +9 -9
  63. package/src/FeatureFlags/refresh-feature-flags.js +2 -2
  64. package/src/FeatureFlags/subscribe-to-feature-flags-updates.js +4 -4
  65. package/src/InAppMessage/defer-in-app-message.js +4 -4
  66. package/src/InAppMessage/display/html-message-to-html.js +10 -10
  67. package/src/InAppMessage/display/in-app-message-to-html.js +28 -28
  68. package/src/InAppMessage/display/modal-utils.js +7 -7
  69. package/src/InAppMessage/in-app-message-factory.js +15 -15
  70. package/src/InAppMessage/in-app-message-manager-factory.js +5 -5
  71. package/src/InAppMessage/in-app-message-manager.js +100 -100
  72. package/src/InAppMessage/log-in-app-message-button-click.js +9 -9
  73. package/src/InAppMessage/log-in-app-message-click.js +6 -6
  74. package/src/InAppMessage/log-in-app-message-html-click.js +9 -9
  75. package/src/InAppMessage/log-in-app-message-impression.js +4 -4
  76. package/src/InAppMessage/models/control-message.js +4 -4
  77. package/src/InAppMessage/models/full-screen-message.js +35 -35
  78. package/src/InAppMessage/models/html-message.js +21 -21
  79. package/src/InAppMessage/models/in-app-message-button.js +5 -5
  80. package/src/InAppMessage/models/in-app-message.js +75 -75
  81. package/src/InAppMessage/models/modal-message.js +34 -34
  82. package/src/InAppMessage/models/slide-up-message.js +31 -31
  83. package/src/InAppMessage/models/templated-in-app-message.js +8 -8
  84. package/src/InAppMessage/subscribe-to-in-app-message.js +1 -1
  85. package/src/InAppMessage/ui/automatically-show-in-app-messages.js +3 -3
  86. package/src/InAppMessage/ui/show-in-app-message.js +19 -19
  87. package/src/Push/push-manager-factory.js +9 -9
  88. package/src/Push/push-manager.js +118 -118
  89. package/src/Push/utils/push-utils.js +9 -9
  90. package/src/User/user-manager.js +20 -20
  91. package/src/User/user.js +44 -45
  92. package/src/common/base-provider.js +1 -1
  93. package/src/common/content-cards-display.js +18 -18
  94. package/src/common/event-logger.js +10 -10
  95. package/src/common/properties-base.js +56 -0
  96. package/src/l10n/l10n-manager-factory.js +7 -7
  97. package/src/l10n/l10n-manager.js +4 -4
  98. package/src/managers/auth-manager.js +32 -32
  99. package/src/managers/braze-instance.js +143 -143
  100. package/src/managers/device-manager.js +22 -22
  101. package/src/managers/network-manager.js +172 -168
  102. package/src/managers/server-config-manager.js +73 -73
  103. package/src/managers/session-manager.js +40 -40
  104. package/src/managers/storage-manager-factory.js +6 -6
  105. package/src/managers/storage-manager.js +97 -97
  106. package/src/managers/subscription-manager.js +12 -12
  107. package/src/managers/utils.js +1 -1
  108. package/src/models/backend-errors.js +5 -5
  109. package/src/models/braze-event.js +5 -5
  110. package/src/models/device.js +2 -2
  111. package/src/models/identifier.js +12 -12
  112. package/src/models/push-token.js +13 -13
  113. package/src/models/request-result.js +4 -4
  114. package/src/models/server-config.js +31 -31
  115. package/src/request-controller.js +159 -159
  116. package/src/triggers/models/custom-event-data.js +1 -1
  117. package/src/triggers/models/custom-event-property-data.js +2 -2
  118. package/src/triggers/models/filter-set.js +6 -6
  119. package/src/triggers/models/filter.js +26 -26
  120. package/src/triggers/models/in-app-message-click-data.js +1 -1
  121. package/src/triggers/models/purchase-data.js +1 -1
  122. package/src/triggers/models/purchase-property-data.js +2 -2
  123. package/src/triggers/models/push-click-data.js +1 -1
  124. package/src/triggers/models/trigger-condition.js +37 -37
  125. package/src/triggers/models/trigger-events.js +3 -3
  126. package/src/triggers/models/trigger.js +16 -16
  127. package/src/triggers/triggers-provider-factory.js +12 -12
  128. package/src/triggers/triggers-provider.js +61 -61
  129. package/src/ui/js/attach-css.js +1 -1
  130. package/src/ui/js/load-font-awesome.js +1 -1
  131. package/src/util/base-device-parser.js +1 -1
  132. package/src/util/braze-actions.js +6 -6
  133. package/src/util/browser-detector.js +20 -13
  134. package/src/util/client-hints-parser.js +6 -6
  135. package/src/util/code-utils.js +2 -2
  136. package/src/util/component-utils.js +1 -1
  137. package/src/util/deprecation-utils.js +2 -2
  138. package/src/util/device-constants.js +4 -4
  139. package/src/util/dom-utils.js +9 -9
  140. package/src/util/html-display-utils.js +7 -7
  141. package/src/util/key-codes.js +1 -1
  142. package/src/util/net.js +12 -12
  143. package/src/util/request-header-utils.js +22 -22
  144. package/src/util/string-utils.js +2 -2
  145. package/src/util/user-agent-parser.js +16 -16
  146. package/src/util/validation-utils.js +12 -12
  147. package/src/util/window-utils.js +2 -2
@@ -2,34 +2,34 @@ import { STORAGE_KEYS as s } from "./storage-manager.js";
2
2
  import u from "./subscription-manager.js";
3
3
  import ni from "../models/server-config.js";
4
4
  import c from "../common/event-logger.js";
5
- import { EventTypes as d } from "../../shared-lib/index.js";
5
+ import { EventTypes as m } from "../../shared-lib/index.js";
6
6
  export default class Vt {
7
7
  constructor(t) {
8
- (this.C = t),
9
- (this.C = t),
10
- (this.Vl = new u()),
11
- (this.Jl = new u()),
12
- (this.Ql = new u()),
13
- (this.Yl = new u()),
14
- (this.Zl = null),
15
- (this.au = null);
16
- }
17
- du() {
18
- if (null == this.au) {
19
- const t = this.C.ft(s.gt.gu);
20
- this.au = null != t ? ni.zn(t) : new ni();
8
+ (this.j = t),
9
+ (this.j = t),
10
+ (this.tl = new u()),
11
+ (this.il = new u()),
12
+ (this.el = new u()),
13
+ (this.sl = new u()),
14
+ (this.rl = null),
15
+ (this.ul = null);
16
+ }
17
+ al() {
18
+ if (null == this.ul) {
19
+ const t = this.j.lt(s.ct.hl);
20
+ this.ul = null != t ? ni.qn(t) : new ni();
21
21
  }
22
- return this.au;
22
+ return this.ul;
23
23
  }
24
- Et() {
25
- return this.du().bu;
24
+ Ft() {
25
+ return this.al().ol;
26
26
  }
27
- fu(t) {
27
+ cl(t) {
28
28
  var i, e;
29
29
  if (null != t && null != t.config) {
30
30
  const n = t.config;
31
- if (n.time > this.du().bu) {
32
- const t = (t) => (null == t ? this.du().vu : t),
31
+ if (n.time > this.al().ol) {
32
+ const t = (t) => (null == t ? this.al().ml : t),
33
33
  r = new ni(
34
34
  n.time,
35
35
  n.events_blacklist,
@@ -43,104 +43,104 @@ export default class Vt {
43
43
  n.banners,
44
44
  );
45
45
  let l = !1;
46
- null != r.pu && this._n() !== r.pu && (l = !0);
46
+ null != r.dl && this.Wn() !== r.dl && (l = !0);
47
47
  let u = !1;
48
- null != r.Ru.enabled && this.ji() !== r.Ru.enabled && (u = !0);
48
+ null != r.gl.enabled && this.gi() !== r.gl.enabled && (u = !0);
49
49
  let a = !1;
50
- null != r.De.enabled && this.ke() !== r.De.enabled && (a = !0);
50
+ null != r.he.enabled && this.Re() !== r.he.enabled && (a = !0);
51
51
  let h = !1;
52
52
  null !=
53
53
  (null === (i = r.banners) || void 0 === i ? void 0 : i.enabled) &&
54
- this.zt() !==
54
+ this.Dt() !==
55
55
  (null === (e = r.banners) || void 0 === e ? void 0 : e.enabled) &&
56
56
  (h = !0),
57
- (this.au = r),
58
- this.C.Bt(s.gt.gu, r.bt()),
59
- l && this.Vl.X(),
60
- u && this.Jl.X(),
61
- a && this.Ql.X(),
62
- h && this.Yl.X();
57
+ (this.ul = r),
58
+ this.j.ft(s.ct.hl, r.dt()),
59
+ l && this.tl.L(),
60
+ u && this.il.L(),
61
+ a && this.el.L(),
62
+ h && this.sl.L();
63
63
  }
64
64
  }
65
65
  }
66
- Tn(t) {
67
- const i = this.Vl.Dt(t);
68
- return this.Zl && this.Vl.removeSubscription(this.Zl), (this.Zl = i), i;
66
+ _n(t) {
67
+ const i = this.tl.wt(t);
68
+ return this.rl && this.tl.removeSubscription(this.rl), (this.rl = i), i;
69
69
  }
70
- wi(t) {
71
- return this.Jl.Dt(t);
70
+ vi(t) {
71
+ return this.il.wt(t);
72
72
  }
73
- Ke(t) {
74
- return this.Ql.Dt(t);
73
+ Ue(t) {
74
+ return this.el.wt(t);
75
75
  }
76
- A(t) {
77
- return this.Yl.Dt(t);
76
+ P(t) {
77
+ return this.sl.wt(t);
78
78
  }
79
- je(t) {
80
- return -1 !== this.du().Cu.indexOf(t);
79
+ ge(t) {
80
+ return -1 !== this.al().bl.indexOf(t);
81
81
  }
82
82
  hu(t) {
83
- return -1 !== this.du().Eu.indexOf(t);
83
+ return -1 !== this.al().fl.indexOf(t);
84
84
  }
85
85
  Dr(t) {
86
- return -1 !== this.du().wu.indexOf(t);
86
+ return -1 !== this.al().vl.indexOf(t);
87
87
  }
88
- yu() {
89
- return this.du().Lu;
88
+ Rl() {
89
+ return this.al().Cl;
90
90
  }
91
- _n() {
92
- return this.du().pu;
91
+ Wn() {
92
+ return this.al().dl;
93
93
  }
94
- ji() {
95
- return this.du().Ru.enabled || !1;
94
+ gi() {
95
+ return this.al().gl.enabled || !1;
96
96
  }
97
- Bu() {
98
- const t = this.du().vu;
97
+ El() {
98
+ const t = this.al().ml;
99
99
  return !(!t || null == t.enabled) && t.enabled;
100
100
  }
101
- Ol() {
102
- if (!this.Bu()) return -1;
103
- const t = this.du().vu;
101
+ Ju() {
102
+ if (!this.El()) return -1;
103
+ const t = this.al().ml;
104
104
  return null == t.capacity || t.capacity < 10 ? -1 : t.capacity;
105
105
  }
106
- Gl() {
107
- if (!this.Bu()) return -1;
108
- const t = this.du().vu;
106
+ Qu() {
107
+ if (!this.El()) return -1;
108
+ const t = this.al().ml;
109
109
  return null == t.refill_rate || t.refill_rate <= 0 ? -1 : t.refill_rate;
110
110
  }
111
- Fu(t) {
112
- const i = this.du().vu.endpoint_overrides;
111
+ wl(t) {
112
+ const i = this.al().ml.endpoint_overrides;
113
113
  return null == i ? null : i[t];
114
114
  }
115
- _l(t) {
116
- const i = this.Fu(t);
115
+ Vu(t) {
116
+ const i = this.wl(t);
117
117
  return null == i || isNaN(i.capacity) || i.capacity <= 0 ? -1 : i.capacity;
118
118
  }
119
- Wl(t) {
120
- const i = this.Fu(t);
119
+ Zu(t) {
120
+ const i = this.wl(t);
121
121
  return null == i || isNaN(i.refill_rate) || i.refill_rate <= 0
122
122
  ? -1
123
123
  : i.refill_rate;
124
124
  }
125
- ke() {
126
- return this.du().De.enabled && null == this.Oe()
127
- ? (c.ut(d.ul, { e: "Missing feature flag refresh_rate_limit." }), !1)
128
- : this.du().De.enabled || !1;
125
+ Re() {
126
+ return this.al().he.enabled && null == this.ke()
127
+ ? (c.rt(m.pu, { e: "Missing feature flag refresh_rate_limit." }), !1)
128
+ : this.al().he.enabled || !1;
129
129
  }
130
- Oe() {
131
- return this.du().De.refresh_rate_limit;
130
+ ke() {
131
+ return this.al().he.refresh_rate_limit;
132
132
  }
133
- zt() {
133
+ Dt() {
134
134
  var t;
135
135
  return (
136
- (null === (t = this.du().banners) || void 0 === t ? void 0 : t.enabled) ||
136
+ (null === (t = this.al().banners) || void 0 === t ? void 0 : t.enabled) ||
137
137
  null
138
138
  );
139
139
  }
140
- ne() {
140
+ te() {
141
141
  var t;
142
142
  return (
143
- (null === (t = this.du().banners) || void 0 === t
143
+ (null === (t = this.al().banners) || void 0 === t
144
144
  ? void 0
145
145
  : t.max_placements) || 0
146
146
  );
@@ -3,73 +3,73 @@ import ue 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 N,
7
- Guid as O,
8
- EventTypes as d,
6
+ logger as E,
7
+ Guid as P,
8
+ EventTypes as m,
9
9
  } from "../../shared-lib/index.js";
10
10
  export default class Kt {
11
11
  constructor(s, t, i, e) {
12
- (this.C = s),
12
+ (this.j = s),
13
13
  (this.Cs = t),
14
- (this.B = i),
15
- (this.Su = e),
16
- (this.C = s),
14
+ (this.h = i),
15
+ (this.Sl = e),
16
+ (this.j = s),
17
17
  (this.Cs = t),
18
- (this.B = i),
19
- (this.ju = 1e3),
18
+ (this.h = i),
19
+ (this.jl = 1e3),
20
20
  (null == e || isNaN(e)) && (e = 1800),
21
- e < this.ju / 1e3 &&
22
- (N.info(
21
+ e < this.jl / 1e3 &&
22
+ (E.info(
23
23
  "Specified session timeout of " +
24
24
  e +
25
25
  "s is too small, using the minimum session timeout of " +
26
- this.ju / 1e3 +
26
+ this.jl / 1e3 +
27
27
  "s instead.",
28
28
  ),
29
- (e = this.ju / 1e3)),
30
- (this.Su = e);
29
+ (e = this.jl / 1e3)),
30
+ (this.Sl = e);
31
31
  }
32
- xu(s, t) {
33
- return new ue(this.Cs.getUserId(), d.Du, s, t.eu, { d: X(s - t.Gu) });
32
+ xl(s, t) {
33
+ return new ue(this.Cs.getUserId(), m.Dl, s, t.eu, { d: X(s - t.Gl) });
34
34
  }
35
- St() {
36
- const t = this.C.tu(s.iu.Nu);
35
+ bt() {
36
+ const t = this.j.tu(s.iu.Nl);
37
37
  return null == t ? null : t.eu;
38
38
  }
39
- zu() {
39
+ zl() {
40
40
  const t = new Date().valueOf(),
41
- i = this.B.yu();
41
+ i = this.h.Rl();
42
42
  if (null == i) return !1;
43
- const e = this.C.ft(s.gt.Hu),
43
+ const e = this.j.lt(s.ct.Hl),
44
44
  n = null == e || t - e > 1e3 * i;
45
- return n && this.C.Bt(s.gt.Hu, t), n;
45
+ return n && this.j.ft(s.ct.Hl, t), n;
46
46
  }
47
- Wu(s, t) {
48
- return null == t || null == t.ku || (!(s - t.Gu < this.ju) && t.ku < s);
47
+ Wl(s, t) {
48
+ return null == t || null == t.kl || (!(s - t.Gl < this.jl) && t.kl < s);
49
49
  }
50
- Vo() {
50
+ qo() {
51
51
  const t = new Date().valueOf(),
52
- i = t + 1e3 * this.Su,
53
- e = this.C.tu(s.iu.Nu);
54
- if (this.Wu(t, e)) {
52
+ i = t + 1e3 * this.Sl,
53
+ e = this.j.tu(s.iu.Nl);
54
+ if (this.Wl(t, e)) {
55
55
  let n = "Generating session start event with time " + t;
56
56
  if (null != e) {
57
- let s = e.qu;
58
- s - e.Gu < this.ju && (s = e.Gu + this.ju),
59
- this.C.Au(this.xu(s, e)),
57
+ let s = e.ql;
58
+ s - e.Gl < this.jl && (s = e.Gl + this.jl),
59
+ this.j.yl(this.xl(s, e)),
60
60
  (n += " (old session ended " + s + ")");
61
61
  }
62
- (n += ". Will expire " + i.valueOf()), N.info(n);
63
- const o = new _t(O.ce(), i);
64
- this.C.Au(new ue(this.Cs.getUserId(), d.Iu, t, o.eu)),
65
- this.C.uu(s.iu.Nu, o);
66
- return null == this.C.ft(s.gt.Hu) && this.C.Bt(s.gt.Hu, t), o.eu;
62
+ (n += ". Will expire " + i.valueOf()), E.info(n);
63
+ const o = new _t(P.oe(), i);
64
+ this.j.yl(new ue(this.Cs.getUserId(), m.Al, t, o.eu)),
65
+ this.j.uu(s.iu.Nl, o);
66
+ return null == this.j.lt(s.ct.Hl) && this.j.ft(s.ct.Hl, t), o.eu;
67
67
  }
68
- if (null != e) return (e.qu = t), (e.ku = i), this.C.uu(s.iu.Nu, e), e.eu;
68
+ if (null != e) return (e.ql = t), (e.kl = i), this.j.uu(s.iu.Nl, e), e.eu;
69
69
  }
70
- Ju() {
71
- const t = this.C.tu(s.iu.Nu);
70
+ Bl() {
71
+ const t = this.j.tu(s.iu.Nl);
72
72
  null != t &&
73
- (this.C.Ku(s.iu.Nu), this.C.Au(this.xu(new Date().valueOf(), t)));
73
+ (this.j.Fl(s.iu.Nl), this.j.yl(this.xl(new Date().valueOf(), t)));
74
74
  }
75
75
  }
@@ -1,14 +1,14 @@
1
1
  import ee, { STORAGE_KEYS as s } from "./storage-manager.js";
2
- import { logger as N } from "../../shared-lib/index.js";
2
+ import { logger as E } from "../../shared-lib/index.js";
3
3
  const Gt = {
4
- Ba: function (e, o = !1) {
4
+ La: function (e, o = !1) {
5
5
  let t = !1;
6
6
  try {
7
7
  if (localStorage && localStorage.getItem)
8
8
  try {
9
- localStorage.setItem(s.gt.ec, "true"),
10
- localStorage.getItem(s.gt.ec) &&
11
- (localStorage.removeItem(s.gt.ec), (t = !0));
9
+ localStorage.setItem(s.ct.ec, "true"),
10
+ localStorage.getItem(s.ct.ec) &&
11
+ (localStorage.removeItem(s.ct.ec), (t = !0));
12
12
  } catch (e) {
13
13
  if (
14
14
  !(
@@ -22,7 +22,7 @@ const Gt = {
22
22
  t = !0;
23
23
  }
24
24
  } catch (e) {
25
- N.info("Local Storage not supported!");
25
+ E.info("Local Storage not supported!");
26
26
  }
27
27
  const r = Gt.oc(),
28
28
  a = new ee.tc(e, r && !o, t);