@builder.io/sdk 3.0.2-1 → 3.0.2

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 (35) hide show
  1. package/.yarnrc.yml +1 -0
  2. package/CHANGELOG.md +6 -0
  3. package/dist/index.browser.js +13 -20
  4. package/dist/index.browser.js.map +1 -1
  5. package/dist/index.cjs.js +13 -20
  6. package/dist/index.cjs.js.map +1 -1
  7. package/dist/index.esm.js +13 -20
  8. package/dist/index.esm.js.map +1 -1
  9. package/dist/index.umd.js +13 -20
  10. package/dist/index.umd.js.map +1 -1
  11. package/dist/package.json +3 -3
  12. package/dist/src/builder.class.js +12 -6
  13. package/dist/src/builder.class.js.map +1 -1
  14. package/dist/src/classes/cookies.class.js +0 -2
  15. package/dist/src/classes/cookies.class.js.map +1 -1
  16. package/dist/src/classes/promise.class.js +154 -150
  17. package/dist/src/classes/query-string.class.js +74 -73
  18. package/dist/src/classes/query-string.class.test.js +20 -20
  19. package/dist/src/functions/assign.function.js +19 -19
  20. package/dist/src/functions/fetch.function.js +75 -97
  21. package/dist/src/functions/finder.function.js +274 -389
  22. package/dist/src/functions/next-tick.function.js +23 -26
  23. package/dist/src/functions/omit.function.js +13 -13
  24. package/dist/src/functions/server-only-require.function.js +9 -10
  25. package/dist/src/functions/throttle.function.js +37 -35
  26. package/dist/src/functions/to-error.js +6 -5
  27. package/dist/src/functions/uuid.js +8 -9
  28. package/dist/src/types/api-version.js +3 -3
  29. package/dist/src/types/element.js +3 -3
  30. package/dist/src/url.test.js +118 -222
  31. package/dist/tsconfig.tsbuildinfo +1 -1
  32. package/package.json +5 -6
  33. package/dist/src/functions/get-top-level-domain.d.ts +0 -6
  34. package/dist/src/functions/get-top-level-domain.js +0 -17
  35. package/dist/src/functions/get-top-level-domain.js.map +0 -1
package/dist/index.cjs.js CHANGED
@@ -126,7 +126,7 @@ function assertAllowedPropertyName(name) {
126
126
  throw new Error("Property name \"".concat(name, "\" is not allowed"));
127
127
  }
128
128
 
129
- var version = "3.0.2-0";
129
+ var version = "3.0.2";
130
130
 
131
131
  var Subscription = /** @class */ (function () {
132
132
  function Subscription(listeners, listener) {
@@ -741,19 +741,6 @@ var Animator = /** @class */ (function () {
741
741
  return Animator;
742
742
  }());
743
743
 
744
- /**
745
- * Only gets one level up from hostname
746
- * wwww.example.com -> example.com
747
- * www.example.co.uk -> example.co.uk
748
- */
749
- function getTopLevelDomain(host) {
750
- var parts = host.split('.');
751
- if (parts.length > 2) {
752
- return parts.slice(1).join('.');
753
- }
754
- return host;
755
- }
756
-
757
744
  /**
758
745
  * RegExp to match field-content in RFC 7230 sec 3.2
759
746
  *
@@ -798,7 +785,6 @@ var Cookies = /** @class */ (function () {
798
785
  if (opts && 'secure' in opts) {
799
786
  cookie.secure = !!opts.secure;
800
787
  }
801
- cookie.domain = req.headers.host && getTopLevelDomain(req.headers.host);
802
788
  pushCookie(headers, cookie);
803
789
  var setHeader = res.setHeader;
804
790
  setHeader.call(res, 'Set-Cookie', headers);
@@ -1055,7 +1041,6 @@ function setCookie(name, value, expires) {
1055
1041
  (value || '') +
1056
1042
  expiresString +
1057
1043
  '; path=/' +
1058
- "; domain=".concat(getTopLevelDomain(location.hostname)) +
1059
1044
  (secure ? '; secure; SameSite=None' : '');
1060
1045
  }
1061
1046
  catch (err) {
@@ -1223,6 +1208,17 @@ var Builder = /** @class */ (function () {
1223
1208
  this.setTestsFromUrl();
1224
1209
  // TODO: do this on every request send?
1225
1210
  this.getOverridesFromQueryString();
1211
+ // cookies used in personalization container script, so need to set before hydration to match script result
1212
+ var userAttrCookie = this.getCookie(Builder.attributesCookieName);
1213
+ if (userAttrCookie) {
1214
+ try {
1215
+ var attributes = JSON.parse(userAttrCookie);
1216
+ this.setUserAttributes(attributes);
1217
+ }
1218
+ catch (err) {
1219
+ console.debug('Error parsing user attributes cookie', err);
1220
+ }
1221
+ }
1226
1222
  }
1227
1223
  }
1228
1224
  Builder.register = function (type, info) {
@@ -2112,12 +2108,9 @@ var Builder = /** @class */ (function () {
2112
2108
  };
2113
2109
  Builder.prototype.setUserAttributes = function (options) {
2114
2110
  assign(Builder.overrideUserAttributes, options);
2115
- try {
2111
+ if (this.canTrack) {
2116
2112
  this.setCookie(Builder.attributesCookieName, JSON.stringify(this.getUserAttributes()));
2117
2113
  }
2118
- catch (_a) {
2119
- // Ignore
2120
- }
2121
2114
  this.userAttributesChanged.next(options);
2122
2115
  };
2123
2116
  /**