@stytch/vanilla-js 5.25.2 → 5.26.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.
@@ -4986,7 +4986,7 @@ var HeadlessOAuthClient = /*#__PURE__*/function (_HeadlessOAuthClient$) {
4986
4986
  _inherits2(HeadlessOAuthClient, _HeadlessOAuthClient$);
4987
4987
  return _createClass2(HeadlessOAuthClient);
4988
4988
  }(HeadlessOAuthClient$1);
4989
- var version = "5.25.2";
4989
+ var version = "5.26.0";
4990
4990
  var NetworkClient = /*#__PURE__*/function () {
4991
4991
  function NetworkClient(_publicToken, _subscriptionDataLayer, _liveAPIURL, _testAPIURL, additionalTelemetryDataFn) {
4992
4992
  _classCallCheck2(this, NetworkClient);
@@ -5641,6 +5641,7 @@ var api = init(defaultConverter, {
5641
5641
  var STYTCH_SESSION_COOKIE = 'stytch_session';
5642
5642
  var STYTCH_SESSION_JWT_COOKIE = 'stytch_session_jwt';
5643
5643
  var STYTCH_INTERMEDIATE_SESSION_TOKEN_COOKIE = 'stytch_intermediate_session_token';
5644
+ var SEEN_DOMAINS_KEY = 'seen_domains';
5644
5645
  var isStorageAvailable = function isStorageAvailable(storage) {
5645
5646
  return typeof storage !== 'undefined' && storage !== null;
5646
5647
  };
@@ -5772,6 +5773,9 @@ var SubscriptionDataLayer = /*#__PURE__*/function () {
5772
5773
  path: this._cookiePath,
5773
5774
  domain: this._domain
5774
5775
  });
5776
+ if (cookieOpts.domain) {
5777
+ this.addSeenDomain(cookieOpts.domain);
5778
+ }
5775
5779
  api.set(this.opaqueTokenCookieName, session_token, cookieOpts);
5776
5780
  api.set(this.jwtCookieName, session_jwt, cookieOpts);
5777
5781
  var alternateCookieOptions = SubscriptionDataLayer.generateCookieOpts({
@@ -5780,6 +5784,9 @@ var SubscriptionDataLayer = /*#__PURE__*/function () {
5780
5784
  path: this._cookiePath,
5781
5785
  domain: this._domain
5782
5786
  });
5787
+ if (alternateCookieOptions.domain) {
5788
+ this.addSeenDomain(alternateCookieOptions.domain);
5789
+ }
5783
5790
  if (hasMultipleCookies(this.jwtCookieName)) {
5784
5791
  api.remove(this.jwtCookieName, alternateCookieOptions);
5785
5792
  }
@@ -5819,9 +5826,12 @@ var SubscriptionDataLayer = /*#__PURE__*/function () {
5819
5826
  key: "removeCookies",
5820
5827
  value: function removeCookies(cookiesToRemove) {
5821
5828
  var _this20 = this;
5829
+ var trackedDomains = this.getSeenDomains();
5830
+ var allDomains = [this._domain, null].concat(_toConsumableArray2(trackedDomains));
5831
+ var uniqueDomains = _toConsumableArray2(new Set(allDomains));
5822
5832
  [true, false].forEach(function (availableToSubdomains) {
5823
5833
  [_this20._cookiePath, null].forEach(function (path) {
5824
- [_this20._domain, null].forEach(function (domain) {
5834
+ uniqueDomains.forEach(function (domain) {
5825
5835
  var cookieOpts = SubscriptionDataLayer.generateCookieOpts({
5826
5836
  expiresAt: new Date(0).toString(),
5827
5837
  availableToSubdomains: availableToSubdomains,
@@ -5869,6 +5879,32 @@ var SubscriptionDataLayer = /*#__PURE__*/function () {
5869
5879
  key: getPersistentStorageKey(this.publicToken, key)
5870
5880
  });
5871
5881
  }
5882
+ }, {
5883
+ key: "getSeenDomains",
5884
+ value: function getSeenDomains() {
5885
+ var storedDomains = this.getItem(SEEN_DOMAINS_KEY);
5886
+ if (!storedDomains) {
5887
+ return [];
5888
+ }
5889
+ try {
5890
+ var parsed = JSON.parse(storedDomains);
5891
+ return Array.isArray(parsed) ? parsed : [];
5892
+ } catch (e) {
5893
+ return [];
5894
+ }
5895
+ }
5896
+ }, {
5897
+ key: "addSeenDomain",
5898
+ value: function addSeenDomain(domain) {
5899
+ if (!domain) {
5900
+ return;
5901
+ }
5902
+ var storedDomains = this.getSeenDomains();
5903
+ if (!storedDomains.includes(domain)) {
5904
+ storedDomains.push(domain);
5905
+ this.setItem(SEEN_DOMAINS_KEY, JSON.stringify(storedDomains));
5906
+ }
5907
+ }
5872
5908
  }], [{
5873
5909
  key: "generateCookieOpts",
5874
5910
  value: function generateCookieOpts(_ref19) {
@@ -4988,7 +4988,7 @@ var HeadlessOAuthClient = /*#__PURE__*/function (_HeadlessOAuthClient$) {
4988
4988
  _inherits2(HeadlessOAuthClient, _HeadlessOAuthClient$);
4989
4989
  return _createClass2(HeadlessOAuthClient);
4990
4990
  }(HeadlessOAuthClient$1);
4991
- var version = "5.25.2";
4991
+ var version = "5.26.0";
4992
4992
  var NetworkClient = /*#__PURE__*/function () {
4993
4993
  function NetworkClient(_publicToken, _subscriptionDataLayer, _liveAPIURL, _testAPIURL, additionalTelemetryDataFn) {
4994
4994
  _classCallCheck2(this, NetworkClient);
@@ -5643,6 +5643,7 @@ var api = init(defaultConverter, {
5643
5643
  var STYTCH_SESSION_COOKIE = 'stytch_session';
5644
5644
  var STYTCH_SESSION_JWT_COOKIE = 'stytch_session_jwt';
5645
5645
  var STYTCH_INTERMEDIATE_SESSION_TOKEN_COOKIE = 'stytch_intermediate_session_token';
5646
+ var SEEN_DOMAINS_KEY = 'seen_domains';
5646
5647
  var isStorageAvailable = function isStorageAvailable(storage) {
5647
5648
  return typeof storage !== 'undefined' && storage !== null;
5648
5649
  };
@@ -5774,6 +5775,9 @@ var SubscriptionDataLayer = /*#__PURE__*/function () {
5774
5775
  path: this._cookiePath,
5775
5776
  domain: this._domain
5776
5777
  });
5778
+ if (cookieOpts.domain) {
5779
+ this.addSeenDomain(cookieOpts.domain);
5780
+ }
5777
5781
  api.set(this.opaqueTokenCookieName, session_token, cookieOpts);
5778
5782
  api.set(this.jwtCookieName, session_jwt, cookieOpts);
5779
5783
  var alternateCookieOptions = SubscriptionDataLayer.generateCookieOpts({
@@ -5782,6 +5786,9 @@ var SubscriptionDataLayer = /*#__PURE__*/function () {
5782
5786
  path: this._cookiePath,
5783
5787
  domain: this._domain
5784
5788
  });
5789
+ if (alternateCookieOptions.domain) {
5790
+ this.addSeenDomain(alternateCookieOptions.domain);
5791
+ }
5785
5792
  if (hasMultipleCookies(this.jwtCookieName)) {
5786
5793
  api.remove(this.jwtCookieName, alternateCookieOptions);
5787
5794
  }
@@ -5821,9 +5828,12 @@ var SubscriptionDataLayer = /*#__PURE__*/function () {
5821
5828
  key: "removeCookies",
5822
5829
  value: function removeCookies(cookiesToRemove) {
5823
5830
  var _this20 = this;
5831
+ var trackedDomains = this.getSeenDomains();
5832
+ var allDomains = [this._domain, null].concat(_toConsumableArray2(trackedDomains));
5833
+ var uniqueDomains = _toConsumableArray2(new Set(allDomains));
5824
5834
  [true, false].forEach(function (availableToSubdomains) {
5825
5835
  [_this20._cookiePath, null].forEach(function (path) {
5826
- [_this20._domain, null].forEach(function (domain) {
5836
+ uniqueDomains.forEach(function (domain) {
5827
5837
  var cookieOpts = SubscriptionDataLayer.generateCookieOpts({
5828
5838
  expiresAt: new Date(0).toString(),
5829
5839
  availableToSubdomains: availableToSubdomains,
@@ -5871,6 +5881,32 @@ var SubscriptionDataLayer = /*#__PURE__*/function () {
5871
5881
  key: getPersistentStorageKey(this.publicToken, key)
5872
5882
  });
5873
5883
  }
5884
+ }, {
5885
+ key: "getSeenDomains",
5886
+ value: function getSeenDomains() {
5887
+ var storedDomains = this.getItem(SEEN_DOMAINS_KEY);
5888
+ if (!storedDomains) {
5889
+ return [];
5890
+ }
5891
+ try {
5892
+ var parsed = JSON.parse(storedDomains);
5893
+ return Array.isArray(parsed) ? parsed : [];
5894
+ } catch (e) {
5895
+ return [];
5896
+ }
5897
+ }
5898
+ }, {
5899
+ key: "addSeenDomain",
5900
+ value: function addSeenDomain(domain) {
5901
+ if (!domain) {
5902
+ return;
5903
+ }
5904
+ var storedDomains = this.getSeenDomains();
5905
+ if (!storedDomains.includes(domain)) {
5906
+ storedDomains.push(domain);
5907
+ this.setItem(SEEN_DOMAINS_KEY, JSON.stringify(storedDomains));
5908
+ }
5909
+ }
5874
5910
  }], [{
5875
5911
  key: "generateCookieOpts",
5876
5912
  value: function generateCookieOpts(_ref19) {