@braze/web-sdk 4.3.0 → 4.5.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.
- package/index.d.ts +68 -6
- package/package.json +1 -1
- package/shared-lib/braze-shared-lib.js +8 -1
- package/shared-lib/encoding-utils.js +12 -1
- package/shared-lib/event-types.js +32 -1
- package/shared-lib/guid.js +10 -1
- package/shared-lib/indexed-db-adapter.js +315 -1
- package/shared-lib/logger.js +38 -1
- package/shared-lib/supported-options.js +26 -1
- package/src/Card/card-manager-factory.js +14 -1
- package/src/Card/card-manager.js +72 -1
- package/src/Card/display/card-display.js +134 -1
- package/src/Card/index.js +5 -1
- package/src/Card/log-card-click.js +11 -1
- package/src/Card/log-card-dismissal.js +11 -1
- package/src/Card/log-card-impressions.js +13 -1
- package/src/Card/log-content-card-impressions.js +4 -1
- package/src/Card/models/banner.js +30 -1
- package/src/Card/models/captioned-image.js +32 -1
- package/src/Card/models/card.js +175 -1
- package/src/Card/models/classic-card.js +32 -1
- package/src/Card/models/control-card.js +39 -1
- package/src/Card/models/index.js +5 -1
- package/src/Card/util/card-factory.js +104 -1
- package/src/ContentCards/content-cards-provider-factory.js +20 -1
- package/src/ContentCards/content-cards-provider.js +283 -1
- package/src/ContentCards/content-cards.js +24 -1
- package/src/ContentCards/get-cached-content-cards.js +5 -1
- package/src/ContentCards/index.js +8 -1
- package/src/ContentCards/log-content-cards-displayed.js +5 -1
- package/src/ContentCards/request-content-cards-refresh.js +5 -1
- package/src/ContentCards/subscribe-to-content-cards-updates.js +14 -1
- package/src/ContentCards/ui/hide-content-cards.js +8 -1
- package/src/ContentCards/ui/show-content-cards.js +72 -1
- package/src/ContentCards/ui/toggle-content-cards.js +8 -1
- package/src/Core/add-sdk-metadata.js +27 -1
- package/src/Core/braze-sdk-metadata.js +10 -1
- package/src/Core/change-user.js +19 -1
- package/src/Core/destroy.js +5 -1
- package/src/Core/device-properties.js +9 -1
- package/src/Core/disable-sdk.js +10 -1
- package/src/Core/enable-sdk.js +8 -1
- package/src/Core/get-device-id.js +10 -1
- package/src/Core/get-user.js +4 -1
- package/src/Core/handle-braze-action.js +64 -1
- package/src/Core/index.js +23 -1
- package/src/Core/initialize.js +4 -1
- package/src/Core/is-disabled.js +4 -1
- package/src/Core/log-custom-event.js +36 -1
- package/src/Core/log-purchase.js +245 -1
- package/src/Core/open-session.js +23 -1
- package/src/Core/remove-all-subscriptions.js +4 -1
- package/src/Core/remove-subscription.js +4 -1
- package/src/Core/request-immediate-data-flush.js +4 -1
- package/src/Core/set-logger.js +4 -1
- package/src/Core/set-sdk-authentication-signature.js +9 -1
- package/src/Core/subscribe-to-sdk-authentication-failures.js +4 -1
- package/src/Core/toggle-logging.js +4 -1
- package/src/Core/wipe-data.js +15 -1
- package/src/FeatureFlags/feature-flag-factory.js +14 -0
- package/src/FeatureFlags/feature-flag.js +16 -0
- package/src/FeatureFlags/feature-flags-provider-factory.js +19 -0
- package/src/FeatureFlags/feature-flags-provider.js +94 -0
- package/src/FeatureFlags/get-all-feature-flags.js +12 -0
- package/src/FeatureFlags/get-feature-flag.js +12 -0
- package/src/FeatureFlags/index.js +4 -0
- package/src/FeatureFlags/refresh-feature-flags.js +9 -0
- package/src/FeatureFlags/subscribe-to-feature-flags-updates.js +6 -0
- package/src/Feed/feed-provider-factory.js +18 -1
- package/src/Feed/feed-provider.js +79 -1
- package/src/Feed/feed.js +20 -1
- package/src/Feed/get-cached-feed.js +5 -1
- package/src/Feed/index.js +8 -1
- package/src/Feed/log-feed-displayed.js +5 -1
- package/src/Feed/request-feed-refresh.js +5 -1
- package/src/Feed/subscribe-to-feed-updates.js +5 -1
- package/src/Feed/ui/hide-feed.js +7 -1
- package/src/Feed/ui/show-feed.js +89 -1
- package/src/Feed/ui/toggle-feed.js +8 -1
- package/src/InAppMessage/display/get-animation-effect.js +19 -1
- package/src/InAppMessage/display/html-message-to-html.js +223 -1
- package/src/InAppMessage/display/in-app-message-to-html.js +152 -1
- package/src/InAppMessage/display/modal-utils.js +68 -1
- package/src/InAppMessage/in-app-message-factory.js +145 -1
- package/src/InAppMessage/in-app-message-manager-factory.js +16 -1
- package/src/InAppMessage/in-app-message-manager.js +189 -1
- package/src/InAppMessage/index.js +14 -1
- package/src/InAppMessage/log-in-app-message-button-click.js +19 -1
- package/src/InAppMessage/log-in-app-message-click.js +19 -1
- package/src/InAppMessage/log-in-app-message-html-click.js +23 -1
- package/src/InAppMessage/log-in-app-message-impression.js +13 -1
- package/src/InAppMessage/models/control-message.js +8 -1
- package/src/InAppMessage/models/full-screen-message.js +71 -1
- package/src/InAppMessage/models/html-message.js +54 -1
- package/src/InAppMessage/models/in-app-message-button.js +40 -1
- package/src/InAppMessage/models/in-app-message.js +271 -1
- package/src/InAppMessage/models/modal-message.js +68 -1
- package/src/InAppMessage/models/slide-up-message.js +58 -1
- package/src/InAppMessage/models/templated-in-app-message.js +14 -1
- package/src/InAppMessage/subscribe-to-in-app-message.js +10 -1
- package/src/InAppMessage/ui/automatically-show-in-app-messages.js +15 -1
- package/src/InAppMessage/ui/show-in-app-message.js +170 -1
- package/src/Push/index.js +5 -1
- package/src/Push/is-push-blocked.js +5 -1
- package/src/Push/is-push-permission-granted.js +5 -1
- package/src/Push/is-push-supported.js +5 -1
- package/src/Push/push-manager-factory.js +30 -1
- package/src/Push/push-manager.js +360 -1
- package/src/Push/request-push-permission.js +8 -1
- package/src/Push/unregister-push.js +5 -1
- package/src/Push/utils/push-utils.js +34 -1
- package/src/User/index.js +1 -1
- package/src/User/user-manager.js +70 -1
- package/src/User/user.js +278 -1
- package/src/common/base-feed.js +25 -1
- package/src/common/base-provider.js +6 -1
- package/src/common/constants.js +5 -1
- package/src/common/event-logger.js +24 -1
- package/src/common/feed-display.js +200 -1
- package/src/common/translations.js +148 -1
- package/src/index.js +9 -1
- package/src/l10n/l10n-manager-factory.js +22 -1
- package/src/l10n/l10n-manager.js +21 -1
- package/src/managers/auth-manager.js +48 -1
- package/src/managers/braze-instance.js +307 -1
- package/src/managers/device-manager.js +80 -1
- package/src/managers/network-manager.js +219 -1
- package/src/managers/server-config-manager.js +88 -1
- package/src/managers/session-manager.js +68 -1
- package/src/managers/storage-manager-factory.js +35 -1
- package/src/managers/storage-manager.js +394 -1
- package/src/managers/subscription-manager.js +25 -1
- package/src/models/backend-errors.js +8 -1
- package/src/models/braze-event.js +41 -1
- package/src/models/braze-sdk-metadata.js +10 -1
- package/src/models/device.js +26 -1
- package/src/models/identifier.js +20 -1
- package/src/models/push-token.js +22 -1
- package/src/models/request-result.js +8 -1
- package/src/models/server-config.js +32 -1
- package/src/request-controller.js +288 -1
- package/src/triggers/models/custom-event-data.js +14 -1
- package/src/triggers/models/custom-event-property-data.js +21 -1
- package/src/triggers/models/filter-set.js +55 -1
- package/src/triggers/models/filter.js +98 -1
- package/src/triggers/models/in-app-message-click-data.js +25 -1
- package/src/triggers/models/purchase-data.js +14 -1
- package/src/triggers/models/purchase-property-data.js +21 -1
- package/src/triggers/models/push-click-data.js +15 -1
- package/src/triggers/models/trigger-condition.js +109 -1
- package/src/triggers/models/trigger-events.js +8 -1
- package/src/triggers/models/trigger.js +110 -1
- package/src/triggers/triggers-provider-factory.js +30 -1
- package/src/triggers/triggers-provider.js +307 -1
- package/src/ui/js/attach-css.js +12 -1
- package/src/ui/js/feed-css.js +12 -1
- package/src/ui/js/iam-css.js +12 -1
- package/src/ui/js/index.js +3 -1
- package/src/ui/js/load-font-awesome.js +13 -1
- package/src/util/base-device-parser.js +14 -1
- package/src/util/braze-actions.js +79 -1
- package/src/util/browser-detector.js +85 -1
- package/src/util/client-hints-parser.js +60 -1
- package/src/util/code-utils.js +92 -1
- package/src/util/color-utils.js +23 -1
- package/src/util/component-utils.js +26 -1
- package/src/util/date-utils.js +27 -1
- package/src/util/deprecation-utils.js +5 -1
- package/src/util/device-constants.js +14 -1
- package/src/util/dom-utils.js +87 -1
- package/src/util/key-codes.js +1 -1
- package/src/util/math.js +5 -1
- package/src/util/net.js +75 -1
- package/src/util/string-utils.js +22 -1
- package/src/util/url-utils.js +23 -1
- package/src/util/user-agent-parser.js +85 -1
- package/src/util/validation-utils.js +136 -1
- package/src/util/window-utils.js +35 -1
|
@@ -1 +1,189 @@
|
|
|
1
|
-
import b from"../util/net.js";
|
|
1
|
+
import b from "../util/net.js";
|
|
2
|
+
import e from "../managers/braze-instance.js";
|
|
3
|
+
import ControlMessage from "./models/control-message.js";
|
|
4
|
+
import HtmlMessage from "./models/html-message.js";
|
|
5
|
+
import InAppMessage from "./models/in-app-message.js";
|
|
6
|
+
import InAppMessageButton from "./models/in-app-message-button.js";
|
|
7
|
+
import s from "../common/event-logger.js";
|
|
8
|
+
import { newInAppMessageFromJson as lt } from "./in-app-message-factory.js";
|
|
9
|
+
import { randomInclusive as pt } from "../util/math.js";
|
|
10
|
+
import t from "../models/request-result.js";
|
|
11
|
+
import r from "../../shared-lib/braze-shared-lib.js";
|
|
12
|
+
import u from "../managers/subscription-manager.js";
|
|
13
|
+
import mt from "../triggers/models/trigger.js";
|
|
14
|
+
import { validateValueIsFromEnum as F } from "../util/code-utils.js";
|
|
15
|
+
import { BRAZE_ACTION_URI_REGEX as O } from "../util/validation-utils.js";
|
|
16
|
+
import {
|
|
17
|
+
containsPushPrimerBrazeAction as gt,
|
|
18
|
+
containsUnknownBrazeAction as ct,
|
|
19
|
+
getDecodedBrazeAction as J,
|
|
20
|
+
ineligibleBrazeActionURLErrorMessage as ht,
|
|
21
|
+
INELIGIBLE_BRAZE_ACTION_URL_ERROR_TYPES as ft
|
|
22
|
+
} from "../util/braze-actions.js";
|
|
23
|
+
import dt from "../Push/utils/push-utils.js";
|
|
24
|
+
export default class ge {
|
|
25
|
+
constructor(t, s, i, r) {
|
|
26
|
+
(this.vt = t),
|
|
27
|
+
(this.j = s),
|
|
28
|
+
(this.h = i),
|
|
29
|
+
(this.v = r),
|
|
30
|
+
(this.Pe = new u()),
|
|
31
|
+
e.jt(this.Pe),
|
|
32
|
+
(this.Qe = 1e3),
|
|
33
|
+
(this.Ue = 6e4);
|
|
34
|
+
}
|
|
35
|
+
Ve() {
|
|
36
|
+
return this.Pe;
|
|
37
|
+
}
|
|
38
|
+
We(t) {
|
|
39
|
+
return this.Pe.ut(t);
|
|
40
|
+
}
|
|
41
|
+
Xe() {
|
|
42
|
+
return this.Ye;
|
|
43
|
+
}
|
|
44
|
+
Ze(t) {
|
|
45
|
+
this.Ye = t;
|
|
46
|
+
}
|
|
47
|
+
ni(e, i) {
|
|
48
|
+
if (
|
|
49
|
+
!F(
|
|
50
|
+
InAppMessage.li,
|
|
51
|
+
i,
|
|
52
|
+
`${i} is not a valid in-app message display failure`,
|
|
53
|
+
"InAppMessage.DisplayFailures"
|
|
54
|
+
)
|
|
55
|
+
)
|
|
56
|
+
return new t();
|
|
57
|
+
const n = { trigger_ids: [e], error_code: i };
|
|
58
|
+
return s.G(r.A.ui, n);
|
|
59
|
+
}
|
|
60
|
+
G(e, i, n, o) {
|
|
61
|
+
const a = new t();
|
|
62
|
+
let l;
|
|
63
|
+
if (e instanceof ControlMessage) l = { trigger_ids: [e.triggerId] };
|
|
64
|
+
else {
|
|
65
|
+
if (i === r.A.pi || (e instanceof HtmlMessage && i === r.A.mi)) {
|
|
66
|
+
if (!e.k(o))
|
|
67
|
+
return (
|
|
68
|
+
r.D.info(
|
|
69
|
+
"This in-app message has already received a click. Ignoring analytics event."
|
|
70
|
+
),
|
|
71
|
+
a
|
|
72
|
+
);
|
|
73
|
+
} else if (i === r.A.gi) {
|
|
74
|
+
if (!e.R())
|
|
75
|
+
return (
|
|
76
|
+
r.D.info(
|
|
77
|
+
"This in-app message has already received an impression. Ignoring analytics event."
|
|
78
|
+
),
|
|
79
|
+
a
|
|
80
|
+
);
|
|
81
|
+
}
|
|
82
|
+
l = this.ci(e);
|
|
83
|
+
}
|
|
84
|
+
return null == l ? a : (null != n && (l.bid = n), s.G(i, l));
|
|
85
|
+
}
|
|
86
|
+
fi(e, i) {
|
|
87
|
+
const n = new t();
|
|
88
|
+
if (!e.k())
|
|
89
|
+
return (
|
|
90
|
+
r.D.info(
|
|
91
|
+
"This in-app message button has already received a click. Ignoring analytics event."
|
|
92
|
+
),
|
|
93
|
+
n
|
|
94
|
+
);
|
|
95
|
+
const o = this.ci(i);
|
|
96
|
+
return null == o
|
|
97
|
+
? n
|
|
98
|
+
: e.id === InAppMessageButton.di
|
|
99
|
+
? (r.D.info(
|
|
100
|
+
"This in-app message button does not have a tracking id. Not logging event to Braze servers."
|
|
101
|
+
),
|
|
102
|
+
n)
|
|
103
|
+
: (null != e.id && (o.bid = e.id), s.G(r.A.mi, o));
|
|
104
|
+
}
|
|
105
|
+
vi(t) {
|
|
106
|
+
if (!(t instanceof InAppMessage)) return;
|
|
107
|
+
const s = t => {
|
|
108
|
+
const s = J(t);
|
|
109
|
+
return ct(s)
|
|
110
|
+
? ht(ft.yi, "In-App Message")
|
|
111
|
+
: gt(s) && !dt.ji()
|
|
112
|
+
? ht(ft.bi, "In-App Message")
|
|
113
|
+
: void 0;
|
|
114
|
+
},
|
|
115
|
+
e = t.buttons;
|
|
116
|
+
let i;
|
|
117
|
+
for (const t of e)
|
|
118
|
+
if (
|
|
119
|
+
t.clickAction === InAppMessage.ClickAction.URI &&
|
|
120
|
+
O.test(t.uri) &&
|
|
121
|
+
((i = s(t.uri)), i)
|
|
122
|
+
)
|
|
123
|
+
return i;
|
|
124
|
+
return t.clickAction === InAppMessage.ClickAction.URI && O.test(t.uri)
|
|
125
|
+
? s(t.uri)
|
|
126
|
+
: void 0;
|
|
127
|
+
}
|
|
128
|
+
Ii(t, s, e, i) {
|
|
129
|
+
let n = this.vt.Ai(!1, !1);
|
|
130
|
+
(n = this.vt.Ps(n)),
|
|
131
|
+
(n.template = { trigger_id: t.triggerId, trigger_event_type: s }),
|
|
132
|
+
null != e && (n.template.data = e.Mi());
|
|
133
|
+
const o = this.vt.Bs(n);
|
|
134
|
+
this.vt.Gs(n, () => {
|
|
135
|
+
b.Hs({
|
|
136
|
+
url: `${this.vt.Ks()}/template/`,
|
|
137
|
+
data: n,
|
|
138
|
+
headers: o,
|
|
139
|
+
S: async s => {
|
|
140
|
+
if (!this.vt.Os(n, s, o))
|
|
141
|
+
return (
|
|
142
|
+
this.ni(t.triggerId, InAppMessage.li.zi),
|
|
143
|
+
void ("function" == typeof t.Di && t.Di())
|
|
144
|
+
);
|
|
145
|
+
if ((this.vt.Qs(), null == s || null == s.templated_message))
|
|
146
|
+
return void this.ni(t.triggerId, InAppMessage.li.zi);
|
|
147
|
+
const e = s.templated_message;
|
|
148
|
+
if (e.type !== mt._i.Ti)
|
|
149
|
+
return void this.ni(t.triggerId, InAppMessage.li.ki);
|
|
150
|
+
const i = lt(e.data);
|
|
151
|
+
if (null == i) return void this.ni(t.triggerId, InAppMessage.li.ki);
|
|
152
|
+
let a = this.vi(i);
|
|
153
|
+
if (a)
|
|
154
|
+
return r.D.error(a), void ("function" == typeof t.Di && t.Di());
|
|
155
|
+
"function" == typeof t.wi
|
|
156
|
+
? t.wi(i)
|
|
157
|
+
: this.ni(t.triggerId, InAppMessage.li.zi);
|
|
158
|
+
},
|
|
159
|
+
error: r => {
|
|
160
|
+
let n = `getting user personalization for message ${t.triggerId}`;
|
|
161
|
+
if (new Date().valueOf() - t.Si > t.$i)
|
|
162
|
+
this.ni(t.triggerId, InAppMessage.li.zi);
|
|
163
|
+
else {
|
|
164
|
+
const r = Math.min(t.$i, this.Ue),
|
|
165
|
+
o = this.Qe;
|
|
166
|
+
null == i && (i = o);
|
|
167
|
+
const a = Math.min(r, pt(o, 3 * i));
|
|
168
|
+
(n += `. Retrying in ${a} ms`),
|
|
169
|
+
setTimeout(() => {
|
|
170
|
+
this.Ii(t, s, e, a);
|
|
171
|
+
}, a);
|
|
172
|
+
}
|
|
173
|
+
this.vt.Vs(r, n);
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
ci(t) {
|
|
179
|
+
if (null == t.triggerId)
|
|
180
|
+
return (
|
|
181
|
+
r.D.info(
|
|
182
|
+
"The in-app message has no analytics id. Not logging event to Braze servers."
|
|
183
|
+
),
|
|
184
|
+
null
|
|
185
|
+
);
|
|
186
|
+
const s = {};
|
|
187
|
+
return null != t.triggerId && (s.trigger_ids = [t.triggerId]), s;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
@@ -1 +1,14 @@
|
|
|
1
|
-
export
|
|
1
|
+
export { default as InAppMessage } from "./models/in-app-message.js";
|
|
2
|
+
export { default as InAppMessageButton } from "./models/in-app-message-button.js";
|
|
3
|
+
export { default as ControlMessage } from "./models/control-message.js";
|
|
4
|
+
export { default as FullScreenMessage } from "./models/full-screen-message.js";
|
|
5
|
+
export { default as HtmlMessage } from "./models/html-message.js";
|
|
6
|
+
export { default as ModalMessage } from "./models/modal-message.js";
|
|
7
|
+
export { default as SlideUpMessage } from "./models/slide-up-message.js";
|
|
8
|
+
export { automaticallyShowInAppMessages } from "./ui/automatically-show-in-app-messages.js";
|
|
9
|
+
export { logInAppMessageButtonClick } from "./log-in-app-message-button-click.js";
|
|
10
|
+
export { logInAppMessageClick } from "./log-in-app-message-click.js";
|
|
11
|
+
export { logInAppMessageHtmlClick } from "./log-in-app-message-html-click.js";
|
|
12
|
+
export { logInAppMessageImpression } from "./log-in-app-message-impression.js";
|
|
13
|
+
export { showInAppMessage } from "./ui/show-in-app-message.js";
|
|
14
|
+
export { subscribeToInAppMessage } from "./subscribe-to-in-app-message.js";
|
|
@@ -1 +1,19 @@
|
|
|
1
|
-
import e from"../managers/braze-instance.js";
|
|
1
|
+
import e from "../managers/braze-instance.js";
|
|
2
|
+
import { MUST_BE_IN_APP_MESSAGE_WARNING as or } from "../common/constants.js";
|
|
3
|
+
import InAppMessage from "./models/in-app-message.js";
|
|
4
|
+
import InAppMessageButton from "./models/in-app-message-button.js";
|
|
5
|
+
import pe from "./in-app-message-manager-factory.js";
|
|
6
|
+
import r from "../../shared-lib/braze-shared-lib.js";
|
|
7
|
+
import V from "../triggers/models/trigger-events.js";
|
|
8
|
+
import { TriggersProviderFactory as W } from "../triggers/triggers-provider-factory.js";
|
|
9
|
+
export function logInAppMessageButtonClick(t, o) {
|
|
10
|
+
if (!e.rr()) return !1;
|
|
11
|
+
if (!(t instanceof InAppMessageButton))
|
|
12
|
+
return r.D.error("button must be an InAppMessageButton object"), !1;
|
|
13
|
+
if (!(o instanceof InAppMessage)) return r.D.error(or), !1;
|
|
14
|
+
const s = pe.m().fi(t, o);
|
|
15
|
+
if (s.S)
|
|
16
|
+
for (let r = 0; r < s.ve.length; r++)
|
|
17
|
+
W.er().je(V.Ar, [o.triggerId, t.id], s.ve[r]);
|
|
18
|
+
return s.S;
|
|
19
|
+
}
|
|
@@ -1 +1,19 @@
|
|
|
1
|
-
import e from"../managers/braze-instance.js";
|
|
1
|
+
import e from "../managers/braze-instance.js";
|
|
2
|
+
import InAppMessage from "./models/in-app-message.js";
|
|
3
|
+
import pe from "./in-app-message-manager-factory.js";
|
|
4
|
+
import { logInAppMessageImpression } from "./log-in-app-message-impression.js";
|
|
5
|
+
import { MUST_BE_IN_APP_MESSAGE_WARNING as or } from "../common/constants.js";
|
|
6
|
+
import r from "../../shared-lib/braze-shared-lib.js";
|
|
7
|
+
import V from "../triggers/models/trigger-events.js";
|
|
8
|
+
import { TriggersProviderFactory as W } from "../triggers/triggers-provider-factory.js";
|
|
9
|
+
export function logInAppMessageClick(o) {
|
|
10
|
+
if (!e.rr()) return !1;
|
|
11
|
+
if (!(o instanceof InAppMessage)) return r.D.error(or), !1;
|
|
12
|
+
const s = pe.m().G(o, r.A.pi);
|
|
13
|
+
if (s) {
|
|
14
|
+
o.Cr() || logInAppMessageImpression(o);
|
|
15
|
+
for (let r = 0; r < s.ve.length; r++)
|
|
16
|
+
W.er().je(V.Ar, [o.triggerId], s.ve[r]);
|
|
17
|
+
}
|
|
18
|
+
return s.S;
|
|
19
|
+
}
|
|
@@ -1 +1,23 @@
|
|
|
1
|
-
import e from"../managers/braze-instance.js";
|
|
1
|
+
import e from "../managers/braze-instance.js";
|
|
2
|
+
import HtmlMessage from "./models/html-message.js";
|
|
3
|
+
import pe from "./in-app-message-manager-factory.js";
|
|
4
|
+
import r from "../../shared-lib/braze-shared-lib.js";
|
|
5
|
+
import V from "../triggers/models/trigger-events.js";
|
|
6
|
+
import { TriggersProviderFactory as W } from "../triggers/triggers-provider-factory.js";
|
|
7
|
+
export function logInAppMessageHtmlClick(s, t, o) {
|
|
8
|
+
if (!e.rr()) return !1;
|
|
9
|
+
if (!(s instanceof HtmlMessage))
|
|
10
|
+
return (
|
|
11
|
+
r.D.error(
|
|
12
|
+
"inAppMessage argument to logInAppMessageHtmlClick must be an HtmlMessage object."
|
|
13
|
+
),
|
|
14
|
+
!1
|
|
15
|
+
);
|
|
16
|
+
let m = r.A.pi;
|
|
17
|
+
null != t && (m = r.A.mi);
|
|
18
|
+
const i = pe.m().G(s, m, t, o);
|
|
19
|
+
if (i.S)
|
|
20
|
+
for (let r = 0; r < i.ve.length; r++)
|
|
21
|
+
W.er().je(V.Ar, [s.triggerId, t], i.ve[r]);
|
|
22
|
+
return i.S;
|
|
23
|
+
}
|
|
@@ -1 +1,13 @@
|
|
|
1
|
-
import e from"../managers/braze-instance.js";
|
|
1
|
+
import e from "../managers/braze-instance.js";
|
|
2
|
+
import ControlMessage from "./models/control-message.js";
|
|
3
|
+
import InAppMessage from "./models/in-app-message.js";
|
|
4
|
+
import pe from "./in-app-message-manager-factory.js";
|
|
5
|
+
import { MUST_BE_IN_APP_MESSAGE_WARNING as or } from "../common/constants.js";
|
|
6
|
+
import r from "../../shared-lib/braze-shared-lib.js";
|
|
7
|
+
export function logInAppMessageImpression(o) {
|
|
8
|
+
if (!e.rr()) return !1;
|
|
9
|
+
if (!(o instanceof InAppMessage || o instanceof ControlMessage))
|
|
10
|
+
return r.D.error(or), !1;
|
|
11
|
+
const s = o instanceof ControlMessage ? r.A.ro : r.A.gi;
|
|
12
|
+
return pe.m().G(o, s).S;
|
|
13
|
+
}
|
|
@@ -1 +1,8 @@
|
|
|
1
|
-
export default class ControlMessage
|
|
1
|
+
export default class ControlMessage {
|
|
2
|
+
constructor(t) {
|
|
3
|
+
(this.triggerId = t), (this.extras = {}), (this.isControl = !0);
|
|
4
|
+
}
|
|
5
|
+
static fromJson(t) {
|
|
6
|
+
return new ControlMessage(t.trigger_id);
|
|
7
|
+
}
|
|
8
|
+
}
|
|
@@ -1 +1,71 @@
|
|
|
1
|
-
import InAppMessage from"./in-app-message.js";
|
|
1
|
+
import InAppMessage from "./in-app-message.js";
|
|
2
|
+
export default class FullScreenMessage extends InAppMessage {
|
|
3
|
+
constructor(
|
|
4
|
+
e,
|
|
5
|
+
t,
|
|
6
|
+
r,
|
|
7
|
+
s,
|
|
8
|
+
n,
|
|
9
|
+
l,
|
|
10
|
+
u,
|
|
11
|
+
a,
|
|
12
|
+
o,
|
|
13
|
+
p,
|
|
14
|
+
m,
|
|
15
|
+
c,
|
|
16
|
+
d,
|
|
17
|
+
f,
|
|
18
|
+
g,
|
|
19
|
+
i,
|
|
20
|
+
x,
|
|
21
|
+
j,
|
|
22
|
+
A,
|
|
23
|
+
T,
|
|
24
|
+
b,
|
|
25
|
+
h,
|
|
26
|
+
k,
|
|
27
|
+
q,
|
|
28
|
+
v,
|
|
29
|
+
w,
|
|
30
|
+
y,
|
|
31
|
+
z
|
|
32
|
+
) {
|
|
33
|
+
(a = a || InAppMessage.DismissType.MANUAL),
|
|
34
|
+
(w = w || InAppMessage.Orientation.PORTRAIT),
|
|
35
|
+
super(
|
|
36
|
+
e,
|
|
37
|
+
t,
|
|
38
|
+
null,
|
|
39
|
+
r,
|
|
40
|
+
s,
|
|
41
|
+
n,
|
|
42
|
+
l,
|
|
43
|
+
u,
|
|
44
|
+
a,
|
|
45
|
+
o,
|
|
46
|
+
p,
|
|
47
|
+
m,
|
|
48
|
+
c,
|
|
49
|
+
d,
|
|
50
|
+
f,
|
|
51
|
+
g,
|
|
52
|
+
i,
|
|
53
|
+
x,
|
|
54
|
+
j,
|
|
55
|
+
A,
|
|
56
|
+
T,
|
|
57
|
+
b,
|
|
58
|
+
h,
|
|
59
|
+
k,
|
|
60
|
+
q,
|
|
61
|
+
(v = v || InAppMessage.CropType.CENTER_CROP),
|
|
62
|
+
w,
|
|
63
|
+
y,
|
|
64
|
+
z
|
|
65
|
+
);
|
|
66
|
+
}
|
|
67
|
+
get Ce() {
|
|
68
|
+
return InAppMessage.TextAlignment.CENTER;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
FullScreenMessage.es = InAppMessage.es.Tr;
|
|
@@ -1 +1,54 @@
|
|
|
1
|
-
import InAppMessage from"./in-app-message.js";
|
|
1
|
+
import InAppMessage from "./in-app-message.js";
|
|
2
|
+
export default class HtmlMessage extends InAppMessage {
|
|
3
|
+
constructor(l, e, n, u, s, a, t, i, r, o, m) {
|
|
4
|
+
(u = u || InAppMessage.DismissType.MANUAL),
|
|
5
|
+
null != l &&
|
|
6
|
+
l.length > 0 &&
|
|
7
|
+
l.indexOf('"ab-in-app-message ab-html-message ab-email-capture"') > 0 &&
|
|
8
|
+
l.indexOf('"ab-in-app-message ab-show ab-modal ab-effect-modal"') > 0 &&
|
|
9
|
+
((a = !0), (t = !0)),
|
|
10
|
+
super(
|
|
11
|
+
l,
|
|
12
|
+
null,
|
|
13
|
+
null,
|
|
14
|
+
e,
|
|
15
|
+
n,
|
|
16
|
+
null,
|
|
17
|
+
null,
|
|
18
|
+
null,
|
|
19
|
+
u,
|
|
20
|
+
s,
|
|
21
|
+
null,
|
|
22
|
+
null,
|
|
23
|
+
null,
|
|
24
|
+
null,
|
|
25
|
+
null,
|
|
26
|
+
null,
|
|
27
|
+
null,
|
|
28
|
+
null,
|
|
29
|
+
a,
|
|
30
|
+
t,
|
|
31
|
+
null,
|
|
32
|
+
null,
|
|
33
|
+
null,
|
|
34
|
+
i,
|
|
35
|
+
void 0,
|
|
36
|
+
void 0,
|
|
37
|
+
void 0,
|
|
38
|
+
r,
|
|
39
|
+
o
|
|
40
|
+
),
|
|
41
|
+
(this.messageFields = m);
|
|
42
|
+
}
|
|
43
|
+
ll() {
|
|
44
|
+
return !1;
|
|
45
|
+
}
|
|
46
|
+
k(l) {
|
|
47
|
+
if (this.un === InAppMessage.es.el) {
|
|
48
|
+
if (this.nl) return !1;
|
|
49
|
+
this.nl = !0;
|
|
50
|
+
}
|
|
51
|
+
return this.lt.St(l), !0;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
HtmlMessage.es = InAppMessage.es.el;
|
|
@@ -1 +1,40 @@
|
|
|
1
|
-
import InAppMessage from"./in-app-message.js";
|
|
1
|
+
import InAppMessage from "./in-app-message.js";
|
|
2
|
+
import u from "../../managers/subscription-manager.js";
|
|
3
|
+
export default class InAppMessageButton {
|
|
4
|
+
constructor(s, t, i, r, e, h, n) {
|
|
5
|
+
(this.text = s || ""),
|
|
6
|
+
(this.backgroundColor = t || InAppMessage.xi.Ci),
|
|
7
|
+
(this.textColor = i || InAppMessage.xi.Ei),
|
|
8
|
+
(this.borderColor = r || this.backgroundColor),
|
|
9
|
+
(this.clickAction = e || InAppMessage.ClickAction.NONE),
|
|
10
|
+
(this.uri = h),
|
|
11
|
+
null == n && (n = InAppMessageButton.di),
|
|
12
|
+
(this.id = n),
|
|
13
|
+
(this.nl = !1),
|
|
14
|
+
(this.lt = new u());
|
|
15
|
+
}
|
|
16
|
+
subscribeToClickedEvent(s) {
|
|
17
|
+
return this.lt.ut(s);
|
|
18
|
+
}
|
|
19
|
+
removeSubscription(s) {
|
|
20
|
+
this.lt.removeSubscription(s);
|
|
21
|
+
}
|
|
22
|
+
removeAllSubscriptions() {
|
|
23
|
+
this.lt.removeAllSubscriptions();
|
|
24
|
+
}
|
|
25
|
+
k() {
|
|
26
|
+
return !this.nl && ((this.nl = !0), this.lt.St(), !0);
|
|
27
|
+
}
|
|
28
|
+
static fromJson(s) {
|
|
29
|
+
return new InAppMessageButton(
|
|
30
|
+
s.text,
|
|
31
|
+
s.bg_color,
|
|
32
|
+
s.text_color,
|
|
33
|
+
s.border_color,
|
|
34
|
+
s.click_action,
|
|
35
|
+
s.uri,
|
|
36
|
+
s.id
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
InAppMessageButton.di = -1;
|