@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.
Files changed (2) hide show
  1. package/index.js +37 -4
  2. 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
- if (referrerUrl.host !== window.location.host) {
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 window.location.search;
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.36.2" ,
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(window.location.search);
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();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blotoutio/edgetag-sdk-browser",
3
- "version": "0.36.2",
3
+ "version": "0.38.0",
4
4
  "description": "Browser SDK for EdgeTag",
5
5
  "author": "Blotout",
6
6
  "license": "MIT",