@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.
- package/index.d.ts +103 -33
- package/package.json +1 -1
- package/shared-lib/encoding-utils.js +1 -1
- package/shared-lib/event-types.js +22 -22
- package/shared-lib/guid.js +3 -3
- package/shared-lib/indexed-db-adapter.js +19 -19
- package/shared-lib/logger.js +18 -18
- package/shared-lib/supported-options.js +15 -15
- package/src/Banner/banner-factory.js +2 -1
- package/src/Banner/banner-provider-factory.js +7 -7
- package/src/Banner/banner-provider.js +92 -98
- package/src/Banner/banner.js +21 -18
- package/src/Banner/display/banner-to-html.js +9 -9
- package/src/Banner/display/destroy-banner-html.js +2 -2
- package/src/Banner/display/detect-banner-impressions.js +2 -2
- package/src/Banner/get-all-banners.js +5 -5
- package/src/Banner/get-banner.js +7 -7
- package/src/Banner/log-banner-click.js +7 -7
- package/src/Banner/log-banner-impressions.js +9 -9
- package/src/Banner/request-banners-refresh.js +16 -20
- package/src/Banner/subscribe-to-banners-updates.js +7 -7
- package/src/Banner/ui/insert-banner.js +6 -6
- package/src/Card/card-manager-factory.js +7 -7
- package/src/Card/card-manager.js +35 -35
- package/src/Card/display/card-display.js +11 -11
- package/src/Card/log-card-dismissal.js +4 -4
- package/src/Card/log-content-card-click.js +4 -4
- package/src/Card/log-content-card-impressions.js +6 -6
- package/src/Card/models/captioned-image.js +21 -21
- package/src/Card/models/card.js +68 -68
- package/src/Card/models/classic-card.js +21 -21
- package/src/Card/models/control-card.js +11 -11
- package/src/Card/models/image-only.js +18 -18
- package/src/Card/util/card-factory.js +35 -35
- package/src/ContentCards/content-cards-provider-factory.js +13 -13
- package/src/ContentCards/content-cards-provider.js +136 -136
- package/src/ContentCards/get-cached-content-cards.js +2 -2
- package/src/ContentCards/request-content-cards-refresh.js +2 -2
- package/src/ContentCards/subscribe-to-content-cards-updates.js +6 -6
- package/src/ContentCards/ui/show-content-cards.js +7 -7
- package/src/Core/add-sdk-metadata.js +3 -3
- package/src/Core/change-user.js +7 -7
- package/src/Core/destroy.js +2 -2
- package/src/Core/disable-sdk.js +8 -8
- package/src/Core/enable-sdk.js +6 -6
- package/src/Core/get-device-id.js +4 -4
- package/src/Core/handle-braze-action.js +5 -5
- package/src/Core/is-disabled.js +1 -1
- package/src/Core/log-custom-event.js +10 -10
- package/src/Core/log-purchase.js +13 -13
- package/src/Core/open-session.js +10 -10
- package/src/Core/set-logger.js +2 -2
- package/src/Core/set-sdk-authentication-signature.js +2 -2
- package/src/Core/toggle-logging.js +2 -2
- package/src/Core/wipe-data.js +7 -7
- package/src/FeatureFlags/feature-flag-factory.js +10 -10
- package/src/FeatureFlags/feature-flag.js +20 -71
- package/src/FeatureFlags/feature-flags-provider-factory.js +12 -12
- package/src/FeatureFlags/feature-flags-provider.js +87 -87
- package/src/FeatureFlags/get-all-feature-flags.js +4 -4
- package/src/FeatureFlags/get-feature-flag.js +4 -4
- package/src/FeatureFlags/log-feature-flag-impression.js +9 -9
- package/src/FeatureFlags/refresh-feature-flags.js +2 -2
- package/src/FeatureFlags/subscribe-to-feature-flags-updates.js +4 -4
- package/src/InAppMessage/defer-in-app-message.js +4 -4
- package/src/InAppMessage/display/html-message-to-html.js +10 -10
- package/src/InAppMessage/display/in-app-message-to-html.js +28 -28
- package/src/InAppMessage/display/modal-utils.js +7 -7
- package/src/InAppMessage/in-app-message-factory.js +15 -15
- package/src/InAppMessage/in-app-message-manager-factory.js +5 -5
- package/src/InAppMessage/in-app-message-manager.js +100 -100
- package/src/InAppMessage/log-in-app-message-button-click.js +9 -9
- package/src/InAppMessage/log-in-app-message-click.js +6 -6
- package/src/InAppMessage/log-in-app-message-html-click.js +9 -9
- package/src/InAppMessage/log-in-app-message-impression.js +4 -4
- package/src/InAppMessage/models/control-message.js +4 -4
- package/src/InAppMessage/models/full-screen-message.js +35 -35
- package/src/InAppMessage/models/html-message.js +21 -21
- package/src/InAppMessage/models/in-app-message-button.js +5 -5
- package/src/InAppMessage/models/in-app-message.js +75 -75
- package/src/InAppMessage/models/modal-message.js +34 -34
- package/src/InAppMessage/models/slide-up-message.js +31 -31
- package/src/InAppMessage/models/templated-in-app-message.js +8 -8
- package/src/InAppMessage/subscribe-to-in-app-message.js +1 -1
- package/src/InAppMessage/ui/automatically-show-in-app-messages.js +3 -3
- package/src/InAppMessage/ui/show-in-app-message.js +19 -19
- package/src/Push/push-manager-factory.js +9 -9
- package/src/Push/push-manager.js +118 -118
- package/src/Push/utils/push-utils.js +9 -9
- package/src/User/user-manager.js +20 -20
- package/src/User/user.js +44 -45
- package/src/common/base-provider.js +1 -1
- package/src/common/content-cards-display.js +18 -18
- package/src/common/event-logger.js +10 -10
- package/src/common/properties-base.js +56 -0
- package/src/l10n/l10n-manager-factory.js +7 -7
- package/src/l10n/l10n-manager.js +4 -4
- package/src/managers/auth-manager.js +32 -32
- package/src/managers/braze-instance.js +143 -143
- package/src/managers/device-manager.js +22 -22
- package/src/managers/network-manager.js +172 -168
- package/src/managers/server-config-manager.js +73 -73
- package/src/managers/session-manager.js +40 -40
- package/src/managers/storage-manager-factory.js +6 -6
- package/src/managers/storage-manager.js +97 -97
- package/src/managers/subscription-manager.js +12 -12
- package/src/managers/utils.js +1 -1
- package/src/models/backend-errors.js +5 -5
- package/src/models/braze-event.js +5 -5
- package/src/models/device.js +2 -2
- package/src/models/identifier.js +12 -12
- package/src/models/push-token.js +13 -13
- package/src/models/request-result.js +4 -4
- package/src/models/server-config.js +31 -31
- package/src/request-controller.js +159 -159
- package/src/triggers/models/custom-event-data.js +1 -1
- package/src/triggers/models/custom-event-property-data.js +2 -2
- package/src/triggers/models/filter-set.js +6 -6
- package/src/triggers/models/filter.js +26 -26
- package/src/triggers/models/in-app-message-click-data.js +1 -1
- package/src/triggers/models/purchase-data.js +1 -1
- package/src/triggers/models/purchase-property-data.js +2 -2
- package/src/triggers/models/push-click-data.js +1 -1
- package/src/triggers/models/trigger-condition.js +37 -37
- package/src/triggers/models/trigger-events.js +3 -3
- package/src/triggers/models/trigger.js +16 -16
- package/src/triggers/triggers-provider-factory.js +12 -12
- package/src/triggers/triggers-provider.js +61 -61
- package/src/ui/js/attach-css.js +1 -1
- package/src/ui/js/load-font-awesome.js +1 -1
- package/src/util/base-device-parser.js +1 -1
- package/src/util/braze-actions.js +6 -6
- package/src/util/browser-detector.js +20 -13
- package/src/util/client-hints-parser.js +6 -6
- package/src/util/code-utils.js +2 -2
- package/src/util/component-utils.js +1 -1
- package/src/util/deprecation-utils.js +2 -2
- package/src/util/device-constants.js +4 -4
- package/src/util/dom-utils.js +9 -9
- package/src/util/html-display-utils.js +7 -7
- package/src/util/key-codes.js +1 -1
- package/src/util/net.js +12 -12
- package/src/util/request-header-utils.js +22 -22
- package/src/util/string-utils.js +2 -2
- package/src/util/user-agent-parser.js +16 -16
- package/src/util/validation-utils.js +12 -12
- package/src/util/window-utils.js +2 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import r, { OPTIONS as z } from "../../managers/braze-instance.js";
|
|
2
2
|
import { ContentCards, subscribeToContentCardsUpdates } from "../index.js";
|
|
3
|
-
import
|
|
3
|
+
import rr from "../content-cards-provider-factory.js";
|
|
4
4
|
import { setCardHeight as tn } from "../../Card/display/card-display.js";
|
|
5
|
-
import { logger as
|
|
5
|
+
import { logger as E } from "../../../shared-lib/index.js";
|
|
6
6
|
import {
|
|
7
7
|
destroyContentCardsHtml as nn,
|
|
8
8
|
detectContentCardsImpressions as en,
|
|
@@ -19,19 +19,19 @@ export function showContentCards(n, t) {
|
|
|
19
19
|
let e = !1;
|
|
20
20
|
null == n && ((n = document.body), (e = !0));
|
|
21
21
|
const o = r.ee(z.tn) || !1,
|
|
22
|
-
s =
|
|
22
|
+
s = rr.o().Ws(!1);
|
|
23
23
|
"function" == typeof t && cn(s, t(s.cards.slice()), s.lastUpdated, null, o);
|
|
24
24
|
const a = on(s, o, e),
|
|
25
|
-
i =
|
|
26
|
-
c = i.
|
|
25
|
+
i = rr.o(),
|
|
26
|
+
c = i.Bs();
|
|
27
27
|
(null == s.lastUpdated ||
|
|
28
28
|
new Date().valueOf() - s.lastUpdated.valueOf() > ContentCards.ur) &&
|
|
29
29
|
(null == c || new Date().valueOf() - c > ContentCards.ur) &&
|
|
30
|
-
(
|
|
30
|
+
(E.info(
|
|
31
31
|
`Cached content cards were older than max TTL of ${ContentCards.ur} ms, requesting an update from the server.`,
|
|
32
32
|
),
|
|
33
33
|
sn(s, a),
|
|
34
|
-
i.
|
|
34
|
+
i.Es(new Date().valueOf()));
|
|
35
35
|
const f = new Date().valueOf(),
|
|
36
36
|
l = subscribeToContentCardsUpdates(function (n) {
|
|
37
37
|
const e = a.querySelectorAll(".ab-refresh-button")[0];
|
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
isArray as D,
|
|
5
5
|
validateValueIsFromEnum as ta,
|
|
6
6
|
} from "../util/code-utils.js";
|
|
7
|
-
import { logger as
|
|
7
|
+
import { logger as E } from "../../shared-lib/index.js";
|
|
8
8
|
export function addSdkMetadata(a) {
|
|
9
9
|
if (!aa.rr()) return;
|
|
10
|
-
const t = aa.
|
|
10
|
+
const t = aa.m();
|
|
11
11
|
if (t) {
|
|
12
12
|
if (!D(a))
|
|
13
13
|
return (
|
|
14
|
-
|
|
14
|
+
E.error("Cannot set SDK metadata because metadata is not an array."), !1
|
|
15
15
|
);
|
|
16
16
|
for (const t of a)
|
|
17
17
|
if (
|
package/src/Core/change-user.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
|
-
import { getByteLength as
|
|
3
|
-
import { logger as
|
|
2
|
+
import { getByteLength as er } from "../util/string-utils.js";
|
|
3
|
+
import { logger as E } from "../../shared-lib/index.js";
|
|
4
4
|
import { User } from "../User/index.js";
|
|
5
|
-
import { validateStandardString as
|
|
5
|
+
import { validateStandardString as ir } from "../util/validation-utils.js";
|
|
6
6
|
export function changeUser(e, i) {
|
|
7
7
|
if (!r.rr()) return;
|
|
8
8
|
if (null == e || 0 === e.length || e != e)
|
|
9
|
-
return void
|
|
10
|
-
if (
|
|
11
|
-
return void
|
|
9
|
+
return void E.error("changeUser requires a non-empty userId.");
|
|
10
|
+
if (er(e) > User.mr)
|
|
11
|
+
return void E.error(
|
|
12
12
|
`Rejected user id "${e}" because it is longer than ${User.mr} bytes.`,
|
|
13
13
|
);
|
|
14
|
-
if (null != i && !
|
|
14
|
+
if (null != i && !ir(i, "set signature for new user", "signature")) return;
|
|
15
15
|
const t = r.nn();
|
|
16
16
|
t && t.changeUser(e.toString(), r.lr(), i);
|
|
17
17
|
}
|
package/src/Core/destroy.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
|
-
import { logger as
|
|
2
|
+
import { logger as E } from "../../shared-lib/index.js";
|
|
3
3
|
export function destroy() {
|
|
4
|
-
|
|
4
|
+
E.info("Destroying Braze instance"), r.destroy(!0);
|
|
5
5
|
}
|
package/src/Core/disable-sdk.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
|
-
import { logger as
|
|
2
|
+
import { logger as E, IndexedDBAdapter as et } from "../../shared-lib/index.js";
|
|
3
3
|
import ee, { STORAGE_KEYS as s } from "../managers/storage-manager.js";
|
|
4
4
|
export function disableSDK() {
|
|
5
5
|
const e = r.nn();
|
|
6
6
|
e && e.requestImmediateDataFlush();
|
|
7
|
-
const n = new ee.
|
|
8
|
-
a = "This-cookie-will-expire-in-" + n.
|
|
9
|
-
n.store(s.
|
|
10
|
-
const i = et.
|
|
11
|
-
new et(i,
|
|
12
|
-
|
|
7
|
+
const n = new ee.ne(null, !0),
|
|
8
|
+
a = "This-cookie-will-expire-in-" + n.se();
|
|
9
|
+
n.store(s.ie, a);
|
|
10
|
+
const i = et.Us.Rs;
|
|
11
|
+
new et(i, E).setItem(i.Fs.le, i.me, !0),
|
|
12
|
+
E.info("disableSDK was called"),
|
|
13
13
|
r.destroy(!1),
|
|
14
|
-
r.
|
|
14
|
+
r.ce(!0);
|
|
15
15
|
}
|
package/src/Core/enable-sdk.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
|
-
import { logger as
|
|
2
|
+
import { logger as E, IndexedDBAdapter as et } from "../../shared-lib/index.js";
|
|
3
3
|
import ee, { STORAGE_KEYS as s } from "../managers/storage-manager.js";
|
|
4
4
|
export function enableSDK() {
|
|
5
|
-
new ee.
|
|
6
|
-
const e = et.
|
|
7
|
-
new et(e,
|
|
8
|
-
|
|
5
|
+
new ee.ne(null, !0).remove(s.ie);
|
|
6
|
+
const e = et.Us.Rs;
|
|
7
|
+
new et(e, E).be(e.Fs.le, e.me),
|
|
8
|
+
E.info("enableSDK was called"),
|
|
9
9
|
r.destroy(!1),
|
|
10
|
-
r.
|
|
10
|
+
r.ce(!1);
|
|
11
11
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
|
-
import { logger as
|
|
2
|
+
import { logger as E } from "../../shared-lib/index.js";
|
|
3
3
|
export function getDeviceId(e) {
|
|
4
4
|
if (!r.rr()) return;
|
|
5
|
-
const t = r.
|
|
5
|
+
const t = r.de();
|
|
6
6
|
if (!t) return;
|
|
7
|
-
const i = t.
|
|
7
|
+
const i = t.fe().id;
|
|
8
8
|
if ("function" != typeof e) return i;
|
|
9
|
-
|
|
9
|
+
E.warn(
|
|
10
10
|
"The callback for getDeviceId is deprecated. You can access its return value directly instead (e.g. `const id = braze.getDeviceId()`)",
|
|
11
11
|
),
|
|
12
12
|
e(i);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { logger as
|
|
1
|
+
import { logger as E } from "../../shared-lib/index.js";
|
|
2
2
|
import { BRAZE_MUST_BE_INITIALIZED_ERROR as w } from "../common/constants.js";
|
|
3
3
|
import r from "../managers/braze-instance.js";
|
|
4
4
|
import {
|
|
@@ -20,7 +20,7 @@ export function _handleBrazeAction(o, e, s) {
|
|
|
20
20
|
if (!e) return;
|
|
21
21
|
const s = (o) => {
|
|
22
22
|
if (!io(o))
|
|
23
|
-
return void
|
|
23
|
+
return void E.error(
|
|
24
24
|
`Decoded Braze Action json is invalid: ${JSON.stringify(
|
|
25
25
|
o,
|
|
26
26
|
null,
|
|
@@ -44,7 +44,7 @@ export function _handleBrazeAction(o, e, s) {
|
|
|
44
44
|
r.ao()
|
|
45
45
|
? ((t = Array.prototype.slice.call(e)),
|
|
46
46
|
logCustomEvent(...t))
|
|
47
|
-
:
|
|
47
|
+
: E.error(w);
|
|
48
48
|
},
|
|
49
49
|
);
|
|
50
50
|
break;
|
|
@@ -55,7 +55,7 @@ export function _handleBrazeAction(o, e, s) {
|
|
|
55
55
|
? "Safari" === ro.browser && ro.OS === so.co
|
|
56
56
|
? window.navigator.standalone && requestPushPermission()
|
|
57
57
|
: requestPushPermission()
|
|
58
|
-
:
|
|
58
|
+
: E.error(w);
|
|
59
59
|
},
|
|
60
60
|
);
|
|
61
61
|
break;
|
|
@@ -75,7 +75,7 @@ export function _handleBrazeAction(o, e, s) {
|
|
|
75
75
|
(t = Array.prototype.slice.call(e)), no.openUri(...t);
|
|
76
76
|
break;
|
|
77
77
|
default:
|
|
78
|
-
|
|
78
|
+
E.info(`Ignoring unknown Braze Action: ${n}`);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
};
|
package/src/Core/is-disabled.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
2
|
import c from "../common/event-logger.js";
|
|
3
|
-
import { logger as
|
|
3
|
+
import { logger as E, EventTypes as m } from "../../shared-lib/index.js";
|
|
4
4
|
import ot from "../triggers/models/trigger-events.js";
|
|
5
5
|
import { TriggersProviderFactory as rt } from "../triggers/triggers-provider-factory.js";
|
|
6
6
|
import {
|
|
@@ -12,7 +12,7 @@ export function logCustomEvent(t, e) {
|
|
|
12
12
|
if (!r.rr()) return !1;
|
|
13
13
|
if (null == t || t.length <= 0)
|
|
14
14
|
return (
|
|
15
|
-
|
|
15
|
+
E.error(
|
|
16
16
|
`logCustomEvent requires a non-empty eventName, got "${t}". Ignoring event.`,
|
|
17
17
|
),
|
|
18
18
|
!1
|
|
@@ -26,13 +26,13 @@ export function logCustomEvent(t, e) {
|
|
|
26
26
|
"event",
|
|
27
27
|
);
|
|
28
28
|
if (!o) return !1;
|
|
29
|
-
const i = r.
|
|
30
|
-
if (i && i.
|
|
31
|
-
return
|
|
32
|
-
const s = c.
|
|
33
|
-
if (s.
|
|
34
|
-
|
|
35
|
-
for (const o of s
|
|
29
|
+
const i = r.l();
|
|
30
|
+
if (i && i.ge(t))
|
|
31
|
+
return E.info(`Custom Event "${t}" is blocklisted, ignoring.`), !1;
|
|
32
|
+
const s = c.rt(m.CustomEvent, { n: t, p: n });
|
|
33
|
+
if (s.W) {
|
|
34
|
+
E.info(`Logged custom event "${t}".`);
|
|
35
|
+
for (const o of s.ue) rt.o().ve(ot.pe, [t, e], o);
|
|
36
36
|
}
|
|
37
|
-
return s.
|
|
37
|
+
return s.W;
|
|
38
38
|
}
|
package/src/Core/log-purchase.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
2
|
import { MAX_PURCHASE_QUANTITY as or } from "../common/constants.js";
|
|
3
|
-
import { logger as
|
|
3
|
+
import { logger as E, EventTypes as m } from "../../shared-lib/index.js";
|
|
4
4
|
import ot from "../triggers/models/trigger-events.js";
|
|
5
5
|
import { TriggersProviderFactory as rt } from "../triggers/triggers-provider-factory.js";
|
|
6
6
|
import {
|
|
@@ -14,7 +14,7 @@ export function logPurchase(e, o, i, n, t) {
|
|
|
14
14
|
(null == i && (i = "USD"), null == n && (n = 1), null == e || e.length <= 0)
|
|
15
15
|
)
|
|
16
16
|
return (
|
|
17
|
-
|
|
17
|
+
E.error(
|
|
18
18
|
`logPurchase requires a non-empty productId, got "${e}", ignoring.`,
|
|
19
19
|
),
|
|
20
20
|
!1
|
|
@@ -22,18 +22,18 @@ export function logPurchase(e, o, i, n, t) {
|
|
|
22
22
|
if (!mt(e, "log purchase", "the purchase name")) return !1;
|
|
23
23
|
if (null == o || isNaN(parseFloat(o.toString())))
|
|
24
24
|
return (
|
|
25
|
-
|
|
25
|
+
E.error(`logPurchase requires a numeric price, got ${o}, ignoring.`), !1
|
|
26
26
|
);
|
|
27
27
|
const s = parseFloat(o.toString()).toFixed(2);
|
|
28
28
|
if (null == n || isNaN(parseInt(n.toString())))
|
|
29
29
|
return (
|
|
30
|
-
|
|
30
|
+
E.error(`logPurchase requires an integer quantity, got ${n}, ignoring.`),
|
|
31
31
|
!1
|
|
32
32
|
);
|
|
33
33
|
const D = parseInt(n.toString());
|
|
34
34
|
if (D < 1 || D > or)
|
|
35
35
|
return (
|
|
36
|
-
|
|
36
|
+
E.error(
|
|
37
37
|
`logPurchase requires a quantity >1 and <${or}, got ${D}, ignoring.`,
|
|
38
38
|
),
|
|
39
39
|
!1
|
|
@@ -216,7 +216,7 @@ export function logPurchase(e, o, i, n, t) {
|
|
|
216
216
|
].indexOf(i)
|
|
217
217
|
)
|
|
218
218
|
return (
|
|
219
|
-
|
|
219
|
+
E.error(`logPurchase requires a valid currencyCode, got ${i}, ignoring.`),
|
|
220
220
|
!1
|
|
221
221
|
);
|
|
222
222
|
const [u, a] = nt(
|
|
@@ -227,13 +227,13 @@ export function logPurchase(e, o, i, n, t) {
|
|
|
227
227
|
"purchase",
|
|
228
228
|
);
|
|
229
229
|
if (!u) return !1;
|
|
230
|
-
const g = r.
|
|
230
|
+
const g = r.l();
|
|
231
231
|
if (g && g.Dr(e))
|
|
232
|
-
return
|
|
233
|
-
const P = c.
|
|
234
|
-
if (P.
|
|
235
|
-
|
|
236
|
-
for (const r of P
|
|
232
|
+
return E.info(`Purchase "${e}" is blocklisted, ignoring.`), !1;
|
|
233
|
+
const P = c.rt(m.Pr, { pid: e, c: i, p: s, q: D, pr: a });
|
|
234
|
+
if (P.W) {
|
|
235
|
+
E.info(`Logged ${D} purchase${D > 1 ? "s" : ""} of "${e}" for ${i} ${s}.`);
|
|
236
|
+
for (const r of P.ue) rt.o().ve(ot.Rr, [e, t], r);
|
|
237
237
|
}
|
|
238
|
-
return P.
|
|
238
|
+
return P.W;
|
|
239
239
|
}
|
package/src/Core/open-session.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
|
-
import { logger as
|
|
2
|
+
import { logger as E, IndexedDBAdapter as et } from "../../shared-lib/index.js";
|
|
3
3
|
import ot from "../triggers/models/trigger-events.js";
|
|
4
4
|
import { TriggersProviderFactory as rt } from "../triggers/triggers-provider-factory.js";
|
|
5
5
|
export function openSession() {
|
|
@@ -7,19 +7,19 @@ export function openSession() {
|
|
|
7
7
|
const i = r.nn();
|
|
8
8
|
if (!i) return;
|
|
9
9
|
i.openSession();
|
|
10
|
-
const t = et.
|
|
11
|
-
o = new et(t,
|
|
12
|
-
o.jr(t.
|
|
10
|
+
const t = et.Us.Rs,
|
|
11
|
+
o = new et(t, E);
|
|
12
|
+
o.jr(t.Fs.hr, (r, n) => {
|
|
13
13
|
const e = n.lastClick,
|
|
14
14
|
s = n.trackingString;
|
|
15
|
-
|
|
16
|
-
const c = i.
|
|
15
|
+
E.info(`Firing push click trigger from ${s} push click at ${e}`);
|
|
16
|
+
const c = i.kr(e, s),
|
|
17
17
|
g = function () {
|
|
18
|
-
rt.
|
|
18
|
+
rt.o().ve(ot.vr, [s], c);
|
|
19
19
|
};
|
|
20
|
-
i
|
|
20
|
+
i.$r(g, g), o.be(t.Fs.hr, r);
|
|
21
21
|
}),
|
|
22
|
-
o.
|
|
23
|
-
i.
|
|
22
|
+
o.Ds(t.Fs.wr, function (r) {
|
|
23
|
+
i.yr(r);
|
|
24
24
|
});
|
|
25
25
|
}
|
package/src/Core/set-logger.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
|
-
import { validateStandardString as
|
|
2
|
+
import { validateStandardString as ir } from "../util/validation-utils.js";
|
|
3
3
|
export function setSdkAuthenticationSignature(t) {
|
|
4
4
|
if (!r.rr()) return !1;
|
|
5
|
-
if ("" === t || !
|
|
5
|
+
if ("" === t || !ir(t, "set signature", "signature", !1)) return !1;
|
|
6
6
|
const i = r.Sr();
|
|
7
7
|
return !!i && (i.setSdkAuthenticationSignature(t), !0);
|
|
8
8
|
}
|
package/src/Core/wipe-data.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
2
|
import { keys as C } from "../util/code-utils.js";
|
|
3
|
-
import { logger as
|
|
3
|
+
import { logger as E, IndexedDBAdapter as et } from "../../shared-lib/index.js";
|
|
4
4
|
import { BRAZE_MUST_BE_INITIALIZED_ERROR as w } from "../common/constants.js";
|
|
5
5
|
export function wipeData() {
|
|
6
|
-
const o = r.
|
|
7
|
-
if (null == o) return void
|
|
6
|
+
const o = r.p();
|
|
7
|
+
if (null == o) return void E.warn(w);
|
|
8
8
|
o.clearData();
|
|
9
|
-
const t = C(et.
|
|
9
|
+
const t = C(et.Us);
|
|
10
10
|
for (let o = 0; o < t.length; o++) {
|
|
11
11
|
const n = t[o],
|
|
12
|
-
r = et.
|
|
13
|
-
new et(r,
|
|
12
|
+
r = et.Us[n];
|
|
13
|
+
new et(r, E).clearData();
|
|
14
14
|
}
|
|
15
15
|
if (r.rr()) for (const o of r.lr()) o.clearData(!0);
|
|
16
|
-
const n = r.
|
|
16
|
+
const n = r.m();
|
|
17
17
|
n && n.fo();
|
|
18
18
|
}
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { logger as
|
|
1
|
+
import { logger as E } from "../../shared-lib/index.js";
|
|
2
2
|
import FeatureFlag from "./feature-flag.js";
|
|
3
3
|
export function newFeatureFlagFromJson(e) {
|
|
4
|
-
if (e[FeatureFlag.ui.
|
|
4
|
+
if (e[FeatureFlag.ui.rs] && "boolean" == typeof e[FeatureFlag.ui.Fe])
|
|
5
5
|
return new FeatureFlag(
|
|
6
|
-
e[FeatureFlag.ui.
|
|
6
|
+
e[FeatureFlag.ui.rs],
|
|
7
7
|
e[FeatureFlag.ui.Fe],
|
|
8
8
|
e[FeatureFlag.ui.we],
|
|
9
9
|
e[FeatureFlag.ui.xe],
|
|
10
10
|
);
|
|
11
|
-
|
|
11
|
+
E.info(`Unable to create feature flag from ${JSON.stringify(e, null, 2)}`);
|
|
12
12
|
}
|
|
13
13
|
export function newFeatureFlagFromSerializedValue(e) {
|
|
14
|
-
if (e[FeatureFlag.
|
|
14
|
+
if (e[FeatureFlag.ss.rs] && "boolean" == typeof e[FeatureFlag.ss.Fe])
|
|
15
15
|
return new FeatureFlag(
|
|
16
|
-
e[FeatureFlag.
|
|
17
|
-
e[FeatureFlag.
|
|
18
|
-
e[FeatureFlag.
|
|
19
|
-
e[FeatureFlag.
|
|
16
|
+
e[FeatureFlag.ss.rs],
|
|
17
|
+
e[FeatureFlag.ss.Fe],
|
|
18
|
+
e[FeatureFlag.ss.we],
|
|
19
|
+
e[FeatureFlag.ss.xe],
|
|
20
20
|
);
|
|
21
|
-
|
|
21
|
+
E.info(
|
|
22
22
|
`Unable to deserialize feature flag from ${JSON.stringify(e, null, 2)}`,
|
|
23
23
|
);
|
|
24
24
|
}
|
|
@@ -1,75 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export default class FeatureFlag {
|
|
3
|
-
constructor(
|
|
4
|
-
(
|
|
5
|
-
(this.
|
|
6
|
-
(this.
|
|
7
|
-
(this.trackingString =
|
|
8
|
-
(this.id =
|
|
9
|
-
(this.enabled =
|
|
10
|
-
(this.
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const i = this.properties[t];
|
|
15
|
-
return null == i ? (this.ye(t), null) : e(i) ? i.value : (this.Pe(r), null);
|
|
16
|
-
}
|
|
17
|
-
getStringProperty(t) {
|
|
18
|
-
return this.he(t, this.Ie, "string");
|
|
19
|
-
}
|
|
20
|
-
getNumberProperty(t) {
|
|
21
|
-
return this.he(t, this.Te, "number");
|
|
22
|
-
}
|
|
23
|
-
getBooleanProperty(t) {
|
|
24
|
-
return this.he(t, this.Ne, "boolean");
|
|
25
|
-
}
|
|
26
|
-
getImageProperty(t) {
|
|
27
|
-
return this.he(t, this.Re, "image");
|
|
28
|
-
}
|
|
29
|
-
getJsonProperty(t) {
|
|
30
|
-
return this.he(t, this.Se, "jsonobject");
|
|
31
|
-
}
|
|
32
|
-
getTimestampProperty(t) {
|
|
33
|
-
return this.he(t, this.Ae, "datetime");
|
|
34
|
-
}
|
|
35
|
-
bt() {
|
|
36
|
-
const t = {};
|
|
37
|
-
return (
|
|
38
|
-
(t[FeatureFlag.hs.os] = this.id),
|
|
39
|
-
(t[FeatureFlag.hs.Fe] = this.enabled),
|
|
40
|
-
(t[FeatureFlag.hs.we] = this.properties),
|
|
41
|
-
(t[FeatureFlag.hs.xe] = this.trackingString),
|
|
42
|
-
t
|
|
43
|
-
);
|
|
44
|
-
}
|
|
45
|
-
Pe(t) {
|
|
46
|
-
N.info(`Property is not of type ${t}.`);
|
|
47
|
-
}
|
|
48
|
-
ye(t) {
|
|
49
|
-
N.info(`${t} not found in feature flag properties.`);
|
|
50
|
-
}
|
|
51
|
-
Ie(t) {
|
|
52
|
-
return "string" === t.type && "string" == typeof t.value;
|
|
53
|
-
}
|
|
54
|
-
Te(t) {
|
|
55
|
-
return "number" === t.type && "number" == typeof t.value;
|
|
56
|
-
}
|
|
57
|
-
Ne(t) {
|
|
58
|
-
return "boolean" === t.type && "boolean" == typeof t.value;
|
|
59
|
-
}
|
|
60
|
-
Re(t) {
|
|
61
|
-
return "image" === t.type && "string" == typeof t.value;
|
|
62
|
-
}
|
|
63
|
-
Se(t) {
|
|
1
|
+
import { PropertiesBase as p } from "../common/properties-base.js";
|
|
2
|
+
export default class FeatureFlag extends p {
|
|
3
|
+
constructor(s, t = !1, i = {}, e) {
|
|
4
|
+
super(i),
|
|
5
|
+
(this.id = s),
|
|
6
|
+
(this.enabled = t),
|
|
7
|
+
(this.trackingString = e),
|
|
8
|
+
(this.id = s),
|
|
9
|
+
(this.enabled = t),
|
|
10
|
+
(this.trackingString = e);
|
|
11
|
+
}
|
|
12
|
+
dt() {
|
|
13
|
+
const s = {};
|
|
64
14
|
return (
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
15
|
+
(s[FeatureFlag.ss.rs] = this.id),
|
|
16
|
+
(s[FeatureFlag.ss.Fe] = this.enabled),
|
|
17
|
+
(s[FeatureFlag.ss.we] = this.properties),
|
|
18
|
+
(s[FeatureFlag.ss.xe] = this.trackingString),
|
|
19
|
+
s
|
|
68
20
|
);
|
|
69
21
|
}
|
|
70
|
-
Ae(t) {
|
|
71
|
-
return "datetime" === t.type && "number" == typeof t.value;
|
|
72
|
-
}
|
|
73
22
|
}
|
|
74
|
-
(FeatureFlag.
|
|
75
|
-
(FeatureFlag.ui = {
|
|
23
|
+
(FeatureFlag.ss = { rs: "id", Fe: "e", we: "pr", xe: "fts" }),
|
|
24
|
+
(FeatureFlag.ui = { rs: "id", Fe: "enabled", we: "properties", xe: "fts" });
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import r from "../managers/braze-instance.js";
|
|
2
|
-
import
|
|
3
|
-
const
|
|
4
|
-
|
|
2
|
+
import tr from "./feature-flags-provider.js";
|
|
3
|
+
const nr = {
|
|
4
|
+
i: !1,
|
|
5
5
|
provider: null,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
((
|
|
10
|
-
|
|
6
|
+
o: () => (
|
|
7
|
+
nr.t(),
|
|
8
|
+
nr.provider ||
|
|
9
|
+
((nr.provider = new tr(r.l(), r.m(), r.p(), r.u())), r.v(nr.provider)),
|
|
10
|
+
nr.provider
|
|
11
11
|
),
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
t: () => {
|
|
13
|
+
nr.i || (r.g(nr), (nr.i = !0));
|
|
14
14
|
},
|
|
15
15
|
destroy: () => {
|
|
16
|
-
(
|
|
16
|
+
(nr.provider = null), (nr.i = !1);
|
|
17
17
|
},
|
|
18
18
|
};
|
|
19
|
-
export default
|
|
19
|
+
export default nr;
|