@stytch/nextjs 3.0.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # @stytch/nextjs
2
2
 
3
+ ## 3.0.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 79ca7ba: Add locale argument to B2B email magic link methods
8
+ - Updated dependencies [79ca7ba]
9
+ - @stytch/vanilla-js@0.11.3
10
+
3
11
  ## 3.0.1
4
12
 
5
13
  ### Patch Changes
@@ -612,9 +612,9 @@ catch (e) {
612
612
  } }
613
613
  function C(e, t) { return C = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (e, t) { return e.__proto__ = t, e; }, C(e, t); }
614
614
  function P(e) { return P = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (e) { return e.__proto__ || Object.getPrototypeOf(e); }, P(e); }
615
- var j, L, A, R, I, N;
616
- !function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(j || (j = {})), function (e) { e.Google = "google", e.Microsoft = "microsoft", e.Apple = "apple", e.Github = "github", e.GitLab = "gitlab", e.Facebook = "facebook", e.Discord = "discord", e.Slack = "slack", e.Amazon = "amazon", e.Bitbucket = "bitbucket", e.LinkedIn = "linkedin", e.Coinbase = "coinbase", e.Twitch = "twitch"; }(L || (L = {})), function (e) { e.Vessel = "Vessel", e.Phantom = "Phantom", e.Metamask = "Metamask", e.Coinbase = "Coinbase", e.Binance = "Binance", e.GenericEthereumWallet = "Other Ethereum Wallet", e.GenericSolanaWallet = "Other Solana Wallet"; }(A || (A = {})), function (e) { e.embedded = "embedded", e.floating = "floating"; }(R || (R = {})), function (e) { e.SMS = "sms", e.WhatsApp = "whatsapp", e.Email = "email"; }(I || (I = {})), function (e) { e.MagicLinkLoginOrCreateEvent = "MAGIC_LINK_LOGIN_OR_CREATE", e.OTPsLoginOrCreateEvent = "OTP_LOGIN_OR_CREATE", e.OTPsAuthenticate = "OTP_AUTHENTICATE", e.CryptoWalletAuthenticateStart = "CRYPTO_WALLET_AUTHENTICATE_START", e.CryptoWalletAuthenticate = "CRYPTO_WALLET_AUTHENTICATE", e.PasswordCreate = "PASSWORD_CREATE", e.PasswordAuthenticate = "PASSWORD_AUTHENTICATE", e.PasswordResetByEmailStart = "PASSWORD_RESET_BY_EMAIL_START", e.PasswordResetByEmail = "PASSWORD_RESET_BY_EMAIL"; }(N || (N = {}));
617
- var D, M, U = function (e) { w(r, E(Error)); var t = S(r); function r(e, n) { var o; return k(this, r), (o = t.call(this, e + "\n" + n)).message = e + "\n" + n, o.name = "SDKAPIUnreachableError", o.details = n, Object.setPrototypeOf(O(o), r.prototype), o; } return g(r); }(), B = function (e) { w(r, E(Error)); var t = S(r); function r(e, n) { var o; return k(this, r), (o = t.call(this)).name = "StytchSDKUsageError", o.message = "Invalid call to ".concat(e, "\n") + n, o; } return g(r); }(), K = function (e) { w(r, E(Error)); var t = S(r); function r(e) { var n, o; k(this, r), (n = t.call(this)).name = "StytchSDKSchemaError"; var i = null === (o = e.body) || void 0 === o ? void 0 : o.map((function (e) { return "".concat(e.dataPath, ": ").concat(e.message); })).join("\n"); return n.message = "[400] Request does not match expected schema\n".concat(i), n; } return g(r); }(), F = function (e) { w(r, E(Error)); var t = S(r); function r(e) { var n; k(this, r), (n = t.call(this)).name = "StytchSDKAPIError"; var o = e.status_code, i = e.error_type, a = e.error_message, s = e.error_url, c = e.request_id; return n.error_type = i, n.error_message = a, n.error_url = s, n.request_id = c, n.status_code = o, n.message = "[".concat(o, "] ").concat(i, "\n") + "".concat(a, "\n") + "See ".concat(s, " for more information.\n") + (c ? "request_id: ".concat(c, "\n") : ""), n; } return g(r); }(), q = ["unauthorized_credentials", "user_unauthenticated", "invalid_secret_authentication", "session_not_found"];
615
+ var j, L, A, R, I, D;
616
+ !function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(j || (j = {})), function (e) { e.Google = "google", e.Microsoft = "microsoft", e.Apple = "apple", e.Github = "github", e.GitLab = "gitlab", e.Facebook = "facebook", e.Discord = "discord", e.Slack = "slack", e.Amazon = "amazon", e.Bitbucket = "bitbucket", e.LinkedIn = "linkedin", e.Coinbase = "coinbase", e.Twitch = "twitch"; }(L || (L = {})), function (e) { e.Vessel = "Vessel", e.Phantom = "Phantom", e.Metamask = "Metamask", e.Coinbase = "Coinbase", e.Binance = "Binance", e.GenericEthereumWallet = "Other Ethereum Wallet", e.GenericSolanaWallet = "Other Solana Wallet"; }(A || (A = {})), function (e) { e.embedded = "embedded", e.floating = "floating"; }(R || (R = {})), function (e) { e.SMS = "sms", e.WhatsApp = "whatsapp", e.Email = "email"; }(I || (I = {})), function (e) { e.MagicLinkLoginOrCreateEvent = "MAGIC_LINK_LOGIN_OR_CREATE", e.OTPsLoginOrCreateEvent = "OTP_LOGIN_OR_CREATE", e.OTPsAuthenticate = "OTP_AUTHENTICATE", e.CryptoWalletAuthenticateStart = "CRYPTO_WALLET_AUTHENTICATE_START", e.CryptoWalletAuthenticate = "CRYPTO_WALLET_AUTHENTICATE", e.PasswordCreate = "PASSWORD_CREATE", e.PasswordAuthenticate = "PASSWORD_AUTHENTICATE", e.PasswordResetByEmailStart = "PASSWORD_RESET_BY_EMAIL_START", e.PasswordResetByEmail = "PASSWORD_RESET_BY_EMAIL"; }(D || (D = {}));
617
+ var N, M, U = function (e) { w(r, E(Error)); var t = S(r); function r(e, n) { var o; return k(this, r), (o = t.call(this, e + "\n" + n)).message = e + "\n" + n, o.name = "SDKAPIUnreachableError", o.details = n, Object.setPrototypeOf(O(o), r.prototype), o; } return g(r); }(), B = function (e) { w(r, E(Error)); var t = S(r); function r(e, n) { var o; return k(this, r), (o = t.call(this)).name = "StytchSDKUsageError", o.message = "Invalid call to ".concat(e, "\n") + n, o; } return g(r); }(), F = function (e) { w(r, E(Error)); var t = S(r); function r(e) { var n, o; k(this, r), (n = t.call(this)).name = "StytchSDKSchemaError"; var i = null === (o = e.body) || void 0 === o ? void 0 : o.map((function (e) { return "".concat(e.dataPath, ": ").concat(e.message); })).join("\n"); return n.message = "[400] Request does not match expected schema\n".concat(i), n; } return g(r); }(), K = function (e) { w(r, E(Error)); var t = S(r); function r(e) { var n; k(this, r), (n = t.call(this)).name = "StytchSDKAPIError"; var o = e.status_code, i = e.error_type, a = e.error_message, s = e.error_url, c = e.request_id; return n.error_type = i, n.error_message = a, n.error_url = s, n.request_id = c, n.status_code = o, n.message = "[".concat(o, "] ").concat(i, "\n") + "".concat(a, "\n") + "See ".concat(s, " for more information.\n") + (c ? "request_id: ".concat(c, "\n") : ""), n; } return g(r); }(), q = ["unauthorized_credentials", "user_unauthenticated", "invalid_secret_authentication", "session_not_found"];
618
618
  function z(e, t, r, n) { return new (r || (r = Promise))((function (o, i) { function a(e) { try {
619
619
  c(n.next(e));
620
620
  }
@@ -626,7 +626,7 @@ catch (e) {
626
626
  catch (e) {
627
627
  i(e);
628
628
  } } function c(e) { var t; e.done ? o(e.value) : (t = e.value, t instanceof r ? t : new r((function (e) { e(t); }))).then(a, s); } c((n = n.apply(e, t || [])).next()); })); }
629
- !function (e) { e.BiometricsSensorError = "biometrics_sensor_error", e.DeviceCredentialsNotAllowed = "device_credentials_not_allowed", e.DeviceHardwareError = "device_hardware_error", e.InternalError = "internal_error", e.KeyInvalidated = "key_invalidated", e.KeystoreUnavailable = "keystore_unavailable", e.NoBiometricsEnrolled = "no_biometrics_enrolled", e.NoBiometricsRegistration = "no_biometrics_registration", e.SessionExpired = "session_expired", e.UserCancellation = "user_cancellation", e.UserLockedOut = "user_locked_out"; }(D || (D = {}));
629
+ !function (e) { e.BiometricsSensorError = "biometrics_sensor_error", e.DeviceCredentialsNotAllowed = "device_credentials_not_allowed", e.DeviceHardwareError = "device_hardware_error", e.InternalError = "internal_error", e.KeyInvalidated = "key_invalidated", e.KeystoreUnavailable = "keystore_unavailable", e.NoBiometricsEnrolled = "no_biometrics_enrolled", e.NoBiometricsRegistration = "no_biometrics_registration", e.SessionExpired = "session_expired", e.UserCancellation = "user_cancellation", e.UserLockedOut = "user_locked_out"; }(N || (N = {}));
630
630
  var G = new Uint8Array(16);
631
631
  function W() { if (!M && !(M = "undefined" != typeof crypto && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || "undefined" != typeof msCrypto && "function" == typeof msCrypto.getRandomValues && msCrypto.getRandomValues.bind(msCrypto)))
632
632
  throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported"); return M(G); }
@@ -641,10 +641,9 @@ function $(e, t, r) { var n = (e = e || {}).random || (e.rng || W)(); if (n[6] =
641
641
  t[r + o] = n[o];
642
642
  return t;
643
643
  } return J(n); }
644
- var X = ["[Stytch]"], Z = { debug: function () { return false; }, log: function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
645
- r[n] = arguments[n]; return (e = console).log.apply(e, X.concat(r)); }, warn: function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
646
- r[n] = arguments[n]; return (e = console).warn.apply(e, X.concat(r)); }, error: function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
647
- r[n] = arguments[n]; return (e = console).error.apply(e, X.concat(r)); } }, Q = "\nYou can find your public token at https://stytch.com/dashboard/api-keys.", ee = function (e) { var t = { isObject: function (r, n) { var o = "object" === v(n) && !Array.isArray(n) && null !== n; if (!o)
644
+ var X = ["[Stytch]"], Z = function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
645
+ r[n] = arguments[n]; return (e = console).warn.apply(e, X.concat(r)); }, Q = function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
646
+ r[n] = arguments[n]; return (e = console).error.apply(e, X.concat(r)); }, ee = "\nYou can find your public token at https://stytch.com/dashboard/api-keys.", te = function (e) { var t = { isObject: function (r, n) { var o = "object" === v(n) && !Array.isArray(n) && null !== n; if (!o)
648
647
  throw new B(e, r + " must be an object."); return t; }, isOptionalObject: function (e, r) { return void 0 === r ? t : t.isObject(e, r); }, isString: function (r, n) { if ("string" != typeof n)
649
648
  throw new B(e, r + " must be a string."); return t; }, isOptionalString: function (e, r) { return void 0 === r ? t : t.isString(e, r); }, isStringArray: function (r, n) { if (!Array.isArray(n))
650
649
  throw new B(e, r + " must be an array of strings."); var o, i = function (e, t) { var r = "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"]; if (!r) {
@@ -673,7 +672,7 @@ var X = ["[Stytch]"], Z = { debug: function () { return false; }, log: function
673
672
  i.f();
674
673
  } return t; }, isOptionalStringArray: function (e, r) { return void 0 === r ? t : t.isStringArray(e, r); }, isNumber: function (r, n) { if ("number" != typeof n)
675
674
  throw new B(e, r + " must be a number."); return t; }, isOptionalNumber: function (e, r) { return void 0 === r ? t : t.isNumber(e, r); } }; return t; };
676
- function te(e) { var t = e.method, r = e.errorMessage, n = e.finalURL, o = e.basicAuthHeader, i = e.xSDKClientHeader, a = e.xSDKParentHostHeader, s = e.body; return z(this, void 0, void 0, _().mark((function e() { var c, u, l, h, f; return _().wrap((function (e) { for (;;)
675
+ function re(e) { var t = e.method, r = e.errorMessage, n = e.finalURL, o = e.basicAuthHeader, i = e.xSDKClientHeader, a = e.xSDKParentHostHeader, s = e.body; return z(this, void 0, void 0, _().mark((function e() { var c, u, l, h, f; return _().wrap((function (e) { for (;;)
677
676
  switch (e.prev = e.next) {
678
677
  case 0: return c = { Authorization: o, "Content-Type": "application/json", "X-SDK-Client": i }, a && (c["X-SDK-Parent-Host"] = a), u = { method: t, headers: c, body: s && JSON.stringify(s) }, e.prev = 3, e.next = 6, fetch(n, u);
679
678
  case 6:
@@ -701,17 +700,17 @@ function te(e) { var t = e.method, r = e.errorMessage, n = e.finalURL, o = e.bas
701
700
  e.next = 26;
702
701
  break;
703
702
  }
704
- throw new K(h);
705
- case 26: throw new F(h);
703
+ throw new F(h);
704
+ case 26: throw new K(h);
706
705
  case 27: return e.prev = 27, e.next = 30, l.json();
707
706
  case 30: return f = e.sent, e.abrupt("return", f.data);
708
707
  case 34: throw e.prev = 34, e.t2 = e.catch(27), new U(r, "Invalid response from the Stytch servers.");
709
708
  case 37:
710
709
  case "end": return e.stop();
711
710
  } }), e, null, [[3, 9], [15, 21], [27, 34]]); }))); }
712
- var re = function () { function e(t, r) { var n = this; k(this, e), this._subscriptionService = t, this._headlessSessionClient = r, this._onDataChange = function (e) { (null == e ? void 0 : e.session) ? n.scheduleBackgroundRefresh() : n.cancelBackgroundRefresh(); }, this._reauthenticateWithBackoff = function () { var t = function (t) { return function (r) { return e.isUnrecoverableError(r) ? Promise.reject(r) : new Promise((function (r) { return setTimeout(r, e.timeoutForAttempt(t)); })).then((function () { return n._headlessSessionClient.authenticate(); })); }; }; return n._headlessSessionClient.authenticate().catch(t(0)).catch(t(1)).catch(t(2)).catch(t(3)).catch(t(4)); }, this.timeout = null, this._subscriptionService.subscribeToState(this._onDataChange); } return g(e, [{ key: "performBackgroundRefresh", value: function () { var e = this; this._reauthenticateWithBackoff().then((function () { e.scheduleBackgroundRefresh(); })).catch((function () { Z.warn("Session background refresh failed. Signalling to app that user is logged out."), e._subscriptionService.destroyState(); })); } }, { key: "scheduleBackgroundRefresh", value: function () { var t = this; this.cancelBackgroundRefresh(), this.timeout = setTimeout((function () { t.performBackgroundRefresh(); }), e.REFRESH_INTERVAL_MS); } }, { key: "cancelBackgroundRefresh", value: function () { null !== this.timeout && (clearTimeout(this.timeout), this.timeout = null); } }], [{ key: "timeoutForAttempt", value: function (e) { return Math.floor(350 * Math.random()) - 175 + 2e3 * Math.pow(2, e); } }, { key: "isUnrecoverableError", value: function (e) { return q.includes(e.error_type); } }]), e; }();
713
- re.REFRESH_INTERVAL_MS = 18e4;
714
- var ne = 15, oe = 800, ie = function () { function e(t) { k(this, e), this.maxBatchSize = t.maxBatchSize, this.logEventURL = t.logEventURL, setInterval(this.flush.bind(this), t.intervalDurationMs), this.batch = []; } return g(e, [{ key: "logEvent", value: function (e, t) { this.batch.push({ telemetry: e, event: t }), this.batch.length >= this.maxBatchSize && this.flush(); } }, { key: "flush", value: function () { return z(this, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
711
+ var ne = function () { function e(t, r) { var n = this; k(this, e), this._subscriptionService = t, this._headlessSessionClient = r, this._onDataChange = function (e) { (null == e ? void 0 : e.session) ? n.scheduleBackgroundRefresh() : n.cancelBackgroundRefresh(); }, this._reauthenticateWithBackoff = function () { var t = function (t) { return function (r) { return e.isUnrecoverableError(r) ? Promise.reject(r) : new Promise((function (r) { return setTimeout(r, e.timeoutForAttempt(t)); })).then((function () { return n._headlessSessionClient.authenticate(); })); }; }; return n._headlessSessionClient.authenticate().catch(t(0)).catch(t(1)).catch(t(2)).catch(t(3)).catch(t(4)); }, this.timeout = null, this._subscriptionService.subscribeToState(this._onDataChange); } return g(e, [{ key: "performBackgroundRefresh", value: function () { var e = this; this._reauthenticateWithBackoff().then((function () { e.scheduleBackgroundRefresh(); })).catch((function () { Z("Session background refresh failed. Signalling to app that user is logged out."), e._subscriptionService.destroyState(); })); } }, { key: "scheduleBackgroundRefresh", value: function () { var t = this; this.cancelBackgroundRefresh(), this.timeout = setTimeout((function () { t.performBackgroundRefresh(); }), e.REFRESH_INTERVAL_MS); } }, { key: "cancelBackgroundRefresh", value: function () { null !== this.timeout && (clearTimeout(this.timeout), this.timeout = null); } }], [{ key: "timeoutForAttempt", value: function (e) { return Math.floor(350 * Math.random()) - 175 + 2e3 * Math.pow(2, e); } }, { key: "isUnrecoverableError", value: function (e) { return q.includes(e.error_type); } }]), e; }();
712
+ ne.REFRESH_INTERVAL_MS = 18e4;
713
+ var oe = function () { function e(t) { k(this, e), this.maxBatchSize = t.maxBatchSize, this.logEventURL = t.logEventURL, setInterval(this.flush.bind(this), t.intervalDurationMs), this.batch = []; } return g(e, [{ key: "logEvent", value: function (e, t) { this.batch.push({ telemetry: e, event: t }), this.batch.length >= this.maxBatchSize && this.flush(); } }, { key: "flush", value: function () { return z(this, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
715
714
  switch (e.prev = e.next) {
716
715
  case 0:
717
716
  if (this.batch.length) {
@@ -728,28 +727,28 @@ var ne = 15, oe = 800, ie = function () { function e(t) { k(this, e), this.maxBa
728
727
  case "end": return e.stop();
729
728
  } }), e, this, [[4, 9]]); }))); } }]), e; }();
730
729
  Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), Promise.resolve({ pkceRequiredForPasswordResets: !1 });
731
- var ae = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), se = function () { function e(t, r, n) { var o = this, i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : ae; k(this, e), this._networkClient = t, this._subscriptionService = r, this._pkceManager = n, this._config = i, this.email = { loginOrSignup: function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
730
+ var ie = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), ae = function () { function e(t, r, n) { var o = this, i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : ie; k(this, e), this._networkClient = t, this._subscriptionService = r, this._pkceManager = n, this._config = i, this.email = { loginOrSignup: function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
732
731
  switch (t.prev = t.next) {
733
- case 0: return ee("stytch.magicLinks.email.loginOrSignup").isString("email", e.email_address).isString("organization_id", e.organization_id).isOptionalString("login_redirect_url", e.login_redirect_url).isOptionalString("login_template_id", e.login_template_id).isOptionalString("signup_redirect_url", e.signup_redirect_url).isOptionalString("signup_template_id", e.signup_template_id), t.next = 3, this.getCodeChallenge();
732
+ case 0: return te("stytch.magicLinks.email.loginOrSignup").isString("email", e.email_address).isString("organization_id", e.organization_id).isOptionalString("login_redirect_url", e.login_redirect_url).isOptionalString("login_template_id", e.login_template_id).isOptionalString("signup_redirect_url", e.signup_redirect_url).isOptionalString("signup_template_id", e.signup_template_id).isOptionalString("locale", e.locale), t.next = 3, this.getCodeChallenge();
734
733
  case 3: return r = t.sent, n = Object.assign(Object.assign({}, e), { pkce_code_challenge: r }), t.abrupt("return", this._networkClient.fetchSDK({ url: "/b2b/magic_links/email/login_or_signup", body: n, errorMessage: "Failed to send magic link", method: "POST" }));
735
734
  case 6:
736
735
  case "end": return t.stop();
737
736
  } }), t, this); }))); }, discovery: { send: function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
738
737
  switch (t.prev = t.next) {
739
- case 0: return ee("stytch.magicLinks.email.discovery.send").isString("email_address", e.email_address).isOptionalString("discovery_redirect_url", e.discovery_redirect_url).isOptionalString("login_template_id", e.login_template_id), t.next = 3, this.getCodeChallenge();
738
+ case 0: return te("stytch.magicLinks.email.discovery.send").isString("email_address", e.email_address).isOptionalString("discovery_redirect_url", e.discovery_redirect_url).isOptionalString("login_template_id", e.login_template_id).isOptionalString("locale", e.locale), t.next = 3, this.getCodeChallenge();
740
739
  case 3: return r = t.sent, n = Object.assign(Object.assign({}, e), { pkce_code_challenge: r }), t.abrupt("return", this._networkClient.fetchSDK({ url: "/b2b/magic_links/email/discovery/send", body: n, errorMessage: "Failed to send discovery magic link", method: "POST" }));
741
740
  case 6:
742
741
  case "end": return t.stop();
743
742
  } }), t, this); }))); } } }, this.authenticate = function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n, o; return _().wrap((function (t) { for (;;)
744
743
  switch (t.prev = t.next) {
745
- case 0: return ee("stytch.magicLinks.authenticate").isString("magic_links_token", e.magic_links_token).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._pkceManager.getPKPair();
744
+ case 0: return te("stytch.magicLinks.authenticate").isString("magic_links_token", e.magic_links_token).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._pkceManager.getPKPair();
746
745
  case 3: return r = t.sent, n = Object.assign({ pkce_code_verifier: null == r ? void 0 : r.code_verifier }, e), t.next = 7, this._networkClient.fetchSDK({ url: "/b2b/magic_links/authenticate", body: n, errorMessage: "Failed to authenticate token", method: "POST" });
747
746
  case 7: return o = t.sent, this._pkceManager.clearPKPair(), this._subscriptionService.updateStateAndTokens({ state: { session: o.member_session, member: o.member }, session_token: o.session_token, session_jwt: o.session_jwt }), t.abrupt("return", o);
748
747
  case 11:
749
748
  case "end": return t.stop();
750
749
  } }), t, this); }))); }, this.discovery = { authenticate: function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n, o; return _().wrap((function (t) { for (;;)
751
750
  switch (t.prev = t.next) {
752
- case 0: return ee("stytch.magicLinks.discovery.authenticate").isString("discovery_magic_links_token", e.discovery_magic_links_token), t.next = 3, this._pkceManager.getPKPair();
751
+ case 0: return te("stytch.magicLinks.discovery.authenticate").isString("discovery_magic_links_token", e.discovery_magic_links_token), t.next = 3, this._pkceManager.getPKPair();
753
752
  case 3: return r = t.sent, n = Object.assign({ pkce_code_verifier: null == r ? void 0 : r.code_verifier }, e), t.next = 7, this._networkClient.fetchSDK({ url: "/b2b/magic_links/discovery/authenticate", body: n, errorMessage: "Failed to authenticate intermediate magic link token", method: "POST" });
754
753
  case 7: return o = t.sent, this._pkceManager.clearPKPair(), t.abrupt("return", o);
755
754
  case 10:
@@ -774,16 +773,16 @@ var ae = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), se = function
774
773
  case 13: return r = e.sent, e.abrupt("return", r.code_challenge);
775
774
  case 15:
776
775
  case "end": return e.stop();
777
- } }), e, this); }))); } }]), e; }(), ce = g((function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.get = function () { return z(n, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
776
+ } }), e, this); }))); } }]), e; }(), se = g((function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.get = function () { return z(n, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
778
777
  switch (e.prev = e.next) {
779
778
  case 0: return e.next = 2, this._networkClient.fetchSDK({ url: "/b2b/organizations/members/me", errorMessage: "Failed to retrieve member info.", method: "GET" });
780
779
  case 2: return t = e.sent, this._subscriptionService.updateMember(t.member), e.abrupt("return", t.member);
781
780
  case 5:
782
781
  case "end": return e.stop();
783
- } }), e, this); }))); }, this.getSync = function () { return n._subscriptionService.getMember(); }, this.onChange = function (e) { return n._subscriptionService.subscribeToState((function (t) { var r; return e(null !== (r = null == t ? void 0 : t.member) && void 0 !== r ? r : null); })); }; })), ue = function () { function e(t, r, n, o, i) { k(this, e), this._networkClient = t, this._subscriptionService = r, this._pkceManager = n, this._dynamicConfig = o, this._config = i; } return g(e, [{ key: "authenticate", value: function (e) { return z(this, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
782
+ } }), e, this); }))); }, this.getSync = function () { return n._subscriptionService.getMember(); }, this.onChange = function (e) { return n._subscriptionService.subscribeToState((function (t) { var r; return e(null !== (r = null == t ? void 0 : t.member) && void 0 !== r ? r : null); })); }; })), ce = function () { function e(t, r, n, o, i) { k(this, e), this._networkClient = t, this._subscriptionService = r, this._pkceManager = n, this._dynamicConfig = o, this._config = i; } return g(e, [{ key: "authenticate", value: function (e) { return z(this, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
784
783
  switch (t.prev = t.next) {
785
- case 0: return ee("stytch.sso.authenticate").isString("sso_token", e.sso_token).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._pkceManager.getPKPair();
786
- case 3: return (r = t.sent) || Z.warn("No code verifier found in local storage for SSO flow.\nConsider using stytch.oauth.$provider.start() to add PKCE to your OAuth flows for added security.\nSee https://stytch.com/docs/oauth#guides_pkce for more information."), t.next = 7, this._networkClient.fetchSDK({ url: "/sso/authenticate", method: "POST", body: Object.assign({ pkce_code_verifier: null == r ? void 0 : r.code_verifier }, e), errorMessage: "Failed to authenticate token" });
784
+ case 0: return te("stytch.sso.authenticate").isString("sso_token", e.sso_token).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._pkceManager.getPKPair();
785
+ case 3: return (r = t.sent) || Z("No code verifier found in local storage for SSO flow.\nConsider using stytch.oauth.$provider.start() to add PKCE to your OAuth flows for added security.\nSee https://stytch.com/docs/oauth#guides_pkce for more information."), t.next = 7, this._networkClient.fetchSDK({ url: "/sso/authenticate", method: "POST", body: Object.assign({ pkce_code_verifier: null == r ? void 0 : r.code_verifier }, e), errorMessage: "Failed to authenticate token" });
787
786
  case 7: return n = t.sent, this._pkceManager.clearPKPair(), this._subscriptionService.updateStateAndTokens({ state: { session: n.member_session, member: n.member }, session_token: n.session_token, session_jwt: n.session_jwt }), t.abrupt("return", n);
788
787
  case 11:
789
788
  case "end": return t.stop();
@@ -815,13 +814,13 @@ var ae = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), se = function
815
814
  case 18: r && s.searchParams.set("login_redirect_url", r), n && s.searchParams.set("signup_redirect_url", n), window.location.href = s.toString();
816
815
  case 21:
817
816
  case "end": return e.stop();
818
- } }), e, this); }))); } }]), e; }(), le = g((function e(t) { var r = this; k(this, e), this._networkClient = t, this.get = function () { return z(r, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
817
+ } }), e, this); }))); } }]), e; }(), ue = g((function e(t) { var r = this; k(this, e), this._networkClient = t, this.get = function () { return z(r, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
819
818
  switch (e.prev = e.next) {
820
819
  case 0: return e.next = 2, this._networkClient.fetchSDK({ url: "/b2b/organizations/me", errorMessage: "Failed to retrieve organization info.", method: "GET" });
821
820
  case 2: return t = e.sent, e.abrupt("return", t.organization);
822
821
  case 4:
823
822
  case "end": return e.stop();
824
- } }), e, this); }))); }; })), he = function () { function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.getSync = function () { return n._subscriptionService.getSession(); }, this.onChange = function (e) { return n._subscriptionService.subscribeToState((function (t) { var r; return e(null !== (r = null == t ? void 0 : t.session) && void 0 !== r ? r : null); })); }, this.revoke = function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
823
+ } }), e, this); }))); }; })), le = function () { function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.getSync = function () { return n._subscriptionService.getSession(); }, this.onChange = function (e) { return n._subscriptionService.subscribeToState((function (t) { var r; return e(null !== (r = null == t ? void 0 : t.session) && void 0 !== r ? r : null); })); }, this.revoke = function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
825
824
  switch (t.prev = t.next) {
826
825
  case 0: return t.prev = 0, t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/sessions/revoke", errorMessage: "Error revoking session", method: "POST" });
827
826
  case 3: return r = t.sent, this._subscriptionService.destroyState(), t.abrupt("return", r);
@@ -837,30 +836,30 @@ var ae = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), se = function
837
836
  case "end": return t.stop();
838
837
  } }), t, this, [[0, 9]]); }))); }, this.exchange = function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
