@blotoutio/edgetag-sdk-browser 0.36.2 → 0.38.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.js +37 -4
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
get getData () { return getData; },
|
|
10
10
|
get getUserId () { return getUserId; },
|
|
11
11
|
get init () { return init; },
|
|
12
|
+
get isNewUser () { return isNewUser; },
|
|
12
13
|
get keys () { return keys; },
|
|
13
14
|
get tag () { return tag; },
|
|
14
15
|
get user () { return user; }
|
|
@@ -27,7 +28,8 @@
|
|
|
27
28
|
let referrer = '';
|
|
28
29
|
try {
|
|
29
30
|
const referrerUrl = new URL(document.referrer);
|
|
30
|
-
|
|
31
|
+
const pageUrl = new URL(getPageUrl());
|
|
32
|
+
if (referrerUrl.host !== pageUrl.host) {
|
|
31
33
|
referrer = referrerUrl.href;
|
|
32
34
|
}
|
|
33
35
|
return referrer;
|
|
@@ -49,7 +51,7 @@
|
|
|
49
51
|
};
|
|
50
52
|
const getSearch = () => {
|
|
51
53
|
try {
|
|
52
|
-
return
|
|
54
|
+
return new URL(getPageUrl()).search;
|
|
53
55
|
}
|
|
54
56
|
catch {
|
|
55
57
|
return '';
|
|
@@ -363,7 +365,7 @@
|
|
|
363
365
|
referrer: getReferrer(),
|
|
364
366
|
search: getSearch(),
|
|
365
367
|
locale: getLocale(),
|
|
366
|
-
sdkVersion: "0.
|
|
368
|
+
sdkVersion: "0.38.0" ,
|
|
367
369
|
...(payload || {}),
|
|
368
370
|
};
|
|
369
371
|
let storage = {};
|
|
@@ -839,7 +841,7 @@
|
|
|
839
841
|
catch {
|
|
840
842
|
return;
|
|
841
843
|
}
|
|
842
|
-
const params = new URLSearchParams(
|
|
844
|
+
const params = new URLSearchParams(getSearch());
|
|
843
845
|
if (!params || !params.get(key)) {
|
|
844
846
|
return;
|
|
845
847
|
}
|
|
@@ -953,6 +955,17 @@
|
|
|
953
955
|
processStubs();
|
|
954
956
|
};
|
|
955
957
|
|
|
958
|
+
let initIsNewUser = undefined;
|
|
959
|
+
const handleIsNewUser = () => {
|
|
960
|
+
if (initIsNewUser !== undefined) {
|
|
961
|
+
return initIsNewUser;
|
|
962
|
+
}
|
|
963
|
+
return undefined;
|
|
964
|
+
};
|
|
965
|
+
const setIsNewUSer = (isNewUser) => {
|
|
966
|
+
initIsNewUser = isNewUser;
|
|
967
|
+
};
|
|
968
|
+
|
|
956
969
|
const handleInit = (preferences) => {
|
|
957
970
|
const success = setPreferences(preferences);
|
|
958
971
|
if (!success) {
|
|
@@ -983,7 +996,20 @@
|
|
|
983
996
|
if (result.consent && !consent) {
|
|
984
997
|
saveConsent(result.consent);
|
|
985
998
|
}
|
|
999
|
+
setIsNewUSer(result.isNewUser);
|
|
986
1000
|
handleManifest(result.result, consent || result.consent);
|
|
1001
|
+
try {
|
|
1002
|
+
window.dispatchEvent(new CustomEvent('edgetag-initialized', {
|
|
1003
|
+
detail: {
|
|
1004
|
+
userId: result.userId,
|
|
1005
|
+
isNewUser: result.isNewUser,
|
|
1006
|
+
consent: result.consent,
|
|
1007
|
+
},
|
|
1008
|
+
}));
|
|
1009
|
+
}
|
|
1010
|
+
catch {
|
|
1011
|
+
// do nothing
|
|
1012
|
+
}
|
|
987
1013
|
})
|
|
988
1014
|
.catch(error);
|
|
989
1015
|
};
|
|
@@ -1085,6 +1111,9 @@
|
|
|
1085
1111
|
const getConsent = (callback) => {
|
|
1086
1112
|
handleGetConsent(callback);
|
|
1087
1113
|
};
|
|
1114
|
+
const isNewUser = () => {
|
|
1115
|
+
return handleIsNewUser();
|
|
1116
|
+
};
|
|
1088
1117
|
|
|
1089
1118
|
// TODO https://github.com/blotoutio/solutions/issues/826
|
|
1090
1119
|
|
|
@@ -1124,6 +1153,10 @@
|
|
|
1124
1153
|
getConsent(callback, error) {
|
|
1125
1154
|
getConsent(callback);
|
|
1126
1155
|
}
|
|
1156
|
+
|
|
1157
|
+
isNewUser() {
|
|
1158
|
+
return isNewUser()
|
|
1159
|
+
}
|
|
1127
1160
|
}
|
|
1128
1161
|
|
|
1129
1162
|
var api = new API();
|