@stytch/vanilla-js 0.9.4 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- function e(e){return function(e){if(Array.isArray(e))return t(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,r){if(!e)return;if("string"==typeof e)return t(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return t(e,r)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function r(e){return r="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},r(e)}function n(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */n=function(){return e};var e={},t=Object.prototype,i=t.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},s="function"==typeof Symbol?Symbol:{},a=s.iterator||"@@iterator",c=s.asyncIterator||"@@asyncIterator",u=s.toStringTag||"@@toStringTag";function l(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,r){return e[t]=r}}function h(e,t,r,n){var i=t&&t.prototype instanceof f?t:f,s=Object.create(i.prototype),a=new C(n||[]);return o(s,"_invoke",{value:S(e,r,a)}),s}function d(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=h;var p={};function f(){}function v(){}function m(){}var _={};l(_,a,(function(){return this}));var y=Object.getPrototypeOf,g=y&&y(y(T([])));g&&g!==t&&i.call(g,a)&&(_=g);var b=m.prototype=f.prototype=Object.create(_);function w(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function n(o,s,a,c){var u=d(e[o],e,s);if("throw"!==u.type){var l=u.arg,h=l.value;return h&&"object"==r(h)&&i.call(h,"__await")?t.resolve(h.__await).then((function(e){n("next",e,a,c)}),(function(e){n("throw",e,a,c)})):t.resolve(h).then((function(e){l.value=e,a(l)}),(function(e){return n("throw",e,a,c)}))}c(u.arg)}var s;o(this,"_invoke",{value:function(e,r){function i(){return new t((function(t,i){n(e,r,t,i)}))}return s=s?s.then(i,i):i()}})}function S(e,t,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return P()}for(r.method=i,r.arg=o;;){var s=r.delegate;if(s){var a=x(s,r);if(a){if(a===p)continue;return a}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=d(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===p)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function x(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,x(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var i=d(n,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,p;var o=i.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,p):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,p)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function E(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function C(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function T(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,n=function t(){for(;++r<e.length;)if(i.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return n.next=n}}return{next:P}}function P(){return{value:void 0,done:!0}}return v.prototype=m,o(b,"constructor",{value:m,configurable:!0}),o(m,"constructor",{value:v,configurable:!0}),v.displayName=l(m,u,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===v||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,m):(e.__proto__=m,l(e,u,"GeneratorFunction")),e.prototype=Object.create(b),e},e.awrap=function(e){return{__await:e}},w(k.prototype),l(k.prototype,c,(function(){return this})),e.AsyncIterator=k,e.async=function(t,r,n,i,o){void 0===o&&(o=Promise);var s=new k(h(t,r,n,i),o);return e.isGeneratorFunction(r)?s:s.next().then((function(e){return e.done?e.value:s.next()}))},w(b),l(b,u,"Generator"),l(b,a,(function(){return this})),l(b,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=T,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!e)for(var t in this)"t"===t.charAt(0)&&i.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(r,n){return s.type="throw",s.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n],s=o.completion;if("root"===o.tryLoc)return r("end");if(o.tryLoc<=this.prev){var a=i.call(o,"catchLoc"),c=i.call(o,"finallyLoc");if(a&&c){if(this.prev<o.catchLoc)return r(o.catchLoc,!0);if(this.prev<o.finallyLoc)return r(o.finallyLoc)}else if(a){if(this.prev<o.catchLoc)return r(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return r(o.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&i.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var o=n;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var s=o?o.completion:{};return s.type=e,s.arg=t,o?(this.method="next",this.next=o.finallyLoc,p):this.complete(s)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),p},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),E(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;E(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:T(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},e}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,a(n.key),n)}}function s(e,t,r){return t&&o(e.prototype,t),r&&o(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function a(e){var t=function(e,t){if("object"!==r(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var i=n.call(e,t||"default");if("object"!==r(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===r(t)?t:String(t)}function c(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=h(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,s=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){a=!0,o=e},f:function(){try{s||null==r.return||r.return()}finally{if(a)throw o}}}}function u(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,o,s,a=[],c=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=o.call(r)).done)&&(a.push(n.value),a.length!==t);c=!0);}catch(e){u=!0,i=e}finally{try{if(!c&&null!=r.return&&(s=r.return(),Object(s)!==s))return}finally{if(u)throw i}}return a}}(e,t)||h(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e){return l="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},l(e)}function h(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function p(){
1
+ function e(e){return function(e){if(Array.isArray(e))return t(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,r){if(!e)return;if("string"==typeof e)return t(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return t(e,r)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function r(e,t){if("function"!=typeof t&&null!==t)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&&n(e,t)}function n(e,t){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},n(e,t)}function i(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=o(e);if(t){var i=o(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===s(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,r)}}function o(e){return o=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},o(e)}function s(e){return s="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},s(e)}function a(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */a=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function l(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{l({},"")}catch(e){l=function(e,t,r){return e[t]=r}}function h(e,t,r,i){var o=t&&t.prototype instanceof f?t:f,s=Object.create(o.prototype),a=new T(i||[]);return n(s,"_invoke",{value:S(e,r,a)}),s}function d(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=h;var p={};function f(){}function v(){}function m(){}var y={};l(y,o,(function(){return this}));var _=Object.getPrototypeOf,g=_&&_(_(C([])));g&&g!==t&&r.call(g,o)&&(y=g);var b=m.prototype=f.prototype=Object.create(y);function w(e){["next","throw","return"].forEach((function(t){l(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function i(n,o,a,c){var u=d(e[n],e,o);if("throw"!==u.type){var l=u.arg,h=l.value;return h&&"object"==s(h)&&r.call(h,"__await")?t.resolve(h.__await).then((function(e){i("next",e,a,c)}),(function(e){i("throw",e,a,c)})):t.resolve(h).then((function(e){l.value=e,a(l)}),(function(e){return i("throw",e,a,c)}))}c(u.arg)}var o;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){i(e,r,t,n)}))}return o=o?o.then(n,n):n()}})}function S(e,t,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return P()}for(r.method=i,r.arg=o;;){var s=r.delegate;if(s){var a=O(s,r);if(a){if(a===p)continue;return a}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=d(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===p)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,O(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var i=d(n,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,p;var o=i.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,p):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,p)}function x(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function E(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function T(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(x,this),this.reset(!0)}function C(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:P}}function P(){return{value:void 0,done:!0}}return v.prototype=m,n(b,"constructor",{value:m,configurable:!0}),n(m,"constructor",{value:v,configurable:!0}),v.displayName=l(m,u,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===v||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,m):(e.__proto__=m,l(e,u,"GeneratorFunction")),e.prototype=Object.create(b),e},e.awrap=function(e){return{__await:e}},w(k.prototype),l(k.prototype,c,(function(){return this})),e.AsyncIterator=k,e.async=function(t,r,n,i,o){void 0===o&&(o=Promise);var s=new k(h(t,r,n,i),o);return e.isGeneratorFunction(r)?s:s.next().then((function(e){return e.done?e.value:s.next()}))},w(b),l(b,u,"Generator"),l(b,o,(function(){return this})),l(b,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,T.prototype={constructor:T,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return s.type="throw",s.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],s=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var a=r.call(o,"catchLoc"),c=r.call(o,"finallyLoc");if(a&&c){if(this.prev<o.catchLoc)return n(o.catchLoc,!0);if(this.prev<o.finallyLoc)return n(o.finallyLoc)}else if(a){if(this.prev<o.catchLoc)return n(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return n(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var s=o?o.completion:{};return s.type=e,s.arg=t,o?(this.method="next",this.next=o.finallyLoc,p):this.complete(s)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),p},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),E(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;E(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},e}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,h(n.key),n)}}function l(e,t,r){return t&&u(e.prototype,t),r&&u(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function h(e){var t=function(e,t){if("object"!==s(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===s(t)?t:String(t)}function d(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=v(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,s=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){a=!0,o=e},f:function(){try{s||null==r.return||r.return()}finally{if(a)throw o}}}}function p(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,o,s,a=[],c=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=o.call(r)).done)&&(a.push(n.value),a.length!==t);c=!0);}catch(e){u=!0,i=e}finally{try{if(!c&&null!=r.return&&(s=r.return(),Object(s)!==s))return}finally{if(u)throw i}}return a}}(e,t)||v(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f(e){return f="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},f(e)}function v(e,t){if(e){if("string"==typeof e)return m(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(e,t):void 0}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function y(){
2
2
  /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
3
- p=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",a=i.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,i){var o=t&&t.prototype instanceof f?t:f,s=Object.create(o.prototype),a=new C(i||[]);return n(s,"_invoke",{value:S(e,r,a)}),s}function h(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function f(){}function v(){}function m(){}var _={};c(_,o,(function(){return this}));var y=Object.getPrototypeOf,g=y&&y(y(T([])));g&&g!==t&&r.call(g,o)&&(_=g);var b=m.prototype=f.prototype=Object.create(_);function w(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function i(n,o,s,a){var c=h(e[n],e,o);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==l(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){i("next",e,s,a)}),(function(e){i("throw",e,s,a)})):t.resolve(d).then((function(e){u.value=e,s(u)}),(function(e){return i("throw",e,s,a)}))}a(c.arg)}var o;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){i(e,r,t,n)}))}return o=o?o.then(n,n):n()}})}function S(e,t,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return P()}for(r.method=i,r.arg=o;;){var s=r.delegate;if(s){var a=x(s,r);if(a){if(a===d)continue;return a}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=h(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function x(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,x(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var i=h(n,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,d;var o=i.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function E(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function C(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function T(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:P}}function P(){return{value:void 0,done:!0}}return v.prototype=m,n(b,"constructor",{value:m,configurable:!0}),n(m,"constructor",{value:v,configurable:!0}),v.displayName=c(m,a,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===v||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,m):(e.__proto__=m,c(e,a,"GeneratorFunction")),e.prototype=Object.create(b),e},e.awrap=function(e){return{__await:e}},w(k.prototype),c(k.prototype,s,(function(){return this})),e.AsyncIterator=k,e.async=function(t,r,n,i,o){void 0===o&&(o=Promise);var s=new k(u(t,r,n,i),o);return e.isGeneratorFunction(r)?s:s.next().then((function(e){return e.done?e.value:s.next()}))},w(b),c(b,a,"Generator"),c(b,o,(function(){return this})),c(b,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=T,C.prototype={constructor:C,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return s.type="throw",s.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],s=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var a=r.call(o,"catchLoc"),c=r.call(o,"finallyLoc");if(a&&c){if(this.prev<o.catchLoc)return n(o.catchLoc,!0);if(this.prev<o.finallyLoc)return n(o.finallyLoc)}else if(a){if(this.prev<o.catchLoc)return n(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return n(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var s=o?o.completion:{};return s.type=e,s.arg=t,o?(this.method="next",this.next=o.finallyLoc,d):this.complete(s)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),E(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;E(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:T(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function f(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,(i=n.key,o=void 0,o=function(e,t){if("object"!==l(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==l(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(i,"string"),"symbol"===l(o)?o:String(o)),n)}var i,o}function v(e,t,r){return t&&f(e.prototype,t),r&&f(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function m(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _(e,t){if("function"!=typeof t&&null!==t)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&&S(e,t)}function y(e){var t=k();return function(){var r,n=x(e);if(t){var i=x(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===l(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return g(e)}(this,r)}}function g(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function b(e){var t="function"==typeof Map?new Map:void 0;return b=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;var r;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return w(e,arguments,x(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),S(n,e)},b(e)}function w(e,t,r){return w=k()?Reflect.construct.bind():function(e,t,r){var n=[null];n.push.apply(n,t);var i=new(Function.bind.apply(e,n));return r&&S(i,r.prototype),i},w.apply(null,arguments)}function k(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function S(e,t){return S=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},S(e,t)}function x(e){return x=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},x(e)}var O,E,C,T,P,A,R="https://test.stytch.com",L="https://api.stytch.com",j="https://js.stytch.com/clientside-services/index.html",D="https://web.stytch.com",I="https://accounts.google.com/gsi",M="".concat(I,"/client");!function(e){e.emailMagicLinks="emailMagicLinks",e.oauth="oauth",e.otp="otp",e.crypto="crypto",e.passwords="passwords"}(O||(O={})),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"}(E||(E={})),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"}(C||(C={})),function(e){e.embedded="embedded",e.floating="floating"}(T||(T={})),function(e){e.SMS="sms",e.WhatsApp="whatsapp",e.Email="email"}(P||(P={})),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"}(A||(A={}));var U,N=function(e){_(r,b(Error));var t=y(r);function r(e,n){var i;return m(this,r),(i=t.call(this,e+"\n"+n)).message=e+"\n"+n,i.name="SDKAPIUnreachableError",i.details=n,Object.setPrototypeOf(g(i),r.prototype),i}return v(r)}(),K=function(e){_(r,b(Error));var t=y(r);function r(e,n){var i;return m(this,r),(i=t.call(this)).name="StytchSDKUsageError",i.message="Invalid call to ".concat(e,"\n")+n,i}return v(r)}(),F=function(e){_(r,b(Error));var t=y(r);function r(e){var n,i;m(this,r),(n=t.call(this)).name="StytchSDKSchemaError";var o=null===(i=e.body)||void 0===i?void 0:i.map((function(e){return"".concat(e.dataPath,": ").concat(e.message)})).join("\n");return n.message="[400] Request does not match expected schema\n".concat(o),n}return v(r)}(),B=function(e){_(r,b(Error));var t=y(r);function r(e){var n;m(this,r),(n=t.call(this)).name="StytchSDKAPIError";var i=e.status_code,o=e.error_type,s=e.error_message,a=e.error_url,c=e.request_id;return n.error_type=o,n.error_message=s,n.error_url=a,n.request_id=c,n.status_code=i,n.message="[".concat(i,"] ").concat(o,"\n")+"".concat(s,"\n")+"See ".concat(a," for more information.\n")+(c?"request_id: ".concat(c,"\n"):""),n}return v(r)}();!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"}(U||(U={}));var G=function(){function e(){m(this,e)}return v(e,null,[{key:"marshall",value:function(e){return Object.assign(Object.assign({},e),{name:e.name,message:e.message,stack:e.stack})}},{key:"inflate",value:function(e,t){var r=new e(t);return Object.assign(r,t),Object.setPrototypeOf(r,e.prototype),r}},{key:"unmarshall",value:function(t){if("name"in t)switch(t.name){case"SDKAPIUnreachableError":return e.inflate(N,t);case"StytchSDKSchemaError":return e.inflate(F,t);case"StytchSDKAPIError":return e.inflate(B,t);case"TypeError":return e.inflate(TypeError,t);case"SyntaxError":return e.inflate(SyntaxError,t);case"ReferenceError":return e.inflate(ReferenceError,t);case"RangeError":return e.inflate(RangeError,t);case"EvalError":return e.inflate(EvalError,t);case"URIError":return e.inflate(URIError,t)}return e.inflate(Error,t)}}]),e}();function W(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r}function q(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))}var H,J=function(){function e(t){m(this,e),this.iframeURL=t,this.createIframe()}return v(e,[{key:"createIframe",value:function(){var e=document.querySelector('[src~="'.concat(this.iframeURL,'"]'));e?oe.warn("It looks like you're creating multiple copies of the Stytch client. This behavior is unsupported, and unintended side effects may occur. Make sure you are creating the Stytch client at the global level, and not inside a component's render function."):((e=document.createElement("iframe")).src=this.iframeURL,e.style.position="absolute",e.style.width="0",e.style.height="0",e.style.border="0",document.body.appendChild(e)),"true"!==e.dataset.loaded?this.frame=new Promise((function(t){e.addEventListener("load",(function(){e.dataset.loaded="true",t(e)}),{once:!0})})):this.frame=Promise.resolve(e)}},{key:"call",value:function(e,t){return q(this,void 0,void 0,p().mark((function r(){var n,i,o=this;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.frame;case 2:return n=r.sent,i=new MessageChannel,r.abrupt("return",new Promise((function(r,s){var a;i.port1.onmessage=function(e){var t=e.data;i.port1.close(),t.success?r(t.payload):s(G.unmarshall(t.error))};var c={method:e,args:t};null===(a=n.contentWindow)||void 0===a||a.postMessage(c,o.iframeURL,[i.port2])})));case 5:case"end":return r.stop()}}),r,this)})))}}]),e}(),z=new Uint8Array(16);function V(){if(!H&&!(H="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return H(z)}var Y=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;for(var $=[],X=0;X<256;++X)$.push((X+256).toString(16).substr(1));function Z(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=($[e[t+0]]+$[e[t+1]]+$[e[t+2]]+$[e[t+3]]+"-"+$[e[t+4]]+$[e[t+5]]+"-"+$[e[t+6]]+$[e[t+7]]+"-"+$[e[t+8]]+$[e[t+9]]+"-"+$[e[t+10]]+$[e[t+11]]+$[e[t+12]]+$[e[t+13]]+$[e[t+14]]+$[e[t+15]]).toLowerCase();if(!function(e){return"string"==typeof e&&Y.test(e)}(r))throw TypeError("Stringified UUID is invalid");return r}function Q(e,t,r){var n=(e=e||{}).random||(e.rng||V)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,t){r=r||0;for(var i=0;i<16;++i)t[r+i]=n[i];return t}return Z(n)}var ee={};function te(e,t){return q(this,void 0,void 0,p().mark((function r(){return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(void 0===ee[e]){r.next=2;break}return r.abrupt("return",ee[e]);case 2:return ee[e]=re(e,t),r.abrupt("return",ee[e]);case 4:case"end":return r.stop()}}),r)})))}function re(e,t){return new Promise((function(r,n){var i=function(e){var t=ne(e);if(t[0])return t[0]}(e);if(i&&"true"===i.dataset.loaded)try{r(t())}catch(t){return n(new Error("".concat(e," already loaded, but module was not found in global scope: ").concat(t)))}var o=function(e){var t=document.createElement("script");return t.setAttribute("src",e),t.setAttribute("async","true"),t.setAttribute("defer","true"),document.head.appendChild(t),t}(e);o.addEventListener("load",(function(){o.dataset.loaded="true";try{r(t())}catch(t){n(new Error("".concat(e," was loaded, but module was not found in global scope: ").concat(t)))}})),o.addEventListener("error",(function(t){n(new Error("".concat(e," could not be loaded: ").concat(t)))}))}))}var ne=function(e){return document.querySelectorAll('script[src="'.concat(e,'"]'))};var ie=["[Stytch]"],oe={debug:function(){return false},log:function(){for(var e,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return(e=console).log.apply(e,ie.concat(r))},warn:function(){for(var e,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return(e=console).warn.apply(e,ie.concat(r))},error:function(){for(var e,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return(e=console).error.apply(e,ie.concat(r))}},se="\nYou can find your public token at https://stytch.com/dashboard/api-keys.",ae=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 l(r)===l(n)&&(null===r||null===n?r===n:"object"===l(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=u(e,1)[0];return!t.includes(r)})).every((function(t){var r=u(t,2),i=r[0],o=r[1];return e(o,n[i])})):r===n)}},ce=function(e){var t={isObject:function(r,n){var i="object"===l(n)&&!Array.isArray(n)&&null!==n;if(!i)throw new K(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)throw new K(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))throw new K(e,r+" must be an array of strings.");var i,o=c(n);try{for(o.s();!(i=o.n()).done;){if("string"!=typeof i.value)throw new K(e,r+" must be an array of strings.")}}catch(e){o.e(e)}finally{o.f()}return t},isNumber:function(r,n){if("number"!=typeof n)throw new K(e,r+" must be a number.");return t},isOptionalNumber:function(e,r){return void 0===r?t:t.isNumber(e,r)}};return t},ue=function(e){return W(e,["request_id","status_code"])},le=function(e){return W(e,["__user"])};function he(e){var t=e.method,r=e.errorMessage,n=e.finalURL,i=e.basicAuthHeader,o=e.xSDKClientHeader,s=e.xSDKParentHostHeader,a=e.body;return q(this,void 0,void 0,p().mark((function e(){var c,u,l,h,d;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return c={Authorization:i,"Content-Type":"application/json","X-SDK-Client":o},s&&(c["X-SDK-Parent-Host"]=s),u={method:t,headers:c,body:a&&JSON.stringify(a)},e.prev=3,e.next=6,fetch(n,u);case 6:l=e.sent,e.next=14;break;case 9:if(e.prev=9,e.t0=e.catch(3),"Failed to fetch"!==e.t0.message){e.next=13;break}throw new N(r,"Unable to contact the Stytch servers. Are you online?");case 13:throw e.t0;case 14:if(200===l.status){e.next=27;break}return e.prev=15,e.next=18,l.json();case 18:h=e.sent,e.next=24;break;case 21:throw e.prev=21,e.t1=e.catch(15),new N(r,"Invalid or no response from server");case 24:if(!("body"in h||"params"in h||"query"in h)){e.next=26;break}throw new F(h);case 26:throw new B(h);case 27:return e.prev=27,e.next=30,l.json();case 30:return d=e.sent,e.abrupt("return",d.data);case 34:throw e.prev=34,e.t2=e.catch(27),new N(r,"Invalid response from the Stytch servers.");case 37:case"end":return e.stop()}}),e,null,[[3,9],[15,21],[27,34]])})))}var de=function(){function e(t,r){var n=this;m(this,e),this._subscriptionService=t,this._headlessSessionClient=r,this._onSessionChange=function(e){e?n.scheduleBackgroundRefresh():n.cancelBackgroundRefresh()},this._reauthenticateWithBackoff=function(){var t=function(t){return function(r){return e.isUnrecoverableRecoverableError(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.subscribeToSession(this._onSessionChange)}return v(e,[{key:"performBackgroundRefresh",value:function(){var e=this;this._reauthenticateWithBackoff().then((function(){e.scheduleBackgroundRefresh()})).catch((function(){oe.warn("Session background refresh failed. Signalling to app that user is logged out."),e._subscriptionService.destroyState()}))}},{key:"scheduleBackgroundRefresh",value:function(){var t=this;this.cancelBackgroundRefresh(),this.timeout=setTimeout((function(){t.performBackgroundRefresh()}),e.REFRESH_INTERVAL_MS)}},{key:"cancelBackgroundRefresh",value:function(){null!==this.timeout&&(clearTimeout(this.timeout),this.timeout=null)}}],[{key:"timeoutForAttempt",value:function(e){return Math.floor(350*Math.random())-175+2e3*Math.pow(2,e)}},{key:"isUnrecoverableRecoverableError",value:function(e){return"unauthorized_credentials"===e.error_type||"user_unauthenticated"===e.error_type}}]),e}();de.REFRESH_INTERVAL_MS=18e4;var pe=15,fe=800,ve=function(){function e(t){m(this,e),this.maxBatchSize=t.maxBatchSize,this.logEventURL=t.logEventURL,setInterval(this.flush.bind(this),t.intervalDurationMs),this.batch=[]}return v(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 q(this,void 0,void 0,p().mark((function e(){var t;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.batch.length){e.next=2;break}return e.abrupt("return");case 2:return t=this.batch,this.batch=[],e.prev=4,e.next=7,fetch(this.logEventURL,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});case 7:e.next=11;break;case 9:e.prev=9,e.t0=e.catch(4);case 11:case"end":return e.stop()}}),e,this,[[4,9]])})))}}]),e}(),me=v((function e(t,r){var n=this;m(this,e),this._networkClient=t,this._subscriptionService=r,this.get=function(){return q(n,void 0,void 0,p().mark((function e(){var t,r;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._networkClient.fetchSDK({url:"/users/me",errorMessage:"Failed to retrieve user info.",method:"GET"});case 2:return t=e.sent,r=ue(t),this._subscriptionService.updateUser(r),e.abrupt("return",r);case 6:case"end":return e.stop()}}),e,this)})))},this.getSync=function(){return n._subscriptionService.getUser()},this.update=function(e){return q(n,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.user.update").isOptionalObject("untrusted_metadata",e.untrusted_metadata),t.next=3,this._networkClient.fetchSDK({url:"/users/me",body:e,errorMessage:"Failed to update user.",method:"PUT"});case 3:return r=t.sent,n=ue(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",le(r));case 7:case"end":return t.stop()}}),t,this)})))},this.deleteEmail=function(e){return q(n,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/emails/".concat(e),errorMessage:"Failed to delete email.",method:"DELETE"});case 2:return r=t.sent,n=ue(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))},this.deletePhoneNumber=function(e){return q(n,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/phone_numbers/".concat(e),errorMessage:"Failed to delete phone number.",method:"DELETE"});case 2:return r=t.sent,n=ue(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))},this.deleteTOTP=function(e){return q(n,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/totps/".concat(e),errorMessage:"Failed to delete TOTP.",method:"DELETE"});case 2:return r=t.sent,n=ue(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))},this.deleteOAuthRegistration=function(e){return q(n,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/oauth/".concat(e),errorMessage:"Failed to delete OAuth registration.",method:"DELETE"});case 2:return r=t.sent,n=ue(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))},this.deleteWebauthnRegistration=function(e){return q(n,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/webauthn_registrations/".concat(e),errorMessage:"Failed to delete WebAuthn registration.",method:"DELETE"});case 2:return r=t.sent,n=ue(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))},this.onChange=function(e){return n._subscriptionService.subscribeToUser(e)}})),_e=function(){function e(t,r){var n=this;m(this,e),this._networkClient=t,this._subscriptionService=r,this.getSync=function(){return n._subscriptionService.getSession()},this.onChange=function(e){return n._subscriptionService.subscribeToSession(e)},this.revoke=function(){return q(n,void 0,void 0,p().mark((function e(){var t;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._networkClient.fetchSDK({url:"/sessions/revoke",errorMessage:"Error revoking session",method:"POST"});case 2:t=e.sent;try{this._subscriptionService.destroyState()}catch(e){}return e.abrupt("return",t);case 5:case"end":return e.stop()}}),e,this)})))},this.authenticate=function(e){return q(n,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,r={session_duration_minutes:null==e?void 0:e.session_duration_minutes},t.next=4,this._networkClient.fetchSDK({url:"/sessions/authenticate",body:r,errorMessage:"Error authenticating session",method:"POST"});case 4:return n=t.sent,this._subscriptionService.updateState({session:n.session,user:n.user,session_token:n.session_token,session_jwt:n.session_jwt}),t.abrupt("return",le(n));case 9:throw t.prev=9,t.t0=t.catch(0),this._subscriptionService.destroyState(),t.t0;case 13:case"end":return t.stop()}}),t,this,[[0,9]])})))}}return v(e,[{key:"getTokens",value:function(){return this._subscriptionService.getTokens()}}]),e}(),ye=Promise.resolve({pkceRequiredForEmailMagicLinks:!1}),ge=function(){function e(t,r,n){var i=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:ye,s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return Promise.resolve(void 0)};m(this,e),this._networkClient=t,this._subscriptionService=r,this._pkceManager=n,this._config=o,this.executeRecaptcha=s,this.email={loginOrCreate:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return q(i,void 0,void 0,p().mark((function r(){var n,i,o,s;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this._config;case 2:if(n=r.sent,i=n.pkceRequiredForEmailMagicLinks,o=void 0,!i){r.next=9;break}return r.next=8,this.getCodeChallenge();case 8:o=r.sent;case 9:return r.t0=Object,r.t1=Object.assign({},t),r.t2=e,r.t3=o,r.next=15,this.executeRecaptcha();case 15:return r.t4=r.sent,r.t5={email:r.t2,code_challenge:r.t3,captcha_token:r.t4},s=r.t0.assign.call(r.t0,r.t1,r.t5),r.abrupt("return",this._networkClient.fetchSDK({url:"/magic_links/email/login_or_create",body:s,errorMessage:"Failed to send magic link",method:"POST"}));case 19:case"end":return r.stop()}}),r,this)})))},send:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return q(i,void 0,void 0,p().mark((function r(){var n,i,o,s,a,c;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this._config;case 2:if(n=r.sent,i=n.pkceRequiredForEmailMagicLinks,o=void 0,!i){r.next=9;break}return r.next=8,this.getCodeChallenge();case 8:o=r.sent;case 9:return r.t0=Object,r.t1=Object.assign({},t),r.t2=e,r.t3=o,r.next=15,this.executeRecaptcha();case 15:return r.t4=r.sent,r.t5={email:r.t2,code_challenge:r.t3,captcha_token:r.t4},s=r.t0.assign.call(r.t0,r.t1,r.t5),a=!!this._subscriptionService.getSession(),c=a?"/magic_links/email/send/secondary":"/magic_links/email/send/primary",r.abrupt("return",this._networkClient.fetchSDK({url:c,body:s,errorMessage:"Failed to send magic link",method:"POST"}));case 21:case"end":return r.stop()}}),r,this)})))}},this.authenticate=function(e,t){return q(i,void 0,void 0,p().mark((function r(){var n,i,o;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ce("stytch.magicLinks.authenticate").isString("Token",e).isNumber("session_duration_minutes",t.session_duration_minutes),i=Object.assign({token:e,code_verifier:null===(n=this._pkceManager.getPKPair())||void 0===n?void 0:n.code_verifier},t),r.next=4,this._networkClient.fetchSDK({url:"/magic_links/authenticate",body:i,errorMessage:"Failed to authenticate token.",method:"POST"});case 4:return o=r.sent,this._pkceManager.clearPKPair(),this._subscriptionService.updateState({session:o.session,user:o.user,session_token:o.session_token,session_jwt:o.session_jwt}),r.abrupt("return",le(o));case 8:case"end":return r.stop()}}),r,this)})))}}return v(e,[{key:"getCodeChallenge",value:function(){return q(this,void 0,void 0,p().mark((function e(){var t;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(t=this._pkceManager.getPKPair())){e.next=3;break}return e.abrupt("return",t.code_challenge);case 3:return e.next=5,this._pkceManager.startPKCETransaction();case 5:return t=e.sent,e.abrupt("return",t.code_challenge);case 7:case"end":return e.stop()}}),e,this)})))}}]),e}(),be=v((function e(t,r){var n=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){return Promise.resolve(void 0)};m(this,e),this._networkClient=t,this._subscriptionService=r,this.executeRecaptcha=i,this.sms={loginOrCreate:function(e,t){return q(n,void 0,void 0,p().mark((function r(){var n,i;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{phone_number:e,captcha_token:n}),r.abrupt("return",this._networkClient.fetchSDK({url:"/otps/sms/login_or_create",body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 5:case"end":return r.stop()}}),r,this)})))},send:function(e,t){return q(n,void 0,void 0,p().mark((function r(){var n,i,o,s;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{phone_number:e,captcha_token:n}),o=!!this._subscriptionService.getSession(),s=o?"/otps/sms/send/secondary":"/otps/sms/send/primary",r.abrupt("return",this._networkClient.fetchSDK({url:s,body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 7:case"end":return r.stop()}}),r,this)})))}},this.whatsapp={loginOrCreate:function(e,t){return q(n,void 0,void 0,p().mark((function r(){var n,i;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{phone_number:e,captcha_token:n}),r.abrupt("return",this._networkClient.fetchSDK({url:"/otps/whatsapp/login_or_create",body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 5:case"end":return r.stop()}}),r,this)})))},send:function(e,t){return q(n,void 0,void 0,p().mark((function r(){var n,i,o,s;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{phone_number:e,captcha_token:n}),o=!!this._subscriptionService.getSession(),s=o?"/otps/whatsapp/send/secondary":"/otps/whatsapp/send/primary",r.abrupt("return",this._networkClient.fetchSDK({url:s,body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 7:case"end":return r.stop()}}),r,this)})))}},this.email={loginOrCreate:function(e,t){return q(n,void 0,void 0,p().mark((function r(){var n,i;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{email:e,captcha_token:n}),r.abrupt("return",this._networkClient.fetchSDK({url:"/otps/email/login_or_create",body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 5:case"end":return r.stop()}}),r,this)})))},send:function(e,t){return q(n,void 0,void 0,p().mark((function r(){var n,i,o,s;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{email:e,captcha_token:n}),o=!!this._subscriptionService.getSession(),s=o?"/otps/email/send/secondary":"/otps/email/send/primary",r.abrupt("return",this._networkClient.fetchSDK({url:s,body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 7:case"end":return r.stop()}}),r,this)})))}},this.authenticate=function(e,t,r){return q(n,void 0,void 0,p().mark((function n(){var i,o;return p().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return ce("stytch.otps.authenticate").isString("Code",e).isNumber("session_duration_minutes",r.session_duration_minutes),i=Object.assign({token:e,method_id:t},r),n.next=4,this._networkClient.fetchSDK({url:"/otps/authenticate",body:i,errorMessage:"Failed to authenticate token.",method:"POST"});case 4:return o=n.sent,this._subscriptionService.updateState({session:o.session,user:o.user,session_token:o.session_token,session_jwt:o.session_jwt}),n.abrupt("return",le(o));case 7:case"end":return n.stop()}}),n,this)})))}})),we=function(){function e(t,r,n,i,o){m(this,e),this._networkClient=t,this._subscriptionService=r,this._pkceManager=n,this._dynamicConfig=i,this._config=o,this.google={start:this.startOAuthFlow(E.Google)},this.apple={start:this.startOAuthFlow(E.Apple)},this.microsoft={start:this.startOAuthFlow(E.Microsoft)},this.github={start:this.startOAuthFlow(E.Github)},this.gitlab={start:this.startOAuthFlow(E.GitLab)},this.facebook={start:this.startOAuthFlow(E.Facebook)},this.discord={start:this.startOAuthFlow(E.Discord)},this.slack={start:this.startOAuthFlow(E.Slack)},this.amazon={start:this.startOAuthFlow(E.Amazon)},this.bitbucket={start:this.startOAuthFlow(E.Bitbucket)},this.linkedin={start:this.startOAuthFlow(E.LinkedIn)},this.coinbase={start:this.startOAuthFlow(E.Coinbase)},this.twitch={start:this.startOAuthFlow(E.Twitch)}}return v(e,[{key:"authenticate",value:function(e,t){return q(this,void 0,void 0,p().mark((function r(){var n,i;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ce("stytch.oauth.authenticate").isString("Token",e).isNumber("session_duration_minutes",t.session_duration_minutes),(n=this._pkceManager.getPKPair())||oe.warn("No code verifier found in local storage for OAuth 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."),r.next=5,this._networkClient.fetchSDK({url:"/oauth/authenticate",method:"POST",body:Object.assign({token:e,code_verifier:null==n?void 0:n.code_verifier},t),errorMessage:"Failed to authenticate token"});case 5:return i=r.sent,this._pkceManager.clearPKPair(),this._subscriptionService.updateState({session:i.session,user:ue(i.__user),session_token:i.session_token,session_jwt:i.session_jwt}),r.abrupt("return",le(i));case 9:case"end":return r.stop()}}),r,this)})))}},{key:"getBaseApiUrl",value:function(){return q(this,void 0,void 0,p().mark((function e(){var t,r;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._dynamicConfig;case 2:if(t=e.sent,!(r=t.cnameDomain)){e.next=6;break}return e.abrupt("return","https://".concat(r));case 6:if(!this._config.publicToken.includes("public-token-test")){e.next=8;break}return e.abrupt("return",this._config.testAPIURL);case 8:return e.abrupt("return",this._config.liveAPIURL);case 9:case"end":return e.stop()}}),e,this)})))}},{key:"startOAuthFlow",value:function(e){var t=this;return function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=r.login_redirect_url,i=r.signup_redirect_url,o=r.custom_scopes;return q(t,void 0,void 0,p().mark((function t(){var r,s,a,c,u,l;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._dynamicConfig;case 2:return r=t.sent,s=r.cnameDomain,a=r.pkceRequiredForOAuth,t.next=7,this.getBaseApiUrl();case 7:if(c=t.sent,this._networkClient.logEvent({name:"start_oauth_flow",details:{provider_type:e,custom_scopes:o,cname_domain:s,pkce:a}}),(u=new URL("".concat(c,"/v1/public/oauth/").concat(e,"/start"))).searchParams.set("public_token",this._config.publicToken),!a){t.next=18;break}return t.next=14,this._pkceManager.startPKCETransaction();case 14:l=t.sent,u.searchParams.set("code_challenge",l.code_challenge),t.next=19;break;case 18:this._pkceManager.clearPKPair();case 19:o&&(ce("startOAuthFlow").isStringArray("custom_scopes",o),u.searchParams.set("custom_scopes",o.join(" "))),n&&u.searchParams.set("login_redirect_url",n),i&&u.searchParams.set("signup_redirect_url",i),window.location.href=u.toString();case 23:case"end":return t.stop()}}),t,this)})))}}}]),e}(),ke=function(){function e(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){return Promise.resolve(void 0)};m(this,e),this._networkClient=t,this._subscriptionService=r,this.executeRecaptcha=n}return v(e,[{key:"authenticateStart",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r,n,i;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.cryptoWallets.authenticateStart").isString("crypto_wallet_address",e.crypto_wallet_address).isString("crypto_wallet_type",e.crypto_wallet_type),r=!!this._subscriptionService.getSession(),t.next=4,this.executeRecaptcha();case 4:return n=t.sent,i=r?"/crypto_wallets/authenticate/start/secondary":"/crypto_wallets/authenticate/start/primary",t.abrupt("return",this._networkClient.fetchSDK({url:i,method:"POST",errorMessage:"Failed to start wallet authentication.",body:{crypto_wallet_address:e.crypto_wallet_address,crypto_wallet_type:e.crypto_wallet_type,captcha_token:n}}));case 7:case"end":return t.stop()}}),t,this)})))}},{key:"authenticate",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.cryptoWallets.authenticate").isString("signature",e.signature).isString("crypto_wallet_address",e.crypto_wallet_address).isString("crypto_wallet_type",e.crypto_wallet_type).isNumber("session_duration_minutes",e.session_duration_minutes),t.next=3,this._networkClient.fetchSDK({url:"/crypto_wallets/authenticate",method:"POST",errorMessage:"Failed to authenticate.",body:{session_duration_minutes:e.session_duration_minutes,crypto_wallet_address:e.crypto_wallet_address,crypto_wallet_type:e.crypto_wallet_type,signature:e.signature}});case 3:return r=t.sent,this._subscriptionService.updateState({session:r.session,user:ue(r.__user),session_token:r.session_token,session_jwt:r.session_jwt}),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))}}]),e}(),Se=function(){function e(t,r){m(this,e),this._networkClient=t,this._subscriptionService=r}return v(e,[{key:"create",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.totps.create").isNumber("expiration_minutes",e.expiration_minutes),t.next=3,this._networkClient.fetchSDK({url:"/totps",method:"POST",errorMessage:"Failed to create TOTP",body:{expiration_minutes:e.expiration_minutes}});case 3:return r=t.sent,this._subscriptionService.updateUser(r.__user),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))}},{key:"authenticate",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.totps.authenticate").isNumber("session_duration_minutes",e.session_duration_minutes).isString("totp_code",e.totp_code),t.next=3,this._networkClient.fetchSDK({url:"/totps/authenticate",method:"POST",errorMessage:"Failed to authenticate TOTP",body:{session_duration_minutes:e.session_duration_minutes,totp_code:e.totp_code}});case 3:return r=t.sent,this._subscriptionService.updateState({session:r.session,user:r.__user,session_token:r.session_token,session_jwt:r.session_jwt}),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))}},{key:"recoveryCodes",value:function(){return q(this,void 0,void 0,p().mark((function e(){return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this._networkClient.fetchSDK({url:"/totps/recovery_codes",method:"POST",errorMessage:"Failed to retrieve recovery codes"}));case 1:case"end":return e.stop()}}),e,this)})))}},{key:"recover",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.totps.recover").isNumber("session_duration_minutes",e.session_duration_minutes).isString("recovery_code",e.recovery_code),t.next=3,this._networkClient.fetchSDK({url:"/totps/recover",method:"POST",errorMessage:"Failed to recover TOTP",body:{session_duration_minutes:e.session_duration_minutes,recovery_code:e.recovery_code}});case 3:return r=t.sent,this._subscriptionService.updateState({session:r.session,user:r.__user,session_token:r.session_token,session_jwt:r.session_jwt}),t.abrupt("return",le(r));case 6:case"end":return t.stop()}}),t,this)})))}}]),e}();function xe(e){for(var t="==".slice(0,(4-e.length%4)%4),r=e.replace(/-/g,"+").replace(/_/g,"/")+t,n=atob(r),i=new ArrayBuffer(n.length),o=new Uint8Array(i),s=0;s<n.length;s++)o[s]=n.charCodeAt(s);return i}function Oe(e){var t,r="",n=c(new Uint8Array(e));try{for(n.s();!(t=n.n()).done;){var i=t.value;r+=String.fromCharCode(i)}}catch(e){n.e(e)}finally{n.f()}return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}var Ee="copy",Ce="convert";function Te(e,t,r){if(t===Ee)return r;if(t===Ce)return e(r);if(t instanceof Array)return r.map((function(r){return Te(e,t[0],r)}));if(t instanceof Object){for(var n={},i=0,o=Object.entries(t);i<o.length;i++){var s=u(o[i],2),a=s[0],c=s[1];if(c.derive){var l=c.derive(r);void 0!==l&&(r[a]=l)}if(a in r)null!=r[a]?n[a]=Te(e,c.schema,r[a]):n[a]=null;else if(c.required)throw new Error("Missing key: ".concat(a))}return n}}function Pe(e,t){return{required:!0,schema:e,derive:t}}function Ae(e){return{required:!0,schema:e}}function Re(e){return{required:!1,schema:e}}var Le={type:Ae(Ee),id:Ae(Ce),transports:Re(Ee)},je={appid:Re(Ee),appidExclude:Re(Ee),credProps:Re(Ee)},De={appid:Re(Ee),appidExclude:Re(Ee),credProps:Re(Ee)},Ie={publicKey:Ae({rp:Ae(Ee),user:Ae({id:Ae(Ce),name:Ae(Ee),displayName:Ae(Ee)}),challenge:Ae(Ce),pubKeyCredParams:Ae(Ee),timeout:Re(Ee),excludeCredentials:Re([Le]),authenticatorSelection:Re(Ee),attestation:Re(Ee),extensions:Re(je)}),signal:Re(Ee)},Me={type:Ae(Ee),id:Ae(Ee),rawId:Ae(Ce),authenticatorAttachment:Re(Ee),response:Ae({clientDataJSON:Ae(Ce),attestationObject:Ae(Ce),transports:Pe(Ee,(function(e){var t;return(null==(t=e.getTransports)?void 0:t.call(e))||[]}))}),clientExtensionResults:Pe(De,(function(e){return e.getClientExtensionResults()}))},Ue={mediation:Re(Ee),publicKey:Ae({challenge:Ae(Ce),timeout:Re(Ee),rpId:Re(Ee),allowCredentials:Re([Le]),userVerification:Re(Ee),extensions:Re(je)}),signal:Re(Ee)},Ne={type:Ae(Ee),id:Ae(Ee),rawId:Ae(Ce),authenticatorAttachment:Re(Ee),response:Ae({clientDataJSON:Ae(Ce),authenticatorData:Ae(Ce),signature:Ae(Ce),userHandle:Ae(Ce)}),clientExtensionResults:Pe(De,(function(e){return e.getClientExtensionResults()}))};function Ke(e){return Te(xe,Ie,e)}function Fe(e){return Te(Oe,Me,e)}function Be(e){return q(this,void 0,void 0,p().mark((function t(){var r;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,navigator.credentials.create(Ke(e));case 2:return r=t.sent,t.abrupt("return",Fe(r));case 4:case"end":return t.stop()}}),t)})))}function Ge(e){return Te(xe,Ue,e)}function We(e){return Te(Oe,Ne,e)}function qe(e){return q(this,void 0,void 0,p().mark((function t(){var r;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,navigator.credentials.get(Ge(e));case 2:return r=t.sent,t.abrupt("return",We(r));case 4:case"end":return t.stop()}}),t)})))}var He=function(){function e(t,r){m(this,e),this._networkClient=t,this._subscriptionService=r}return v(e,[{key:"register",value:function(e){var t;return q(this,void 0,void 0,p().mark((function r(){var n,i,o,s;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ce("stytch.webauthn.register").isOptionalString("domain",null==e?void 0:e.domain).isOptionalString("authenticator_type",null==e?void 0:e.authenticator_type),r.next=3,this._networkClient.fetchSDK({url:"/webauthn/register/start",method:"POST",errorMessage:"Failed to start WebAuthn registration",body:{domain:null!==(t=null==e?void 0:e.domain)&&void 0!==t?t:window.location.hostname,authenticator_type:null==e?void 0:e.authenticator_type}});case 3:return n=r.sent,i=n.public_key_credential_creation_options,r.next=7,Be({publicKey:JSON.parse(i)});case 7:return o=r.sent,r.next=10,this._networkClient.fetchSDK({url:"/webauthn/register",method:"POST",errorMessage:"Failed to register WebAuthn device",body:{public_key_credential:JSON.stringify(o)}});case 10:return s=r.sent,this._subscriptionService.updateUser(s.__user),r.abrupt("return",le(s));case 13:case"end":return r.stop()}}),r,this)})))}},{key:"authenticate",value:function(e){var t;return q(this,void 0,void 0,p().mark((function r(){var n,i,o,s;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ce("stytch.webauthn.register").isOptionalString("domain",e.domain).isNumber("session_duration_minutes",e.session_duration_minutes),r.next=3,this._networkClient.fetchSDK({url:"/webauthn/authenticate/start",method:"POST",errorMessage:"Failed to start WebAuthn authentication",body:{domain:null!==(t=e.domain)&&void 0!==t?t:window.location.hostname}});case 3:return n=r.sent,i=n.public_key_credential_request_options,r.next=7,qe({publicKey:JSON.parse(i)});case 7:return o=r.sent,r.next=10,this._networkClient.fetchSDK({url:"/webauthn/authenticate",method:"POST",errorMessage:"Failed to authenticate WebAuthn device",body:{public_key_credential:JSON.stringify(o),session_duration_minutes:e.session_duration_minutes}});case 10:return s=r.sent,this._subscriptionService.updateState({session:s.session,user:s.__user,session_token:s.session_token,session_jwt:s.session_jwt}),r.abrupt("return",le(s));case 13:case"end":return r.stop()}}),r,this)})))}}]),e}(),Je=Promise.resolve({pkceRequiredForPasswordResets:!1}),ze=function(){function e(t,r,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Je,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return Promise.resolve(void 0)};m(this,e),this._networkClient=t,this._subscriptionService=r,this._pkceManager=n,this._config=i,this.executeRecaptcha=o}return v(e,[{key:"getCodeChallenge",value:function(){return q(this,void 0,void 0,p().mark((function e(){var t,r;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._config;case 2:if(t=e.sent,t.pkceRequiredForPasswordResets){e.next=6;break}return e.abrupt("return",void 0);case 6:if(!(r=this._pkceManager.getPKPair())){e.next=9;break}return e.abrupt("return",r.code_challenge);case 9:return e.next=11,this._pkceManager.startPKCETransaction();case 11:return r=e.sent,e.abrupt("return",r.code_challenge);case 13:case"end":return e.stop()}}),e,this)})))}},{key:"create",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.passwords.create").isString("password",e.password).isString("email",e.email).isNumber("session_duration_minutes",e.session_duration_minutes),t.next=3,this.executeRecaptcha();case 3:return r=t.sent,t.next=6,this._networkClient.fetchSDK({url:"/passwords",method:"POST",errorMessage:"Failed to create password.",body:{email:e.email,password:e.password,session_duration_minutes:e.session_duration_minutes,captcha_token:r}});case 6:return n=t.sent,this._subscriptionService.updateState({session:n.session,user:n.user,session_token:n.session_token,session_jwt:n.session_jwt}),t.abrupt("return",le(n));case 9:case"end":return t.stop()}}),t,this)})))}},{key:"authenticate",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.passwords.authenticate").isString("password",e.password).isString("email",e.email).isNumber("session_duration_minutes",e.session_duration_minutes),t.next=3,this.executeRecaptcha();case 3:return r=t.sent,t.next=6,this._networkClient.fetchSDK({url:"/passwords/authenticate",method:"POST",errorMessage:"Failed to authenticate password.",body:{email:e.email,password:e.password,session_duration_minutes:e.session_duration_minutes,captcha_token:r}});case 6:return n=t.sent,this._subscriptionService.updateState({session:n.session,user:n.user,session_token:n.session_token,session_jwt:n.session_jwt}),t.abrupt("return",le(n));case 9:case"end":return t.stop()}}),t,this)})))}},{key:"resetByEmailStart",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r,n;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.passwords.resetByEmailStart").isString("email",e.email).isOptionalString("login_redirect_url",e.login_redirect_url).isOptionalString("reset_password_redirect_url",e.reset_password_redirect_url).isOptionalString("reset_password_template_id",e.reset_password_template_id).isOptionalNumber("reset_password_expiration_minutes",e.reset_password_expiration_minutes),t.next=3,this.getCodeChallenge();case 3:return r=t.sent,t.next=6,this.executeRecaptcha();case 6:return n=t.sent,t.abrupt("return",this._networkClient.fetchSDK({url:"/passwords/email/reset/start",method:"POST",errorMessage:"Failed to start password reset flow.",body:{email:e.email,login_redirect_url:e.login_redirect_url,reset_password_redirect_url:e.reset_password_redirect_url,reset_password_expiration_minutes:e.reset_password_expiration_minutes,reset_password_template_id:e.reset_password_template_id,code_challenge:r,captcha_token:n}}));case 8:case"end":return t.stop()}}),t,this)})))}},{key:"resetByEmail",value:function(e){var t;return q(this,void 0,void 0,p().mark((function r(){var n,i,o;return p().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ce("stytch.passwords.resetByEmail").isString("token",e.token).isString("password",e.password).isNumber("session_duration_minutes",e.session_duration_minutes),r.next=3,this.executeRecaptcha();case 3:return n=r.sent,i=null===(t=this._pkceManager.getPKPair())||void 0===t?void 0:t.code_verifier,r.next=7,this._networkClient.fetchSDK({url:"/passwords/email/reset",method:"POST",errorMessage:"Failed to reset password.",body:{token:e.token,password:e.password,session_duration_minutes:e.session_duration_minutes,captcha_token:n,code_verifier:i}});case 7:return o=r.sent,this._pkceManager.clearPKPair(),this._subscriptionService.updateState({session:o.session,user:o.user,session_token:o.session_token,session_jwt:o.session_jwt}),r.abrupt("return",le(o));case 11:case"end":return r.stop()}}),r,this)})))}},{key:"resetByExistingPassword",value:function(e){return q(this,void 0,void 0,p().mark((function t(){var r;return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.passwords.resetByExistingPassword").isString("email",e.email).isString("existing_password",e.existing_password).isString("new_password",e.new_password),t.next=3,this._networkClient.fetchSDK({url:"/passwords/existing_password/reset",method:"POST",errorMessage:"Failed to reset password.",body:{email:e.email,existing_password:e.existing_password,new_password:e.new_password}});case 3:return r=t.sent,t.abrupt("return",le(r));case 5:case"end":return t.stop()}}),t,this)})))}},{key:"resetBySession",value:function(e){return q(this,void 0,void 0,p().mark((function t(){return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.passwords.resetBySession").isString("password",e.password),t.next=3,this._networkClient.fetchSDK({url:"/passwords/session/reset",method:"POST",errorMessage:"Failed to reset session.",body:{password:e.password}});case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"strengthCheck",value:function(e){return q(this,void 0,void 0,p().mark((function t(){return p().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ce("stytch.passwords.strengthCheck").isOptionalString("email",e.email).isString("password",e.password),t.abrupt("return",this._networkClient.fetchSDK({url:"/passwords/strength_check",method:"POST",errorMessage:"Failed to check password strength.",body:{email:e.email,password:e.password}}));case 2:case"end":return t.stop()}}),t,this)})))}}]),e}();function Ve(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))}var Ye=function(){function e(t,r,n){i(this,e),this._publicToken=t,this._subscriptionDataLayer=r,this.baseURL=n,this.updateSessionToken=function(){return null},this.eventLogger=new ve({maxBatchSize:pe,intervalDurationMs:fe,logEventURL:this.buildSDKUrl("/events")})}return s(e,[{key:"logEvent",value:function(e){var t=e.name,r=e.details,n=e.error,i=void 0===n?{}:n;this.eventLogger.logEvent(this.createTelemetryBlob(),{public_token:this._publicToken,event_name:t,details:r,error_code:i.error_code,error_description:i.error_description,http_status_code:i.http_status_code})}},{key:"createTelemetryBlob",value:function(){var e,t;return{event_id:"event-id-".concat(Q()),app_session_id:"app-session-id-".concat(Q()),persistent_id:"persistent-id-".concat(Q()),client_sent_at:(new Date).toISOString(),timezone:Intl.DateTimeFormat().resolvedOptions().timeZone,stytch_user_id:null===(e=this._subscriptionDataLayer.user)||void 0===e?void 0:e.user_id,stytch_session_id:null===(t=this._subscriptionDataLayer.session)||void 0===t?void 0:t.session_id,app:{identifier:window.location.hostname},sdk:{identifier:"Stytch.js Javascript SDK",version:"0.9.4"}}}},{key:"fetchSDK",value:function(e){var t=e.url,r=e.body,i=e.errorMessage,o=e.method;return Ve(this,void 0,void 0,n().mark((function e(){var s,a,c,u;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s=this._subscriptionDataLayer.readSessionCookie().session_token,a="Basic "+window.btoa(this._publicToken+":"+(s||this._publicToken)),c=window.btoa(JSON.stringify(this.createTelemetryBlob())),u=window.location.origin,e.abrupt("return",he({basicAuthHeader:a,body:r,errorMessage:i,finalURL:this.buildSDKUrl(t),method:o,xSDKClientHeader:c,xSDKParentHostHeader:u}));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"buildSDKUrl",value:function(e){return"".concat(this.baseURL,"/sdk/v1").concat(e)}}]),e}();
3
+ y=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",a=i.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,i){var o=t&&t.prototype instanceof d?t:d,s=Object.create(o.prototype),a=new T(i||[]);return n(s,"_invoke",{value:S(e,r,a)}),s}function l(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var h={};function d(){}function p(){}function v(){}var m={};c(m,o,(function(){return this}));var _=Object.getPrototypeOf,g=_&&_(_(C([])));g&&g!==t&&r.call(g,o)&&(m=g);var b=v.prototype=d.prototype=Object.create(m);function w(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function k(e,t){function i(n,o,s,a){var c=l(e[n],e,o);if("throw"!==c.type){var u=c.arg,h=u.value;return h&&"object"==f(h)&&r.call(h,"__await")?t.resolve(h.__await).then((function(e){i("next",e,s,a)}),(function(e){i("throw",e,s,a)})):t.resolve(h).then((function(e){u.value=e,s(u)}),(function(e){return i("throw",e,s,a)}))}a(c.arg)}var o;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){i(e,r,t,n)}))}return o=o?o.then(n,n):n()}})}function S(e,t,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return P()}for(r.method=i,r.arg=o;;){var s=r.delegate;if(s){var a=O(s,r);if(a){if(a===h)continue;return a}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=l(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===h)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,O(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),h;var i=l(n,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,h;var o=i.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,h):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,h)}function x(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function E(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function T(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(x,this),this.reset(!0)}function C(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:P}}function P(){return{value:void 0,done:!0}}return p.prototype=v,n(b,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:p,configurable:!0}),p.displayName=c(v,a,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,a,"GeneratorFunction")),e.prototype=Object.create(b),e},e.awrap=function(e){return{__await:e}},w(k.prototype),c(k.prototype,s,(function(){return this})),e.AsyncIterator=k,e.async=function(t,r,n,i,o){void 0===o&&(o=Promise);var s=new k(u(t,r,n,i),o);return e.isGeneratorFunction(r)?s:s.next().then((function(e){return e.done?e.value:s.next()}))},w(b),c(b,a,"Generator"),c(b,o,(function(){return this})),c(b,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,T.prototype={constructor:T,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return s.type="throw",s.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],s=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var a=r.call(o,"catchLoc"),c=r.call(o,"finallyLoc");if(a&&c){if(this.prev<o.catchLoc)return n(o.catchLoc,!0);if(this.prev<o.finallyLoc)return n(o.finallyLoc)}else if(a){if(this.prev<o.catchLoc)return n(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return n(o.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===e||"continue"===e)&&o.tryLoc<=t&&t<=o.finallyLoc&&(o=null);var s=o?o.completion:{};return s.type=e,s.arg=t,o?(this.method="next",this.next=o.finallyLoc,h):this.complete(s)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),E(r),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;E(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),h}},e}function _(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,(i=n.key,o=void 0,o=function(e,t){if("object"!==f(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==f(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(i,"string"),"symbol"===f(o)?o:String(o)),n)}var i,o}function g(e,t,r){return t&&_(e.prototype,t),r&&_(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function b(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function w(e,t){if("function"!=typeof t&&null!==t)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&&T(e,t)}function k(e){var t=E();return function(){var r,n=C(e);if(t){var i=C(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===f(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return S(e)}(this,r)}}function S(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function O(e){var t="function"==typeof Map?new Map:void 0;return O=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;var r;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return x(e,arguments,C(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),T(n,e)},O(e)}function x(e,t,r){return x=E()?Reflect.construct.bind():function(e,t,r){var n=[null];n.push.apply(n,t);var i=new(Function.bind.apply(e,n));return r&&T(i,r.prototype),i},x.apply(null,arguments)}function E(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function T(e,t){return T=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},T(e,t)}function C(e){return C=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},C(e)}var P,A,R,j,L,D,I="https://accounts.google.com/gsi",M="".concat(I,"/client");!function(e){e.emailMagicLinks="emailMagicLinks",e.oauth="oauth",e.otp="otp",e.crypto="crypto",e.passwords="passwords"}(P||(P={})),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"}(A||(A={})),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"}(R||(R={})),function(e){e.embedded="embedded",e.floating="floating"}(j||(j={})),function(e){e.SMS="sms",e.WhatsApp="whatsapp",e.Email="email"}(L||(L={})),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={}));var U,F=function(e){w(r,O(Error));var t=k(r);function r(e,n){var i;return b(this,r),(i=t.call(this,e+"\n"+n)).message=e+"\n"+n,i.name="SDKAPIUnreachableError",i.details=n,Object.setPrototypeOf(S(i),r.prototype),i}return g(r)}(),N=function(e){w(r,O(Error));var t=k(r);function r(e,n){var i;return b(this,r),(i=t.call(this)).name="StytchSDKUsageError",i.message="Invalid call to ".concat(e,"\n")+n,i}return g(r)}(),K=function(e){w(r,O(Error));var t=k(r);function r(e){var n,i;b(this,r),(n=t.call(this)).name="StytchSDKSchemaError";var o=null===(i=e.body)||void 0===i?void 0:i.map((function(e){return"".concat(e.dataPath,": ").concat(e.message)})).join("\n");return n.message="[400] Request does not match expected schema\n".concat(o),n}return g(r)}(),B=function(e){w(r,O(Error));var t=k(r);function r(e){var n;b(this,r),(n=t.call(this)).name="StytchSDKAPIError";var i=e.status_code,o=e.error_type,s=e.error_message,a=e.error_url,c=e.request_id;return n.error_type=o,n.error_message=s,n.error_url=a,n.request_id=c,n.status_code=i,n.message="[".concat(i,"] ").concat(o,"\n")+"".concat(s,"\n")+"See ".concat(a," for more information.\n")+(c?"request_id: ".concat(c,"\n"):""),n}return g(r)}();!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"}(U||(U={}));var q=function(){function e(){b(this,e)}return g(e,null,[{key:"marshall",value:function(e){return Object.assign(Object.assign({},e),{name:e.name,message:e.message,stack:e.stack})}},{key:"inflate",value:function(e,t){var r=new e(t);return Object.assign(r,t),Object.setPrototypeOf(r,e.prototype),r}},{key:"unmarshall",value:function(t){if("name"in t)switch(t.name){case"SDKAPIUnreachableError":return e.inflate(F,t);case"StytchSDKSchemaError":return e.inflate(K,t);case"StytchSDKAPIError":return e.inflate(B,t);case"TypeError":return e.inflate(TypeError,t);case"SyntaxError":return e.inflate(SyntaxError,t);case"ReferenceError":return e.inflate(ReferenceError,t);case"RangeError":return e.inflate(RangeError,t);case"EvalError":return e.inflate(EvalError,t);case"URIError":return e.inflate(URIError,t)}return e.inflate(Error,t)}}]),e}();function G(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r}function W(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))}var H,J=function(){function e(t){b(this,e),this.iframeURL=t,this.createIframe()}return g(e,[{key:"createIframe",value:function(){var e=document.querySelector('[src~="'.concat(this.iframeURL,'"]'));e?oe.warn("It looks like you're creating multiple copies of the Stytch client. This behavior is unsupported, and unintended side effects may occur. Make sure you are creating the Stytch client at the global level, and not inside a component's render function."):((e=document.createElement("iframe")).src=this.iframeURL,e.style.position="absolute",e.style.width="0",e.style.height="0",e.style.border="0",document.body.appendChild(e)),"true"!==e.dataset.loaded?this.frame=new Promise((function(t){e.addEventListener("load",(function(){e.dataset.loaded="true",t(e)}),{once:!0})})):this.frame=Promise.resolve(e)}},{key:"call",value:function(e,t){return W(this,void 0,void 0,y().mark((function r(){var n,i,o=this;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.frame;case 2:return n=r.sent,i=new MessageChannel,r.abrupt("return",new Promise((function(r,s){var a;i.port1.onmessage=function(e){var t=e.data;i.port1.close(),t.success?r(t.payload):s(q.unmarshall(t.error))};var c={method:e,args:t};null===(a=n.contentWindow)||void 0===a||a.postMessage(c,o.iframeURL,[i.port2])})));case 5:case"end":return r.stop()}}),r,this)})))}}]),e}(),z=new Uint8Array(16);function V(){if(!H&&!(H="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return H(z)}var Y=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;for(var $=[],X=0;X<256;++X)$.push((X+256).toString(16).substr(1));function Z(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=($[e[t+0]]+$[e[t+1]]+$[e[t+2]]+$[e[t+3]]+"-"+$[e[t+4]]+$[e[t+5]]+"-"+$[e[t+6]]+$[e[t+7]]+"-"+$[e[t+8]]+$[e[t+9]]+"-"+$[e[t+10]]+$[e[t+11]]+$[e[t+12]]+$[e[t+13]]+$[e[t+14]]+$[e[t+15]]).toLowerCase();if(!function(e){return"string"==typeof e&&Y.test(e)}(r))throw TypeError("Stringified UUID is invalid");return r}function Q(e,t,r){var n=(e=e||{}).random||(e.rng||V)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,t){r=r||0;for(var i=0;i<16;++i)t[r+i]=n[i];return t}return Z(n)}var ee={};function te(e,t){return W(this,void 0,void 0,y().mark((function r(){return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:if(void 0===ee[e]){r.next=2;break}return r.abrupt("return",ee[e]);case 2:return ee[e]=re(e,t),r.abrupt("return",ee[e]);case 4:case"end":return r.stop()}}),r)})))}function re(e,t){return new Promise((function(r,n){var i=function(e){var t=ne(e);if(t[0])return t[0]}(e);if(i&&"true"===i.dataset.loaded)try{r(t())}catch(t){return n(new Error("".concat(e," already loaded, but module was not found in global scope: ").concat(t)))}var o=function(e){var t=document.createElement("script");return t.setAttribute("src",e),t.setAttribute("async","true"),t.setAttribute("defer","true"),document.head.appendChild(t),t}(e);o.addEventListener("load",(function(){o.dataset.loaded="true";try{r(t())}catch(t){n(new Error("".concat(e," was loaded, but module was not found in global scope: ").concat(t)))}})),o.addEventListener("error",(function(t){n(new Error("".concat(e," could not be loaded: ").concat(t)))}))}))}var ne=function(e){return document.querySelectorAll('script[src="'.concat(e,'"]'))};var ie=["[Stytch]"],oe={debug:function(){return false},log:function(){for(var e,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return(e=console).log.apply(e,ie.concat(r))},warn:function(){for(var e,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return(e=console).warn.apply(e,ie.concat(r))},error:function(){for(var e,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return(e=console).error.apply(e,ie.concat(r))}},se="\nYou can find your public token at https://stytch.com/dashboard/api-keys.",ae=function(e){var t={isObject:function(r,n){var i="object"===f(n)&&!Array.isArray(n)&&null!==n;if(!i)throw new N(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)throw new N(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))throw new N(e,r+" must be an array of strings.");var i,o=d(n);try{for(o.s();!(i=o.n()).done;){if("string"!=typeof i.value)throw new N(e,r+" must be an array of strings.")}}catch(e){o.e(e)}finally{o.f()}return t},isNumber:function(r,n){if("number"!=typeof n)throw new N(e,r+" must be a number.");return t},isOptionalNumber:function(e,r){return void 0===r?t:t.isNumber(e,r)}};return t},ce=function(e){return G(e,["request_id","status_code"])},ue=function(e){return G(e,["__user"])};function le(e){var t=e.method,r=e.errorMessage,n=e.finalURL,i=e.basicAuthHeader,o=e.xSDKClientHeader,s=e.xSDKParentHostHeader,a=e.body;return W(this,void 0,void 0,y().mark((function e(){var c,u,l,h,d;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return c={Authorization:i,"Content-Type":"application/json","X-SDK-Client":o},s&&(c["X-SDK-Parent-Host"]=s),u={method:t,headers:c,body:a&&JSON.stringify(a)},e.prev=3,e.next=6,fetch(n,u);case 6:l=e.sent,e.next=14;break;case 9:if(e.prev=9,e.t0=e.catch(3),"Failed to fetch"!==e.t0.message){e.next=13;break}throw new F(r,"Unable to contact the Stytch servers. Are you online?");case 13:throw e.t0;case 14:if(200===l.status){e.next=27;break}return e.prev=15,e.next=18,l.json();case 18:h=e.sent,e.next=24;break;case 21:throw e.prev=21,e.t1=e.catch(15),new F(r,"Invalid or no response from server");case 24:if(!("body"in h||"params"in h||"query"in h)){e.next=26;break}throw new K(h);case 26:throw new B(h);case 27:return e.prev=27,e.next=30,l.json();case 30:return d=e.sent,e.abrupt("return",d.data);case 34:throw e.prev=34,e.t2=e.catch(27),new F(r,"Invalid response from the Stytch servers.");case 37:case"end":return e.stop()}}),e,null,[[3,9],[15,21],[27,34]])})))}var he=function(){function e(t,r){var n=this;b(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.isUnrecoverableRecoverableError(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(){oe.warn("Session background refresh failed. Signalling to app that user is logged out."),e._subscriptionService.destroyState()}))}},{key:"scheduleBackgroundRefresh",value:function(){var t=this;this.cancelBackgroundRefresh(),this.timeout=setTimeout((function(){t.performBackgroundRefresh()}),e.REFRESH_INTERVAL_MS)}},{key:"cancelBackgroundRefresh",value:function(){null!==this.timeout&&(clearTimeout(this.timeout),this.timeout=null)}}],[{key:"timeoutForAttempt",value:function(e){return Math.floor(350*Math.random())-175+2e3*Math.pow(2,e)}},{key:"isUnrecoverableRecoverableError",value:function(e){return"unauthorized_credentials"===e.error_type||"user_unauthenticated"===e.error_type}}]),e}();he.REFRESH_INTERVAL_MS=18e4;var de=15,pe=800,fe=function(){function e(t){b(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 W(this,void 0,void 0,y().mark((function e(){var t;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(this.batch.length){e.next=2;break}return e.abrupt("return");case 2:return t=this.batch,this.batch=[],e.prev=4,e.next=7,fetch(this.logEventURL,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});case 7:e.next=11;break;case 9:e.prev=9,e.t0=e.catch(4);case 11:case"end":return e.stop()}}),e,this,[[4,9]])})))}}]),e}(),ve=g((function e(t,r){var n=this;b(this,e),this._networkClient=t,this._subscriptionService=r,this.get=function(){return W(n,void 0,void 0,y().mark((function e(){var t,r;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._networkClient.fetchSDK({url:"/users/me",errorMessage:"Failed to retrieve user info.",method:"GET"});case 2:return t=e.sent,r=ce(t),this._subscriptionService.updateUser(r),e.abrupt("return",r);case 6:case"end":return e.stop()}}),e,this)})))},this.getSync=function(){return n._subscriptionService.getUser()},this.update=function(e){return W(n,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.user.update").isOptionalObject("untrusted_metadata",e.untrusted_metadata),t.next=3,this._networkClient.fetchSDK({url:"/users/me",body:e,errorMessage:"Failed to update user.",method:"PUT"});case 3:return r=t.sent,n=ce(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",ue(r));case 7:case"end":return t.stop()}}),t,this)})))},this.deleteEmail=function(e){return W(n,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/emails/".concat(e),errorMessage:"Failed to delete email.",method:"DELETE"});case 2:return r=t.sent,n=ce(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))},this.deletePhoneNumber=function(e){return W(n,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/phone_numbers/".concat(e),errorMessage:"Failed to delete phone number.",method:"DELETE"});case 2:return r=t.sent,n=ce(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))},this.deleteTOTP=function(e){return W(n,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/totps/".concat(e),errorMessage:"Failed to delete TOTP.",method:"DELETE"});case 2:return r=t.sent,n=ce(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))},this.deleteOAuthRegistration=function(e){return W(n,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/oauth/".concat(e),errorMessage:"Failed to delete OAuth registration.",method:"DELETE"});case 2:return r=t.sent,n=ce(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))},this.deleteWebauthnRegistration=function(e){return W(n,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._networkClient.fetchSDK({url:"/users/webauthn_registrations/".concat(e),errorMessage:"Failed to delete WebAuthn registration.",method:"DELETE"});case 2:return r=t.sent,n=ce(r.__user),this._subscriptionService.updateUser(n),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))},this.onChange=function(e){return n._subscriptionService.subscribeToState((function(t){var r;return e(null!==(r=null==t?void 0:t.user)&&void 0!==r?r:null)}))}})),me=function(){function e(t,r){var n=this;b(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(){return W(n,void 0,void 0,y().mark((function e(){var t;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._networkClient.fetchSDK({url:"/sessions/revoke",errorMessage:"Error revoking session",method:"POST"});case 2:t=e.sent;try{this._subscriptionService.destroyState()}catch(e){}return e.abrupt("return",t);case 5:case"end":return e.stop()}}),e,this)})))},this.authenticate=function(e){return W(n,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,r={session_duration_minutes:null==e?void 0:e.session_duration_minutes},t.next=4,this._networkClient.fetchSDK({url:"/sessions/authenticate",body:r,errorMessage:"Error authenticating session",method:"POST"});case 4:return n=t.sent,this._subscriptionService.updateStateAndTokens({state:{session:n.session,user:n.user},session_token:n.session_token,session_jwt:n.session_jwt}),t.abrupt("return",ue(n));case 9:throw t.prev=9,t.t0=t.catch(0),this._subscriptionService.destroyState(),t.t0;case 13:case"end":return t.stop()}}),t,this,[[0,9]])})))}}return g(e,[{key:"getTokens",value:function(){return this._subscriptionService.getTokens()}}]),e}(),ye=Promise.resolve({pkceRequiredForEmailMagicLinks:!1}),_e=function(){function e(t,r,n){var i=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:ye,s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return Promise.resolve(void 0)};b(this,e),this._networkClient=t,this._subscriptionService=r,this._pkceManager=n,this._config=o,this.executeRecaptcha=s,this.email={loginOrCreate:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return W(i,void 0,void 0,y().mark((function r(){var n,i,o,s;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this._config;case 2:if(n=r.sent,i=n.pkceRequiredForEmailMagicLinks,o=void 0,!i){r.next=9;break}return r.next=8,this.getCodeChallenge();case 8:o=r.sent;case 9:return r.t0=Object,r.t1=Object.assign({},t),r.t2=e,r.t3=o,r.next=15,this.executeRecaptcha();case 15:return r.t4=r.sent,r.t5={email:r.t2,code_challenge:r.t3,captcha_token:r.t4},s=r.t0.assign.call(r.t0,r.t1,r.t5),r.abrupt("return",this._networkClient.fetchSDK({url:"/magic_links/email/login_or_create",body:s,errorMessage:"Failed to send magic link",method:"POST"}));case 19:case"end":return r.stop()}}),r,this)})))},send:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return W(i,void 0,void 0,y().mark((function r(){var n,i,o,s,a,c;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this._config;case 2:if(n=r.sent,i=n.pkceRequiredForEmailMagicLinks,o=void 0,!i){r.next=9;break}return r.next=8,this.getCodeChallenge();case 8:o=r.sent;case 9:return r.t0=Object,r.t1=Object.assign({},t),r.t2=e,r.t3=o,r.next=15,this.executeRecaptcha();case 15:return r.t4=r.sent,r.t5={email:r.t2,code_challenge:r.t3,captcha_token:r.t4},s=r.t0.assign.call(r.t0,r.t1,r.t5),a=!!this._subscriptionService.getSession(),c=a?"/magic_links/email/send/secondary":"/magic_links/email/send/primary",r.abrupt("return",this._networkClient.fetchSDK({url:c,body:s,errorMessage:"Failed to send magic link",method:"POST"}));case 21:case"end":return r.stop()}}),r,this)})))}},this.authenticate=function(e,t){return W(i,void 0,void 0,y().mark((function r(){var n,i,o;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ae("stytch.magicLinks.authenticate").isString("Token",e).isNumber("session_duration_minutes",t.session_duration_minutes),i=Object.assign({token:e,code_verifier:null===(n=this._pkceManager.getPKPair())||void 0===n?void 0:n.code_verifier},t),r.next=4,this._networkClient.fetchSDK({url:"/magic_links/authenticate",body:i,errorMessage:"Failed to authenticate token.",method:"POST"});case 4:return o=r.sent,this._pkceManager.clearPKPair(),this._subscriptionService.updateStateAndTokens({state:{session:o.session,user:o.user},session_token:o.session_token,session_jwt:o.session_jwt}),r.abrupt("return",ue(o));case 8:case"end":return r.stop()}}),r,this)})))}}return g(e,[{key:"getCodeChallenge",value:function(){return W(this,void 0,void 0,y().mark((function e(){var t;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(t=this._pkceManager.getPKPair())){e.next=3;break}return e.abrupt("return",t.code_challenge);case 3:return e.next=5,this._pkceManager.startPKCETransaction();case 5:return t=e.sent,e.abrupt("return",t.code_challenge);case 7:case"end":return e.stop()}}),e,this)})))}}]),e}(),ge=g((function e(t,r){var n=this,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){return Promise.resolve(void 0)};b(this,e),this._networkClient=t,this._subscriptionService=r,this.executeRecaptcha=i,this.sms={loginOrCreate:function(e,t){return W(n,void 0,void 0,y().mark((function r(){var n,i;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{phone_number:e,captcha_token:n}),r.abrupt("return",this._networkClient.fetchSDK({url:"/otps/sms/login_or_create",body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 5:case"end":return r.stop()}}),r,this)})))},send:function(e,t){return W(n,void 0,void 0,y().mark((function r(){var n,i,o,s;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{phone_number:e,captcha_token:n}),o=!!this._subscriptionService.getSession(),s=o?"/otps/sms/send/secondary":"/otps/sms/send/primary",r.abrupt("return",this._networkClient.fetchSDK({url:s,body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 7:case"end":return r.stop()}}),r,this)})))}},this.whatsapp={loginOrCreate:function(e,t){return W(n,void 0,void 0,y().mark((function r(){var n,i;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{phone_number:e,captcha_token:n}),r.abrupt("return",this._networkClient.fetchSDK({url:"/otps/whatsapp/login_or_create",body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 5:case"end":return r.stop()}}),r,this)})))},send:function(e,t){return W(n,void 0,void 0,y().mark((function r(){var n,i,o,s;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{phone_number:e,captcha_token:n}),o=!!this._subscriptionService.getSession(),s=o?"/otps/whatsapp/send/secondary":"/otps/whatsapp/send/primary",r.abrupt("return",this._networkClient.fetchSDK({url:s,body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 7:case"end":return r.stop()}}),r,this)})))}},this.email={loginOrCreate:function(e,t){return W(n,void 0,void 0,y().mark((function r(){var n,i;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{email:e,captcha_token:n}),r.abrupt("return",this._networkClient.fetchSDK({url:"/otps/email/login_or_create",body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 5:case"end":return r.stop()}}),r,this)})))},send:function(e,t){return W(n,void 0,void 0,y().mark((function r(){var n,i,o,s;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,this.executeRecaptcha();case 2:return n=r.sent,i=Object.assign(Object.assign({},t),{email:e,captcha_token:n}),o=!!this._subscriptionService.getSession(),s=o?"/otps/email/send/secondary":"/otps/email/send/primary",r.abrupt("return",this._networkClient.fetchSDK({url:s,body:i,errorMessage:"Failed to send one time passcode",method:"POST"}));case 7:case"end":return r.stop()}}),r,this)})))}},this.authenticate=function(e,t,r){return W(n,void 0,void 0,y().mark((function n(){var i,o;return y().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return ae("stytch.otps.authenticate").isString("Code",e).isNumber("session_duration_minutes",r.session_duration_minutes),i=Object.assign({token:e,method_id:t},r),n.next=4,this._networkClient.fetchSDK({url:"/otps/authenticate",body:i,errorMessage:"Failed to authenticate token.",method:"POST"});case 4:return o=n.sent,this._subscriptionService.updateStateAndTokens({state:{session:o.session,user:o.user},session_token:o.session_token,session_jwt:o.session_jwt}),n.abrupt("return",ue(o));case 7:case"end":return n.stop()}}),n,this)})))}})),be=function(){function e(t,r,n,i,o){b(this,e),this._networkClient=t,this._subscriptionService=r,this._pkceManager=n,this._dynamicConfig=i,this._config=o,this.google={start:this.startOAuthFlow(A.Google)},this.apple={start:this.startOAuthFlow(A.Apple)},this.microsoft={start:this.startOAuthFlow(A.Microsoft)},this.github={start:this.startOAuthFlow(A.Github)},this.gitlab={start:this.startOAuthFlow(A.GitLab)},this.facebook={start:this.startOAuthFlow(A.Facebook)},this.discord={start:this.startOAuthFlow(A.Discord)},this.slack={start:this.startOAuthFlow(A.Slack)},this.amazon={start:this.startOAuthFlow(A.Amazon)},this.bitbucket={start:this.startOAuthFlow(A.Bitbucket)},this.linkedin={start:this.startOAuthFlow(A.LinkedIn)},this.coinbase={start:this.startOAuthFlow(A.Coinbase)},this.twitch={start:this.startOAuthFlow(A.Twitch)}}return g(e,[{key:"authenticate",value:function(e,t){return W(this,void 0,void 0,y().mark((function r(){var n,i;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ae("stytch.oauth.authenticate").isString("Token",e).isNumber("session_duration_minutes",t.session_duration_minutes),(n=this._pkceManager.getPKPair())||oe.warn("No code verifier found in local storage for OAuth 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."),r.next=5,this._networkClient.fetchSDK({url:"/oauth/authenticate",method:"POST",body:Object.assign({token:e,code_verifier:null==n?void 0:n.code_verifier},t),errorMessage:"Failed to authenticate token"});case 5:return i=r.sent,this._pkceManager.clearPKPair(),this._subscriptionService.updateStateAndTokens({state:{session:i.session,user:ce(i.__user)},session_token:i.session_token,session_jwt:i.session_jwt}),r.abrupt("return",ue(i));case 9:case"end":return r.stop()}}),r,this)})))}},{key:"getBaseApiUrl",value:function(){return W(this,void 0,void 0,y().mark((function e(){var t,r;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._dynamicConfig;case 2:if(t=e.sent,!(r=t.cnameDomain)){e.next=6;break}return e.abrupt("return","https://".concat(r));case 6:if(!this._config.publicToken.includes("public-token-test")){e.next=8;break}return e.abrupt("return",this._config.testAPIURL);case 8:return e.abrupt("return",this._config.liveAPIURL);case 9:case"end":return e.stop()}}),e,this)})))}},{key:"startOAuthFlow",value:function(e){var t=this;return function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=r.login_redirect_url,i=r.signup_redirect_url,o=r.custom_scopes;return W(t,void 0,void 0,y().mark((function t(){var r,s,a,c,u,l;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._dynamicConfig;case 2:return r=t.sent,s=r.cnameDomain,a=r.pkceRequiredForOAuth,t.next=7,this.getBaseApiUrl();case 7:if(c=t.sent,this._networkClient.logEvent({name:"start_oauth_flow",details:{provider_type:e,custom_scopes:o,cname_domain:s,pkce:a}}),(u=new URL("".concat(c,"/v1/public/oauth/").concat(e,"/start"))).searchParams.set("public_token",this._config.publicToken),!a){t.next=18;break}return t.next=14,this._pkceManager.startPKCETransaction();case 14:l=t.sent,u.searchParams.set("code_challenge",l.code_challenge),t.next=19;break;case 18:this._pkceManager.clearPKPair();case 19:o&&(ae("startOAuthFlow").isStringArray("custom_scopes",o),u.searchParams.set("custom_scopes",o.join(" "))),n&&u.searchParams.set("login_redirect_url",n),i&&u.searchParams.set("signup_redirect_url",i),window.location.href=u.toString();case 23:case"end":return t.stop()}}),t,this)})))}}}]),e}(),we=function(){function e(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){return Promise.resolve(void 0)};b(this,e),this._networkClient=t,this._subscriptionService=r,this.executeRecaptcha=n}return g(e,[{key:"authenticateStart",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r,n,i;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.cryptoWallets.authenticateStart").isString("crypto_wallet_address",e.crypto_wallet_address).isString("crypto_wallet_type",e.crypto_wallet_type),r=!!this._subscriptionService.getSession(),t.next=4,this.executeRecaptcha();case 4:return n=t.sent,i=r?"/crypto_wallets/authenticate/start/secondary":"/crypto_wallets/authenticate/start/primary",t.abrupt("return",this._networkClient.fetchSDK({url:i,method:"POST",errorMessage:"Failed to start wallet authentication.",body:{crypto_wallet_address:e.crypto_wallet_address,crypto_wallet_type:e.crypto_wallet_type,captcha_token:n}}));case 7:case"end":return t.stop()}}),t,this)})))}},{key:"authenticate",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.cryptoWallets.authenticate").isString("signature",e.signature).isString("crypto_wallet_address",e.crypto_wallet_address).isString("crypto_wallet_type",e.crypto_wallet_type).isNumber("session_duration_minutes",e.session_duration_minutes),t.next=3,this._networkClient.fetchSDK({url:"/crypto_wallets/authenticate",method:"POST",errorMessage:"Failed to authenticate.",body:{session_duration_minutes:e.session_duration_minutes,crypto_wallet_address:e.crypto_wallet_address,crypto_wallet_type:e.crypto_wallet_type,signature:e.signature}});case 3:return r=t.sent,this._subscriptionService.updateStateAndTokens({state:{session:r.session,user:ce(r.__user)},session_token:r.session_token,session_jwt:r.session_jwt}),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))}}]),e}(),ke=function(){function e(t,r){b(this,e),this._networkClient=t,this._subscriptionService=r}return g(e,[{key:"create",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.totps.create").isNumber("expiration_minutes",e.expiration_minutes),t.next=3,this._networkClient.fetchSDK({url:"/totps",method:"POST",errorMessage:"Failed to create TOTP",body:{expiration_minutes:e.expiration_minutes}});case 3:return r=t.sent,this._subscriptionService.updateUser(r.__user),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))}},{key:"authenticate",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.totps.authenticate").isNumber("session_duration_minutes",e.session_duration_minutes).isString("totp_code",e.totp_code),t.next=3,this._networkClient.fetchSDK({url:"/totps/authenticate",method:"POST",errorMessage:"Failed to authenticate TOTP",body:{session_duration_minutes:e.session_duration_minutes,totp_code:e.totp_code}});case 3:return r=t.sent,this._subscriptionService.updateStateAndTokens({state:{session:r.session,user:r.__user},session_token:r.session_token,session_jwt:r.session_jwt}),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))}},{key:"recoveryCodes",value:function(){return W(this,void 0,void 0,y().mark((function e(){return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this._networkClient.fetchSDK({url:"/totps/recovery_codes",method:"POST",errorMessage:"Failed to retrieve recovery codes"}));case 1:case"end":return e.stop()}}),e,this)})))}},{key:"recover",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.totps.recover").isNumber("session_duration_minutes",e.session_duration_minutes).isString("recovery_code",e.recovery_code),t.next=3,this._networkClient.fetchSDK({url:"/totps/recover",method:"POST",errorMessage:"Failed to recover TOTP",body:{session_duration_minutes:e.session_duration_minutes,recovery_code:e.recovery_code}});case 3:return r=t.sent,this._subscriptionService.updateStateAndTokens({state:{session:r.session,user:r.__user},session_token:r.session_token,session_jwt:r.session_jwt}),t.abrupt("return",ue(r));case 6:case"end":return t.stop()}}),t,this)})))}}]),e}();function Se(e){for(var t="==".slice(0,(4-e.length%4)%4),r=e.replace(/-/g,"+").replace(/_/g,"/")+t,n=atob(r),i=new ArrayBuffer(n.length),o=new Uint8Array(i),s=0;s<n.length;s++)o[s]=n.charCodeAt(s);return i}function Oe(e){var t,r="",n=d(new Uint8Array(e));try{for(n.s();!(t=n.n()).done;){var i=t.value;r+=String.fromCharCode(i)}}catch(e){n.e(e)}finally{n.f()}return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}var xe="copy",Ee="convert";function Te(e,t,r){if(t===xe)return r;if(t===Ee)return e(r);if(t instanceof Array)return r.map((function(r){return Te(e,t[0],r)}));if(t instanceof Object){for(var n={},i=0,o=Object.entries(t);i<o.length;i++){var s=p(o[i],2),a=s[0],c=s[1];if(c.derive){var u=c.derive(r);void 0!==u&&(r[a]=u)}if(a in r)null!=r[a]?n[a]=Te(e,c.schema,r[a]):n[a]=null;else if(c.required)throw new Error("Missing key: ".concat(a))}return n}}function Ce(e,t){return{required:!0,schema:e,derive:t}}function Pe(e){return{required:!0,schema:e}}function Ae(e){return{required:!1,schema:e}}var Re={type:Pe(xe),id:Pe(Ee),transports:Ae(xe)},je={appid:Ae(xe),appidExclude:Ae(xe),credProps:Ae(xe)},Le={appid:Ae(xe),appidExclude:Ae(xe),credProps:Ae(xe)},De={publicKey:Pe({rp:Pe(xe),user:Pe({id:Pe(Ee),name:Pe(xe),displayName:Pe(xe)}),challenge:Pe(Ee),pubKeyCredParams:Pe(xe),timeout:Ae(xe),excludeCredentials:Ae([Re]),authenticatorSelection:Ae(xe),attestation:Ae(xe),extensions:Ae(je)}),signal:Ae(xe)},Ie={type:Pe(xe),id:Pe(xe),rawId:Pe(Ee),authenticatorAttachment:Ae(xe),response:Pe({clientDataJSON:Pe(Ee),attestationObject:Pe(Ee),transports:Ce(xe,(function(e){var t;return(null==(t=e.getTransports)?void 0:t.call(e))||[]}))}),clientExtensionResults:Ce(Le,(function(e){return e.getClientExtensionResults()}))},Me={mediation:Ae(xe),publicKey:Pe({challenge:Pe(Ee),timeout:Ae(xe),rpId:Ae(xe),allowCredentials:Ae([Re]),userVerification:Ae(xe),extensions:Ae(je)}),signal:Ae(xe)},Ue={type:Pe(xe),id:Pe(xe),rawId:Pe(Ee),authenticatorAttachment:Ae(xe),response:Pe({clientDataJSON:Pe(Ee),authenticatorData:Pe(Ee),signature:Pe(Ee),userHandle:Pe(Ee)}),clientExtensionResults:Ce(Le,(function(e){return e.getClientExtensionResults()}))};function Fe(e){return Te(Se,De,e)}function Ne(e){return Te(Oe,Ie,e)}function Ke(e){return W(this,void 0,void 0,y().mark((function t(){var r;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,navigator.credentials.create(Fe(e));case 2:return r=t.sent,t.abrupt("return",Ne(r));case 4:case"end":return t.stop()}}),t)})))}function Be(e){return Te(Se,Me,e)}function qe(e){return Te(Oe,Ue,e)}function Ge(e){return W(this,void 0,void 0,y().mark((function t(){var r;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,navigator.credentials.get(Be(e));case 2:return r=t.sent,t.abrupt("return",qe(r));case 4:case"end":return t.stop()}}),t)})))}var We=function(){function e(t,r){b(this,e),this._networkClient=t,this._subscriptionService=r}return g(e,[{key:"register",value:function(e){var t;return W(this,void 0,void 0,y().mark((function r(){var n,i,o,s;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ae("stytch.webauthn.register").isOptionalString("domain",null==e?void 0:e.domain).isOptionalString("authenticator_type",null==e?void 0:e.authenticator_type),r.next=3,this._networkClient.fetchSDK({url:"/webauthn/register/start",method:"POST",errorMessage:"Failed to start WebAuthn registration",body:{domain:null!==(t=null==e?void 0:e.domain)&&void 0!==t?t:window.location.hostname,authenticator_type:null==e?void 0:e.authenticator_type}});case 3:return n=r.sent,i=n.public_key_credential_creation_options,r.next=7,Ke({publicKey:JSON.parse(i)});case 7:return o=r.sent,r.next=10,this._networkClient.fetchSDK({url:"/webauthn/register",method:"POST",errorMessage:"Failed to register WebAuthn device",body:{public_key_credential:JSON.stringify(o)}});case 10:return s=r.sent,this._subscriptionService.updateUser(s.__user),r.abrupt("return",ue(s));case 13:case"end":return r.stop()}}),r,this)})))}},{key:"authenticate",value:function(e){var t;return W(this,void 0,void 0,y().mark((function r(){var n,i,o,s;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ae("stytch.webauthn.register").isOptionalString("domain",e.domain).isNumber("session_duration_minutes",e.session_duration_minutes),r.next=3,this._networkClient.fetchSDK({url:"/webauthn/authenticate/start",method:"POST",errorMessage:"Failed to start WebAuthn authentication",body:{domain:null!==(t=e.domain)&&void 0!==t?t:window.location.hostname}});case 3:return n=r.sent,i=n.public_key_credential_request_options,r.next=7,Ge({publicKey:JSON.parse(i)});case 7:return o=r.sent,r.next=10,this._networkClient.fetchSDK({url:"/webauthn/authenticate",method:"POST",errorMessage:"Failed to authenticate WebAuthn device",body:{public_key_credential:JSON.stringify(o),session_duration_minutes:e.session_duration_minutes}});case 10:return s=r.sent,this._subscriptionService.updateStateAndTokens({state:{session:s.session,user:s.__user},session_token:s.session_token,session_jwt:s.session_jwt}),r.abrupt("return",ue(s));case 13:case"end":return r.stop()}}),r,this)})))}}]),e}(),He=Promise.resolve({pkceRequiredForPasswordResets:!1}),Je=function(){function e(t,r,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:He,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:function(){return Promise.resolve(void 0)};b(this,e),this._networkClient=t,this._subscriptionService=r,this._pkceManager=n,this._config=i,this.executeRecaptcha=o}return g(e,[{key:"getCodeChallenge",value:function(){return W(this,void 0,void 0,y().mark((function e(){var t,r;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._config;case 2:if(t=e.sent,t.pkceRequiredForPasswordResets){e.next=6;break}return e.abrupt("return",void 0);case 6:if(!(r=this._pkceManager.getPKPair())){e.next=9;break}return e.abrupt("return",r.code_challenge);case 9:return e.next=11,this._pkceManager.startPKCETransaction();case 11:return r=e.sent,e.abrupt("return",r.code_challenge);case 13:case"end":return e.stop()}}),e,this)})))}},{key:"create",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.passwords.create").isString("password",e.password).isString("email",e.email).isNumber("session_duration_minutes",e.session_duration_minutes),t.next=3,this.executeRecaptcha();case 3:return r=t.sent,t.next=6,this._networkClient.fetchSDK({url:"/passwords",method:"POST",errorMessage:"Failed to create password.",body:{email:e.email,password:e.password,session_duration_minutes:e.session_duration_minutes,captcha_token:r}});case 6:return n=t.sent,this._subscriptionService.updateStateAndTokens({state:{session:n.session,user:n.user},session_token:n.session_token,session_jwt:n.session_jwt}),t.abrupt("return",ue(n));case 9:case"end":return t.stop()}}),t,this)})))}},{key:"authenticate",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.passwords.authenticate").isString("password",e.password).isString("email",e.email).isNumber("session_duration_minutes",e.session_duration_minutes),t.next=3,this.executeRecaptcha();case 3:return r=t.sent,t.next=6,this._networkClient.fetchSDK({url:"/passwords/authenticate",method:"POST",errorMessage:"Failed to authenticate password.",body:{email:e.email,password:e.password,session_duration_minutes:e.session_duration_minutes,captcha_token:r}});case 6:return n=t.sent,this._subscriptionService.updateStateAndTokens({state:{session:n.session,user:n.user},session_token:n.session_token,session_jwt:n.session_jwt}),t.abrupt("return",ue(n));case 9:case"end":return t.stop()}}),t,this)})))}},{key:"resetByEmailStart",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r,n;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.passwords.resetByEmailStart").isString("email",e.email).isOptionalString("login_redirect_url",e.login_redirect_url).isOptionalString("reset_password_redirect_url",e.reset_password_redirect_url).isOptionalString("reset_password_template_id",e.reset_password_template_id).isOptionalNumber("reset_password_expiration_minutes",e.reset_password_expiration_minutes),t.next=3,this.getCodeChallenge();case 3:return r=t.sent,t.next=6,this.executeRecaptcha();case 6:return n=t.sent,t.abrupt("return",this._networkClient.fetchSDK({url:"/passwords/email/reset/start",method:"POST",errorMessage:"Failed to start password reset flow.",body:{email:e.email,login_redirect_url:e.login_redirect_url,reset_password_redirect_url:e.reset_password_redirect_url,reset_password_expiration_minutes:e.reset_password_expiration_minutes,reset_password_template_id:e.reset_password_template_id,code_challenge:r,captcha_token:n}}));case 8:case"end":return t.stop()}}),t,this)})))}},{key:"resetByEmail",value:function(e){var t;return W(this,void 0,void 0,y().mark((function r(){var n,i,o;return y().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return ae("stytch.passwords.resetByEmail").isString("token",e.token).isString("password",e.password).isNumber("session_duration_minutes",e.session_duration_minutes),r.next=3,this.executeRecaptcha();case 3:return n=r.sent,i=null===(t=this._pkceManager.getPKPair())||void 0===t?void 0:t.code_verifier,r.next=7,this._networkClient.fetchSDK({url:"/passwords/email/reset",method:"POST",errorMessage:"Failed to reset password.",body:{token:e.token,password:e.password,session_duration_minutes:e.session_duration_minutes,captcha_token:n,code_verifier:i}});case 7:return o=r.sent,this._pkceManager.clearPKPair(),this._subscriptionService.updateStateAndTokens({state:{session:o.session,user:o.user},session_token:o.session_token,session_jwt:o.session_jwt}),r.abrupt("return",ue(o));case 11:case"end":return r.stop()}}),r,this)})))}},{key:"resetByExistingPassword",value:function(e){return W(this,void 0,void 0,y().mark((function t(){var r;return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.passwords.resetByExistingPassword").isString("email",e.email).isString("existing_password",e.existing_password).isString("new_password",e.new_password),t.next=3,this._networkClient.fetchSDK({url:"/passwords/existing_password/reset",method:"POST",errorMessage:"Failed to reset password.",body:{email:e.email,existing_password:e.existing_password,new_password:e.new_password}});case 3:return r=t.sent,t.abrupt("return",ue(r));case 5:case"end":return t.stop()}}),t,this)})))}},{key:"resetBySession",value:function(e){return W(this,void 0,void 0,y().mark((function t(){return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.passwords.resetBySession").isString("password",e.password),t.next=3,this._networkClient.fetchSDK({url:"/passwords/session/reset",method:"POST",errorMessage:"Failed to reset session.",body:{password:e.password}});case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t,this)})))}},{key:"strengthCheck",value:function(e){return W(this,void 0,void 0,y().mark((function t(){return y().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return ae("stytch.passwords.strengthCheck").isOptionalString("email",e.email).isString("password",e.password),t.abrupt("return",this._networkClient.fetchSDK({url:"/passwords/strength_check",method:"POST",errorMessage:"Failed to check password strength.",body:{email:e.email,password:e.password}}));case 2:case"end":return t.stop()}}),t,this)})))}}]),e}();function ze(e,t,r,n){return new(r||(r=Promise))((function(i,o){function s(e){try{c(n.next(e))}catch(e){o(e)}}function a(e){try{c(n.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}c((n=n.apply(e,t||[])).next())}))}Promise.resolve({pkceRequiredForEmailMagicLinks:!1});var Ve=function(){function e(t,r,n,i){c(this,e),this._publicToken=t,this._subscriptionDataLayer=r,this.baseURL=n,this.additionalTelemetryDataFn=i,this.updateSessionToken=function(){return null},this.eventLogger=new fe({maxBatchSize:de,intervalDurationMs:pe,logEventURL:this.buildSDKUrl("/events")})}return l(e,[{key:"logEvent",value:function(e){var t=e.name,r=e.details,n=e.error,i=void 0===n?{}:n;this.eventLogger.logEvent(this.createTelemetryBlob(),{public_token:this._publicToken,event_name:t,details:r,error_code:i.error_code,error_description:i.error_description,http_status_code:i.http_status_code})}},{key:"createTelemetryBlob",value:function(){return Object.assign(Object.assign({event_id:"event-id-".concat(Q()),app_session_id:"app-session-id-".concat(Q()),persistent_id:"persistent-id-".concat(Q()),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.10.0"}})}},{key:"fetchSDK",value:function(e){var t=e.url,r=e.body,n=e.errorMessage,i=e.method;return ze(this,void 0,void 0,a().mark((function e(){var o,s,c,u;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=this._subscriptionDataLayer.readSessionCookie().session_token,s="Basic "+window.btoa(this._publicToken+":"+(o||this._publicToken)),c=window.btoa(JSON.stringify(this.createTelemetryBlob())),u=window.location.origin,e.abrupt("return",le({basicAuthHeader:s,body:r,errorMessage:n,finalURL:this.buildSDKUrl(t),method:i,xSDKClientHeader:c,xSDKParentHostHeader:u}));case 5:case"end":return e.stop()}}),e,this)})))}},{key:"buildSDKUrl",value:function(e){return"".concat(this.baseURL,"/sdk/v1").concat(e)}}]),e}();
4
4
  /*! js-cookie v3.0.1 | MIT */
5
- function $e(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)e[n]=r[n]}return e}var Xe=function e(t,r){function n(e,n,i){if("undefined"!=typeof document){"number"==typeof(i=$e({},r,i)).expires&&(i.expires=new Date(Date.now()+864e5*i.expires)),i.expires&&(i.expires=i.expires.toUTCString()),e=encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var o="";for(var s in i)i[s]&&(o+="; "+s,!0!==i[s]&&(o+="="+i[s].split(";")[0]));return document.cookie=e+"="+t.write(n,e)+o}}return Object.create({set:n,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var r=document.cookie?document.cookie.split("; "):[],n={},i=0;i<r.length;i++){var o=r[i].split("="),s=o.slice(1).join("=");try{var a=decodeURIComponent(o[0]);if(n[a]=t.read(s,a),e===a)break}catch(e){}}return e?n[e]:n}},remove:function(e,t){n(e,"",$e({},t,{expires:-1}))},withAttributes:function(t){return e(this.converter,$e({},this.attributes,t))},withConverter:function(t){return e($e({},this.converter,t),this.attributes)}},{attributes:{value:Object.freeze(r)},converter:{value:Object.freeze(t)}})}({read:function(e){return'"'===e[0]&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}},{path:"/"}),Ze="stytch_sdk_state_",Qe=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"".concat(Ze).concat(e).concat(t?"::".concat(t):"")},et=function(){function e(t,r){var n=this;i(this,e),this.browserSessionStorage={getItem:function(e){return sessionStorage.getItem(Qe(n.publicToken,e))},setItem:function(e,t){return sessionStorage.setItem(Qe(n.publicToken,e),t)},removeItem:function(e){return sessionStorage.removeItem(Qe(n.publicToken,e))}},this.publicToken=t,this.session=null,this.user=null,this.sessionSubscriptions={},this.userSubscriptions={},(null==r?void 0:r.cookieOptions)?(ce("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||!0):(this._opaqueTokenCookieName=null,this._jwtCookieName=null,this._cookiePath=null,this._cookieAvailableToSubdomains=!0);var o=localStorage.getItem(Qe(this.publicToken));if(o){var s;try{s=JSON.parse(o)}catch(e){return this.syncToLocalStorage(),void this.removeSessionCookie()}var a=s,c=a.session,u=a.user;this.session=c,this.user=u}else this.removeSessionCookie()}return s(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:Xe.get(this.opaqueTokenCookieName),session_jwt:Xe.get(this.jwtCookieName)}}},{key:"writeSessionCookie",value:function(t){var r=t.session,n=t.session_token,i=t.session_jwt,o=e.generateCookieOpts({expiresAt:r.expires_at,availableToSubdomains:this._cookieAvailableToSubdomains,path:this._cookiePath});Xe.set(this.opaqueTokenCookieName,n,o),Xe.set(this.jwtCookieName,i,o)}},{key:"removeSessionCookie",value:function(){var t=this;[!0,!1].forEach((function(r){[t._cookiePath,null].forEach((function(n){var i=e.generateCookieOpts({expiresAt:new Date(0).toString(),availableToSubdomains:r,path:n});Xe.remove(t.opaqueTokenCookieName,i),Xe.remove(t.jwtCookieName,i)}))}))}},{key:"syncToLocalStorage",value:function(){localStorage.setItem(Qe(this.publicToken),JSON.stringify({session:this.session,user:this.user}))}},{key:"getItem",value:function(e){return localStorage.getItem(Qe(this.publicToken,e))}},{key:"setItem",value:function(e,t){return localStorage.setItem(Qe(this.publicToken,e),t)}},{key:"removeItem",value:function(e){return localStorage.removeItem(Qe(this.publicToken,e))}}],[{key:"generateCookieOpts",value:function(e){var t=e.path,r=e.availableToSubdomains,n=e.expiresAt,i={expires:new Date(n),sameSite:"lax"};return t&&(i.path=t),ot()?i.secure=!1:(r&&(i.domain=window.location.host),i.secure=!0),i}}]),e}(),tt=Symbol.for("__stytch_DataLayer"),rt=function(e,t){var r,n=((r=window)[tt]||(r[tt]={}),r[tt]);return n[e]||(n[e]=new et(e,t)),n[e]},nt=function(e,t){var r=Math.random().toString(36).slice(-10);return e[r]=t,function(){return delete e[r]}},it=function(e,t){Object.values(e).forEach((function(e){return e(t)}))},ot=function(){return 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}$/))},st=ae({KEYS_TO_EXCLUDE:["last_accessed_at"]}),at=ae(),ct=function(){function e(t,r){var n=this;i(this,e),this._publicToken=t,this._datalayer=r,this._listen=function(e){e.key===Qe(n._publicToken)&&(null!==e.newValue?n._updateStateInternal(JSON.parse(e.newValue)):n.destroyState())},window.addEventListener("storage",this._listen);var o=this._datalayer.session;o&&Date.parse(o.expires_at)<Date.now()?this.destroyState():this._datalayer.readSessionCookie().session_token||this.destroyState()}return s(e,[{key:"getSession",value:function(){return this._datalayer.session}},{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.updateState({session:null,user:null,session_token:null,session_jwt:null})}},{key:"_updateStateInternal",value:function(e){var t=e.session,r=e.user,n=this._datalayer.session,i=this._datalayer.user;this._datalayer.session=t,this._datalayer.user=r,st(n,t)||it(this._datalayer.sessionSubscriptions,t),at(i,r)||it(this._datalayer.userSubscriptions,r)}},{key:"updateState",value:function(e){e.session?this._datalayer.writeSessionCookie(e):this._datalayer.removeSessionCookie(),this._updateStateInternal(e),this._datalayer.syncToLocalStorage()}},{key:"updateUser",value:function(e){var t=this._datalayer.user;this._datalayer.user=e,at(t,e)||(it(this._datalayer.userSubscriptions,e),this._datalayer.syncToLocalStorage())}},{key:"subscribeToSession",value:function(e){return nt(this._datalayer.sessionSubscriptions,e)}},{key:"getUser",value:function(){return this._datalayer.user}},{key:"subscribeToUser",value:function(e){return nt(this._datalayer.userSubscriptions,e)}},{key:"destroy",value:function(){window.removeEventListener("storage",this._listen)}},{key:"syncFromDeviceStorage",value:function(){return null}}]),e}();function ut(e){var t=e.toString(16);return 1===t.length&&(t="0"+t),t}var lt,ht,dt,pt,ft,vt,mt=function(){function t(e,r){i(this,t),this._dataLayer=e,this.namespace=r}return s(t,[{key:"key",value:function(){return"PKCE_VERIFIER:"+this.namespace}},{key:"startPKCETransaction",value:function(){return Ve(this,void 0,void 0,n().mark((function e(){var r;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.createProofkeyPair();case 2:return r=e.sent,this._dataLayer.setItem(this.key(),JSON.stringify(r)),e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)})))}},{key:"getPKPair",value:function(){var e=this._dataLayer.getItem(this.key());if(null!==e)try{return JSON.parse(e)}catch(e){return void oe.warn("Found malformed Proof Key pair in localstorage.")}}},{key:"clearPKPair",value:function(){return this._dataLayer.removeItem(this.key())}}],[{key:"createProofkeyPair",value:function(){return Ve(this,void 0,void 0,n().mark((function t(){var r,i,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=new Uint32Array(16),window.crypto.getRandomValues(r),i=Array.from(r).map(ut).join(""),t.next=5,window.crypto.subtle.digest("SHA-256",(new TextEncoder).encode(i));case 5:return o=t.sent,t.abrupt("return",{code_challenge:(n=o,s=void 0,btoa((s=String.fromCharCode).call.apply(s,[null].concat(e(new Uint8Array(n))))).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")),code_verifier:i});case 7:case"end":return t.stop()}var n,s}),t)})))}}]),t}(),_t="bootstrap",yt=function(){return{displayWatermark:!1,cnameDomain:null,emailDomains:["stytch.com"],captchaSettings:{enabled:!1},pkceRequiredForEmailMagicLinks:!1,pkceRequiredForPasswordResets:!1,pkceRequiredForOAuth:!1}},gt=function(){function e(t,r,n){var o=this;i(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(_t,JSON.stringify(e)),e})).catch((function(e){return oe.error(e),yt()}))}return s(e,[{key:"getSync",value:function(){var e=this._dataLayer.getItem(_t);if(null===e)return yt();try{return JSON.parse(e)}catch(e){return yt()}}},{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}}}]),e}(),bt=s((function e(t){var r=this;i(this,e),this.bootstrapPromise=t,this.executeRecaptcha=function(){return Ve(r,void 0,void 0,n().mark((function e(){var t,r,i,o;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.state;case 2:if(t=e.sent,r=t.captchaClient,i=t.configured,o=t.siteKey,i){e.next=8;break}return e.abrupt("return",void 0);case 8:return e.next=10,new Promise((function(e){return r.ready(e)}));case 10:return e.abrupt("return",r.execute(o,{action:"LOGIN"}));case 11:case"end":return e.stop()}}),e,this)})))},this.state=t.then((function(e){return Ve(r,void 0,void 0,n().mark((function t(){return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.captchaSettings.enabled){t.next=2;break}return t.abrupt("return",{configured:!1});case 2:return t.next=4,r=e.captchaSettings.siteKey,te("https://www.google.com/recaptcha/enterprise.js?render=".concat(r),(function(){return window.grecaptcha.enterprise}));case 4:return t.t0=t.sent,t.t1=e.captchaSettings.siteKey,t.abrupt("return",{configured:!0,captchaClient:t.t0,siteKey:t.t1});case 7:case"end":return t.stop()}var r}),t)})))}))}));function wt(e){return wt="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},wt(e)}function kt(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,(i=n.key,o=void 0,o=function(e,t){if("object"!==wt(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==wt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(i,"string"),"symbol"===wt(o)?o:String(o)),n)}var i,o}function St(e,t,r){return t&&kt(e.prototype,t),r&&kt(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function xt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Ot(e,t){if("function"!=typeof t&&null!==t)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&&Rt(e,t)}function Et(e){var t=At();return function(){var r,n=Lt(e);if(t){var i=Lt(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===wt(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return Ct(e)}(this,r)}}function Ct(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Tt(e){var t="function"==typeof Map?new Map:void 0;return Tt=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;var r;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return Pt(e,arguments,Lt(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Rt(n,e)},Tt(e)}function Pt(e,t,r){return Pt=At()?Reflect.construct.bind():function(e,t,r){var n=[null];n.push.apply(n,t);var i=new(Function.bind.apply(e,n));return r&&Rt(i,r.prototype),i},Pt.apply(null,arguments)}function At(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function Rt(e,t){return Rt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Rt(e,t)}function Lt(e){return Lt=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Lt(e)}!function(e){e.emailMagicLinks="emailMagicLinks",e.oauth="oauth",e.otp="otp",e.crypto="crypto",e.passwords="passwords"}(lt||(lt={})),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"}(ht||(ht={})),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"}(dt||(dt={})),function(e){e.embedded="embedded",e.floating="floating"}(pt||(pt={})),function(e){e.SMS="sms",e.WhatsApp="whatsapp",e.Email="email"}(ft||(ft={})),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"}(vt||(vt={}));var jt,Dt=function(e){Ot(r,Tt(Error));var t=Et(r);function r(e,n){var i;return xt(this,r),(i=t.call(this,e+"\n"+n)).message=e+"\n"+n,i.name="SDKAPIUnreachableError",i.details=n,Object.setPrototypeOf(Ct(i),r.prototype),i}return St(r)}(),It=function(e){Ot(r,Tt(Error));var t=Et(r);function r(e,n){var i;return xt(this,r),(i=t.call(this)).name="StytchSDKUsageError",i.message="Invalid call to ".concat(e,"\n")+n,i}return St(r)}(),Mt=function(e){Ot(r,Tt(Error));var t=Et(r);function r(e){var n,i;xt(this,r),(n=t.call(this)).name="StytchSDKSchemaError";var o=null===(i=e.body)||void 0===i?void 0:i.map((function(e){return"".concat(e.dataPath,": ").concat(e.message)})).join("\n");return n.message="[400] Request does not match expected schema\n".concat(o),n}return St(r)}(),Ut=function(e){Ot(r,Tt(Error));var t=Et(r);function r(e){var n;xt(this,r),(n=t.call(this)).name="StytchSDKAPIError";var i=e.status_code,o=e.error_type,s=e.error_message,a=e.error_url,c=e.request_id;return n.error_type=o,n.error_message=s,n.error_url=a,n.request_id=c,n.status_code=i,n.message="[".concat(i,"] ").concat(o,"\n")+"".concat(s,"\n")+"See ".concat(a," for more information.\n")+(c?"request_id: ".concat(c,"\n"):""),n}return St(r)}(),Nt=function(e){Ot(r,Tt(Error));var t=Et(r);function r(e){var n;return xt(this,r),(n=t.call(this)).name="StytchSDKNativeError",n.error_type=e,n.message="".concat(e),n}return St(r)}();!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"}(jt||(jt={}));var Kt=function(){function e(t,r,n){i(this,e),this._googleClient=t,this._publicToken=r,this._clientId=n}return s(e,[{key:"cancel",value:function(){this._googleClient.cancel()}},{key:"render",value:function(e){var t=e.callback,r=e.onOneTapCancelled,i=e.style;return Ve(this,void 0,void 0,n().mark((function e(){var o,s=this;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o={client_id:this._clientId,callback:t,auto_select:!1,context:"use",itp_support:!0},i.position===pt.embedded&&(o.prompt_parent_id="google-parent-prompt",o.cancel_on_tap_outside=!1),this._googleClient.initialize(o),e.abrupt("return",new Promise((function(e){s._googleClient.prompt((function(t){return t.isSkippedMoment()?("user_cancel"===t.getSkippedReason()&&r(),e({success:!1,reason:t.getSkippedReason()})):t.isNotDisplayed()?e({success:!1,reason:t.getNotDisplayedReason()}):(s.styleFrame(i),e({success:!0}))}))})));case 4:case"end":return e.stop()}}),e,this)})))}},{key:"styleFrame",value:function(e){e.position===pt.embedded&&Array.from(document.getElementsByTagName("iframe")).forEach((function(e){e.src.includes(I)&&(e.style.width="100%")}))}}]),e}(),Ft=function(){function e(t,r){var o=this;i(this,e),this._publicToken=t,this.clientsideServices=r,this.createOnSuccessHandler=function(e){var t=e.loginRedirectUrl,r=e.signupRedirectUrl,i=e.onSuccess;return function(e){return Ve(o,void 0,void 0,n().mark((function o(){var s,a,c;return n().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return s=e.credential,n.next=3,this.submitGoogleOneTapToken({credential:s,loginRedirectUrl:t,signupRedirectUrl:r});case 3:a=n.sent,c=a.redirect_url,i(c);case 6:case"end":return n.stop()}}),o,this)})))}},this.RedirectOnSuccess=function(e){window.location.href=e}}return s(e,[{key:"createOneTapClient",value:function(){return Ve(this,void 0,void 0,n().mark((function e(){var t,r,i,o;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.fetchGoogleStart();case 3:r=e.sent,t=r.googleClientId,e.next=11;break;case 7:return e.prev=7,e.t0=e.catch(0),i=e.t0,e.abrupt("return",{success:!1,reason:i.error_type});case 11:if(""!==t){e.next=13;break}return e.abrupt("return",{success:!1,reason:"oauth_config_not_found"});case 13:return e.t1=Kt,e.next=16,te(M,(function(){return window.google.accounts.id}));case 16:return e.t2=e.sent,e.t3=this._publicToken,e.t4=t,o=new e.t1(e.t2,e.t3,e.t4),e.abrupt("return",{success:!0,client:o});case 21:case"end":return e.stop()}}),e,this,[[0,7]])})))}},{key:"fetchGoogleStart",value:function(){return this.googleConfig||(this.googleConfig=this.clientsideServices.oneTapStart({publicToken:this._publicToken})),this.googleConfig}},{key:"submitGoogleOneTapToken",value:function(e){var t=e.credential,r=e.loginRedirectUrl,i=e.signupRedirectUrl;return Ve(this,void 0,void 0,n().mark((function e(){var o,s;return n().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.fetchGoogleStart();case 2:return o=e.sent,s=o.oauthCallbackId,e.abrupt("return",this.clientsideServices.oneTapSubmit({publicToken:this._publicToken,idToken:t,loginRedirectURL:r,oauthCallbackID:s,signupRedirectURL:i}));case 5:case"end":return e.stop()}}),e,this)})))}}],[{key:"WillGoogleOneTapShowBannerForUA",value:function(e){var t=function(e,t){return-1!==e.indexOf(t)},r=t(e,"iPad")||t(e,"Android")&&!t(e,"Mobile")||t(e,"Silk"),n=t(e,"iPod")||t(e,"iPhone")||t(e,"Android")||t(e,"IEMobile");return!r&&n}},{key:"WillGoogleOneTapShowEmbedded",value:function(){return!e.WillGoogleOneTapShowBannerForUA(navigator.userAgent)}}]),e}(),Bt=Symbol.for("stytch__internal"),Gt=function(e,t){Object.assign(e,function(e,t,r){return(t=a(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({},Bt,t))},Wt=function(){function e(t){var r=this;i(this,e),this.iframeURL=t,this.oneTapStart=function(e){return r.call("oneTapStart",e)},this.oneTapSubmit=function(e){return r.call("oneTapSubmit",e)}}return s(e,[{key:"frameClient",get:function(){var e;return this._frameClient=null!==(e=this._frameClient)&&void 0!==e?e:new J(this.iframeURL),this._frameClient}},{key:"call",value:function(e,t){return this.frameClient.call(e,[t])}}]),e}(),qt=function(){function e(t){i(this,e),this._networkClient=t}return s(e,[{key:"search",value:function(e){return this._networkClient.fetchSDK({url:"/users/search",method:"POST",body:{email:e},errorMessage:"Error searching for user ".concat(e)})}}]),e}(),Ht=s((function e(t,r){var n;i(this,e),function(e){var t="StytchUIClient"===e?"import { createStytchUIClient } from '@stytch/nextjs/ui';\n \nconst stytch = createStytchUIClient('public-token-...');\n":"import { createStytchHeadlessClient } from '@stytch/nextjs/ui';\n \nconst stytch = createStytchHeadlessClient('public-token-...');\n";if("undefined"==typeof window)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(t,"\n```\n"))}("StytchHeadlessClient"),"string"!=typeof(n=t)?oe.warn("Public token is malformed. Expected a string, got ".concat(l(n),".").concat(se)):""===n?oe.warn('Public token is malformed. Expected "public-token-...", got an empty string.'.concat(se)):n.startsWith("public-token-")||oe.warn('Public token is malformed. Expected "public-token-...", got '.concat(n,".").concat(se));var o,s,a,c,u,h,d,p,f,v=r,m={cookieOptions:null==(o=v)?void 0:o.cookieOptions,endpoints:{sdkBackendURL:null!==(a=null===(s=null==o?void 0:o.endpoints)||void 0===s?void 0:s.sdkBackendURL)&&void 0!==a?a:D,testAPIURL:null!==(u=null===(c=null==o?void 0:o.endpoints)||void 0===c?void 0:c.testAPIURL)&&void 0!==u?u:R,liveAPIURL:null!==(d=null===(h=null==o?void 0:o.endpoints)||void 0===h?void 0:h.liveAPIURL)&&void 0!==d?d:L,clientsideServicesIframeURL:null!==(f=null===(p=null==o?void 0:o.endpoints)||void 0===p?void 0:p.clientsideServicesIframeURL)&&void 0!==f?f:j}};this._dataLayer=rt(t,v),this._subscriptionService=new ct(t,this._dataLayer),this._networkClient=new Ye(t,this._dataLayer,m.endpoints.sdkBackendURL);var _=new gt(t,this._networkClient,this._dataLayer),y=new bt(_.getAsync()),g=new Wt(m.endpoints.clientsideServicesIframeURL),b=new Ft(t,g),w=new qt(this._networkClient);this.user=new me(this._networkClient,this._subscriptionService),this.session=new _e(this._networkClient,this._subscriptionService),this.magicLinks=new ge(this._networkClient,this._subscriptionService,new mt(this._dataLayer,"magic_links"),_.getAsync(),y.executeRecaptcha),this.otps=new be(this._networkClient,this._subscriptionService,y.executeRecaptcha),this.oauth=new we(this._networkClient,this._subscriptionService,new mt(this._dataLayer,"oauth"),_.getAsync(),{publicToken:t,testAPIURL:m.endpoints.testAPIURL,liveAPIURL:m.endpoints.liveAPIURL}),this.cryptoWallets=new ke(this._networkClient,this._subscriptionService,y.executeRecaptcha),this.totps=new Se(this._networkClient,this._subscriptionService),this.webauthn=new He(this._networkClient,this._subscriptionService),this.passwords=new ze(this._networkClient,this._subscriptionService,new mt(this._dataLayer,"passwords"),_.getAsync(),y.executeRecaptcha),this._sessionManager=new de(this._subscriptionService,this.session),this._dataLayer.readSessionCookie().session_token&&this._sessionManager.performBackgroundRefresh(),this._networkClient.logEvent({name:"sdk_instance_instantiated",details:{event_callback_registered:!1,error_callback_registered:!1,success_callback_registered:!1}}),Gt(this,{bootstrap:_,clientsideServices:g,captcha:y,oneTap:b,userSearch:w,publicToken:t})}));export{jt as BiometricsErrors,ht as OAuthProviders,ft as OTPMethods,pt as OneTapPositions,lt as Products,Dt as SDKAPIUnreachableError,vt as StytchEventType,Ht as StytchHeadlessClient,Ut as StytchSDKAPIError,Nt as StytchSDKNativeError,Mt as StytchSDKSchemaError,It as StytchSDKUsageError,dt as Wallets};
5
+ function Ye(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)e[n]=r[n]}return e}var $e=function e(t,r){function n(e,n,i){if("undefined"!=typeof document){"number"==typeof(i=Ye({},r,i)).expires&&(i.expires=new Date(Date.now()+864e5*i.expires)),i.expires&&(i.expires=i.expires.toUTCString()),e=encodeURIComponent(e).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var o="";for(var s in i)i[s]&&(o+="; "+s,!0!==i[s]&&(o+="="+i[s].split(";")[0]));return document.cookie=e+"="+t.write(n,e)+o}}return Object.create({set:n,get:function(e){if("undefined"!=typeof document&&(!arguments.length||e)){for(var r=document.cookie?document.cookie.split("; "):[],n={},i=0;i<r.length;i++){var o=r[i].split("="),s=o.slice(1).join("=");try{var a=decodeURIComponent(o[0]);if(n[a]=t.read(s,a),e===a)break}catch(e){}}return e?n[e]:n}},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:"/"}),Xe="stytch_sdk_state_",Ze=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"".concat(Xe).concat(e).concat(t?"::".concat(t):"")},Qe=function(){function e(t,r){var n=this;c(this,e),this.browserSessionStorage={getItem:function(e){return sessionStorage.getItem(Ze(n.publicToken,e))},setItem:function(e,t){return sessionStorage.setItem(Ze(n.publicToken,e),t)},removeItem:function(e){return sessionStorage.removeItem(Ze(n.publicToken,e))}},this.publicToken=t,this.state=null,this.subscriptions={},(null==r?void 0:r.cookieOptions)?(ae("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 i=localStorage.getItem(Ze(this.publicToken));if(i){var o;try{o=JSON.parse(i)}catch(e){return this.syncToLocalStorage(),void this.removeSessionCookie()}this.state=o}else this.removeSessionCookie()}return l(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,i=t.state,o=t.session_token,s=t.session_jwt,a=e.generateCookieOpts({expiresAt:null!==(n=null===(r=null==i?void 0:i.session)||void 0===r?void 0:r.expires_at)&&void 0!==n?n:"",availableToSubdomains:this._cookieAvailableToSubdomains,path:this._cookiePath});$e.set(this.opaqueTokenCookieName,o,a),$e.set(this.jwtCookieName,s,a)}},{key:"removeSessionCookie",value:function(){var t=this;[!0,!1].forEach((function(r){[t._cookiePath,null].forEach((function(n){var i=e.generateCookieOpts({expiresAt:new Date(0).toString(),availableToSubdomains:r,path:n});$e.remove(t.opaqueTokenCookieName,i),$e.remove(t.jwtCookieName,i)}))}))}},{key:"syncToLocalStorage",value:function(){localStorage.setItem(Ze(this.publicToken),JSON.stringify(this.state))}},{key:"getItem",value:function(e){return localStorage.getItem(Ze(this.publicToken,e))}},{key:"setItem",value:function(e,t){return localStorage.setItem(Ze(this.publicToken,e),t)}},{key:"removeItem",value:function(e){return localStorage.removeItem(Ze(this.publicToken,e))}}],[{key:"generateCookieOpts",value:function(e){var t=e.path,r=e.availableToSubdomains,n=e.expiresAt,i={expires:new Date(n),sameSite:"lax"};return t&&(i.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}$/))?i.secure=!1:(r&&(i.domain=window.location.host),i.secure=!0),i}}]),e}(),et=function(e){r(n,Qe);var t=i(n);function n(){return c(this,n),t.apply(this,arguments)}return l(n)}(),tt=Symbol.for("__stytch_DataLayer"),rt=function(e,t){var r,n=((r=window)[tt]||(r[tt]={}),r[tt]);return n[e]||(n[e]=new et(e,t)),n[e]},nt=function(e,t){Object.values(e).forEach((function(e){return e(t)}))},it=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 f(r)===f(n)&&(null===r||null===n?r===n:"object"===f(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),i=r[0],o=r[1];return e(o,n[i])})):r===n)}}({KEYS_TO_EXCLUDE:["last_accessed_at"]}),ot=function(){function e(t,r){var n,i=this;c(this,e),this._publicToken=t,this._datalayer=r,this._listen=function(e){e.key===Ze(i._publicToken)&&(null!==e.newValue?i._updateStateAndTokensInternal(JSON.parse(e.newValue)):i.destroyState())},window.addEventListener("storage",this._listen);var o=null===(n=this._datalayer.state)||void 0===n?void 0:n.session;o&&Date.parse(o.expires_at)<Date.now()?this.destroyState():this._datalayer.readSessionCookie().session_token||this.destroyState()}return l(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=e.state,r=this._datalayer.state;this._datalayer.state=t||null,it(r,e.state)||nt(this._datalayer.subscriptions,e.state)}},{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=Object.assign(Object.assign({},this._datalayer.state),e);this._datalayer.state=r,it(t,r)||(nt(this._datalayer.subscriptions,r),this._datalayer.syncToLocalStorage())}},{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}(),st=function(e){r(n,ot);var t=i(n);function n(){var e;return c(this,n),(e=t.apply(this,arguments)).updateUser=function(t){return e.updateState({user:t})},e.getUser=function(){var t,r;return null!==(r=null===(t=e.getState())||void 0===t?void 0:t.user)&&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 l(n)}();function at(e){var t=e.toString(16);return 1===t.length&&(t="0"+t),t}var ct,ut,lt,ht,dt,pt,ft=function(){function t(e,r){c(this,t),this._dataLayer=e,this.namespace=r}return l(t,[{key:"key",value:function(){return"PKCE_VERIFIER:"+this.namespace}},{key:"startPKCETransaction",value:function(){return ze(this,void 0,void 0,a().mark((function e(){var r;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.createProofkeyPair();case 2:return r=e.sent,this._dataLayer.setItem(this.key(),JSON.stringify(r)),e.abrupt("return",r);case 5:case"end":return e.stop()}}),e,this)})))}},{key:"getPKPair",value:function(){var e=this._dataLayer.getItem(this.key());if(null!==e)try{return JSON.parse(e)}catch(e){return void oe.warn("Found malformed Proof Key pair in localstorage.")}}},{key:"clearPKPair",value:function(){return this._dataLayer.removeItem(this.key())}}],[{key:"createProofkeyPair",value:function(){return ze(this,void 0,void 0,a().mark((function t(){var r,n,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=new Uint32Array(16),window.crypto.getRandomValues(r),n=Array.from(r).map(at).join(""),t.next=5,window.crypto.subtle.digest("SHA-256",(new TextEncoder).encode(n));case 5:return i=t.sent,t.abrupt("return",{code_challenge:(o=i,s=void 0,btoa((s=String.fromCharCode).call.apply(s,[null].concat(e(new Uint8Array(o))))).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")),code_verifier:n});case 7:case"end":return t.stop()}var o,s}),t)})))}}]),t}(),vt="bootstrap",mt=function(){return{displayWatermark:!1,cnameDomain:null,emailDomains:["stytch.com"],captchaSettings:{enabled:!1},pkceRequiredForEmailMagicLinks:!1,pkceRequiredForPasswordResets:!1,pkceRequiredForOAuth:!1,pkceRequiredForSso:!1}},yt=function(){function e(t,r,n){var i=this;c(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 i._dataLayer.setItem(vt,JSON.stringify(e)),e})).catch((function(e){return oe.error(e),mt()}))}return l(e,[{key:"getSync",value:function(){var e=this._dataLayer.getItem(vt);if(null===e)return mt();try{return JSON.parse(e)}catch(e){return mt()}}},{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}(),_t=l((function e(t){var r=this;c(this,e),this.bootstrapPromise=t,this.executeRecaptcha=function(){return ze(r,void 0,void 0,a().mark((function e(){var t,r,n,i;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.state;case 2:if(t=e.sent,r=t.captchaClient,n=t.configured,i=t.siteKey,n){e.next=8;break}return e.abrupt("return",void 0);case 8:return e.next=10,new Promise((function(e){return r.ready(e)}));case 10:return e.abrupt("return",r.execute(i,{action:"LOGIN"}));case 11:case"end":return e.stop()}}),e,this)})))},this.state=t.then((function(e){return ze(r,void 0,void 0,a().mark((function t(){return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e.captchaSettings.enabled){t.next=2;break}return t.abrupt("return",{configured:!1});case 2:return t.next=4,r=e.captchaSettings.siteKey,te("https://www.google.com/recaptcha/enterprise.js?render=".concat(r),(function(){return window.grecaptcha.enterprise}));case 4:return t.t0=t.sent,t.t1=e.captchaSettings.siteKey,t.abrupt("return",{configured:!0,captchaClient:t.t0,siteKey:t.t1});case 7:case"end":return t.stop()}var r}),t)})))}))}));function gt(e){return gt="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},gt(e)}function bt(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,(i=n.key,o=void 0,o=function(e,t){if("object"!==gt(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==gt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(i,"string"),"symbol"===gt(o)?o:String(o)),n)}var i,o}function wt(e,t,r){return t&&bt(e.prototype,t),r&&bt(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function kt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function St(e,t){if("function"!=typeof t&&null!==t)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&&Pt(e,t)}function Ot(e){var t=Ct();return function(){var r,n=At(e);if(t){var i=At(this).constructor;r=Reflect.construct(n,arguments,i)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===gt(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return xt(e)}(this,r)}}function xt(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Et(e){var t="function"==typeof Map?new Map:void 0;return Et=function(e){if(null===e||(r=e,-1===Function.toString.call(r).indexOf("[native code]")))return e;var r;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return Tt(e,arguments,At(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Pt(n,e)},Et(e)}function Tt(e,t,r){return Tt=Ct()?Reflect.construct.bind():function(e,t,r){var n=[null];n.push.apply(n,t);var i=new(Function.bind.apply(e,n));return r&&Pt(i,r.prototype),i},Tt.apply(null,arguments)}function Ct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function Pt(e,t){return Pt=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},Pt(e,t)}function At(e){return At=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},At(e)}!function(e){e.emailMagicLinks="emailMagicLinks",e.oauth="oauth",e.otp="otp",e.crypto="crypto",e.passwords="passwords"}(ct||(ct={})),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"}(ut||(ut={})),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"}(lt||(lt={})),function(e){e.embedded="embedded",e.floating="floating"}(ht||(ht={})),function(e){e.SMS="sms",e.WhatsApp="whatsapp",e.Email="email"}(dt||(dt={})),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"}(pt||(pt={}));var Rt,jt=function(e){St(r,Et(Error));var t=Ot(r);function r(e,n){var i;return kt(this,r),(i=t.call(this,e+"\n"+n)).message=e+"\n"+n,i.name="SDKAPIUnreachableError",i.details=n,Object.setPrototypeOf(xt(i),r.prototype),i}return wt(r)}(),Lt=function(e){St(r,Et(Error));var t=Ot(r);function r(e,n){var i;return kt(this,r),(i=t.call(this)).name="StytchSDKUsageError",i.message="Invalid call to ".concat(e,"\n")+n,i}return wt(r)}(),Dt=function(e){St(r,Et(Error));var t=Ot(r);function r(e){var n,i;kt(this,r),(n=t.call(this)).name="StytchSDKSchemaError";var o=null===(i=e.body)||void 0===i?void 0:i.map((function(e){return"".concat(e.dataPath,": ").concat(e.message)})).join("\n");return n.message="[400] Request does not match expected schema\n".concat(o),n}return wt(r)}(),It=function(e){St(r,Et(Error));var t=Ot(r);function r(e){var n;kt(this,r),(n=t.call(this)).name="StytchSDKAPIError";var i=e.status_code,o=e.error_type,s=e.error_message,a=e.error_url,c=e.request_id;return n.error_type=o,n.error_message=s,n.error_url=a,n.request_id=c,n.status_code=i,n.message="[".concat(i,"] ").concat(o,"\n")+"".concat(s,"\n")+"See ".concat(a," for more information.\n")+(c?"request_id: ".concat(c,"\n"):""),n}return wt(r)}(),Mt=function(e){St(r,Et(Error));var t=Ot(r);function r(e){var n;return kt(this,r),(n=t.call(this)).name="StytchSDKNativeError",n.error_type=e,n.message="".concat(e),n}return wt(r)}();!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"}(Rt||(Rt={}));var Ut=function(){function e(t,r,n){c(this,e),this._googleClient=t,this._publicToken=r,this._clientId=n}return l(e,[{key:"cancel",value:function(){this._googleClient.cancel()}},{key:"render",value:function(e){var t=e.callback,r=e.onOneTapCancelled,n=e.style;return ze(this,void 0,void 0,a().mark((function e(){var i,o=this;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i={client_id:this._clientId,callback:t,auto_select:!1,context:"use",itp_support:!0},n.position===ht.embedded&&(i.prompt_parent_id="google-parent-prompt",i.cancel_on_tap_outside=!1),this._googleClient.initialize(i),e.abrupt("return",new Promise((function(e){o._googleClient.prompt((function(t){return t.isSkippedMoment()?("user_cancel"===t.getSkippedReason()&&r(),e({success:!1,reason:t.getSkippedReason()})):t.isNotDisplayed()?e({success:!1,reason:t.getNotDisplayedReason()}):(o.styleFrame(n),e({success:!0}))}))})));case 4:case"end":return e.stop()}}),e,this)})))}},{key:"styleFrame",value:function(e){e.position===ht.embedded&&Array.from(document.getElementsByTagName("iframe")).forEach((function(e){e.src.includes(I)&&(e.style.width="100%")}))}}]),e}(),Ft=function(){function e(t,r){var n=this;c(this,e),this._publicToken=t,this.clientsideServices=r,this.createOnSuccessHandler=function(e){var t=e.loginRedirectUrl,r=e.signupRedirectUrl,i=e.onSuccess;return function(e){return ze(n,void 0,void 0,a().mark((function n(){var o,s,c;return a().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return o=e.credential,n.next=3,this.submitGoogleOneTapToken({credential:o,loginRedirectUrl:t,signupRedirectUrl:r});case 3:s=n.sent,c=s.redirect_url,i(c);case 6:case"end":return n.stop()}}),n,this)})))}},this.RedirectOnSuccess=function(e){window.location.href=e}}return l(e,[{key:"createOneTapClient",value:function(){return ze(this,void 0,void 0,a().mark((function e(){var t,r,n,i;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this.fetchGoogleStart();case 3:r=e.sent,t=r.googleClientId,e.next=11;break;case 7:return e.prev=7,e.t0=e.catch(0),n=e.t0,e.abrupt("return",{success:!1,reason:n.error_type});case 11:if(""!==t){e.next=13;break}return e.abrupt("return",{success:!1,reason:"oauth_config_not_found"});case 13:return e.t1=Ut,e.next=16,te(M,(function(){return window.google.accounts.id}));case 16:return e.t2=e.sent,e.t3=this._publicToken,e.t4=t,i=new e.t1(e.t2,e.t3,e.t4),e.abrupt("return",{success:!0,client:i});case 21:case"end":return e.stop()}}),e,this,[[0,7]])})))}},{key:"fetchGoogleStart",value:function(){return this.googleConfig||(this.googleConfig=this.clientsideServices.oneTapStart({publicToken:this._publicToken})),this.googleConfig}},{key:"submitGoogleOneTapToken",value:function(e){var t=e.credential,r=e.loginRedirectUrl,n=e.signupRedirectUrl;return ze(this,void 0,void 0,a().mark((function e(){var i,o;return a().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.fetchGoogleStart();case 2:return i=e.sent,o=i.oauthCallbackId,e.abrupt("return",this.clientsideServices.oneTapSubmit({publicToken:this._publicToken,idToken:t,loginRedirectURL:r,oauthCallbackID:o,signupRedirectURL:n}));case 5:case"end":return e.stop()}}),e,this)})))}}],[{key:"WillGoogleOneTapShowBannerForUA",value:function(e){var t=function(e,t){return-1!==e.indexOf(t)},r=t(e,"iPad")||t(e,"Android")&&!t(e,"Mobile")||t(e,"Silk"),n=t(e,"iPod")||t(e,"iPhone")||t(e,"Android")||t(e,"IEMobile");return!r&&n}},{key:"WillGoogleOneTapShowEmbedded",value:function(){return!e.WillGoogleOneTapShowBannerForUA(navigator.userAgent)}}]),e}(),Nt=Symbol.for("stytch__internal"),Kt=function(e,t){Object.assign(e,function(e,t,r){return(t=h(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({},Nt,t))},Bt=function(){function e(t){var r=this;c(this,e),this.iframeURL=t,this.oneTapStart=function(e){return r.call("oneTapStart",e)},this.oneTapSubmit=function(e){return r.call("oneTapSubmit",e)}}return l(e,[{key:"frameClient",get:function(){var e;return this._frameClient=null!==(e=this._frameClient)&&void 0!==e?e:new J(this.iframeURL),this._frameClient}},{key:"call",value:function(e,t){return this.frameClient.call(e,[t])}}]),e}(),qt=function(){function e(t){c(this,e),this._networkClient=t}return l(e,[{key:"search",value:function(e){return this._networkClient.fetchSDK({url:"/users/search",method:"POST",body:{email:e},errorMessage:"Error searching for user ".concat(e)})}}]),e}(),Gt=l((function e(t,r){var n,i=this;c(this,e),function(e){var t="StytchUIClient"===e?"import { createStytchUIClient } from '@stytch/nextjs/ui';\n \nconst stytch = createStytchUIClient('public-token-...');\n":"import { createStytchHeadlessClient } from '@stytch/nextjs/ui';\n \nconst stytch = createStytchHeadlessClient('public-token-...');\n";if("undefined"==typeof window)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(t,"\n```\n"))}("StytchHeadlessClient"),"string"!=typeof(n=t)?oe.warn("Public token is malformed. Expected a string, got ".concat(f(n),".").concat(se)):""===n?oe.warn('Public token is malformed. Expected "public-token-...", got an empty string.'.concat(se)):n.startsWith("public-token-")||oe.warn('Public token is malformed. Expected "public-token-...", got '.concat(n,".").concat(se));var o,s,a,u,l,h,d,p,v,m=r,y={cookieOptions:null==(o=m)?void 0:o.cookieOptions,endpoints:{sdkBackendURL:null!==(a=null===(s=null==o?void 0:o.endpoints)||void 0===s?void 0:s.sdkBackendURL)&&void 0!==a?a:"https://web.stytch.com",testAPIURL:null!==(l=null===(u=null==o?void 0:o.endpoints)||void 0===u?void 0:u.testAPIURL)&&void 0!==l?l:"https://test.stytch.com",liveAPIURL:null!==(d=null===(h=null==o?void 0:o.endpoints)||void 0===h?void 0:h.liveAPIURL)&&void 0!==d?d:"https://api.stytch.com",clientsideServicesIframeURL:null!==(v=null===(p=null==o?void 0:o.endpoints)||void 0===p?void 0:p.clientsideServicesIframeURL)&&void 0!==v?v:"https://js.stytch.com/clientside-services/index.html"}};this._dataLayer=rt(t,m),this._subscriptionService=new st(t,this._dataLayer);this._networkClient=new Ve(t,this._dataLayer,y.endpoints.sdkBackendURL,(function(){var e,t,r,n;return{stytch_user_id:null===(t=null===(e=i._dataLayer.state)||void 0===e?void 0:e.user)||void 0===t?void 0:t.user_id,stytch_session_id:null===(n=null===(r=i._dataLayer.state)||void 0===r?void 0:r.session)||void 0===n?void 0:n.session_id}}));var _=new yt(t,this._networkClient,this._dataLayer),g=new _t(_.getAsync()),b=new Bt(y.endpoints.clientsideServicesIframeURL),w=new Ft(t,b),k=new qt(this._networkClient);this.user=new ve(this._networkClient,this._subscriptionService),this.session=new me(this._networkClient,this._subscriptionService),this.magicLinks=new _e(this._networkClient,this._subscriptionService,new ft(this._dataLayer,"magic_links"),_.getAsync(),g.executeRecaptcha),this.otps=new ge(this._networkClient,this._subscriptionService,g.executeRecaptcha),this.oauth=new be(this._networkClient,this._subscriptionService,new ft(this._dataLayer,"oauth"),_.getAsync(),{publicToken:t,testAPIURL:y.endpoints.testAPIURL,liveAPIURL:y.endpoints.liveAPIURL}),this.cryptoWallets=new we(this._networkClient,this._subscriptionService,g.executeRecaptcha),this.totps=new ke(this._networkClient,this._subscriptionService),this.webauthn=new We(this._networkClient,this._subscriptionService),this.passwords=new Je(this._networkClient,this._subscriptionService,new ft(this._dataLayer,"passwords"),_.getAsync(),g.executeRecaptcha),this._sessionManager=new he(this._subscriptionService,this.session),this._dataLayer.readSessionCookie().session_token&&this._sessionManager.performBackgroundRefresh(),this._networkClient.logEvent({name:"sdk_instance_instantiated",details:{event_callback_registered:!1,error_callback_registered:!1,success_callback_registered:!1}}),Kt(this,{bootstrap:_,clientsideServices:b,captcha:g,oneTap:w,userSearch:k,publicToken:t})}));export{Rt as BiometricsErrors,ut as OAuthProviders,dt as OTPMethods,ht as OneTapPositions,ct as Products,jt as SDKAPIUnreachableError,pt as StytchEventType,Gt as StytchHeadlessClient,It as StytchSDKAPIError,Mt as StytchSDKNativeError,Dt as StytchSDKSchemaError,Lt as StytchSDKUsageError,lt as Wallets};