839
838
  switch (t.prev = t.next) {
840
- case 0: return ee("stytch.sessions.exchange").isString("organization_id", e.organization_id).isNumber("session_duration_minutes", e.session_duration_minutes), t.prev = 1, t.next = 4, this._networkClient.fetchSDK({ url: "/b2b/sessions/exchange", body: e, errorMessage: "Failed to exchange session", method: "POST" });
839
+ case 0: return te("stytch.sessions.exchange").isString("organization_id", e.organization_id).isNumber("session_duration_minutes", e.session_duration_minutes), t.prev = 1, t.next = 4, this._networkClient.fetchSDK({ url: "/b2b/sessions/exchange", body: e, errorMessage: "Failed to exchange session", method: "POST" });
841
840
  case 4: return r = t.sent, this._subscriptionService.updateStateAndTokens({ state: { session: r.member_session, member: r.member }, session_token: r.session_token, session_jwt: r.session_jwt }), t.abrupt("return", r);
842
841
  case 9: throw t.prev = 9, t.t0 = t.catch(1), t.t0;
843
842
  case 12:
844
843
  case "end": return t.stop();
845
- } }), t, this, [[1, 9]]); }))); }; } return g(e, [{ key: "getTokens", value: function () { return this._subscriptionService.getTokens(); } }]), e; }(), fe = g((function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.organizations = { list: function (e) { return z(n, void 0, void 0, _().mark((function t() { return _().wrap((function (t) { for (;;)
844
+ } }), t, this, [[1, 9]]); }))); }; } return g(e, [{ key: "getTokens", value: function () { return this._subscriptionService.getTokens(); } }]), e; }(), he = g((function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.organizations = { list: function (e) { return z(n, void 0, void 0, _().mark((function t() { return _().wrap((function (t) { for (;;)
846
845
  switch (t.prev = t.next) {
847
- case 0: return ee("stytch.discovery.organizations.list").isOptionalString("intermediate_session_token", e.intermediate_session_token), t.abrupt("return", this._networkClient.fetchSDK({ url: "/b2b/discovery/organizations", body: e, errorMessage: "Failed to retrieve discovered organizations", method: "POST" }));
846
+ case 0: return te("stytch.discovery.organizations.list").isOptionalString("intermediate_session_token", e.intermediate_session_token), t.abrupt("return", this._networkClient.fetchSDK({ url: "/b2b/discovery/organizations", body: e, errorMessage: "Failed to retrieve discovered organizations", method: "POST" }));
848
847
  case 2:
849
848
  case "end": return t.stop();
850
849
  } }), t, this); }))); }, create: function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
851
850
  switch (t.prev = t.next) {
852
- case 0: return ee("stytch.discovery.organizations.create").isString("intermediate_session_token", e.intermediate_session_token).isNumber("session_duration_minutes", e.session_duration_minutes).isString("organization_name", e.organization_name).isString("organization_slug", e.organization_slug).isOptionalString("organization_logo_url", e.organization_logo_url).isOptionalString("sso_jit_provisioning", e.sso_jit_provisioning).isOptionalStringArray("email_allowed_domains", e.email_allowed_domains).isOptionalString("email_invites", e.email_invites).isOptionalString("auth_methods", e.auth_methods).isOptionalStringArray("allowed_auth_methods", e.allowed_auth_methods), t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/discovery/organizations/create", body: e, errorMessage: "Failed to create organization and member", method: "POST" });
851
+ case 0: return te("stytch.discovery.organizations.create").isString("intermediate_session_token", e.intermediate_session_token).isNumber("session_duration_minutes", e.session_duration_minutes).isString("organization_name", e.organization_name).isString("organization_slug", e.organization_slug).isOptionalString("organization_logo_url", e.organization_logo_url).isOptionalString("sso_jit_provisioning", e.sso_jit_provisioning).isOptionalStringArray("email_allowed_domains", e.email_allowed_domains).isOptionalString("email_invites", e.email_invites).isOptionalString("auth_methods", e.auth_methods).isOptionalStringArray("allowed_auth_methods", e.allowed_auth_methods), t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/discovery/organizations/create", body: e, errorMessage: "Failed to create organization and member", method: "POST" });
853
852
  case 3: return r = t.sent, this._subscriptionService.updateStateAndTokens({ state: { session: r.member_session, member: r.member }, session_token: r.session_token, session_jwt: r.session_jwt }), t.abrupt("return", r);
854
853
  case 6:
855
854
  case "end": return t.stop();
856
855
  } }), t, this); }))); } }, this.intermediateSessions = { exchange: function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
857
856
  switch (t.prev = t.next) {
858
- case 0: return ee("stytch.discovery.intermediateSessions.exchange").isString("intermediate_session_token", e.intermediate_session_token).isString("organization_id", e.organization_id).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/discovery/intermediate_sessions/exchange", body: e, errorMessage: "Failed to exchange intermediate session", method: "POST" });
857
+ case 0: return te("stytch.discovery.intermediateSessions.exchange").isString("intermediate_session_token", e.intermediate_session_token).isString("organization_id", e.organization_id).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/discovery/intermediate_sessions/exchange", body: e, errorMessage: "Failed to exchange intermediate session", method: "POST" });
859
858
  case 3: return r = t.sent, this._subscriptionService.updateStateAndTokens({ state: { session: r.member_session, member: r.member }, session_token: r.session_token, session_jwt: r.session_jwt }), t.abrupt("return", r);
860
859
  case 6:
861
860
  case "end": return t.stop();
862
- } }), t, this); }))); } }; })), de = Symbol.for("stytch__internal"), pe = function (e, t) { Object.assign(e, function (e, t, r) { return (t = d(t)) in e ? Object.defineProperty(e, t, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = r, e; }({}, de, t)); }, ve = function (e) { return (document.cookie ? document.cookie.split("; ") : []).filter((function (t) { var r = l(t.split("="), 1)[0]; return e === r; })).length > 1; };
863
- function me(e, t, r, n) { return new (r || (r = Promise))((function (o, i) { function a(e) { try {
861
+ } }), t, this); }))); } }; })), fe = Symbol.for("stytch__internal"), de = function (e, t) { Object.assign(e, function (e, t, r) { return (t = d(t)) in e ? Object.defineProperty(e, t, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = r, e; }({}, fe, t)); }, pe = function (e) { return (document.cookie ? document.cookie.split("; ") : []).filter((function (t) { var r = l(t.split("="), 1)[0]; return e === r; })).length > 1; };
862
+ function ve(e, t, r, n) { return new (r || (r = Promise))((function (o, i) { function a(e) { try {
864
863
  c(n.next(e));
865
864
  }
866
865
  catch (e) {
@@ -871,20 +870,20 @@ catch (e) {
871
870
  catch (e) {
872
871
  i(e);
873
872
  } } function c(e) { var t; e.done ? o(e.value) : (t = e.value, t instanceof r ? t : new r((function (e) { e(t); }))).then(a, s); } c((n = n.apply(e, t || [])).next()); })); }
874
- var ye = function () { function e(t, r, n, o) { s(this, e), this._publicToken = t, this._subscriptionDataLayer = r, this.baseURL = n, this.additionalTelemetryDataFn = o, this.updateSessionToken = function () { return null; }, this.eventLogger = new ie({ maxBatchSize: ne, intervalDurationMs: oe, logEventURL: this.buildSDKUrl("/events") }); } return u(e, [{ key: "logEvent", value: function (e) { var t = e.name, r = e.details, n = e.error, o = void 0 === n ? {} : n; this.eventLogger.logEvent(this.createTelemetryBlob(), { public_token: this._publicToken, event_name: t, details: r, error_code: o.error_code, error_description: o.error_description, http_status_code: o.http_status_code }); } }, { key: "createTelemetryBlob", value: function () { return Object.assign(Object.assign({ event_id: "event-id-".concat($()), app_session_id: "app-session-id-".concat($()), persistent_id: "persistent-id-".concat($()), client_sent_at: (new Date).toISOString(), timezone: Intl.DateTimeFormat().resolvedOptions().timeZone }, this.additionalTelemetryDataFn()), { app: { identifier: window.location.hostname }, sdk: { identifier: "Stytch.js Javascript SDK", version: "0.11.2" } }); } }, { key: "fetchSDK", value: function (e) { var t = e.url, r = e.body, n = e.errorMessage, o = e.method; return me(this, void 0, void 0, a().mark((function e() { var i, s, c, u; return a().wrap((function (e) { for (;;)
873
+ var me = function () { function e(t, r, n, o) { s(this, e), this._publicToken = t, this._subscriptionDataLayer = r, this.baseURL = n, this.additionalTelemetryDataFn = o, this.updateSessionToken = function () { return null; }, this.eventLogger = new oe({ maxBatchSize: 15, intervalDurationMs: 800, logEventURL: this.buildSDKUrl("/events") }); } return u(e, [{ key: "logEvent", value: function (e) { var t = e.name, r = e.details, n = e.error, o = void 0 === n ? {} : n; this.eventLogger.logEvent(this.createTelemetryBlob(), { public_token: this._publicToken, event_name: t, details: r, error_code: o.error_code, error_description: o.error_description, http_status_code: o.http_status_code }); } }, { key: "createTelemetryBlob", value: function () { return Object.assign(Object.assign({ event_id: "event-id-".concat($()), app_session_id: "app-session-id-".concat($()), persistent_id: "persistent-id-".concat($()), client_sent_at: (new Date).toISOString(), timezone: Intl.DateTimeFormat().resolvedOptions().timeZone }, this.additionalTelemetryDataFn()), { app: { identifier: window.location.hostname }, sdk: { identifier: "Stytch.js Javascript SDK", version: "0.11.3" } }); } }, { key: "fetchSDK", value: function (e) { var t = e.url, r = e.body, n = e.errorMessage, o = e.method; return ve(this, void 0, void 0, a().mark((function e() { var i, s, c, u; return a().wrap((function (e) { for (;;)
875
874
  switch (e.prev = e.next) {
876
- case 0: return i = this._subscriptionDataLayer.readSessionCookie().session_token, s = "Basic " + window.btoa(this._publicToken + ":" + (i || this._publicToken)), c = window.btoa(JSON.stringify(this.createTelemetryBlob())), u = window.location.origin, e.abrupt("return", te({ basicAuthHeader: s, body: r, errorMessage: n, finalURL: this.buildSDKUrl(t), method: o, xSDKClientHeader: c, xSDKParentHostHeader: u }));
875
+ case 0: return i = this._subscriptionDataLayer.readSessionCookie().session_token, s = "Basic " + window.btoa(this._publicToken + ":" + (i || this._publicToken)), c = window.btoa(JSON.stringify(this.createTelemetryBlob())), u = window.location.origin, e.abrupt("return", re({ basicAuthHeader: s, body: r, errorMessage: n, finalURL: this.buildSDKUrl(t), method: o, xSDKClientHeader: c, xSDKParentHostHeader: u }));
877
876
  case 5:
878
877
  case "end": return e.stop();
879
878
  } }), e, this); }))); } }, { key: "buildSDKUrl", value: function (e) { return "".concat(this.baseURL, "/sdk/v1").concat(e); } }]), e; }();
880
879
  /*! js-cookie v3.0.1 | MIT */
881
- function _e(e) { for (var t = 1; t < arguments.length; t++) {
880
+ function ye(e) { for (var t = 1; t < arguments.length; t++) {
882
881
  var r = arguments[t];
883
882
  for (var n in r)
884
883
  e[n] = r[n];
885
884
  } return e; }
886
- var be = function e(t, r) { function n(e, n, o) { if ("undefined" != typeof document) {
887
- "number" == typeof (o = _e({}, r, o)).expires && (o.expires = new Date(Date.now() + 864e5 * o.expires)), o.expires && (o.expires = o.expires.toUTCString()), e = encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);
885
+ var _e = function e(t, r) { function n(e, n, o) { if ("undefined" != typeof document) {
886
+ "number" == typeof (o = ye({}, r, o)).expires && (o.expires = new Date(Date.now() + 864e5 * o.expires)), o.expires && (o.expires = o.expires.toUTCString()), e = encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);
888
887
  var i = "";
889
888
  for (var a in o)
890
889
  o[a] && (i += "; " + a, !0 !== o[a] && (i += "=" + o[a].split(";")[0]));
@@ -900,7 +899,7 @@ var be = function e(t, r) { function n(e, n, o) { if ("undefined" != typeof docu
900
899
  catch (e) { }
901
900
  }
902
901
  return e ? n[e] : n;
903
- } }, remove: function (e, t) { n(e, "", _e({}, t, { expires: -1 })); }, withAttributes: function (t) { return e(this.converter, _e({}, this.attributes, t)); }, withConverter: function (t) { return e(_e({}, this.converter, t), this.attributes); } }, { attributes: { value: Object.freeze(r) }, converter: { value: Object.freeze(t) } }); }({ read: function (e) { return '"' === e[0] && (e = e.slice(1, -1)), e.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent); }, write: function (e) { return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, decodeURIComponent); } }, { path: "/" }), ge = "stytch_sdk_state_", ke = function (e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : ""; return "".concat(ge).concat(e).concat(t ? "::".concat(t) : ""); }, we = function () { function e(t, r) { var n = this; s(this, e), this.browserSessionStorage = { getItem: function (e) { return sessionStorage.getItem(ke(n.publicToken, e)); }, setItem: function (e, t) { return sessionStorage.setItem(ke(n.publicToken, e), t); }, removeItem: function (e) { return sessionStorage.removeItem(ke(n.publicToken, e)); } }, this.publicToken = t, this.state = null, this.subscriptions = {}, (null == r ? void 0 : r.cookieOptions) ? (ee("SubscriptionDataLayer").isOptionalString("cookieOptions.opaqueTokenCookieName", r.cookieOptions.opaqueTokenCookieName).isOptionalString("cookieOptions.jwtCookieName", r.cookieOptions.jwtCookieName).isOptionalString("cookieOptions.path", r.cookieOptions.path), this._jwtCookieName = r.cookieOptions.jwtCookieName || null, this._opaqueTokenCookieName = r.cookieOptions.opaqueTokenCookieName || null, this._cookiePath = r.cookieOptions.path || null, this._cookieAvailableToSubdomains = r.cookieOptions.availableToSubdomains || !1) : (this._opaqueTokenCookieName = null, this._jwtCookieName = null, this._cookiePath = null, this._cookieAvailableToSubdomains = !1); var o = localStorage.getItem(ke(this.publicToken)); if (o) {
902
+ } }, remove: function (e, t) { n(e, "", ye({}, t, { expires: -1 })); }, withAttributes: function (t) { return e(this.converter, ye({}, this.attributes, t)); }, withConverter: function (t) { return e(ye({}, this.converter, t), this.attributes); } }, { attributes: { value: Object.freeze(r) }, converter: { value: Object.freeze(t) } }); }({ read: function (e) { return '"' === e[0] && (e = e.slice(1, -1)), e.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent); }, write: function (e) { return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, decodeURIComponent); } }, { path: "/" }), be = function (e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : ""; return "".concat("stytch_sdk_state_").concat(e).concat(t ? "::".concat(t) : ""); }, ge = function () { function e(t, r) { var n = this; s(this, e), this.browserSessionStorage = { getItem: function (e) { return sessionStorage.getItem(be(n.publicToken, e)); }, setItem: function (e, t) { return sessionStorage.setItem(be(n.publicToken, e), t); }, removeItem: function (e) { return sessionStorage.removeItem(be(n.publicToken, e)); } }, this.publicToken = t, this.state = null, this.subscriptions = {}, (null == r ? void 0 : r.cookieOptions) ? (te("SubscriptionDataLayer").isOptionalString("cookieOptions.opaqueTokenCookieName", r.cookieOptions.opaqueTokenCookieName).isOptionalString("cookieOptions.jwtCookieName", r.cookieOptions.jwtCookieName).isOptionalString("cookieOptions.path", r.cookieOptions.path), this._jwtCookieName = r.cookieOptions.jwtCookieName || null, this._opaqueTokenCookieName = r.cookieOptions.opaqueTokenCookieName || null, this._cookiePath = r.cookieOptions.path || null, this._cookieAvailableToSubdomains = r.cookieOptions.availableToSubdomains || !1) : (this._opaqueTokenCookieName = null, this._jwtCookieName = null, this._cookiePath = null, this._cookieAvailableToSubdomains = !1); var o = localStorage.getItem(be(this.publicToken)); if (o) {
904
903
  var i;
905
904
  try {
906
905
  i = JSON.parse(o);
@@ -911,15 +910,15 @@ var be = function e(t, r) { function n(e, n, o) { if ("undefined" != typeof docu
911
910
  this.state = i;
912
911
  }
913
912
  else
914
- this.removeSessionCookie(); } return u(e, [{ key: "opaqueTokenCookieName", get: function () { var e; return null !== (e = this._opaqueTokenCookieName) && void 0 !== e ? e : "stytch_session"; } }, { key: "jwtCookieName", get: function () { var e; return null !== (e = this._jwtCookieName) && void 0 !== e ? e : "stytch_session_jwt"; } }, { key: "readSessionCookie", value: function () { return { session_token: be.get(this.opaqueTokenCookieName), session_jwt: be.get(this.jwtCookieName) }; } }, { key: "writeSessionCookie", value: function (t) { var r, n, o, i, a = t.state, s = t.session_token, c = t.session_jwt, u = e.generateCookieOpts({ expiresAt: null !== (n = null === (r = null == a ? void 0 : a.session) || void 0 === r ? void 0 : r.expires_at) && void 0 !== n ? n : "", availableToSubdomains: this._cookieAvailableToSubdomains, path: this._cookiePath }); be.set(this.opaqueTokenCookieName, s, u), be.set(this.jwtCookieName, c, u); var l = e.generateCookieOpts({ expiresAt: null !== (i = null === (o = null == a ? void 0 : a.session) || void 0 === o ? void 0 : o.expires_at) && void 0 !== i ? i : "", availableToSubdomains: !this._cookieAvailableToSubdomains, path: this._cookiePath }); ve(this.jwtCookieName) && be.remove(this.jwtCookieName, l), ve(this.opaqueTokenCookieName) && be.remove(this.opaqueTokenCookieName, l), ve(this.jwtCookieName) && Z.warn("Could not remove extraneous JWT cookie. This might happen if the cookie has been set using multiple `path` settings, and may produce unwanted behavior."), ve(this.opaqueTokenCookieName) && Z.warn("Could not remove extraneous opaque token cookie."); } }, { key: "removeSessionCookie", value: function () { var t = this; [!0, !1].forEach((function (r) { [t._cookiePath, null].forEach((function (n) { var o = e.generateCookieOpts({ expiresAt: new Date(0).toString(), availableToSubdomains: r, path: n }); be.remove(t.opaqueTokenCookieName, o), be.remove(t.jwtCookieName, o); })); })); } }, { key: "syncToLocalStorage", value: function () { localStorage.setItem(ke(this.publicToken), JSON.stringify(this.state)); } }, { key: "getItem", value: function (e) { return localStorage.getItem(ke(this.publicToken, e)); } }, { key: "setItem", value: function (e, t) { return localStorage.setItem(ke(this.publicToken, e), t); } }, { key: "removeItem", value: function (e) { return localStorage.removeItem(ke(this.publicToken, e)); } }], [{ key: "generateCookieOpts", value: function (e) { var t = e.path, r = e.availableToSubdomains, n = e.expiresAt, o = { expires: new Date(n), sameSite: "lax" }; return t && (o.path = t), Boolean("localhost" === window.location.hostname || "[::1]" === window.location.hostname || window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)) ? o.secure = !1 : (r && (o.domain = window.location.host), o.secure = !0), o; } }]), e; }(), Se = function (e) { r(n, we); var t = o(n); function n() { return s(this, n), t.apply(this, arguments); } return u(n); }(), Oe = Symbol.for("__stytch_b2b_DataLayer"), Ee = function (e, t) { var r, n = ((r = window)[Oe] || (r[Oe] = {}), r[Oe]); return n[e] || (n[e] = new Se(e, t)), n[e]; }, Te = function (e, t) { Object.values(e).forEach((function (e) { return e(t); })); }, xe = function () { var e = (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}).KEYS_TO_EXCLUDE, t = void 0 === e ? [] : e; return function e(r, n) { return v(r) === v(n) && (null === r || null === n ? r === n : "object" === v(r) ? Object.keys(r).length === Object.keys(n).length && !Object.keys(r).some((function (e) { return !(e in n); })) && Object.entries(r).filter((function (e) { var r = p(e, 1)[0]; return !t.includes(r); })).every((function (t) { var r = p(t, 2), o = r[0], i = r[1]; return e(i, n[o]); })) : r === n); }; }({ KEYS_TO_EXCLUDE: ["last_accessed_at"] }), Ce = function () { function e(t, r) { var n, o = this; s(this, e), this._publicToken = t, this._datalayer = r, this._listen = function (e) { if (e.key === ke(o._publicToken))
913
+ this.removeSessionCookie(); } return u(e, [{ key: "opaqueTokenCookieName", get: function () { var e; return null !== (e = this._opaqueTokenCookieName) && void 0 !== e ? e : "stytch_session"; } }, { key: "jwtCookieName", get: function () { var e; return null !== (e = this._jwtCookieName) && void 0 !== e ? e : "stytch_session_jwt"; } }, { key: "readSessionCookie", value: function () { return { session_token: _e.get(this.opaqueTokenCookieName), session_jwt: _e.get(this.jwtCookieName) }; } }, { key: "writeSessionCookie", value: function (t) { var r, n, o, i, a = t.state, s = t.session_token, c = t.session_jwt, u = e.generateCookieOpts({ expiresAt: null !== (n = null === (r = null == a ? void 0 : a.session) || void 0 === r ? void 0 : r.expires_at) && void 0 !== n ? n : "", availableToSubdomains: this._cookieAvailableToSubdomains, path: this._cookiePath }); _e.set(this.opaqueTokenCookieName, s, u), _e.set(this.jwtCookieName, c, u); var l = e.generateCookieOpts({ expiresAt: null !== (i = null === (o = null == a ? void 0 : a.session) || void 0 === o ? void 0 : o.expires_at) && void 0 !== i ? i : "", availableToSubdomains: !this._cookieAvailableToSubdomains, path: this._cookiePath }); pe(this.jwtCookieName) && _e.remove(this.jwtCookieName, l), pe(this.opaqueTokenCookieName) && _e.remove(this.opaqueTokenCookieName, l), pe(this.jwtCookieName) && Z("Could not remove extraneous JWT cookie. This might happen if the cookie has been set using multiple `path` settings, and may produce unwanted behavior."), pe(this.opaqueTokenCookieName) && Z("Could not remove extraneous opaque token cookie."); } }, { key: "removeSessionCookie", value: function () { var t = this; [!0, !1].forEach((function (r) { [t._cookiePath, null].forEach((function (n) { var o = e.generateCookieOpts({ expiresAt: new Date(0).toString(), availableToSubdomains: r, path: n }); _e.remove(t.opaqueTokenCookieName, o), _e.remove(t.jwtCookieName, o); })); })); } }, { key: "syncToLocalStorage", value: function () { localStorage.setItem(be(this.publicToken), JSON.stringify(this.state)); } }, { key: "getItem", value: function (e) { return localStorage.getItem(be(this.publicToken, e)); } }, { key: "setItem", value: function (e, t) { return localStorage.setItem(be(this.publicToken, e), t); } }, { key: "removeItem", value: function (e) { return localStorage.removeItem(be(this.publicToken, e)); } }], [{ key: "generateCookieOpts", value: function (e) { var t = e.path, r = e.availableToSubdomains, n = e.expiresAt, o = { expires: new Date(n), sameSite: "lax" }; return t && (o.path = t), Boolean("localhost" === window.location.hostname || "[::1]" === window.location.hostname || window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)) ? o.secure = !1 : (r && (o.domain = window.location.host), o.secure = !0), o; } }]), e; }(), ke = function (e) { r(n, ge); var t = o(n); function n() { return s(this, n), t.apply(this, arguments); } return u(n); }(), we = Symbol.for("__stytch_b2b_DataLayer"), Se = function (e, t) { var r, n = ((r = window)[we] || (r[we] = {}), r[we]); return n[e] || (n[e] = new ke(e, t)), n[e]; }, Oe = function (e, t) { Object.values(e).forEach((function (e) { return e(t); })); }, Ee = function () { var e = (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}).KEYS_TO_EXCLUDE, t = void 0 === e ? [] : e; return function e(r, n) { return v(r) === v(n) && (null === r || null === n ? r === n : "object" === v(r) ? Object.keys(r).length === Object.keys(n).length && !Object.keys(r).some((function (e) { return !(e in n); })) && Object.entries(r).filter((function (e) { var r = p(e, 1)[0]; return !t.includes(r); })).every((function (t) { var r = p(t, 2), o = r[0], i = r[1]; return e(i, n[o]); })) : r === n); }; }({ KEYS_TO_EXCLUDE: ["last_accessed_at"] }), Te = function () { function e(t, r) { var n, o = this; s(this, e), this._publicToken = t, this._datalayer = r, this._listen = function (e) { if (e.key === be(o._publicToken))
915
914
  if (null !== e.newValue && "null" !== e.newValue) {
916
915
  var t = JSON.parse(e.newValue);
917
916
  o.updateState(t);
918
917
  }
919
918
  else
920
- o.destroyState(); }, window.addEventListener("storage", this._listen); var i = null === (n = this._datalayer.state) || void 0 === n ? void 0 : n.session; i && Date.parse(i.expires_at) < Date.now() ? this.destroyState() : this._datalayer.readSessionCookie().session_token || this.destroyState(); } return u(e, [{ key: "getTokens", value: function () { var e = this._datalayer.readSessionCookie(), t = e.session_token, r = e.session_jwt; return t && r ? { session_token: t, session_jwt: r } : null; } }, { key: "destroyState", value: function () { this.updateStateAndTokens({ state: null, session_token: null, session_jwt: null }); } }, { key: "_updateStateAndTokensInternal", value: function (e) { var t = this._datalayer.state, r = null === e.state ? null : Object.assign(Object.assign({}, this._datalayer.state), e.state); this._datalayer.state = r, xe(t, r) || Te(this._datalayer.subscriptions, r); } }, { key: "updateStateAndTokens", value: function (e) { e.state ? this._datalayer.writeSessionCookie(e) : this._datalayer.removeSessionCookie(), this._updateStateAndTokensInternal(e), this._datalayer.syncToLocalStorage(); } }, { key: "updateState", value: function (e) { var t = this._datalayer.state, r = null === e ? null : Object.assign(Object.assign({}, this._datalayer.state), e); this._datalayer.state = r, xe(t, r) || (Te(this._datalayer.subscriptions, r), this._datalayer.syncToLocalStorage()); } }, { key: "updateTokens", value: function (e) { var t = e.session_token, r = e.session_jwt, n = this._datalayer.readSessionCookie(), o = Object.assign(Object.assign({}, n), { session_token: t, session_jwt: r }); t && r ? this._datalayer.writeSessionCookie(o) : this._datalayer.removeSessionCookie(); } }, { key: "subscribeToState", value: function (e) { return t = this._datalayer.subscriptions, r = e, n = Math.random().toString(36).slice(-10), t[n] = r, function () { return delete t[n]; }; var t, r, n; } }, { key: "getState", value: function () { return this._datalayer.state; } }, { key: "destroy", value: function () { window.removeEventListener("storage", this._listen); } }, { key: "syncFromDeviceStorage", value: function () { return null; } }]), e; }(), Pe = function (e) { r(n, Ce); var t = o(n); function n() { var e; return s(this, n), (e = t.apply(this, arguments)).updateMember = function (t) { return e.updateState({ member: t }); }, e.getMember = function () { var t, r; return null !== (r = null === (t = e.getState()) || void 0 === t ? void 0 : t.member) && void 0 !== r ? r : null; }, e.getSession = function () { var t, r; return null !== (r = null === (t = e.getState()) || void 0 === t ? void 0 : t.session) && void 0 !== r ? r : null; }, e; } return u(n); }();
921
- function je(e) { var t = e.toString(16); return 1 === t.length && (t = "0" + t), t; }
922
- var Le, Ae, Re, Ie, Ne, De, Me = function () { function e(t, r) { s(this, e), this._dataLayer = t, this.namespace = r; } return u(e, [{ key: "key", value: function () { return "PKCE_VERIFIER:" + this.namespace; } }, { key: "startPKCETransaction", value: function () { return me(this, void 0, void 0, a().mark((function t() { var r; return a().wrap((function (t) { for (;;)
919
+ o.destroyState(); }, window.addEventListener("storage", this._listen); var i = null === (n = this._datalayer.state) || void 0 === n ? void 0 : n.session; i && Date.parse(i.expires_at) < Date.now() ? this.destroyState() : this._datalayer.readSessionCookie().session_token || this.destroyState(); } return u(e, [{ key: "getTokens", value: function () { var e = this._datalayer.readSessionCookie(), t = e.session_token, r = e.session_jwt; return t && r ? { session_token: t, session_jwt: r } : null; } }, { key: "destroyState", value: function () { this.updateStateAndTokens({ state: null, session_token: null, session_jwt: null }); } }, { key: "_updateStateAndTokensInternal", value: function (e) { var t = this._datalayer.state, r = null === e.state ? null : Object.assign(Object.assign({}, this._datalayer.state), e.state); this._datalayer.state = r, Ee(t, r) || Oe(this._datalayer.subscriptions, r); } }, { key: "updateStateAndTokens", value: function (e) { e.state ? this._datalayer.writeSessionCookie(e) : this._datalayer.removeSessionCookie(), this._updateStateAndTokensInternal(e), this._datalayer.syncToLocalStorage(); } }, { key: "updateState", value: function (e) { var t = this._datalayer.state, r = null === e ? null : Object.assign(Object.assign({}, this._datalayer.state), e); this._datalayer.state = r, Ee(t, r) || (Oe(this._datalayer.subscriptions, r), this._datalayer.syncToLocalStorage()); } }, { key: "updateTokens", value: function (e) { var t = e.session_token, r = e.session_jwt, n = this._datalayer.readSessionCookie(), o = Object.assign(Object.assign({}, n), { session_token: t, session_jwt: r }); t && r ? this._datalayer.writeSessionCookie(o) : this._datalayer.removeSessionCookie(); } }, { key: "subscribeToState", value: function (e) { return t = this._datalayer.subscriptions, r = e, n = Math.random().toString(36).slice(-10), t[n] = r, function () { return delete t[n]; }; var t, r, n; } }, { key: "getState", value: function () { return this._datalayer.state; } }, { key: "destroy", value: function () { window.removeEventListener("storage", this._listen); } }, { key: "syncFromDeviceStorage", value: function () { return null; } }]), e; }(), xe = function (e) { r(n, Te); var t = o(n); function n() { var e; return s(this, n), (e = t.apply(this, arguments)).updateMember = function (t) { return e.updateState({ member: t }); }, e.getMember = function () { var t, r; return null !== (r = null === (t = e.getState()) || void 0 === t ? void 0 : t.member) && void 0 !== r ? r : null; }, e.getSession = function () { var t, r; return null !== (r = null === (t = e.getState()) || void 0 === t ? void 0 : t.session) && void 0 !== r ? r : null; }, e; } return u(n); }();
920
+ function Ce(e) { var t = e.toString(16); return 1 === t.length && (t = "0" + t), t; }
921
+ var Pe, je, Le, Ae, Re, Ie, De = function () { function e(t, r) { s(this, e), this._dataLayer = t, this.namespace = r; } return u(e, [{ key: "key", value: function () { return "PKCE_VERIFIER:" + this.namespace; } }, { key: "startPKCETransaction", value: function () { return ve(this, void 0, void 0, a().mark((function t() { var r; return a().wrap((function (t) { for (;;)
923
922
  switch (t.prev = t.next) {
924
923
  case 0: return t.next = 2, e.createProofkeyPair();
925
924
  case 2: return r = t.sent, this._dataLayer.setItem(this.key(), JSON.stringify(r)), t.abrupt("return", r);
@@ -930,56 +929,56 @@ var Le, Ae, Re, Ie, Ne, De, Me = function () { function e(t, r) { s(this, e), th
930
929
  return JSON.parse(e);
931
930
  }
932
931
  catch (e) {
933
- return void Z.warn("Found malformed Proof Key pair in localstorage.");
934
- } } }, { key: "clearPKPair", value: function () { return this._dataLayer.removeItem(this.key()); } }], [{ key: "createProofkeyPair", value: function () { return me(this, void 0, void 0, a().mark((function e() { var r, n, o; return a().wrap((function (e) { for (;;)
932
+ return void Z("Found malformed Proof Key pair in localstorage.");
933
+ } } }, { key: "clearPKPair", value: function () { return this._dataLayer.removeItem(this.key()); } }], [{ key: "createProofkeyPair", value: function () { return ve(this, void 0, void 0, a().mark((function e() { var r, n, o; return a().wrap((function (e) { for (;;)
935
934
  switch (e.prev = e.next) {
936
- case 0: return r = new Uint32Array(16), window.crypto.getRandomValues(r), n = Array.from(r).map(je).join(""), e.next = 5, window.crypto.subtle.digest("SHA-256", (new TextEncoder).encode(n));
935
+ case 0: return r = new Uint32Array(16), window.crypto.getRandomValues(r), n = Array.from(r).map(Ce).join(""), e.next = 5, window.crypto.subtle.digest("SHA-256", (new TextEncoder).encode(n));
937
936
  case 5: return o = e.sent, e.abrupt("return", { code_challenge: (i = o, a = void 0, btoa((a = String.fromCharCode).call.apply(a, [null].concat(t(new Uint8Array(i))))).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "")), code_verifier: n });
938
937
  case 7:
939
938
  case "end": return e.stop();
940
- } var i, a; }), e); }))); } }]), e; }(), Ue = "bootstrap", Be = function () { return { displayWatermark: !1, cnameDomain: null, emailDomains: ["stytch.com"], captchaSettings: { enabled: !1 }, pkceRequiredForEmailMagicLinks: !1, pkceRequiredForPasswordResets: !1, pkceRequiredForOAuth: !1, pkceRequiredForSso: !1 }; }, Ke = function () { function e(t, r, n) { var o = this; s(this, e), this._publicToken = t, this._networkClient = r, this._dataLayer = n, this._bootstrapDataPromise = this._networkClient.fetchSDK({ url: "/projects/bootstrap/".concat(this._publicToken), method: "GET", errorMessage: "Error fetching bootstrap data for SDK for ".concat(this._publicToken) }).then(e.mapBootstrapData).then((function (e) { return o._dataLayer.setItem(Ue, JSON.stringify(e)), e; })).catch((function (e) { return Z.error(e), Be(); })); } return u(e, [{ key: "getSync", value: function () { var e = this._dataLayer.getItem(Ue); if (null === e)
941
- return Be(); try {
939
+ } var i, a; }), e); }))); } }]), e; }(), Ne = "bootstrap", Me = function () { function e(t, r, n) { var o = this; s(this, e), this._publicToken = t, this._networkClient = r, this._dataLayer = n, this._bootstrapDataPromise = this._networkClient.fetchSDK({ url: "/projects/bootstrap/".concat(this._publicToken), method: "GET", errorMessage: "Error fetching bootstrap data for SDK for ".concat(this._publicToken) }).then(e.mapBootstrapData).then((function (e) { return o._dataLayer.setItem(Ne, JSON.stringify(e)), e; })).catch((function (e) { return Q(e), { displayWatermark: !1, cnameDomain: null, emailDomains: ["stytch.com"], captchaSettings: { enabled: !1 }, pkceRequiredForEmailMagicLinks: !1, pkceRequiredForPasswordResets: !1, pkceRequiredForOAuth: !1, pkceRequiredForSso: !1 }; })); } return u(e, [{ key: "getSync", value: function () { var e = this._dataLayer.getItem(Ne); if (null === e)
940
+ return { displayWatermark: !1, cnameDomain: null, emailDomains: ["stytch.com"], captchaSettings: { enabled: !1 }, pkceRequiredForEmailMagicLinks: !1, pkceRequiredForPasswordResets: !1, pkceRequiredForOAuth: !1, pkceRequiredForSso: !1 }; try {
942
941
  return JSON.parse(e);
943
942
  }
944
943
  catch (e) {
945
- return Be();
946
- } } }, { key: "getAsync", value: function () { return this._bootstrapDataPromise; } }], [{ key: "mapBootstrapData", value: function (e) { return { displayWatermark: !e.disable_sdk_watermark, captchaSettings: e.captcha_settings, cnameDomain: e.cname_domain, emailDomains: e.email_domains, pkceRequiredForEmailMagicLinks: e.pkce_required_for_email_magic_links, pkceRequiredForPasswordResets: e.pkce_required_for_password_resets, pkceRequiredForOAuth: e.pkce_required_for_oauth, pkceRequiredForSso: e.pkce_required_for_sso }; } }]), e; }(), Fe = u((function e(t, r) { var n, o = this; s(this, e), function (e) { if ("undefined" == typeof window)
947
- throw new Error("The ".concat(e, " is not compatible with server-side environments.\nIf using nextjs, use the create").concat(e, " method instead.\n```\n").concat("import { createStytchB2BHeadlessClient } from '@stytch/nextjs/b2b';\n \n const stytch = createStytchB2BHeadlessClient('public-token-...');\n ", "\n```\n")); }("StytchB2BHeadlessClient"), "string" != typeof (n = t) ? Z.warn("Public token is malformed. Expected a string, got ".concat(v(n), ".").concat(Q)) : "" === n ? Z.warn('Public token is malformed. Expected "public-token-...", got an empty string.'.concat(Q)) : n.startsWith("public-token-") || Z.warn('Public token is malformed. Expected "public-token-...", got '.concat(n, ".").concat(Q)); var i, a, c, u, l, h, f, d, p, m = r, y = { cookieOptions: null == (i = m) ? void 0 : i.cookieOptions, endpoints: { sdkBackendURL: null !== (c = null === (a = null == i ? void 0 : i.endpoints) || void 0 === a ? void 0 : a.sdkBackendURL) && void 0 !== c ? c : "https://web.stytch.com", testAPIURL: null !== (l = null === (u = null == i ? void 0 : i.endpoints) || void 0 === u ? void 0 : u.testAPIURL) && void 0 !== l ? l : "https://test.stytch.com", liveAPIURL: null !== (f = null === (h = null == i ? void 0 : i.endpoints) || void 0 === h ? void 0 : h.liveAPIURL) && void 0 !== f ? f : "https://api.stytch.com", clientsideServicesIframeURL: null !== (p = null === (d = null == i ? void 0 : i.endpoints) || void 0 === d ? void 0 : d.clientsideServicesIframeURL) && void 0 !== p ? p : "https://js.stytch.com/clientside-services/index.html" } }; this._dataLayer = Ee(t, m), this._subscriptionService = new Pe(t, this._dataLayer); this._networkClient = new ye(t, this._dataLayer, y.endpoints.sdkBackendURL, (function () { var e, t, r, n; return { stytch_member_id: null === (t = null === (e = o._dataLayer.state) || void 0 === e ? void 0 : e.member) || void 0 === t ? void 0 : t.member_id, stytch_member_session_id: null === (n = null === (r = o._dataLayer.state) || void 0 === r ? void 0 : r.session) || void 0 === n ? void 0 : n.member_session_id }; })); var _ = new Ke(t, this._networkClient, this._dataLayer); this.organization = new le(this._networkClient), this.member = new ce(this._networkClient, this._subscriptionService), this.session = new he(this._networkClient, this._subscriptionService), this.magicLinks = new se(this._networkClient, this._subscriptionService, new Me(this._dataLayer, "magic_links"), _.getAsync()), this.sso = new ue(this._networkClient, this._subscriptionService, new Me(this._dataLayer, "sso"), _.getAsync(), { publicToken: t, testAPIURL: y.endpoints.testAPIURL, liveAPIURL: y.endpoints.liveAPIURL }), this.discovery = new fe(this._networkClient, this._subscriptionService), this._sessionManager = new re(this._subscriptionService, this.session), this._dataLayer.readSessionCookie().session_token && this._sessionManager.performBackgroundRefresh(), this._networkClient.logEvent({ name: "b2b_sdk_instance_instantiated", details: { event_callback_registered: !1, error_callback_registered: !1, success_callback_registered: !1 } }), pe(this, { bootstrap: _, publicToken: t }); }));
948
- function qe(e) { return qe = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e; } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e; }, qe(e); }
949
- function ze(e, t) { for (var r = 0; r < t.length; r++) {
944
+ return { displayWatermark: !1, cnameDomain: null, emailDomains: ["stytch.com"], captchaSettings: { enabled: !1 }, pkceRequiredForEmailMagicLinks: !1, pkceRequiredForPasswordResets: !1, pkceRequiredForOAuth: !1, pkceRequiredForSso: !1 };
945
+ } } }, { key: "getAsync", value: function () { return this._bootstrapDataPromise; } }], [{ key: "mapBootstrapData", value: function (e) { return { displayWatermark: !e.disable_sdk_watermark, captchaSettings: e.captcha_settings, cnameDomain: e.cname_domain, emailDomains: e.email_domains, pkceRequiredForEmailMagicLinks: e.pkce_required_for_email_magic_links, pkceRequiredForPasswordResets: e.pkce_required_for_password_resets, pkceRequiredForOAuth: e.pkce_required_for_oauth, pkceRequiredForSso: e.pkce_required_for_sso }; } }]), e; }(), Ue = u((function e(t, r) { var n, o = this; s(this, e), function (e) { if ("undefined" == typeof window)
946
+ throw new Error("The ".concat(e, " is not compatible with server-side environments.\nIf using nextjs, use the create").concat(e, " method instead.\n```\n").concat("import { createStytchB2BHeadlessClient } from '@stytch/nextjs/b2b';\n \n const stytch = createStytchB2BHeadlessClient('public-token-...');\n ", "\n```\n")); }("StytchB2BHeadlessClient"), "string" != typeof (n = t) ? Z("Public token is malformed. Expected a string, got ".concat(v(n), ".").concat(ee)) : "" === n ? Z('Public token is malformed. Expected "public-token-...", got an empty string.'.concat(ee)) : n.startsWith("public-token-") || Z('Public token is malformed. Expected "public-token-...", got '.concat(n, ".").concat(ee)); var i, a, c, u, l, h, f, d, p, m = r, y = { cookieOptions: null == (i = m) ? void 0 : i.cookieOptions, endpoints: { sdkBackendURL: null !== (c = null === (a = null == i ? void 0 : i.endpoints) || void 0 === a ? void 0 : a.sdkBackendURL) && void 0 !== c ? c : "https://web.stytch.com", testAPIURL: null !== (l = null === (u = null == i ? void 0 : i.endpoints) || void 0 === u ? void 0 : u.testAPIURL) && void 0 !== l ? l : "https://test.stytch.com", liveAPIURL: null !== (f = null === (h = null == i ? void 0 : i.endpoints) || void 0 === h ? void 0 : h.liveAPIURL) && void 0 !== f ? f : "https://api.stytch.com", clientsideServicesIframeURL: null !== (p = null === (d = null == i ? void 0 : i.endpoints) || void 0 === d ? void 0 : d.clientsideServicesIframeURL) && void 0 !== p ? p : "https://js.stytch.com/clientside-services/index.html" } }; this._dataLayer = Se(t, m), this._subscriptionService = new xe(t, this._dataLayer); this._networkClient = new me(t, this._dataLayer, y.endpoints.sdkBackendURL, (function () { var e, t, r, n; return { stytch_member_id: null === (t = null === (e = o._dataLayer.state) || void 0 === e ? void 0 : e.member) || void 0 === t ? void 0 : t.member_id, stytch_member_session_id: null === (n = null === (r = o._dataLayer.state) || void 0 === r ? void 0 : r.session) || void 0 === n ? void 0 : n.member_session_id }; })); var _ = new Me(t, this._networkClient, this._dataLayer); this.organization = new ue(this._networkClient), this.member = new se(this._networkClient, this._subscriptionService), this.session = new le(this._networkClient, this._subscriptionService), this.magicLinks = new ae(this._networkClient, this._subscriptionService, new De(this._dataLayer, "magic_links"), _.getAsync()), this.sso = new ce(this._networkClient, this._subscriptionService, new De(this._dataLayer, "sso"), _.getAsync(), { publicToken: t, testAPIURL: y.endpoints.testAPIURL, liveAPIURL: y.endpoints.liveAPIURL }), this.discovery = new he(this._networkClient, this._subscriptionService), this._sessionManager = new ne(this._subscriptionService, this.session), this._dataLayer.readSessionCookie().session_token && this._sessionManager.performBackgroundRefresh(), this._networkClient.logEvent({ name: "b2b_sdk_instance_instantiated", details: { event_callback_registered: !1, error_callback_registered: !1, success_callback_registered: !1 } }), de(this, { bootstrap: _, publicToken: t }); }));
947
+ function Be(e) { return Be = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e; } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e; }, Be(e); }
948
+ function Fe(e, t) { for (var r = 0; r < t.length; r++) {
950
949
  var n = t[r];
951
- n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, (o = n.key, i = void 0, i = function (e, t) { if ("object" !== qe(e) || null === e)
950
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, (o = n.key, i = void 0, i = function (e, t) { if ("object" !== Be(e) || null === e)
952
951
  return e; var r = e[Symbol.toPrimitive]; if (void 0 !== r) {
953
952
  var n = r.call(e, t || "default");
954
- if ("object" !== qe(n))
953
+ if ("object" !== Be(n))
955
954
  return n;
956
955
  throw new TypeError("@@toPrimitive must return a primitive value.");
957
- } return ("string" === t ? String : Number)(e); }(o, "string"), "symbol" === qe(i) ? i : String(i)), n);
956
+ } return ("string" === t ? String : Number)(e); }(o, "string"), "symbol" === Be(i) ? i : String(i)), n);
958
957
  } var o, i; }
959
- function Ge(e, t, r) { return t && ze(e.prototype, t), r && ze(e, r), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
960
- function We(e, t) { if (!(e instanceof t))
958
+ function Ke(e, t, r) { return t && Fe(e.prototype, t), r && Fe(e, r), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
959
+ function qe(e, t) { if (!(e instanceof t))
961
960
  throw new TypeError("Cannot call a class as a function"); }
962
- function He(e, t) { if ("function" != typeof t && null !== t)
963
- throw new TypeError("Super expression must either be null or a function"); e.prototype = Object.create(t && t.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && Ze(e, t); }
964
- function Ve(e) { var t = Xe(); return function () { var r, n = Qe(e); if (t) {
965
- var o = Qe(this).constructor;
961
+ function ze(e, t) { if ("function" != typeof t && null !== t)
962
+ throw new TypeError("Super expression must either be null or a function"); e.prototype = Object.create(t && t.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && Je(e, t); }
963
+ function Ge(e) { var t = Ye(); return function () { var r, n = $e(e); if (t) {
964
+ var o = $e(this).constructor;
966
965
  r = Reflect.construct(n, arguments, o);
967
966
  }
968
967
  else
969
- r = n.apply(this, arguments); return function (e, t) { if (t && ("object" === qe(t) || "function" == typeof t))
968
+ r = n.apply(this, arguments); return function (e, t) { if (t && ("object" === Be(t) || "function" == typeof t))
970
969
  return t; if (void 0 !== t)
971
- throw new TypeError("Derived constructors may only return object or undefined"); return Ye(e); }(this, r); }; }
972
- function Ye(e) { if (void 0 === e)
970
+ throw new TypeError("Derived constructors may only return object or undefined"); return We(e); }(this, r); }; }
971
+ function We(e) { if (void 0 === e)
973
972
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
974
- function Je(e) { var t = "function" == typeof Map ? new Map : void 0; return Je = function (e) { if (null === e || (r = e, -1 === Function.toString.call(r).indexOf("[native code]")))
973
+ function He(e) { var t = "function" == typeof Map ? new Map : void 0; return He = function (e) { if (null === e || (r = e, -1 === Function.toString.call(r).indexOf("[native code]")))
975
974
  return e; var r; if ("function" != typeof e)
976
975
  throw new TypeError("Super expression must either be null or a function"); if (void 0 !== t) {
977
976
  if (t.has(e))
978
977
  return t.get(e);
979
978
  t.set(e, n);
980
- } function n() { return $e(e, arguments, Qe(this).constructor); } return n.prototype = Object.create(e.prototype, { constructor: { value: n, enumerable: !1, writable: !0, configurable: !0 } }), Ze(n, e); }, Je(e); }
981
- function $e(e, t, r) { return $e = Xe() ? Reflect.construct.bind() : function (e, t, r) { var n = [null]; n.push.apply(n, t); var o = new (Function.bind.apply(e, n)); return r && Ze(o, r.prototype), o; }, $e.apply(null, arguments); }
982
- function Xe() { if ("undefined" == typeof Reflect || !Reflect.construct)
979
+ } function n() { return Ve(e, arguments, $e(this).constructor); } return n.prototype = Object.create(e.prototype, { constructor: { value: n, enumerable: !1, writable: !0, configurable: !0 } }), Je(n, e); }, He(e); }
980
+ function Ve(e, t, r) { return Ve = Ye() ? Reflect.construct.bind() : function (e, t, r) { var n = [null]; n.push.apply(n, t); var o = new (Function.bind.apply(e, n)); return r && Je(o, r.prototype), o; }, Ve.apply(null, arguments); }
981
+ function Ye() { if ("undefined" == typeof Reflect || !Reflect.construct)
983
982
  return !1; if (Reflect.construct.sham)
984
983
  return !1; if ("function" == typeof Proxy)
985
984
  return !0; try {
@@ -988,11 +987,11 @@ function Xe() { if ("undefined" == typeof Reflect || !Reflect.construct)
988
987
  catch (e) {
989
988
  return !1;
990
989
  } }
991
- function Ze(e, t) { return Ze = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (e, t) { return e.__proto__ = t, e; }, Ze(e, t); }
992
- function Qe(e) { return Qe = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (e) { return e.__proto__ || Object.getPrototypeOf(e); }, Qe(e); }
993
- !function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(Le || (Le = {})), function (e) { e.Google = "google", e.Microsoft = "microsoft", e.Apple = "apple", e.Github = "github", e.GitLab = "gitlab", e.Facebook = "facebook", e.Discord = "discord", e.Slack = "slack", e.Amazon = "amazon", e.Bitbucket = "bitbucket", e.LinkedIn = "linkedin", e.Coinbase = "coinbase", e.Twitch = "twitch"; }(Ae || (Ae = {})), function (e) { e.Vessel = "Vessel", e.Phantom = "Phantom", e.Metamask = "Metamask", e.Coinbase = "Coinbase", e.Binance = "Binance", e.GenericEthereumWallet = "Other Ethereum Wallet", e.GenericSolanaWallet = "Other Solana Wallet"; }(Re || (Re = {})), function (e) { e.embedded = "embedded", e.floating = "floating"; }(Ie || (Ie = {})), function (e) { e.SMS = "sms", e.WhatsApp = "whatsapp", e.Email = "email"; }(Ne || (Ne = {})), function (e) { e.MagicLinkLoginOrCreateEvent = "MAGIC_LINK_LOGIN_OR_CREATE", e.OTPsLoginOrCreateEvent = "OTP_LOGIN_OR_CREATE", e.OTPsAuthenticate = "OTP_AUTHENTICATE", e.CryptoWalletAuthenticateStart = "CRYPTO_WALLET_AUTHENTICATE_START", e.CryptoWalletAuthenticate = "CRYPTO_WALLET_AUTHENTICATE", e.PasswordCreate = "PASSWORD_CREATE", e.PasswordAuthenticate = "PASSWORD_AUTHENTICATE", e.PasswordResetByEmailStart = "PASSWORD_RESET_BY_EMAIL_START", e.PasswordResetByEmail = "PASSWORD_RESET_BY_EMAIL"; }(De || (De = {}));
994
- var et; (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e, n) { var o; return We(this, r), (o = t.call(this, e + "\n" + n)).message = e + "\n" + n, o.name = "SDKAPIUnreachableError", o.details = n, Object.setPrototypeOf(Ye(o), r.prototype), o; } return Ge(r); })(); (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e, n) { var o; return We(this, r), (o = t.call(this)).name = "StytchSDKUsageError", o.message = "Invalid call to ".concat(e, "\n") + n, o; } return Ge(r); })(); (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e) { var n, o; We(this, r), (n = t.call(this)).name = "StytchSDKSchemaError"; var i = null === (o = e.body) || void 0 === o ? void 0 : o.map((function (e) { return "".concat(e.dataPath, ": ").concat(e.message); })).join("\n"); return n.message = "[400] Request does not match expected schema\n".concat(i), n; } return Ge(r); })(); (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e) { var n; We(this, r), (n = t.call(this)).name = "StytchSDKAPIError"; var o = e.status_code, i = e.error_type, a = e.error_message, s = e.error_url, c = e.request_id; return n.error_type = i, n.error_message = a, n.error_url = s, n.request_id = c, n.status_code = o, n.message = "[".concat(o, "] ").concat(i, "\n") + "".concat(a, "\n") + "See ".concat(s, " for more information.\n") + (c ? "request_id: ".concat(c, "\n") : ""), n; } return Ge(r); })(); (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e) { var n; return We(this, r), (n = t.call(this)).name = "StytchSDKNativeError", n.error_type = e, n.message = "".concat(e), n; } return Ge(r); })();
995
- !function (e) { e.BiometricsSensorError = "biometrics_sensor_error", e.DeviceCredentialsNotAllowed = "device_credentials_not_allowed", e.DeviceHardwareError = "device_hardware_error", e.InternalError = "internal_error", e.KeyInvalidated = "key_invalidated", e.KeystoreUnavailable = "keystore_unavailable", e.NoBiometricsEnrolled = "no_biometrics_enrolled", e.NoBiometricsRegistration = "no_biometrics_registration", e.SessionExpired = "session_expired", e.UserCancellation = "user_cancellation", e.UserLockedOut = "user_locked_out"; }(et || (et = {}));
990
+ function Je(e, t) { return Je = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (e, t) { return e.__proto__ = t, e; }, Je(e, t); }
991
+ function $e(e) { return $e = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (e) { return e.__proto__ || Object.getPrototypeOf(e); }, $e(e); }
992
+ !function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(Pe || (Pe = {})), function (e) { e.Google = "google", e.Microsoft = "microsoft", e.Apple = "apple", e.Github = "github", e.GitLab = "gitlab", e.Facebook = "facebook", e.Discord = "discord", e.Slack = "slack", e.Amazon = "amazon", e.Bitbucket = "bitbucket", e.LinkedIn = "linkedin", e.Coinbase = "coinbase", e.Twitch = "twitch"; }(je || (je = {})), function (e) { e.Vessel = "Vessel", e.Phantom = "Phantom", e.Metamask = "Metamask", e.Coinbase = "Coinbase", e.Binance = "Binance", e.GenericEthereumWallet = "Other Ethereum Wallet", e.GenericSolanaWallet = "Other Solana Wallet"; }(Le || (Le = {})), function (e) { e.embedded = "embedded", e.floating = "floating"; }(Ae || (Ae = {})), function (e) { e.SMS = "sms", e.WhatsApp = "whatsapp", e.Email = "email"; }(Re || (Re = {})), function (e) { e.MagicLinkLoginOrCreateEvent = "MAGIC_LINK_LOGIN_OR_CREATE", e.OTPsLoginOrCreateEvent = "OTP_LOGIN_OR_CREATE", e.OTPsAuthenticate = "OTP_AUTHENTICATE", e.CryptoWalletAuthenticateStart = "CRYPTO_WALLET_AUTHENTICATE_START", e.CryptoWalletAuthenticate = "CRYPTO_WALLET_AUTHENTICATE", e.PasswordCreate = "PASSWORD_CREATE", e.PasswordAuthenticate = "PASSWORD_AUTHENTICATE", e.PasswordResetByEmailStart = "PASSWORD_RESET_BY_EMAIL_START", e.PasswordResetByEmail = "PASSWORD_RESET_BY_EMAIL"; }(Ie || (Ie = {}));
993
+ var Xe; (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e, n) { var o; return qe(this, r), (o = t.call(this, e + "\n" + n)).message = e + "\n" + n, o.name = "SDKAPIUnreachableError", o.details = n, Object.setPrototypeOf(We(o), r.prototype), o; } return Ke(r); })(); (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e, n) { var o; return qe(this, r), (o = t.call(this)).name = "StytchSDKUsageError", o.message = "Invalid call to ".concat(e, "\n") + n, o; } return Ke(r); })(); (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e) { var n, o; qe(this, r), (n = t.call(this)).name = "StytchSDKSchemaError"; var i = null === (o = e.body) || void 0 === o ? void 0 : o.map((function (e) { return "".concat(e.dataPath, ": ").concat(e.message); })).join("\n"); return n.message = "[400] Request does not match expected schema\n".concat(i), n; } return Ke(r); })(); (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e) { var n; qe(this, r), (n = t.call(this)).name = "StytchSDKAPIError"; var o = e.status_code, i = e.error_type, a = e.error_message, s = e.error_url, c = e.request_id; return n.error_type = i, n.error_message = a, n.error_url = s, n.request_id = c, n.status_code = o, n.message = "[".concat(o, "] ").concat(i, "\n") + "".concat(a, "\n") + "See ".concat(s, " for more information.\n") + (c ? "request_id: ".concat(c, "\n") : ""), n; } return Ke(r); })(); (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e) { var n; return qe(this, r), (n = t.call(this)).name = "StytchSDKNativeError", n.error_type = e, n.message = "".concat(e), n; } return Ke(r); })();
994
+ !function (e) { e.BiometricsSensorError = "biometrics_sensor_error", e.DeviceCredentialsNotAllowed = "device_credentials_not_allowed", e.DeviceHardwareError = "device_hardware_error", e.InternalError = "internal_error", e.KeyInvalidated = "key_invalidated", e.KeystoreUnavailable = "keystore_unavailable", e.NoBiometricsEnrolled = "no_biometrics_enrolled", e.NoBiometricsRegistration = "no_biometrics_registration", e.SessionExpired = "session_expired", e.UserCancellation = "user_cancellation", e.UserLockedOut = "user_locked_out"; }(Xe || (Xe = {}));
996
995
 
997
996
  /**
998
997
  * Creates a Headless Stytch client object to call the stytch B2B APIs.
@@ -1011,7 +1010,7 @@ const createStytchB2BHeadlessClient = (...args) => {
1011
1010
  if (typeof window === 'undefined') {
1012
1011
  return createStytchSSRProxy();
1013
1012
  }
1014
- return new Fe(...args);
1013
+ return new Ue(...args);
1015
1014
  };
1016
1015
 
1017
1016
  export { StytchB2BProvider, createStytchB2BHeadlessClient, useStytchB2BClient, useStytchMember, useStytchMemberSession, withStytchB2BClient, withStytchMember, withStytchMemberSession };
package/dist/b2b/index.js CHANGED
@@ -620,9 +620,9 @@ catch (e) {
620
620
  } }
621
621
  function C(e, t) { return C = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (e, t) { return e.__proto__ = t, e; }, C(e, t); }
622
622
  function P(e) { return P = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (e) { return e.__proto__ || Object.getPrototypeOf(e); }, P(e); }
623
- var j, L, A, R, I, N;
624
- !function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(j || (j = {})), function (e) { e.Google = "google", e.Microsoft = "microsoft", e.Apple = "apple", e.Github = "github", e.GitLab = "gitlab", e.Facebook = "facebook", e.Discord = "discord", e.Slack = "slack", e.Amazon = "amazon", e.Bitbucket = "bitbucket", e.LinkedIn = "linkedin", e.Coinbase = "coinbase", e.Twitch = "twitch"; }(L || (L = {})), function (e) { e.Vessel = "Vessel", e.Phantom = "Phantom", e.Metamask = "Metamask", e.Coinbase = "Coinbase", e.Binance = "Binance", e.GenericEthereumWallet = "Other Ethereum Wallet", e.GenericSolanaWallet = "Other Solana Wallet"; }(A || (A = {})), function (e) { e.embedded = "embedded", e.floating = "floating"; }(R || (R = {})), function (e) { e.SMS = "sms", e.WhatsApp = "whatsapp", e.Email = "email"; }(I || (I = {})), function (e) { e.MagicLinkLoginOrCreateEvent = "MAGIC_LINK_LOGIN_OR_CREATE", e.OTPsLoginOrCreateEvent = "OTP_LOGIN_OR_CREATE", e.OTPsAuthenticate = "OTP_AUTHENTICATE", e.CryptoWalletAuthenticateStart = "CRYPTO_WALLET_AUTHENTICATE_START", e.CryptoWalletAuthenticate = "CRYPTO_WALLET_AUTHENTICATE", e.PasswordCreate = "PASSWORD_CREATE", e.PasswordAuthenticate = "PASSWORD_AUTHENTICATE", e.PasswordResetByEmailStart = "PASSWORD_RESET_BY_EMAIL_START", e.PasswordResetByEmail = "PASSWORD_RESET_BY_EMAIL"; }(N || (N = {}));
625
- var D, M, U = function (e) { w(r, E(Error)); var t = S(r); function r(e, n) { var o; return k(this, r), (o = t.call(this, e + "\n" + n)).message = e + "\n" + n, o.name = "SDKAPIUnreachableError", o.details = n, Object.setPrototypeOf(O(o), r.prototype), o; } return g(r); }(), B = function (e) { w(r, E(Error)); var t = S(r); function r(e, n) { var o; return k(this, r), (o = t.call(this)).name = "StytchSDKUsageError", o.message = "Invalid call to ".concat(e, "\n") + n, o; } return g(r); }(), K = function (e) { w(r, E(Error)); var t = S(r); function r(e) { var n, o; k(this, r), (n = t.call(this)).name = "StytchSDKSchemaError"; var i = null === (o = e.body) || void 0 === o ? void 0 : o.map((function (e) { return "".concat(e.dataPath, ": ").concat(e.message); })).join("\n"); return n.message = "[400] Request does not match expected schema\n".concat(i), n; } return g(r); }(), F = function (e) { w(r, E(Error)); var t = S(r); function r(e) { var n; k(this, r), (n = t.call(this)).name = "StytchSDKAPIError"; var o = e.status_code, i = e.error_type, a = e.error_message, s = e.error_url, c = e.request_id; return n.error_type = i, n.error_message = a, n.error_url = s, n.request_id = c, n.status_code = o, n.message = "[".concat(o, "] ").concat(i, "\n") + "".concat(a, "\n") + "See ".concat(s, " for more information.\n") + (c ? "request_id: ".concat(c, "\n") : ""), n; } return g(r); }(), q = ["unauthorized_credentials", "user_unauthenticated", "invalid_secret_authentication", "session_not_found"];
623
+ var j, L, A, R, I, D;
624
+ !function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(j || (j = {})), function (e) { e.Google = "google", e.Microsoft = "microsoft", e.Apple = "apple", e.Github = "github", e.GitLab = "gitlab", e.Facebook = "facebook", e.Discord = "discord", e.Slack = "slack", e.Amazon = "amazon", e.Bitbucket = "bitbucket", e.LinkedIn = "linkedin", e.Coinbase = "coinbase", e.Twitch = "twitch"; }(L || (L = {})), function (e) { e.Vessel = "Vessel", e.Phantom = "Phantom", e.Metamask = "Metamask", e.Coinbase = "Coinbase", e.Binance = "Binance", e.GenericEthereumWallet = "Other Ethereum Wallet", e.GenericSolanaWallet = "Other Solana Wallet"; }(A || (A = {})), function (e) { e.embedded = "embedded", e.floating = "floating"; }(R || (R = {})), function (e) { e.SMS = "sms", e.WhatsApp = "whatsapp", e.Email = "email"; }(I || (I = {})), function (e) { e.MagicLinkLoginOrCreateEvent = "MAGIC_LINK_LOGIN_OR_CREATE", e.OTPsLoginOrCreateEvent = "OTP_LOGIN_OR_CREATE", e.OTPsAuthenticate = "OTP_AUTHENTICATE", e.CryptoWalletAuthenticateStart = "CRYPTO_WALLET_AUTHENTICATE_START", e.CryptoWalletAuthenticate = "CRYPTO_WALLET_AUTHENTICATE", e.PasswordCreate = "PASSWORD_CREATE", e.PasswordAuthenticate = "PASSWORD_AUTHENTICATE", e.PasswordResetByEmailStart = "PASSWORD_RESET_BY_EMAIL_START", e.PasswordResetByEmail = "PASSWORD_RESET_BY_EMAIL"; }(D || (D = {}));
625
+ var N, M, U = function (e) { w(r, E(Error)); var t = S(r); function r(e, n) { var o; return k(this, r), (o = t.call(this, e + "\n" + n)).message = e + "\n" + n, o.name = "SDKAPIUnreachableError", o.details = n, Object.setPrototypeOf(O(o), r.prototype), o; } return g(r); }(), B = function (e) { w(r, E(Error)); var t = S(r); function r(e, n) { var o; return k(this, r), (o = t.call(this)).name = "StytchSDKUsageError", o.message = "Invalid call to ".concat(e, "\n") + n, o; } return g(r); }(), F = function (e) { w(r, E(Error)); var t = S(r); function r(e) { var n, o; k(this, r), (n = t.call(this)).name = "StytchSDKSchemaError"; var i = null === (o = e.body) || void 0 === o ? void 0 : o.map((function (e) { return "".concat(e.dataPath, ": ").concat(e.message); })).join("\n"); return n.message = "[400] Request does not match expected schema\n".concat(i), n; } return g(r); }(), K = function (e) { w(r, E(Error)); var t = S(r); function r(e) { var n; k(this, r), (n = t.call(this)).name = "StytchSDKAPIError"; var o = e.status_code, i = e.error_type, a = e.error_message, s = e.error_url, c = e.request_id; return n.error_type = i, n.error_message = a, n.error_url = s, n.request_id = c, n.status_code = o, n.message = "[".concat(o, "] ").concat(i, "\n") + "".concat(a, "\n") + "See ".concat(s, " for more information.\n") + (c ? "request_id: ".concat(c, "\n") : ""), n; } return g(r); }(), q = ["unauthorized_credentials", "user_unauthenticated", "invalid_secret_authentication", "session_not_found"];
626
626
  function z(e, t, r, n) { return new (r || (r = Promise))((function (o, i) { function a(e) { try {
627
627
  c(n.next(e));
628
628
  }
@@ -634,7 +634,7 @@ catch (e) {
634
634
  catch (e) {
635
635
  i(e);
636
636
  } } function c(e) { var t; e.done ? o(e.value) : (t = e.value, t instanceof r ? t : new r((function (e) { e(t); }))).then(a, s); } c((n = n.apply(e, t || [])).next()); })); }
637
- !function (e) { e.BiometricsSensorError = "biometrics_sensor_error", e.DeviceCredentialsNotAllowed = "device_credentials_not_allowed", e.DeviceHardwareError = "device_hardware_error", e.InternalError = "internal_error", e.KeyInvalidated = "key_invalidated", e.KeystoreUnavailable = "keystore_unavailable", e.NoBiometricsEnrolled = "no_biometrics_enrolled", e.NoBiometricsRegistration = "no_biometrics_registration", e.SessionExpired = "session_expired", e.UserCancellation = "user_cancellation", e.UserLockedOut = "user_locked_out"; }(D || (D = {}));
637
+ !function (e) { e.BiometricsSensorError = "biometrics_sensor_error", e.DeviceCredentialsNotAllowed = "device_credentials_not_allowed", e.DeviceHardwareError = "device_hardware_error", e.InternalError = "internal_error", e.KeyInvalidated = "key_invalidated", e.KeystoreUnavailable = "keystore_unavailable", e.NoBiometricsEnrolled = "no_biometrics_enrolled", e.NoBiometricsRegistration = "no_biometrics_registration", e.SessionExpired = "session_expired", e.UserCancellation = "user_cancellation", e.UserLockedOut = "user_locked_out"; }(N || (N = {}));
638
638
  var G = new Uint8Array(16);
639
639
  function W() { if (!M && !(M = "undefined" != typeof crypto && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || "undefined" != typeof msCrypto && "function" == typeof msCrypto.getRandomValues && msCrypto.getRandomValues.bind(msCrypto)))
640
640
  throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported"); return M(G); }
@@ -649,10 +649,9 @@ function $(e, t, r) { var n = (e = e || {}).random || (e.rng || W)(); if (n[6] =
649
649
  t[r + o] = n[o];
650
650
  return t;
651
651
  } return J(n); }
652
- var X = ["[Stytch]"], Z = { debug: function () { return false; }, log: function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
653
- r[n] = arguments[n]; return (e = console).log.apply(e, X.concat(r)); }, warn: function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
654
- r[n] = arguments[n]; return (e = console).warn.apply(e, X.concat(r)); }, error: function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
655
- r[n] = arguments[n]; return (e = console).error.apply(e, X.concat(r)); } }, Q = "\nYou can find your public token at https://stytch.com/dashboard/api-keys.", ee = function (e) { var t = { isObject: function (r, n) { var o = "object" === v(n) && !Array.isArray(n) && null !== n; if (!o)
652
+ var X = ["[Stytch]"], Z = function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
653
+ r[n] = arguments[n]; return (e = console).warn.apply(e, X.concat(r)); }, Q = function () { for (var e, t = arguments.length, r = new Array(t), n = 0; n < t; n++)
654
+ r[n] = arguments[n]; return (e = console).error.apply(e, X.concat(r)); }, ee = "\nYou can find your public token at https://stytch.com/dashboard/api-keys.", te = function (e) { var t = { isObject: function (r, n) { var o = "object" === v(n) && !Array.isArray(n) && null !== n; if (!o)
656
655
  throw new B(e, r + " must be an object."); return t; }, isOptionalObject: function (e, r) { return void 0 === r ? t : t.isObject(e, r); }, isString: function (r, n) { if ("string" != typeof n)
657
656
  throw new B(e, r + " must be a string."); return t; }, isOptionalString: function (e, r) { return void 0 === r ? t : t.isString(e, r); }, isStringArray: function (r, n) { if (!Array.isArray(n))
658
657
  throw new B(e, r + " must be an array of strings."); var o, i = function (e, t) { var r = "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"]; if (!r) {
@@ -681,7 +680,7 @@ var X = ["[Stytch]"], Z = { debug: function () { return false; }, log: function
681
680
  i.f();
682
681
  } return t; }, isOptionalStringArray: function (e, r) { return void 0 === r ? t : t.isStringArray(e, r); }, isNumber: function (r, n) { if ("number" != typeof n)
683
682
  throw new B(e, r + " must be a number."); return t; }, isOptionalNumber: function (e, r) { return void 0 === r ? t : t.isNumber(e, r); } }; return t; };
684
- function te(e) { var t = e.method, r = e.errorMessage, n = e.finalURL, o = e.basicAuthHeader, i = e.xSDKClientHeader, a = e.xSDKParentHostHeader, s = e.body; return z(this, void 0, void 0, _().mark((function e() { var c, u, l, h, f; return _().wrap((function (e) { for (;;)
683
+ function re(e) { var t = e.method, r = e.errorMessage, n = e.finalURL, o = e.basicAuthHeader, i = e.xSDKClientHeader, a = e.xSDKParentHostHeader, s = e.body; return z(this, void 0, void 0, _().mark((function e() { var c, u, l, h, f; return _().wrap((function (e) { for (;;)
685
684
  switch (e.prev = e.next) {
686
685
  case 0: return c = { Authorization: o, "Content-Type": "application/json", "X-SDK-Client": i }, a && (c["X-SDK-Parent-Host"] = a), u = { method: t, headers: c, body: s && JSON.stringify(s) }, e.prev = 3, e.next = 6, fetch(n, u);
687
686
  case 6:
@@ -709,17 +708,17 @@ function te(e) { var t = e.method, r = e.errorMessage, n = e.finalURL, o = e.bas
709
708
  e.next = 26;
710
709
  break;
711
710
  }
712
- throw new K(h);
713
- case 26: throw new F(h);
711
+ throw new F(h);
712
+ case 26: throw new K(h);
714
713
  case 27: return e.prev = 27, e.next = 30, l.json();
715
714
  case 30: return f = e.sent, e.abrupt("return", f.data);
716
715
  case 34: throw e.prev = 34, e.t2 = e.catch(27), new U(r, "Invalid response from the Stytch servers.");
717
716
  case 37:
718
717
  case "end": return e.stop();
719
718
  } }), e, null, [[3, 9], [15, 21], [27, 34]]); }))); }
720
- var re = function () { function e(t, r) { var n = this; k(this, e), this._subscriptionService = t, this._headlessSessionClient = r, this._onDataChange = function (e) { (null == e ? void 0 : e.session) ? n.scheduleBackgroundRefresh() : n.cancelBackgroundRefresh(); }, this._reauthenticateWithBackoff = function () { var t = function (t) { return function (r) { return e.isUnrecoverableError(r) ? Promise.reject(r) : new Promise((function (r) { return setTimeout(r, e.timeoutForAttempt(t)); })).then((function () { return n._headlessSessionClient.authenticate(); })); }; }; return n._headlessSessionClient.authenticate().catch(t(0)).catch(t(1)).catch(t(2)).catch(t(3)).catch(t(4)); }, this.timeout = null, this._subscriptionService.subscribeToState(this._onDataChange); } return g(e, [{ key: "performBackgroundRefresh", value: function () { var e = this; this._reauthenticateWithBackoff().then((function () { e.scheduleBackgroundRefresh(); })).catch((function () { Z.warn("Session background refresh failed. Signalling to app that user is logged out."), e._subscriptionService.destroyState(); })); } }, { key: "scheduleBackgroundRefresh", value: function () { var t = this; this.cancelBackgroundRefresh(), this.timeout = setTimeout((function () { t.performBackgroundRefresh(); }), e.REFRESH_INTERVAL_MS); } }, { key: "cancelBackgroundRefresh", value: function () { null !== this.timeout && (clearTimeout(this.timeout), this.timeout = null); } }], [{ key: "timeoutForAttempt", value: function (e) { return Math.floor(350 * Math.random()) - 175 + 2e3 * Math.pow(2, e); } }, { key: "isUnrecoverableError", value: function (e) { return q.includes(e.error_type); } }]), e; }();
721
- re.REFRESH_INTERVAL_MS = 18e4;
722
- var ne = 15, oe = 800, ie = function () { function e(t) { k(this, e), this.maxBatchSize = t.maxBatchSize, this.logEventURL = t.logEventURL, setInterval(this.flush.bind(this), t.intervalDurationMs), this.batch = []; } return g(e, [{ key: "logEvent", value: function (e, t) { this.batch.push({ telemetry: e, event: t }), this.batch.length >= this.maxBatchSize && this.flush(); } }, { key: "flush", value: function () { return z(this, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
719
+ var ne = function () { function e(t, r) { var n = this; k(this, e), this._subscriptionService = t, this._headlessSessionClient = r, this._onDataChange = function (e) { (null == e ? void 0 : e.session) ? n.scheduleBackgroundRefresh() : n.cancelBackgroundRefresh(); }, this._reauthenticateWithBackoff = function () { var t = function (t) { return function (r) { return e.isUnrecoverableError(r) ? Promise.reject(r) : new Promise((function (r) { return setTimeout(r, e.timeoutForAttempt(t)); })).then((function () { return n._headlessSessionClient.authenticate(); })); }; }; return n._headlessSessionClient.authenticate().catch(t(0)).catch(t(1)).catch(t(2)).catch(t(3)).catch(t(4)); }, this.timeout = null, this._subscriptionService.subscribeToState(this._onDataChange); } return g(e, [{ key: "performBackgroundRefresh", value: function () { var e = this; this._reauthenticateWithBackoff().then((function () { e.scheduleBackgroundRefresh(); })).catch((function () { Z("Session background refresh failed. Signalling to app that user is logged out."), e._subscriptionService.destroyState(); })); } }, { key: "scheduleBackgroundRefresh", value: function () { var t = this; this.cancelBackgroundRefresh(), this.timeout = setTimeout((function () { t.performBackgroundRefresh(); }), e.REFRESH_INTERVAL_MS); } }, { key: "cancelBackgroundRefresh", value: function () { null !== this.timeout && (clearTimeout(this.timeout), this.timeout = null); } }], [{ key: "timeoutForAttempt", value: function (e) { return Math.floor(350 * Math.random()) - 175 + 2e3 * Math.pow(2, e); } }, { key: "isUnrecoverableError", value: function (e) { return q.includes(e.error_type); } }]), e; }();
720
+ ne.REFRESH_INTERVAL_MS = 18e4;
721
+ var oe = function () { function e(t) { k(this, e), this.maxBatchSize = t.maxBatchSize, this.logEventURL = t.logEventURL, setInterval(this.flush.bind(this), t.intervalDurationMs), this.batch = []; } return g(e, [{ key: "logEvent", value: function (e, t) { this.batch.push({ telemetry: e, event: t }), this.batch.length >= this.maxBatchSize && this.flush(); } }, { key: "flush", value: function () { return z(this, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
723
722
  switch (e.prev = e.next) {
724
723
  case 0:
725
724
  if (this.batch.length) {
@@ -736,28 +735,28 @@ var ne = 15, oe = 800, ie = function () { function e(t) { k(this, e), this.maxBa
736
735
  case "end": return e.stop();
737
736
  } }), e, this, [[4, 9]]); }))); } }]), e; }();
738
737
  Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), Promise.resolve({ pkceRequiredForPasswordResets: !1 });
739
- var ae = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), se = function () { function e(t, r, n) { var o = this, i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : ae; k(this, e), this._networkClient = t, this._subscriptionService = r, this._pkceManager = n, this._config = i, this.email = { loginOrSignup: function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
738
+ var ie = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), ae = function () { function e(t, r, n) { var o = this, i = arguments.length > 3 && void 0 !== arguments[3] ? arguments[3] : ie; k(this, e), this._networkClient = t, this._subscriptionService = r, this._pkceManager = n, this._config = i, this.email = { loginOrSignup: function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
740
739
  switch (t.prev = t.next) {
741
- case 0: return ee("stytch.magicLinks.email.loginOrSignup").isString("email", e.email_address).isString("organization_id", e.organization_id).isOptionalString("login_redirect_url", e.login_redirect_url).isOptionalString("login_template_id", e.login_template_id).isOptionalString("signup_redirect_url", e.signup_redirect_url).isOptionalString("signup_template_id", e.signup_template_id), t.next = 3, this.getCodeChallenge();
740
+ case 0: return te("stytch.magicLinks.email.loginOrSignup").isString("email", e.email_address).isString("organization_id", e.organization_id).isOptionalString("login_redirect_url", e.login_redirect_url).isOptionalString("login_template_id", e.login_template_id).isOptionalString("signup_redirect_url", e.signup_redirect_url).isOptionalString("signup_template_id", e.signup_template_id).isOptionalString("locale", e.locale), t.next = 3, this.getCodeChallenge();
742
741
  case 3: return r = t.sent, n = Object.assign(Object.assign({}, e), { pkce_code_challenge: r }), t.abrupt("return", this._networkClient.fetchSDK({ url: "/b2b/magic_links/email/login_or_signup", body: n, errorMessage: "Failed to send magic link", method: "POST" }));
743
742
  case 6:
744
743
  case "end": return t.stop();
745
744
  } }), t, this); }))); }, discovery: { send: function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
746
745
  switch (t.prev = t.next) {
747
- case 0: return ee("stytch.magicLinks.email.discovery.send").isString("email_address", e.email_address).isOptionalString("discovery_redirect_url", e.discovery_redirect_url).isOptionalString("login_template_id", e.login_template_id), t.next = 3, this.getCodeChallenge();
746
+ case 0: return te("stytch.magicLinks.email.discovery.send").isString("email_address", e.email_address).isOptionalString("discovery_redirect_url", e.discovery_redirect_url).isOptionalString("login_template_id", e.login_template_id).isOptionalString("locale", e.locale), t.next = 3, this.getCodeChallenge();
748
747
  case 3: return r = t.sent, n = Object.assign(Object.assign({}, e), { pkce_code_challenge: r }), t.abrupt("return", this._networkClient.fetchSDK({ url: "/b2b/magic_links/email/discovery/send", body: n, errorMessage: "Failed to send discovery magic link", method: "POST" }));
749
748
  case 6:
750
749
  case "end": return t.stop();
751
750
  } }), t, this); }))); } } }, this.authenticate = function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n, o; return _().wrap((function (t) { for (;;)
752
751
  switch (t.prev = t.next) {
753
- case 0: return ee("stytch.magicLinks.authenticate").isString("magic_links_token", e.magic_links_token).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._pkceManager.getPKPair();
752
+ case 0: return te("stytch.magicLinks.authenticate").isString("magic_links_token", e.magic_links_token).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._pkceManager.getPKPair();
754
753
  case 3: return r = t.sent, n = Object.assign({ pkce_code_verifier: null == r ? void 0 : r.code_verifier }, e), t.next = 7, this._networkClient.fetchSDK({ url: "/b2b/magic_links/authenticate", body: n, errorMessage: "Failed to authenticate token", method: "POST" });
755
754
  case 7: return o = t.sent, this._pkceManager.clearPKPair(), this._subscriptionService.updateStateAndTokens({ state: { session: o.member_session, member: o.member }, session_token: o.session_token, session_jwt: o.session_jwt }), t.abrupt("return", o);
756
755
  case 11:
757
756
  case "end": return t.stop();
758
757
  } }), t, this); }))); }, this.discovery = { authenticate: function (e) { return z(o, void 0, void 0, _().mark((function t() { var r, n, o; return _().wrap((function (t) { for (;;)
759
758
  switch (t.prev = t.next) {
760
- case 0: return ee("stytch.magicLinks.discovery.authenticate").isString("discovery_magic_links_token", e.discovery_magic_links_token), t.next = 3, this._pkceManager.getPKPair();
759
+ case 0: return te("stytch.magicLinks.discovery.authenticate").isString("discovery_magic_links_token", e.discovery_magic_links_token), t.next = 3, this._pkceManager.getPKPair();
761
760
  case 3: return r = t.sent, n = Object.assign({ pkce_code_verifier: null == r ? void 0 : r.code_verifier }, e), t.next = 7, this._networkClient.fetchSDK({ url: "/b2b/magic_links/discovery/authenticate", body: n, errorMessage: "Failed to authenticate intermediate magic link token", method: "POST" });
762
761
  case 7: return o = t.sent, this._pkceManager.clearPKPair(), t.abrupt("return", o);
763
762
  case 10:
@@ -782,16 +781,16 @@ var ae = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), se = function
782
781
  case 13: return r = e.sent, e.abrupt("return", r.code_challenge);
783
782
  case 15:
784
783
  case "end": return e.stop();
785
- } }), e, this); }))); } }]), e; }(), ce = g((function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.get = function () { return z(n, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
784
+ } }), e, this); }))); } }]), e; }(), se = g((function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.get = function () { return z(n, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
786
785
  switch (e.prev = e.next) {
787
786
  case 0: return e.next = 2, this._networkClient.fetchSDK({ url: "/b2b/organizations/members/me", errorMessage: "Failed to retrieve member info.", method: "GET" });
788
787
  case 2: return t = e.sent, this._subscriptionService.updateMember(t.member), e.abrupt("return", t.member);
789
788
  case 5:
790
789
  case "end": return e.stop();
791
- } }), e, this); }))); }, this.getSync = function () { return n._subscriptionService.getMember(); }, this.onChange = function (e) { return n._subscriptionService.subscribeToState((function (t) { var r; return e(null !== (r = null == t ? void 0 : t.member) && void 0 !== r ? r : null); })); }; })), ue = function () { function e(t, r, n, o, i) { k(this, e), this._networkClient = t, this._subscriptionService = r, this._pkceManager = n, this._dynamicConfig = o, this._config = i; } return g(e, [{ key: "authenticate", value: function (e) { return z(this, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
790
+ } }), e, this); }))); }, this.getSync = function () { return n._subscriptionService.getMember(); }, this.onChange = function (e) { return n._subscriptionService.subscribeToState((function (t) { var r; return e(null !== (r = null == t ? void 0 : t.member) && void 0 !== r ? r : null); })); }; })), ce = function () { function e(t, r, n, o, i) { k(this, e), this._networkClient = t, this._subscriptionService = r, this._pkceManager = n, this._dynamicConfig = o, this._config = i; } return g(e, [{ key: "authenticate", value: function (e) { return z(this, void 0, void 0, _().mark((function t() { var r, n; return _().wrap((function (t) { for (;;)
792
791
  switch (t.prev = t.next) {
793
- case 0: return ee("stytch.sso.authenticate").isString("sso_token", e.sso_token).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._pkceManager.getPKPair();
794
- case 3: return (r = t.sent) || Z.warn("No code verifier found in local storage for SSO flow.\nConsider using stytch.oauth.$provider.start() to add PKCE to your OAuth flows for added security.\nSee https://stytch.com/docs/oauth#guides_pkce for more information."), t.next = 7, this._networkClient.fetchSDK({ url: "/sso/authenticate", method: "POST", body: Object.assign({ pkce_code_verifier: null == r ? void 0 : r.code_verifier }, e), errorMessage: "Failed to authenticate token" });
792
+ case 0: return te("stytch.sso.authenticate").isString("sso_token", e.sso_token).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._pkceManager.getPKPair();
793
+ case 3: return (r = t.sent) || Z("No code verifier found in local storage for SSO flow.\nConsider using stytch.oauth.$provider.start() to add PKCE to your OAuth flows for added security.\nSee https://stytch.com/docs/oauth#guides_pkce for more information."), t.next = 7, this._networkClient.fetchSDK({ url: "/sso/authenticate", method: "POST", body: Object.assign({ pkce_code_verifier: null == r ? void 0 : r.code_verifier }, e), errorMessage: "Failed to authenticate token" });
795
794
  case 7: return n = t.sent, this._pkceManager.clearPKPair(), this._subscriptionService.updateStateAndTokens({ state: { session: n.member_session, member: n.member }, session_token: n.session_token, session_jwt: n.session_jwt }), t.abrupt("return", n);
796
795
  case 11:
797
796
  case "end": return t.stop();
@@ -823,13 +822,13 @@ var ae = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), se = function
823
822
  case 18: r && s.searchParams.set("login_redirect_url", r), n && s.searchParams.set("signup_redirect_url", n), window.location.href = s.toString();
824
823
  case 21:
825
824
  case "end": return e.stop();
826
- } }), e, this); }))); } }]), e; }(), le = g((function e(t) { var r = this; k(this, e), this._networkClient = t, this.get = function () { return z(r, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
825
+ } }), e, this); }))); } }]), e; }(), ue = g((function e(t) { var r = this; k(this, e), this._networkClient = t, this.get = function () { return z(r, void 0, void 0, _().mark((function e() { var t; return _().wrap((function (e) { for (;;)
827
826
  switch (e.prev = e.next) {
828
827
  case 0: return e.next = 2, this._networkClient.fetchSDK({ url: "/b2b/organizations/me", errorMessage: "Failed to retrieve organization info.", method: "GET" });
829
828
  case 2: return t = e.sent, e.abrupt("return", t.organization);
830
829
  case 4:
831
830
  case "end": return e.stop();
832
- } }), e, this); }))); }; })), he = function () { function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.getSync = function () { return n._subscriptionService.getSession(); }, this.onChange = function (e) { return n._subscriptionService.subscribeToState((function (t) { var r; return e(null !== (r = null == t ? void 0 : t.session) && void 0 !== r ? r : null); })); }, this.revoke = function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
831
+ } }), e, this); }))); }; })), le = function () { function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.getSync = function () { return n._subscriptionService.getSession(); }, this.onChange = function (e) { return n._subscriptionService.subscribeToState((function (t) { var r; return e(null !== (r = null == t ? void 0 : t.session) && void 0 !== r ? r : null); })); }, this.revoke = function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
833
832
  switch (t.prev = t.next) {
834
833
  case 0: return t.prev = 0, t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/sessions/revoke", errorMessage: "Error revoking session", method: "POST" });
835
834
  case 3: return r = t.sent, this._subscriptionService.destroyState(), t.abrupt("return", r);
@@ -845,30 +844,30 @@ var ae = Promise.resolve({ pkceRequiredForEmailMagicLinks: !1 }), se = function
845
844
  case "end": return t.stop();
846
845
  } }), t, this, [[0, 9]]); }))); }, this.exchange = function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
847
846
  switch (t.prev = t.next) {
848
- case 0: return ee("stytch.sessions.exchange").isString("organization_id", e.organization_id).isNumber("session_duration_minutes", e.session_duration_minutes), t.prev = 1, t.next = 4, this._networkClient.fetchSDK({ url: "/b2b/sessions/exchange", body: e, errorMessage: "Failed to exchange session", method: "POST" });
847
+ case 0: return te("stytch.sessions.exchange").isString("organization_id", e.organization_id).isNumber("session_duration_minutes", e.session_duration_minutes), t.prev = 1, t.next = 4, this._networkClient.fetchSDK({ url: "/b2b/sessions/exchange", body: e, errorMessage: "Failed to exchange session", method: "POST" });
849
848
  case 4: return r = t.sent, this._subscriptionService.updateStateAndTokens({ state: { session: r.member_session, member: r.member }, session_token: r.session_token, session_jwt: r.session_jwt }), t.abrupt("return", r);
850
849
  case 9: throw t.prev = 9, t.t0 = t.catch(1), t.t0;
851
850
  case 12:
852
851
  case "end": return t.stop();
853
- } }), t, this, [[1, 9]]); }))); }; } return g(e, [{ key: "getTokens", value: function () { return this._subscriptionService.getTokens(); } }]), e; }(), fe = g((function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.organizations = { list: function (e) { return z(n, void 0, void 0, _().mark((function t() { return _().wrap((function (t) { for (;;)
852
+ } }), t, this, [[1, 9]]); }))); }; } return g(e, [{ key: "getTokens", value: function () { return this._subscriptionService.getTokens(); } }]), e; }(), he = g((function e(t, r) { var n = this; k(this, e), this._networkClient = t, this._subscriptionService = r, this.organizations = { list: function (e) { return z(n, void 0, void 0, _().mark((function t() { return _().wrap((function (t) { for (;;)
854
853
  switch (t.prev = t.next) {
855
- case 0: return ee("stytch.discovery.organizations.list").isOptionalString("intermediate_session_token", e.intermediate_session_token), t.abrupt("return", this._networkClient.fetchSDK({ url: "/b2b/discovery/organizations", body: e, errorMessage: "Failed to retrieve discovered organizations", method: "POST" }));
854
+ case 0: return te("stytch.discovery.organizations.list").isOptionalString("intermediate_session_token", e.intermediate_session_token), t.abrupt("return", this._networkClient.fetchSDK({ url: "/b2b/discovery/organizations", body: e, errorMessage: "Failed to retrieve discovered organizations", method: "POST" }));
856
855
  case 2:
857
856
  case "end": return t.stop();
858
857
  } }), t, this); }))); }, create: function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
859
858
  switch (t.prev = t.next) {
860
- case 0: return ee("stytch.discovery.organizations.create").isString("intermediate_session_token", e.intermediate_session_token).isNumber("session_duration_minutes", e.session_duration_minutes).isString("organization_name", e.organization_name).isString("organization_slug", e.organization_slug).isOptionalString("organization_logo_url", e.organization_logo_url).isOptionalString("sso_jit_provisioning", e.sso_jit_provisioning).isOptionalStringArray("email_allowed_domains", e.email_allowed_domains).isOptionalString("email_invites", e.email_invites).isOptionalString("auth_methods", e.auth_methods).isOptionalStringArray("allowed_auth_methods", e.allowed_auth_methods), t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/discovery/organizations/create", body: e, errorMessage: "Failed to create organization and member", method: "POST" });
859
+ case 0: return te("stytch.discovery.organizations.create").isString("intermediate_session_token", e.intermediate_session_token).isNumber("session_duration_minutes", e.session_duration_minutes).isString("organization_name", e.organization_name).isString("organization_slug", e.organization_slug).isOptionalString("organization_logo_url", e.organization_logo_url).isOptionalString("sso_jit_provisioning", e.sso_jit_provisioning).isOptionalStringArray("email_allowed_domains", e.email_allowed_domains).isOptionalString("email_invites", e.email_invites).isOptionalString("auth_methods", e.auth_methods).isOptionalStringArray("allowed_auth_methods", e.allowed_auth_methods), t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/discovery/organizations/create", body: e, errorMessage: "Failed to create organization and member", method: "POST" });
861
860
  case 3: return r = t.sent, this._subscriptionService.updateStateAndTokens({ state: { session: r.member_session, member: r.member }, session_token: r.session_token, session_jwt: r.session_jwt }), t.abrupt("return", r);
862
861
  case 6:
863
862
  case "end": return t.stop();
864
863
  } }), t, this); }))); } }, this.intermediateSessions = { exchange: function (e) { return z(n, void 0, void 0, _().mark((function t() { var r; return _().wrap((function (t) { for (;;)
865
864
  switch (t.prev = t.next) {
866
- case 0: return ee("stytch.discovery.intermediateSessions.exchange").isString("intermediate_session_token", e.intermediate_session_token).isString("organization_id", e.organization_id).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/discovery/intermediate_sessions/exchange", body: e, errorMessage: "Failed to exchange intermediate session", method: "POST" });
865
+ case 0: return te("stytch.discovery.intermediateSessions.exchange").isString("intermediate_session_token", e.intermediate_session_token).isString("organization_id", e.organization_id).isNumber("session_duration_minutes", e.session_duration_minutes), t.next = 3, this._networkClient.fetchSDK({ url: "/b2b/discovery/intermediate_sessions/exchange", body: e, errorMessage: "Failed to exchange intermediate session", method: "POST" });
867
866
  case 3: return r = t.sent, this._subscriptionService.updateStateAndTokens({ state: { session: r.member_session, member: r.member }, session_token: r.session_token, session_jwt: r.session_jwt }), t.abrupt("return", r);
868
867
  case 6:
869
868
  case "end": return t.stop();
870
- } }), t, this); }))); } }; })), de = Symbol.for("stytch__internal"), pe = function (e, t) { Object.assign(e, function (e, t, r) { return (t = d(t)) in e ? Object.defineProperty(e, t, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = r, e; }({}, de, t)); }, ve = function (e) { return (document.cookie ? document.cookie.split("; ") : []).filter((function (t) { var r = l(t.split("="), 1)[0]; return e === r; })).length > 1; };
871
- function me(e, t, r, n) { return new (r || (r = Promise))((function (o, i) { function a(e) { try {
869
+ } }), t, this); }))); } }; })), fe = Symbol.for("stytch__internal"), de = function (e, t) { Object.assign(e, function (e, t, r) { return (t = d(t)) in e ? Object.defineProperty(e, t, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = r, e; }({}, fe, t)); }, pe = function (e) { return (document.cookie ? document.cookie.split("; ") : []).filter((function (t) { var r = l(t.split("="), 1)[0]; return e === r; })).length > 1; };
870
+ function ve(e, t, r, n) { return new (r || (r = Promise))((function (o, i) { function a(e) { try {
872
871
  c(n.next(e));
873
872
  }
874
873
  catch (e) {
@@ -879,20 +878,20 @@ catch (e) {
879
878
  catch (e) {
880
879
  i(e);
881
880
  } } function c(e) { var t; e.done ? o(e.value) : (t = e.value, t instanceof r ? t : new r((function (e) { e(t); }))).then(a, s); } c((n = n.apply(e, t || [])).next()); })); }
882
- var ye = function () { function e(t, r, n, o) { s(this, e), this._publicToken = t, this._subscriptionDataLayer = r, this.baseURL = n, this.additionalTelemetryDataFn = o, this.updateSessionToken = function () { return null; }, this.eventLogger = new ie({ maxBatchSize: ne, intervalDurationMs: oe, logEventURL: this.buildSDKUrl("/events") }); } return u(e, [{ key: "logEvent", value: function (e) { var t = e.name, r = e.details, n = e.error, o = void 0 === n ? {} : n; this.eventLogger.logEvent(this.createTelemetryBlob(), { public_token: this._publicToken, event_name: t, details: r, error_code: o.error_code, error_description: o.error_description, http_status_code: o.http_status_code }); } }, { key: "createTelemetryBlob", value: function () { return Object.assign(Object.assign({ event_id: "event-id-".concat($()), app_session_id: "app-session-id-".concat($()), persistent_id: "persistent-id-".concat($()), client_sent_at: (new Date).toISOString(), timezone: Intl.DateTimeFormat().resolvedOptions().timeZone }, this.additionalTelemetryDataFn()), { app: { identifier: window.location.hostname }, sdk: { identifier: "Stytch.js Javascript SDK", version: "0.11.2" } }); } }, { key: "fetchSDK", value: function (e) { var t = e.url, r = e.body, n = e.errorMessage, o = e.method; return me(this, void 0, void 0, a().mark((function e() { var i, s, c, u; return a().wrap((function (e) { for (;;)
881
+ var me = function () { function e(t, r, n, o) { s(this, e), this._publicToken = t, this._subscriptionDataLayer = r, this.baseURL = n, this.additionalTelemetryDataFn = o, this.updateSessionToken = function () { return null; }, this.eventLogger = new oe({ maxBatchSize: 15, intervalDurationMs: 800, logEventURL: this.buildSDKUrl("/events") }); } return u(e, [{ key: "logEvent", value: function (e) { var t = e.name, r = e.details, n = e.error, o = void 0 === n ? {} : n; this.eventLogger.logEvent(this.createTelemetryBlob(), { public_token: this._publicToken, event_name: t, details: r, error_code: o.error_code, error_description: o.error_description, http_status_code: o.http_status_code }); } }, { key: "createTelemetryBlob", value: function () { return Object.assign(Object.assign({ event_id: "event-id-".concat($()), app_session_id: "app-session-id-".concat($()), persistent_id: "persistent-id-".concat($()), client_sent_at: (new Date).toISOString(), timezone: Intl.DateTimeFormat().resolvedOptions().timeZone }, this.additionalTelemetryDataFn()), { app: { identifier: window.location.hostname }, sdk: { identifier: "Stytch.js Javascript SDK", version: "0.11.3" } }); } }, { key: "fetchSDK", value: function (e) { var t = e.url, r = e.body, n = e.errorMessage, o = e.method; return ve(this, void 0, void 0, a().mark((function e() { var i, s, c, u; return a().wrap((function (e) { for (;;)
883
882
  switch (e.prev = e.next) {
884
- case 0: return i = this._subscriptionDataLayer.readSessionCookie().session_token, s = "Basic " + window.btoa(this._publicToken + ":" + (i || this._publicToken)), c = window.btoa(JSON.stringify(this.createTelemetryBlob())), u = window.location.origin, e.abrupt("return", te({ basicAuthHeader: s, body: r, errorMessage: n, finalURL: this.buildSDKUrl(t), method: o, xSDKClientHeader: c, xSDKParentHostHeader: u }));
883
+ case 0: return i = this._subscriptionDataLayer.readSessionCookie().session_token, s = "Basic " + window.btoa(this._publicToken + ":" + (i || this._publicToken)), c = window.btoa(JSON.stringify(this.createTelemetryBlob())), u = window.location.origin, e.abrupt("return", re({ basicAuthHeader: s, body: r, errorMessage: n, finalURL: this.buildSDKUrl(t), method: o, xSDKClientHeader: c, xSDKParentHostHeader: u }));
885
884
  case 5:
886
885
  case "end": return e.stop();
887
886
  } }), e, this); }))); } }, { key: "buildSDKUrl", value: function (e) { return "".concat(this.baseURL, "/sdk/v1").concat(e); } }]), e; }();
888
887
  /*! js-cookie v3.0.1 | MIT */
889
- function _e(e) { for (var t = 1; t < arguments.length; t++) {
888
+ function ye(e) { for (var t = 1; t < arguments.length; t++) {
890
889
  var r = arguments[t];
891
890
  for (var n in r)
892
891
  e[n] = r[n];
893
892
  } return e; }
894
- var be = function e(t, r) { function n(e, n, o) { if ("undefined" != typeof document) {
895
- "number" == typeof (o = _e({}, r, o)).expires && (o.expires = new Date(Date.now() + 864e5 * o.expires)), o.expires && (o.expires = o.expires.toUTCString()), e = encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);
893
+ var _e = function e(t, r) { function n(e, n, o) { if ("undefined" != typeof document) {
894
+ "number" == typeof (o = ye({}, r, o)).expires && (o.expires = new Date(Date.now() + 864e5 * o.expires)), o.expires && (o.expires = o.expires.toUTCString()), e = encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);
896
895
  var i = "";
897
896
  for (var a in o)
898
897
  o[a] && (i += "; " + a, !0 !== o[a] && (i += "=" + o[a].split(";")[0]));
@@ -908,7 +907,7 @@ var be = function e(t, r) { function n(e, n, o) { if ("undefined" != typeof docu
908
907
  catch (e) { }
909
908
  }
910
909
  return e ? n[e] : n;
911
- } }, remove: function (e, t) { n(e, "", _e({}, t, { expires: -1 })); }, withAttributes: function (t) { return e(this.converter, _e({}, this.attributes, t)); }, withConverter: function (t) { return e(_e({}, this.converter, t), this.attributes); } }, { attributes: { value: Object.freeze(r) }, converter: { value: Object.freeze(t) } }); }({ read: function (e) { return '"' === e[0] && (e = e.slice(1, -1)), e.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent); }, write: function (e) { return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, decodeURIComponent); } }, { path: "/" }), ge = "stytch_sdk_state_", ke = function (e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : ""; return "".concat(ge).concat(e).concat(t ? "::".concat(t) : ""); }, we = function () { function e(t, r) { var n = this; s(this, e), this.browserSessionStorage = { getItem: function (e) { return sessionStorage.getItem(ke(n.publicToken, e)); }, setItem: function (e, t) { return sessionStorage.setItem(ke(n.publicToken, e), t); }, removeItem: function (e) { return sessionStorage.removeItem(ke(n.publicToken, e)); } }, this.publicToken = t, this.state = null, this.subscriptions = {}, (null == r ? void 0 : r.cookieOptions) ? (ee("SubscriptionDataLayer").isOptionalString("cookieOptions.opaqueTokenCookieName", r.cookieOptions.opaqueTokenCookieName).isOptionalString("cookieOptions.jwtCookieName", r.cookieOptions.jwtCookieName).isOptionalString("cookieOptions.path", r.cookieOptions.path), this._jwtCookieName = r.cookieOptions.jwtCookieName || null, this._opaqueTokenCookieName = r.cookieOptions.opaqueTokenCookieName || null, this._cookiePath = r.cookieOptions.path || null, this._cookieAvailableToSubdomains = r.cookieOptions.availableToSubdomains || !1) : (this._opaqueTokenCookieName = null, this._jwtCookieName = null, this._cookiePath = null, this._cookieAvailableToSubdomains = !1); var o = localStorage.getItem(ke(this.publicToken)); if (o) {
910
+ } }, remove: function (e, t) { n(e, "", ye({}, t, { expires: -1 })); }, withAttributes: function (t) { return e(this.converter, ye({}, this.attributes, t)); }, withConverter: function (t) { return e(ye({}, this.converter, t), this.attributes); } }, { attributes: { value: Object.freeze(r) }, converter: { value: Object.freeze(t) } }); }({ read: function (e) { return '"' === e[0] && (e = e.slice(1, -1)), e.replace(/(%[\dA-F]{2})+/gi, decodeURIComponent); }, write: function (e) { return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, decodeURIComponent); } }, { path: "/" }), be = function (e) { var t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : ""; return "".concat("stytch_sdk_state_").concat(e).concat(t ? "::".concat(t) : ""); }, ge = function () { function e(t, r) { var n = this; s(this, e), this.browserSessionStorage = { getItem: function (e) { return sessionStorage.getItem(be(n.publicToken, e)); }, setItem: function (e, t) { return sessionStorage.setItem(be(n.publicToken, e), t); }, removeItem: function (e) { return sessionStorage.removeItem(be(n.publicToken, e)); } }, this.publicToken = t, this.state = null, this.subscriptions = {}, (null == r ? void 0 : r.cookieOptions) ? (te("SubscriptionDataLayer").isOptionalString("cookieOptions.opaqueTokenCookieName", r.cookieOptions.opaqueTokenCookieName).isOptionalString("cookieOptions.jwtCookieName", r.cookieOptions.jwtCookieName).isOptionalString("cookieOptions.path", r.cookieOptions.path), this._jwtCookieName = r.cookieOptions.jwtCookieName || null, this._opaqueTokenCookieName = r.cookieOptions.opaqueTokenCookieName || null, this._cookiePath = r.cookieOptions.path || null, this._cookieAvailableToSubdomains = r.cookieOptions.availableToSubdomains || !1) : (this._opaqueTokenCookieName = null, this._jwtCookieName = null, this._cookiePath = null, this._cookieAvailableToSubdomains = !1); var o = localStorage.getItem(be(this.publicToken)); if (o) {
912
911
  var i;
913
912
  try {
914
913
  i = JSON.parse(o);
@@ -919,15 +918,15 @@ var be = function e(t, r) { function n(e, n, o) { if ("undefined" != typeof docu
919
918
  this.state = i;
920
919
  }
921
920
  else
922
- this.removeSessionCookie(); } return u(e, [{ key: "opaqueTokenCookieName", get: function () { var e; return null !== (e = this._opaqueTokenCookieName) && void 0 !== e ? e : "stytch_session"; } }, { key: "jwtCookieName", get: function () { var e; return null !== (e = this._jwtCookieName) && void 0 !== e ? e : "stytch_session_jwt"; } }, { key: "readSessionCookie", value: function () { return { session_token: be.get(this.opaqueTokenCookieName), session_jwt: be.get(this.jwtCookieName) }; } }, { key: "writeSessionCookie", value: function (t) { var r, n, o, i, a = t.state, s = t.session_token, c = t.session_jwt, u = e.generateCookieOpts({ expiresAt: null !== (n = null === (r = null == a ? void 0 : a.session) || void 0 === r ? void 0 : r.expires_at) && void 0 !== n ? n : "", availableToSubdomains: this._cookieAvailableToSubdomains, path: this._cookiePath }); be.set(this.opaqueTokenCookieName, s, u), be.set(this.jwtCookieName, c, u); var l = e.generateCookieOpts({ expiresAt: null !== (i = null === (o = null == a ? void 0 : a.session) || void 0 === o ? void 0 : o.expires_at) && void 0 !== i ? i : "", availableToSubdomains: !this._cookieAvailableToSubdomains, path: this._cookiePath }); ve(this.jwtCookieName) && be.remove(this.jwtCookieName, l), ve(this.opaqueTokenCookieName) && be.remove(this.opaqueTokenCookieName, l), ve(this.jwtCookieName) && Z.warn("Could not remove extraneous JWT cookie. This might happen if the cookie has been set using multiple `path` settings, and may produce unwanted behavior."), ve(this.opaqueTokenCookieName) && Z.warn("Could not remove extraneous opaque token cookie."); } }, { key: "removeSessionCookie", value: function () { var t = this; [!0, !1].forEach((function (r) { [t._cookiePath, null].forEach((function (n) { var o = e.generateCookieOpts({ expiresAt: new Date(0).toString(), availableToSubdomains: r, path: n }); be.remove(t.opaqueTokenCookieName, o), be.remove(t.jwtCookieName, o); })); })); } }, { key: "syncToLocalStorage", value: function () { localStorage.setItem(ke(this.publicToken), JSON.stringify(this.state)); } }, { key: "getItem", value: function (e) { return localStorage.getItem(ke(this.publicToken, e)); } }, { key: "setItem", value: function (e, t) { return localStorage.setItem(ke(this.publicToken, e), t); } }, { key: "removeItem", value: function (e) { return localStorage.removeItem(ke(this.publicToken, e)); } }], [{ key: "generateCookieOpts", value: function (e) { var t = e.path, r = e.availableToSubdomains, n = e.expiresAt, o = { expires: new Date(n), sameSite: "lax" }; return t && (o.path = t), Boolean("localhost" === window.location.hostname || "[::1]" === window.location.hostname || window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)) ? o.secure = !1 : (r && (o.domain = window.location.host), o.secure = !0), o; } }]), e; }(), Se = function (e) { r(n, we); var t = o(n); function n() { return s(this, n), t.apply(this, arguments); } return u(n); }(), Oe = Symbol.for("__stytch_b2b_DataLayer"), Ee = function (e, t) { var r, n = ((r = window)[Oe] || (r[Oe] = {}), r[Oe]); return n[e] || (n[e] = new Se(e, t)), n[e]; }, Te = function (e, t) { Object.values(e).forEach((function (e) { return e(t); })); }, xe = function () { var e = (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}).KEYS_TO_EXCLUDE, t = void 0 === e ? [] : e; return function e(r, n) { return v(r) === v(n) && (null === r || null === n ? r === n : "object" === v(r) ? Object.keys(r).length === Object.keys(n).length && !Object.keys(r).some((function (e) { return !(e in n); })) && Object.entries(r).filter((function (e) { var r = p(e, 1)[0]; return !t.includes(r); })).every((function (t) { var r = p(t, 2), o = r[0], i = r[1]; return e(i, n[o]); })) : r === n); }; }({ KEYS_TO_EXCLUDE: ["last_accessed_at"] }), Ce = function () { function e(t, r) { var n, o = this; s(this, e), this._publicToken = t, this._datalayer = r, this._listen = function (e) { if (e.key === ke(o._publicToken))
921
+ this.removeSessionCookie(); } return u(e, [{ key: "opaqueTokenCookieName", get: function () { var e; return null !== (e = this._opaqueTokenCookieName) && void 0 !== e ? e : "stytch_session"; } }, { key: "jwtCookieName", get: function () { var e; return null !== (e = this._jwtCookieName) && void 0 !== e ? e : "stytch_session_jwt"; } }, { key: "readSessionCookie", value: function () { return { session_token: _e.get(this.opaqueTokenCookieName), session_jwt: _e.get(this.jwtCookieName) }; } }, { key: "writeSessionCookie", value: function (t) { var r, n, o, i, a = t.state, s = t.session_token, c = t.session_jwt, u = e.generateCookieOpts({ expiresAt: null !== (n = null === (r = null == a ? void 0 : a.session) || void 0 === r ? void 0 : r.expires_at) && void 0 !== n ? n : "", availableToSubdomains: this._cookieAvailableToSubdomains, path: this._cookiePath }); _e.set(this.opaqueTokenCookieName, s, u), _e.set(this.jwtCookieName, c, u); var l = e.generateCookieOpts({ expiresAt: null !== (i = null === (o = null == a ? void 0 : a.session) || void 0 === o ? void 0 : o.expires_at) && void 0 !== i ? i : "", availableToSubdomains: !this._cookieAvailableToSubdomains, path: this._cookiePath }); pe(this.jwtCookieName) && _e.remove(this.jwtCookieName, l), pe(this.opaqueTokenCookieName) && _e.remove(this.opaqueTokenCookieName, l), pe(this.jwtCookieName) && Z("Could not remove extraneous JWT cookie. This might happen if the cookie has been set using multiple `path` settings, and may produce unwanted behavior."), pe(this.opaqueTokenCookieName) && Z("Could not remove extraneous opaque token cookie."); } }, { key: "removeSessionCookie", value: function () { var t = this; [!0, !1].forEach((function (r) { [t._cookiePath, null].forEach((function (n) { var o = e.generateCookieOpts({ expiresAt: new Date(0).toString(), availableToSubdomains: r, path: n }); _e.remove(t.opaqueTokenCookieName, o), _e.remove(t.jwtCookieName, o); })); })); } }, { key: "syncToLocalStorage", value: function () { localStorage.setItem(be(this.publicToken), JSON.stringify(this.state)); } }, { key: "getItem", value: function (e) { return localStorage.getItem(be(this.publicToken, e)); } }, { key: "setItem", value: function (e, t) { return localStorage.setItem(be(this.publicToken, e), t); } }, { key: "removeItem", value: function (e) { return localStorage.removeItem(be(this.publicToken, e)); } }], [{ key: "generateCookieOpts", value: function (e) { var t = e.path, r = e.availableToSubdomains, n = e.expiresAt, o = { expires: new Date(n), sameSite: "lax" }; return t && (o.path = t), Boolean("localhost" === window.location.hostname || "[::1]" === window.location.hostname || window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)) ? o.secure = !1 : (r && (o.domain = window.location.host), o.secure = !0), o; } }]), e; }(), ke = function (e) { r(n, ge); var t = o(n); function n() { return s(this, n), t.apply(this, arguments); } return u(n); }(), we = Symbol.for("__stytch_b2b_DataLayer"), Se = function (e, t) { var r, n = ((r = window)[we] || (r[we] = {}), r[we]); return n[e] || (n[e] = new ke(e, t)), n[e]; }, Oe = function (e, t) { Object.values(e).forEach((function (e) { return e(t); })); }, Ee = function () { var e = (arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {}).KEYS_TO_EXCLUDE, t = void 0 === e ? [] : e; return function e(r, n) { return v(r) === v(n) && (null === r || null === n ? r === n : "object" === v(r) ? Object.keys(r).length === Object.keys(n).length && !Object.keys(r).some((function (e) { return !(e in n); })) && Object.entries(r).filter((function (e) { var r = p(e, 1)[0]; return !t.includes(r); })).every((function (t) { var r = p(t, 2), o = r[0], i = r[1]; return e(i, n[o]); })) : r === n); }; }({ KEYS_TO_EXCLUDE: ["last_accessed_at"] }), Te = function () { function e(t, r) { var n, o = this; s(this, e), this._publicToken = t, this._datalayer = r, this._listen = function (e) { if (e.key === be(o._publicToken))
923
922
  if (null !== e.newValue && "null" !== e.newValue) {
924
923
  var t = JSON.parse(e.newValue);
925
924
  o.updateState(t);
926
925
  }
927
926
  else
928
- o.destroyState(); }, window.addEventListener("storage", this._listen); var i = null === (n = this._datalayer.state) || void 0 === n ? void 0 : n.session; i && Date.parse(i.expires_at) < Date.now() ? this.destroyState() : this._datalayer.readSessionCookie().session_token || this.destroyState(); } return u(e, [{ key: "getTokens", value: function () { var e = this._datalayer.readSessionCookie(), t = e.session_token, r = e.session_jwt; return t && r ? { session_token: t, session_jwt: r } : null; } }, { key: "destroyState", value: function () { this.updateStateAndTokens({ state: null, session_token: null, session_jwt: null }); } }, { key: "_updateStateAndTokensInternal", value: function (e) { var t = this._datalayer.state, r = null === e.state ? null : Object.assign(Object.assign({}, this._datalayer.state), e.state); this._datalayer.state = r, xe(t, r) || Te(this._datalayer.subscriptions, r); } }, { key: "updateStateAndTokens", value: function (e) { e.state ? this._datalayer.writeSessionCookie(e) : this._datalayer.removeSessionCookie(), this._updateStateAndTokensInternal(e), this._datalayer.syncToLocalStorage(); } }, { key: "updateState", value: function (e) { var t = this._datalayer.state, r = null === e ? null : Object.assign(Object.assign({}, this._datalayer.state), e); this._datalayer.state = r, xe(t, r) || (Te(this._datalayer.subscriptions, r), this._datalayer.syncToLocalStorage()); } }, { key: "updateTokens", value: function (e) { var t = e.session_token, r = e.session_jwt, n = this._datalayer.readSessionCookie(), o = Object.assign(Object.assign({}, n), { session_token: t, session_jwt: r }); t && r ? this._datalayer.writeSessionCookie(o) : this._datalayer.removeSessionCookie(); } }, { key: "subscribeToState", value: function (e) { return t = this._datalayer.subscriptions, r = e, n = Math.random().toString(36).slice(-10), t[n] = r, function () { return delete t[n]; }; var t, r, n; } }, { key: "getState", value: function () { return this._datalayer.state; } }, { key: "destroy", value: function () { window.removeEventListener("storage", this._listen); } }, { key: "syncFromDeviceStorage", value: function () { return null; } }]), e; }(), Pe = function (e) { r(n, Ce); var t = o(n); function n() { var e; return s(this, n), (e = t.apply(this, arguments)).updateMember = function (t) { return e.updateState({ member: t }); }, e.getMember = function () { var t, r; return null !== (r = null === (t = e.getState()) || void 0 === t ? void 0 : t.member) && void 0 !== r ? r : null; }, e.getSession = function () { var t, r; return null !== (r = null === (t = e.getState()) || void 0 === t ? void 0 : t.session) && void 0 !== r ? r : null; }, e; } return u(n); }();
929
- function je(e) { var t = e.toString(16); return 1 === t.length && (t = "0" + t), t; }
930
- var Le, Ae, Re, Ie, Ne, De, Me = function () { function e(t, r) { s(this, e), this._dataLayer = t, this.namespace = r; } return u(e, [{ key: "key", value: function () { return "PKCE_VERIFIER:" + this.namespace; } }, { key: "startPKCETransaction", value: function () { return me(this, void 0, void 0, a().mark((function t() { var r; return a().wrap((function (t) { for (;;)
927
+ o.destroyState(); }, window.addEventListener("storage", this._listen); var i = null === (n = this._datalayer.state) || void 0 === n ? void 0 : n.session; i && Date.parse(i.expires_at) < Date.now() ? this.destroyState() : this._datalayer.readSessionCookie().session_token || this.destroyState(); } return u(e, [{ key: "getTokens", value: function () { var e = this._datalayer.readSessionCookie(), t = e.session_token, r = e.session_jwt; return t && r ? { session_token: t, session_jwt: r } : null; } }, { key: "destroyState", value: function () { this.updateStateAndTokens({ state: null, session_token: null, session_jwt: null }); } }, { key: "_updateStateAndTokensInternal", value: function (e) { var t = this._datalayer.state, r = null === e.state ? null : Object.assign(Object.assign({}, this._datalayer.state), e.state); this._datalayer.state = r, Ee(t, r) || Oe(this._datalayer.subscriptions, r); } }, { key: "updateStateAndTokens", value: function (e) { e.state ? this._datalayer.writeSessionCookie(e) : this._datalayer.removeSessionCookie(), this._updateStateAndTokensInternal(e), this._datalayer.syncToLocalStorage(); } }, { key: "updateState", value: function (e) { var t = this._datalayer.state, r = null === e ? null : Object.assign(Object.assign({}, this._datalayer.state), e); this._datalayer.state = r, Ee(t, r) || (Oe(this._datalayer.subscriptions, r), this._datalayer.syncToLocalStorage()); } }, { key: "updateTokens", value: function (e) { var t = e.session_token, r = e.session_jwt, n = this._datalayer.readSessionCookie(), o = Object.assign(Object.assign({}, n), { session_token: t, session_jwt: r }); t && r ? this._datalayer.writeSessionCookie(o) : this._datalayer.removeSessionCookie(); } }, { key: "subscribeToState", value: function (e) { return t = this._datalayer.subscriptions, r = e, n = Math.random().toString(36).slice(-10), t[n] = r, function () { return delete t[n]; }; var t, r, n; } }, { key: "getState", value: function () { return this._datalayer.state; } }, { key: "destroy", value: function () { window.removeEventListener("storage", this._listen); } }, { key: "syncFromDeviceStorage", value: function () { return null; } }]), e; }(), xe = function (e) { r(n, Te); var t = o(n); function n() { var e; return s(this, n), (e = t.apply(this, arguments)).updateMember = function (t) { return e.updateState({ member: t }); }, e.getMember = function () { var t, r; return null !== (r = null === (t = e.getState()) || void 0 === t ? void 0 : t.member) && void 0 !== r ? r : null; }, e.getSession = function () { var t, r; return null !== (r = null === (t = e.getState()) || void 0 === t ? void 0 : t.session) && void 0 !== r ? r : null; }, e; } return u(n); }();
928
+ function Ce(e) { var t = e.toString(16); return 1 === t.length && (t = "0" + t), t; }
929
+ var Pe, je, Le, Ae, Re, Ie, De = function () { function e(t, r) { s(this, e), this._dataLayer = t, this.namespace = r; } return u(e, [{ key: "key", value: function () { return "PKCE_VERIFIER:" + this.namespace; } }, { key: "startPKCETransaction", value: function () { return ve(this, void 0, void 0, a().mark((function t() { var r; return a().wrap((function (t) { for (;;)
931
930
  switch (t.prev = t.next) {
932
931
  case 0: return t.next = 2, e.createProofkeyPair();
933
932
  case 2: return r = t.sent, this._dataLayer.setItem(this.key(), JSON.stringify(r)), t.abrupt("return", r);
@@ -938,56 +937,56 @@ var Le, Ae, Re, Ie, Ne, De, Me = function () { function e(t, r) { s(this, e), th
938
937
  return JSON.parse(e);
939
938
  }
940
939
  catch (e) {
941
- return void Z.warn("Found malformed Proof Key pair in localstorage.");
942
- } } }, { key: "clearPKPair", value: function () { return this._dataLayer.removeItem(this.key()); } }], [{ key: "createProofkeyPair", value: function () { return me(this, void 0, void 0, a().mark((function e() { var r, n, o; return a().wrap((function (e) { for (;;)
940
+ return void Z("Found malformed Proof Key pair in localstorage.");
941
+ } } }, { key: "clearPKPair", value: function () { return this._dataLayer.removeItem(this.key()); } }], [{ key: "createProofkeyPair", value: function () { return ve(this, void 0, void 0, a().mark((function e() { var r, n, o; return a().wrap((function (e) { for (;;)
943
942
  switch (e.prev = e.next) {
944
- case 0: return r = new Uint32Array(16), window.crypto.getRandomValues(r), n = Array.from(r).map(je).join(""), e.next = 5, window.crypto.subtle.digest("SHA-256", (new TextEncoder).encode(n));
943
+ case 0: return r = new Uint32Array(16), window.crypto.getRandomValues(r), n = Array.from(r).map(Ce).join(""), e.next = 5, window.crypto.subtle.digest("SHA-256", (new TextEncoder).encode(n));
945
944
  case 5: return o = e.sent, e.abrupt("return", { code_challenge: (i = o, a = void 0, btoa((a = String.fromCharCode).call.apply(a, [null].concat(t(new Uint8Array(i))))).replace(/\+/g, "-").replace(/\//g, "_").replace(/=+$/, "")), code_verifier: n });
946
945
  case 7:
947
946
  case "end": return e.stop();
948
- } var i, a; }), e); }))); } }]), e; }(), Ue = "bootstrap", Be = function () { return { displayWatermark: !1, cnameDomain: null, emailDomains: ["stytch.com"], captchaSettings: { enabled: !1 }, pkceRequiredForEmailMagicLinks: !1, pkceRequiredForPasswordResets: !1, pkceRequiredForOAuth: !1, pkceRequiredForSso: !1 }; }, Ke = function () { function e(t, r, n) { var o = this; s(this, e), this._publicToken = t, this._networkClient = r, this._dataLayer = n, this._bootstrapDataPromise = this._networkClient.fetchSDK({ url: "/projects/bootstrap/".concat(this._publicToken), method: "GET", errorMessage: "Error fetching bootstrap data for SDK for ".concat(this._publicToken) }).then(e.mapBootstrapData).then((function (e) { return o._dataLayer.setItem(Ue, JSON.stringify(e)), e; })).catch((function (e) { return Z.error(e), Be(); })); } return u(e, [{ key: "getSync", value: function () { var e = this._dataLayer.getItem(Ue); if (null === e)
949
- return Be(); try {
947
+ } var i, a; }), e); }))); } }]), e; }(), Ne = "bootstrap", Me = function () { function e(t, r, n) { var o = this; s(this, e), this._publicToken = t, this._networkClient = r, this._dataLayer = n, this._bootstrapDataPromise = this._networkClient.fetchSDK({ url: "/projects/bootstrap/".concat(this._publicToken), method: "GET", errorMessage: "Error fetching bootstrap data for SDK for ".concat(this._publicToken) }).then(e.mapBootstrapData).then((function (e) { return o._dataLayer.setItem(Ne, JSON.stringify(e)), e; })).catch((function (e) { return Q(e), { displayWatermark: !1, cnameDomain: null, emailDomains: ["stytch.com"], captchaSettings: { enabled: !1 }, pkceRequiredForEmailMagicLinks: !1, pkceRequiredForPasswordResets: !1, pkceRequiredForOAuth: !1, pkceRequiredForSso: !1 }; })); } return u(e, [{ key: "getSync", value: function () { var e = this._dataLayer.getItem(Ne); if (null === e)
948
+ return { displayWatermark: !1, cnameDomain: null, emailDomains: ["stytch.com"], captchaSettings: { enabled: !1 }, pkceRequiredForEmailMagicLinks: !1, pkceRequiredForPasswordResets: !1, pkceRequiredForOAuth: !1, pkceRequiredForSso: !1 }; try {
950
949
  return JSON.parse(e);
951
950
  }
952
951
  catch (e) {
953
- return Be();
954
- } } }, { key: "getAsync", value: function () { return this._bootstrapDataPromise; } }], [{ key: "mapBootstrapData", value: function (e) { return { displayWatermark: !e.disable_sdk_watermark, captchaSettings: e.captcha_settings, cnameDomain: e.cname_domain, emailDomains: e.email_domains, pkceRequiredForEmailMagicLinks: e.pkce_required_for_email_magic_links, pkceRequiredForPasswordResets: e.pkce_required_for_password_resets, pkceRequiredForOAuth: e.pkce_required_for_oauth, pkceRequiredForSso: e.pkce_required_for_sso }; } }]), e; }(), Fe = u((function e(t, r) { var n, o = this; s(this, e), function (e) { if ("undefined" == typeof window)
955
- throw new Error("The ".concat(e, " is not compatible with server-side environments.\nIf using nextjs, use the create").concat(e, " method instead.\n```\n").concat("import { createStytchB2BHeadlessClient } from '@stytch/nextjs/b2b';\n \n const stytch = createStytchB2BHeadlessClient('public-token-...');\n ", "\n```\n")); }("StytchB2BHeadlessClient"), "string" != typeof (n = t) ? Z.warn("Public token is malformed. Expected a string, got ".concat(v(n), ".").concat(Q)) : "" === n ? Z.warn('Public token is malformed. Expected "public-token-...", got an empty string.'.concat(Q)) : n.startsWith("public-token-") || Z.warn('Public token is malformed. Expected "public-token-...", got '.concat(n, ".").concat(Q)); var i, a, c, u, l, h, f, d, p, m = r, y = { cookieOptions: null == (i = m) ? void 0 : i.cookieOptions, endpoints: { sdkBackendURL: null !== (c = null === (a = null == i ? void 0 : i.endpoints) || void 0 === a ? void 0 : a.sdkBackendURL) && void 0 !== c ? c : "https://web.stytch.com", testAPIURL: null !== (l = null === (u = null == i ? void 0 : i.endpoints) || void 0 === u ? void 0 : u.testAPIURL) && void 0 !== l ? l : "https://test.stytch.com", liveAPIURL: null !== (f = null === (h = null == i ? void 0 : i.endpoints) || void 0 === h ? void 0 : h.liveAPIURL) && void 0 !== f ? f : "https://api.stytch.com", clientsideServicesIframeURL: null !== (p = null === (d = null == i ? void 0 : i.endpoints) || void 0 === d ? void 0 : d.clientsideServicesIframeURL) && void 0 !== p ? p : "https://js.stytch.com/clientside-services/index.html" } }; this._dataLayer = Ee(t, m), this._subscriptionService = new Pe(t, this._dataLayer); this._networkClient = new ye(t, this._dataLayer, y.endpoints.sdkBackendURL, (function () { var e, t, r, n; return { stytch_member_id: null === (t = null === (e = o._dataLayer.state) || void 0 === e ? void 0 : e.member) || void 0 === t ? void 0 : t.member_id, stytch_member_session_id: null === (n = null === (r = o._dataLayer.state) || void 0 === r ? void 0 : r.session) || void 0 === n ? void 0 : n.member_session_id }; })); var _ = new Ke(t, this._networkClient, this._dataLayer); this.organization = new le(this._networkClient), this.member = new ce(this._networkClient, this._subscriptionService), this.session = new he(this._networkClient, this._subscriptionService), this.magicLinks = new se(this._networkClient, this._subscriptionService, new Me(this._dataLayer, "magic_links"), _.getAsync()), this.sso = new ue(this._networkClient, this._subscriptionService, new Me(this._dataLayer, "sso"), _.getAsync(), { publicToken: t, testAPIURL: y.endpoints.testAPIURL, liveAPIURL: y.endpoints.liveAPIURL }), this.discovery = new fe(this._networkClient, this._subscriptionService), this._sessionManager = new re(this._subscriptionService, this.session), this._dataLayer.readSessionCookie().session_token && this._sessionManager.performBackgroundRefresh(), this._networkClient.logEvent({ name: "b2b_sdk_instance_instantiated", details: { event_callback_registered: !1, error_callback_registered: !1, success_callback_registered: !1 } }), pe(this, { bootstrap: _, publicToken: t }); }));
956
- function qe(e) { return qe = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e; } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e; }, qe(e); }
957
- function ze(e, t) { for (var r = 0; r < t.length; r++) {
952
+ return { displayWatermark: !1, cnameDomain: null, emailDomains: ["stytch.com"], captchaSettings: { enabled: !1 }, pkceRequiredForEmailMagicLinks: !1, pkceRequiredForPasswordResets: !1, pkceRequiredForOAuth: !1, pkceRequiredForSso: !1 };
953
+ } } }, { key: "getAsync", value: function () { return this._bootstrapDataPromise; } }], [{ key: "mapBootstrapData", value: function (e) { return { displayWatermark: !e.disable_sdk_watermark, captchaSettings: e.captcha_settings, cnameDomain: e.cname_domain, emailDomains: e.email_domains, pkceRequiredForEmailMagicLinks: e.pkce_required_for_email_magic_links, pkceRequiredForPasswordResets: e.pkce_required_for_password_resets, pkceRequiredForOAuth: e.pkce_required_for_oauth, pkceRequiredForSso: e.pkce_required_for_sso }; } }]), e; }(), Ue = u((function e(t, r) { var n, o = this; s(this, e), function (e) { if ("undefined" == typeof window)
954
+ throw new Error("The ".concat(e, " is not compatible with server-side environments.\nIf using nextjs, use the create").concat(e, " method instead.\n```\n").concat("import { createStytchB2BHeadlessClient } from '@stytch/nextjs/b2b';\n \n const stytch = createStytchB2BHeadlessClient('public-token-...');\n ", "\n```\n")); }("StytchB2BHeadlessClient"), "string" != typeof (n = t) ? Z("Public token is malformed. Expected a string, got ".concat(v(n), ".").concat(ee)) : "" === n ? Z('Public token is malformed. Expected "public-token-...", got an empty string.'.concat(ee)) : n.startsWith("public-token-") || Z('Public token is malformed. Expected "public-token-...", got '.concat(n, ".").concat(ee)); var i, a, c, u, l, h, f, d, p, m = r, y = { cookieOptions: null == (i = m) ? void 0 : i.cookieOptions, endpoints: { sdkBackendURL: null !== (c = null === (a = null == i ? void 0 : i.endpoints) || void 0 === a ? void 0 : a.sdkBackendURL) && void 0 !== c ? c : "https://web.stytch.com", testAPIURL: null !== (l = null === (u = null == i ? void 0 : i.endpoints) || void 0 === u ? void 0 : u.testAPIURL) && void 0 !== l ? l : "https://test.stytch.com", liveAPIURL: null !== (f = null === (h = null == i ? void 0 : i.endpoints) || void 0 === h ? void 0 : h.liveAPIURL) && void 0 !== f ? f : "https://api.stytch.com", clientsideServicesIframeURL: null !== (p = null === (d = null == i ? void 0 : i.endpoints) || void 0 === d ? void 0 : d.clientsideServicesIframeURL) && void 0 !== p ? p : "https://js.stytch.com/clientside-services/index.html" } }; this._dataLayer = Se(t, m), this._subscriptionService = new xe(t, this._dataLayer); this._networkClient = new me(t, this._dataLayer, y.endpoints.sdkBackendURL, (function () { var e, t, r, n; return { stytch_member_id: null === (t = null === (e = o._dataLayer.state) || void 0 === e ? void 0 : e.member) || void 0 === t ? void 0 : t.member_id, stytch_member_session_id: null === (n = null === (r = o._dataLayer.state) || void 0 === r ? void 0 : r.session) || void 0 === n ? void 0 : n.member_session_id }; })); var _ = new Me(t, this._networkClient, this._dataLayer); this.organization = new ue(this._networkClient), this.member = new se(this._networkClient, this._subscriptionService), this.session = new le(this._networkClient, this._subscriptionService), this.magicLinks = new ae(this._networkClient, this._subscriptionService, new De(this._dataLayer, "magic_links"), _.getAsync()), this.sso = new ce(this._networkClient, this._subscriptionService, new De(this._dataLayer, "sso"), _.getAsync(), { publicToken: t, testAPIURL: y.endpoints.testAPIURL, liveAPIURL: y.endpoints.liveAPIURL }), this.discovery = new he(this._networkClient, this._subscriptionService), this._sessionManager = new ne(this._subscriptionService, this.session), this._dataLayer.readSessionCookie().session_token && this._sessionManager.performBackgroundRefresh(), this._networkClient.logEvent({ name: "b2b_sdk_instance_instantiated", details: { event_callback_registered: !1, error_callback_registered: !1, success_callback_registered: !1 } }), de(this, { bootstrap: _, publicToken: t }); }));
955
+ function Be(e) { return Be = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e; } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e; }, Be(e); }
956
+ function Fe(e, t) { for (var r = 0; r < t.length; r++) {
958
957
  var n = t[r];
959
- n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, (o = n.key, i = void 0, i = function (e, t) { if ("object" !== qe(e) || null === e)
958
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, (o = n.key, i = void 0, i = function (e, t) { if ("object" !== Be(e) || null === e)
960
959
  return e; var r = e[Symbol.toPrimitive]; if (void 0 !== r) {
961
960
  var n = r.call(e, t || "default");
962
- if ("object" !== qe(n))
961
+ if ("object" !== Be(n))
963
962
  return n;
964
963
  throw new TypeError("@@toPrimitive must return a primitive value.");
965
- } return ("string" === t ? String : Number)(e); }(o, "string"), "symbol" === qe(i) ? i : String(i)), n);
964
+ } return ("string" === t ? String : Number)(e); }(o, "string"), "symbol" === Be(i) ? i : String(i)), n);
966
965
  } var o, i; }
967
- function Ge(e, t, r) { return t && ze(e.prototype, t), r && ze(e, r), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
968
- function We(e, t) { if (!(e instanceof t))
966
+ function Ke(e, t, r) { return t && Fe(e.prototype, t), r && Fe(e, r), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
967
+ function qe(e, t) { if (!(e instanceof t))
969
968
  throw new TypeError("Cannot call a class as a function"); }
970
- function He(e, t) { if ("function" != typeof t && null !== t)
971
- throw new TypeError("Super expression must either be null or a function"); e.prototype = Object.create(t && t.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && Ze(e, t); }
972
- function Ve(e) { var t = Xe(); return function () { var r, n = Qe(e); if (t) {
973
- var o = Qe(this).constructor;
969
+ function ze(e, t) { if ("function" != typeof t && null !== t)
970
+ throw new TypeError("Super expression must either be null or a function"); e.prototype = Object.create(t && t.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && Je(e, t); }
971
+ function Ge(e) { var t = Ye(); return function () { var r, n = $e(e); if (t) {
972
+ var o = $e(this).constructor;
974
973
  r = Reflect.construct(n, arguments, o);
975
974
  }
976
975
  else
977
- r = n.apply(this, arguments); return function (e, t) { if (t && ("object" === qe(t) || "function" == typeof t))
976
+ r = n.apply(this, arguments); return function (e, t) { if (t && ("object" === Be(t) || "function" == typeof t))
978
977
  return t; if (void 0 !== t)
979
- throw new TypeError("Derived constructors may only return object or undefined"); return Ye(e); }(this, r); }; }
980
- function Ye(e) { if (void 0 === e)
978
+ throw new TypeError("Derived constructors may only return object or undefined"); return We(e); }(this, r); }; }
979
+ function We(e) { if (void 0 === e)
981
980
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
982
- function Je(e) { var t = "function" == typeof Map ? new Map : void 0; return Je = function (e) { if (null === e || (r = e, -1 === Function.toString.call(r).indexOf("[native code]")))
981
+ function He(e) { var t = "function" == typeof Map ? new Map : void 0; return He = function (e) { if (null === e || (r = e, -1 === Function.toString.call(r).indexOf("[native code]")))
983
982
  return e; var r; if ("function" != typeof e)
984
983
  throw new TypeError("Super expression must either be null or a function"); if (void 0 !== t) {
985
984
  if (t.has(e))
986
985
  return t.get(e);
987
986
  t.set(e, n);
988
- } function n() { return $e(e, arguments, Qe(this).constructor); } return n.prototype = Object.create(e.prototype, { constructor: { value: n, enumerable: !1, writable: !0, configurable: !0 } }), Ze(n, e); }, Je(e); }
989
- function $e(e, t, r) { return $e = Xe() ? Reflect.construct.bind() : function (e, t, r) { var n = [null]; n.push.apply(n, t); var o = new (Function.bind.apply(e, n)); return r && Ze(o, r.prototype), o; }, $e.apply(null, arguments); }
990
- function Xe() { if ("undefined" == typeof Reflect || !Reflect.construct)
987
+ } function n() { return Ve(e, arguments, $e(this).constructor); } return n.prototype = Object.create(e.prototype, { constructor: { value: n, enumerable: !1, writable: !0, configurable: !0 } }), Je(n, e); }, He(e); }
988
+ function Ve(e, t, r) { return Ve = Ye() ? Reflect.construct.bind() : function (e, t, r) { var n = [null]; n.push.apply(n, t); var o = new (Function.bind.apply(e, n)); return r && Je(o, r.prototype), o; }, Ve.apply(null, arguments); }
989
+ function Ye() { if ("undefined" == typeof Reflect || !Reflect.construct)
991
990
  return !1; if (Reflect.construct.sham)
992
991
  return !1; if ("function" == typeof Proxy)
993
992
  return !0; try {
@@ -996,11 +995,11 @@ function Xe() { if ("undefined" == typeof Reflect || !Reflect.construct)
996
995
  catch (e) {
997
996
  return !1;
998
997
  } }
999
- function Ze(e, t) { return Ze = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (e, t) { return e.__proto__ = t, e; }, Ze(e, t); }
1000
- function Qe(e) { return Qe = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (e) { return e.__proto__ || Object.getPrototypeOf(e); }, Qe(e); }
1001
- !function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(Le || (Le = {})), function (e) { e.Google = "google", e.Microsoft = "microsoft", e.Apple = "apple", e.Github = "github", e.GitLab = "gitlab", e.Facebook = "facebook", e.Discord = "discord", e.Slack = "slack", e.Amazon = "amazon", e.Bitbucket = "bitbucket", e.LinkedIn = "linkedin", e.Coinbase = "coinbase", e.Twitch = "twitch"; }(Ae || (Ae = {})), function (e) { e.Vessel = "Vessel", e.Phantom = "Phantom", e.Metamask = "Metamask", e.Coinbase = "Coinbase", e.Binance = "Binance", e.GenericEthereumWallet = "Other Ethereum Wallet", e.GenericSolanaWallet = "Other Solana Wallet"; }(Re || (Re = {})), function (e) { e.embedded = "embedded", e.floating = "floating"; }(Ie || (Ie = {})), function (e) { e.SMS = "sms", e.WhatsApp = "whatsapp", e.Email = "email"; }(Ne || (Ne = {})), function (e) { e.MagicLinkLoginOrCreateEvent = "MAGIC_LINK_LOGIN_OR_CREATE", e.OTPsLoginOrCreateEvent = "OTP_LOGIN_OR_CREATE", e.OTPsAuthenticate = "OTP_AUTHENTICATE", e.CryptoWalletAuthenticateStart = "CRYPTO_WALLET_AUTHENTICATE_START", e.CryptoWalletAuthenticate = "CRYPTO_WALLET_AUTHENTICATE", e.PasswordCreate = "PASSWORD_CREATE", e.PasswordAuthenticate = "PASSWORD_AUTHENTICATE", e.PasswordResetByEmailStart = "PASSWORD_RESET_BY_EMAIL_START", e.PasswordResetByEmail = "PASSWORD_RESET_BY_EMAIL"; }(De || (De = {}));
1002
- var et; (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e, n) { var o; return We(this, r), (o = t.call(this, e + "\n" + n)).message = e + "\n" + n, o.name = "SDKAPIUnreachableError", o.details = n, Object.setPrototypeOf(Ye(o), r.prototype), o; } return Ge(r); })(); (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e, n) { var o; return We(this, r), (o = t.call(this)).name = "StytchSDKUsageError", o.message = "Invalid call to ".concat(e, "\n") + n, o; } return Ge(r); })(); (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e) { var n, o; We(this, r), (n = t.call(this)).name = "StytchSDKSchemaError"; var i = null === (o = e.body) || void 0 === o ? void 0 : o.map((function (e) { return "".concat(e.dataPath, ": ").concat(e.message); })).join("\n"); return n.message = "[400] Request does not match expected schema\n".concat(i), n; } return Ge(r); })(); (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e) { var n; We(this, r), (n = t.call(this)).name = "StytchSDKAPIError"; var o = e.status_code, i = e.error_type, a = e.error_message, s = e.error_url, c = e.request_id; return n.error_type = i, n.error_message = a, n.error_url = s, n.request_id = c, n.status_code = o, n.message = "[".concat(o, "] ").concat(i, "\n") + "".concat(a, "\n") + "See ".concat(s, " for more information.\n") + (c ? "request_id: ".concat(c, "\n") : ""), n; } return Ge(r); })(); (function (e) { He(r, Je(Error)); var t = Ve(r); function r(e) { var n; return We(this, r), (n = t.call(this)).name = "StytchSDKNativeError", n.error_type = e, n.message = "".concat(e), n; } return Ge(r); })();
1003
- !function (e) { e.BiometricsSensorError = "biometrics_sensor_error", e.DeviceCredentialsNotAllowed = "device_credentials_not_allowed", e.DeviceHardwareError = "device_hardware_error", e.InternalError = "internal_error", e.KeyInvalidated = "key_invalidated", e.KeystoreUnavailable = "keystore_unavailable", e.NoBiometricsEnrolled = "no_biometrics_enrolled", e.NoBiometricsRegistration = "no_biometrics_registration", e.SessionExpired = "session_expired", e.UserCancellation = "user_cancellation", e.UserLockedOut = "user_locked_out"; }(et || (et = {}));
998
+ function Je(e, t) { return Je = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (e, t) { return e.__proto__ = t, e; }, Je(e, t); }
999
+ function $e(e) { return $e = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (e) { return e.__proto__ || Object.getPrototypeOf(e); }, $e(e); }
1000
+ !function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(Pe || (Pe = {})), function (e) { e.Google = "google", e.Microsoft = "microsoft", e.Apple = "apple", e.Github = "github", e.GitLab = "gitlab", e.Facebook = "facebook", e.Discord = "discord", e.Slack = "slack", e.Amazon = "amazon", e.Bitbucket = "bitbucket", e.LinkedIn = "linkedin", e.Coinbase = "coinbase", e.Twitch = "twitch"; }(je || (je = {})), function (e) { e.Vessel = "Vessel", e.Phantom = "Phantom", e.Metamask = "Metamask", e.Coinbase = "Coinbase", e.Binance = "Binance", e.GenericEthereumWallet = "Other Ethereum Wallet", e.GenericSolanaWallet = "Other Solana Wallet"; }(Le || (Le = {})), function (e) { e.embedded = "embedded", e.floating = "floating"; }(Ae || (Ae = {})), function (e) { e.SMS = "sms", e.WhatsApp = "whatsapp", e.Email = "email"; }(Re || (Re = {})), function (e) { e.MagicLinkLoginOrCreateEvent = "MAGIC_LINK_LOGIN_OR_CREATE", e.OTPsLoginOrCreateEvent = "OTP_LOGIN_OR_CREATE", e.OTPsAuthenticate = "OTP_AUTHENTICATE", e.CryptoWalletAuthenticateStart = "CRYPTO_WALLET_AUTHENTICATE_START", e.CryptoWalletAuthenticate = "CRYPTO_WALLET_AUTHENTICATE", e.PasswordCreate = "PASSWORD_CREATE", e.PasswordAuthenticate = "PASSWORD_AUTHENTICATE", e.PasswordResetByEmailStart = "PASSWORD_RESET_BY_EMAIL_START", e.PasswordResetByEmail = "PASSWORD_RESET_BY_EMAIL"; }(Ie || (Ie = {}));
1001
+ var Xe; (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e, n) { var o; return qe(this, r), (o = t.call(this, e + "\n" + n)).message = e + "\n" + n, o.name = "SDKAPIUnreachableError", o.details = n, Object.setPrototypeOf(We(o), r.prototype), o; } return Ke(r); })(); (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e, n) { var o; return qe(this, r), (o = t.call(this)).name = "StytchSDKUsageError", o.message = "Invalid call to ".concat(e, "\n") + n, o; } return Ke(r); })(); (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e) { var n, o; qe(this, r), (n = t.call(this)).name = "StytchSDKSchemaError"; var i = null === (o = e.body) || void 0 === o ? void 0 : o.map((function (e) { return "".concat(e.dataPath, ": ").concat(e.message); })).join("\n"); return n.message = "[400] Request does not match expected schema\n".concat(i), n; } return Ke(r); })(); (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e) { var n; qe(this, r), (n = t.call(this)).name = "StytchSDKAPIError"; var o = e.status_code, i = e.error_type, a = e.error_message, s = e.error_url, c = e.request_id; return n.error_type = i, n.error_message = a, n.error_url = s, n.request_id = c, n.status_code = o, n.message = "[".concat(o, "] ").concat(i, "\n") + "".concat(a, "\n") + "See ".concat(s, " for more information.\n") + (c ? "request_id: ".concat(c, "\n") : ""), n; } return Ke(r); })(); (function (e) { ze(r, He(Error)); var t = Ge(r); function r(e) { var n; return qe(this, r), (n = t.call(this)).name = "StytchSDKNativeError", n.error_type = e, n.message = "".concat(e), n; } return Ke(r); })();
1002
+ !function (e) { e.BiometricsSensorError = "biometrics_sensor_error", e.DeviceCredentialsNotAllowed = "device_credentials_not_allowed", e.DeviceHardwareError = "device_hardware_error", e.InternalError = "internal_error", e.KeyInvalidated = "key_invalidated", e.KeystoreUnavailable = "keystore_unavailable", e.NoBiometricsEnrolled = "no_biometrics_enrolled", e.NoBiometricsRegistration = "no_biometrics_registration", e.SessionExpired = "session_expired", e.UserCancellation = "user_cancellation", e.UserLockedOut = "user_locked_out"; }(Xe || (Xe = {}));
1004
1003
 
1005
1004
  /**
1006
1005
  * Creates a Headless Stytch client object to call the stytch B2B APIs.
@@ -1019,7 +1018,7 @@ const createStytchB2BHeadlessClient = (...args) => {
1019
1018
  if (typeof window === 'undefined') {
1020
1019
  return createStytchSSRProxy();
1021
1020
  }
1022
- return new Fe(...args);
1021
+ return new Ue(...args);
1023
1022
  };
1024
1023
 
1025
1024
  exports.StytchB2BProvider = StytchB2BProvider;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stytch/nextjs",
3
- "version": "3.0.1",
3
+ "version": "3.0.2",
4
4
  "description": "Stytch's official Next.js Library",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.esm.js",
@@ -22,14 +22,15 @@
22
22
  "author": "Stytch",
23
23
  "devDependencies": {
24
24
  "@babel/runtime": "7.18.6",
25
- "@stytch/vanilla-js": "0.11.2",
26
- "@testing-library/react": "12.1.3",
25
+ "@stytch/vanilla-js": "0.11.3",
26
+ "@testing-library/react": "14.0.0",
27
27
  "eslint-config-custom": "0.0.1",
28
+ "react-test-renderer": "18.0.0",
28
29
  "rollup": "2.56.3",
29
30
  "typescript": "4.7.4"
30
31
  },
31
32
  "peerDependencies": {
32
- "@stytch/vanilla-js": "^0.11.2",
33
+ "@stytch/vanilla-js": "^0.11.3",
33
34
  "react": ">= 17.0.2",
34
35
  "react-dom": ">= 17.0.2"
35
36
  },