@stytch/nextjs 3.0.0 → 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 +16 -0
- package/b2b/package.json +6 -0
- package/dist/b2b/index.esm.js +78 -73
- package/dist/b2b/index.js +78 -73
- package/package.json +6 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
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
|
+
|
|
11
|
+
## 3.0.1
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- c924765: Include the b2b directory in package.json for the B2B SDK entrypoint
|
|
16
|
+
- Updated dependencies [c924765]
|
|
17
|
+
- @stytch/vanilla-js@0.11.2
|
|
18
|
+
|
|
3
19
|
## 3.0.0
|
|
4
20
|
|
|
5
21
|
### Minor Changes
|
package/b2b/package.json
ADDED
package/dist/b2b/index.esm.js
CHANGED
|
@@ -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
|
|
616
|
-
!function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(
|
|
617
|
-
var
|
|
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"; }(
|
|
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 =
|
|
645
|
-
|
|
646
|
-
|
|
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
|
|
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
|
|
705
|
-
case 26: throw new
|
|
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
|
|
713
|
-
|
|
714
|
-
var
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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; }(),
|
|
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); })); }; })),
|
|
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
|
|
786
|
-
case 3: return (r = t.sent) || Z
|
|
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; }(),
|
|
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); }))); }; })),
|
|
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
|
|
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; }(),
|
|
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
|
|
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
|
|
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
|
|
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); }))); } }; })),
|
|
863
|
-
function
|
|
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
|
|
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",
|
|
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
|
|
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
|
|
887
|
-
"number" == typeof (o =
|
|
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, "",
|
|
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,9 +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:
|
|
915
|
-
|
|
916
|
-
var
|
|
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))
|
|
914
|
+
if (null !== e.newValue && "null" !== e.newValue) {
|
|
915
|
+
var t = JSON.parse(e.newValue);
|
|
916
|
+
o.updateState(t);
|
|
917
|
+
}
|
|
918
|
+
else
|
|
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 (;;)
|
|
917
922
|
switch (t.prev = t.next) {
|
|
918
923
|
case 0: return t.next = 2, e.createProofkeyPair();
|
|
919
924
|
case 2: return r = t.sent, this._dataLayer.setItem(this.key(), JSON.stringify(r)), t.abrupt("return", r);
|
|
@@ -924,56 +929,56 @@ var je, Ae, Re, Ie, Ne, De, Me = function () { function e(t, r) { s(this, e), th
|
|
|
924
929
|
return JSON.parse(e);
|
|
925
930
|
}
|
|
926
931
|
catch (e) {
|
|
927
|
-
return void Z
|
|
928
|
-
} } }, { key: "clearPKPair", value: function () { return this._dataLayer.removeItem(this.key()); } }], [{ key: "createProofkeyPair", value: function () { return
|
|
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 (;;)
|
|
929
934
|
switch (e.prev = e.next) {
|
|
930
|
-
case 0: return r = new Uint32Array(16), window.crypto.getRandomValues(r), n = Array.from(r).map(
|
|
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));
|
|
931
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 });
|
|
932
937
|
case 7:
|
|
933
938
|
case "end": return e.stop();
|
|
934
|
-
} var i, a; }), e); }))); } }]), e; }(),
|
|
935
|
-
return
|
|
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 {
|
|
936
941
|
return JSON.parse(e);
|
|
937
942
|
}
|
|
938
943
|
catch (e) {
|
|
939
|
-
return
|
|
940
|
-
} } }, { 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; }(),
|
|
941
|
-
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
|
|
942
|
-
function
|
|
943
|
-
function
|
|
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++) {
|
|
944
949
|
var n = t[r];
|
|
945
|
-
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" !==
|
|
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)
|
|
946
951
|
return e; var r = e[Symbol.toPrimitive]; if (void 0 !== r) {
|
|
947
952
|
var n = r.call(e, t || "default");
|
|
948
|
-
if ("object" !==
|
|
953
|
+
if ("object" !== Be(n))
|
|
949
954
|
return n;
|
|
950
955
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
951
|
-
} return ("string" === t ? String : Number)(e); }(o, "string"), "symbol" ===
|
|
956
|
+
} return ("string" === t ? String : Number)(e); }(o, "string"), "symbol" === Be(i) ? i : String(i)), n);
|
|
952
957
|
} var o, i; }
|
|
953
|
-
function
|
|
954
|
-
function
|
|
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))
|
|
955
960
|
throw new TypeError("Cannot call a class as a function"); }
|
|
956
|
-
function
|
|
957
|
-
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 &&
|
|
958
|
-
function
|
|
959
|
-
var o =
|
|
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;
|
|
960
965
|
r = Reflect.construct(n, arguments, o);
|
|
961
966
|
}
|
|
962
967
|
else
|
|
963
|
-
r = n.apply(this, arguments); return function (e, t) { if (t && ("object" ===
|
|
968
|
+
r = n.apply(this, arguments); return function (e, t) { if (t && ("object" === Be(t) || "function" == typeof t))
|
|
964
969
|
return t; if (void 0 !== t)
|
|
965
|
-
throw new TypeError("Derived constructors may only return object or undefined"); return
|
|
966
|
-
function
|
|
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)
|
|
967
972
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
|
|
968
|
-
function
|
|
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]")))
|
|
969
974
|
return e; var r; if ("function" != typeof e)
|
|
970
975
|
throw new TypeError("Super expression must either be null or a function"); if (void 0 !== t) {
|
|
971
976
|
if (t.has(e))
|
|
972
977
|
return t.get(e);
|
|
973
978
|
t.set(e, n);
|
|
974
|
-
} function n() { return
|
|
975
|
-
function
|
|
976
|
-
function
|
|
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)
|
|
977
982
|
return !1; if (Reflect.construct.sham)
|
|
978
983
|
return !1; if ("function" == typeof Proxy)
|
|
979
984
|
return !0; try {
|
|
@@ -982,11 +987,11 @@ function Xe() { if ("undefined" == typeof Reflect || !Reflect.construct)
|
|
|
982
987
|
catch (e) {
|
|
983
988
|
return !1;
|
|
984
989
|
} }
|
|
985
|
-
function
|
|
986
|
-
function
|
|
987
|
-
!function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(
|
|
988
|
-
var
|
|
989
|
-
!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"; }(
|
|
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 = {}));
|
|
990
995
|
|
|
991
996
|
/**
|
|
992
997
|
* Creates a Headless Stytch client object to call the stytch B2B APIs.
|
|
@@ -1005,7 +1010,7 @@ const createStytchB2BHeadlessClient = (...args) => {
|
|
|
1005
1010
|
if (typeof window === 'undefined') {
|
|
1006
1011
|
return createStytchSSRProxy();
|
|
1007
1012
|
}
|
|
1008
|
-
return new
|
|
1013
|
+
return new Ue(...args);
|
|
1009
1014
|
};
|
|
1010
1015
|
|
|
1011
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
|
|
624
|
-
!function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(
|
|
625
|
-
var
|
|
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"; }(
|
|
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 =
|
|
653
|
-
|
|
654
|
-
|
|
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
|
|
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
|
|
713
|
-
case 26: throw new
|
|
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
|
|
721
|
-
|
|
722
|
-
var
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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; }(),
|
|
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); })); }; })),
|
|
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
|
|
794
|
-
case 3: return (r = t.sent) || Z
|
|
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; }(),
|
|
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); }))); }; })),
|
|
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
|
|
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; }(),
|
|
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
|
|
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
|
|
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
|
|
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); }))); } }; })),
|
|
871
|
-
function
|
|
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
|
|
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",
|
|
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
|
|
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
|
|
895
|
-
"number" == typeof (o =
|
|
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, "",
|
|
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,9 +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:
|
|
923
|
-
|
|
924
|
-
var
|
|
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))
|
|
922
|
+
if (null !== e.newValue && "null" !== e.newValue) {
|
|
923
|
+
var t = JSON.parse(e.newValue);
|
|
924
|
+
o.updateState(t);
|
|
925
|
+
}
|
|
926
|
+
else
|
|
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 (;;)
|
|
925
930
|
switch (t.prev = t.next) {
|
|
926
931
|
case 0: return t.next = 2, e.createProofkeyPair();
|
|
927
932
|
case 2: return r = t.sent, this._dataLayer.setItem(this.key(), JSON.stringify(r)), t.abrupt("return", r);
|
|
@@ -932,56 +937,56 @@ var je, Ae, Re, Ie, Ne, De, Me = function () { function e(t, r) { s(this, e), th
|
|
|
932
937
|
return JSON.parse(e);
|
|
933
938
|
}
|
|
934
939
|
catch (e) {
|
|
935
|
-
return void Z
|
|
936
|
-
} } }, { key: "clearPKPair", value: function () { return this._dataLayer.removeItem(this.key()); } }], [{ key: "createProofkeyPair", value: function () { return
|
|
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 (;;)
|
|
937
942
|
switch (e.prev = e.next) {
|
|
938
|
-
case 0: return r = new Uint32Array(16), window.crypto.getRandomValues(r), n = Array.from(r).map(
|
|
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));
|
|
939
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 });
|
|
940
945
|
case 7:
|
|
941
946
|
case "end": return e.stop();
|
|
942
|
-
} var i, a; }), e); }))); } }]), e; }(),
|
|
943
|
-
return
|
|
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 {
|
|
944
949
|
return JSON.parse(e);
|
|
945
950
|
}
|
|
946
951
|
catch (e) {
|
|
947
|
-
return
|
|
948
|
-
} } }, { 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; }(),
|
|
949
|
-
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
|
|
950
|
-
function
|
|
951
|
-
function
|
|
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++) {
|
|
952
957
|
var n = t[r];
|
|
953
|
-
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" !==
|
|
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)
|
|
954
959
|
return e; var r = e[Symbol.toPrimitive]; if (void 0 !== r) {
|
|
955
960
|
var n = r.call(e, t || "default");
|
|
956
|
-
if ("object" !==
|
|
961
|
+
if ("object" !== Be(n))
|
|
957
962
|
return n;
|
|
958
963
|
throw new TypeError("@@toPrimitive must return a primitive value.");
|
|
959
|
-
} return ("string" === t ? String : Number)(e); }(o, "string"), "symbol" ===
|
|
964
|
+
} return ("string" === t ? String : Number)(e); }(o, "string"), "symbol" === Be(i) ? i : String(i)), n);
|
|
960
965
|
} var o, i; }
|
|
961
|
-
function
|
|
962
|
-
function
|
|
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))
|
|
963
968
|
throw new TypeError("Cannot call a class as a function"); }
|
|
964
|
-
function
|
|
965
|
-
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 &&
|
|
966
|
-
function
|
|
967
|
-
var o =
|
|
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;
|
|
968
973
|
r = Reflect.construct(n, arguments, o);
|
|
969
974
|
}
|
|
970
975
|
else
|
|
971
|
-
r = n.apply(this, arguments); return function (e, t) { if (t && ("object" ===
|
|
976
|
+
r = n.apply(this, arguments); return function (e, t) { if (t && ("object" === Be(t) || "function" == typeof t))
|
|
972
977
|
return t; if (void 0 !== t)
|
|
973
|
-
throw new TypeError("Derived constructors may only return object or undefined"); return
|
|
974
|
-
function
|
|
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)
|
|
975
980
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
|
|
976
|
-
function
|
|
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]")))
|
|
977
982
|
return e; var r; if ("function" != typeof e)
|
|
978
983
|
throw new TypeError("Super expression must either be null or a function"); if (void 0 !== t) {
|
|
979
984
|
if (t.has(e))
|
|
980
985
|
return t.get(e);
|
|
981
986
|
t.set(e, n);
|
|
982
|
-
} function n() { return
|
|
983
|
-
function
|
|
984
|
-
function
|
|
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)
|
|
985
990
|
return !1; if (Reflect.construct.sham)
|
|
986
991
|
return !1; if ("function" == typeof Proxy)
|
|
987
992
|
return !0; try {
|
|
@@ -990,11 +995,11 @@ function Xe() { if ("undefined" == typeof Reflect || !Reflect.construct)
|
|
|
990
995
|
catch (e) {
|
|
991
996
|
return !1;
|
|
992
997
|
} }
|
|
993
|
-
function
|
|
994
|
-
function
|
|
995
|
-
!function (e) { e.emailMagicLinks = "emailMagicLinks", e.oauth = "oauth", e.otp = "otp", e.crypto = "crypto", e.passwords = "passwords"; }(
|
|
996
|
-
var
|
|
997
|
-
!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"; }(
|
|
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 = {}));
|
|
998
1003
|
|
|
999
1004
|
/**
|
|
1000
1005
|
* Creates a Headless Stytch client object to call the stytch B2B APIs.
|
|
@@ -1013,7 +1018,7 @@ const createStytchB2BHeadlessClient = (...args) => {
|
|
|
1013
1018
|
if (typeof window === 'undefined') {
|
|
1014
1019
|
return createStytchSSRProxy();
|
|
1015
1020
|
}
|
|
1016
|
-
return new
|
|
1021
|
+
return new Ue(...args);
|
|
1017
1022
|
};
|
|
1018
1023
|
|
|
1019
1024
|
exports.StytchB2BProvider = StytchB2BProvider;
|
package/package.json
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stytch/nextjs",
|
|
3
|
-
"version": "3.0.
|
|
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",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
8
8
|
"files": [
|
|
9
|
+
"b2b",
|
|
9
10
|
"dist",
|
|
10
11
|
"headless",
|
|
11
12
|
"ui"
|
|
@@ -21,14 +22,15 @@
|
|
|
21
22
|
"author": "Stytch",
|
|
22
23
|
"devDependencies": {
|
|
23
24
|
"@babel/runtime": "7.18.6",
|
|
24
|
-
"@stytch/vanilla-js": "0.11.
|
|
25
|
-
"@testing-library/react": "
|
|
25
|
+
"@stytch/vanilla-js": "0.11.3",
|
|
26
|
+
"@testing-library/react": "14.0.0",
|
|
26
27
|
"eslint-config-custom": "0.0.1",
|
|
28
|
+
"react-test-renderer": "18.0.0",
|
|
27
29
|
"rollup": "2.56.3",
|
|
28
30
|
"typescript": "4.7.4"
|
|
29
31
|
},
|
|
30
32
|
"peerDependencies": {
|
|
31
|
-
"@stytch/vanilla-js": "^0.11.
|
|
33
|
+
"@stytch/vanilla-js": "^0.11.3",
|
|
32
34
|
"react": ">= 17.0.2",
|
|
33
35
|
"react-dom": ">= 17.0.2"
|
|
34
36
|
},
|