@nhost/nhost-js 3.3.0 → 3.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/umd/nhost-js.umd.js +8 -8
- package/umd/nhost-js.umd.js.map +1 -1
package/umd/nhost-js.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(m,te){typeof exports=="object"&&typeof module!="undefined"?te(exports,require("graphql")):typeof define=="function"&&define.amd?define(["exports","graphql"],te):(m=typeof globalThis!="undefined"?globalThis:m||self,te(m["@nhost/nhost-js"]={},m.graphql))})(this,function(m,te){"use strict";var Vs=Object.defineProperty;var Ks=(m,te,he)=>te in m?Vs(m,te,{enumerable:!0,configurable:!0,writable:!0,value:he}):m[te]=he;var de=(m,te,he)=>Ks(m,typeof te!="symbol"?te+"":te,he);class he extends Error{}he.prototype.name="InvalidTokenError";function ii(t){return decodeURIComponent(atob(t).replace(/(.)/g,(e,r)=>{let n=r.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n}))}function si(t){let e=t.replace(/-/g,"+").replace(/_/g,"/");switch(e.length%4){case 0:break;case 2:e+="==";break;case 3:e+="=";break;default:throw new Error("base64 string is not of the correct length")}try{return ii(e)}catch{return atob(e)}}function pr(t,e){if(typeof t!="string")throw new he("Invalid token specified: must be a string");e||(e={});const r=e.header===!0?0:1,n=t.split(".")[r];if(typeof n!="string")throw new he(`Invalid token specified: missing part #${r+1}`);let i;try{i=si(n)}catch(s){throw new he(`Invalid token specified: invalid base64 for part #${r+1} (${s.message})`)}try{return JSON.parse(i)}catch(s){throw new he(`Invalid token specified: invalid json for part #${r+1} (${s.message})`)}}/*! *****************************************************************************
|
|
2
2
|
Copyright (c) Microsoft Corporation.
|
|
3
3
|
|
|
4
4
|
Permission to use, copy, modify, and/or distribute this software for any
|
|
@@ -11,12 +11,12 @@
|
|
|
11
11
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
12
12
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
13
13
|
PERFORMANCE OF THIS SOFTWARE.
|
|
14
|
-
***************************************************************************** */var E=function(){return E=Object.assign||function(e){for(var r,n=1,i=arguments.length;n<i;n++){r=arguments[n];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])}return e},E.apply(this,arguments)};function Dt(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r}function x(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function P(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(u){o={error:u}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s}function q(t,e,r){if(arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))}var j;(function(t){t.Start="xstate.start",t.Stop="xstate.stop",t.Raise="xstate.raise",t.Send="xstate.send",t.Cancel="xstate.cancel",t.NullEvent="",t.Assign="xstate.assign",t.After="xstate.after",t.DoneState="done.state",t.DoneInvoke="done.invoke",t.Log="xstate.log",t.Init="xstate.init",t.Invoke="xstate.invoke",t.ErrorExecution="error.execution",t.ErrorCommunication="error.communication",t.ErrorPlatform="error.platform",t.ErrorCustom="xstate.error",t.Update="xstate.update",t.Pure="xstate.pure",t.Choose="xstate.choose"})(j||(j={}));var ge;(function(t){t.Parent="#_parent",t.Internal="#_internal"})(ge||(ge={}));var it=j.Start,st=j.Stop,Oe=j.Raise,He=j.Send,Ct=j.Cancel,wr=j.NullEvent,ot=j.Assign,di=j.After,hi=j.DoneState,at=j.Log,Tr=j.Init,ct=j.Invoke,fi=j.ErrorExecution,Mt=j.ErrorPlatform,Lt=j.ErrorCustom,ut=j.Update,Sr=j.Choose,br=j.Pure;const pi=Object.freeze(Object.defineProperty({__proto__:null,after:di,assign:ot,cancel:Ct,choose:Sr,doneState:hi,error:Lt,errorExecution:fi,errorPlatform:Mt,init:Tr,invoke:ct,log:at,nullEvent:wr,pure:br,raise:Oe,send:He,start:it,stop:st,update:ut},Symbol.toStringTag,{value:"Module"}));var kr=".",Ar={},jt="xstate.guard",vi="",V=process.env.NODE_ENV==="production",lt;function $t(t,e,r){r===void 0&&(r=kr);var n=qe(t,r),i=qe(e,r);return U(i)?U(n)?i===n:!1:U(n)?n in i:Object.keys(n).every(function(s){return s in i?$t(n[s],i[s]):!1})}function Or(t){try{return U(t)||typeof t=="number"?"".concat(t):t.type}catch{throw new Error("Events must be strings or objects with a string event.type property.")}}function Ft(t,e){try{return Ie(t)?t:t.toString().split(e)}catch{throw new Error("'".concat(t,"' is not a valid state path."))}}function yi(t){return typeof t=="object"&&"value"in t&&"context"in t&&"event"in t&&"_event"in t}function qe(t,e){if(yi(t))return t.value;if(Ie(t))return dt(t);if(typeof t!="string")return t;var r=Ft(t,e);return dt(r)}function dt(t){if(t.length===1)return t[0];for(var e={},r=e,n=0;n<t.length-1;n++)n===t.length-2?r[t[n]]=t[n+1]:(r[t[n]]={},r=r[t[n]]);return e}function Ke(t,e){for(var r={},n=Object.keys(t),i=0;i<n.length;i++){var s=n[i];r[s]=e(t[s],s,t,i)}return r}function Ir(t,e,r){var n,i,s={};try{for(var o=x(Object.keys(t)),u=o.next();!u.done;u=o.next()){var c=u.value,d=t[c];r(d)&&(s[c]=e(d,c,t))}}catch(h){n={error:h}}finally{try{u&&!u.done&&(i=o.return)&&i.call(o)}finally{if(n)throw n.error}}return s}var gi=function(t){return function(e){var r,n,i=e;try{for(var s=x(t),o=s.next();!o.done;o=s.next()){var u=o.value;i=i[u]}}catch(c){r={error:c}}finally{try{o&&!o.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return i}};function mi(t,e){return function(r){var n,i,s=r;try{for(var o=x(t),u=o.next();!u.done;u=o.next()){var c=u.value;s=s[e][c]}}catch(d){n={error:d}}finally{try{u&&!u.done&&(i=o.return)&&i.call(o)}finally{if(n)throw n.error}}return s}}function ht(t){if(!t)return[[]];if(U(t))return[[t]];var e=G(Object.keys(t).map(function(r){var n=t[r];return typeof n!="string"&&(!n||!Object.keys(n).length)?[[r]]:ht(t[r]).map(function(i){return[r].concat(i)})}));return e}function G(t){var e;return(e=[]).concat.apply(e,q([],P(t),!1))}function Rr(t){return Ie(t)?t:[t]}function oe(t){return t===void 0?[]:Rr(t)}function ft(t,e,r){var n,i;if(N(t))return t(e,r.data);var s={};try{for(var o=x(Object.keys(t)),u=o.next();!u.done;u=o.next()){var c=u.value,d=t[c];N(d)?s[c]=d(e,r.data):s[c]=d}}catch(h){n={error:h}}finally{try{u&&!u.done&&(i=o.return)&&i.call(o)}finally{if(n)throw n.error}}return s}function Ei(t){return/^(done|error)\./.test(t)}function xr(t){return!!(t instanceof Promise||t!==null&&(N(t)||typeof t=="object")&&N(t.then))}function wi(t){return t!==null&&typeof t=="object"&&"transition"in t&&typeof t.transition=="function"}function Ti(t,e){var r,n,i=P([[],[]],2),s=i[0],o=i[1];try{for(var u=x(t),c=u.next();!c.done;c=u.next()){var d=c.value;e(d)?s.push(d):o.push(d)}}catch(h){r={error:h}}finally{try{c&&!c.done&&(n=u.return)&&n.call(u)}finally{if(r)throw r.error}}return[s,o]}function _r(t,e){return Ke(t.states,function(r,n){if(r){var i=(U(e)?void 0:e[n])||(r?r.current:void 0);if(i)return{current:i,states:_r(r,i)}}})}function Si(t,e){return{current:e,states:_r(t,e)}}function Pr(t,e,r,n){V||J(!!t,"Attempting to update undefined context");var i=t&&r.reduce(function(s,o){var u,c,d=o.assignment,h={state:n,action:o,_event:e},v={};if(N(d))v=d(s,e.data,h);else try{for(var a=x(Object.keys(d)),l=a.next();!l.done;l=a.next()){var f=l.value,y=d[f];v[f]=N(y)?y(s,e.data,h):y}}catch(T){u={error:T}}finally{try{l&&!l.done&&(c=a.return)&&c.call(a)}finally{if(u)throw u.error}}return Object.assign({},s,v)},t);return i}var J=function(){};V||(J=function(t,e){var r=t instanceof Error?t:void 0;if(!(!r&&t)&&console!==void 0){var n=["Warning: ".concat(e)];r&&n.push(r),console.warn.apply(console,n)}});function Ie(t){return Array.isArray(t)}function N(t){return typeof t=="function"}function U(t){return typeof t=="string"}function Nr(t,e){if(t)return U(t)?{type:jt,name:t,predicate:e?e[t]:void 0}:N(t)?{type:jt,name:t.name,predicate:t}:t}function bi(t){try{return"subscribe"in t&&N(t.subscribe)}catch{return!1}}var me=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();lt={},lt[me]=function(){return this},lt[Symbol.observable]=function(){return this};function pe(t){return!!t&&"__xstatenode"in t}function ki(t){return!!t&&typeof t.send=="function"}var Ai=function(){var t=0;return function(){return t++,t.toString(16)}}();function pt(t,e){return U(t)||typeof t=="number"?E({type:t},e):t}function Q(t,e){if(!U(t)&&"$$type"in t&&t.$$type==="scxml")return t;var r=pt(t);return E({name:r.type,data:r,$$type:"scxml",type:"external"},e)}function Re(t,e){var r=Rr(e).map(function(n){return typeof n=="undefined"||typeof n=="string"||pe(n)?{target:n,event:t}:E(E({},n),{event:t})});return r}function Oi(t){if(!(t===void 0||t===vi))return oe(t)}function Ii(t,e,r){if(!V){var n=t.stack?" Stacktrace was '".concat(t.stack,"'"):"";if(t===e)console.error("Missing onError handler for invocation '".concat(r,"', error was '").concat(t,"'.").concat(n));else{var i=e.stack?" Stacktrace was '".concat(e.stack,"'"):"";console.error("Missing onError handler and/or unhandled exception/promise rejection for invocation '".concat(r,"'. ")+"Original error: '".concat(t,"'. ").concat(n," Current error is '").concat(e,"'.").concat(i))}}}function Ur(t,e,r,n,i){var s=t.options.guards,o={state:i,cond:e,_event:n};if(e.type===jt)return((s==null?void 0:s[e.name])||e.predicate)(r,n.data,o);var u=s==null?void 0:s[e.type];if(!u)throw new Error("Guard '".concat(e.type,"' is not implemented on machine '").concat(t.id,"'."));return u(r,n.data,o)}function Dr(t){return typeof t=="string"?{type:t}:t}function vt(t,e,r){var n=function(){},i=typeof t=="object",s=i?t:null;return{next:((i?t.next:t)||n).bind(s),error:((i?t.error:e)||n).bind(s),complete:((i?t.complete:r)||n).bind(s)}}function yt(t,e){return"".concat(t,":invocation[").concat(e,"]")}function Ht(t){return(t.type===Oe||t.type===He&&t.to===ge.Internal)&&typeof t.delay!="number"}var we=Q({type:Tr});function gt(t,e){return e&&e[t]||void 0}function xe(t,e){var r;if(U(t)||typeof t=="number"){var n=gt(t,e);N(n)?r={type:t,exec:n}:n?r=n:r={type:t,exec:void 0}}else if(N(t))r={type:t.name||t.toString(),exec:t};else{var n=gt(t.type,e);if(N(n))r=E(E({},t),{exec:n});else if(n){var i=n.type||t.type;r=E(E(E({},n),t),{type:i})}else r=t}return r}var ve=function(t,e){if(!t)return[];var r=Ie(t)?t:[t];return r.map(function(n){return xe(n,e)})};function mt(t){var e=xe(t);return E(E({id:U(t)?t:e.id},e),{type:e.type})}function Cr(t,e){return{type:Oe,event:typeof t=="function"?t:pt(t),delay:e?e.delay:void 0,id:e==null?void 0:e.id}}function Mr(t,e,r,n){var i={_event:r},s=Q(N(t.event)?t.event(e,r.data,i):t.event),o;if(U(t.delay)){var u=n&&n[t.delay];o=N(u)?u(e,r.data,i):u}else o=N(t.delay)?t.delay(e,r.data,i):t.delay;return E(E({},t),{type:Oe,_event:s,delay:o})}function Te(t,e){return{to:e?e.to:void 0,type:He,event:N(t)?t:pt(t),delay:e?e.delay:void 0,id:e&&e.id!==void 0?e.id:N(t)?t.name:Or(t)}}function Lr(t,e,r,n){var i={_event:r},s=Q(N(t.event)?t.event(e,r.data,i):t.event),o;if(U(t.delay)){var u=n&&n[t.delay];o=N(u)?u(e,r.data,i):u}else o=N(t.delay)?t.delay(e,r.data,i):t.delay;var c=N(t.to)?t.to(e,r.data,i):t.to;return E(E({},t),{to:c,_event:s,event:s.data,delay:o})}function qt(t,e){return Te(t,E(E({},e),{to:ge.Parent}))}function Ri(t,e,r){return Te(e,E(E({},r),{to:t}))}function xi(){return qt(ut)}function _i(t,e){return Te(t,E(E({},e),{to:function(r,n,i){var s=i._event;return s.origin}}))}var Pi=function(t,e){return{context:t,event:e}};function Ni(t,e){return t===void 0&&(t=Pi),{type:at,label:e,expr:t}}var jr=function(t,e,r){return E(E({},t),{value:U(t.expr)?t.expr:t.expr(e,r.data,{_event:r})})},$r=function(t){return{type:Ct,sendId:t}};function Fr(t){var e=mt(t);return{type:j.Start,activity:e,exec:void 0}}function Hr(t){var e=N(t)?t:mt(t);return{type:j.Stop,activity:e,exec:void 0}}function qr(t,e,r){var n=N(t.activity)?t.activity(e,r.data):t.activity,i=typeof n=="string"?{id:n}:n,s={type:j.Stop,activity:i};return s}var Kr=function(t){return{type:ot,assignment:t}};function Ui(t){return typeof t=="object"&&"type"in t}function Vr(t,e){var r=e?"#".concat(e):"";return"".concat(j.After,"(").concat(t,")").concat(r)}function Ve(t,e){var r="".concat(j.DoneState,".").concat(t),n={type:r,data:e};return n.toString=function(){return r},n}function Ge(t,e){var r="".concat(j.DoneInvoke,".").concat(t),n={type:r,data:e};return n.toString=function(){return r},n}function _e(t,e){var r="".concat(j.ErrorPlatform,".").concat(t),n={type:r,data:e};return n.toString=function(){return r},n}function Di(t){return{type:j.Pure,get:t}}function Ci(t,e){if(!V&&(!t||typeof t=="function")){var r=t;t=function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var s=typeof r=="function"?r.apply(void 0,q([],P(n),!1)):r;if(!s)throw new Error("Attempted to forward event to undefined actor. This risks an infinite loop in the sender.");return s}}return Te(function(n,i){return i},E(E({},e),{to:t}))}function Mi(t,e){return qt(function(r,n,i){return{type:Lt,data:N(t)?t(r,n,i):t}},E(E({},e),{to:ge.Parent}))}function Li(t){return{type:j.Choose,conds:t}}var ji=function(t){var e,r,n=[];try{for(var i=x(t),s=i.next();!s.done;s=i.next())for(var o=s.value,u=0;u<o.actions.length;){if(o.actions[u].type===ot){n.push(o.actions[u]),o.actions.splice(u,1);continue}u++}}catch(c){e={error:c}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return n};function Be(t,e,r,n,i,s,o){o===void 0&&(o=!1);var u=o?[]:ji(i),c=u.length?Pr(r,n,u,e):r,d=o?[r]:void 0,h=[];function v(f,y){var T;switch(y.type){case Oe:{var m=Mr(y,c,n,t.options.delays);return s&&typeof m.delay=="number"&&s(m,c,n),m}case He:var S=Lr(y,c,n,t.options.delays);if(!V){var b=y.delay;J(!U(b)||typeof S.delay=="number","No delay reference for delay expression '".concat(b,"' was found on machine '").concat(t.id,"'"))}return s&&S.to!==ge.Internal&&(f==="entry"?h.push(S):s(S,c,n)),S;case at:{var O=jr(y,c,n);return s==null||s(O,c,n),O}case Sr:{var M=y,D=(T=M.conds.find(function(p){var w=Nr(p.cond,t.options.guards);return!w||Ur(t,w,c,n,s?void 0:e)}))===null||T===void 0?void 0:T.actions;if(!D)return[];var _=P(Be(t,e,c,n,[{type:f,actions:ve(oe(D),t.options.actions)}],s,o),2),$=_[0],R=_[1];return c=R,d==null||d.push(c),$}case br:{var D=y.get(c,n.data);if(!D)return[];var B=P(Be(t,e,c,n,[{type:f,actions:ve(oe(D),t.options.actions)}],s,o),2),A=B[0],F=B[1];return c=F,d==null||d.push(c),A}case st:{var O=qr(y,c,n);return s==null||s(O,r,n),O}case ot:{c=Pr(c,n,[y],s?void 0:e),d==null||d.push(c);break}default:var z=xe(y,t.options.actions),K=z.exec;if(s)s(z,c,n);else if(K&&d){var ke=d.length-1,Ae=E(E({},z),{exec:function(p){for(var w=[],k=1;k<arguments.length;k++)w[k-1]=arguments[k];K.apply(void 0,q([d[ke]],P(w),!1))}});z=Ae}return z}}function a(f){var y,T,m=[];try{for(var S=x(f.actions),b=S.next();!b.done;b=S.next()){var O=b.value,M=v(f.type,O);M&&(m=m.concat(M))}}catch(D){y={error:D}}finally{try{b&&!b.done&&(T=S.return)&&T.call(S)}finally{if(y)throw y.error}}return h.forEach(function(D){s(D,c,n)}),h.length=0,m}var l=G(i.map(a));return[l,c]}const $i=Object.freeze(Object.defineProperty({__proto__:null,actionTypes:pi,after:Vr,assign:Kr,cancel:$r,choose:Li,done:Ve,doneInvoke:Ge,error:_e,escalate:Mi,forwardTo:Ci,getActionFunction:gt,initEvent:we,isActionObject:Ui,log:Ni,pure:Di,raise:Cr,resolveActions:Be,resolveLog:jr,resolveRaise:Mr,resolveSend:Lr,resolveStop:qr,respond:_i,send:Te,sendParent:qt,sendTo:Ri,sendUpdate:xi,start:Fr,stop:Hr,toActionObject:xe,toActionObjects:ve,toActivityDefinition:mt},Symbol.toStringTag,{value:"Module"}));var Et=[],Pe=function(t,e){Et.push(t);var r=e(t);return Et.pop(),r},Fi=function(t){return t(Et[Et.length-1])};function Gr(t){var e;return e={id:t,send:function(){},subscribe:function(){return{unsubscribe:function(){}}},getSnapshot:function(){},toJSON:function(){return{id:t}}},e[me]=function(){return this},e}function Hi(t,e,r,n){var i,s=Dr(t.src),o=(i=e==null?void 0:e.options.services)===null||i===void 0?void 0:i[s.type],u=t.data?ft(t.data,r,n):void 0,c=o?Kt(o,t.id,u):Gr(t.id);return c.meta=t,c}function Kt(t,e,r){var n=Gr(e);if(n.deferred=!0,pe(t)){var i=n.state=Pe(void 0,function(){return(r?t.withContext(r):t).initialState});n.getSnapshot=function(){return i}}return n}function qi(t){try{return typeof t.send=="function"}catch{return!1}}function Ki(t){return qi(t)&&"id"in t}function Vi(t){var e;return E((e={subscribe:function(){return{unsubscribe:function(){}}},id:"anonymous",getSnapshot:function(){}},e[me]=function(){return this},e),t)}var wt=function(t){return t.type==="atomic"||t.type==="final"};function Br(t){return Object.keys(t.states).map(function(e){return t.states[e]})}function ze(t){return Br(t).filter(function(e){return e.type!=="history"})}function zr(t){var e=[t];return wt(t)?e:e.concat(G(ze(t).map(zr)))}function Ye(t,e){var r,n,i,s,o,u,c,d,h=new Set(t),v=Vt(h),a=new Set(e);try{for(var l=x(a),f=l.next();!f.done;f=l.next())for(var y=f.value,T=y.parent;T&&!a.has(T);)a.add(T),T=T.parent}catch(R){r={error:R}}finally{try{f&&!f.done&&(n=l.return)&&n.call(l)}finally{if(r)throw r.error}}var m=Vt(a);try{for(var S=x(a),b=S.next();!b.done;b=S.next()){var y=b.value;if(y.type==="compound"&&(!m.get(y)||!m.get(y).length))v.get(y)?v.get(y).forEach(function(B){return a.add(B)}):y.initialStateNodes.forEach(function(B){return a.add(B)});else if(y.type==="parallel")try{for(var O=(o=void 0,x(ze(y))),M=O.next();!M.done;M=O.next()){var D=M.value;a.has(D)||(a.add(D),v.get(D)?v.get(D).forEach(function(B){return a.add(B)}):D.initialStateNodes.forEach(function(B){return a.add(B)}))}}catch(B){o={error:B}}finally{try{M&&!M.done&&(u=O.return)&&u.call(O)}finally{if(o)throw o.error}}}}catch(R){i={error:R}}finally{try{b&&!b.done&&(s=S.return)&&s.call(S)}finally{if(i)throw i.error}}try{for(var _=x(a),$=_.next();!$.done;$=_.next())for(var y=$.value,T=y.parent;T&&!a.has(T);)a.add(T),T=T.parent}catch(R){c={error:R}}finally{try{$&&!$.done&&(d=_.return)&&d.call(_)}finally{if(c)throw c.error}}return a}function Yr(t,e){var r=e.get(t);if(!r)return{};if(t.type==="compound"){var n=r[0];if(n){if(wt(n))return n.key}else return{}}var i={};return r.forEach(function(s){i[s.key]=Yr(s,e)}),i}function Vt(t){var e,r,n=new Map;try{for(var i=x(t),s=i.next();!s.done;s=i.next()){var o=s.value;n.has(o)||n.set(o,[]),o.parent&&(n.has(o.parent)||n.set(o.parent,[]),n.get(o.parent).push(o))}}catch(u){e={error:u}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return n}function Gi(t,e){var r=Ye([t],e);return Yr(t,Vt(r))}function We(t,e){return Array.isArray(t)?t.some(function(r){return r===e}):t instanceof Set?t.has(e):!1}function Bi(t){return q([],P(new Set(G(q([],P(t.map(function(e){return e.ownEvents})),!1)))),!1)}function Tt(t,e){return e.type==="compound"?ze(e).some(function(r){return r.type==="final"&&We(t,r)}):e.type==="parallel"?ze(e).every(function(r){return Tt(t,r)}):!1}function zi(t){return t===void 0&&(t=[]),t.reduce(function(e,r){return r.meta!==void 0&&(e[r.id]=r.meta),e},{})}function Wr(t){return new Set(G(t.map(function(e){return e.tags})))}function Jr(t,e){if(t===e)return!0;if(t===void 0||e===void 0)return!1;if(U(t)||U(e))return t===e;var r=Object.keys(t),n=Object.keys(e);return r.length===n.length&&r.every(function(i){return Jr(t[i],e[i])})}function Yi(t){return typeof t!="object"||t===null?!1:"value"in t&&"_event"in t}function Wi(t,e){var r=t.exec,n=E(E({},t),{exec:r!==void 0?function(){return r(e.context,e.event,{action:t,state:e,_event:e._event})}:void 0});return n}var fe=function(){function t(e){var r=this,n;this.actions=[],this.activities=Ar,this.meta={},this.events=[],this.value=e.value,this.context=e.context,this._event=e._event,this._sessionid=e._sessionid,this.event=this._event.data,this.historyValue=e.historyValue,this.history=e.history,this.actions=e.actions||[],this.activities=e.activities||Ar,this.meta=zi(e.configuration),this.events=e.events||[],this.matches=this.matches.bind(this),this.toStrings=this.toStrings.bind(this),this.configuration=e.configuration,this.transitions=e.transitions,this.children=e.children,this.done=!!e.done,this.tags=(n=Array.isArray(e.tags)?new Set(e.tags):e.tags)!==null&&n!==void 0?n:new Set,this.machine=e.machine,Object.defineProperty(this,"nextEvents",{get:function(){return Bi(r.configuration)}})}return t.from=function(e,r){if(e instanceof t)return e.context!==r?new t({value:e.value,context:r,_event:e._event,_sessionid:null,historyValue:e.historyValue,history:e.history,actions:[],activities:e.activities,meta:{},events:[],configuration:[],transitions:[],children:{}}):e;var n=we;return new t({value:e,context:r,_event:n,_sessionid:null,historyValue:void 0,history:void 0,actions:[],activities:void 0,meta:void 0,events:[],configuration:[],transitions:[],children:{}})},t.create=function(e){return new t(e)},t.inert=function(e,r){if(e instanceof t){if(!e.actions.length)return e;var n=we;return new t({value:e.value,context:r,_event:n,_sessionid:null,historyValue:e.historyValue,history:e.history,activities:e.activities,configuration:e.configuration,transitions:[],children:{}})}return t.from(e,r)},t.prototype.toStrings=function(e,r){var n=this;if(e===void 0&&(e=this.value),r===void 0&&(r="."),U(e))return[e];var i=Object.keys(e);return i.concat.apply(i,q([],P(i.map(function(s){return n.toStrings(e[s],r).map(function(o){return s+r+o})})),!1))},t.prototype.toJSON=function(){var e=this;e.configuration,e.transitions;var r=e.tags;e.machine;var n=Dt(e,["configuration","transitions","tags","machine"]);return E(E({},n),{tags:Array.from(r)})},t.prototype.matches=function(e){return $t(e,this.value)},t.prototype.hasTag=function(e){return this.tags.has(e)},t.prototype.can=function(e){var r;V&&J(!!this.machine,"state.can(...) used outside of a machine-created State object; this will always return false.");var n=(r=this.machine)===null||r===void 0?void 0:r.getTransitionData(this,e);return!!(n!=null&&n.transitions.length)&&n.transitions.some(function(i){return i.target!==void 0||i.actions.length})},t}(),Ji={deferEvents:!1},Xr=function(){function t(e){this.processingEvent=!1,this.queue=[],this.initialized=!1,this.options=E(E({},Ji),e)}return t.prototype.initialize=function(e){if(this.initialized=!0,e){if(!this.options.deferEvents){this.schedule(e);return}this.process(e)}this.flushEvents()},t.prototype.schedule=function(e){if(!this.initialized||this.processingEvent){this.queue.push(e);return}if(this.queue.length!==0)throw new Error("Event queue should be empty when it is not processing events");this.process(e),this.flushEvents()},t.prototype.clear=function(){this.queue=[]},t.prototype.flushEvents=function(){for(var e=this.queue.shift();e;)this.process(e),e=this.queue.shift()},t.prototype.process=function(e){this.processingEvent=!0;try{e()}catch(r){throw this.clear(),r}finally{this.processingEvent=!1}},t}(),Gt=new Map,Xi=0,Je={bookId:function(){return"x:".concat(Xi++)},register:function(t,e){return Gt.set(t,e),t},get:function(t){return Gt.get(t)},free:function(t){Gt.delete(t)}};function Bt(){if(typeof globalThis!="undefined")return globalThis;if(typeof self!="undefined")return self;if(typeof window!="undefined")return window;if(typeof global!="undefined")return global;V||console.warn("XState could not find a global object in this environment. Please let the maintainers know and raise an issue here: https://github.com/statelyai/xstate/issues")}function Qi(){var t=Bt();if(t&&"__xstate__"in t)return t.__xstate__}function Zi(t){if(Bt()){var e=Qi();e&&e.register(t)}}function es(t,e){e===void 0&&(e={});var r=t.initialState,n=new Set,i=[],s=!1,o=function(){if(!s){for(s=!0;i.length>0;){var d=i.shift();r=t.transition(r,d,c),n.forEach(function(h){return h.next(r)})}s=!1}},u=Vi({id:e.id,send:function(d){i.push(d),o()},getSnapshot:function(){return r},subscribe:function(d,h,v){var a=vt(d,h,v);return n.add(a),a.next(r),{unsubscribe:function(){n.delete(a)}}}}),c={parent:e.parent,self:u,id:e.id||"anonymous",observers:n};return r=t.start?t.start(c):r,u}var zt={sync:!1,autoForward:!1},Y;(function(t){t[t.NotStarted=0]="NotStarted",t[t.Running=1]="Running",t[t.Stopped=2]="Stopped"})(Y||(Y={}));var ts=function(){function t(e,r){r===void 0&&(r=t.defaultOptions);var n=this;this.machine=e,this.delayedEventsMap={},this.listeners=new Set,this.contextListeners=new Set,this.stopListeners=new Set,this.doneListeners=new Set,this.eventListeners=new Set,this.sendListeners=new Set,this.initialized=!1,this.status=Y.NotStarted,this.children=new Map,this.forwardTo=new Set,this._outgoingQueue=[],this.init=this.start,this.send=function(h,v){if(Ie(h))return n.batch(h),n.state;var a=Q(pt(h,v));if(n.status===Y.Stopped)return V||J(!1,'Event "'.concat(a.name,'" was sent to stopped service "').concat(n.machine.id,`". This service has already reached its final state, and will not transition.
|
|
14
|
+
***************************************************************************** */var E=function(){return E=Object.assign||function(e){for(var r,n=1,i=arguments.length;n<i;n++){r=arguments[n];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])}return e},E.apply(this,arguments)};function Ut(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r}function x(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],n=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function P(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),i,s=[],o;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)s.push(i.value)}catch(u){o={error:u}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(o)throw o.error}}return s}function q(t,e,r){if(arguments.length===2)for(var n=0,i=e.length,s;n<i;n++)(s||!(n in e))&&(s||(s=Array.prototype.slice.call(e,0,n)),s[n]=e[n]);return t.concat(s||Array.prototype.slice.call(e))}var j;(function(t){t.Start="xstate.start",t.Stop="xstate.stop",t.Raise="xstate.raise",t.Send="xstate.send",t.Cancel="xstate.cancel",t.NullEvent="",t.Assign="xstate.assign",t.After="xstate.after",t.DoneState="done.state",t.DoneInvoke="done.invoke",t.Log="xstate.log",t.Init="xstate.init",t.Invoke="xstate.invoke",t.ErrorExecution="error.execution",t.ErrorCommunication="error.communication",t.ErrorPlatform="error.platform",t.ErrorCustom="xstate.error",t.Update="xstate.update",t.Pure="xstate.pure",t.Choose="xstate.choose"})(j||(j={}));var me;(function(t){t.Parent="#_parent",t.Internal="#_internal"})(me||(me={}));var nt=j.Start,it=j.Stop,Oe=j.Raise,He=j.Send,Dt=j.Cancel,vr=j.NullEvent,st=j.Assign,oi=j.After,ai=j.DoneState,ot=j.Log,yr=j.Init,at=j.Invoke,ci=j.ErrorExecution,Ct=j.ErrorPlatform,Mt=j.ErrorCustom,ct=j.Update,mr=j.Choose,gr=j.Pure;const ui=Object.freeze(Object.defineProperty({__proto__:null,after:oi,assign:st,cancel:Dt,choose:mr,doneState:ai,error:Mt,errorExecution:ci,errorPlatform:Ct,init:yr,invoke:at,log:ot,nullEvent:vr,pure:gr,raise:Oe,send:He,start:nt,stop:it,update:ct},Symbol.toStringTag,{value:"Module"}));var Er=".",wr={},Lt="xstate.guard",li="",K=process.env.NODE_ENV==="production",ut;function jt(t,e,r){r===void 0&&(r=Er);var n=qe(t,r),i=qe(e,r);return U(i)?U(n)?i===n:!1:U(n)?n in i:Object.keys(n).every(function(s){return s in i?jt(n[s],i[s]):!1})}function Tr(t){try{return U(t)||typeof t=="number"?"".concat(t):t.type}catch{throw new Error("Events must be strings or objects with a string event.type property.")}}function $t(t,e){try{return Ie(t)?t:t.toString().split(e)}catch{throw new Error("'".concat(t,"' is not a valid state path."))}}function di(t){return typeof t=="object"&&"value"in t&&"context"in t&&"event"in t&&"_event"in t}function qe(t,e){if(di(t))return t.value;if(Ie(t))return lt(t);if(typeof t!="string")return t;var r=$t(t,e);return lt(r)}function lt(t){if(t.length===1)return t[0];for(var e={},r=e,n=0;n<t.length-1;n++)n===t.length-2?r[t[n]]=t[n+1]:(r[t[n]]={},r=r[t[n]]);return e}function Ve(t,e){for(var r={},n=Object.keys(t),i=0;i<n.length;i++){var s=n[i];r[s]=e(t[s],s,t,i)}return r}function Sr(t,e,r){var n,i,s={};try{for(var o=x(Object.keys(t)),u=o.next();!u.done;u=o.next()){var c=u.value,d=t[c];r(d)&&(s[c]=e(d,c,t))}}catch(h){n={error:h}}finally{try{u&&!u.done&&(i=o.return)&&i.call(o)}finally{if(n)throw n.error}}return s}var hi=function(t){return function(e){var r,n,i=e;try{for(var s=x(t),o=s.next();!o.done;o=s.next()){var u=o.value;i=i[u]}}catch(c){r={error:c}}finally{try{o&&!o.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return i}};function fi(t,e){return function(r){var n,i,s=r;try{for(var o=x(t),u=o.next();!u.done;u=o.next()){var c=u.value;s=s[e][c]}}catch(d){n={error:d}}finally{try{u&&!u.done&&(i=o.return)&&i.call(o)}finally{if(n)throw n.error}}return s}}function dt(t){if(!t)return[[]];if(U(t))return[[t]];var e=G(Object.keys(t).map(function(r){var n=t[r];return typeof n!="string"&&(!n||!Object.keys(n).length)?[[r]]:dt(t[r]).map(function(i){return[r].concat(i)})}));return e}function G(t){var e;return(e=[]).concat.apply(e,q([],P(t),!1))}function br(t){return Ie(t)?t:[t]}function oe(t){return t===void 0?[]:br(t)}function ht(t,e,r){var n,i;if(N(t))return t(e,r.data);var s={};try{for(var o=x(Object.keys(t)),u=o.next();!u.done;u=o.next()){var c=u.value,d=t[c];N(d)?s[c]=d(e,r.data):s[c]=d}}catch(h){n={error:h}}finally{try{u&&!u.done&&(i=o.return)&&i.call(o)}finally{if(n)throw n.error}}return s}function pi(t){return/^(done|error)\./.test(t)}function kr(t){return!!(t instanceof Promise||t!==null&&(N(t)||typeof t=="object")&&N(t.then))}function vi(t){return t!==null&&typeof t=="object"&&"transition"in t&&typeof t.transition=="function"}function yi(t,e){var r,n,i=P([[],[]],2),s=i[0],o=i[1];try{for(var u=x(t),c=u.next();!c.done;c=u.next()){var d=c.value;e(d)?s.push(d):o.push(d)}}catch(h){r={error:h}}finally{try{c&&!c.done&&(n=u.return)&&n.call(u)}finally{if(r)throw r.error}}return[s,o]}function Ar(t,e){return Ve(t.states,function(r,n){if(r){var i=(U(e)?void 0:e[n])||(r?r.current:void 0);if(i)return{current:i,states:Ar(r,i)}}})}function mi(t,e){return{current:e,states:Ar(t,e)}}function Or(t,e,r,n){K||J(!!t,"Attempting to update undefined context");var i=t&&r.reduce(function(s,o){var u,c,d=o.assignment,h={state:n,action:o,_event:e},v={};if(N(d))v=d(s,e.data,h);else try{for(var a=x(Object.keys(d)),l=a.next();!l.done;l=a.next()){var f=l.value,y=d[f];v[f]=N(y)?y(s,e.data,h):y}}catch(T){u={error:T}}finally{try{l&&!l.done&&(c=a.return)&&c.call(a)}finally{if(u)throw u.error}}return Object.assign({},s,v)},t);return i}var J=function(){};K||(J=function(t,e){var r=t instanceof Error?t:void 0;if(!(!r&&t)&&console!==void 0){var n=["Warning: ".concat(e)];r&&n.push(r),console.warn.apply(console,n)}});function Ie(t){return Array.isArray(t)}function N(t){return typeof t=="function"}function U(t){return typeof t=="string"}function Ir(t,e){if(t)return U(t)?{type:Lt,name:t,predicate:e?e[t]:void 0}:N(t)?{type:Lt,name:t.name,predicate:t}:t}function gi(t){try{return"subscribe"in t&&N(t.subscribe)}catch{return!1}}var ge=function(){return typeof Symbol=="function"&&Symbol.observable||"@@observable"}();ut={},ut[ge]=function(){return this},ut[Symbol.observable]=function(){return this};function pe(t){return!!t&&"__xstatenode"in t}function Ei(t){return!!t&&typeof t.send=="function"}var wi=function(){var t=0;return function(){return t++,t.toString(16)}}();function ft(t,e){return U(t)||typeof t=="number"?E({type:t},e):t}function Q(t,e){if(!U(t)&&"$$type"in t&&t.$$type==="scxml")return t;var r=ft(t);return E({name:r.type,data:r,$$type:"scxml",type:"external"},e)}function Re(t,e){var r=br(e).map(function(n){return typeof n=="undefined"||typeof n=="string"||pe(n)?{target:n,event:t}:E(E({},n),{event:t})});return r}function Ti(t){if(!(t===void 0||t===li))return oe(t)}function Si(t,e,r){if(!K){var n=t.stack?" Stacktrace was '".concat(t.stack,"'"):"";if(t===e)console.error("Missing onError handler for invocation '".concat(r,"', error was '").concat(t,"'.").concat(n));else{var i=e.stack?" Stacktrace was '".concat(e.stack,"'"):"";console.error("Missing onError handler and/or unhandled exception/promise rejection for invocation '".concat(r,"'. ")+"Original error: '".concat(t,"'. ").concat(n," Current error is '").concat(e,"'.").concat(i))}}}function Rr(t,e,r,n,i){var s=t.options.guards,o={state:i,cond:e,_event:n};if(e.type===Lt)return((s==null?void 0:s[e.name])||e.predicate)(r,n.data,o);var u=s==null?void 0:s[e.type];if(!u)throw new Error("Guard '".concat(e.type,"' is not implemented on machine '").concat(t.id,"'."));return u(r,n.data,o)}function xr(t){return typeof t=="string"?{type:t}:t}function pt(t,e,r){var n=function(){},i=typeof t=="object",s=i?t:null;return{next:((i?t.next:t)||n).bind(s),error:((i?t.error:e)||n).bind(s),complete:((i?t.complete:r)||n).bind(s)}}function vt(t,e){return"".concat(t,":invocation[").concat(e,"]")}function Ft(t){return(t.type===Oe||t.type===He&&t.to===me.Internal)&&typeof t.delay!="number"}var we=Q({type:yr});function yt(t,e){return e&&e[t]||void 0}function xe(t,e){var r;if(U(t)||typeof t=="number"){var n=yt(t,e);N(n)?r={type:t,exec:n}:n?r=n:r={type:t,exec:void 0}}else if(N(t))r={type:t.name||t.toString(),exec:t};else{var n=yt(t.type,e);if(N(n))r=E(E({},t),{exec:n});else if(n){var i=n.type||t.type;r=E(E(E({},n),t),{type:i})}else r=t}return r}var ve=function(t,e){if(!t)return[];var r=Ie(t)?t:[t];return r.map(function(n){return xe(n,e)})};function mt(t){var e=xe(t);return E(E({id:U(t)?t:e.id},e),{type:e.type})}function _r(t,e){return{type:Oe,event:typeof t=="function"?t:ft(t),delay:e?e.delay:void 0,id:e==null?void 0:e.id}}function Pr(t,e,r,n){var i={_event:r},s=Q(N(t.event)?t.event(e,r.data,i):t.event),o;if(U(t.delay)){var u=n&&n[t.delay];o=N(u)?u(e,r.data,i):u}else o=N(t.delay)?t.delay(e,r.data,i):t.delay;return E(E({},t),{type:Oe,_event:s,delay:o})}function Te(t,e){return{to:e?e.to:void 0,type:He,event:N(t)?t:ft(t),delay:e?e.delay:void 0,id:e&&e.id!==void 0?e.id:N(t)?t.name:Tr(t)}}function Nr(t,e,r,n){var i={_event:r},s=Q(N(t.event)?t.event(e,r.data,i):t.event),o;if(U(t.delay)){var u=n&&n[t.delay];o=N(u)?u(e,r.data,i):u}else o=N(t.delay)?t.delay(e,r.data,i):t.delay;var c=N(t.to)?t.to(e,r.data,i):t.to;return E(E({},t),{to:c,_event:s,event:s.data,delay:o})}function Ht(t,e){return Te(t,E(E({},e),{to:me.Parent}))}function bi(t,e,r){return Te(e,E(E({},r),{to:t}))}function ki(){return Ht(ct)}function Ai(t,e){return Te(t,E(E({},e),{to:function(r,n,i){var s=i._event;return s.origin}}))}var Oi=function(t,e){return{context:t,event:e}};function Ii(t,e){return t===void 0&&(t=Oi),{type:ot,label:e,expr:t}}var Ur=function(t,e,r){return E(E({},t),{value:U(t.expr)?t.expr:t.expr(e,r.data,{_event:r})})},Dr=function(t){return{type:Dt,sendId:t}};function Cr(t){var e=mt(t);return{type:j.Start,activity:e,exec:void 0}}function Mr(t){var e=N(t)?t:mt(t);return{type:j.Stop,activity:e,exec:void 0}}function Lr(t,e,r){var n=N(t.activity)?t.activity(e,r.data):t.activity,i=typeof n=="string"?{id:n}:n,s={type:j.Stop,activity:i};return s}var jr=function(t){return{type:st,assignment:t}};function Ri(t){return typeof t=="object"&&"type"in t}function $r(t,e){var r=e?"#".concat(e):"";return"".concat(j.After,"(").concat(t,")").concat(r)}function Ke(t,e){var r="".concat(j.DoneState,".").concat(t),n={type:r,data:e};return n.toString=function(){return r},n}function Ge(t,e){var r="".concat(j.DoneInvoke,".").concat(t),n={type:r,data:e};return n.toString=function(){return r},n}function _e(t,e){var r="".concat(j.ErrorPlatform,".").concat(t),n={type:r,data:e};return n.toString=function(){return r},n}function xi(t){return{type:j.Pure,get:t}}function _i(t,e){if(!K&&(!t||typeof t=="function")){var r=t;t=function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var s=typeof r=="function"?r.apply(void 0,q([],P(n),!1)):r;if(!s)throw new Error("Attempted to forward event to undefined actor. This risks an infinite loop in the sender.");return s}}return Te(function(n,i){return i},E(E({},e),{to:t}))}function Pi(t,e){return Ht(function(r,n,i){return{type:Mt,data:N(t)?t(r,n,i):t}},E(E({},e),{to:me.Parent}))}function Ni(t){return{type:j.Choose,conds:t}}var Ui=function(t){var e,r,n=[];try{for(var i=x(t),s=i.next();!s.done;s=i.next())for(var o=s.value,u=0;u<o.actions.length;){if(o.actions[u].type===st){n.push(o.actions[u]),o.actions.splice(u,1);continue}u++}}catch(c){e={error:c}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return n};function Be(t,e,r,n,i,s,o){o===void 0&&(o=!1);var u=o?[]:Ui(i),c=u.length?Or(r,n,u,e):r,d=o?[r]:void 0,h=[];function v(f,y){var T;switch(y.type){case Oe:{var g=Pr(y,c,n,t.options.delays);return s&&typeof g.delay=="number"&&s(g,c,n),g}case He:var S=Nr(y,c,n,t.options.delays);if(!K){var b=y.delay;J(!U(b)||typeof S.delay=="number","No delay reference for delay expression '".concat(b,"' was found on machine '").concat(t.id,"'"))}return s&&S.to!==me.Internal&&(f==="entry"?h.push(S):s(S,c,n)),S;case ot:{var O=Ur(y,c,n);return s==null||s(O,c,n),O}case mr:{var M=y,D=(T=M.conds.find(function(p){var w=Ir(p.cond,t.options.guards);return!w||Rr(t,w,c,n,s?void 0:e)}))===null||T===void 0?void 0:T.actions;if(!D)return[];var _=P(Be(t,e,c,n,[{type:f,actions:ve(oe(D),t.options.actions)}],s,o),2),$=_[0],R=_[1];return c=R,d==null||d.push(c),$}case gr:{var D=y.get(c,n.data);if(!D)return[];var B=P(Be(t,e,c,n,[{type:f,actions:ve(oe(D),t.options.actions)}],s,o),2),A=B[0],F=B[1];return c=F,d==null||d.push(c),A}case it:{var O=Lr(y,c,n);return s==null||s(O,r,n),O}case st:{c=Or(c,n,[y],s?void 0:e),d==null||d.push(c);break}default:var z=xe(y,t.options.actions),V=z.exec;if(s)s(z,c,n);else if(V&&d){var ke=d.length-1,Ae=E(E({},z),{exec:function(p){for(var w=[],k=1;k<arguments.length;k++)w[k-1]=arguments[k];V.apply(void 0,q([d[ke]],P(w),!1))}});z=Ae}return z}}function a(f){var y,T,g=[];try{for(var S=x(f.actions),b=S.next();!b.done;b=S.next()){var O=b.value,M=v(f.type,O);M&&(g=g.concat(M))}}catch(D){y={error:D}}finally{try{b&&!b.done&&(T=S.return)&&T.call(S)}finally{if(y)throw y.error}}return h.forEach(function(D){s(D,c,n)}),h.length=0,g}var l=G(i.map(a));return[l,c]}const Di=Object.freeze(Object.defineProperty({__proto__:null,actionTypes:ui,after:$r,assign:jr,cancel:Dr,choose:Ni,done:Ke,doneInvoke:Ge,error:_e,escalate:Pi,forwardTo:_i,getActionFunction:yt,initEvent:we,isActionObject:Ri,log:Ii,pure:xi,raise:_r,resolveActions:Be,resolveLog:Ur,resolveRaise:Pr,resolveSend:Nr,resolveStop:Lr,respond:Ai,send:Te,sendParent:Ht,sendTo:bi,sendUpdate:ki,start:Cr,stop:Mr,toActionObject:xe,toActionObjects:ve,toActivityDefinition:mt},Symbol.toStringTag,{value:"Module"}));var gt=[],Pe=function(t,e){gt.push(t);var r=e(t);return gt.pop(),r},Ci=function(t){return t(gt[gt.length-1])};function Fr(t){var e;return e={id:t,send:function(){},subscribe:function(){return{unsubscribe:function(){}}},getSnapshot:function(){},toJSON:function(){return{id:t}}},e[ge]=function(){return this},e}function Mi(t,e,r,n){var i,s=xr(t.src),o=(i=e==null?void 0:e.options.services)===null||i===void 0?void 0:i[s.type],u=t.data?ht(t.data,r,n):void 0,c=o?qt(o,t.id,u):Fr(t.id);return c.meta=t,c}function qt(t,e,r){var n=Fr(e);if(n.deferred=!0,pe(t)){var i=n.state=Pe(void 0,function(){return(r?t.withContext(r):t).initialState});n.getSnapshot=function(){return i}}return n}function Li(t){try{return typeof t.send=="function"}catch{return!1}}function ji(t){return Li(t)&&"id"in t}function $i(t){var e;return E((e={subscribe:function(){return{unsubscribe:function(){}}},id:"anonymous",getSnapshot:function(){}},e[ge]=function(){return this},e),t)}var Et=function(t){return t.type==="atomic"||t.type==="final"};function Hr(t){return Object.keys(t.states).map(function(e){return t.states[e]})}function ze(t){return Hr(t).filter(function(e){return e.type!=="history"})}function qr(t){var e=[t];return Et(t)?e:e.concat(G(ze(t).map(qr)))}function Ye(t,e){var r,n,i,s,o,u,c,d,h=new Set(t),v=Vt(h),a=new Set(e);try{for(var l=x(a),f=l.next();!f.done;f=l.next())for(var y=f.value,T=y.parent;T&&!a.has(T);)a.add(T),T=T.parent}catch(R){r={error:R}}finally{try{f&&!f.done&&(n=l.return)&&n.call(l)}finally{if(r)throw r.error}}var g=Vt(a);try{for(var S=x(a),b=S.next();!b.done;b=S.next()){var y=b.value;if(y.type==="compound"&&(!g.get(y)||!g.get(y).length))v.get(y)?v.get(y).forEach(function(B){return a.add(B)}):y.initialStateNodes.forEach(function(B){return a.add(B)});else if(y.type==="parallel")try{for(var O=(o=void 0,x(ze(y))),M=O.next();!M.done;M=O.next()){var D=M.value;a.has(D)||(a.add(D),v.get(D)?v.get(D).forEach(function(B){return a.add(B)}):D.initialStateNodes.forEach(function(B){return a.add(B)}))}}catch(B){o={error:B}}finally{try{M&&!M.done&&(u=O.return)&&u.call(O)}finally{if(o)throw o.error}}}}catch(R){i={error:R}}finally{try{b&&!b.done&&(s=S.return)&&s.call(S)}finally{if(i)throw i.error}}try{for(var _=x(a),$=_.next();!$.done;$=_.next())for(var y=$.value,T=y.parent;T&&!a.has(T);)a.add(T),T=T.parent}catch(R){c={error:R}}finally{try{$&&!$.done&&(d=_.return)&&d.call(_)}finally{if(c)throw c.error}}return a}function Vr(t,e){var r=e.get(t);if(!r)return{};if(t.type==="compound"){var n=r[0];if(n){if(Et(n))return n.key}else return{}}var i={};return r.forEach(function(s){i[s.key]=Vr(s,e)}),i}function Vt(t){var e,r,n=new Map;try{for(var i=x(t),s=i.next();!s.done;s=i.next()){var o=s.value;n.has(o)||n.set(o,[]),o.parent&&(n.has(o.parent)||n.set(o.parent,[]),n.get(o.parent).push(o))}}catch(u){e={error:u}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(e)throw e.error}}return n}function Fi(t,e){var r=Ye([t],e);return Vr(t,Vt(r))}function We(t,e){return Array.isArray(t)?t.some(function(r){return r===e}):t instanceof Set?t.has(e):!1}function Hi(t){return q([],P(new Set(G(q([],P(t.map(function(e){return e.ownEvents})),!1)))),!1)}function wt(t,e){return e.type==="compound"?ze(e).some(function(r){return r.type==="final"&&We(t,r)}):e.type==="parallel"?ze(e).every(function(r){return wt(t,r)}):!1}function qi(t){return t===void 0&&(t=[]),t.reduce(function(e,r){return r.meta!==void 0&&(e[r.id]=r.meta),e},{})}function Kr(t){return new Set(G(t.map(function(e){return e.tags})))}function Gr(t,e){if(t===e)return!0;if(t===void 0||e===void 0)return!1;if(U(t)||U(e))return t===e;var r=Object.keys(t),n=Object.keys(e);return r.length===n.length&&r.every(function(i){return Gr(t[i],e[i])})}function Vi(t){return typeof t!="object"||t===null?!1:"value"in t&&"_event"in t}function Ki(t,e){var r=t.exec,n=E(E({},t),{exec:r!==void 0?function(){return r(e.context,e.event,{action:t,state:e,_event:e._event})}:void 0});return n}var fe=function(){function t(e){var r=this,n;this.actions=[],this.activities=wr,this.meta={},this.events=[],this.value=e.value,this.context=e.context,this._event=e._event,this._sessionid=e._sessionid,this.event=this._event.data,this.historyValue=e.historyValue,this.history=e.history,this.actions=e.actions||[],this.activities=e.activities||wr,this.meta=qi(e.configuration),this.events=e.events||[],this.matches=this.matches.bind(this),this.toStrings=this.toStrings.bind(this),this.configuration=e.configuration,this.transitions=e.transitions,this.children=e.children,this.done=!!e.done,this.tags=(n=Array.isArray(e.tags)?new Set(e.tags):e.tags)!==null&&n!==void 0?n:new Set,this.machine=e.machine,Object.defineProperty(this,"nextEvents",{get:function(){return Hi(r.configuration)}})}return t.from=function(e,r){if(e instanceof t)return e.context!==r?new t({value:e.value,context:r,_event:e._event,_sessionid:null,historyValue:e.historyValue,history:e.history,actions:[],activities:e.activities,meta:{},events:[],configuration:[],transitions:[],children:{}}):e;var n=we;return new t({value:e,context:r,_event:n,_sessionid:null,historyValue:void 0,history:void 0,actions:[],activities:void 0,meta:void 0,events:[],configuration:[],transitions:[],children:{}})},t.create=function(e){return new t(e)},t.inert=function(e,r){if(e instanceof t){if(!e.actions.length)return e;var n=we;return new t({value:e.value,context:r,_event:n,_sessionid:null,historyValue:e.historyValue,history:e.history,activities:e.activities,configuration:e.configuration,transitions:[],children:{}})}return t.from(e,r)},t.prototype.toStrings=function(e,r){var n=this;if(e===void 0&&(e=this.value),r===void 0&&(r="."),U(e))return[e];var i=Object.keys(e);return i.concat.apply(i,q([],P(i.map(function(s){return n.toStrings(e[s],r).map(function(o){return s+r+o})})),!1))},t.prototype.toJSON=function(){var e=this;e.configuration,e.transitions;var r=e.tags;e.machine;var n=Ut(e,["configuration","transitions","tags","machine"]);return E(E({},n),{tags:Array.from(r)})},t.prototype.matches=function(e){return jt(e,this.value)},t.prototype.hasTag=function(e){return this.tags.has(e)},t.prototype.can=function(e){var r;K&&J(!!this.machine,"state.can(...) used outside of a machine-created State object; this will always return false.");var n=(r=this.machine)===null||r===void 0?void 0:r.getTransitionData(this,e);return!!(n!=null&&n.transitions.length)&&n.transitions.some(function(i){return i.target!==void 0||i.actions.length})},t}(),Gi={deferEvents:!1},Br=function(){function t(e){this.processingEvent=!1,this.queue=[],this.initialized=!1,this.options=E(E({},Gi),e)}return t.prototype.initialize=function(e){if(this.initialized=!0,e){if(!this.options.deferEvents){this.schedule(e);return}this.process(e)}this.flushEvents()},t.prototype.schedule=function(e){if(!this.initialized||this.processingEvent){this.queue.push(e);return}if(this.queue.length!==0)throw new Error("Event queue should be empty when it is not processing events");this.process(e),this.flushEvents()},t.prototype.clear=function(){this.queue=[]},t.prototype.flushEvents=function(){for(var e=this.queue.shift();e;)this.process(e),e=this.queue.shift()},t.prototype.process=function(e){this.processingEvent=!0;try{e()}catch(r){throw this.clear(),r}finally{this.processingEvent=!1}},t}(),Kt=new Map,Bi=0,Je={bookId:function(){return"x:".concat(Bi++)},register:function(t,e){return Kt.set(t,e),t},get:function(t){return Kt.get(t)},free:function(t){Kt.delete(t)}};function Gt(){if(typeof globalThis!="undefined")return globalThis;if(typeof self!="undefined")return self;if(typeof window!="undefined")return window;if(typeof global!="undefined")return global;K||console.warn("XState could not find a global object in this environment. Please let the maintainers know and raise an issue here: https://github.com/statelyai/xstate/issues")}function zi(){var t=Gt();if(t&&"__xstate__"in t)return t.__xstate__}function Yi(t){if(Gt()){var e=zi();e&&e.register(t)}}function Wi(t,e){e===void 0&&(e={});var r=t.initialState,n=new Set,i=[],s=!1,o=function(){if(!s){for(s=!0;i.length>0;){var d=i.shift();r=t.transition(r,d,c),n.forEach(function(h){return h.next(r)})}s=!1}},u=$i({id:e.id,send:function(d){i.push(d),o()},getSnapshot:function(){return r},subscribe:function(d,h,v){var a=pt(d,h,v);return n.add(a),a.next(r),{unsubscribe:function(){n.delete(a)}}}}),c={parent:e.parent,self:u,id:e.id||"anonymous",observers:n};return r=t.start?t.start(c):r,u}var Bt={sync:!1,autoForward:!1},Y;(function(t){t[t.NotStarted=0]="NotStarted",t[t.Running=1]="Running",t[t.Stopped=2]="Stopped"})(Y||(Y={}));var Ji=function(){function t(e,r){r===void 0&&(r=t.defaultOptions);var n=this;this.machine=e,this.delayedEventsMap={},this.listeners=new Set,this.contextListeners=new Set,this.stopListeners=new Set,this.doneListeners=new Set,this.eventListeners=new Set,this.sendListeners=new Set,this.initialized=!1,this.status=Y.NotStarted,this.children=new Map,this.forwardTo=new Set,this._outgoingQueue=[],this.init=this.start,this.send=function(h,v){if(Ie(h))return n.batch(h),n.state;var a=Q(ft(h,v));if(n.status===Y.Stopped)return K||J(!1,'Event "'.concat(a.name,'" was sent to stopped service "').concat(n.machine.id,`". This service has already reached its final state, and will not transition.
|
|
15
15
|
Event: `).concat(JSON.stringify(a.data))),n.state;if(n.status!==Y.Running&&!n.options.deferEvents)throw new Error('Event "'.concat(a.name,'" was sent to uninitialized service "').concat(n.machine.id,`". Make sure .start() is called for this service, or set { deferEvents: true } in the service options.
|
|
16
|
-
Event: `).concat(JSON.stringify(a.data)));return n.scheduler.schedule(function(){n.forward(a);var l=n._nextState(a);n.update(l,a)}),n._state},this.sendTo=function(h,v,a){var l=n.parent&&(v===
|
|
17
|
-
Event: `).concat(JSON.stringify(event)));else if(this.status!==Y.Running)throw new Error("".concat(e.length,' event(s) were sent to uninitialized service "').concat(this.machine.id,'". Make sure .start() is called for this service, or set { deferEvents: true } in the service options.'));if(e.length){var n=!!this.machine.config.predictableActionArguments&&this._exec;this.scheduler.schedule(function(){var i,s,o=r.state,u=!1,c=[],d=function(l){var f=Q(l);r.forward(f),o=Pe(r,function(){return r.machine.transition(o,f,void 0,n||void 0)}),c.push.apply(c,q([],P(r.machine.config.predictableActionArguments?o.actions:o.actions.map(function(y){return Wi(y,o)})),!1)),u=u||!!o.changed};try{for(var h=x(e),v=h.next();!v.done;v=h.next()){var a=v.value;d(a)}}catch(l){i={error:l}}finally{try{v&&!v.done&&(s=h.return)&&s.call(h)}finally{if(i)throw i.error}}o.changed=u,o.actions=c,r.update(o,Q(e[e.length-1]))})}},t.prototype.sender=function(e){return this.send.bind(this,e)},t.prototype._nextState=function(e,r){var n=this;r===void 0&&(r=!!this.machine.config.predictableActionArguments&&this._exec);var i=Q(e);if(i.name.indexOf(Mt)===0&&!this.state.nextEvents.some(function(o){return o.indexOf(Mt)===0}))throw i.data.data;var s=Pe(this,function(){return n.machine.transition(n.state,i,void 0,r||void 0)});return s},t.prototype.nextState=function(e){return this._nextState(e,!1)},t.prototype.forward=function(e){var r,n;try{for(var i=x(this.forwardTo),s=i.next();!s.done;s=i.next()){var o=s.value,u=this.children.get(o);if(!u)throw new Error("Unable to forward event '".concat(e,"' from interpreter '").concat(this.id,"' to nonexistant child '").concat(o,"'."));u.send(e)}}catch(c){r={error:c}}finally{try{s&&!s.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}},t.prototype.defer=function(e){var r=this,n=this.clock.setTimeout(function(){"to"in e&&e.to?r.sendTo(e._event,e.to,!0):r.send(e._event)},e.delay);e.id&&(this.delayedEventsMap[e.id]=n)},t.prototype.cancel=function(e){this.clock.clearTimeout(this.delayedEventsMap[e]),delete this.delayedEventsMap[e]},t.prototype.exec=function(e,r,n){n===void 0&&(n=this.machine.options.actions),this._exec(e,r.context,r._event,n)},t.prototype.removeChild=function(e){var r;this.children.delete(e),this.forwardTo.delete(e),(r=this.state)===null||r===void 0||delete r.children[e]},t.prototype.stopChild=function(e){var r=this.children.get(e);r&&(this.removeChild(e),N(r.stop)&&r.stop())},t.prototype.spawn=function(e,r,n){if(this.status!==Y.Running)return Kt(e,r);if(xr(e))return this.spawnPromise(Promise.resolve(e),r);if(N(e))return this.spawnCallback(e,r);if(Ki(e))return this.spawnActor(e,r);if(bi(e))return this.spawnObservable(e,r);if(pe(e))return this.spawnMachine(e,E(E({},n),{id:r}));if(wi(e))return this.spawnBehavior(e,r);throw new Error('Unable to spawn entity "'.concat(r,'" of type "').concat(typeof e,'".'))},t.prototype.spawnMachine=function(e,r){var n=this;r===void 0&&(r={});var i=new t(e,E(E({},this.options),{parent:this,id:r.id||e.id})),s=E(E({},zt),r);s.sync&&i.onTransition(function(u){n.send(ut,{state:u,id:i.id})});var o=i;return this.children.set(i.id,o),s.autoForward&&this.forwardTo.add(i.id),i.onDone(function(u){n.removeChild(i.id),n.send(Q(u,{origin:i.id}))}).start(),o},t.prototype.spawnBehavior=function(e,r){var n=es(e,{id:r,parent:this});return this.children.set(r,n),n},t.prototype.spawnPromise=function(e,r){var n,i=this,s=!1,o;e.then(function(c){s||(o=c,i.removeChild(r),i.send(Q(Ge(r,c),{origin:r})))},function(c){if(!s){i.removeChild(r);var d=_e(r,c);try{i.send(Q(d,{origin:r}))}catch(h){Ii(c,h,r),i.devTools&&i.devTools.send(d,i.state),i.machine.strict&&i.stop()}}});var u=(n={id:r,send:function(){},subscribe:function(c,d,h){var v=vt(c,d,h),a=!1;return e.then(function(l){a||(v.next(l),!a&&v.complete())},function(l){a||v.error(l)}),{unsubscribe:function(){return a=!0}}},stop:function(){s=!0},toJSON:function(){return{id:r}},getSnapshot:function(){return o}},n[me]=function(){return this},n);return this.children.set(r,u),u},t.prototype.spawnCallback=function(e,r){var n,i=this,s=!1,o=new Set,u=new Set,c,d=function(a){c=a,u.forEach(function(l){return l(a)}),!s&&i.send(Q(a,{origin:r}))},h;try{h=e(d,function(a){o.add(a)})}catch(a){this.send(_e(r,a))}if(xr(h))return this.spawnPromise(h,r);var v=(n={id:r,send:function(a){return o.forEach(function(l){return l(a)})},subscribe:function(a){var l=vt(a);return u.add(l.next),{unsubscribe:function(){u.delete(l.next)}}},stop:function(){s=!0,N(h)&&h()},toJSON:function(){return{id:r}},getSnapshot:function(){return c}},n[me]=function(){return this},n);return this.children.set(r,v),v},t.prototype.spawnObservable=function(e,r){var n,i=this,s,o=e.subscribe(function(c){s=c,i.send(Q(c,{origin:r}))},function(c){i.removeChild(r),i.send(Q(_e(r,c),{origin:r}))},function(){i.removeChild(r),i.send(Q(Ge(r),{origin:r}))}),u=(n={id:r,send:function(){},subscribe:function(c,d,h){return e.subscribe(c,d,h)},stop:function(){return o.unsubscribe()},getSnapshot:function(){return s},toJSON:function(){return{id:r}}},n[me]=function(){return this},n);return this.children.set(r,u),u},t.prototype.spawnActor=function(e,r){return this.children.set(r,e),e},t.prototype.spawnActivity=function(e){var r=this.machine.options&&this.machine.options.activities?this.machine.options.activities[e.type]:void 0;if(!r){V||J(!1,"No implementation found for activity '".concat(e.type,"'"));return}var n=r(this.state.context,e);this.spawnEffect(e.id,n)},t.prototype.spawnEffect=function(e,r){var n;this.children.set(e,(n={id:e,send:function(){},subscribe:function(){return{unsubscribe:function(){}}},stop:r||void 0,getSnapshot:function(){},toJSON:function(){return{id:e}}},n[me]=function(){return this},n))},t.prototype.attachDev=function(){var e=Bt();if(this.options.devTools&&e){if(e.__REDUX_DEVTOOLS_EXTENSION__){var r=typeof this.options.devTools=="object"?this.options.devTools:void 0;this.devTools=e.__REDUX_DEVTOOLS_EXTENSION__.connect(E(E({name:this.id,autoPause:!0,stateSanitizer:function(n){return{value:n.value,context:n.context,actions:n.actions}}},r),{features:E({jump:!1,skip:!1},r?r.features:void 0)}),this.machine),this.devTools.init(this.state)}Zi(this)}},t.prototype.toJSON=function(){return{id:this.id}},t.prototype[me]=function(){return this},t.prototype.getSnapshot=function(){return this.status===Y.NotStarted?this.initialState:this._state},t.defaultOptions={execute:!0,deferEvents:!0,clock:{setTimeout:function(e,r){return setTimeout(e,r)},clearTimeout:function(e){return clearTimeout(e)}},logger:console.log.bind(console),devTools:!1},t.interpret=Ne,t}(),rs=function(t){return U(t)?E(E({},zt),{name:t}):E(E(E({},zt),{name:Ai()}),t)};function ns(t,e){var r=rs(e);return Fi(function(n){if(!V){var i=pe(t)||N(t);J(!!n||i,'Attempted to spawn an Actor (ID: "'.concat(pe(t)?t.id:"undefined",'") outside of a service. This will have no effect.'))}return n?n.spawn(t,r.name,r):Kt(t,r.name)})}function Ne(t,e){var r=new ts(t,e);return r}function is(t){if(typeof t=="string"){var e={type:t};return e.toString=function(){return t},e}return t}function St(t){return E(E({type:ct},t),{toJSON:function(){t.onDone,t.onError;var e=Dt(t,["onDone","onError"]);return E(E({},e),{type:ct,src:is(t.src)})}})}var Ue="",Yt="#",Xe="*",De={},Ce=function(t){return t[0]===Yt},ss=function(){return{actions:{},guards:{},services:{},activities:{},delays:{}}},os=function(t,e,r){var n=r.slice(0,-1).some(function(s){return!("cond"in s)&&!("in"in s)&&(U(s.target)||pe(s.target))}),i=e===Ue?"the transient event":"event '".concat(e,"'");J(!n,"One or more transitions for ".concat(i," on state '").concat(t.id,"' are unreachable. ")+"Make sure that the default transition is the last one defined.")},as=function(){function t(e,r,n,i){n===void 0&&(n="context"in e?e.context:void 0);var s=this,o;this.config=e,this._context=n,this.order=-1,this.__xstatenode=!0,this.__cache={events:void 0,relativeValue:new Map,initialStateValue:void 0,initialState:void 0,on:void 0,transitions:void 0,candidates:{},delayedTransitions:void 0},this.idMap={},this.tags=[],this.options=Object.assign(ss(),r),this.parent=i==null?void 0:i.parent,this.key=this.config.key||(i==null?void 0:i.key)||this.config.id||"(machine)",this.machine=this.parent?this.parent.machine:this,this.path=this.parent?this.parent.path.concat(this.key):[],this.delimiter=this.config.delimiter||(this.parent?this.parent.delimiter:kr),this.id=this.config.id||q([this.machine.key],P(this.path),!1).join(this.delimiter),this.version=this.parent?this.parent.version:this.config.version,this.type=this.config.type||(this.config.parallel?"parallel":this.config.states&&Object.keys(this.config.states).length?"compound":this.config.history?"history":"atomic"),this.schema=this.parent?this.machine.schema:(o=this.config.schema)!==null&&o!==void 0?o:{},this.description=this.config.description,V||J(!("parallel"in this.config),'The "parallel" property is deprecated and will be removed in version 4.1. '.concat(this.config.parallel?"Replace with `type: 'parallel'`":"Use `type: '".concat(this.type,"'`")," in the config for state node '").concat(this.id,"' instead.")),this.initial=this.config.initial,this.states=this.config.states?Ke(this.config.states,function(d,h){var v,a=new t(d,{},void 0,{parent:s,key:h});return Object.assign(s.idMap,E((v={},v[a.id]=a,v),a.idMap)),a}):De;var u=0;function c(d){var h,v;d.order=u++;try{for(var a=x(Br(d)),l=a.next();!l.done;l=a.next()){var f=l.value;c(f)}}catch(y){h={error:y}}finally{try{l&&!l.done&&(v=a.return)&&v.call(a)}finally{if(h)throw h.error}}}c(this),this.history=this.config.history===!0?"shallow":this.config.history||!1,this._transient=!!this.config.always||(this.config.on?Array.isArray(this.config.on)?this.config.on.some(function(d){var h=d.event;return h===Ue}):Ue in this.config.on:!1),this.strict=!!this.config.strict,this.onEntry=oe(this.config.entry||this.config.onEntry).map(function(d){return xe(d)}),this.onExit=oe(this.config.exit||this.config.onExit).map(function(d){return xe(d)}),this.meta=this.config.meta,this.doneData=this.type==="final"?this.config.data:void 0,this.invoke=oe(this.config.invoke).map(function(d,h){var v,a;if(pe(d)){var l=yt(s.id,h);return s.machine.options.services=E((v={},v[l]=d,v),s.machine.options.services),St({src:l,id:l})}else if(U(d.src)){var l=d.id||yt(s.id,h);return St(E(E({},d),{id:l,src:d.src}))}else if(pe(d.src)||N(d.src)){var l=d.id||yt(s.id,h);return s.machine.options.services=E((a={},a[l]=d.src,a),s.machine.options.services),St(E(E({id:l},d),{src:l}))}else{var f=d.src;return St(E(E({id:yt(s.id,h)},d),{src:f}))}}),this.activities=oe(this.config.activities).concat(this.invoke).map(function(d){return mt(d)}),this.transition=this.transition.bind(this),this.tags=oe(this.config.tags)}return t.prototype._init=function(){this.__cache.transitions||zr(this).forEach(function(e){return e.on})},t.prototype.withConfig=function(e,r){var n=this.options,i=n.actions,s=n.activities,o=n.guards,u=n.services,c=n.delays;return new t(this.config,{actions:E(E({},i),e.actions),activities:E(E({},s),e.activities),guards:E(E({},o),e.guards),services:E(E({},u),e.services),delays:E(E({},c),e.delays)},r!=null?r:this.context)},t.prototype.withContext=function(e){return new t(this.config,this.options,e)},Object.defineProperty(t.prototype,"context",{get:function(){return N(this._context)?this._context():this._context},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"definition",{get:function(){return{id:this.id,key:this.key,version:this.version,context:this.context,type:this.type,initial:this.initial,history:this.history,states:Ke(this.states,function(e){return e.definition}),on:this.on,transitions:this.transitions,entry:this.onEntry,exit:this.onExit,activities:this.activities||[],meta:this.meta,order:this.order||-1,data:this.doneData,invoke:this.invoke,description:this.description,tags:this.tags}},enumerable:!1,configurable:!0}),t.prototype.toJSON=function(){return this.definition},Object.defineProperty(t.prototype,"on",{get:function(){if(this.__cache.on)return this.__cache.on;var e=this.transitions;return this.__cache.on=e.reduce(function(r,n){return r[n.eventType]=r[n.eventType]||[],r[n.eventType].push(n),r},{})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"after",{get:function(){return this.__cache.delayedTransitions||(this.__cache.delayedTransitions=this.getDelayedTransitions(),this.__cache.delayedTransitions)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"transitions",{get:function(){return this.__cache.transitions||(this.__cache.transitions=this.formatTransitions(),this.__cache.transitions)},enumerable:!1,configurable:!0}),t.prototype.getCandidates=function(e){if(this.__cache.candidates[e])return this.__cache.candidates[e];var r=e===Ue,n=this.transitions.filter(function(i){var s=i.eventType===e;return r?s:s||i.eventType===Xe});return this.__cache.candidates[e]=n,n},t.prototype.getDelayedTransitions=function(){var e=this,r=this.config.after;if(!r)return[];var n=function(s,o){var u=N(s)?"".concat(e.id,":delay[").concat(o,"]"):s,c=Vr(u,e.id);return e.onEntry.push(Te(c,{delay:s})),e.onExit.push($r(c)),c},i=Ie(r)?r.map(function(s,o){var u=n(s.delay,o);return E(E({},s),{event:u})}):G(Object.keys(r).map(function(s,o){var u=r[s],c=U(u)?{target:u}:u,d=isNaN(+s)?s:+s,h=n(d,o);return oe(c).map(function(v){return E(E({},v),{event:h,delay:d})})}));return i.map(function(s){var o=s.delay;return E(E({},e.formatTransition(s)),{delay:o})})},t.prototype.getStateNodes=function(e){var r,n=this;if(!e)return[];var i=e instanceof fe?e.value:qe(e,this.delimiter);if(U(i)){var s=this.getStateNode(i).initial;return s!==void 0?this.getStateNodes((r={},r[i]=s,r)):[this,this.states[i]]}var o=Object.keys(i),u=[this];return u.push.apply(u,q([],P(G(o.map(function(c){return n.getStateNode(c).getStateNodes(i[c])}))),!1)),u},t.prototype.handles=function(e){var r=Or(e);return this.events.includes(r)},t.prototype.resolveState=function(e){var r=e instanceof fe?e:fe.create(e),n=Array.from(Ye([],this.getStateNodes(r.value)));return new fe(E(E({},r),{value:this.resolve(r.value),configuration:n,done:Tt(n,this),tags:Wr(n),machine:this.machine}))},t.prototype.transitionLeafNode=function(e,r,n){var i=this.getStateNode(e),s=i.next(r,n);return!s||!s.transitions.length?this.next(r,n):s},t.prototype.transitionCompoundNode=function(e,r,n){var i=Object.keys(e),s=this.getStateNode(i[0]),o=s._transition(e[i[0]],r,n);return!o||!o.transitions.length?this.next(r,n):o},t.prototype.transitionParallelNode=function(e,r,n){var i,s,o={};try{for(var u=x(Object.keys(e)),c=u.next();!c.done;c=u.next()){var d=c.value,h=e[d];if(h){var v=this.getStateNode(d),a=v._transition(h,r,n);a&&(o[d]=a)}}}catch(m){i={error:m}}finally{try{c&&!c.done&&(s=u.return)&&s.call(u)}finally{if(i)throw i.error}}var l=Object.keys(o).map(function(m){return o[m]}),f=G(l.map(function(m){return m.transitions})),y=l.some(function(m){return m.transitions.length>0});if(!y)return this.next(r,n);var T=G(Object.keys(o).map(function(m){return o[m].configuration}));return{transitions:f,exitSet:G(l.map(function(m){return m.exitSet})),configuration:T,source:r,actions:G(Object.keys(o).map(function(m){return o[m].actions}))}},t.prototype._transition=function(e,r,n){return U(e)?this.transitionLeafNode(e,r,n):Object.keys(e).length===1?this.transitionCompoundNode(e,r,n):this.transitionParallelNode(e,r,n)},t.prototype.getTransitionData=function(e,r){return this._transition(e.value,e,Q(r))},t.prototype.next=function(e,r){var n,i,s=this,o=r.name,u=[],c=[],d;try{for(var h=x(this.getCandidates(o)),v=h.next();!v.done;v=h.next()){var a=v.value,l=a.cond,f=a.in,y=e.context,T=f?U(f)&&Ce(f)?e.matches(qe(this.getStateNodeById(f).path,this.delimiter)):$t(qe(f,this.delimiter),gi(this.path.slice(0,-2))(e.value)):!0,m=!1;try{m=!l||Ur(this.machine,l,y,r,e)}catch(O){throw new Error("Unable to evaluate guard '".concat(l.name||l.type,"' in transition for event '").concat(o,"' in state node '").concat(this.id,`':
|
|
18
|
-
`).concat(O.message))}if(m&&T){a.target!==void 0&&(c=a.target),u.push.apply(u,q([],P(a.actions),!1)),d=a;break}}}catch(O){n={error:O}}finally{try{v&&!v.done&&(i=h.return)&&i.call(h)}finally{if(n)throw n.error}}if(d){if(!c.length)return{transitions:[d],exitSet:[],configuration:e.value?[this]:[],source:e,actions:u};var S=G(c.map(function(O){return s.getRelativeStateNodes(O,e.historyValue)})),b=!!d.internal;return{transitions:[d],exitSet:b?[]:G(c.map(function(O){return s.getPotentiallyReenteringNodes(O)})),configuration:S,source:e,actions:u}}},t.prototype.getPotentiallyReenteringNodes=function(e){if(this.order<e.order)return[this];for(var r=[],n=this,i=e;n&&n!==i;)r.push(n),n=n.parent;return n!==i?[]:(r.push(i),r)},t.prototype.getActions=function(e,r,n,i,s,o,u){var c,d,h,v,a=this,l=o?Ye([],this.getStateNodes(o.value)):[],f=new Set;try{for(var y=x(Array.from(e).sort(function(A,F){return A.order-F.order})),T=y.next();!T.done;T=y.next()){var m=T.value;(!We(l,m)||We(n.exitSet,m)||m.parent&&f.has(m.parent))&&f.add(m)}}catch(A){c={error:A}}finally{try{T&&!T.done&&(d=y.return)&&d.call(y)}finally{if(c)throw c.error}}try{for(var S=x(l),b=S.next();!b.done;b=S.next()){var m=b.value;(!We(e,m)||We(n.exitSet,m.parent))&&n.exitSet.push(m)}}catch(A){h={error:A}}finally{try{b&&!b.done&&(v=S.return)&&v.call(S)}finally{if(h)throw h.error}}n.exitSet.sort(function(A,F){return F.order-A.order});var O=Array.from(f).sort(function(A,F){return A.order-F.order}),M=new Set(n.exitSet),D=G(O.map(function(A){var F=[];if(A.type!=="final")return F;var z=A.parent;if(!z.parent)return F;F.push(Ve(A.id,A.doneData),Ve(z.id,A.doneData?ft(A.doneData,i,s):void 0));var K=z.parent;return K.type==="parallel"&&ze(K).every(function(ke){return Tt(n.configuration,ke)})&&F.push(Ve(K.id)),F})),_=O.map(function(A){var F=A.onEntry,z=A.activities.map(function(K){return Fr(K)});return{type:"entry",actions:ve(u?q(q([],P(F),!1),P(z),!1):q(q([],P(z),!1),P(F),!1),a.machine.options.actions)}}).concat({type:"state_done",actions:D.map(function(A){return Cr(A)})}),$=Array.from(M).map(function(A){return{type:"exit",actions:ve(q(q([],P(A.onExit),!1),P(A.activities.map(function(F){return Hr(F)})),!1),a.machine.options.actions)}}),R=$.concat({type:"transition",actions:ve(n.actions,this.machine.options.actions)}).concat(_);if(r){var B=ve(G(q([],P(e),!1).sort(function(A,F){return F.order-A.order}).map(function(A){return A.onExit})),this.machine.options.actions).filter(function(A){return!Ht(A)});return R.concat({type:"stop",actions:B})}return R},t.prototype.transition=function(e,r,n,i){e===void 0&&(e=this.initialState);var s=Q(r),o;if(e instanceof fe)o=n===void 0?e:this.resolveState(fe.from(e,n));else{var u=U(e)?this.resolve(dt(this.getResolvedPath(e))):this.resolve(e),c=n!=null?n:this.machine.context;o=this.resolveState(fe.from(u,c))}if(!V&&s.name===Xe)throw new Error("An event cannot have the wildcard type ('".concat(Xe,"')"));if(this.strict&&!this.events.includes(s.name)&&!Ei(s.name))throw new Error("Machine '".concat(this.id,"' does not accept event '").concat(s.name,"'"));var d=this._transition(o.value,o,s)||{transitions:[],configuration:[],exitSet:[],source:o,actions:[]},h=Ye([],this.getStateNodes(o.value)),v=d.configuration.length?Ye(h,d.configuration):h;return d.configuration=q([],P(v),!1),this.resolveTransition(d,o,o.context,i,s)},t.prototype.resolveRaisedTransition=function(e,r,n,i){var s,o=e.actions;return e=this.transition(e,r,void 0,i),e._event=n,e.event=n.data,(s=e.actions).unshift.apply(s,q([],P(o),!1)),e},t.prototype.resolveTransition=function(e,r,n,i,s){var o,u,c,d,h=this;s===void 0&&(s=we);var v=e.configuration,a=!r||e.transitions.length>0,l=a?e.configuration:r?r.configuration:[],f=Tt(l,this),y=a?Gi(this.machine,v):void 0,T=r?r.historyValue?r.historyValue:e.source?this.machine.historyValue(r.value):void 0:void 0,m=this.getActions(new Set(l),f,e,n,s,r,i),S=r?E({},r.activities):{};try{for(var b=x(m),O=b.next();!O.done;O=b.next()){var M=O.value;try{for(var D=(c=void 0,x(M.actions)),_=D.next();!_.done;_=D.next()){var $=_.value;$.type===it?S[$.activity.id||$.activity.type]=$:$.type===st&&(S[$.activity.id||$.activity.type]=!1)}}catch(ie){c={error:ie}}finally{try{_&&!_.done&&(d=D.return)&&d.call(D)}finally{if(c)throw c.error}}}}catch(ie){o={error:ie}}finally{try{O&&!O.done&&(u=b.return)&&u.call(b)}finally{if(o)throw o.error}}var R=P(Be(this,r,n,s,m,i,this.machine.config.predictableActionArguments||this.machine.config.preserveActionOrder),2),B=R[0],A=R[1],F=P(Ti(B,Ht),2),z=F[0],K=F[1],ke=B.filter(function(ie){var W;return ie.type===it&&((W=ie.activity)===null||W===void 0?void 0:W.type)===ct}),Ae=ke.reduce(function(ie,W){return ie[W.activity.id]=Hi(W.activity,h.machine,A,s),ie},r?E({},r.children):{}),p=new fe({value:y||r.value,context:A,_event:s,_sessionid:r?r._sessionid:null,historyValue:y?T?Si(T,y):void 0:r?r.historyValue:void 0,history:!y||e.source?r:void 0,actions:y?K:[],activities:y?S:r?r.activities:{},events:[],configuration:l,transitions:e.transitions,children:Ae,done:f,tags:Wr(l),machine:this}),w=n!==A;p.changed=s.name===ut||w;var k=p.history;k&&delete k.history;var H=!f&&(this._transient||v.some(function(ie){return ie._transient}));if(!a&&(!H||s.name===Ue))return p;var C=p;if(!f)for(H&&(C=this.resolveRaisedTransition(C,{type:wr},s,i));z.length;){var L=z.shift();C=this.resolveRaisedTransition(C,L._event,s,i)}var Fe=C.changed||(k?!!C.actions.length||w||typeof k.value!=typeof C.value||!Jr(C.value,k.value):void 0);return C.changed=Fe,C.history=k,C},t.prototype.getStateNode=function(e){if(Ce(e))return this.machine.getStateNodeById(e);if(!this.states)throw new Error("Unable to retrieve child state '".concat(e,"' from '").concat(this.id,"'; no child states exist."));var r=this.states[e];if(!r)throw new Error("Child state '".concat(e,"' does not exist on '").concat(this.id,"'"));return r},t.prototype.getStateNodeById=function(e){var r=Ce(e)?e.slice(Yt.length):e;if(r===this.id)return this;var n=this.machine.idMap[r];if(!n)throw new Error("Child state node '#".concat(r,"' does not exist on machine '").concat(this.id,"'"));return n},t.prototype.getStateNodeByPath=function(e){if(typeof e=="string"&&Ce(e))try{return this.getStateNodeById(e.slice(1))}catch{}for(var r=Ft(e,this.delimiter).slice(),n=this;r.length;){var i=r.shift();if(!i.length)break;n=n.getStateNode(i)}return n},t.prototype.resolve=function(e){var r,n=this;if(!e)return this.initialStateValue||De;switch(this.type){case"parallel":return Ke(this.initialStateValue,function(s,o){return s?n.getStateNode(o).resolve(e[o]||s):De});case"compound":if(U(e)){var i=this.getStateNode(e);return i.type==="parallel"||i.type==="compound"?(r={},r[e]=i.initialStateValue,r):e}return Object.keys(e).length?Ke(e,function(s,o){return s?n.getStateNode(o).resolve(s):De}):this.initialStateValue||{};default:return e||De}},t.prototype.getResolvedPath=function(e){if(Ce(e)){var r=this.machine.idMap[e.slice(Yt.length)];if(!r)throw new Error("Unable to find state node '".concat(e,"'"));return r.path}return Ft(e,this.delimiter)},Object.defineProperty(t.prototype,"initialStateValue",{get:function(){var e;if(this.__cache.initialStateValue)return this.__cache.initialStateValue;var r;if(this.type==="parallel")r=Ir(this.states,function(n){return n.initialStateValue||De},function(n){return n.type!=="history"});else if(this.initial!==void 0){if(!this.states[this.initial])throw new Error("Initial state '".concat(this.initial,"' not found on '").concat(this.key,"'"));r=wt(this.states[this.initial])?this.initial:(e={},e[this.initial]=this.states[this.initial].initialStateValue,e)}else r={};return this.__cache.initialStateValue=r,this.__cache.initialStateValue},enumerable:!1,configurable:!0}),t.prototype.getInitialState=function(e,r){this._init();var n=this.getStateNodes(e);return this.resolveTransition({configuration:n,exitSet:[],transitions:[],source:void 0,actions:[]},void 0,r!=null?r:this.machine.context,void 0)},Object.defineProperty(t.prototype,"initialState",{get:function(){var e=this.initialStateValue;if(!e)throw new Error("Cannot retrieve initial state from simple state '".concat(this.id,"'."));return this.getInitialState(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"target",{get:function(){var e;if(this.type==="history"){var r=this.config;U(r.target)?e=Ce(r.target)?dt(this.machine.getStateNodeById(r.target).path.slice(this.path.length-1)):r.target:e=r.target}return e},enumerable:!1,configurable:!0}),t.prototype.getRelativeStateNodes=function(e,r,n){return n===void 0&&(n=!0),n?e.type==="history"?e.resolveHistory(r):e.initialStateNodes:[e]},Object.defineProperty(t.prototype,"initialStateNodes",{get:function(){var e=this;if(wt(this))return[this];if(this.type==="compound"&&!this.initial)return V||J(!1,"Compound state node '".concat(this.id,"' has no initial state.")),[this];var r=ht(this.initialStateValue);return G(r.map(function(n){return e.getFromRelativePath(n)}))},enumerable:!1,configurable:!0}),t.prototype.getFromRelativePath=function(e){if(!e.length)return[this];var r=P(e),n=r[0],i=r.slice(1);if(!this.states)throw new Error("Cannot retrieve subPath '".concat(n,"' from node with no states"));var s=this.getStateNode(n);if(s.type==="history")return s.resolveHistory();if(!this.states[n])throw new Error("Child state '".concat(n,"' does not exist on '").concat(this.id,"'"));return this.states[n].getFromRelativePath(i)},t.prototype.historyValue=function(e){if(Object.keys(this.states).length)return{current:e||this.initialStateValue,states:Ir(this.states,function(r,n){if(!e)return r.historyValue();var i=U(e)?void 0:e[n];return r.historyValue(i||r.initialStateValue)},function(r){return!r.history})}},t.prototype.resolveHistory=function(e){var r=this;if(this.type!=="history")return[this];var n=this.parent;if(!e){var i=this.target;return i?G(ht(i).map(function(o){return n.getFromRelativePath(o)})):n.initialStateNodes}var s=mi(n.path,"states")(e).current;return U(s)?[n.getStateNode(s)]:G(ht(s).map(function(o){return r.history==="deep"?n.getFromRelativePath(o):[n.states[o[0]]]}))},Object.defineProperty(t.prototype,"stateIds",{get:function(){var e=this,r=G(Object.keys(this.states).map(function(n){return e.states[n].stateIds}));return[this.id].concat(r)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"events",{get:function(){var e,r,n,i;if(this.__cache.events)return this.__cache.events;var s=this.states,o=new Set(this.ownEvents);if(s)try{for(var u=x(Object.keys(s)),c=u.next();!c.done;c=u.next()){var d=c.value,h=s[d];if(h.states)try{for(var v=(n=void 0,x(h.events)),a=v.next();!a.done;a=v.next()){var l=a.value;o.add("".concat(l))}}catch(f){n={error:f}}finally{try{a&&!a.done&&(i=v.return)&&i.call(v)}finally{if(n)throw n.error}}}}catch(f){e={error:f}}finally{try{c&&!c.done&&(r=u.return)&&r.call(u)}finally{if(e)throw e.error}}return this.__cache.events=Array.from(o)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"ownEvents",{get:function(){var e=new Set(this.transitions.filter(function(r){return!(!r.target&&!r.actions.length&&r.internal)}).map(function(r){return r.eventType}));return Array.from(e)},enumerable:!1,configurable:!0}),t.prototype.resolveTarget=function(e){var r=this;if(e!==void 0)return e.map(function(n){if(!U(n))return n;var i=n[0]===r.delimiter;if(i&&!r.parent)return r.getStateNodeByPath(n.slice(1));var s=i?r.key+n:n;if(r.parent)try{var o=r.parent.getStateNodeByPath(s);return o}catch(u){throw new Error("Invalid transition definition for state node '".concat(r.id,`':
|
|
19
|
-
`).concat(u.message))}else return r.getStateNodeByPath(s)})},t.prototype.formatTransition=function(e){var r=this,n=Oi(e.target),i="internal"in e?e.internal:n?n.some(function(c){return U(c)&&c[0]===r.delimiter}):!0,s=this.machine.options.guards,o=this.resolveTarget(n),u=E(E({},e),{actions:ve(oe(e.actions)),cond:Nr(e.cond,s),target:o,source:this,internal:i,eventType:e.event,toJSON:function(){return E(E({},u),{target:u.target?u.target.map(function(c){return"#".concat(c.id)}):void 0,source:"#".concat(r.id)})}});return u},t.prototype.formatTransitions=function(){var e,r,n=this,i;if(!this.config.on)i=[];else if(Array.isArray(this.config.on))i=this.config.on;else{var s=this.config.on,o=Xe,u=s[o],c=u===void 0?[]:u,d=Dt(s,[typeof o=="symbol"?o:o+""]);i=G(Object.keys(d).map(function(S){!V&&S===Ue&&J(!1,"Empty string transition configs (e.g., `{ on: { '': ... }}`) for transient transitions are deprecated. Specify the transition in the `{ always: ... }` property instead. "+'Please check the `on` configuration for "#'.concat(n.id,'".'));var b=Re(S,d[S]);return V||os(n,S,b),b}).concat(Re(Xe,c)))}var h=this.config.always?Re("",this.config.always):[],v=this.config.onDone?Re(String(Ve(this.id)),this.config.onDone):[];V||J(!(this.config.onDone&&!this.parent),'Root nodes cannot have an ".onDone" transition. Please check the config of "'.concat(this.id,'".'));var a=G(this.invoke.map(function(S){var b=[];return S.onDone&&b.push.apply(b,q([],P(Re(String(Ge(S.id)),S.onDone)),!1)),S.onError&&b.push.apply(b,q([],P(Re(String(_e(S.id)),S.onError)),!1)),b})),l=this.after,f=G(q(q(q(q([],P(v),!1),P(a),!1),P(i),!1),P(h),!1).map(function(S){return oe(S).map(function(b){return n.formatTransition(b)})}));try{for(var y=x(l),T=y.next();!T.done;T=y.next()){var m=T.value;f.push(m)}}catch(S){e={error:S}}finally{try{T&&!T.done&&(r=y.return)&&r.call(y)}finally{if(e)throw e.error}}return f},t}(),Qr=!1;function Ee(t,e){return!V&&!("predictableActionArguments"in t)&&!Qr&&(Qr=!0,console.warn("It is highly recommended to set `predictableActionArguments` to `true` when using `createMachine`. https://xstate.js.org/docs/guides/actions.html")),new as(t,e)}var I=Kr,X=Te;/*! js-cookie v3.0.5 | MIT */function bt(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)t[n]=r[n]}return t}var cs={read:function(t){return t[0]==='"'&&(t=t.slice(1,-1)),t.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(t){return encodeURIComponent(t).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function Wt(t,e){function r(i,s,o){if(typeof document!="undefined"){o=bt({},e,o),typeof o.expires=="number"&&(o.expires=new Date(Date.now()+o.expires*864e5)),o.expires&&(o.expires=o.expires.toUTCString()),i=encodeURIComponent(i).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var u="";for(var c in o)o[c]&&(u+="; "+c,o[c]!==!0&&(u+="="+o[c].split(";")[0]));return document.cookie=i+"="+t.write(s,i)+u}}function n(i){if(!(typeof document=="undefined"||arguments.length&&!i)){for(var s=document.cookie?document.cookie.split("; "):[],o={},u=0;u<s.length;u++){var c=s[u].split("="),d=c.slice(1).join("=");try{var h=decodeURIComponent(c[0]);if(o[h]=t.read(d,h),i===h)break}catch{}}return i?o[i]:o}}return Object.create({set:r,get:n,remove:function(i,s){r(i,"",bt({},s,{expires:-1}))},withAttributes:function(i){return Wt(this.converter,bt({},this.attributes,i))},withConverter:function(i){return Wt(bt({},this.converter,i),this.attributes)}},{attributes:{value:Object.freeze(e)},converter:{value:Object.freeze(t)}})}var Jt=Wt(cs,{path:"/"}),Xt=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function Qt(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function us(t){if(t.__esModule)return t;var e=t.default;if(typeof e=="function"){var r=function n(){return this instanceof n?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};r.prototype=e.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(t).forEach(function(n){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(r,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}),r}var Zt={exports:{}};(function(t,e){(function(r){function n(i){var s=i&&i.Promise||r.Promise,o=i&&i.XMLHttpRequest||r.XMLHttpRequest;return function(){var u=Object.create(r,{fetch:{value:void 0,writable:!0}});return function(c,d){d(e)}(this,function(c){var d=typeof u!="undefined"&&u||typeof self!="undefined"&&self||typeof d!="undefined"&&d,h={searchParams:"URLSearchParams"in d,iterable:"Symbol"in d&&"iterator"in Symbol,blob:"FileReader"in d&&"Blob"in d&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in d,arrayBuffer:"ArrayBuffer"in d};function v(p){return p&&DataView.prototype.isPrototypeOf(p)}if(h.arrayBuffer)var a=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],l=ArrayBuffer.isView||function(p){return p&&a.indexOf(Object.prototype.toString.call(p))>-1};function f(p){if(typeof p!="string"&&(p=String(p)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(p)||p==="")throw new TypeError("Invalid character in header field name");return p.toLowerCase()}function y(p){return typeof p!="string"&&(p=String(p)),p}function T(p){var w={next:function(){var k=p.shift();return{done:k===void 0,value:k}}};return h.iterable&&(w[Symbol.iterator]=function(){return w}),w}function m(p){this.map={},p instanceof m?p.forEach(function(w,k){this.append(k,w)},this):Array.isArray(p)?p.forEach(function(w){this.append(w[0],w[1])},this):p&&Object.getOwnPropertyNames(p).forEach(function(w){this.append(w,p[w])},this)}m.prototype.append=function(p,w){p=f(p),w=y(w);var k=this.map[p];this.map[p]=k?k+", "+w:w},m.prototype.delete=function(p){delete this.map[f(p)]},m.prototype.get=function(p){return p=f(p),this.has(p)?this.map[p]:null},m.prototype.has=function(p){return this.map.hasOwnProperty(f(p))},m.prototype.set=function(p,w){this.map[f(p)]=y(w)},m.prototype.forEach=function(p,w){for(var k in this.map)this.map.hasOwnProperty(k)&&p.call(w,this.map[k],k,this)},m.prototype.keys=function(){var p=[];return this.forEach(function(w,k){p.push(k)}),T(p)},m.prototype.values=function(){var p=[];return this.forEach(function(w){p.push(w)}),T(p)},m.prototype.entries=function(){var p=[];return this.forEach(function(w,k){p.push([k,w])}),T(p)},h.iterable&&(m.prototype[Symbol.iterator]=m.prototype.entries);function S(p){if(p.bodyUsed)return s.reject(new TypeError("Already read"));p.bodyUsed=!0}function b(p){return new s(function(w,k){p.onload=function(){w(p.result)},p.onerror=function(){k(p.error)}})}function O(p){var w=new FileReader,k=b(w);return w.readAsArrayBuffer(p),k}function M(p){var w=new FileReader,k=b(w);return w.readAsText(p),k}function D(p){for(var w=new Uint8Array(p),k=new Array(w.length),H=0;H<w.length;H++)k[H]=String.fromCharCode(w[H]);return k.join("")}function _(p){if(p.slice)return p.slice(0);var w=new Uint8Array(p.byteLength);return w.set(new Uint8Array(p)),w.buffer}function $(){return this.bodyUsed=!1,this._initBody=function(p){this.bodyUsed=this.bodyUsed,this._bodyInit=p,p?typeof p=="string"?this._bodyText=p:h.blob&&Blob.prototype.isPrototypeOf(p)?this._bodyBlob=p:h.formData&&FormData.prototype.isPrototypeOf(p)?this._bodyFormData=p:h.searchParams&&URLSearchParams.prototype.isPrototypeOf(p)?this._bodyText=p.toString():h.arrayBuffer&&h.blob&&v(p)?(this._bodyArrayBuffer=_(p.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):h.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(p)||l(p))?this._bodyArrayBuffer=_(p):this._bodyText=p=Object.prototype.toString.call(p):this._bodyText="",this.headers.get("content-type")||(typeof p=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):h.searchParams&&URLSearchParams.prototype.isPrototypeOf(p)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},h.blob&&(this.blob=function(){var p=S(this);if(p)return p;if(this._bodyBlob)return s.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return s.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return s.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){if(this._bodyArrayBuffer){var p=S(this);return p||(ArrayBuffer.isView(this._bodyArrayBuffer)?s.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):s.resolve(this._bodyArrayBuffer))}else return this.blob().then(O)}),this.text=function(){var p=S(this);if(p)return p;if(this._bodyBlob)return M(this._bodyBlob);if(this._bodyArrayBuffer)return s.resolve(D(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return s.resolve(this._bodyText)},h.formData&&(this.formData=function(){return this.text().then(F)}),this.json=function(){return this.text().then(JSON.parse)},this}var R=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function B(p){var w=p.toUpperCase();return R.indexOf(w)>-1?w:p}function A(p,w){if(!(this instanceof A))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');w=w||{};var k=w.body;if(p instanceof A){if(p.bodyUsed)throw new TypeError("Already read");this.url=p.url,this.credentials=p.credentials,w.headers||(this.headers=new m(p.headers)),this.method=p.method,this.mode=p.mode,this.signal=p.signal,!k&&p._bodyInit!=null&&(k=p._bodyInit,p.bodyUsed=!0)}else this.url=String(p);if(this.credentials=w.credentials||this.credentials||"same-origin",(w.headers||!this.headers)&&(this.headers=new m(w.headers)),this.method=B(w.method||this.method||"GET"),this.mode=w.mode||this.mode||null,this.signal=w.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&k)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(k),(this.method==="GET"||this.method==="HEAD")&&(w.cache==="no-store"||w.cache==="no-cache")){var H=/([?&])_=[^&]*/;if(H.test(this.url))this.url=this.url.replace(H,"$1_="+new Date().getTime());else{var C=/\?/;this.url+=(C.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}A.prototype.clone=function(){return new A(this,{body:this._bodyInit})};function F(p){var w=new FormData;return p.trim().split("&").forEach(function(k){if(k){var H=k.split("="),C=H.shift().replace(/\+/g," "),L=H.join("=").replace(/\+/g," ");w.append(decodeURIComponent(C),decodeURIComponent(L))}}),w}function z(p){var w=new m,k=p.replace(/\r?\n[\t ]+/g," ");return k.split("\r").map(function(H){return H.indexOf(`
|
|
20
|
-
`)===0?H.substr(1,H.length):H}).forEach(function(H){var C=H.split(":"),L=C.shift().trim();if(L){var Fe=C.join(":").trim();w.append(L,Fe)}}),w}$.call(A.prototype);function K(p,w){if(!(this instanceof K))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');w||(w={}),this.type="default",this.status=w.status===void 0?200:w.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in w?w.statusText:"",this.headers=new m(w.headers),this.url=w.url||"",this._initBody(p)}$.call(K.prototype),K.prototype.clone=function(){return new K(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},K.error=function(){var p=new K(null,{status:0,statusText:""});return p.type="error",p};var ke=[301,302,303,307,308];K.redirect=function(p,w){if(ke.indexOf(w)===-1)throw new RangeError("Invalid status code");return new K(null,{status:w,headers:{location:p}})},c.DOMException=d.DOMException;try{new c.DOMException}catch{c.DOMException=function(w,k){this.message=w,this.name=k;var H=Error(w);this.stack=H.stack},c.DOMException.prototype=Object.create(Error.prototype),c.DOMException.prototype.constructor=c.DOMException}function Ae(p,w){return new s(function(k,H){var C=new A(p,w);if(C.signal&&C.signal.aborted)return H(new c.DOMException("Aborted","AbortError"));var L=new o;function Fe(){L.abort()}L.onload=function(){var W={status:L.status,statusText:L.statusText,headers:z(L.getAllResponseHeaders()||"")};W.url="responseURL"in L?L.responseURL:W.headers.get("X-Request-URL");var Ut="response"in L?L.response:L.responseText;setTimeout(function(){k(new K(Ut,W))},0)},L.onerror=function(){setTimeout(function(){H(new TypeError("Network request failed"))},0)},L.ontimeout=function(){setTimeout(function(){H(new TypeError("Network request failed"))},0)},L.onabort=function(){setTimeout(function(){H(new c.DOMException("Aborted","AbortError"))},0)};function ie(W){try{return W===""&&d.location.href?d.location.href:W}catch{return W}}L.open(C.method,ie(C.url),!0),C.credentials==="include"?L.withCredentials=!0:C.credentials==="omit"&&(L.withCredentials=!1),"responseType"in L&&(h.blob?L.responseType="blob":h.arrayBuffer&&C.headers.get("Content-Type")&&C.headers.get("Content-Type").indexOf("application/octet-stream")!==-1&&(L.responseType="arraybuffer")),w&&typeof w.headers=="object"&&!(w.headers instanceof m)?Object.getOwnPropertyNames(w.headers).forEach(function(W){L.setRequestHeader(W,y(w.headers[W]))}):C.headers.forEach(function(W,Ut){L.setRequestHeader(Ut,W)}),C.signal&&(C.signal.addEventListener("abort",Fe),L.onreadystatechange=function(){L.readyState===4&&C.signal.removeEventListener("abort",Fe)}),L.send(typeof C._bodyInit=="undefined"?null:C._bodyInit)})}Ae.polyfill=!0,d.fetch||(d.fetch=Ae,d.Headers=m,d.Request=A,d.Response=K),c.Headers=m,c.Request=A,c.Response=K,c.fetch=Ae,Object.defineProperty(c,"__esModule",{value:!0})}),{fetch:u.fetch,Headers:u.Headers,Request:u.Request,Response:u.Response,DOMException:u.DOMException}}()}t.exports=n})(typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:Xt)})(Zt,Zt.exports);var ls=Zt.exports;const er=Qt(ls);var ds=Object.defineProperty,hs=(t,e,r)=>e in t?ds(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ae=(t,e,r)=>hs(t,typeof e!="symbol"?e+"":e,r);const Me="nhostRefreshToken",Qe="nhostRefreshTokenId",Se="nhostRefreshTokenExpiresAt",Zr=3,tr=60,rr=5,nr=0,ir=1,ce=10,Le=20;let be=class extends Error{constructor(e){super(e.message),ae(this,"error"),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),e instanceof Error?(this.name=e.name,this.error={error:e.name,status:ir,message:e.message}):(this.name=e.error,this.error=e)}};const ue={status:ce,error:"invalid-email",message:"Email is incorrectly formatted"},en={status:ce,error:"invalid-mfa-type",message:"MFA type is invalid"},tn={status:ce,error:"invalid-mfa-code",message:"MFA code is invalid"},kt={status:ce,error:"invalid-password",message:"Password is incorrectly formatted"},sr={status:ce,error:"invalid-phone-number",message:"Phone number is incorrectly formatted"},rn={status:ce,error:"invalid-mfa-ticket",message:"MFA ticket is invalid"},nn={status:ce,error:"no-mfa-ticket",message:"No MFA ticket has been provided"},sn={status:ce,error:"no-refresh-token",message:"No refresh token has been provided"},on={status:Le,error:"refresher-already-running",message:"The token refresher is already running. You must wait until is has finished before submitting a new token."},ee={status:Le,error:"already-signed-in",message:"User is already signed in"},an={status:Le,error:"unauthenticated-user",message:"User is not authenticated"},fs={status:Le,error:"user-not-anonymous",message:"User is not anonymous"},cn={status:Le,error:"unverified-user",message:"Email needs verification"},un={status:ce,error:"invalid-refresh-token",message:"Invalid or expired refresh token"},ln={status:ir,error:"invalid-sign-in-method",message:"Invalid sign-in method"},At={user:null,mfa:null,accessToken:{value:null,expiresAt:null,expiresInSeconds:15},refreshTimer:{startedAt:null,attempts:0,lastAttempt:null},refreshToken:{value:null},importTokenAttempts:0,errors:{}};function ps(t){return new TextEncoder().encode(t)}function ye(t){const e=new Uint8Array(t);let r="";for(const n of e)r+=String.fromCharCode(n);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function or(t){const e=t.replace(/-/g,"+").replace(/_/g,"/"),r=(4-e.length%4)%4,n=e.padEnd(e.length+r,"="),i=atob(n),s=new ArrayBuffer(i.length),o=new Uint8Array(s);for(let u=0;u<i.length;u++)o[u]=i.charCodeAt(u);return s}function dn(){return(window==null?void 0:window.PublicKeyCredential)!==void 0&&typeof window.PublicKeyCredential=="function"}function hn(t){const{id:e}=t;return{...t,id:or(e),transports:t.transports}}function fn(t){return t==="localhost"||/^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/i.test(t)}class Z extends Error{constructor({message:e,code:r,cause:n,name:i}){super(e,{cause:n}),this.name=i!=null?i:n.name,this.code=r}}function vs({error:t,options:e}){var r,n;const{publicKey:i}=e;if(!i)throw Error("options was missing required publicKey property");if(t.name==="AbortError"){if(e.signal instanceof AbortSignal)return new Z({message:"Registration ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:t})}else if(t.name==="ConstraintError"){if(((r=i.authenticatorSelection)==null?void 0:r.requireResidentKey)===!0)return new Z({message:"Discoverable credentials were required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_DISCOVERABLE_CREDENTIAL_SUPPORT",cause:t});if(((n=i.authenticatorSelection)==null?void 0:n.userVerification)==="required")return new Z({message:"User verification was required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_USER_VERIFICATION_SUPPORT",cause:t})}else{if(t.name==="InvalidStateError")return new Z({message:"The authenticator was previously registered",code:"ERROR_AUTHENTICATOR_PREVIOUSLY_REGISTERED",cause:t});if(t.name==="NotAllowedError")return new Z({message:t.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t});if(t.name==="NotSupportedError")return i.pubKeyCredParams.filter(s=>s.type==="public-key").length===0?new Z({message:'No entry in pubKeyCredParams was of type "public-key"',code:"ERROR_MALFORMED_PUBKEYCREDPARAMS",cause:t}):new Z({message:"No available authenticator supported any of the specified pubKeyCredParams algorithms",code:"ERROR_AUTHENTICATOR_NO_SUPPORTED_PUBKEYCREDPARAMS_ALG",cause:t});if(t.name==="SecurityError"){const s=window.location.hostname;if(fn(s)){if(i.rp.id!==s)return new Z({message:`The RP ID "${i.rp.id}" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:t})}else return new Z({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:t})}else if(t.name==="TypeError"){if(i.user.id.byteLength<1||i.user.id.byteLength>64)return new Z({message:"User ID was not between 1 and 64 characters",code:"ERROR_INVALID_USER_ID_LENGTH",cause:t})}else if(t.name==="UnknownError")return new Z({message:"The authenticator was unable to process the specified options, or could not create a new credential",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:t})}return t}class ys{createNewAbortSignal(){if(this.controller){const r=new Error("Cancelling existing WebAuthn API call for new one");r.name="AbortError",this.controller.abort(r)}const e=new AbortController;return this.controller=e,e.signal}cancelCeremony(){if(this.controller){const e=new Error("Manually cancelling existing WebAuthn API call");e.name="AbortError",this.controller.abort(e),this.controller=void 0}}}const pn=new ys,gs=["cross-platform","platform"];function vn(t){if(t&&!(gs.indexOf(t)<0))return t}async function yn(t){var e;if(!dn())throw new Error("WebAuthn is not supported in this browser");const r={publicKey:{...t,challenge:or(t.challenge),user:{...t.user,id:ps(t.user.id)},excludeCredentials:(e=t.excludeCredentials)==null?void 0:e.map(hn)}};r.signal=pn.createNewAbortSignal();let n;try{n=await navigator.credentials.create(r)}catch(a){throw vs({error:a,options:r})}if(!n)throw new Error("Registration was not completed");const{id:i,rawId:s,response:o,type:u}=n;let c;typeof o.getTransports=="function"&&(c=o.getTransports());let d;if(typeof o.getPublicKeyAlgorithm=="function")try{d=o.getPublicKeyAlgorithm()}catch(a){ar("getPublicKeyAlgorithm()",a)}let h;if(typeof o.getPublicKey=="function")try{const a=o.getPublicKey();a!==null&&(h=ye(a))}catch(a){ar("getPublicKey()",a)}let v;if(typeof o.getAuthenticatorData=="function")try{v=ye(o.getAuthenticatorData())}catch(a){ar("getAuthenticatorData()",a)}return{id:i,rawId:ye(s),response:{attestationObject:ye(o.attestationObject),clientDataJSON:ye(o.clientDataJSON),transports:c,publicKeyAlgorithm:d,publicKey:h,authenticatorData:v},type:u,clientExtensionResults:n.getClientExtensionResults(),authenticatorAttachment:vn(n.authenticatorAttachment)}}function ar(t,e){console.warn(`The browser extension that intercepted this WebAuthn API call incorrectly implemented ${t}. You should report this error to them.
|
|
21
|
-
`,e)}function ms(t){return new TextDecoder("utf-8").decode(t)}function Es(){const t=window.PublicKeyCredential;return t.isConditionalMediationAvailable===void 0?new Promise(e=>e(!1)):t.isConditionalMediationAvailable()}function ws({error:t,options:e}){const{publicKey:r}=e;if(!r)throw Error("options was missing required publicKey property");if(t.name==="AbortError"){if(e.signal instanceof AbortSignal)return new Z({message:"Authentication ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:t})}else{if(t.name==="NotAllowedError")return new Z({message:t.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t});if(t.name==="SecurityError"){const n=window.location.hostname;if(fn(n)){if(r.rpId!==n)return new Z({message:`The RP ID "${r.rpId}" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:t})}else return new Z({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:t})}else if(t.name==="UnknownError")return new Z({message:"The authenticator was unable to process the specified options, or could not create a new assertion signature",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:t})}return t}async function cr(t,e=!1){var r,n;if(!dn())throw new Error("WebAuthn is not supported in this browser");let i;((r=t.allowCredentials)==null?void 0:r.length)!==0&&(i=(n=t.allowCredentials)==null?void 0:n.map(hn));const s={...t,challenge:or(t.challenge),allowCredentials:i},o={};if(e){if(!await Es())throw Error("Browser does not support WebAuthn autofill");if(document.querySelectorAll("input[autocomplete$='webauthn']").length<1)throw Error('No <input> with "webauthn" as the only or last value in its `autocomplete` attribute was detected');o.mediation="conditional",s.allowCredentials=[]}o.publicKey=s,o.signal=pn.createNewAbortSignal();let u;try{u=await navigator.credentials.get(o)}catch(l){throw ws({error:l,options:o})}if(!u)throw new Error("Authentication was not completed");const{id:c,rawId:d,response:h,type:v}=u;let a;return h.userHandle&&(a=ms(h.userHandle)),{id:c,rawId:ye(d),response:{authenticatorData:ye(h.authenticatorData),clientDataJSON:ye(h.clientDataJSON),signature:ye(h.signature),userHandle:a},type:v,clientExtensionResults:u.getClientExtensionResults(),authenticatorAttachment:vn(u.authenticatorAttachment)}}const Ot=typeof window!="undefined",It=new Map,Ts=t=>{var e;return Ot&&typeof localStorage!="undefined"?localStorage.getItem(t):(e=It.get(t))!=null?e:null},Ss=(t,e)=>{Ot&&typeof localStorage!="undefined"?e?localStorage.setItem(t,e):localStorage.removeItem(t):e?It.set(t,e):It.has(t)&&It.delete(t)},gn=(t,e)=>{if(t==="localStorage"||t==="web")return Ts;if(t==="cookie")return r=>{var n;return Ot&&(n=Jt.get(r))!=null?n:null};if(!e)throw Error(`clientStorageType is set to '${t}' but no clientStorage has been given`);if(t==="react-native")return r=>{var n;return(n=e.getItem)==null?void 0:n.call(e,r)};if(t==="capacitor")return r=>{var n;return(n=e.get)==null?void 0:n.call(e,{key:r})};if(t==="expo-secure-storage")return r=>{var n;return(n=e.getItemAsync)==null?void 0:n.call(e,r)};if(t==="custom"){if(e.getItem&&e.removeItem)return e.getItem;if(e.getItemAsync)return e.getItemAsync;throw Error(`clientStorageType is set to 'custom' but clientStorage is missing either "getItem" and "removeItem" properties or "getItemAsync" property`)}throw Error(`Unknown storage type: ${t}`)},mn=(t,e)=>{if(t==="localStorage"||t==="web")return Ss;if(t==="cookie")return(r,n)=>{Ot&&(n?Jt.set(r,n,{expires:30,sameSite:"lax",httpOnly:!1}):Jt.remove(r))};if(!e)throw Error(`clientStorageType is set to '${t}' but no clienStorage has been given`);if(t==="react-native")return(r,n)=>{var i,s;return n?(i=e.setItem)==null?void 0:i.call(e,r,n):(s=e.removeItem)==null?void 0:s.call(e,r)};if(t==="capacitor")return(r,n)=>{var i,s;return n?(i=e.set)==null?void 0:i.call(e,{key:r,value:n}):(s=e.remove)==null?void 0:s.call(e,{key:r})};if(t==="expo-secure-storage")return async(r,n)=>{var i,s;return n?(i=e.setItemAsync)==null?void 0:i.call(e,r,n):(s=e.deleteItemAsync)==null?void 0:s.call(e,r)};if(t==="custom"){if(!e.removeItem)throw Error("clientStorageType is set to 'custom' but clientStorage is missing a removeItem property");if(e.setItem)return(r,n)=>{var i,s;return n?(i=e.setItem)==null?void 0:i.call(e,r,n):(s=e.removeItem)==null?void 0:s.call(e,r)};if(e.setItemAsync)return async(r,n)=>{var i,s;return n?(i=e.setItemAsync)==null?void 0:i.call(e,r,n):(s=e.removeItem)==null?void 0:s.call(e,r)};throw Error("clientStorageType is set to 'custom' but clientStorage is missing setItem or setItemAsync property")}throw Error(`Unknown storage type: ${t}`)},Ze=t=>!t||!t.accessToken.value||!t.accessToken.expiresAt||!t.user?null:{accessToken:t.accessToken.value,accessTokenExpiresIn:(t.accessToken.expiresAt.getTime()-Date.now())/1e3,refreshToken:t.refreshToken.value,user:t.user},se=({accessToken:t,refreshToken:e,isError:r,user:n,error:i})=>r?{session:null,error:i}:n&&t?{session:{accessToken:t,accessTokenExpiresIn:0,refreshToken:e,user:n},error:null}:{session:null,error:null},et=()=>typeof window!="undefined"&&typeof window.location!="undefined";let En=globalThis.fetch;typeof EdgeRuntime!="string"&&(En=er().fetch);const wn=async(t,e,{token:r,body:n,extraHeaders:i}={})=>{const s={"Content-Type":"application/json",Accept:"*/*"};r&&(s.Authorization=`Bearer ${r}`);const o={...s,...i},u={method:e,headers:o};n&&(u.body=JSON.stringify(n));try{const c=await En(t,u);if(!c.ok){const d=await c.json();return Promise.reject({error:d})}try{return{data:await c.json(),error:null}}catch{return console.warn(`Unexpected response: can't parse the response of the server at ${t}`),{data:"OK",error:null}}}catch{const c={message:"Network Error",status:nr,error:"network"};return Promise.reject({error:c})}},re=async(t,e,r,n)=>wn(t,"POST",{token:r,body:e,extraHeaders:n}),Tn=(t,e)=>wn(t,"GET",{token:e}),Rt=(t,e)=>{const r=e&&Object.entries(e).map(([n,i])=>{const s=Array.isArray(i)?i.join(","):typeof i=="object"?JSON.stringify(i):i;return`${n}=${encodeURIComponent(s)}`}).join("&");return r?`${t}?${r}`:t},ne=(t,e)=>{if(!(e!=null&&e.redirectTo))return e;const{redirectTo:r,...n}=e;if(!t)return r.startsWith("/")?n:e;const i=new URL(t),s=Object.fromEntries(new URLSearchParams(i.search)),o=new URL(r.startsWith("/")?i.origin+r:r),u=new URLSearchParams(o.search);let c=Object.fromEntries(u);r.startsWith("/")&&(c={...s,...c});let d=i.pathname;return o.pathname.length>1&&(d+=o.pathname.slice(1)),{...n,redirectTo:Rt(o.origin+d,c)}};function tt(t,e){var r;if(!e){if(typeof window=="undefined")return;e=((r=window.location)==null?void 0:r.href)||""}t=t.replace(/[\[\]]/g,"\\$&");const n=new RegExp("[?&#]"+t+"(=([^&#]*)|&|#|$)"),i=n.exec(e);return i?i[2]?decodeURIComponent(i[2].replace(/\+/g," ")):"":null}function ur(t){var e;if(typeof window=="undefined")return;const r=window==null?void 0:window.location;if(r&&r){const n=new URLSearchParams(r.search),i=new URLSearchParams((e=r.hash)==null?void 0:e.slice(1));n.delete(t),i.delete(t);let s=window.location.pathname;Array.from(n).length&&(s+=`?${n.toString()}`),Array.from(i).length&&(s+=`#${i.toString()}`),window.history.pushState({},"",s)}}const le=t=>!!t&&typeof t=="string"&&!!String(t).toLowerCase().match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/),xt=t=>!!t&&typeof t=="string"&&t.length>=Zr,lr=t=>!!t&&typeof t=="string",Sn=t=>t&&typeof t=="string"&&t.match(/^mfaTotp:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i),bn=({backendUrl:t,clientUrl:e,broadcastKey:r,clientStorageType:n="web",clientStorage:i,refreshIntervalTime:s,autoRefreshToken:o=!0,autoSignIn:u=!0})=>{const c=gn(n,i),d=mn(n,i),h=async(a,l,f,y)=>(await re(`${t}${a}`,l,f,y)).data;let v=null;if(typeof window!="undefined"&&r)try{v=new BroadcastChannel(r)}catch{}return Ee({schema:{context:{},events:{},services:{}},tsTypes:{},context:At,predictableActionArguments:!0,id:"nhost",type:"parallel",states:{authentication:{initial:"starting",on:{SESSION_UPDATE:[{cond:"hasSession",actions:["saveSession","resetTimer","reportTokenChanged"],target:".signedIn"}]},states:{starting:{tags:["loading"],always:{cond:"isSignedIn",target:"signedIn"},invoke:{id:"importRefreshToken",src:"importRefreshToken",onDone:[{cond:"hasSession",actions:["saveSession","reportTokenChanged"],target:"signedIn"},{target:"signedOut"}],onError:[{cond:"shouldRetryImportToken",actions:"incrementTokenImportAttempts",target:"retryTokenImport"},{actions:["saveAuthenticationError"],target:"signedOut"}]}},retryTokenImport:{tags:["loading"],after:{RETRY_IMPORT_TOKEN_DELAY:"starting"}},signedOut:{initial:"noErrors",entry:"reportSignedOut",states:{noErrors:{},success:{},needsSmsOtp:{},needsMfa:{},failed:{},signingOut:{entry:["clearContextExceptTokens"],exit:["destroyAccessToken","destroyRefreshToken","reportTokenChanged"],invoke:{src:"signout",id:"signingOut",onDone:{target:"success"},onError:{target:"failed",actions:["saveAuthenticationError"]}}}},on:{SIGNIN_PASSWORD:"authenticating.password",SIGNIN_ANONYMOUS:"authenticating.anonymous",SIGNIN_SECURITY_KEY_EMAIL:"authenticating.securityKeyEmail",SIGNIN_SECURITY_KEY:"authenticating.securityKey",SIGNIN_MFA_TOTP:"authenticating.mfa.totp",SIGNIN_PAT:"authenticating.pat",SIGNIN_ID_TOKEN:"authenticating.idToken"}},authenticating:{entry:"resetErrors",states:{password:{invoke:{src:"signInPassword",id:"authenticateUserWithPassword",onDone:[{cond:"hasMfaTicket",actions:["saveMfaTicket"],target:"#nhost.authentication.signedOut.needsMfa"},{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"}],onError:[{cond:"unverified",target:["#nhost.authentication.signedOut","#nhost.registration.incomplete.needsEmailVerification"]},{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}]}},pat:{invoke:{src:"signInPAT",id:"authenticateWithPAT",onDone:{actions:["savePATSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}}},idToken:{invoke:{src:"signInIdToken",id:"authenticateWithIdToken",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}}},anonymous:{invoke:{src:"signInAnonymous",id:"authenticateAnonymously",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}}},mfa:{states:{totp:{invoke:{src:"signInMfaTotp",id:"signInMfaTotp",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:["saveAuthenticationError"],target:"#nhost.authentication.signedOut.failed"}}}}},securityKeyEmail:{invoke:{src:"signInSecurityKeyEmail",id:"authenticateUserWithSecurityKey",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:[{cond:"unverified",target:["#nhost.authentication.signedOut","#nhost.registration.incomplete.needsEmailVerification"]},{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}]}},securityKey:{invoke:{src:"signInSecurityKey",id:"authenticateUserWithSecurityKey",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:[{cond:"unverified",target:["#nhost.authentication.signedOut","#nhost.registration.incomplete.needsEmailVerification"]},{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}]}}}},signedIn:{type:"parallel",entry:["reportSignedIn","cleanUrl","broadcastToken","resetErrors"],on:{SIGNOUT:"signedOut.signingOut"},states:{refreshTimer:{id:"timer",initial:"idle",states:{disabled:{type:"final"},stopped:{always:{cond:"noToken",target:"idle"}},idle:{always:[{cond:"isAutoRefreshDisabled",target:"disabled"},{cond:"isRefreshTokenPAT",target:"disabled"},{cond:"hasRefreshToken",target:"running"}]},running:{initial:"pending",entry:"resetTimer",states:{pending:{after:{1e3:{internal:!1,target:"pending"}},always:{cond:"refreshTimerShouldRefresh",target:"refreshing"}},refreshing:{invoke:{src:"refreshToken",id:"refreshToken",onDone:{actions:["saveSession","resetTimer","reportTokenChanged","broadcastToken"],target:"pending"},onError:[{cond:"isUnauthorizedError",target:"#nhost.authentication.signedOut"},{actions:"saveRefreshAttempt",target:"pending"}]}}}}}}}}}},token:{initial:"idle",states:{idle:{on:{TRY_TOKEN:"running"},initial:"noErrors",states:{noErrors:{},error:{}}},running:{invoke:{src:"refreshToken",id:"authenticateWithToken",onDone:{actions:["saveSession","reportTokenChanged","broadcastToken"],target:["#nhost.authentication.signedIn","idle.noErrors"]},onError:[{cond:"isSignedIn",target:"idle.error"},{actions:"saveAuthenticationError",target:["#nhost.authentication.signedOut.failed","idle.error"]}]}}}},registration:{initial:"incomplete",on:{SIGNED_IN:[{cond:"isAnonymous",target:".incomplete"},".complete"]},states:{incomplete:{on:{SIGNUP_EMAIL_PASSWORD:"emailPassword",SIGNUP_SECURITY_KEY:"securityKey",PASSWORDLESS_EMAIL:"passwordlessEmail",PASSWORDLESS_SMS:"passwordlessSms",PASSWORDLESS_SMS_OTP:"passwordlessSmsOtp",SIGNIN_EMAIL_OTP:"signInEmailOTP",VERIFY_EMAIL_OTP:"verifyEmailOTP"},initial:"noErrors",states:{noErrors:{},needsEmailVerification:{},needsOtp:{},failed:{}}},emailPassword:{entry:["resetErrors"],invoke:{src:"signUpEmailPassword",id:"signUpEmailPassword",onDone:[{cond:"hasSession",actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsEmailVerification"]}],onError:[{cond:"unverified",target:"incomplete.needsEmailVerification"},{actions:"saveRegistrationError",target:"incomplete.failed"}]}},securityKey:{entry:["resetErrors"],invoke:{src:"signUpSecurityKey",id:"signUpSecurityKey",onDone:[{cond:"hasSession",actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsEmailVerification"]}],onError:[{cond:"unverified",target:"incomplete.needsEmailVerification"},{actions:"saveRegistrationError",target:"incomplete.failed"}]}},passwordlessEmail:{entry:["resetErrors"],invoke:{src:"passwordlessEmail",id:"passwordlessEmail",onDone:{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsEmailVerification"]},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},passwordlessSms:{entry:["resetErrors"],invoke:{src:"passwordlessSms",id:"passwordlessSms",onDone:{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsOtp"]},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},passwordlessSmsOtp:{entry:["resetErrors"],invoke:{src:"passwordlessSmsOtp",id:"passwordlessSmsOtp",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},signInEmailOTP:{entry:["resetErrors"],invoke:{src:"signInEmailOTP",id:"signInEmailOTP",onDone:{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsOtp"]},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},verifyEmailOTP:{entry:["resetErrors"],invoke:{src:"verifyEmailOTP",id:"verifyEmailOTP",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},complete:{on:{SIGNED_OUT:"incomplete"}}}}}},{actions:{reportSignedIn:X("SIGNED_IN"),reportSignedOut:X("SIGNED_OUT"),reportTokenChanged:X("TOKEN_CHANGED"),incrementTokenImportAttempts:I({importTokenAttempts:({importTokenAttempts:a})=>a+1}),clearContext:I(()=>(d(Se,null),d(Me,null),d(Qe,null),{...At})),clearContextExceptTokens:I(({accessToken:a,refreshToken:l})=>({...At,accessToken:a,refreshToken:l})),saveSession:I({user:(a,{data:l})=>{var f;return((f=l==null?void 0:l.session)==null?void 0:f.user)||null},accessToken:(a,{data:l})=>{if(l.session){const{accessTokenExpiresIn:f,accessToken:y}=l.session,T=new Date(Date.now()+f*1e3);return d(Se,T.toISOString()),{value:y,expiresAt:T,expiresInSeconds:f}}return d(Se,null),{value:null,expiresAt:null,expiresInSeconds:null}},refreshToken:(a,{data:l})=>{var f,y;const T=((f=l.session)==null?void 0:f.refreshToken)||null,m=((y=l.session)==null?void 0:y.refreshTokenId)||null;return T&&d(Me,T),m&&d(Qe,m),{value:T}}}),savePATSession:I({user:(a,{data:l})=>{var f;return((f=l==null?void 0:l.session)==null?void 0:f.user)||null},accessToken:(a,{data:l})=>{if(l.session){const{accessTokenExpiresIn:f,accessToken:y}=l.session,T=new Date(Date.now()+f*1e3);return d(Se,T.toISOString()),{value:y,expiresAt:T,expiresInSeconds:f}}return d(Se,null),{value:null,expiresAt:null,expiresInSeconds:null}},refreshToken:(a,{data:l})=>{var f,y;const T=((f=l.session)==null?void 0:f.refreshToken)||null,m=((y=l.session)==null?void 0:y.refreshTokenId)||null;return T&&d(Me,T),m&&d(Qe,m),{value:T,isPAT:!0}}}),saveMfaTicket:I({mfa:(a,l)=>{var f;return(f=l.data)==null?void 0:f.mfa}}),resetTimer:I({refreshTimer:a=>({startedAt:new Date,attempts:0,lastAttempt:null})}),saveRefreshAttempt:I({refreshTimer:(a,l)=>({startedAt:a.refreshTimer.startedAt,attempts:a.refreshTimer.attempts+1,lastAttempt:new Date})}),saveAuthenticationError:I({errors:({errors:a},{data:{error:l}})=>({...a,authentication:l})}),resetErrors:I({errors:a=>({}),importTokenAttempts:a=>0}),saveRegistrationError:I({errors:({errors:a},{data:{error:l}})=>({...a,registration:l})}),destroyRefreshToken:I({refreshToken:a=>(d(Me,null),d(Qe,null),{value:null})}),destroyAccessToken:I({accessToken:a=>(d(Se,null),{value:null,expiresAt:null,expiresInSeconds:null})}),cleanUrl:()=>{u&&tt("refreshToken")&&(ur("refreshToken"),ur("type"))},broadcastToken:a=>{if(u&&r&&v)try{v.postMessage({type:"broadcast_session",payload:{token:a.refreshToken.value,accessToken:a.accessToken.value,user:a.user,expiresAt:a.accessToken.expiresAt?a.accessToken.expiresAt.toISOString():null,expiresInSeconds:a.accessToken.expiresInSeconds}})}catch{}}},guards:{isAnonymous:(a,l)=>{var f;return!!((f=a.user)!=null&&f.isAnonymous)},isSignedIn:a=>!!a.user&&!!a.accessToken.value,noToken:a=>!a.refreshToken.value,isRefreshTokenPAT:a=>{var l;return!!((l=a.refreshToken)!=null&&l.isPAT)},hasRefreshToken:a=>!!a.refreshToken.value,isAutoRefreshDisabled:()=>!o,refreshTimerShouldRefresh:a=>{const{expiresAt:l}=a.accessToken;if(!l)return!1;if(a.refreshTimer.lastAttempt)return a.refreshTimer.attempts>rr?!1:Date.now()-a.refreshTimer.lastAttempt.getTime()>Math.pow(2,a.refreshTimer.attempts-1)*5e3;if(l.getTime()<Date.now()||s&&Date.now()-a.refreshTimer.startedAt.getTime()>s*1e3)return!0;if(!a.accessToken.expiresInSeconds)return!1;const f=l.getTime()-Date.now();return f<=tr*1e3/2||f<=tr*1e3&&Math.random()<.1},shouldRetryImportToken:(a,l)=>a.importTokenAttempts<rr&&(l.data.error.status===nr||l.data.error.status>=500),unverified:(a,{data:{error:l}})=>l.status===401&&(l.message==="Email is not verified"||l.error==="unverified-user"),hasSession:(a,l)=>{var f;return!!((f=l.data)!=null&&f.session)},hasMfaTicket:(a,l)=>{var f;return!!((f=l.data)!=null&&f.mfa)},isUnauthorizedError:(a,{data:{error:l}})=>l.status===401},services:{signInPassword:(a,{email:l,password:f})=>le(l)?xt(f)?h("/signin/email-password",{email:l,password:f}):Promise.reject({error:kt}):Promise.reject({error:ue}),signInPAT:(a,{pat:l})=>h("/signin/pat",{personalAccessToken:l}),signInIdToken:(a,{provider:l,idToken:f,nonce:y})=>h("/signin/idtoken",{provider:l,idToken:f,...y&&{nonce:y}}),passwordlessSms:(a,{phoneNumber:l,options:f})=>{var y;return lr(l)?(y=a.user)!=null&&y.isAnonymous?(console.warn("Deanonymisation from a phone number is not yet implemented in hasura-auth"),h("/user/deanonymize",{signInMethod:"passwordless",connection:"sms",phoneNumber:l,options:ne(e,f)},a.accessToken.value)):h("/signin/passwordless/sms",{phoneNumber:l,options:ne(e,f)}):Promise.reject({error:sr})},passwordlessSmsOtp:(a,{phoneNumber:l,otp:f})=>lr(l)?h("/signin/passwordless/sms/otp",{phoneNumber:l,otp:f}):Promise.reject({error:sr}),signInEmailOTP:(a,{email:l,options:f})=>le(l)?h("/signin/otp/email",{email:l,options:ne(e,f)}):Promise.reject({error:ue}),verifyEmailOTP:(a,{email:l,otp:f})=>le(l)?h("/signin/otp/email/verify",{email:l,otp:f}):Promise.reject({error:ue}),passwordlessEmail:(a,{email:l,options:f})=>{var y;return le(l)?(y=a.user)!=null&&y.isAnonymous?h("/user/deanonymize",{signInMethod:"passwordless",connection:"email",email:l,options:ne(e,f)},a.accessToken.value):h("/signin/passwordless/email",{email:l,options:ne(e,f)}):Promise.reject({error:ue})},signInAnonymous:a=>h("/signin/anonymous"),signInMfaTotp:(a,l)=>{var f;const y=l.ticket||((f=a.mfa)==null?void 0:f.ticket);return y?Sn(y)?h("/signin/mfa/totp",{ticket:y,otp:l.otp}):Promise.reject({error:rn}):Promise.reject({error:nn})},signInSecurityKeyEmail:async(a,{email:l})=>{if(!le(l))throw new be(ue);const f=await h("/signin/webauthn",{email:l});let y;try{y=await cr(f)}catch(T){throw new be(T)}return h("/signin/webauthn/verify",{email:l,credential:y})},refreshToken:async(a,l)=>{const f=l.type==="TRY_TOKEN"?l.token:a.refreshToken.value;return{session:await h("/token",{refreshToken:f}),error:null}},signInSecurityKey:async()=>{try{const a=await h("/signin/webauthn",{});let l;try{l=await cr(a)}catch(f){throw new be(f)}return h("/signin/webauthn/verify",{credential:l})}catch(a){throw new be(a)}},signout:async(a,l)=>{const f=await h("/signout",{refreshToken:a.refreshToken.value,all:!!l.all},l.all?a.accessToken.value:void 0);if(r&&v)try{v.postMessage({type:"signout"})}catch{}return f},signUpEmailPassword:async(a,{email:l,password:f,options:y,requestOptions:T})=>{var m;return le(l)?xt(f)?(m=a.user)!=null&&m.isAnonymous?h("/user/deanonymize",{signInMethod:"email-password",email:l,password:f,options:ne(e,y)},a.accessToken.value,T==null?void 0:T.headers):h("/signup/email-password",{email:l,password:f,options:ne(e,y)},null,T==null?void 0:T.headers):Promise.reject({error:kt}):Promise.reject({error:ue})},signUpSecurityKey:async(a,{email:l,options:f,requestOptions:y})=>{if(!le(l))return Promise.reject({error:ue});const T=f==null?void 0:f.nickname;T&&delete f.nickname;const m=await h("/signup/webauthn",{email:l,options:f},null,y==null?void 0:y.headers);let S;try{S=await yn(m)}catch(b){throw new be(b)}return h("/signup/webauthn/verify",{credential:S,options:{redirectTo:f==null?void 0:f.redirectTo,nickname:T,displayName:f==null?void 0:f.displayName,...(f==null?void 0:f.metadata)&&{metadata:f==null?void 0:f.metadata}}})},importRefreshToken:async a=>{if(a.user&&a.refreshToken.value&&a.accessToken.value&&a.accessToken.expiresAt)return{session:{accessToken:a.accessToken.value,accessTokenExpiresIn:a.accessToken.expiresAt.getTime()-Date.now(),refreshToken:a.refreshToken.value,user:a.user},error:null};let l=null;if(u){const y=tt("refreshToken")||null;if(y)try{return{session:await h("/token",{refreshToken:y}),error:null}}catch(T){l=T.error}else{const T=tt("error"),m=tt("errorDescription");if(T&&m!=="social user already exists")return Promise.reject({session:null,error:{status:ce,error:T,message:m||T}})}}const f=await c(Me);if(f)try{return{session:await h("/token",{refreshToken:f}),error:null}}catch(y){l=y.error}return l?Promise.reject({error:l,session:null}):{error:null,session:null}}},delays:{RETRY_IMPORT_TOKEN_DELAY:({importTokenAttempts:a})=>Math.pow(2,a-1)*5e3}})},kn=({backendUrl:t,clientUrl:e,interpreter:r})=>Ee({schema:{context:{},events:{},services:{}},tsTypes:{},predictableActionArguments:!0,id:"changeEmail",initial:"idle",context:{error:null},states:{idle:{on:{REQUEST:[{cond:"invalidEmail",actions:"saveInvalidEmailError",target:".error"},{target:"requesting"}]},initial:"initial",states:{initial:{},success:{},error:{}}},requesting:{invoke:{src:"requestChange",id:"requestChange",onDone:{target:"idle.success",actions:"reportSuccess"},onError:{actions:["saveRequestError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidEmailError:I({error:n=>ue}),saveRequestError:I({error:(n,{data:{error:i}})=>i}),reportError:X(n=>({type:"ERROR",error:n.error})),reportSuccess:X("SUCCESS")},guards:{invalidEmail:(n,{email:i})=>!le(i)},services:{requestChange:async(n,{email:i,options:s})=>(await re(`${t}/user/email/change`,{newEmail:i,options:ne(e,s)},r==null?void 0:r.getSnapshot().context.accessToken.value)).data}}),An=({backendUrl:t,interpreter:e})=>Ee({schema:{context:{},events:{},services:{}},tsTypes:{},predictableActionArguments:!0,id:"changePassword",initial:"idle",context:{error:null},states:{idle:{on:{REQUEST:[{cond:"invalidPassword",actions:"saveInvalidPasswordError",target:".error"},{target:"requesting"}]},initial:"initial",states:{initial:{},success:{},error:{}}},requesting:{invoke:{src:"requestChange",id:"requestChange",onDone:{target:"idle.success",actions:"reportSuccess"},onError:{actions:["saveRequestError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidPasswordError:I({error:r=>kt}),saveRequestError:I({error:(r,{data:{error:n}})=>n}),reportError:X(r=>({type:"ERROR",error:r.error})),reportSuccess:X("SUCCESS")},guards:{invalidPassword:(r,{password:n})=>!xt(n)},services:{requestChange:(r,{password:n,ticket:i})=>re(`${t}/user/password`,{newPassword:n,ticket:i},e==null?void 0:e.getSnapshot().context.accessToken.value)}}),bs=({backendUrl:t,interpreter:e})=>Ee({schema:{context:{},events:{}},tsTypes:{},predictableActionArguments:!0,id:"enableMfa",initial:"idle",context:{error:null,imageUrl:null,secret:null},states:{idle:{initial:"initial",on:{GENERATE:"generating",DISABLE:"disabling"},states:{initial:{},error:{},disabled:{}}},generating:{invoke:{src:"generate",id:"generate",onDone:{target:"generated",actions:["reportGeneratedSuccess","saveGeneration"]},onError:{actions:["saveError","reportGeneratedError"],target:"idle.error"}}},generated:{initial:"idle",states:{idle:{initial:"idle",on:{ACTIVATE:[{cond:"invalidMfaType",actions:"saveInvalidMfaTypeError",target:".error"},{cond:"invalidMfaCode",actions:"saveInvalidMfaCodeError",target:".error"},{target:"activating"}],DISABLE:"#enableMfa.disabling"},states:{idle:{},error:{}}},activating:{invoke:{src:"activate",id:"activate",onDone:{target:"activated",actions:"reportSuccess"},onError:{actions:["saveError","reportError"],target:"idle.error"}}},activated:{type:"final"}}},disabling:{invoke:{src:"disable",id:"disable",onDone:{target:"idle.disabled",actions:"reportSuccess"},onError:{actions:["saveError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidMfaTypeError:I({error:r=>en}),saveInvalidMfaCodeError:I({error:r=>tn}),saveError:I({error:(r,{data:{error:n}})=>n}),saveGeneration:I({imageUrl:(r,{data:{imageUrl:n}})=>n,secret:(r,{data:{totpSecret:n}})=>n}),reportError:X((r,n)=>({type:"ERROR",error:r.error})),reportSuccess:X("SUCCESS"),reportGeneratedSuccess:X("GENERATED"),reportGeneratedError:X(r=>({type:"GENERATED_ERROR",error:r.error}))},guards:{invalidMfaCode:(r,{code:n})=>!n,invalidMfaType:(r,{activeMfaType:n})=>!n||n!=="totp"},services:{generate:async r=>{const{data:n}=await Tn(`${t}/mfa/totp/generate`,e==null?void 0:e.getSnapshot().context.accessToken.value);return n},activate:(r,{code:n,activeMfaType:i})=>re(`${t}/user/mfa`,{code:n,activeMfaType:i},e==null?void 0:e.getSnapshot().context.accessToken.value),disable:(r,{code:n})=>re(`${t}/user/mfa`,{code:n,activeMfaType:""},e==null?void 0:e.getSnapshot().context.accessToken.value)}}),On=({backendUrl:t,clientUrl:e})=>Ee({schema:{context:{},events:{},services:{}},tsTypes:{},predictableActionArguments:!0,id:"changePassword",initial:"idle",context:{error:null},states:{idle:{on:{REQUEST:[{cond:"invalidEmail",actions:"saveInvalidEmailError",target:".error"},{target:"requesting"}]},initial:"initial",states:{initial:{},success:{},error:{}}},requesting:{invoke:{src:"requestChange",id:"requestChange",onDone:{target:"idle.success",actions:"reportSuccess"},onError:{actions:["saveRequestError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidEmailError:I({error:r=>ue}),saveRequestError:I({error:(r,{data:{error:n}})=>n}),reportError:X(r=>({type:"ERROR",error:r.error})),reportSuccess:X("SUCCESS")},guards:{invalidEmail:(r,{email:n})=>!le(n)},services:{requestChange:(r,{email:n,options:i})=>re(`${t}/user/password/reset`,{email:n,options:ne(e,i)})}}),In=({backendUrl:t,clientUrl:e})=>Ee({schema:{context:{},events:{},services:{}},tsTypes:{},predictableActionArguments:!0,id:"sendVerificationEmail",initial:"idle",context:{error:null},states:{idle:{on:{REQUEST:[{cond:"invalidEmail",actions:"saveInvalidEmailError",target:".error"},{target:"requesting"}]},initial:"initial",states:{initial:{},success:{},error:{}}},requesting:{invoke:{src:"request",id:"request",onDone:{target:"idle.success",actions:"reportSuccess"},onError:{actions:["saveRequestError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidEmailError:I({error:r=>ue}),saveRequestError:I({error:(r,{data:{error:n}})=>n}),reportError:X(r=>({type:"ERROR",error:r.error})),reportSuccess:X("SUCCESS")},guards:{invalidEmail:(r,{email:n})=>!le(n)},services:{request:async(r,{email:n,options:i})=>(await re(`${t}/user/email/send-verification-email`,{email:n,options:ne(e,i)})).data}});class dr{constructor({clientStorageType:e="web",autoSignIn:r=!0,autoRefreshToken:n=!0,start:i=!0,backendUrl:s,clientUrl:o,broadcastKey:u,devTools:c,...d}){ae(this,"backendUrl"),ae(this,"clientUrl"),ae(this,"_machine"),ae(this,"_interpreter"),ae(this,"_started",!1),ae(this,"_channel"),ae(this,"_subscriptionsQueue",new Set),ae(this,"_subscriptions",new Set);var h;if(this.backendUrl=s,this.clientUrl=o,this._machine=bn({...d,backendUrl:s,clientUrl:o,broadcastKey:u,clientStorageType:e,autoSignIn:r,autoRefreshToken:n}),i&&this.start({devTools:c}),typeof window!="undefined"&&u)try{this._channel=new BroadcastChannel(u),r&&((h=this._channel)==null||h.addEventListener("message",v=>{var a;const{type:l,payload:f}=v.data;if(l==="broadcast_session"){const y=(a=this.interpreter)==null?void 0:a.getSnapshot().context,T=y==null?void 0:y.refreshToken.value;this.interpreter&&f.token&&f.token!==T&&this.interpreter.send("SESSION_UPDATE",{data:{session:{user:f.user,accessToken:f.accessToken,refreshToken:f.token,accessTokenExpiresIn:f.expiresInSeconds}}})}})),this._channel.addEventListener("message",v=>{const{type:a}=v.data;a==="signout"&&this.interpreter&&this.interpreter.send("SIGNOUT")})}catch{}}start({devTools:e=!1,initialSession:r,interpreter:n}={}){var i,s;const o={...this.machine.context,accessToken:{...this.machine.context.accessToken},refreshToken:{...this.machine.context.refreshToken}};r&&(o.user=r.user,o.refreshToken.value=(i=r.refreshToken)!=null?i:null,o.accessToken.value=(s=r.accessToken)!=null?s:null,o.accessToken.expiresAt=new Date(Date.now()+r.accessTokenExpiresIn*1e3));const u=this.machine.withContext(o);this._interpreter||(this._interpreter=n||Ne(u,{devTools:e})),(!this._started||typeof window=="undefined")&&(this._interpreter.initialized&&(this._interpreter.stop(),this._subscriptions.forEach(c=>c())),this._interpreter.start(u.initialState),this._subscriptionsQueue.forEach(c=>c(this))),this._started=!0}get machine(){return this._machine}get interpreter(){return this._interpreter}get started(){return this._started}subscribe(e){if(this.started){const r=e(this);return this._subscriptions.add(r),r}else return this._subscriptionsQueue.add(e),()=>{console.log("onTokenChanged was added before the interpreter started. Cannot unsubscribe listener.")}}}class Rn extends dr{constructor({...e}){super({...e,autoSignIn:et()&&e.autoSignIn,autoRefreshToken:et()&&e.autoRefreshToken,clientStorageType:"cookie"})}}const ks=Rn,xn=async({backendUrl:t,interpreter:e},r)=>{try{const{data:n}=await re(`${t}/user/webauthn/add`,{},e==null?void 0:e.getSnapshot().context.accessToken.value);let i;try{i=await yn(n)}catch(o){throw new be(o)}const{data:s}=await re(`${t}/user/webauthn/verify`,{credential:i,nickname:r},e==null?void 0:e.getSnapshot().context.accessToken.value);return{key:s,isError:!1,error:null,isSuccess:!0}}catch(n){const{error:i}=n;return{isError:!0,error:i,isSuccess:!1}}},_n=async(t,e,r)=>new Promise(n=>{t.send("REQUEST",{email:e,options:r}),t.onTransition(i=>{i.matches({idle:"error"})?n({error:i.context.error,isError:!0,needsEmailVerification:!1}):i.matches({idle:"success"})&&n({error:null,isError:!1,needsEmailVerification:!0})})}),Pn=async(t,e,r)=>new Promise(n=>{t.send("REQUEST",{password:e,ticket:r}),t.onTransition(i=>{i.matches({idle:"error"})?n({error:i.context.error,isError:!0,isSuccess:!1}):i.matches({idle:"success"})&&n({error:null,isError:!1,isSuccess:!0})})}),As=t=>new Promise(e=>{t.send("GENERATE"),t.onTransition(r=>{r.matches("generated")?e({error:null,isError:!1,isGenerated:!0,qrCodeDataUrl:r.context.imageUrl||"",totpSecret:r.context.secret}):r.matches({idle:"error"})&&e({error:r.context.error||null,isError:!0,isGenerated:!1,qrCodeDataUrl:"",totpSecret:r.context.secret})})}),Os=(t,e)=>new Promise(r=>{t.send("ACTIVATE",{activeMfaType:"totp",code:e}),t.onTransition(n=>{n.matches({generated:"activated"})?r({error:null,isActivated:!0,isError:!1}):n.matches({generated:{idle:"error"}})&&r({error:n.context.error,isActivated:!1,isError:!0})})}),Is=(t,e)=>new Promise(r=>{t.send("DISABLE",{code:e}),t.onTransition(n=>{n.matches({idle:"disabled"})?r({error:null,isDisabled:!0,isError:!1}):n.matches({idle:"error"})&&r({error:n.context.error,isDisabled:!1,isError:!0})})}),Nn=async(t,e,r)=>new Promise(n=>{t.send("REQUEST",{email:e,options:r}),t.onTransition(i=>{i.matches({idle:"error"})?n({error:i.context.error,isError:!0,isSent:!1}):i.matches({idle:"success"})&&n({error:null,isError:!1,isSent:!0})})}),Un=(t,e,r)=>new Promise(n=>{t.send("REQUEST",{email:e,options:r}),t.onTransition(i=>{i.matches({idle:"error"})?n({error:i.context.error,isError:!0,isSent:!1}):i.matches({idle:"success"})&&n({error:null,isError:!1,isSent:!0})})}),Dn=t=>new Promise(e=>{const{changed:r}=t.send("SIGNIN_ANONYMOUS");r||e({isSuccess:!1,isError:!0,error:ee,user:null,accessToken:null,refreshToken:null}),t.onTransition(n=>{n.matches({authentication:"signedIn"})&&e({isSuccess:!0,isError:!1,error:null,user:n.context.user,accessToken:n.context.accessToken.value,refreshToken:n.context.refreshToken.value}),n.matches({authentication:{signedOut:"failed"}})&&e({isSuccess:!1,isError:!0,error:n.context.errors.authentication||null,user:null,accessToken:null,refreshToken:null})})}),Cn=(t,e,r)=>new Promise(n=>{const{changed:i,context:s}=t.send("SIGNIN_PASSWORD",{email:e,password:r});if(!i)return n({accessToken:s.accessToken.value,refreshToken:s.refreshToken.value,error:ee,isError:!0,isSuccess:!1,needsEmailVerification:!1,needsMfaOtp:!1,mfa:null,user:s.user});t.onTransition(o=>{o.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?n({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,needsMfaOtp:!1,mfa:null,user:null}):o.matches({authentication:{signedOut:"needsMfa"}})?n({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!1,needsMfaOtp:!0,mfa:o.context.mfa,user:null}):o.matches({authentication:{signedOut:"failed"}})?n({accessToken:null,refreshToken:null,error:o.context.errors.authentication||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,needsMfaOtp:!1,mfa:null,user:null}):o.matches({authentication:"signedIn"})&&n({accessToken:o.context.accessToken.value,refreshToken:o.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,needsMfaOtp:!1,mfa:null,user:o.context.user})})}),hr=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send("PASSWORDLESS_EMAIL",{email:e,options:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1});t.onTransition(s=>{s.matches("registration.incomplete.failed")?n({error:s.context.errors.registration||null,isError:!0,isSuccess:!1}):s.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})&&n({error:null,isError:!1,isSuccess:!0})})}),Mn=(t,e)=>new Promise(r=>{const{changed:n,context:i}=t.send({type:"SIGNIN_SECURITY_KEY_EMAIL",email:e});if(!n)return r({accessToken:i.accessToken.value,refreshToken:i.refreshToken.value,error:ee,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:i.user});t.onTransition(s=>{s.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?r({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,user:null}):s.matches({authentication:{signedOut:"failed"}})?r({accessToken:null,refreshToken:null,error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:null}):s.matches({authentication:"signedIn"})&&r({accessToken:s.context.accessToken.value,refreshToken:s.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,user:s.context.user})})});function Ln(t){return{error:t.message||"Something went wrong!",status:t.status||1,message:t.message||"Something went wrong!"}}const jn=async(t,e)=>{var r,n;const i=(r=t.interpreter)==null?void 0:r.getSnapshot(),s=i==null?void 0:i.context.accessToken.value;let o;try{o=(await re(`${t.backendUrl}/elevate/webauthn`,{email:e},s)).data}catch(c){return{error:Ln(c),isError:!0,isSuccess:!1,elevated:!1}}let u;try{u=await cr(o)}catch(c){return{error:Ln(c),isError:!0,isSuccess:!1,elevated:!1}}try{const{data:{session:c},error:d}=await re(`${t.backendUrl}/elevate/webauthn/verify`,{email:e,credential:u},s);return c&&!d?((n=t.interpreter)==null||n.send({type:"SESSION_UPDATE",data:{session:c}}),{error:null,isError:!1,isSuccess:!0,elevated:!0}):{error:d,isError:!0,isSuccess:!1,elevated:!1}}catch(c){const{error:d}=c;return{error:d,isError:!0,isSuccess:!1,elevated:!1}}},$n=(t,e,r)=>new Promise(n=>{const{changed:i,context:s}=t.send("SIGNIN_MFA_TOTP",{otp:e,ticket:r});if(!i)return n({accessToken:s.accessToken.value,refreshToken:s.refreshToken.value,error:ee,isError:!0,isSuccess:!1,user:s.user});t.onTransition(o=>{o.matches({authentication:{signedOut:"failed"}})?n({accessToken:null,refreshToken:null,error:o.context.errors.authentication||null,isError:!0,isSuccess:!1,user:null}):o.matches({authentication:"signedIn"})&&n({accessToken:o.context.accessToken.value,refreshToken:o.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,user:o.context.user})})}),Fn=(t,e)=>new Promise(r=>{const{changed:n}=t.send("SIGNIN_PAT",{pat:e});n||r({isSuccess:!1,isError:!0,error:ee,user:null,accessToken:null,refreshToken:null}),t.onTransition(i=>{if(i.matches({authentication:{signedOut:"failed"}}))return r({accessToken:null,refreshToken:null,user:null,error:i.context.errors.authentication||null,isError:!0,isSuccess:!1});if(i.matches({authentication:"signedIn"}))return r({accessToken:i.context.accessToken.value,refreshToken:i.context.refreshToken.value,user:i.context.user,error:null,isError:!1,isSuccess:!0})})}),fr=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send("PASSWORDLESS_SMS",{phoneNumber:e,options:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1,needsOtp:!1});t.onTransition(s=>{s.matches("registration.incomplete.needsOtp")?n({error:null,isError:!1,isSuccess:!1,needsOtp:!0}):s.matches("registration.incomplete.failed")&&n({error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,needsOtp:!1})})}),Hn=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send({type:"PASSWORDLESS_SMS_OTP",phoneNumber:e,otp:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1,user:null,accessToken:null,refreshToken:null});t.onTransition(s=>{s.matches({authentication:"signedIn"})?n({error:null,isError:!1,isSuccess:!0,user:s.context.user,accessToken:s.context.accessToken.value,refreshToken:s.context.refreshToken.value}):s.matches({registration:{incomplete:"failed"}})&&n({error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,user:null,accessToken:null,refreshToken:null})})}),qn=async(t,e)=>new Promise(r=>{const{event:n}=t.send("SIGNOUT",{all:e});if(n.type!=="SIGNED_OUT")return r({isSuccess:!1,isError:!0,error:an});t.onTransition(i=>{i.matches({authentication:{signedOut:"success"}})?r({isSuccess:!0,isError:!1,error:null}):i.matches("authentication.signedOut.failed")&&r({isSuccess:!1,isError:!0,error:i.context.errors.signout||null})})}),pr=(t,e,r,n,i)=>new Promise(s=>{const{changed:o,context:u}=t.send("SIGNUP_EMAIL_PASSWORD",{email:e,password:r,options:n,requestOptions:i});if(!o)return s({error:ee,accessToken:u.accessToken.value,refreshToken:u.refreshToken.value,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:u.user});t.onTransition(c=>{c.matches("registration.incomplete.failed")?s({accessToken:null,refreshToken:null,error:c.context.errors.registration||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:null}):c.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?s({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,user:null}):c.matches({authentication:"signedIn",registration:"complete"})&&s({accessToken:c.context.accessToken.value,refreshToken:c.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,user:c.context.user})})}),Kn=(t,e,r,n)=>new Promise(i=>{const{changed:s,context:o}=t.send("SIGNUP_SECURITY_KEY",{email:e,options:r,requestOptions:n});if(!s)return i({error:ee,accessToken:o.accessToken.value,refreshToken:o.refreshToken.value,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:o.user});t.onTransition(u=>{u.matches("registration.incomplete.failed")?i({accessToken:null,refreshToken:null,error:u.context.errors.registration||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:null}):u.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?i({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,user:null}):u.matches({authentication:"signedIn",registration:"complete"})&&i({accessToken:u.context.accessToken.value,refreshToken:u.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,user:u.context.user})})}),Vn=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send("SIGNIN_EMAIL_OTP",{email:e,options:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1,needsOtp:!1});t.onTransition(s=>{s.matches("registration.incomplete.needsOtp")?n({error:null,isError:!1,isSuccess:!0,needsOtp:!0}):s.matches("registration.incomplete.failed")&&n({error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,needsOtp:!1})})}),Gn=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send({type:"VERIFY_EMAIL_OTP",email:e,otp:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1,user:null,accessToken:null,refreshToken:null});t.onTransition(s=>{s.matches({authentication:"signedIn"})?n({error:null,isError:!1,isSuccess:!0,user:s.context.user,accessToken:s.context.accessToken.value,refreshToken:s.context.refreshToken.value}):s.matches({registration:{incomplete:"failed"}})&&n({error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,user:null,accessToken:null,refreshToken:null})})}),Bn=(t,{provider:e,idToken:r,nonce:n})=>new Promise(i=>{const{changed:s}=t.send("SIGNIN_ID_TOKEN",{provider:e,idToken:r,...n&&{nonce:n}});s||i({isSuccess:!1,isError:!0,error:ee,user:null,accessToken:null,refreshToken:null}),t.onTransition(o=>{if(o.matches({authentication:{signedOut:"failed"}}))return i({accessToken:null,refreshToken:null,user:null,error:o.context.errors.authentication||null,isError:!0,isSuccess:!1});if(o.matches({authentication:"signedIn"}))return i({accessToken:o.context.accessToken.value,refreshToken:o.context.refreshToken.value,user:o.context.user,error:null,isError:!1,isSuccess:!0})})}),zn=async({backendUrl:t,interpreter:e},{provider:r,idToken:n,nonce:i})=>{try{return await re(`${t}/link/idtoken`,{provider:r,idToken:n,...i&&{nonce:i}},e==null?void 0:e.getSnapshot().context.accessToken.value),{isError:!1,error:null,isSuccess:!0}}catch(s){const{error:o}=s;return{isError:!0,error:o,isSuccess:!1}}},Yn=t=>new Promise(e=>{const{changed:r,context:n}=t.send({type:"SIGNIN_SECURITY_KEY"});if(!r)return e({accessToken:n.accessToken.value,refreshToken:n.refreshToken.value,error:ee,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:n.user});t.onTransition(i=>{i.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?e({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,user:null}):i.matches({authentication:{signedOut:"failed"}})?e({accessToken:null,refreshToken:null,error:i.context.errors.authentication||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:null}):i.matches({authentication:"signedIn"})&&e({accessToken:i.context.accessToken.value,refreshToken:i.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,user:i.context.user})})}),Rs=async({backendUrl:t,interpreter:e},{expiresAt:r,metadata:n})=>{try{const{data:i}=await re(`${t}/pat`,{expiresAt:r.toISOString(),metadata:n},e==null?void 0:e.getSnapshot().context.accessToken.value);return{data:i?{id:i.id||null,personalAccessToken:i.personalAccessToken||null}:null,isError:!1,error:null,isSuccess:!0}}catch(i){const{error:s}=i;return{isError:!0,error:s,isSuccess:!1,data:null}}};class Wn{constructor({url:e,broadcastKey:r,autoRefreshToken:n=!0,autoSignIn:i=!0,clientStorage:s,clientStorageType:o,refreshIntervalTime:u,start:c=!0}){ae(this,"_client"),ae(this,"url");var d;this.url=e,this._client=new dr({backendUrl:e,clientUrl:typeof window!="undefined"&&((d=window.location)==null?void 0:d.origin)||"",broadcastKey:r,autoRefreshToken:n,autoSignIn:i,start:c,clientStorage:s,clientStorageType:o,refreshIntervalTime:u})}async signUp(e,r){const n=await this.waitUntilReady();if("securityKey"in e){const{email:u,options:c}=e;return se(await Kn(n,u,c,r))}const{email:i,password:s,options:o}=e;return se(await pr(n,i,s,o,r))}async connectProvider(e){const r=(await this.waitUntilReady()).getSnapshot().context.accessToken.value,{provider:n,options:i}=e,s=Rt(`${this._client.backendUrl}/signin/provider/${n}`,ne(this._client.clientUrl,{...i,connect:r}));return et()&&(window.location.href=s),{providerUrl:s}}async signInIdToken(e){const r=await this.waitUntilReady(),n=await Bn(r,e);return{...se(n),mfa:null}}async linkIdToken(e){return zn(this._client,e)}async signIn(e){const r=await this.waitUntilReady();if(!e){const n=await Dn(r);return{...se(n),mfa:null}}if("provider"in e){const{provider:n,options:i}=e,s=Rt(`${this._client.backendUrl}/signin/provider/${n}`,ne(this._client.clientUrl,i));return et()&&(window.location.href=s),{providerUrl:s,provider:n,session:null,mfa:null,error:null}}if("email"in e&&"password"in e){const n=await Cn(r,e.email,e.password);return n.needsEmailVerification?{session:null,mfa:null,error:cn}:n.needsMfaOtp?{session:null,mfa:n.mfa,error:null}:{...se(n),mfa:null}}if("email"in e&&"securityKey"in e){if(e.securityKey!==!0)throw Error("securityKey must be true");const n=await Mn(r,e.email);return{...se(n),mfa:null}}if("email"in e){const{email:n,options:i}=e,{error:s}=await hr(r,n,i);return{session:null,mfa:null,error:s}}if("phoneNumber"in e&&"otp"in e){const n=await Hn(r,e.phoneNumber,e.otp);return{...se(n),mfa:null}}if("phoneNumber"in e){const{error:n}=await fr(r,e.phoneNumber,e.options);return{error:n,mfa:null,session:null}}if("otp"in e){const n=await $n(r,e.otp,e.ticket);return{...se(n),mfa:null}}return{error:ln,mfa:null,session:null}}async signInPAT(e){const r=await this.waitUntilReady(),n=await Fn(r,e);return se(n)}async signInEmailOTP(e,r){const n=await this.waitUntilReady(),{error:i}=await Vn(n,e,r);return{error:i,session:null,mfa:null}}async verifyEmailOTP(e,r){const n=await this.waitUntilReady(),i=await Gn(n,e,r);return{...se(i),mfa:null}}async signInSecurityKey(){const e=await this.waitUntilReady(),r=await Yn(e);return{...se(r),mfa:null}}async signOut(e){const r=await this.waitUntilReady(),{error:n}=await qn(r,e==null?void 0:e.all);return{error:n}}async resetPassword({email:e,options:r}){const n=Ne(On(this._client)).start(),{error:i}=await Nn(n,e,r);return{error:i}}async changePassword({newPassword:e,ticket:r}){const n=Ne(An(this._client)).start(),{error:i}=await Pn(n,e,r);return{error:i}}async sendVerificationEmail({email:e,options:r}){const n=Ne(In(this._client)).start(),{error:i}=await Un(n,e,r);return{error:i}}async changeEmail({newEmail:e,options:r}){const n=Ne(kn(this._client)).start(),{error:i}=await _n(n,e,r);return{error:i}}async deanonymize(e){const r=await this.waitUntilReady();if(e.signInMethod==="passwordless"){if(e.connection==="email"){const{error:n}=await hr(r,e.email,e.options);return{error:n}}if(e.connection==="sms"){const{error:n}=await fr(r,e.phoneNumber,e.options);return{error:n}}}if(e.signInMethod==="email-password"){const{error:n}=await pr(r,e.email,e.password,e.options);return{error:n}}throw Error("Unknown deanonymization method")}async addSecurityKey(e){const{error:r,key:n}=await xn(this._client,e);return{error:r,key:n}}async elevateEmailSecurityKey(e){if(!e)throw Error("A user email is required");return{...await jn(this._client,e),mfa:null}}async createPAT(e,r){return Rs(this._client,{expiresAt:e,metadata:r})}onTokenChanged(e){return this._client.subscribe(()=>{var r;const n=(r=this._client.interpreter)==null?void 0:r.onTransition(({event:i,context:s})=>{i.type==="TOKEN_CHANGED"&&e(Ze(s))});return()=>n==null?void 0:n.stop()})}onAuthStateChanged(e){return this._client.subscribe(()=>{var r;const n=(r=this._client.interpreter)==null?void 0:r.onTransition(({event:i,context:s})=>{(i.type==="SIGNED_IN"||i.type==="SIGNED_OUT")&&e(i.type,Ze(s))});return()=>n==null?void 0:n.stop()})}isAuthenticated(){var e;return!!((e=this._client.interpreter)!=null&&e.getSnapshot().matches({authentication:"signedIn"}))}async isAuthenticatedAsync(){return(await this.waitUntilReady()).getSnapshot().matches({authentication:"signedIn"})}getAuthenticationStatus(){var e;const r=((e=this.client.interpreter)==null?void 0:e.getSnapshot().context.importTokenAttempts)||0;return this.isReady()?{isAuthenticated:this.isAuthenticated(),isLoading:!1,connectionAttempts:r}:{isAuthenticated:!1,isLoading:!0,connectionAttempts:r}}getAccessToken(){var e,r;return(r=(e=this._client.interpreter)==null?void 0:e.getSnapshot().context.accessToken.value)!=null?r:void 0}getDecodedAccessToken(){const e=this.getAccessToken();return e?Er(e):null}getHasuraClaims(){var e;return((e=this.getDecodedAccessToken())==null?void 0:e["https://hasura.io/jwt/claims"])||null}getHasuraClaim(e){var r;return((r=this.getHasuraClaims())==null?void 0:r[e.startsWith("x-hasura-")?e:`x-hasura-${e}`])||null}async refreshSession(e){try{const r=await this.waitUntilReady();return new Promise(n=>{const i=e||r.getSnapshot().context.refreshToken.value;if(!i)return n({session:null,error:sn});const{changed:s}=r.send("TRY_TOKEN",{token:i});if(!s)return n({session:null,error:on});r.onTransition(o=>{o.matches({token:{idle:"error"}})?n({session:null,error:un}):o.event.type==="TOKEN_CHANGED"&&n({session:Ze(o.context),error:null})})})}catch(r){return{session:null,error:r.message}}}getSession(){var e,r;return Ze((r=(e=this._client.interpreter)==null?void 0:e.getSnapshot())==null?void 0:r.context)}async initWithSession({session:e}){this.client.start({initialSession:e}),await this.waitUntilReady()}getUser(){var e,r,n;return((n=(r=(e=this._client.interpreter)==null?void 0:e.getSnapshot())==null?void 0:r.context)==null?void 0:n.user)||null}waitUntilReady(){const e=this._client.interpreter;if(!e)throw Error("Auth interpreter not set");return e.getSnapshot().hasTag("loading")?new Promise((r,n)=>{let i=setTimeout(()=>n("The state machine is not yet ready after 15 seconds."),15e3);e.onTransition(s=>{if(!s.hasTag("loading"))return clearTimeout(i),r(e)})}):Promise.resolve(e)}isReady(){var e,r;return!((r=(e=this._client.interpreter)==null?void 0:e.getSnapshot())!=null&&r.hasTag("loading"))}get client(){return this._client}}var xs=typeof self=="object"?self.FormData:window.FormData;const vr=Qt(xs);var _s=Object.defineProperty,Ps=(t,e,r)=>e in t?_s(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,je=(t,e,r)=>Ps(t,typeof e!="symbol"?e+"":e,r);let Jn=globalThis.fetch;const yr=async(t,e,{accessToken:r,name:n,fileId:i,bucketId:s,adminSecret:o,onUploadProgress:u,headers:c={}}={})=>{var d;const h={...c};s&&e.append("bucket-id",s),o&&(h["x-hasura-admin-secret"]=o),r&&(h.Authorization=`Bearer ${r}`);const v=`${t}/files`;if(typeof XMLHttpRequest=="undefined")try{e instanceof vr&&(Jn=er().fetch);const a=await Jn(v,{method:"POST",headers:h,body:e}),l=await a.json();return a.ok?{fileMetadata:l,error:null}:{error:{status:a.status,message:((d=l==null?void 0:l.error)==null?void 0:d.message)||a.statusText,error:a.statusText},fileMetadata:null}}catch(a){return{error:{status:0,message:a.message,error:a.message},fileMetadata:null}}return new Promise(a=>{let l=new XMLHttpRequest;l.responseType="json",l.onload=()=>{var f,y,T,m,S,b,O,M;if(l.status<200||l.status>=300){const D={error:(S=(m=(y=(f=l.response)==null?void 0:f.error)==null?void 0:y.message)!=null?m:(T=l.response)==null?void 0:T.error)!=null?S:l.response,message:(M=(O=(b=l.response)==null?void 0:b.error)==null?void 0:O.message)!=null?M:l.response,status:l.status};return a({fileMetadata:null,error:D})}return a({fileMetadata:l.response,error:null})},l.onerror=()=>{const f={error:l.statusText,message:l.statusText,status:l.status};return a({fileMetadata:null,error:f})},u&&l.upload.addEventListener("progress",u,!1),l.open("POST",v,!0),Object.entries(h).forEach(([f,y])=>{l.setRequestHeader(f,y)}),l.send(e)})};function _t(t,e){if(!e||Object.keys(e).length===0)return t;const r=new URL(t),n=Object.entries(e).reduce((i,[s,o])=>({...i,[s.charAt(0)]:o}),{});return Object.entries(n).forEach(([i,s])=>{s&&r.searchParams.set(i,s)}),r.toString()}let rt;typeof rt=="undefined"&&(rt=er().fetch);class Xn{constructor({url:e}){je(this,"url"),je(this,"accessToken"),je(this,"adminSecret"),je(this,"headers",{}),this.url=e}async uploadFormData({formData:e,bucketId:r,headers:n}){const{error:i,fileMetadata:s}=await yr(this.url,e,{bucketId:r,headers:{...this.headers,...n},accessToken:this.accessToken,adminSecret:this.adminSecret});return i?{fileMetadata:null,error:i}:s&&!("processedFiles"in s)?{fileMetadata:{processedFiles:[s]},error:null}:{fileMetadata:s,error:null}}async uploadFile({file:e,bucketId:r,id:n,name:i,headers:s}){const o=typeof window=="undefined"?new vr:new FormData;o.append("file[]",e),o.append("metadata[]",JSON.stringify({id:n,name:i}));const{error:u,fileMetadata:c}=await yr(this.url,o,{accessToken:this.accessToken,adminSecret:this.adminSecret,bucketId:r,fileId:n,name:i,headers:{...this.headers,...s}});return u?{fileMetadata:null,error:u}:c&&"processedFiles"in c?{fileMetadata:c.processedFiles[0],error:null}:{fileMetadata:c,error:null}}async downloadFile(e){try{const{fileId:r,headers:n,...i}=e,s=_t(`${this.url}/files/${r}`,i),o=await rt(s,{method:"GET",headers:{...this.generateAuthHeaders(),...this.headers,...n}});if(!o.ok)throw new Error(await o.text());return{file:await o.blob(),error:null}}catch(r){return{file:null,error:r}}}async getPresignedUrl(e){try{const{fileId:r,headers:n}=e,i=await rt(`${this.url}/files/${r}/presignedurl`,{method:"GET",headers:{...this.generateAuthHeaders(),...this.headers,...n}});if(!i.ok)throw new Error(await i.text());return{presignedUrl:await i.json(),error:null}}catch(r){return{presignedUrl:null,error:r}}}async delete(e){try{const{fileId:r,headers:n}=e,i=await rt(`${this.url}/files/${r}`,{method:"DELETE",headers:{...this.generateAuthHeaders(),...this.headers,...n}});if(!i.ok)throw new Error(await i.text());return{error:null}}catch(r){return{error:r}}}setAccessToken(e){return this.accessToken=e,this}setAdminSecret(e){return this.adminSecret=e,this}getHeaders(){return this.headers}setHeaders(e){return e?(this.headers={...this.headers,...e},this):this}unsetHeaders(){const e=this.headers["x-hasura-role"];return this.headers=e?{"x-hasura-role":e}:{},this}generateAuthHeaders(){if(!(!this.adminSecret&&!this.accessToken))return this.adminSecret?{"x-hasura-admin-secret":this.adminSecret}:{Authorization:`Bearer ${this.accessToken}`}}}class Qn{constructor({url:e,adminSecret:r}){je(this,"url"),je(this,"api"),this.url=e,this.api=new Xn({url:e}),this.setAdminSecret(r)}async upload(e){return"file"in e?this.api.uploadFile(e):this.api.uploadFormData(e)}getPublicUrl(e){const{fileId:r,...n}=e;return _t(`${this.url}/files/${r}`,n)}async getPresignedUrl(e){const{fileId:r,headers:n,...i}=e,{presignedUrl:s,error:o}=await this.api.getPresignedUrl(e);if(o)return{presignedUrl:null,error:o};if(!s)return{presignedUrl:null,error:new Error("Invalid file id")};const u=_t(s.url,i);return{presignedUrl:{...s,url:u},error:null}}async download(e){const{file:r,error:n}=await this.api.downloadFile(e);return n?{file:null,error:n}:r?{file:r,error:null}:{file:null,error:new Error("File does not exist")}}async delete(e){const{error:r}=await this.api.delete(e);return r?{error:r}:{error:null}}setAccessToken(e){return this.api.setAccessToken(e),this}setAdminSecret(e){return this.api.setAdminSecret(e),this}getHeaders(){return this.api.getHeaders()}setHeaders(e){return this.api.setHeaders(e),this}unsetHeaders(){return this.api.unsetHeaders(),this}}let gr;typeof gr=="undefined"&&(gr=vr);const Pt={progress:null,loaded:0,error:null,bucketId:void 0,file:void 0,id:void 0},Zn=()=>Ee({predictableActionArguments:!0,schema:{context:{},events:{}},tsTypes:{},context:{...Pt},initial:"idle",on:{DESTROY:{actions:"sendDestroy",target:"stopped"}},states:{idle:{on:{ADD:{actions:"addFile"},UPLOAD:{cond:"hasFile",target:"uploading"}}},uploading:{entry:"resetProgress",on:{UPLOAD_PROGRESS:{actions:["incrementProgress","sendProgress"]},UPLOAD_DONE:"uploaded",UPLOAD_ERROR:"error",CANCEL:"idle"},invoke:{src:"uploadFile"}},uploaded:{entry:["setFileMetadata","sendDone"],on:{ADD:{actions:"addFile",target:"idle"},UPLOAD:{actions:"resetContext",target:"uploading"}}},error:{entry:["setError","sendError"],on:{ADD:{actions:"addFile",target:"idle"},UPLOAD:{actions:"resetContext",target:"uploading"}}},stopped:{type:"final"}}},{guards:{hasFile:(t,e)=>!!t.file||!!e.file},actions:{incrementProgress:I({loaded:(t,{loaded:e})=>e,progress:(t,{progress:e})=>e}),setFileMetadata:I({id:(t,{id:e})=>e,bucketId:(t,{bucketId:e})=>e,progress:t=>100}),setError:I({error:(t,{error:e})=>e}),sendProgress:()=>{},sendError:()=>{},sendDestroy:()=>{},sendDone:()=>{},resetProgress:I({progress:t=>null,loaded:t=>0}),resetContext:I(t=>Pt),addFile:I({file:(t,{file:e})=>e,bucketId:(t,{bucketId:e})=>e,id:(t,{id:e})=>e})},services:{uploadFile:(t,e)=>r=>{const n=e.file||t.file,i=new gr;i.append("file[]",n);let s=0;return yr(e.url,i,{fileId:e.id||t.id,bucketId:e.bucketId||t.bucketId,accessToken:e.accessToken,adminSecret:e.adminSecret,name:e.name||n.name,onUploadProgress:o=>{const u=o.total?Math.round(o.loaded*n.size/o.total):0,c=u-s;s=u,r({type:"UPLOAD_PROGRESS",progress:o.total?Math.round(u*100/o.total):0,loaded:u,additions:c})}}).then(({fileMetadata:o,error:u})=>{if(u&&r({type:"UPLOAD_ERROR",error:u}),o&&!("processedFiles"in o)){const{id:c,bucketId:d}=o;r({type:"UPLOAD_DONE",id:c,bucketId:d})}if(o&&"processedFiles"in o){const{id:c,bucketId:d}=o.processedFiles[0];r({type:"UPLOAD_DONE",id:c,bucketId:d})}}),()=>{}}}}),{pure:mr,sendParent:Nt}=$i,Ns=()=>Ee({id:"files-list",schema:{context:{},events:{}},tsTypes:{},predictableActionArguments:!0,context:{progress:null,files:[],loaded:0,total:0},initial:"idle",on:{UPLOAD:{cond:"hasFileToDownload",actions:"addItem",target:"uploading"},ADD:{actions:"addItem"},REMOVE:{actions:"removeItem"}},states:{idle:{entry:["resetProgress","resetLoaded","resetTotal"],on:{CLEAR:{actions:"clearList",target:"idle"}}},uploading:{entry:["upload","startProgress","resetLoaded","resetTotal"],on:{UPLOAD_PROGRESS:{actions:["incrementProgress"]},UPLOAD_DONE:[{cond:"isAllUploaded",target:"uploaded"},{cond:"isAllUploadedOrError",target:"error"}],UPLOAD_ERROR:[{cond:"isAllUploaded",target:"uploaded"},{cond:"isAllUploadedOrError",target:"error"}],CANCEL:{actions:"cancel",target:"idle"}}},uploaded:{entry:"setUploaded",on:{CLEAR:{actions:"clearList",target:"idle"}}},error:{on:{CLEAR:{actions:"clearList",target:"idle"}}}}},{guards:{hasFileToDownload:(t,e)=>t.files.some(r=>r.getSnapshot().matches("idle"))||!!e.files,isAllUploaded:t=>t.files.every(e=>{var r;return(r=e.getSnapshot())==null?void 0:r.matches("uploaded")}),isAllUploadedOrError:t=>t.files.every(e=>{const r=e.getSnapshot();return(r==null?void 0:r.matches("error"))||(r==null?void 0:r.matches("uploaded"))})},actions:{incrementProgress:I((t,e)=>{const r=t.loaded+e.additions,n=Math.round(r*100/t.total);return{...t,loaded:r,progress:n}}),setUploaded:I({progress:t=>100,loaded:({files:t})=>t.map(e=>e.getSnapshot()).filter(e=>e.matches("uploaded")).reduce((e,r)=>{var n;return e+((n=r.context.file)==null?void 0:n.size)},0)}),resetTotal:I({total:({files:t})=>t.map(e=>e.getSnapshot()).filter(e=>!e.matches("uploaded")).reduce((e,r)=>{var n;return e+((n=r.context.file)==null?void 0:n.size)},0)}),resetLoaded:I({loaded:t=>0}),startProgress:I({progress:t=>0}),resetProgress:I({progress:t=>null}),addItem:I((t,{files:e,bucketId:r})=>{const n=e?Array.isArray(e)?e:"item"in e?Array.from(e):[e]:[],i=t.total+n.reduce((o,u)=>o+u.size,0),s=Math.round(t.loaded*100/i);return{files:[...t.files,...n.map(o=>ns(Zn().withConfig({actions:{sendProgress:Nt((u,{additions:c})=>({type:"UPLOAD_PROGRESS",additions:c})),sendDone:Nt("UPLOAD_DONE"),sendError:Nt("UPLOAD_ERROR"),sendDestroy:Nt("REMOVE")}}).withContext({...Pt,file:o,bucketId:r}),{sync:!0}))],total:i,loaded:t.loaded,progress:s}}),removeItem:I({files:t=>t.files.filter(e=>{var r,n;const i=(r=e.getSnapshot())==null?void 0:r.matches("stopped");return i&&((n=e.stop)==null||n.call(e)),!i})}),clearList:mr(t=>t.files.map(e=>X({type:"DESTROY"},{to:e.id}))),upload:mr((t,e)=>t.files.map(r=>X(e,{to:r.id}))),cancel:mr(t=>t.files.map(e=>X({type:"CANCEL"},{to:e.id})))}}),Us=async(t,e)=>new Promise(r=>{e.send({type:"UPLOAD",...t}),e.subscribe(n=>{var i;n.matches("error")?r({error:n.context.error,isError:!0,isUploaded:!1}):n.matches("uploaded")&&r({error:null,isError:!1,isUploaded:!0,id:n.context.id,bucketId:n.context.id,name:(i=n.context.file)==null?void 0:i.name})})}),Ds=async(t,e)=>new Promise(r=>{e.send({type:"UPLOAD",...t,files:t.files}),e.onTransition(n=>{n.matches("error")?r({errors:n.context.files.filter(i=>{var s;return(s=i.getSnapshot())==null?void 0:s.context.error}),isError:!0,files:[]}):n.matches("uploaded")&&r({errors:[],isError:!1,files:n.context.files})})}),Cs=/^((?<protocol>http[s]?):\/\/)?(?<host>(localhost|local))(:(?<port>(\d+|__\w+__)))?$/;function nt(t,e){const{subdomain:r,region:n}=t;if(!r)throw new Error("A `subdomain` must be set.");const i=r.match(Cs);if(i!=null&&i.groups){const{protocol:s,host:o,port:u}=i.groups,c=js(e);return c||(o==="localhost"?(console.warn('The `subdomain` is set to "localhost". Support for this will be removed in a future release. Please use "local" instead.'),`${s||"http"}://localhost:${u||1337}/v1/${e}`):u?`${s||"https"}://local.${e}.local.nhost.run:${u}/v1`:`${s||"https"}://local.${e}.local.nhost.run/v1`)}if(!n)throw new Error('`region` must be set when using a `subdomain` other than "local".');return`https://${r}.${e}.${n}.nhost.run/v1`}function Ms(){return typeof window!="undefined"}function Ls(){return typeof process!="undefined"&&process.env}function js(t){return Ms()||!Ls()?null:process.env[`NHOST_${t.toUpperCase()}_URL`]}function $s(t,e){const n=e.startsWith("/")?e:`/${e}`;return t+n}function ei(t){const e="subdomain"in t?nt(t,"auth"):t.authUrl,{subdomain:r,region:n}=t;if(!e)throw new Error("Please provide `subdomain` or `authUrl`.");return new Wn({url:e,broadcastKey:`${r}${n!=null?n:"local"}`,...t})}function Fs(t,e){return e=e||{},new Promise(function(r,n){var i=new XMLHttpRequest,s=[],o=[],u={},c=function(){return{ok:(i.status/100|0)==2,statusText:i.statusText,status:i.status,url:i.responseURL,text:function(){return Promise.resolve(i.responseText)},json:function(){return Promise.resolve(i.responseText).then(JSON.parse)},blob:function(){return Promise.resolve(new Blob([i.response]))},clone:c,headers:{keys:function(){return s},entries:function(){return o},get:function(h){return u[h.toLowerCase()]},has:function(h){return h.toLowerCase()in u}}}};for(var d in i.open(e.method||"get",t,!0),i.onload=function(){i.getAllResponseHeaders().replace(/^(.*?):[^\S\n]*([\s\S]*?)$/gm,function(h,v,a){s.push(v=v.toLowerCase()),o.push([v,a]),u[v]=u[v]?u[v]+","+a:a}),r(c())},i.onerror=n,i.withCredentials=e.credentials=="include",e.headers)i.setRequestHeader(d,e.headers[d]);i.send(e.body||null)})}const ti=us(Object.freeze(Object.defineProperty({__proto__:null,default:Fs},Symbol.toStringTag,{value:"Module"})));var Hs=self.fetch||(self.fetch=ti.default||ti);const ri=Qt(Hs);function ni(t){const e="subdomain"in t?nt(t,"functions"):t.functionsUrl;if(!e)throw new Error("Please provide `subdomain` or `functionsUrl`.");return new ii({url:e,...t})}class ii{constructor(e){de(this,"url");de(this,"accessToken");de(this,"adminSecret");de(this,"headers",{});const{url:r,adminSecret:n}=e;this.url=r,this.accessToken=null,this.adminSecret=n}async call(e,r,n){var o,u;const i={"Content-Type":"application/json",...this.generateAccessTokenHeaders(),...n==null?void 0:n.headers,...this.headers},s=$s(this.url,e);try{const c=await ri(s,{body:r?JSON.stringify(r):null,headers:i,method:"POST"});if(!c.ok){let h;return(o=c.headers.get("content-type"))!=null&&o.includes("application/json")?h=await c.json():h=await c.text(),{res:null,error:{message:h,error:c.statusText,status:c.status}}}let d;return(u=c.headers.get("content-type"))!=null&&u.includes("application/json")?d=await c.json():d=await c.text(),{res:{data:d,status:c.status,statusText:c.statusText},error:null}}catch(c){const d=c;return{res:null,error:{message:d.message,status:d.name==="AbortError"?0:500,error:d.name==="AbortError"?"abort-error":"unknown"}}}}setAccessToken(e){if(!e){this.accessToken=null;return}this.accessToken=e}getHeaders(){return this.headers}setHeaders(e){e&&(this.headers={...this.headers,...e})}unsetHeaders(){const e=this.headers["x-hasura-role"];this.headers=e?{"x-hasura-role":e}:{}}generateAccessTokenHeaders(){return this.adminSecret?{"x-hasura-admin-secret":this.adminSecret}:this.accessToken?{Authorization:`Bearer ${this.accessToken}`}:{}}}var qs=Object.defineProperty,Ks=(t,e,r)=>e in t?qs(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,$e=(t,e,r)=>Ks(t,typeof e!="symbol"?e+"":e,r);function Vs(t,e,r){return t.document?t:{document:t,variables:e,config:r}}function si(t){var e;let r;const n=t.definitions.filter(i=>i.kind==="OperationDefinition");return n.length===1&&(r=(e=n[0].name)==null?void 0:e.value),r}function Gs(t){if(typeof t=="string"){let r;try{const n=te.parse(t);r=si(n)}catch{}return{query:t,operationName:r}}const e=si(t);return{query:te.print(t),operationName:e}}class Bs{constructor(e){$e(this,"_url"),$e(this,"accessToken"),$e(this,"adminSecret"),$e(this,"headers",{}),$e(this,"isAccessTokenValidOrNull",()=>{if(!this.accessToken)return!0;try{const i=Er(this.accessToken);return i.exp!=null&&i.exp*1e3>Date.now()}catch(i){return console.error("Error decoding token:",i),!1}}),$e(this,"awaitForValidAccessTokenOrNull",async()=>{if(this.isAccessTokenValidOrNull())return!0;const i=()=>this.isAccessTokenValidOrNull()?Promise.resolve(!0):new Promise(s=>{setTimeout(()=>i().then(s),100)});return i()});const{url:r,adminSecret:n}=e;this._url=r,this.accessToken=null,this.adminSecret=n}async request(e,...r){const[n,i]=r,s=Vs(e,n,i),{headers:o,...u}=i||{},{query:c,operationName:d}=Gs(s.document);typeof process!="undefined"&&!process.env.TEST_MODE&&await this.awaitForValidAccessTokenOrNull();try{const h=await ri(this.httpUrl,{method:"POST",body:JSON.stringify({operationName:d,query:c,variables:n}),headers:{"Content-Type":"application/json",...this.generateAccessTokenHeaders(),...this.headers,...o},...u});if(!h.ok)return{data:null,error:{error:h.statusText,message:h.statusText,status:h.status}};const{data:v,errors:a}=await h.json();return a?{data:null,error:a}:typeof v!="object"||Array.isArray(v)||v===null?{data:null,error:{error:"invalid-response",message:"incorrect response data from GraphQL server",status:0}}:{data:v,error:null}}catch(h){const v=h;return{data:null,error:{message:v.message,status:v.name==="AbortError"?0:500,error:v.name==="AbortError"?"abort-error":"unknown"}}}}get httpUrl(){return this._url}get wsUrl(){return this._url.replace(/^(http)(s?):\/\//,"ws$2://")}get url(){return this._url}getUrl(){return this._url}setAccessToken(e){if(!e){this.accessToken=null;return}this.accessToken=e}getHeaders(){return this.headers}setHeaders(e){e&&(this.headers={...this.headers,...e})}unsetHeaders(){const e=this.headers["x-hasura-role"];this.headers=e?{"x-hasura-role":e}:{}}generateAccessTokenHeaders(){return this.adminSecret?{"x-hasura-admin-secret":this.adminSecret}:this.accessToken?{Authorization:`Bearer ${this.accessToken}`}:{}}}function oi(t){const e="subdomain"in t?nt(t,"graphql"):t.graphqlUrl;if(!e)throw new Error("Please provide `subdomain` or `graphqlUrl`.");return new Bs({url:e,...t})}function ai(t){const e="subdomain"in t?nt(t,"storage"):t.storageUrl;if(!e)throw new Error("Please provide `subdomain` or `storageUrl`.");return new Qn({url:e,...t})}const zs=t=>new ci(t);class ci{constructor({refreshIntervalTime:e,clientStorage:r,clientStorageType:n,autoRefreshToken:i,autoSignIn:s,adminSecret:o,devTools:u,start:c=!0,...d}){de(this,"auth");de(this,"storage");de(this,"functions");de(this,"graphql");de(this,"_adminSecret");de(this,"devTools");this.auth=ei({refreshIntervalTime:e,clientStorage:r,clientStorageType:n,autoRefreshToken:i,autoSignIn:s,start:c,...d}),this.storage=ai({adminSecret:o,...d}),this.functions=ni({adminSecret:o,...d}),this.graphql=oi({adminSecret:o,...d}),this.auth.onAuthStateChanged((h,v)=>{if(h==="SIGNED_OUT"){this.storage.setAccessToken(void 0),this.functions.setAccessToken(void 0),this.graphql.setAccessToken(void 0);return}const a=v==null?void 0:v.accessToken;this.storage.setAccessToken(a),this.functions.setAccessToken(a),this.graphql.setAccessToken(a)}),this.auth.onTokenChanged(h=>{const v=h==null?void 0:h.accessToken;this.storage.setAccessToken(v),this.functions.setAccessToken(v),this.graphql.setAccessToken(v)}),this._adminSecret=o,this.devTools=u}get adminSecret(){return this._adminSecret}set adminSecret(e){this._adminSecret=e,this.storage.setAdminSecret(e)}setRole(e){this.graphql.setHeaders({"x-hasura-role":e}),this.storage.setHeaders({"x-hasura-role":e}),this.functions.setHeaders({"x-hasura-role":e})}unsetRole(){this.graphql.setHeaders((({"x-hasura-role":e,...r})=>r)(this.graphql.getHeaders())),this.storage.setHeaders((({"x-hasura-role":e,...r})=>r)(this.storage.getHeaders())),this.functions.setHeaders((({"x-hasura-role":e,...r})=>r)(this.functions.getHeaders()))}}g.AuthClient=dr,g.AuthClientSSR=ks,g.AuthCookieClient=Rn,g.CodifiedError=be,g.EMAIL_NEEDS_VERIFICATION=cn,g.HasuraAuthClient=Wn,g.HasuraStorageApi=Xn,g.HasuraStorageClient=Qn,g.INITIAL_FILE_CONTEXT=Pt,g.INITIAL_MACHINE_CONTEXT=At,g.INVALID_EMAIL_ERROR=ue,g.INVALID_MFA_CODE_ERROR=tn,g.INVALID_MFA_TICKET_ERROR=rn,g.INVALID_MFA_TYPE_ERROR=en,g.INVALID_PASSWORD_ERROR=kt,g.INVALID_PHONE_NUMBER_ERROR=sr,g.INVALID_REFRESH_TOKEN=un,g.INVALID_SIGN_IN_METHOD=ln,g.MIN_PASSWORD_LENGTH=Zr,g.NETWORK_ERROR_CODE=nr,g.NHOST_JWT_EXPIRES_AT_KEY=Se,g.NHOST_REFRESH_TOKEN_ID_KEY=Qe,g.NHOST_REFRESH_TOKEN_KEY=Me,g.NO_MFA_TICKET_ERROR=nn,g.NO_REFRESH_TOKEN=sn,g.NhostClient=ci,g.NhostFunctionsClient=ii,g.OTHER_ERROR_CODE=ir,g.REFRESH_TOKEN_MAX_ATTEMPTS=rr,g.STATE_ERROR_CODE=Le,g.TOKEN_REFRESHER_RUNNING_ERROR=on,g.TOKEN_REFRESH_MARGIN_SECONDS=tr,g.USER_ALREADY_SIGNED_IN=ee,g.USER_NOT_ANONYMOUS=fs,g.USER_UNAUTHENTICATED=an,g.VALIDATION_ERROR_CODE=ce,g.activateMfaPromise=Os,g.addSecurityKeyPromise=xn,g.appendImageTransformationParameters=_t,g.changeEmailPromise=_n,g.changePasswordPromise=Pn,g.createAuthClient=ei,g.createAuthMachine=bn,g.createChangeEmailMachine=kn,g.createChangePasswordMachine=An,g.createEnableMfaMachine=bs,g.createFileUploadMachine=Zn,g.createFunctionsClient=ni,g.createGraphqlClient=oi,g.createMultipleFilesUploadMachine=Ns,g.createNhostClient=zs,g.createResetPasswordMachine=On,g.createSendVerificationEmailMachine=In,g.createStorageClient=ai,g.disableMfaPromise=Is,g.elevateEmailSecurityKeyPromise=jn,g.encodeQueryParameters=Rt,g.generateQrCodePromise=As,g.getAuthenticationResult=se,g.getFetch=Tn,g.getParameterByName=tt,g.getSession=Ze,g.isBrowser=et,g.isValidEmail=le,g.isValidPassword=xt,g.isValidPhoneNumber=lr,g.isValidTicket=Sn,g.linkIdTokenPromise=zn,g.localStorageGetter=gn,g.localStorageSetter=mn,g.postFetch=re,g.removeParameterFromWindow=ur,g.resetPasswordPromise=Nn,g.rewriteRedirectTo=ne,g.sendVerificationEmailPromise=Un,g.signInAnonymousPromise=Dn,g.signInEmailOTPPromise=Vn,g.signInEmailPasswordPromise=Cn,g.signInEmailPasswordlessPromise=hr,g.signInEmailSecurityKeyPromise=Mn,g.signInIdTokenPromise=Bn,g.signInMfaTotpPromise=$n,g.signInPATPromise=Fn,g.signInSecurityKeyPromise=Yn,g.signInSmsPasswordlessOtpPromise=Hn,g.signInSmsPasswordlessPromise=fr,g.signOutPromise=qn,g.signUpEmailPasswordPromise=pr,g.signUpEmailSecurityKeyPromise=Kn,g.uploadFilePromise=Us,g.uploadMultipleFilesPromise=Ds,g.urlFromSubdomain=nt,g.verifyEmailOTPPromise=Gn,Object.defineProperty(g,Symbol.toStringTag,{value:"Module"})});
|
|
16
|
+
Event: `).concat(JSON.stringify(a.data)));return n.scheduler.schedule(function(){n.forward(a);var l=n._nextState(a);n.update(l,a)}),n._state},this.sendTo=function(h,v,a){var l=n.parent&&(v===me.Parent||n.parent.id===v),f=l?n.parent:U(v)?v===me.Internal?n:n.children.get(v)||Je.get(v):Ei(v)?v:void 0;if(!f){if(!l)throw new Error("Unable to send event to child '".concat(v,"' from service '").concat(n.id,"'."));K||J(!1,"Service '".concat(n.id,"' has no parent: unable to send event ").concat(h.type));return}if("machine"in f){if(n.status!==Y.Stopped||n.parent!==f||n.state.done){var y=E(E({},h),{name:h.name===Mt?"".concat(_e(n.id)):h.name,origin:n.sessionId});!a&&n.machine.config.predictableActionArguments?n._outgoingQueue.push([f,y]):f.send(y)}}else!a&&n.machine.config.predictableActionArguments?n._outgoingQueue.push([f,h.data]):f.send(h.data)},this._exec=function(h,v,a,l){l===void 0&&(l=n.machine.options.actions);var f=h.exec||yt(h.type,l),y=N(f)?f:f?f.exec:h.exec;if(y)try{return y(v,a.data,n.machine.config.predictableActionArguments?{action:h,_event:a}:{action:h,state:n.state,_event:a})}catch(V){throw n.parent&&n.parent.send({type:"xstate.error",data:V}),V}switch(h.type){case Oe:{var T=h;n.defer(T);break}case He:var g=h;if(typeof g.delay=="number"){n.defer(g);return}else g.to?n.sendTo(g._event,g.to,a===we):n.send(g._event);break;case Dt:n.cancel(h.sendId);break;case nt:{if(n.status!==Y.Running)return;var S=h.activity;if(!n.machine.config.predictableActionArguments&&!n.state.activities[S.id||S.type])break;if(S.type===j.Invoke){var b=xr(S.src),O=n.machine.options.services?n.machine.options.services[b.type]:void 0,M=S.id,D=S.data;K||J(!("forward"in S),"`forward` property is deprecated (found in invocation of '".concat(S.src,"' in in machine '").concat(n.machine.id,"'). ")+"Please use `autoForward` instead.");var _="autoForward"in S?S.autoForward:!!S.forward;if(!O){K||J(!1,"No service found for invocation '".concat(S.src,"' in machine '").concat(n.machine.id,"'."));return}var $=D?ht(D,v,a):void 0;if(typeof O=="string")return;var R=N(O)?O(v,a.data,{data:$,src:b,meta:S.meta}):O;if(!R)return;var B=void 0;pe(R)&&(R=$?R.withContext($):R,B={autoForward:_}),n.spawn(R,M,B)}else n.spawnActivity(S);break}case it:{n.stopChild(h.activity.id);break}case ot:var A=h,F=A.label,z=A.value;F?n.logger(F,z):n.logger(z);break;default:K||J(!1,"No implementation found for action type '".concat(h.type,"'"));break}};var i=E(E({},t.defaultOptions),r),s=i.clock,o=i.logger,u=i.parent,c=i.id,d=c!==void 0?c:e.id;this.id=d,this.logger=o,this.clock=s,this.parent=u,this.options=i,this.scheduler=new Br({deferEvents:this.options.deferEvents}),this.sessionId=Je.bookId()}return Object.defineProperty(t.prototype,"initialState",{get:function(){var e=this;return this._initialState?this._initialState:Pe(this,function(){return e._initialState=e.machine.initialState,e._initialState})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"state",{get:function(){return K||J(this.status!==Y.NotStarted,"Attempted to read state from uninitialized service '".concat(this.id,"'. Make sure the service is started first.")),this._state},enumerable:!1,configurable:!0}),t.prototype.execute=function(e,r){var n,i;try{for(var s=x(e.actions),o=s.next();!o.done;o=s.next()){var u=o.value;this.exec(u,e,r)}}catch(c){n={error:c}}finally{try{o&&!o.done&&(i=s.return)&&i.call(s)}finally{if(n)throw n.error}}},t.prototype.update=function(e,r){var n,i,s,o,u,c,d,h,v=this;if(e._sessionid=this.sessionId,this._state=e,(!this.machine.config.predictableActionArguments||r===we)&&this.options.execute)this.execute(this.state);else for(var a=void 0;a=this._outgoingQueue.shift();)a[0].send(a[1]);if(this.children.forEach(function(R){v.state.children[R.id]=R}),this.devTools&&this.devTools.send(r.data,e),e.event)try{for(var l=x(this.eventListeners),f=l.next();!f.done;f=l.next()){var y=f.value;y(e.event)}}catch(R){n={error:R}}finally{try{f&&!f.done&&(i=l.return)&&i.call(l)}finally{if(n)throw n.error}}try{for(var T=x(this.listeners),g=T.next();!g.done;g=T.next()){var y=g.value;y(e,e.event)}}catch(R){s={error:R}}finally{try{g&&!g.done&&(o=T.return)&&o.call(T)}finally{if(s)throw s.error}}try{for(var S=x(this.contextListeners),b=S.next();!b.done;b=S.next()){var O=b.value;O(this.state.context,this.state.history?this.state.history.context:void 0)}}catch(R){u={error:R}}finally{try{b&&!b.done&&(c=S.return)&&c.call(S)}finally{if(u)throw u.error}}if(this.state.done){var M=e.configuration.find(function(R){return R.type==="final"&&R.parent===v.machine}),D=M&&M.doneData?ht(M.doneData,e.context,r):void 0;this._doneEvent=Ge(this.id,D);try{for(var _=x(this.doneListeners),$=_.next();!$.done;$=_.next()){var y=$.value;y(this._doneEvent)}}catch(R){d={error:R}}finally{try{$&&!$.done&&(h=_.return)&&h.call(_)}finally{if(d)throw d.error}}this._stop(),this._stopChildren(),Je.free(this.sessionId)}},t.prototype.onTransition=function(e){return this.listeners.add(e),this.status===Y.Running&&e(this.state,this.state.event),this},t.prototype.subscribe=function(e,r,n){var i=this,s=pt(e,r,n);this.listeners.add(s.next),this.status!==Y.NotStarted&&s.next(this.state);var o=function(){i.doneListeners.delete(o),i.stopListeners.delete(o),s.complete()};return this.status===Y.Stopped?s.complete():(this.onDone(o),this.onStop(o)),{unsubscribe:function(){i.listeners.delete(s.next),i.doneListeners.delete(o),i.stopListeners.delete(o)}}},t.prototype.onEvent=function(e){return this.eventListeners.add(e),this},t.prototype.onSend=function(e){return this.sendListeners.add(e),this},t.prototype.onChange=function(e){return this.contextListeners.add(e),this},t.prototype.onStop=function(e){return this.stopListeners.add(e),this},t.prototype.onDone=function(e){return this.status===Y.Stopped&&this._doneEvent?e(this._doneEvent):this.doneListeners.add(e),this},t.prototype.off=function(e){return this.listeners.delete(e),this.eventListeners.delete(e),this.sendListeners.delete(e),this.stopListeners.delete(e),this.doneListeners.delete(e),this.contextListeners.delete(e),this},t.prototype.start=function(e){var r=this;if(this.status===Y.Running)return this;this.machine._init(),Je.register(this.sessionId,this),this.initialized=!0,this.status=Y.Running;var n=e===void 0?this.initialState:Pe(this,function(){return Vi(e)?r.machine.resolveState(e):r.machine.resolveState(fe.from(e,r.machine.context))});return this.options.devTools&&this.attachDev(),this.scheduler.initialize(function(){r.update(n,we)}),this},t.prototype._stopChildren=function(){this.children.forEach(function(e){N(e.stop)&&e.stop()}),this.children.clear()},t.prototype._stop=function(){var e,r,n,i,s,o,u,c,d,h;try{for(var v=x(this.listeners),a=v.next();!a.done;a=v.next()){var l=a.value;this.listeners.delete(l)}}catch(_){e={error:_}}finally{try{a&&!a.done&&(r=v.return)&&r.call(v)}finally{if(e)throw e.error}}try{for(var f=x(this.stopListeners),y=f.next();!y.done;y=f.next()){var l=y.value;l(),this.stopListeners.delete(l)}}catch(_){n={error:_}}finally{try{y&&!y.done&&(i=f.return)&&i.call(f)}finally{if(n)throw n.error}}try{for(var T=x(this.contextListeners),g=T.next();!g.done;g=T.next()){var l=g.value;this.contextListeners.delete(l)}}catch(_){s={error:_}}finally{try{g&&!g.done&&(o=T.return)&&o.call(T)}finally{if(s)throw s.error}}try{for(var S=x(this.doneListeners),b=S.next();!b.done;b=S.next()){var l=b.value;this.doneListeners.delete(l)}}catch(_){u={error:_}}finally{try{b&&!b.done&&(c=S.return)&&c.call(S)}finally{if(u)throw u.error}}if(!this.initialized)return this;this.initialized=!1,this.status=Y.Stopped,this._initialState=void 0;try{for(var O=x(Object.keys(this.delayedEventsMap)),M=O.next();!M.done;M=O.next()){var D=M.value;this.clock.clearTimeout(this.delayedEventsMap[D])}}catch(_){d={error:_}}finally{try{M&&!M.done&&(h=O.return)&&h.call(O)}finally{if(d)throw d.error}}this.scheduler.clear(),this.scheduler=new Br({deferEvents:this.options.deferEvents})},t.prototype.stop=function(){var e=this,r=this.scheduler;return this._stop(),r.schedule(function(){var n;if(!(!((n=e._state)===null||n===void 0)&&n.done)){var i=Q({type:"xstate.stop"}),s=Pe(e,function(){var o=G(q([],P(e.state.configuration),!1).sort(function(v,a){return a.order-v.order}).map(function(v){return ve(v.onExit,e.machine.options.actions)})),u=P(Be(e.machine,e.state,e.state.context,i,[{type:"exit",actions:o}],e.machine.config.predictableActionArguments?e._exec:void 0,e.machine.config.predictableActionArguments||e.machine.config.preserveActionOrder),2),c=u[0],d=u[1],h=new fe({value:e.state.value,context:d,_event:i,_sessionid:e.sessionId,historyValue:void 0,history:e.state,actions:c.filter(function(v){return!Ft(v)}),activities:{},events:[],configuration:[],transitions:[],children:{},done:e.state.done,tags:e.state.tags,machine:e.machine});return h.changed=!0,h});e.update(s,i),e._stopChildren(),Je.free(e.sessionId)}}),this},t.prototype.batch=function(e){var r=this;if(this.status===Y.NotStarted&&this.options.deferEvents)K||J(!1,"".concat(e.length,' event(s) were sent to uninitialized service "').concat(this.machine.id,`" and are deferred. Make sure .start() is called for this service.
|
|
17
|
+
Event: `).concat(JSON.stringify(event)));else if(this.status!==Y.Running)throw new Error("".concat(e.length,' event(s) were sent to uninitialized service "').concat(this.machine.id,'". Make sure .start() is called for this service, or set { deferEvents: true } in the service options.'));if(e.length){var n=!!this.machine.config.predictableActionArguments&&this._exec;this.scheduler.schedule(function(){var i,s,o=r.state,u=!1,c=[],d=function(l){var f=Q(l);r.forward(f),o=Pe(r,function(){return r.machine.transition(o,f,void 0,n||void 0)}),c.push.apply(c,q([],P(r.machine.config.predictableActionArguments?o.actions:o.actions.map(function(y){return Ki(y,o)})),!1)),u=u||!!o.changed};try{for(var h=x(e),v=h.next();!v.done;v=h.next()){var a=v.value;d(a)}}catch(l){i={error:l}}finally{try{v&&!v.done&&(s=h.return)&&s.call(h)}finally{if(i)throw i.error}}o.changed=u,o.actions=c,r.update(o,Q(e[e.length-1]))})}},t.prototype.sender=function(e){return this.send.bind(this,e)},t.prototype._nextState=function(e,r){var n=this;r===void 0&&(r=!!this.machine.config.predictableActionArguments&&this._exec);var i=Q(e);if(i.name.indexOf(Ct)===0&&!this.state.nextEvents.some(function(o){return o.indexOf(Ct)===0}))throw i.data.data;var s=Pe(this,function(){return n.machine.transition(n.state,i,void 0,r||void 0)});return s},t.prototype.nextState=function(e){return this._nextState(e,!1)},t.prototype.forward=function(e){var r,n;try{for(var i=x(this.forwardTo),s=i.next();!s.done;s=i.next()){var o=s.value,u=this.children.get(o);if(!u)throw new Error("Unable to forward event '".concat(e,"' from interpreter '").concat(this.id,"' to nonexistant child '").concat(o,"'."));u.send(e)}}catch(c){r={error:c}}finally{try{s&&!s.done&&(n=i.return)&&n.call(i)}finally{if(r)throw r.error}}},t.prototype.defer=function(e){var r=this,n=this.clock.setTimeout(function(){"to"in e&&e.to?r.sendTo(e._event,e.to,!0):r.send(e._event)},e.delay);e.id&&(this.delayedEventsMap[e.id]=n)},t.prototype.cancel=function(e){this.clock.clearTimeout(this.delayedEventsMap[e]),delete this.delayedEventsMap[e]},t.prototype.exec=function(e,r,n){n===void 0&&(n=this.machine.options.actions),this._exec(e,r.context,r._event,n)},t.prototype.removeChild=function(e){var r;this.children.delete(e),this.forwardTo.delete(e),(r=this.state)===null||r===void 0||delete r.children[e]},t.prototype.stopChild=function(e){var r=this.children.get(e);r&&(this.removeChild(e),N(r.stop)&&r.stop())},t.prototype.spawn=function(e,r,n){if(this.status!==Y.Running)return qt(e,r);if(kr(e))return this.spawnPromise(Promise.resolve(e),r);if(N(e))return this.spawnCallback(e,r);if(ji(e))return this.spawnActor(e,r);if(gi(e))return this.spawnObservable(e,r);if(pe(e))return this.spawnMachine(e,E(E({},n),{id:r}));if(vi(e))return this.spawnBehavior(e,r);throw new Error('Unable to spawn entity "'.concat(r,'" of type "').concat(typeof e,'".'))},t.prototype.spawnMachine=function(e,r){var n=this;r===void 0&&(r={});var i=new t(e,E(E({},this.options),{parent:this,id:r.id||e.id})),s=E(E({},Bt),r);s.sync&&i.onTransition(function(u){n.send(ct,{state:u,id:i.id})});var o=i;return this.children.set(i.id,o),s.autoForward&&this.forwardTo.add(i.id),i.onDone(function(u){n.removeChild(i.id),n.send(Q(u,{origin:i.id}))}).start(),o},t.prototype.spawnBehavior=function(e,r){var n=Wi(e,{id:r,parent:this});return this.children.set(r,n),n},t.prototype.spawnPromise=function(e,r){var n,i=this,s=!1,o;e.then(function(c){s||(o=c,i.removeChild(r),i.send(Q(Ge(r,c),{origin:r})))},function(c){if(!s){i.removeChild(r);var d=_e(r,c);try{i.send(Q(d,{origin:r}))}catch(h){Si(c,h,r),i.devTools&&i.devTools.send(d,i.state),i.machine.strict&&i.stop()}}});var u=(n={id:r,send:function(){},subscribe:function(c,d,h){var v=pt(c,d,h),a=!1;return e.then(function(l){a||(v.next(l),!a&&v.complete())},function(l){a||v.error(l)}),{unsubscribe:function(){return a=!0}}},stop:function(){s=!0},toJSON:function(){return{id:r}},getSnapshot:function(){return o}},n[ge]=function(){return this},n);return this.children.set(r,u),u},t.prototype.spawnCallback=function(e,r){var n,i=this,s=!1,o=new Set,u=new Set,c,d=function(a){c=a,u.forEach(function(l){return l(a)}),!s&&i.send(Q(a,{origin:r}))},h;try{h=e(d,function(a){o.add(a)})}catch(a){this.send(_e(r,a))}if(kr(h))return this.spawnPromise(h,r);var v=(n={id:r,send:function(a){return o.forEach(function(l){return l(a)})},subscribe:function(a){var l=pt(a);return u.add(l.next),{unsubscribe:function(){u.delete(l.next)}}},stop:function(){s=!0,N(h)&&h()},toJSON:function(){return{id:r}},getSnapshot:function(){return c}},n[ge]=function(){return this},n);return this.children.set(r,v),v},t.prototype.spawnObservable=function(e,r){var n,i=this,s,o=e.subscribe(function(c){s=c,i.send(Q(c,{origin:r}))},function(c){i.removeChild(r),i.send(Q(_e(r,c),{origin:r}))},function(){i.removeChild(r),i.send(Q(Ge(r),{origin:r}))}),u=(n={id:r,send:function(){},subscribe:function(c,d,h){return e.subscribe(c,d,h)},stop:function(){return o.unsubscribe()},getSnapshot:function(){return s},toJSON:function(){return{id:r}}},n[ge]=function(){return this},n);return this.children.set(r,u),u},t.prototype.spawnActor=function(e,r){return this.children.set(r,e),e},t.prototype.spawnActivity=function(e){var r=this.machine.options&&this.machine.options.activities?this.machine.options.activities[e.type]:void 0;if(!r){K||J(!1,"No implementation found for activity '".concat(e.type,"'"));return}var n=r(this.state.context,e);this.spawnEffect(e.id,n)},t.prototype.spawnEffect=function(e,r){var n;this.children.set(e,(n={id:e,send:function(){},subscribe:function(){return{unsubscribe:function(){}}},stop:r||void 0,getSnapshot:function(){},toJSON:function(){return{id:e}}},n[ge]=function(){return this},n))},t.prototype.attachDev=function(){var e=Gt();if(this.options.devTools&&e){if(e.__REDUX_DEVTOOLS_EXTENSION__){var r=typeof this.options.devTools=="object"?this.options.devTools:void 0;this.devTools=e.__REDUX_DEVTOOLS_EXTENSION__.connect(E(E({name:this.id,autoPause:!0,stateSanitizer:function(n){return{value:n.value,context:n.context,actions:n.actions}}},r),{features:E({jump:!1,skip:!1},r?r.features:void 0)}),this.machine),this.devTools.init(this.state)}Yi(this)}},t.prototype.toJSON=function(){return{id:this.id}},t.prototype[ge]=function(){return this},t.prototype.getSnapshot=function(){return this.status===Y.NotStarted?this.initialState:this._state},t.defaultOptions={execute:!0,deferEvents:!0,clock:{setTimeout:function(e,r){return setTimeout(e,r)},clearTimeout:function(e){return clearTimeout(e)}},logger:console.log.bind(console),devTools:!1},t.interpret=Ne,t}(),Xi=function(t){return U(t)?E(E({},Bt),{name:t}):E(E(E({},Bt),{name:wi()}),t)};function Qi(t,e){var r=Xi(e);return Ci(function(n){if(!K){var i=pe(t)||N(t);J(!!n||i,'Attempted to spawn an Actor (ID: "'.concat(pe(t)?t.id:"undefined",'") outside of a service. This will have no effect.'))}return n?n.spawn(t,r.name,r):qt(t,r.name)})}function Ne(t,e){var r=new Ji(t,e);return r}function Zi(t){if(typeof t=="string"){var e={type:t};return e.toString=function(){return t},e}return t}function Tt(t){return E(E({type:at},t),{toJSON:function(){t.onDone,t.onError;var e=Ut(t,["onDone","onError"]);return E(E({},e),{type:at,src:Zi(t.src)})}})}var Ue="",zt="#",Xe="*",De={},Ce=function(t){return t[0]===zt},es=function(){return{actions:{},guards:{},services:{},activities:{},delays:{}}},ts=function(t,e,r){var n=r.slice(0,-1).some(function(s){return!("cond"in s)&&!("in"in s)&&(U(s.target)||pe(s.target))}),i=e===Ue?"the transient event":"event '".concat(e,"'");J(!n,"One or more transitions for ".concat(i," on state '").concat(t.id,"' are unreachable. ")+"Make sure that the default transition is the last one defined.")},rs=function(){function t(e,r,n,i){n===void 0&&(n="context"in e?e.context:void 0);var s=this,o;this.config=e,this._context=n,this.order=-1,this.__xstatenode=!0,this.__cache={events:void 0,relativeValue:new Map,initialStateValue:void 0,initialState:void 0,on:void 0,transitions:void 0,candidates:{},delayedTransitions:void 0},this.idMap={},this.tags=[],this.options=Object.assign(es(),r),this.parent=i==null?void 0:i.parent,this.key=this.config.key||(i==null?void 0:i.key)||this.config.id||"(machine)",this.machine=this.parent?this.parent.machine:this,this.path=this.parent?this.parent.path.concat(this.key):[],this.delimiter=this.config.delimiter||(this.parent?this.parent.delimiter:Er),this.id=this.config.id||q([this.machine.key],P(this.path),!1).join(this.delimiter),this.version=this.parent?this.parent.version:this.config.version,this.type=this.config.type||(this.config.parallel?"parallel":this.config.states&&Object.keys(this.config.states).length?"compound":this.config.history?"history":"atomic"),this.schema=this.parent?this.machine.schema:(o=this.config.schema)!==null&&o!==void 0?o:{},this.description=this.config.description,K||J(!("parallel"in this.config),'The "parallel" property is deprecated and will be removed in version 4.1. '.concat(this.config.parallel?"Replace with `type: 'parallel'`":"Use `type: '".concat(this.type,"'`")," in the config for state node '").concat(this.id,"' instead.")),this.initial=this.config.initial,this.states=this.config.states?Ve(this.config.states,function(d,h){var v,a=new t(d,{},void 0,{parent:s,key:h});return Object.assign(s.idMap,E((v={},v[a.id]=a,v),a.idMap)),a}):De;var u=0;function c(d){var h,v;d.order=u++;try{for(var a=x(Hr(d)),l=a.next();!l.done;l=a.next()){var f=l.value;c(f)}}catch(y){h={error:y}}finally{try{l&&!l.done&&(v=a.return)&&v.call(a)}finally{if(h)throw h.error}}}c(this),this.history=this.config.history===!0?"shallow":this.config.history||!1,this._transient=!!this.config.always||(this.config.on?Array.isArray(this.config.on)?this.config.on.some(function(d){var h=d.event;return h===Ue}):Ue in this.config.on:!1),this.strict=!!this.config.strict,this.onEntry=oe(this.config.entry||this.config.onEntry).map(function(d){return xe(d)}),this.onExit=oe(this.config.exit||this.config.onExit).map(function(d){return xe(d)}),this.meta=this.config.meta,this.doneData=this.type==="final"?this.config.data:void 0,this.invoke=oe(this.config.invoke).map(function(d,h){var v,a;if(pe(d)){var l=vt(s.id,h);return s.machine.options.services=E((v={},v[l]=d,v),s.machine.options.services),Tt({src:l,id:l})}else if(U(d.src)){var l=d.id||vt(s.id,h);return Tt(E(E({},d),{id:l,src:d.src}))}else if(pe(d.src)||N(d.src)){var l=d.id||vt(s.id,h);return s.machine.options.services=E((a={},a[l]=d.src,a),s.machine.options.services),Tt(E(E({id:l},d),{src:l}))}else{var f=d.src;return Tt(E(E({id:vt(s.id,h)},d),{src:f}))}}),this.activities=oe(this.config.activities).concat(this.invoke).map(function(d){return mt(d)}),this.transition=this.transition.bind(this),this.tags=oe(this.config.tags)}return t.prototype._init=function(){this.__cache.transitions||qr(this).forEach(function(e){return e.on})},t.prototype.withConfig=function(e,r){var n=this.options,i=n.actions,s=n.activities,o=n.guards,u=n.services,c=n.delays;return new t(this.config,{actions:E(E({},i),e.actions),activities:E(E({},s),e.activities),guards:E(E({},o),e.guards),services:E(E({},u),e.services),delays:E(E({},c),e.delays)},r!=null?r:this.context)},t.prototype.withContext=function(e){return new t(this.config,this.options,e)},Object.defineProperty(t.prototype,"context",{get:function(){return N(this._context)?this._context():this._context},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"definition",{get:function(){return{id:this.id,key:this.key,version:this.version,context:this.context,type:this.type,initial:this.initial,history:this.history,states:Ve(this.states,function(e){return e.definition}),on:this.on,transitions:this.transitions,entry:this.onEntry,exit:this.onExit,activities:this.activities||[],meta:this.meta,order:this.order||-1,data:this.doneData,invoke:this.invoke,description:this.description,tags:this.tags}},enumerable:!1,configurable:!0}),t.prototype.toJSON=function(){return this.definition},Object.defineProperty(t.prototype,"on",{get:function(){if(this.__cache.on)return this.__cache.on;var e=this.transitions;return this.__cache.on=e.reduce(function(r,n){return r[n.eventType]=r[n.eventType]||[],r[n.eventType].push(n),r},{})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"after",{get:function(){return this.__cache.delayedTransitions||(this.__cache.delayedTransitions=this.getDelayedTransitions(),this.__cache.delayedTransitions)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"transitions",{get:function(){return this.__cache.transitions||(this.__cache.transitions=this.formatTransitions(),this.__cache.transitions)},enumerable:!1,configurable:!0}),t.prototype.getCandidates=function(e){if(this.__cache.candidates[e])return this.__cache.candidates[e];var r=e===Ue,n=this.transitions.filter(function(i){var s=i.eventType===e;return r?s:s||i.eventType===Xe});return this.__cache.candidates[e]=n,n},t.prototype.getDelayedTransitions=function(){var e=this,r=this.config.after;if(!r)return[];var n=function(s,o){var u=N(s)?"".concat(e.id,":delay[").concat(o,"]"):s,c=$r(u,e.id);return e.onEntry.push(Te(c,{delay:s})),e.onExit.push(Dr(c)),c},i=Ie(r)?r.map(function(s,o){var u=n(s.delay,o);return E(E({},s),{event:u})}):G(Object.keys(r).map(function(s,o){var u=r[s],c=U(u)?{target:u}:u,d=isNaN(+s)?s:+s,h=n(d,o);return oe(c).map(function(v){return E(E({},v),{event:h,delay:d})})}));return i.map(function(s){var o=s.delay;return E(E({},e.formatTransition(s)),{delay:o})})},t.prototype.getStateNodes=function(e){var r,n=this;if(!e)return[];var i=e instanceof fe?e.value:qe(e,this.delimiter);if(U(i)){var s=this.getStateNode(i).initial;return s!==void 0?this.getStateNodes((r={},r[i]=s,r)):[this,this.states[i]]}var o=Object.keys(i),u=[this];return u.push.apply(u,q([],P(G(o.map(function(c){return n.getStateNode(c).getStateNodes(i[c])}))),!1)),u},t.prototype.handles=function(e){var r=Tr(e);return this.events.includes(r)},t.prototype.resolveState=function(e){var r=e instanceof fe?e:fe.create(e),n=Array.from(Ye([],this.getStateNodes(r.value)));return new fe(E(E({},r),{value:this.resolve(r.value),configuration:n,done:wt(n,this),tags:Kr(n),machine:this.machine}))},t.prototype.transitionLeafNode=function(e,r,n){var i=this.getStateNode(e),s=i.next(r,n);return!s||!s.transitions.length?this.next(r,n):s},t.prototype.transitionCompoundNode=function(e,r,n){var i=Object.keys(e),s=this.getStateNode(i[0]),o=s._transition(e[i[0]],r,n);return!o||!o.transitions.length?this.next(r,n):o},t.prototype.transitionParallelNode=function(e,r,n){var i,s,o={};try{for(var u=x(Object.keys(e)),c=u.next();!c.done;c=u.next()){var d=c.value,h=e[d];if(h){var v=this.getStateNode(d),a=v._transition(h,r,n);a&&(o[d]=a)}}}catch(g){i={error:g}}finally{try{c&&!c.done&&(s=u.return)&&s.call(u)}finally{if(i)throw i.error}}var l=Object.keys(o).map(function(g){return o[g]}),f=G(l.map(function(g){return g.transitions})),y=l.some(function(g){return g.transitions.length>0});if(!y)return this.next(r,n);var T=G(Object.keys(o).map(function(g){return o[g].configuration}));return{transitions:f,exitSet:G(l.map(function(g){return g.exitSet})),configuration:T,source:r,actions:G(Object.keys(o).map(function(g){return o[g].actions}))}},t.prototype._transition=function(e,r,n){return U(e)?this.transitionLeafNode(e,r,n):Object.keys(e).length===1?this.transitionCompoundNode(e,r,n):this.transitionParallelNode(e,r,n)},t.prototype.getTransitionData=function(e,r){return this._transition(e.value,e,Q(r))},t.prototype.next=function(e,r){var n,i,s=this,o=r.name,u=[],c=[],d;try{for(var h=x(this.getCandidates(o)),v=h.next();!v.done;v=h.next()){var a=v.value,l=a.cond,f=a.in,y=e.context,T=f?U(f)&&Ce(f)?e.matches(qe(this.getStateNodeById(f).path,this.delimiter)):jt(qe(f,this.delimiter),hi(this.path.slice(0,-2))(e.value)):!0,g=!1;try{g=!l||Rr(this.machine,l,y,r,e)}catch(O){throw new Error("Unable to evaluate guard '".concat(l.name||l.type,"' in transition for event '").concat(o,"' in state node '").concat(this.id,`':
|
|
18
|
+
`).concat(O.message))}if(g&&T){a.target!==void 0&&(c=a.target),u.push.apply(u,q([],P(a.actions),!1)),d=a;break}}}catch(O){n={error:O}}finally{try{v&&!v.done&&(i=h.return)&&i.call(h)}finally{if(n)throw n.error}}if(d){if(!c.length)return{transitions:[d],exitSet:[],configuration:e.value?[this]:[],source:e,actions:u};var S=G(c.map(function(O){return s.getRelativeStateNodes(O,e.historyValue)})),b=!!d.internal;return{transitions:[d],exitSet:b?[]:G(c.map(function(O){return s.getPotentiallyReenteringNodes(O)})),configuration:S,source:e,actions:u}}},t.prototype.getPotentiallyReenteringNodes=function(e){if(this.order<e.order)return[this];for(var r=[],n=this,i=e;n&&n!==i;)r.push(n),n=n.parent;return n!==i?[]:(r.push(i),r)},t.prototype.getActions=function(e,r,n,i,s,o,u){var c,d,h,v,a=this,l=o?Ye([],this.getStateNodes(o.value)):[],f=new Set;try{for(var y=x(Array.from(e).sort(function(A,F){return A.order-F.order})),T=y.next();!T.done;T=y.next()){var g=T.value;(!We(l,g)||We(n.exitSet,g)||g.parent&&f.has(g.parent))&&f.add(g)}}catch(A){c={error:A}}finally{try{T&&!T.done&&(d=y.return)&&d.call(y)}finally{if(c)throw c.error}}try{for(var S=x(l),b=S.next();!b.done;b=S.next()){var g=b.value;(!We(e,g)||We(n.exitSet,g.parent))&&n.exitSet.push(g)}}catch(A){h={error:A}}finally{try{b&&!b.done&&(v=S.return)&&v.call(S)}finally{if(h)throw h.error}}n.exitSet.sort(function(A,F){return F.order-A.order});var O=Array.from(f).sort(function(A,F){return A.order-F.order}),M=new Set(n.exitSet),D=G(O.map(function(A){var F=[];if(A.type!=="final")return F;var z=A.parent;if(!z.parent)return F;F.push(Ke(A.id,A.doneData),Ke(z.id,A.doneData?ht(A.doneData,i,s):void 0));var V=z.parent;return V.type==="parallel"&&ze(V).every(function(ke){return wt(n.configuration,ke)})&&F.push(Ke(V.id)),F})),_=O.map(function(A){var F=A.onEntry,z=A.activities.map(function(V){return Cr(V)});return{type:"entry",actions:ve(u?q(q([],P(F),!1),P(z),!1):q(q([],P(z),!1),P(F),!1),a.machine.options.actions)}}).concat({type:"state_done",actions:D.map(function(A){return _r(A)})}),$=Array.from(M).map(function(A){return{type:"exit",actions:ve(q(q([],P(A.onExit),!1),P(A.activities.map(function(F){return Mr(F)})),!1),a.machine.options.actions)}}),R=$.concat({type:"transition",actions:ve(n.actions,this.machine.options.actions)}).concat(_);if(r){var B=ve(G(q([],P(e),!1).sort(function(A,F){return F.order-A.order}).map(function(A){return A.onExit})),this.machine.options.actions).filter(function(A){return!Ft(A)});return R.concat({type:"stop",actions:B})}return R},t.prototype.transition=function(e,r,n,i){e===void 0&&(e=this.initialState);var s=Q(r),o;if(e instanceof fe)o=n===void 0?e:this.resolveState(fe.from(e,n));else{var u=U(e)?this.resolve(lt(this.getResolvedPath(e))):this.resolve(e),c=n!=null?n:this.machine.context;o=this.resolveState(fe.from(u,c))}if(!K&&s.name===Xe)throw new Error("An event cannot have the wildcard type ('".concat(Xe,"')"));if(this.strict&&!this.events.includes(s.name)&&!pi(s.name))throw new Error("Machine '".concat(this.id,"' does not accept event '").concat(s.name,"'"));var d=this._transition(o.value,o,s)||{transitions:[],configuration:[],exitSet:[],source:o,actions:[]},h=Ye([],this.getStateNodes(o.value)),v=d.configuration.length?Ye(h,d.configuration):h;return d.configuration=q([],P(v),!1),this.resolveTransition(d,o,o.context,i,s)},t.prototype.resolveRaisedTransition=function(e,r,n,i){var s,o=e.actions;return e=this.transition(e,r,void 0,i),e._event=n,e.event=n.data,(s=e.actions).unshift.apply(s,q([],P(o),!1)),e},t.prototype.resolveTransition=function(e,r,n,i,s){var o,u,c,d,h=this;s===void 0&&(s=we);var v=e.configuration,a=!r||e.transitions.length>0,l=a?e.configuration:r?r.configuration:[],f=wt(l,this),y=a?Fi(this.machine,v):void 0,T=r?r.historyValue?r.historyValue:e.source?this.machine.historyValue(r.value):void 0:void 0,g=this.getActions(new Set(l),f,e,n,s,r,i),S=r?E({},r.activities):{};try{for(var b=x(g),O=b.next();!O.done;O=b.next()){var M=O.value;try{for(var D=(c=void 0,x(M.actions)),_=D.next();!_.done;_=D.next()){var $=_.value;$.type===nt?S[$.activity.id||$.activity.type]=$:$.type===it&&(S[$.activity.id||$.activity.type]=!1)}}catch(ie){c={error:ie}}finally{try{_&&!_.done&&(d=D.return)&&d.call(D)}finally{if(c)throw c.error}}}}catch(ie){o={error:ie}}finally{try{O&&!O.done&&(u=b.return)&&u.call(b)}finally{if(o)throw o.error}}var R=P(Be(this,r,n,s,g,i,this.machine.config.predictableActionArguments||this.machine.config.preserveActionOrder),2),B=R[0],A=R[1],F=P(yi(B,Ft),2),z=F[0],V=F[1],ke=B.filter(function(ie){var W;return ie.type===nt&&((W=ie.activity)===null||W===void 0?void 0:W.type)===at}),Ae=ke.reduce(function(ie,W){return ie[W.activity.id]=Mi(W.activity,h.machine,A,s),ie},r?E({},r.children):{}),p=new fe({value:y||r.value,context:A,_event:s,_sessionid:r?r._sessionid:null,historyValue:y?T?mi(T,y):void 0:r?r.historyValue:void 0,history:!y||e.source?r:void 0,actions:y?V:[],activities:y?S:r?r.activities:{},events:[],configuration:l,transitions:e.transitions,children:Ae,done:f,tags:Kr(l),machine:this}),w=n!==A;p.changed=s.name===ct||w;var k=p.history;k&&delete k.history;var H=!f&&(this._transient||v.some(function(ie){return ie._transient}));if(!a&&(!H||s.name===Ue))return p;var C=p;if(!f)for(H&&(C=this.resolveRaisedTransition(C,{type:vr},s,i));z.length;){var L=z.shift();C=this.resolveRaisedTransition(C,L._event,s,i)}var Fe=C.changed||(k?!!C.actions.length||w||typeof k.value!=typeof C.value||!Gr(C.value,k.value):void 0);return C.changed=Fe,C.history=k,C},t.prototype.getStateNode=function(e){if(Ce(e))return this.machine.getStateNodeById(e);if(!this.states)throw new Error("Unable to retrieve child state '".concat(e,"' from '").concat(this.id,"'; no child states exist."));var r=this.states[e];if(!r)throw new Error("Child state '".concat(e,"' does not exist on '").concat(this.id,"'"));return r},t.prototype.getStateNodeById=function(e){var r=Ce(e)?e.slice(zt.length):e;if(r===this.id)return this;var n=this.machine.idMap[r];if(!n)throw new Error("Child state node '#".concat(r,"' does not exist on machine '").concat(this.id,"'"));return n},t.prototype.getStateNodeByPath=function(e){if(typeof e=="string"&&Ce(e))try{return this.getStateNodeById(e.slice(1))}catch{}for(var r=$t(e,this.delimiter).slice(),n=this;r.length;){var i=r.shift();if(!i.length)break;n=n.getStateNode(i)}return n},t.prototype.resolve=function(e){var r,n=this;if(!e)return this.initialStateValue||De;switch(this.type){case"parallel":return Ve(this.initialStateValue,function(s,o){return s?n.getStateNode(o).resolve(e[o]||s):De});case"compound":if(U(e)){var i=this.getStateNode(e);return i.type==="parallel"||i.type==="compound"?(r={},r[e]=i.initialStateValue,r):e}return Object.keys(e).length?Ve(e,function(s,o){return s?n.getStateNode(o).resolve(s):De}):this.initialStateValue||{};default:return e||De}},t.prototype.getResolvedPath=function(e){if(Ce(e)){var r=this.machine.idMap[e.slice(zt.length)];if(!r)throw new Error("Unable to find state node '".concat(e,"'"));return r.path}return $t(e,this.delimiter)},Object.defineProperty(t.prototype,"initialStateValue",{get:function(){var e;if(this.__cache.initialStateValue)return this.__cache.initialStateValue;var r;if(this.type==="parallel")r=Sr(this.states,function(n){return n.initialStateValue||De},function(n){return n.type!=="history"});else if(this.initial!==void 0){if(!this.states[this.initial])throw new Error("Initial state '".concat(this.initial,"' not found on '").concat(this.key,"'"));r=Et(this.states[this.initial])?this.initial:(e={},e[this.initial]=this.states[this.initial].initialStateValue,e)}else r={};return this.__cache.initialStateValue=r,this.__cache.initialStateValue},enumerable:!1,configurable:!0}),t.prototype.getInitialState=function(e,r){this._init();var n=this.getStateNodes(e);return this.resolveTransition({configuration:n,exitSet:[],transitions:[],source:void 0,actions:[]},void 0,r!=null?r:this.machine.context,void 0)},Object.defineProperty(t.prototype,"initialState",{get:function(){var e=this.initialStateValue;if(!e)throw new Error("Cannot retrieve initial state from simple state '".concat(this.id,"'."));return this.getInitialState(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"target",{get:function(){var e;if(this.type==="history"){var r=this.config;U(r.target)?e=Ce(r.target)?lt(this.machine.getStateNodeById(r.target).path.slice(this.path.length-1)):r.target:e=r.target}return e},enumerable:!1,configurable:!0}),t.prototype.getRelativeStateNodes=function(e,r,n){return n===void 0&&(n=!0),n?e.type==="history"?e.resolveHistory(r):e.initialStateNodes:[e]},Object.defineProperty(t.prototype,"initialStateNodes",{get:function(){var e=this;if(Et(this))return[this];if(this.type==="compound"&&!this.initial)return K||J(!1,"Compound state node '".concat(this.id,"' has no initial state.")),[this];var r=dt(this.initialStateValue);return G(r.map(function(n){return e.getFromRelativePath(n)}))},enumerable:!1,configurable:!0}),t.prototype.getFromRelativePath=function(e){if(!e.length)return[this];var r=P(e),n=r[0],i=r.slice(1);if(!this.states)throw new Error("Cannot retrieve subPath '".concat(n,"' from node with no states"));var s=this.getStateNode(n);if(s.type==="history")return s.resolveHistory();if(!this.states[n])throw new Error("Child state '".concat(n,"' does not exist on '").concat(this.id,"'"));return this.states[n].getFromRelativePath(i)},t.prototype.historyValue=function(e){if(Object.keys(this.states).length)return{current:e||this.initialStateValue,states:Sr(this.states,function(r,n){if(!e)return r.historyValue();var i=U(e)?void 0:e[n];return r.historyValue(i||r.initialStateValue)},function(r){return!r.history})}},t.prototype.resolveHistory=function(e){var r=this;if(this.type!=="history")return[this];var n=this.parent;if(!e){var i=this.target;return i?G(dt(i).map(function(o){return n.getFromRelativePath(o)})):n.initialStateNodes}var s=fi(n.path,"states")(e).current;return U(s)?[n.getStateNode(s)]:G(dt(s).map(function(o){return r.history==="deep"?n.getFromRelativePath(o):[n.states[o[0]]]}))},Object.defineProperty(t.prototype,"stateIds",{get:function(){var e=this,r=G(Object.keys(this.states).map(function(n){return e.states[n].stateIds}));return[this.id].concat(r)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"events",{get:function(){var e,r,n,i;if(this.__cache.events)return this.__cache.events;var s=this.states,o=new Set(this.ownEvents);if(s)try{for(var u=x(Object.keys(s)),c=u.next();!c.done;c=u.next()){var d=c.value,h=s[d];if(h.states)try{for(var v=(n=void 0,x(h.events)),a=v.next();!a.done;a=v.next()){var l=a.value;o.add("".concat(l))}}catch(f){n={error:f}}finally{try{a&&!a.done&&(i=v.return)&&i.call(v)}finally{if(n)throw n.error}}}}catch(f){e={error:f}}finally{try{c&&!c.done&&(r=u.return)&&r.call(u)}finally{if(e)throw e.error}}return this.__cache.events=Array.from(o)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"ownEvents",{get:function(){var e=new Set(this.transitions.filter(function(r){return!(!r.target&&!r.actions.length&&r.internal)}).map(function(r){return r.eventType}));return Array.from(e)},enumerable:!1,configurable:!0}),t.prototype.resolveTarget=function(e){var r=this;if(e!==void 0)return e.map(function(n){if(!U(n))return n;var i=n[0]===r.delimiter;if(i&&!r.parent)return r.getStateNodeByPath(n.slice(1));var s=i?r.key+n:n;if(r.parent)try{var o=r.parent.getStateNodeByPath(s);return o}catch(u){throw new Error("Invalid transition definition for state node '".concat(r.id,`':
|
|
19
|
+
`).concat(u.message))}else return r.getStateNodeByPath(s)})},t.prototype.formatTransition=function(e){var r=this,n=Ti(e.target),i="internal"in e?e.internal:n?n.some(function(c){return U(c)&&c[0]===r.delimiter}):!0,s=this.machine.options.guards,o=this.resolveTarget(n),u=E(E({},e),{actions:ve(oe(e.actions)),cond:Ir(e.cond,s),target:o,source:this,internal:i,eventType:e.event,toJSON:function(){return E(E({},u),{target:u.target?u.target.map(function(c){return"#".concat(c.id)}):void 0,source:"#".concat(r.id)})}});return u},t.prototype.formatTransitions=function(){var e,r,n=this,i;if(!this.config.on)i=[];else if(Array.isArray(this.config.on))i=this.config.on;else{var s=this.config.on,o=Xe,u=s[o],c=u===void 0?[]:u,d=Ut(s,[typeof o=="symbol"?o:o+""]);i=G(Object.keys(d).map(function(S){!K&&S===Ue&&J(!1,"Empty string transition configs (e.g., `{ on: { '': ... }}`) for transient transitions are deprecated. Specify the transition in the `{ always: ... }` property instead. "+'Please check the `on` configuration for "#'.concat(n.id,'".'));var b=Re(S,d[S]);return K||ts(n,S,b),b}).concat(Re(Xe,c)))}var h=this.config.always?Re("",this.config.always):[],v=this.config.onDone?Re(String(Ke(this.id)),this.config.onDone):[];K||J(!(this.config.onDone&&!this.parent),'Root nodes cannot have an ".onDone" transition. Please check the config of "'.concat(this.id,'".'));var a=G(this.invoke.map(function(S){var b=[];return S.onDone&&b.push.apply(b,q([],P(Re(String(Ge(S.id)),S.onDone)),!1)),S.onError&&b.push.apply(b,q([],P(Re(String(_e(S.id)),S.onError)),!1)),b})),l=this.after,f=G(q(q(q(q([],P(v),!1),P(a),!1),P(i),!1),P(h),!1).map(function(S){return oe(S).map(function(b){return n.formatTransition(b)})}));try{for(var y=x(l),T=y.next();!T.done;T=y.next()){var g=T.value;f.push(g)}}catch(S){e={error:S}}finally{try{T&&!T.done&&(r=y.return)&&r.call(y)}finally{if(e)throw e.error}}return f},t}(),zr=!1;function Ee(t,e){return!K&&!("predictableActionArguments"in t)&&!zr&&(zr=!0,console.warn("It is highly recommended to set `predictableActionArguments` to `true` when using `createMachine`. https://xstate.js.org/docs/guides/actions.html")),new rs(t,e)}var I=jr,X=Te;/*! js-cookie v3.0.5 | MIT */function St(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)t[n]=r[n]}return t}var ns={read:function(t){return t[0]==='"'&&(t=t.slice(1,-1)),t.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(t){return encodeURIComponent(t).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function Yt(t,e){function r(i,s,o){if(typeof document!="undefined"){o=St({},e,o),typeof o.expires=="number"&&(o.expires=new Date(Date.now()+o.expires*864e5)),o.expires&&(o.expires=o.expires.toUTCString()),i=encodeURIComponent(i).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var u="";for(var c in o)o[c]&&(u+="; "+c,o[c]!==!0&&(u+="="+o[c].split(";")[0]));return document.cookie=i+"="+t.write(s,i)+u}}function n(i){if(!(typeof document=="undefined"||arguments.length&&!i)){for(var s=document.cookie?document.cookie.split("; "):[],o={},u=0;u<s.length;u++){var c=s[u].split("="),d=c.slice(1).join("=");try{var h=decodeURIComponent(c[0]);if(o[h]=t.read(d,h),i===h)break}catch{}}return i?o[i]:o}}return Object.create({set:r,get:n,remove:function(i,s){r(i,"",St({},s,{expires:-1}))},withAttributes:function(i){return Yt(this.converter,St({},this.attributes,i))},withConverter:function(i){return Yt(St({},this.converter,i),this.attributes)}},{attributes:{value:Object.freeze(e)},converter:{value:Object.freeze(t)}})}var Wt=Yt(ns,{path:"/"}),Jt=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function Yr(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function is(t){if(t.__esModule)return t;var e=t.default;if(typeof e=="function"){var r=function n(){return this instanceof n?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};r.prototype=e.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(t).forEach(function(n){var i=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(r,n,i.get?i:{enumerable:!0,get:function(){return t[n]}})}),r}var Xt={exports:{}};(function(t,e){(function(r){function n(i){var s=i&&i.Promise||r.Promise,o=i&&i.XMLHttpRequest||r.XMLHttpRequest;return function(){var u=Object.create(r,{fetch:{value:void 0,writable:!0}});return function(c,d){d(e)}(this,function(c){var d=typeof u!="undefined"&&u||typeof self!="undefined"&&self||typeof d!="undefined"&&d,h={searchParams:"URLSearchParams"in d,iterable:"Symbol"in d&&"iterator"in Symbol,blob:"FileReader"in d&&"Blob"in d&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in d,arrayBuffer:"ArrayBuffer"in d};function v(p){return p&&DataView.prototype.isPrototypeOf(p)}if(h.arrayBuffer)var a=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],l=ArrayBuffer.isView||function(p){return p&&a.indexOf(Object.prototype.toString.call(p))>-1};function f(p){if(typeof p!="string"&&(p=String(p)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(p)||p==="")throw new TypeError("Invalid character in header field name");return p.toLowerCase()}function y(p){return typeof p!="string"&&(p=String(p)),p}function T(p){var w={next:function(){var k=p.shift();return{done:k===void 0,value:k}}};return h.iterable&&(w[Symbol.iterator]=function(){return w}),w}function g(p){this.map={},p instanceof g?p.forEach(function(w,k){this.append(k,w)},this):Array.isArray(p)?p.forEach(function(w){this.append(w[0],w[1])},this):p&&Object.getOwnPropertyNames(p).forEach(function(w){this.append(w,p[w])},this)}g.prototype.append=function(p,w){p=f(p),w=y(w);var k=this.map[p];this.map[p]=k?k+", "+w:w},g.prototype.delete=function(p){delete this.map[f(p)]},g.prototype.get=function(p){return p=f(p),this.has(p)?this.map[p]:null},g.prototype.has=function(p){return this.map.hasOwnProperty(f(p))},g.prototype.set=function(p,w){this.map[f(p)]=y(w)},g.prototype.forEach=function(p,w){for(var k in this.map)this.map.hasOwnProperty(k)&&p.call(w,this.map[k],k,this)},g.prototype.keys=function(){var p=[];return this.forEach(function(w,k){p.push(k)}),T(p)},g.prototype.values=function(){var p=[];return this.forEach(function(w){p.push(w)}),T(p)},g.prototype.entries=function(){var p=[];return this.forEach(function(w,k){p.push([k,w])}),T(p)},h.iterable&&(g.prototype[Symbol.iterator]=g.prototype.entries);function S(p){if(p.bodyUsed)return s.reject(new TypeError("Already read"));p.bodyUsed=!0}function b(p){return new s(function(w,k){p.onload=function(){w(p.result)},p.onerror=function(){k(p.error)}})}function O(p){var w=new FileReader,k=b(w);return w.readAsArrayBuffer(p),k}function M(p){var w=new FileReader,k=b(w);return w.readAsText(p),k}function D(p){for(var w=new Uint8Array(p),k=new Array(w.length),H=0;H<w.length;H++)k[H]=String.fromCharCode(w[H]);return k.join("")}function _(p){if(p.slice)return p.slice(0);var w=new Uint8Array(p.byteLength);return w.set(new Uint8Array(p)),w.buffer}function $(){return this.bodyUsed=!1,this._initBody=function(p){this.bodyUsed=this.bodyUsed,this._bodyInit=p,p?typeof p=="string"?this._bodyText=p:h.blob&&Blob.prototype.isPrototypeOf(p)?this._bodyBlob=p:h.formData&&FormData.prototype.isPrototypeOf(p)?this._bodyFormData=p:h.searchParams&&URLSearchParams.prototype.isPrototypeOf(p)?this._bodyText=p.toString():h.arrayBuffer&&h.blob&&v(p)?(this._bodyArrayBuffer=_(p.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):h.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(p)||l(p))?this._bodyArrayBuffer=_(p):this._bodyText=p=Object.prototype.toString.call(p):this._bodyText="",this.headers.get("content-type")||(typeof p=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):h.searchParams&&URLSearchParams.prototype.isPrototypeOf(p)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},h.blob&&(this.blob=function(){var p=S(this);if(p)return p;if(this._bodyBlob)return s.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return s.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return s.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){if(this._bodyArrayBuffer){var p=S(this);return p||(ArrayBuffer.isView(this._bodyArrayBuffer)?s.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):s.resolve(this._bodyArrayBuffer))}else return this.blob().then(O)}),this.text=function(){var p=S(this);if(p)return p;if(this._bodyBlob)return M(this._bodyBlob);if(this._bodyArrayBuffer)return s.resolve(D(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return s.resolve(this._bodyText)},h.formData&&(this.formData=function(){return this.text().then(F)}),this.json=function(){return this.text().then(JSON.parse)},this}var R=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function B(p){var w=p.toUpperCase();return R.indexOf(w)>-1?w:p}function A(p,w){if(!(this instanceof A))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');w=w||{};var k=w.body;if(p instanceof A){if(p.bodyUsed)throw new TypeError("Already read");this.url=p.url,this.credentials=p.credentials,w.headers||(this.headers=new g(p.headers)),this.method=p.method,this.mode=p.mode,this.signal=p.signal,!k&&p._bodyInit!=null&&(k=p._bodyInit,p.bodyUsed=!0)}else this.url=String(p);if(this.credentials=w.credentials||this.credentials||"same-origin",(w.headers||!this.headers)&&(this.headers=new g(w.headers)),this.method=B(w.method||this.method||"GET"),this.mode=w.mode||this.mode||null,this.signal=w.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&k)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(k),(this.method==="GET"||this.method==="HEAD")&&(w.cache==="no-store"||w.cache==="no-cache")){var H=/([?&])_=[^&]*/;if(H.test(this.url))this.url=this.url.replace(H,"$1_="+new Date().getTime());else{var C=/\?/;this.url+=(C.test(this.url)?"&":"?")+"_="+new Date().getTime()}}}A.prototype.clone=function(){return new A(this,{body:this._bodyInit})};function F(p){var w=new FormData;return p.trim().split("&").forEach(function(k){if(k){var H=k.split("="),C=H.shift().replace(/\+/g," "),L=H.join("=").replace(/\+/g," ");w.append(decodeURIComponent(C),decodeURIComponent(L))}}),w}function z(p){var w=new g,k=p.replace(/\r?\n[\t ]+/g," ");return k.split("\r").map(function(H){return H.indexOf(`
|
|
20
|
+
`)===0?H.substr(1,H.length):H}).forEach(function(H){var C=H.split(":"),L=C.shift().trim();if(L){var Fe=C.join(":").trim();w.append(L,Fe)}}),w}$.call(A.prototype);function V(p,w){if(!(this instanceof V))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');w||(w={}),this.type="default",this.status=w.status===void 0?200:w.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in w?w.statusText:"",this.headers=new g(w.headers),this.url=w.url||"",this._initBody(p)}$.call(V.prototype),V.prototype.clone=function(){return new V(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new g(this.headers),url:this.url})},V.error=function(){var p=new V(null,{status:0,statusText:""});return p.type="error",p};var ke=[301,302,303,307,308];V.redirect=function(p,w){if(ke.indexOf(w)===-1)throw new RangeError("Invalid status code");return new V(null,{status:w,headers:{location:p}})},c.DOMException=d.DOMException;try{new c.DOMException}catch{c.DOMException=function(w,k){this.message=w,this.name=k;var H=Error(w);this.stack=H.stack},c.DOMException.prototype=Object.create(Error.prototype),c.DOMException.prototype.constructor=c.DOMException}function Ae(p,w){return new s(function(k,H){var C=new A(p,w);if(C.signal&&C.signal.aborted)return H(new c.DOMException("Aborted","AbortError"));var L=new o;function Fe(){L.abort()}L.onload=function(){var W={status:L.status,statusText:L.statusText,headers:z(L.getAllResponseHeaders()||"")};W.url="responseURL"in L?L.responseURL:W.headers.get("X-Request-URL");var Nt="response"in L?L.response:L.responseText;setTimeout(function(){k(new V(Nt,W))},0)},L.onerror=function(){setTimeout(function(){H(new TypeError("Network request failed"))},0)},L.ontimeout=function(){setTimeout(function(){H(new TypeError("Network request failed"))},0)},L.onabort=function(){setTimeout(function(){H(new c.DOMException("Aborted","AbortError"))},0)};function ie(W){try{return W===""&&d.location.href?d.location.href:W}catch{return W}}L.open(C.method,ie(C.url),!0),C.credentials==="include"?L.withCredentials=!0:C.credentials==="omit"&&(L.withCredentials=!1),"responseType"in L&&(h.blob?L.responseType="blob":h.arrayBuffer&&C.headers.get("Content-Type")&&C.headers.get("Content-Type").indexOf("application/octet-stream")!==-1&&(L.responseType="arraybuffer")),w&&typeof w.headers=="object"&&!(w.headers instanceof g)?Object.getOwnPropertyNames(w.headers).forEach(function(W){L.setRequestHeader(W,y(w.headers[W]))}):C.headers.forEach(function(W,Nt){L.setRequestHeader(Nt,W)}),C.signal&&(C.signal.addEventListener("abort",Fe),L.onreadystatechange=function(){L.readyState===4&&C.signal.removeEventListener("abort",Fe)}),L.send(typeof C._bodyInit=="undefined"?null:C._bodyInit)})}Ae.polyfill=!0,d.fetch||(d.fetch=Ae,d.Headers=g,d.Request=A,d.Response=V),c.Headers=g,c.Request=A,c.Response=V,c.fetch=Ae,Object.defineProperty(c,"__esModule",{value:!0})}),{fetch:u.fetch,Headers:u.Headers,Request:u.Request,Response:u.Response,DOMException:u.DOMException}}()}t.exports=n})(typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:Jt)})(Xt,Xt.exports);var ss=Xt.exports;const os=Yr(ss);var as=Object.defineProperty,cs=(t,e,r)=>e in t?as(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ae=(t,e,r)=>cs(t,typeof e!="symbol"?e+"":e,r);const Me="nhostRefreshToken",Qe="nhostRefreshTokenId",Se="nhostRefreshTokenExpiresAt",Wr=3,Qt=60,Zt=5,er=0,tr=1,ce=10,Le=20;let be=class extends Error{constructor(e){super(e.message),ae(this,"error"),Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor),e instanceof Error?(this.name=e.name,this.error={error:e.name,status:tr,message:e.message}):(this.name=e.error,this.error=e)}};const ue={status:ce,error:"invalid-email",message:"Email is incorrectly formatted"},Jr={status:ce,error:"invalid-mfa-type",message:"MFA type is invalid"},Xr={status:ce,error:"invalid-mfa-code",message:"MFA code is invalid"},bt={status:ce,error:"invalid-password",message:"Password is incorrectly formatted"},rr={status:ce,error:"invalid-phone-number",message:"Phone number is incorrectly formatted"},Qr={status:ce,error:"invalid-mfa-ticket",message:"MFA ticket is invalid"},Zr={status:ce,error:"no-mfa-ticket",message:"No MFA ticket has been provided"},en={status:ce,error:"no-refresh-token",message:"No refresh token has been provided"},tn={status:Le,error:"refresher-already-running",message:"The token refresher is already running. You must wait until is has finished before submitting a new token."},ee={status:Le,error:"already-signed-in",message:"User is already signed in"},rn={status:Le,error:"unauthenticated-user",message:"User is not authenticated"},us={status:Le,error:"user-not-anonymous",message:"User is not anonymous"},nn={status:Le,error:"unverified-user",message:"Email needs verification"},sn={status:ce,error:"invalid-refresh-token",message:"Invalid or expired refresh token"},on={status:tr,error:"invalid-sign-in-method",message:"Invalid sign-in method"},kt={user:null,mfa:null,accessToken:{value:null,expiresAt:null,expiresInSeconds:15},refreshTimer:{startedAt:null,attempts:0,lastAttempt:null},refreshToken:{value:null},importTokenAttempts:0,errors:{}};function ls(t){return new TextEncoder().encode(t)}function ye(t){const e=new Uint8Array(t);let r="";for(const n of e)r+=String.fromCharCode(n);return btoa(r).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function nr(t){const e=t.replace(/-/g,"+").replace(/_/g,"/"),r=(4-e.length%4)%4,n=e.padEnd(e.length+r,"="),i=atob(n),s=new ArrayBuffer(i.length),o=new Uint8Array(s);for(let u=0;u<i.length;u++)o[u]=i.charCodeAt(u);return s}function an(){return(window==null?void 0:window.PublicKeyCredential)!==void 0&&typeof window.PublicKeyCredential=="function"}function cn(t){const{id:e}=t;return{...t,id:nr(e),transports:t.transports}}function un(t){return t==="localhost"||/^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/i.test(t)}class Z extends Error{constructor({message:e,code:r,cause:n,name:i}){super(e,{cause:n}),this.name=i!=null?i:n.name,this.code=r}}function ds({error:t,options:e}){var r,n;const{publicKey:i}=e;if(!i)throw Error("options was missing required publicKey property");if(t.name==="AbortError"){if(e.signal instanceof AbortSignal)return new Z({message:"Registration ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:t})}else if(t.name==="ConstraintError"){if(((r=i.authenticatorSelection)==null?void 0:r.requireResidentKey)===!0)return new Z({message:"Discoverable credentials were required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_DISCOVERABLE_CREDENTIAL_SUPPORT",cause:t});if(((n=i.authenticatorSelection)==null?void 0:n.userVerification)==="required")return new Z({message:"User verification was required but no available authenticator supported it",code:"ERROR_AUTHENTICATOR_MISSING_USER_VERIFICATION_SUPPORT",cause:t})}else{if(t.name==="InvalidStateError")return new Z({message:"The authenticator was previously registered",code:"ERROR_AUTHENTICATOR_PREVIOUSLY_REGISTERED",cause:t});if(t.name==="NotAllowedError")return new Z({message:t.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t});if(t.name==="NotSupportedError")return i.pubKeyCredParams.filter(s=>s.type==="public-key").length===0?new Z({message:'No entry in pubKeyCredParams was of type "public-key"',code:"ERROR_MALFORMED_PUBKEYCREDPARAMS",cause:t}):new Z({message:"No available authenticator supported any of the specified pubKeyCredParams algorithms",code:"ERROR_AUTHENTICATOR_NO_SUPPORTED_PUBKEYCREDPARAMS_ALG",cause:t});if(t.name==="SecurityError"){const s=window.location.hostname;if(un(s)){if(i.rp.id!==s)return new Z({message:`The RP ID "${i.rp.id}" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:t})}else return new Z({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:t})}else if(t.name==="TypeError"){if(i.user.id.byteLength<1||i.user.id.byteLength>64)return new Z({message:"User ID was not between 1 and 64 characters",code:"ERROR_INVALID_USER_ID_LENGTH",cause:t})}else if(t.name==="UnknownError")return new Z({message:"The authenticator was unable to process the specified options, or could not create a new credential",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:t})}return t}class hs{createNewAbortSignal(){if(this.controller){const r=new Error("Cancelling existing WebAuthn API call for new one");r.name="AbortError",this.controller.abort(r)}const e=new AbortController;return this.controller=e,e.signal}cancelCeremony(){if(this.controller){const e=new Error("Manually cancelling existing WebAuthn API call");e.name="AbortError",this.controller.abort(e),this.controller=void 0}}}const ln=new hs,fs=["cross-platform","platform"];function dn(t){if(t&&!(fs.indexOf(t)<0))return t}async function hn(t){var e;if(!an())throw new Error("WebAuthn is not supported in this browser");const r={publicKey:{...t,challenge:nr(t.challenge),user:{...t.user,id:ls(t.user.id)},excludeCredentials:(e=t.excludeCredentials)==null?void 0:e.map(cn)}};r.signal=ln.createNewAbortSignal();let n;try{n=await navigator.credentials.create(r)}catch(a){throw ds({error:a,options:r})}if(!n)throw new Error("Registration was not completed");const{id:i,rawId:s,response:o,type:u}=n;let c;typeof o.getTransports=="function"&&(c=o.getTransports());let d;if(typeof o.getPublicKeyAlgorithm=="function")try{d=o.getPublicKeyAlgorithm()}catch(a){ir("getPublicKeyAlgorithm()",a)}let h;if(typeof o.getPublicKey=="function")try{const a=o.getPublicKey();a!==null&&(h=ye(a))}catch(a){ir("getPublicKey()",a)}let v;if(typeof o.getAuthenticatorData=="function")try{v=ye(o.getAuthenticatorData())}catch(a){ir("getAuthenticatorData()",a)}return{id:i,rawId:ye(s),response:{attestationObject:ye(o.attestationObject),clientDataJSON:ye(o.clientDataJSON),transports:c,publicKeyAlgorithm:d,publicKey:h,authenticatorData:v},type:u,clientExtensionResults:n.getClientExtensionResults(),authenticatorAttachment:dn(n.authenticatorAttachment)}}function ir(t,e){console.warn(`The browser extension that intercepted this WebAuthn API call incorrectly implemented ${t}. You should report this error to them.
|
|
21
|
+
`,e)}function ps(t){return new TextDecoder("utf-8").decode(t)}function vs(){const t=window.PublicKeyCredential;return t.isConditionalMediationAvailable===void 0?new Promise(e=>e(!1)):t.isConditionalMediationAvailable()}function ys({error:t,options:e}){const{publicKey:r}=e;if(!r)throw Error("options was missing required publicKey property");if(t.name==="AbortError"){if(e.signal instanceof AbortSignal)return new Z({message:"Authentication ceremony was sent an abort signal",code:"ERROR_CEREMONY_ABORTED",cause:t})}else{if(t.name==="NotAllowedError")return new Z({message:t.message,code:"ERROR_PASSTHROUGH_SEE_CAUSE_PROPERTY",cause:t});if(t.name==="SecurityError"){const n=window.location.hostname;if(un(n)){if(r.rpId!==n)return new Z({message:`The RP ID "${r.rpId}" is invalid for this domain`,code:"ERROR_INVALID_RP_ID",cause:t})}else return new Z({message:`${window.location.hostname} is an invalid domain`,code:"ERROR_INVALID_DOMAIN",cause:t})}else if(t.name==="UnknownError")return new Z({message:"The authenticator was unable to process the specified options, or could not create a new assertion signature",code:"ERROR_AUTHENTICATOR_GENERAL_ERROR",cause:t})}return t}async function sr(t,e=!1){var r,n;if(!an())throw new Error("WebAuthn is not supported in this browser");let i;((r=t.allowCredentials)==null?void 0:r.length)!==0&&(i=(n=t.allowCredentials)==null?void 0:n.map(cn));const s={...t,challenge:nr(t.challenge),allowCredentials:i},o={};if(e){if(!await vs())throw Error("Browser does not support WebAuthn autofill");if(document.querySelectorAll("input[autocomplete$='webauthn']").length<1)throw Error('No <input> with "webauthn" as the only or last value in its `autocomplete` attribute was detected');o.mediation="conditional",s.allowCredentials=[]}o.publicKey=s,o.signal=ln.createNewAbortSignal();let u;try{u=await navigator.credentials.get(o)}catch(l){throw ys({error:l,options:o})}if(!u)throw new Error("Authentication was not completed");const{id:c,rawId:d,response:h,type:v}=u;let a;return h.userHandle&&(a=ps(h.userHandle)),{id:c,rawId:ye(d),response:{authenticatorData:ye(h.authenticatorData),clientDataJSON:ye(h.clientDataJSON),signature:ye(h.signature),userHandle:a},type:v,clientExtensionResults:u.getClientExtensionResults(),authenticatorAttachment:dn(u.authenticatorAttachment)}}const At=typeof window!="undefined",Ot=new Map,ms=t=>{var e;return At&&typeof localStorage!="undefined"?localStorage.getItem(t):(e=Ot.get(t))!=null?e:null},gs=(t,e)=>{At&&typeof localStorage!="undefined"?e?localStorage.setItem(t,e):localStorage.removeItem(t):e?Ot.set(t,e):Ot.has(t)&&Ot.delete(t)},fn=(t,e)=>{if(t==="localStorage"||t==="web")return ms;if(t==="cookie")return r=>{var n;return At&&(n=Wt.get(r))!=null?n:null};if(!e)throw Error(`clientStorageType is set to '${t}' but no clientStorage has been given`);if(t==="react-native")return r=>{var n;return(n=e.getItem)==null?void 0:n.call(e,r)};if(t==="capacitor")return r=>{var n;return(n=e.get)==null?void 0:n.call(e,{key:r})};if(t==="expo-secure-storage")return r=>{var n;return(n=e.getItemAsync)==null?void 0:n.call(e,r)};if(t==="custom"){if(e.getItem&&e.removeItem)return e.getItem;if(e.getItemAsync)return e.getItemAsync;throw Error(`clientStorageType is set to 'custom' but clientStorage is missing either "getItem" and "removeItem" properties or "getItemAsync" property`)}throw Error(`Unknown storage type: ${t}`)},pn=(t,e)=>{if(t==="localStorage"||t==="web")return gs;if(t==="cookie")return(r,n)=>{At&&(n?Wt.set(r,n,{expires:30,sameSite:"lax",httpOnly:!1}):Wt.remove(r))};if(!e)throw Error(`clientStorageType is set to '${t}' but no clienStorage has been given`);if(t==="react-native")return(r,n)=>{var i,s;return n?(i=e.setItem)==null?void 0:i.call(e,r,n):(s=e.removeItem)==null?void 0:s.call(e,r)};if(t==="capacitor")return(r,n)=>{var i,s;return n?(i=e.set)==null?void 0:i.call(e,{key:r,value:n}):(s=e.remove)==null?void 0:s.call(e,{key:r})};if(t==="expo-secure-storage")return async(r,n)=>{var i,s;return n?(i=e.setItemAsync)==null?void 0:i.call(e,r,n):(s=e.deleteItemAsync)==null?void 0:s.call(e,r)};if(t==="custom"){if(!e.removeItem)throw Error("clientStorageType is set to 'custom' but clientStorage is missing a removeItem property");if(e.setItem)return(r,n)=>{var i,s;return n?(i=e.setItem)==null?void 0:i.call(e,r,n):(s=e.removeItem)==null?void 0:s.call(e,r)};if(e.setItemAsync)return async(r,n)=>{var i,s;return n?(i=e.setItemAsync)==null?void 0:i.call(e,r,n):(s=e.removeItem)==null?void 0:s.call(e,r)};throw Error("clientStorageType is set to 'custom' but clientStorage is missing setItem or setItemAsync property")}throw Error(`Unknown storage type: ${t}`)},Ze=t=>!t||!t.accessToken.value||!t.accessToken.expiresAt||!t.user?null:{accessToken:t.accessToken.value,accessTokenExpiresIn:(t.accessToken.expiresAt.getTime()-Date.now())/1e3,refreshToken:t.refreshToken.value,user:t.user},se=({accessToken:t,refreshToken:e,isError:r,user:n,error:i})=>r?{session:null,error:i}:n&&t?{session:{accessToken:t,accessTokenExpiresIn:0,refreshToken:e,user:n},error:null}:{session:null,error:null},et=()=>typeof window!="undefined"&&typeof window.location!="undefined";let vn=globalThis.fetch;typeof EdgeRuntime!="string"&&(vn=os().fetch);const yn=async(t,e,{token:r,body:n,extraHeaders:i}={})=>{const s={"Content-Type":"application/json",Accept:"*/*"};r&&(s.Authorization=`Bearer ${r}`);const o={...s,...i},u={method:e,headers:o};n&&(u.body=JSON.stringify(n));try{const c=await vn(t,u);if(!c.ok){const d=await c.json();return Promise.reject({error:d})}try{return{data:await c.json(),error:null}}catch{return console.warn(`Unexpected response: can't parse the response of the server at ${t}`),{data:"OK",error:null}}}catch{const c={message:"Network Error",status:er,error:"network"};return Promise.reject({error:c})}},re=async(t,e,r,n)=>yn(t,"POST",{token:r,body:e,extraHeaders:n}),mn=(t,e)=>yn(t,"GET",{token:e}),It=(t,e)=>{const r=e&&Object.entries(e).map(([n,i])=>{const s=Array.isArray(i)?i.join(","):typeof i=="object"?JSON.stringify(i):i;return`${n}=${encodeURIComponent(s)}`}).join("&");return r?`${t}?${r}`:t},ne=(t,e)=>{if(!(e!=null&&e.redirectTo))return e;const{redirectTo:r,...n}=e;if(!t)return r.startsWith("/")?n:e;const i=new URL(t),s=Object.fromEntries(new URLSearchParams(i.search)),o=new URL(r.startsWith("/")?i.origin+r:r),u=new URLSearchParams(o.search);let c=Object.fromEntries(u);r.startsWith("/")&&(c={...s,...c});let d=i.pathname;return o.pathname.length>1&&(d+=o.pathname.slice(1)),{...n,redirectTo:It(o.origin+d,c)}};function tt(t,e){var r;if(!e){if(typeof window=="undefined")return;e=((r=window.location)==null?void 0:r.href)||""}t=t.replace(/[\[\]]/g,"\\$&");const n=new RegExp("[?&#]"+t+"(=([^&#]*)|&|#|$)"),i=n.exec(e);return i?i[2]?decodeURIComponent(i[2].replace(/\+/g," ")):"":null}function or(t){var e;if(typeof window=="undefined")return;const r=window==null?void 0:window.location;if(r&&r){const n=new URLSearchParams(r.search),i=new URLSearchParams((e=r.hash)==null?void 0:e.slice(1));n.delete(t),i.delete(t);let s=window.location.pathname;Array.from(n).length&&(s+=`?${n.toString()}`),Array.from(i).length&&(s+=`#${i.toString()}`),window.history.pushState({},"",s)}}const le=t=>!!t&&typeof t=="string"&&!!String(t).toLowerCase().match(/^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/),Rt=t=>!!t&&typeof t=="string"&&t.length>=Wr,ar=t=>!!t&&typeof t=="string",gn=t=>t&&typeof t=="string"&&t.match(/^mfaTotp:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i),En=({backendUrl:t,clientUrl:e,broadcastKey:r,clientStorageType:n="web",clientStorage:i,refreshIntervalTime:s,autoRefreshToken:o=!0,autoSignIn:u=!0})=>{const c=fn(n,i),d=pn(n,i),h=async(a,l,f,y)=>(await re(`${t}${a}`,l,f,y)).data;let v=null;if(typeof window!="undefined"&&r)try{v=new BroadcastChannel(r)}catch{}return Ee({schema:{context:{},events:{},services:{}},tsTypes:{},context:kt,predictableActionArguments:!0,id:"nhost",type:"parallel",states:{authentication:{initial:"starting",on:{SESSION_UPDATE:[{cond:"hasSession",actions:["saveSession","resetTimer","reportTokenChanged"],target:".signedIn"}]},states:{starting:{tags:["loading"],always:{cond:"isSignedIn",target:"signedIn"},invoke:{id:"importRefreshToken",src:"importRefreshToken",onDone:[{cond:"hasSession",actions:["saveSession","reportTokenChanged"],target:"signedIn"},{target:"signedOut"}],onError:[{cond:"shouldRetryImportToken",actions:"incrementTokenImportAttempts",target:"retryTokenImport"},{actions:["saveAuthenticationError"],target:"signedOut"}]}},retryTokenImport:{tags:["loading"],after:{RETRY_IMPORT_TOKEN_DELAY:"starting"}},signedOut:{initial:"noErrors",entry:"reportSignedOut",states:{noErrors:{},success:{},needsSmsOtp:{},needsMfa:{},failed:{},signingOut:{entry:["clearContextExceptTokens"],exit:["destroyAccessToken","destroyRefreshToken","reportTokenChanged"],invoke:{src:"signout",id:"signingOut",onDone:{target:"success"},onError:{target:"failed",actions:["saveAuthenticationError"]}}}},on:{SIGNIN_PASSWORD:"authenticating.password",SIGNIN_ANONYMOUS:"authenticating.anonymous",SIGNIN_SECURITY_KEY_EMAIL:"authenticating.securityKeyEmail",SIGNIN_SECURITY_KEY:"authenticating.securityKey",SIGNIN_MFA_TOTP:"authenticating.mfa.totp",SIGNIN_PAT:"authenticating.pat",SIGNIN_ID_TOKEN:"authenticating.idToken"}},authenticating:{entry:"resetErrors",states:{password:{invoke:{src:"signInPassword",id:"authenticateUserWithPassword",onDone:[{cond:"hasMfaTicket",actions:["saveMfaTicket"],target:"#nhost.authentication.signedOut.needsMfa"},{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"}],onError:[{cond:"unverified",target:["#nhost.authentication.signedOut","#nhost.registration.incomplete.needsEmailVerification"]},{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}]}},pat:{invoke:{src:"signInPAT",id:"authenticateWithPAT",onDone:{actions:["savePATSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}}},idToken:{invoke:{src:"signInIdToken",id:"authenticateWithIdToken",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}}},anonymous:{invoke:{src:"signInAnonymous",id:"authenticateAnonymously",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}}},mfa:{states:{totp:{invoke:{src:"signInMfaTotp",id:"signInMfaTotp",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:["saveAuthenticationError"],target:"#nhost.authentication.signedOut.failed"}}}}},securityKeyEmail:{invoke:{src:"signInSecurityKeyEmail",id:"authenticateUserWithSecurityKey",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:[{cond:"unverified",target:["#nhost.authentication.signedOut","#nhost.registration.incomplete.needsEmailVerification"]},{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}]}},securityKey:{invoke:{src:"signInSecurityKey",id:"authenticateUserWithSecurityKey",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:[{cond:"unverified",target:["#nhost.authentication.signedOut","#nhost.registration.incomplete.needsEmailVerification"]},{actions:"saveAuthenticationError",target:"#nhost.authentication.signedOut.failed"}]}}}},signedIn:{type:"parallel",entry:["reportSignedIn","cleanUrl","broadcastToken","resetErrors"],on:{SIGNOUT:"signedOut.signingOut"},states:{refreshTimer:{id:"timer",initial:"idle",states:{disabled:{type:"final"},stopped:{always:{cond:"noToken",target:"idle"}},idle:{always:[{cond:"isAutoRefreshDisabled",target:"disabled"},{cond:"isRefreshTokenPAT",target:"disabled"},{cond:"hasRefreshToken",target:"running"}]},running:{initial:"pending",entry:"resetTimer",states:{pending:{after:{1e3:{internal:!1,target:"pending"}},always:{cond:"refreshTimerShouldRefresh",target:"refreshing"}},refreshing:{invoke:{src:"refreshToken",id:"refreshToken",onDone:{actions:["saveSession","resetTimer","reportTokenChanged","broadcastToken"],target:"pending"},onError:[{cond:"isUnauthorizedError",target:"#nhost.authentication.signedOut"},{actions:"saveRefreshAttempt",target:"pending"}]}}}}}}}}}},token:{initial:"idle",states:{idle:{on:{TRY_TOKEN:"running"},initial:"noErrors",states:{noErrors:{},error:{}}},running:{invoke:{src:"refreshToken",id:"authenticateWithToken",onDone:{actions:["saveSession","reportTokenChanged","broadcastToken"],target:["#nhost.authentication.signedIn","idle.noErrors"]},onError:[{cond:"isSignedIn",target:"idle.error"},{actions:"saveAuthenticationError",target:["#nhost.authentication.signedOut.failed","idle.error"]}]}}}},registration:{initial:"incomplete",on:{SIGNED_IN:[{cond:"isAnonymous",target:".incomplete"},".complete"]},states:{incomplete:{on:{SIGNUP_EMAIL_PASSWORD:"emailPassword",SIGNUP_SECURITY_KEY:"securityKey",PASSWORDLESS_EMAIL:"passwordlessEmail",PASSWORDLESS_SMS:"passwordlessSms",PASSWORDLESS_SMS_OTP:"passwordlessSmsOtp",SIGNIN_EMAIL_OTP:"signInEmailOTP",VERIFY_EMAIL_OTP:"verifyEmailOTP"},initial:"noErrors",states:{noErrors:{},needsEmailVerification:{},needsOtp:{},failed:{}}},emailPassword:{entry:["resetErrors"],invoke:{src:"signUpEmailPassword",id:"signUpEmailPassword",onDone:[{cond:"hasSession",actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsEmailVerification"]}],onError:[{cond:"unverified",target:"incomplete.needsEmailVerification"},{actions:"saveRegistrationError",target:"incomplete.failed"}]}},securityKey:{entry:["resetErrors"],invoke:{src:"signUpSecurityKey",id:"signUpSecurityKey",onDone:[{cond:"hasSession",actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsEmailVerification"]}],onError:[{cond:"unverified",target:"incomplete.needsEmailVerification"},{actions:"saveRegistrationError",target:"incomplete.failed"}]}},passwordlessEmail:{entry:["resetErrors"],invoke:{src:"passwordlessEmail",id:"passwordlessEmail",onDone:{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsEmailVerification"]},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},passwordlessSms:{entry:["resetErrors"],invoke:{src:"passwordlessSms",id:"passwordlessSms",onDone:{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsOtp"]},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},passwordlessSmsOtp:{entry:["resetErrors"],invoke:{src:"passwordlessSmsOtp",id:"passwordlessSmsOtp",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},signInEmailOTP:{entry:["resetErrors"],invoke:{src:"signInEmailOTP",id:"signInEmailOTP",onDone:{actions:"clearContext",target:["#nhost.authentication.signedOut","incomplete.needsOtp"]},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},verifyEmailOTP:{entry:["resetErrors"],invoke:{src:"verifyEmailOTP",id:"verifyEmailOTP",onDone:{actions:["saveSession","reportTokenChanged"],target:"#nhost.authentication.signedIn"},onError:{actions:"saveRegistrationError",target:"incomplete.failed"}}},complete:{on:{SIGNED_OUT:"incomplete"}}}}}},{actions:{reportSignedIn:X("SIGNED_IN"),reportSignedOut:X("SIGNED_OUT"),reportTokenChanged:X("TOKEN_CHANGED"),incrementTokenImportAttempts:I({importTokenAttempts:({importTokenAttempts:a})=>a+1}),clearContext:I(()=>(d(Se,null),d(Me,null),d(Qe,null),{...kt})),clearContextExceptTokens:I(({accessToken:a,refreshToken:l})=>({...kt,accessToken:a,refreshToken:l})),saveSession:I({user:(a,{data:l})=>{var f;return((f=l==null?void 0:l.session)==null?void 0:f.user)||null},accessToken:(a,{data:l})=>{if(l.session){const{accessTokenExpiresIn:f,accessToken:y}=l.session,T=new Date(Date.now()+f*1e3);return d(Se,T.toISOString()),{value:y,expiresAt:T,expiresInSeconds:f}}return d(Se,null),{value:null,expiresAt:null,expiresInSeconds:null}},refreshToken:(a,{data:l})=>{var f,y;const T=((f=l.session)==null?void 0:f.refreshToken)||null,g=((y=l.session)==null?void 0:y.refreshTokenId)||null;return T&&d(Me,T),g&&d(Qe,g),{value:T}}}),savePATSession:I({user:(a,{data:l})=>{var f;return((f=l==null?void 0:l.session)==null?void 0:f.user)||null},accessToken:(a,{data:l})=>{if(l.session){const{accessTokenExpiresIn:f,accessToken:y}=l.session,T=new Date(Date.now()+f*1e3);return d(Se,T.toISOString()),{value:y,expiresAt:T,expiresInSeconds:f}}return d(Se,null),{value:null,expiresAt:null,expiresInSeconds:null}},refreshToken:(a,{data:l})=>{var f,y;const T=((f=l.session)==null?void 0:f.refreshToken)||null,g=((y=l.session)==null?void 0:y.refreshTokenId)||null;return T&&d(Me,T),g&&d(Qe,g),{value:T,isPAT:!0}}}),saveMfaTicket:I({mfa:(a,l)=>{var f;return(f=l.data)==null?void 0:f.mfa}}),resetTimer:I({refreshTimer:a=>({startedAt:new Date,attempts:0,lastAttempt:null})}),saveRefreshAttempt:I({refreshTimer:(a,l)=>({startedAt:a.refreshTimer.startedAt,attempts:a.refreshTimer.attempts+1,lastAttempt:new Date})}),saveAuthenticationError:I({errors:({errors:a},{data:{error:l}})=>({...a,authentication:l})}),resetErrors:I({errors:a=>({}),importTokenAttempts:a=>0}),saveRegistrationError:I({errors:({errors:a},{data:{error:l}})=>({...a,registration:l})}),destroyRefreshToken:I({refreshToken:a=>(d(Me,null),d(Qe,null),{value:null})}),destroyAccessToken:I({accessToken:a=>(d(Se,null),{value:null,expiresAt:null,expiresInSeconds:null})}),cleanUrl:()=>{u&&tt("refreshToken")&&(or("refreshToken"),or("type"))},broadcastToken:a=>{if(u&&r&&v)try{v.postMessage({type:"broadcast_session",payload:{token:a.refreshToken.value,accessToken:a.accessToken.value,user:a.user,expiresAt:a.accessToken.expiresAt?a.accessToken.expiresAt.toISOString():null,expiresInSeconds:a.accessToken.expiresInSeconds}})}catch{}}},guards:{isAnonymous:(a,l)=>{var f;return!!((f=a.user)!=null&&f.isAnonymous)},isSignedIn:a=>!!a.user&&!!a.accessToken.value,noToken:a=>!a.refreshToken.value,isRefreshTokenPAT:a=>{var l;return!!((l=a.refreshToken)!=null&&l.isPAT)},hasRefreshToken:a=>!!a.refreshToken.value,isAutoRefreshDisabled:()=>!o,refreshTimerShouldRefresh:a=>{const{expiresAt:l}=a.accessToken;if(!l)return!1;if(a.refreshTimer.lastAttempt)return a.refreshTimer.attempts>Zt?!1:Date.now()-a.refreshTimer.lastAttempt.getTime()>Math.pow(2,a.refreshTimer.attempts-1)*5e3;if(l.getTime()<Date.now()||s&&Date.now()-a.refreshTimer.startedAt.getTime()>s*1e3)return!0;if(!a.accessToken.expiresInSeconds)return!1;const f=l.getTime()-Date.now();return f<=Qt*1e3/2||f<=Qt*1e3&&Math.random()<.1},shouldRetryImportToken:(a,l)=>a.importTokenAttempts<Zt&&(l.data.error.status===er||l.data.error.status>=500),unverified:(a,{data:{error:l}})=>l.status===401&&(l.message==="Email is not verified"||l.error==="unverified-user"),hasSession:(a,l)=>{var f;return!!((f=l.data)!=null&&f.session)},hasMfaTicket:(a,l)=>{var f;return!!((f=l.data)!=null&&f.mfa)},isUnauthorizedError:(a,{data:{error:l}})=>l.status===401},services:{signInPassword:(a,{email:l,password:f})=>le(l)?Rt(f)?h("/signin/email-password",{email:l,password:f}):Promise.reject({error:bt}):Promise.reject({error:ue}),signInPAT:(a,{pat:l})=>h("/signin/pat",{personalAccessToken:l}),signInIdToken:(a,{provider:l,idToken:f,nonce:y})=>h("/signin/idtoken",{provider:l,idToken:f,...y&&{nonce:y}}),passwordlessSms:(a,{phoneNumber:l,options:f})=>{var y;return ar(l)?(y=a.user)!=null&&y.isAnonymous?(console.warn("Deanonymisation from a phone number is not yet implemented in hasura-auth"),h("/user/deanonymize",{signInMethod:"passwordless",connection:"sms",phoneNumber:l,options:ne(e,f)},a.accessToken.value)):h("/signin/passwordless/sms",{phoneNumber:l,options:ne(e,f)}):Promise.reject({error:rr})},passwordlessSmsOtp:(a,{phoneNumber:l,otp:f})=>ar(l)?h("/signin/passwordless/sms/otp",{phoneNumber:l,otp:f}):Promise.reject({error:rr}),signInEmailOTP:(a,{email:l,options:f})=>le(l)?h("/signin/otp/email",{email:l,options:ne(e,f)}):Promise.reject({error:ue}),verifyEmailOTP:(a,{email:l,otp:f})=>le(l)?h("/signin/otp/email/verify",{email:l,otp:f}):Promise.reject({error:ue}),passwordlessEmail:(a,{email:l,options:f})=>{var y;return le(l)?(y=a.user)!=null&&y.isAnonymous?h("/user/deanonymize",{signInMethod:"passwordless",connection:"email",email:l,options:ne(e,f)},a.accessToken.value):h("/signin/passwordless/email",{email:l,options:ne(e,f)}):Promise.reject({error:ue})},signInAnonymous:a=>h("/signin/anonymous"),signInMfaTotp:(a,l)=>{var f;const y=l.ticket||((f=a.mfa)==null?void 0:f.ticket);return y?gn(y)?h("/signin/mfa/totp",{ticket:y,otp:l.otp}):Promise.reject({error:Qr}):Promise.reject({error:Zr})},signInSecurityKeyEmail:async(a,{email:l})=>{if(!le(l))throw new be(ue);const f=await h("/signin/webauthn",{email:l});let y;try{y=await sr(f)}catch(T){throw new be(T)}return h("/signin/webauthn/verify",{email:l,credential:y})},refreshToken:async(a,l)=>{const f=l.type==="TRY_TOKEN"?l.token:a.refreshToken.value;return{session:await h("/token",{refreshToken:f}),error:null}},signInSecurityKey:async()=>{try{const a=await h("/signin/webauthn",{});let l;try{l=await sr(a)}catch(f){throw new be(f)}return h("/signin/webauthn/verify",{credential:l})}catch(a){throw new be(a)}},signout:async(a,l)=>{const f=await h("/signout",{refreshToken:a.refreshToken.value,all:!!l.all},l.all?a.accessToken.value:void 0);if(r&&v)try{v.postMessage({type:"signout"})}catch{}return f},signUpEmailPassword:async(a,{email:l,password:f,options:y,requestOptions:T})=>{var g;return le(l)?Rt(f)?(g=a.user)!=null&&g.isAnonymous?h("/user/deanonymize",{signInMethod:"email-password",email:l,password:f,options:ne(e,y)},a.accessToken.value,T==null?void 0:T.headers):h("/signup/email-password",{email:l,password:f,options:ne(e,y)},null,T==null?void 0:T.headers):Promise.reject({error:bt}):Promise.reject({error:ue})},signUpSecurityKey:async(a,{email:l,options:f,requestOptions:y})=>{if(!le(l))return Promise.reject({error:ue});const T=f==null?void 0:f.nickname;T&&delete f.nickname;const g=await h("/signup/webauthn",{email:l,options:f},null,y==null?void 0:y.headers);let S;try{S=await hn(g)}catch(b){throw new be(b)}return h("/signup/webauthn/verify",{credential:S,options:{redirectTo:f==null?void 0:f.redirectTo,nickname:T,displayName:f==null?void 0:f.displayName,...(f==null?void 0:f.metadata)&&{metadata:f==null?void 0:f.metadata}}})},importRefreshToken:async a=>{if(a.user&&a.refreshToken.value&&a.accessToken.value&&a.accessToken.expiresAt)return{session:{accessToken:a.accessToken.value,accessTokenExpiresIn:a.accessToken.expiresAt.getTime()-Date.now(),refreshToken:a.refreshToken.value,user:a.user},error:null};let l=null;if(u){const y=tt("refreshToken")||null;if(y)try{return{session:await h("/token",{refreshToken:y}),error:null}}catch(T){l=T.error}else{const T=tt("error"),g=tt("errorDescription");if(T&&g!=="social user already exists")return Promise.reject({session:null,error:{status:ce,error:T,message:g||T}})}}const f=await c(Me);if(f)try{return{session:await h("/token",{refreshToken:f}),error:null}}catch(y){l=y.error}return l?Promise.reject({error:l,session:null}):{error:null,session:null}}},delays:{RETRY_IMPORT_TOKEN_DELAY:({importTokenAttempts:a})=>Math.pow(2,a-1)*5e3}})},wn=({backendUrl:t,clientUrl:e,interpreter:r})=>Ee({schema:{context:{},events:{},services:{}},tsTypes:{},predictableActionArguments:!0,id:"changeEmail",initial:"idle",context:{error:null},states:{idle:{on:{REQUEST:[{cond:"invalidEmail",actions:"saveInvalidEmailError",target:".error"},{target:"requesting"}]},initial:"initial",states:{initial:{},success:{},error:{}}},requesting:{invoke:{src:"requestChange",id:"requestChange",onDone:{target:"idle.success",actions:"reportSuccess"},onError:{actions:["saveRequestError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidEmailError:I({error:n=>ue}),saveRequestError:I({error:(n,{data:{error:i}})=>i}),reportError:X(n=>({type:"ERROR",error:n.error})),reportSuccess:X("SUCCESS")},guards:{invalidEmail:(n,{email:i})=>!le(i)},services:{requestChange:async(n,{email:i,options:s})=>(await re(`${t}/user/email/change`,{newEmail:i,options:ne(e,s)},r==null?void 0:r.getSnapshot().context.accessToken.value)).data}}),Tn=({backendUrl:t,interpreter:e})=>Ee({schema:{context:{},events:{},services:{}},tsTypes:{},predictableActionArguments:!0,id:"changePassword",initial:"idle",context:{error:null},states:{idle:{on:{REQUEST:[{cond:"invalidPassword",actions:"saveInvalidPasswordError",target:".error"},{target:"requesting"}]},initial:"initial",states:{initial:{},success:{},error:{}}},requesting:{invoke:{src:"requestChange",id:"requestChange",onDone:{target:"idle.success",actions:"reportSuccess"},onError:{actions:["saveRequestError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidPasswordError:I({error:r=>bt}),saveRequestError:I({error:(r,{data:{error:n}})=>n}),reportError:X(r=>({type:"ERROR",error:r.error})),reportSuccess:X("SUCCESS")},guards:{invalidPassword:(r,{password:n})=>!Rt(n)},services:{requestChange:(r,{password:n,ticket:i})=>re(`${t}/user/password`,{newPassword:n,ticket:i},e==null?void 0:e.getSnapshot().context.accessToken.value)}}),Es=({backendUrl:t,interpreter:e})=>Ee({schema:{context:{},events:{}},tsTypes:{},predictableActionArguments:!0,id:"enableMfa",initial:"idle",context:{error:null,imageUrl:null,secret:null},states:{idle:{initial:"initial",on:{GENERATE:"generating",DISABLE:"disabling"},states:{initial:{},error:{},disabled:{}}},generating:{invoke:{src:"generate",id:"generate",onDone:{target:"generated",actions:["reportGeneratedSuccess","saveGeneration"]},onError:{actions:["saveError","reportGeneratedError"],target:"idle.error"}}},generated:{initial:"idle",states:{idle:{initial:"idle",on:{ACTIVATE:[{cond:"invalidMfaType",actions:"saveInvalidMfaTypeError",target:".error"},{cond:"invalidMfaCode",actions:"saveInvalidMfaCodeError",target:".error"},{target:"activating"}],DISABLE:"#enableMfa.disabling"},states:{idle:{},error:{}}},activating:{invoke:{src:"activate",id:"activate",onDone:{target:"activated",actions:"reportSuccess"},onError:{actions:["saveError","reportError"],target:"idle.error"}}},activated:{type:"final"}}},disabling:{invoke:{src:"disable",id:"disable",onDone:{target:"idle.disabled",actions:"reportSuccess"},onError:{actions:["saveError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidMfaTypeError:I({error:r=>Jr}),saveInvalidMfaCodeError:I({error:r=>Xr}),saveError:I({error:(r,{data:{error:n}})=>n}),saveGeneration:I({imageUrl:(r,{data:{imageUrl:n}})=>n,secret:(r,{data:{totpSecret:n}})=>n}),reportError:X((r,n)=>({type:"ERROR",error:r.error})),reportSuccess:X("SUCCESS"),reportGeneratedSuccess:X("GENERATED"),reportGeneratedError:X(r=>({type:"GENERATED_ERROR",error:r.error}))},guards:{invalidMfaCode:(r,{code:n})=>!n,invalidMfaType:(r,{activeMfaType:n})=>!n||n!=="totp"},services:{generate:async r=>{const{data:n}=await mn(`${t}/mfa/totp/generate`,e==null?void 0:e.getSnapshot().context.accessToken.value);return n},activate:(r,{code:n,activeMfaType:i})=>re(`${t}/user/mfa`,{code:n,activeMfaType:i},e==null?void 0:e.getSnapshot().context.accessToken.value),disable:(r,{code:n})=>re(`${t}/user/mfa`,{code:n,activeMfaType:""},e==null?void 0:e.getSnapshot().context.accessToken.value)}}),Sn=({backendUrl:t,clientUrl:e})=>Ee({schema:{context:{},events:{},services:{}},tsTypes:{},predictableActionArguments:!0,id:"changePassword",initial:"idle",context:{error:null},states:{idle:{on:{REQUEST:[{cond:"invalidEmail",actions:"saveInvalidEmailError",target:".error"},{target:"requesting"}]},initial:"initial",states:{initial:{},success:{},error:{}}},requesting:{invoke:{src:"requestChange",id:"requestChange",onDone:{target:"idle.success",actions:"reportSuccess"},onError:{actions:["saveRequestError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidEmailError:I({error:r=>ue}),saveRequestError:I({error:(r,{data:{error:n}})=>n}),reportError:X(r=>({type:"ERROR",error:r.error})),reportSuccess:X("SUCCESS")},guards:{invalidEmail:(r,{email:n})=>!le(n)},services:{requestChange:(r,{email:n,options:i})=>re(`${t}/user/password/reset`,{email:n,options:ne(e,i)})}}),bn=({backendUrl:t,clientUrl:e})=>Ee({schema:{context:{},events:{},services:{}},tsTypes:{},predictableActionArguments:!0,id:"sendVerificationEmail",initial:"idle",context:{error:null},states:{idle:{on:{REQUEST:[{cond:"invalidEmail",actions:"saveInvalidEmailError",target:".error"},{target:"requesting"}]},initial:"initial",states:{initial:{},success:{},error:{}}},requesting:{invoke:{src:"request",id:"request",onDone:{target:"idle.success",actions:"reportSuccess"},onError:{actions:["saveRequestError","reportError"],target:"idle.error"}}}}},{actions:{saveInvalidEmailError:I({error:r=>ue}),saveRequestError:I({error:(r,{data:{error:n}})=>n}),reportError:X(r=>({type:"ERROR",error:r.error})),reportSuccess:X("SUCCESS")},guards:{invalidEmail:(r,{email:n})=>!le(n)},services:{request:async(r,{email:n,options:i})=>(await re(`${t}/user/email/send-verification-email`,{email:n,options:ne(e,i)})).data}});class cr{constructor({clientStorageType:e="web",autoSignIn:r=!0,autoRefreshToken:n=!0,start:i=!0,backendUrl:s,clientUrl:o,broadcastKey:u,devTools:c,...d}){ae(this,"backendUrl"),ae(this,"clientUrl"),ae(this,"_machine"),ae(this,"_interpreter"),ae(this,"_started",!1),ae(this,"_channel"),ae(this,"_subscriptionsQueue",new Set),ae(this,"_subscriptions",new Set);var h;if(this.backendUrl=s,this.clientUrl=o,this._machine=En({...d,backendUrl:s,clientUrl:o,broadcastKey:u,clientStorageType:e,autoSignIn:r,autoRefreshToken:n}),i&&this.start({devTools:c}),typeof window!="undefined"&&u)try{this._channel=new BroadcastChannel(u),r&&((h=this._channel)==null||h.addEventListener("message",v=>{var a;const{type:l,payload:f}=v.data;if(l==="broadcast_session"){const y=(a=this.interpreter)==null?void 0:a.getSnapshot().context,T=y==null?void 0:y.refreshToken.value;this.interpreter&&f.token&&f.token!==T&&this.interpreter.send("SESSION_UPDATE",{data:{session:{user:f.user,accessToken:f.accessToken,refreshToken:f.token,accessTokenExpiresIn:f.expiresInSeconds}}})}})),this._channel.addEventListener("message",v=>{const{type:a}=v.data;a==="signout"&&this.interpreter&&this.interpreter.send("SIGNOUT")})}catch{}}start({devTools:e=!1,initialSession:r,interpreter:n}={}){var i,s;const o={...this.machine.context,accessToken:{...this.machine.context.accessToken},refreshToken:{...this.machine.context.refreshToken}};r&&(o.user=r.user,o.refreshToken.value=(i=r.refreshToken)!=null?i:null,o.accessToken.value=(s=r.accessToken)!=null?s:null,o.accessToken.expiresAt=new Date(Date.now()+r.accessTokenExpiresIn*1e3));const u=this.machine.withContext(o);this._interpreter||(this._interpreter=n||Ne(u,{devTools:e})),(!this._started||typeof window=="undefined")&&(this._interpreter.initialized&&(this._interpreter.stop(),this._subscriptions.forEach(c=>c())),this._interpreter.start(u.initialState),this._subscriptionsQueue.forEach(c=>c(this))),this._started=!0}get machine(){return this._machine}get interpreter(){return this._interpreter}get started(){return this._started}subscribe(e){if(this.started){const r=e(this);return this._subscriptions.add(r),r}else return this._subscriptionsQueue.add(e),()=>{console.log("onTokenChanged was added before the interpreter started. Cannot unsubscribe listener.")}}}class kn extends cr{constructor({...e}){super({...e,autoSignIn:et()&&e.autoSignIn,autoRefreshToken:et()&&e.autoRefreshToken,clientStorageType:"cookie"})}}const ws=kn,An=async({backendUrl:t,interpreter:e},r)=>{try{const{data:n}=await re(`${t}/user/webauthn/add`,{},e==null?void 0:e.getSnapshot().context.accessToken.value);let i;try{i=await hn(n)}catch(o){throw new be(o)}const{data:s}=await re(`${t}/user/webauthn/verify`,{credential:i,nickname:r},e==null?void 0:e.getSnapshot().context.accessToken.value);return{key:s,isError:!1,error:null,isSuccess:!0}}catch(n){const{error:i}=n;return{isError:!0,error:i,isSuccess:!1}}},On=async(t,e,r)=>new Promise(n=>{t.send("REQUEST",{email:e,options:r}),t.onTransition(i=>{i.matches({idle:"error"})?n({error:i.context.error,isError:!0,needsEmailVerification:!1}):i.matches({idle:"success"})&&n({error:null,isError:!1,needsEmailVerification:!0})})}),In=async(t,e,r)=>new Promise(n=>{t.send("REQUEST",{password:e,ticket:r}),t.onTransition(i=>{i.matches({idle:"error"})?n({error:i.context.error,isError:!0,isSuccess:!1}):i.matches({idle:"success"})&&n({error:null,isError:!1,isSuccess:!0})})}),Ts=t=>new Promise(e=>{t.send("GENERATE"),t.onTransition(r=>{r.matches("generated")?e({error:null,isError:!1,isGenerated:!0,qrCodeDataUrl:r.context.imageUrl||"",totpSecret:r.context.secret}):r.matches({idle:"error"})&&e({error:r.context.error||null,isError:!0,isGenerated:!1,qrCodeDataUrl:"",totpSecret:r.context.secret})})}),Ss=(t,e)=>new Promise(r=>{t.send("ACTIVATE",{activeMfaType:"totp",code:e}),t.onTransition(n=>{n.matches({generated:"activated"})?r({error:null,isActivated:!0,isError:!1}):n.matches({generated:{idle:"error"}})&&r({error:n.context.error,isActivated:!1,isError:!0})})}),bs=(t,e)=>new Promise(r=>{t.send("DISABLE",{code:e}),t.onTransition(n=>{n.matches({idle:"disabled"})?r({error:null,isDisabled:!0,isError:!1}):n.matches({idle:"error"})&&r({error:n.context.error,isDisabled:!1,isError:!0})})}),Rn=async(t,e,r)=>new Promise(n=>{t.send("REQUEST",{email:e,options:r}),t.onTransition(i=>{i.matches({idle:"error"})?n({error:i.context.error,isError:!0,isSent:!1}):i.matches({idle:"success"})&&n({error:null,isError:!1,isSent:!0})})}),xn=(t,e,r)=>new Promise(n=>{t.send("REQUEST",{email:e,options:r}),t.onTransition(i=>{i.matches({idle:"error"})?n({error:i.context.error,isError:!0,isSent:!1}):i.matches({idle:"success"})&&n({error:null,isError:!1,isSent:!0})})}),_n=t=>new Promise(e=>{const{changed:r}=t.send("SIGNIN_ANONYMOUS");r||e({isSuccess:!1,isError:!0,error:ee,user:null,accessToken:null,refreshToken:null}),t.onTransition(n=>{n.matches({authentication:"signedIn"})&&e({isSuccess:!0,isError:!1,error:null,user:n.context.user,accessToken:n.context.accessToken.value,refreshToken:n.context.refreshToken.value}),n.matches({authentication:{signedOut:"failed"}})&&e({isSuccess:!1,isError:!0,error:n.context.errors.authentication||null,user:null,accessToken:null,refreshToken:null})})}),Pn=(t,e,r)=>new Promise(n=>{const{changed:i,context:s}=t.send("SIGNIN_PASSWORD",{email:e,password:r});if(!i)return n({accessToken:s.accessToken.value,refreshToken:s.refreshToken.value,error:ee,isError:!0,isSuccess:!1,needsEmailVerification:!1,needsMfaOtp:!1,mfa:null,user:s.user});t.onTransition(o=>{o.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?n({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,needsMfaOtp:!1,mfa:null,user:null}):o.matches({authentication:{signedOut:"needsMfa"}})?n({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!1,needsMfaOtp:!0,mfa:o.context.mfa,user:null}):o.matches({authentication:{signedOut:"failed"}})?n({accessToken:null,refreshToken:null,error:o.context.errors.authentication||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,needsMfaOtp:!1,mfa:null,user:null}):o.matches({authentication:"signedIn"})&&n({accessToken:o.context.accessToken.value,refreshToken:o.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,needsMfaOtp:!1,mfa:null,user:o.context.user})})}),ur=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send("PASSWORDLESS_EMAIL",{email:e,options:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1});t.onTransition(s=>{s.matches("registration.incomplete.failed")?n({error:s.context.errors.registration||null,isError:!0,isSuccess:!1}):s.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})&&n({error:null,isError:!1,isSuccess:!0})})}),Nn=(t,e)=>new Promise(r=>{const{changed:n,context:i}=t.send({type:"SIGNIN_SECURITY_KEY_EMAIL",email:e});if(!n)return r({accessToken:i.accessToken.value,refreshToken:i.refreshToken.value,error:ee,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:i.user});t.onTransition(s=>{s.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?r({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,user:null}):s.matches({authentication:{signedOut:"failed"}})?r({accessToken:null,refreshToken:null,error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:null}):s.matches({authentication:"signedIn"})&&r({accessToken:s.context.accessToken.value,refreshToken:s.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,user:s.context.user})})});function Un(t){return{error:t.message||"Something went wrong!",status:t.status||1,message:t.message||"Something went wrong!"}}const Dn=async(t,e)=>{var r,n;const i=(r=t.interpreter)==null?void 0:r.getSnapshot(),s=i==null?void 0:i.context.accessToken.value;let o;try{o=(await re(`${t.backendUrl}/elevate/webauthn`,{email:e},s)).data}catch(c){return{error:Un(c),isError:!0,isSuccess:!1,elevated:!1}}let u;try{u=await sr(o)}catch(c){return{error:Un(c),isError:!0,isSuccess:!1,elevated:!1}}try{const{data:{session:c},error:d}=await re(`${t.backendUrl}/elevate/webauthn/verify`,{email:e,credential:u},s);return c&&!d?((n=t.interpreter)==null||n.send({type:"SESSION_UPDATE",data:{session:c}}),{error:null,isError:!1,isSuccess:!0,elevated:!0}):{error:d,isError:!0,isSuccess:!1,elevated:!1}}catch(c){const{error:d}=c;return{error:d,isError:!0,isSuccess:!1,elevated:!1}}},Cn=(t,e,r)=>new Promise(n=>{const{changed:i,context:s}=t.send("SIGNIN_MFA_TOTP",{otp:e,ticket:r});if(!i)return n({accessToken:s.accessToken.value,refreshToken:s.refreshToken.value,error:ee,isError:!0,isSuccess:!1,user:s.user});t.onTransition(o=>{o.matches({authentication:{signedOut:"failed"}})?n({accessToken:null,refreshToken:null,error:o.context.errors.authentication||null,isError:!0,isSuccess:!1,user:null}):o.matches({authentication:"signedIn"})&&n({accessToken:o.context.accessToken.value,refreshToken:o.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,user:o.context.user})})}),Mn=(t,e)=>new Promise(r=>{const{changed:n}=t.send("SIGNIN_PAT",{pat:e});n||r({isSuccess:!1,isError:!0,error:ee,user:null,accessToken:null,refreshToken:null}),t.onTransition(i=>{if(i.matches({authentication:{signedOut:"failed"}}))return r({accessToken:null,refreshToken:null,user:null,error:i.context.errors.authentication||null,isError:!0,isSuccess:!1});if(i.matches({authentication:"signedIn"}))return r({accessToken:i.context.accessToken.value,refreshToken:i.context.refreshToken.value,user:i.context.user,error:null,isError:!1,isSuccess:!0})})}),lr=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send("PASSWORDLESS_SMS",{phoneNumber:e,options:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1,needsOtp:!1});t.onTransition(s=>{s.matches("registration.incomplete.needsOtp")?n({error:null,isError:!1,isSuccess:!1,needsOtp:!0}):s.matches("registration.incomplete.failed")&&n({error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,needsOtp:!1})})}),Ln=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send({type:"PASSWORDLESS_SMS_OTP",phoneNumber:e,otp:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1,user:null,accessToken:null,refreshToken:null});t.onTransition(s=>{s.matches({authentication:"signedIn"})?n({error:null,isError:!1,isSuccess:!0,user:s.context.user,accessToken:s.context.accessToken.value,refreshToken:s.context.refreshToken.value}):s.matches({registration:{incomplete:"failed"}})&&n({error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,user:null,accessToken:null,refreshToken:null})})}),jn=async(t,e)=>new Promise(r=>{const{event:n}=t.send("SIGNOUT",{all:e});if(n.type!=="SIGNED_OUT")return r({isSuccess:!1,isError:!0,error:rn});t.onTransition(i=>{i.matches({authentication:{signedOut:"success"}})?r({isSuccess:!0,isError:!1,error:null}):i.matches("authentication.signedOut.failed")&&r({isSuccess:!1,isError:!0,error:i.context.errors.signout||null})})}),dr=(t,e,r,n,i)=>new Promise(s=>{const{changed:o,context:u}=t.send("SIGNUP_EMAIL_PASSWORD",{email:e,password:r,options:n,requestOptions:i});if(!o)return s({error:ee,accessToken:u.accessToken.value,refreshToken:u.refreshToken.value,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:u.user});t.onTransition(c=>{c.matches("registration.incomplete.failed")?s({accessToken:null,refreshToken:null,error:c.context.errors.registration||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:null}):c.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?s({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,user:null}):c.matches({authentication:"signedIn",registration:"complete"})&&s({accessToken:c.context.accessToken.value,refreshToken:c.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,user:c.context.user})})}),$n=(t,e,r,n)=>new Promise(i=>{const{changed:s,context:o}=t.send("SIGNUP_SECURITY_KEY",{email:e,options:r,requestOptions:n});if(!s)return i({error:ee,accessToken:o.accessToken.value,refreshToken:o.refreshToken.value,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:o.user});t.onTransition(u=>{u.matches("registration.incomplete.failed")?i({accessToken:null,refreshToken:null,error:u.context.errors.registration||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:null}):u.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?i({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,user:null}):u.matches({authentication:"signedIn",registration:"complete"})&&i({accessToken:u.context.accessToken.value,refreshToken:u.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,user:u.context.user})})}),Fn=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send("SIGNIN_EMAIL_OTP",{email:e,options:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1,needsOtp:!1});t.onTransition(s=>{s.matches("registration.incomplete.needsOtp")?n({error:null,isError:!1,isSuccess:!0,needsOtp:!0}):s.matches("registration.incomplete.failed")&&n({error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,needsOtp:!1})})}),Hn=(t,e,r)=>new Promise(n=>{const{changed:i}=t.send({type:"VERIFY_EMAIL_OTP",email:e,otp:r});if(!i)return n({error:ee,isError:!0,isSuccess:!1,user:null,accessToken:null,refreshToken:null});t.onTransition(s=>{s.matches({authentication:"signedIn"})?n({error:null,isError:!1,isSuccess:!0,user:s.context.user,accessToken:s.context.accessToken.value,refreshToken:s.context.refreshToken.value}):s.matches({registration:{incomplete:"failed"}})&&n({error:s.context.errors.authentication||null,isError:!0,isSuccess:!1,user:null,accessToken:null,refreshToken:null})})}),qn=(t,{provider:e,idToken:r,nonce:n})=>new Promise(i=>{const{changed:s}=t.send("SIGNIN_ID_TOKEN",{provider:e,idToken:r,...n&&{nonce:n}});s||i({isSuccess:!1,isError:!0,error:ee,user:null,accessToken:null,refreshToken:null}),t.onTransition(o=>{if(o.matches({authentication:{signedOut:"failed"}}))return i({accessToken:null,refreshToken:null,user:null,error:o.context.errors.authentication||null,isError:!0,isSuccess:!1});if(o.matches({authentication:"signedIn"}))return i({accessToken:o.context.accessToken.value,refreshToken:o.context.refreshToken.value,user:o.context.user,error:null,isError:!1,isSuccess:!0})})}),Vn=async({backendUrl:t,interpreter:e},{provider:r,idToken:n,nonce:i})=>{try{return await re(`${t}/link/idtoken`,{provider:r,idToken:n,...i&&{nonce:i}},e==null?void 0:e.getSnapshot().context.accessToken.value),{isError:!1,error:null,isSuccess:!0}}catch(s){const{error:o}=s;return{isError:!0,error:o,isSuccess:!1}}},Kn=t=>new Promise(e=>{const{changed:r,context:n}=t.send({type:"SIGNIN_SECURITY_KEY"});if(!r)return e({accessToken:n.accessToken.value,refreshToken:n.refreshToken.value,error:ee,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:n.user});t.onTransition(i=>{i.matches({authentication:{signedOut:"noErrors"},registration:{incomplete:"needsEmailVerification"}})?e({accessToken:null,refreshToken:null,error:null,isError:!1,isSuccess:!1,needsEmailVerification:!0,user:null}):i.matches({authentication:{signedOut:"failed"}})?e({accessToken:null,refreshToken:null,error:i.context.errors.authentication||null,isError:!0,isSuccess:!1,needsEmailVerification:!1,user:null}):i.matches({authentication:"signedIn"})&&e({accessToken:i.context.accessToken.value,refreshToken:i.context.refreshToken.value,error:null,isError:!1,isSuccess:!0,needsEmailVerification:!1,user:i.context.user})})}),ks=async({backendUrl:t,interpreter:e},{expiresAt:r,metadata:n})=>{try{const{data:i}=await re(`${t}/pat`,{expiresAt:r.toISOString(),metadata:n},e==null?void 0:e.getSnapshot().context.accessToken.value);return{data:i?{id:i.id||null,personalAccessToken:i.personalAccessToken||null}:null,isError:!1,error:null,isSuccess:!0}}catch(i){const{error:s}=i;return{isError:!0,error:s,isSuccess:!1,data:null}}};class Gn{constructor({url:e,broadcastKey:r,autoRefreshToken:n=!0,autoSignIn:i=!0,clientStorage:s,clientStorageType:o,refreshIntervalTime:u,start:c=!0}){ae(this,"_client"),ae(this,"url");var d;this.url=e,this._client=new cr({backendUrl:e,clientUrl:typeof window!="undefined"&&((d=window.location)==null?void 0:d.origin)||"",broadcastKey:r,autoRefreshToken:n,autoSignIn:i,start:c,clientStorage:s,clientStorageType:o,refreshIntervalTime:u})}async signUp(e,r){const n=await this.waitUntilReady();if("securityKey"in e){const{email:u,options:c}=e;return se(await $n(n,u,c,r))}const{email:i,password:s,options:o}=e;return se(await dr(n,i,s,o,r))}async connectProvider(e){const r=(await this.waitUntilReady()).getSnapshot().context.accessToken.value,{provider:n,options:i}=e,s=It(`${this._client.backendUrl}/signin/provider/${n}`,ne(this._client.clientUrl,{...i,connect:r}));return et()&&(window.location.href=s),{providerUrl:s}}async signInIdToken(e){const r=await this.waitUntilReady(),n=await qn(r,e);return{...se(n),mfa:null}}async linkIdToken(e){return Vn(this._client,e)}async signIn(e){const r=await this.waitUntilReady();if(!e){const n=await _n(r);return{...se(n),mfa:null}}if("provider"in e){const{provider:n,options:i}=e,s=It(`${this._client.backendUrl}/signin/provider/${n}`,ne(this._client.clientUrl,i));return et()&&(window.location.href=s),{providerUrl:s,provider:n,session:null,mfa:null,error:null}}if("email"in e&&"password"in e){const n=await Pn(r,e.email,e.password);return n.needsEmailVerification?{session:null,mfa:null,error:nn}:n.needsMfaOtp?{session:null,mfa:n.mfa,error:null}:{...se(n),mfa:null}}if("email"in e&&"securityKey"in e){if(e.securityKey!==!0)throw Error("securityKey must be true");const n=await Nn(r,e.email);return{...se(n),mfa:null}}if("email"in e){const{email:n,options:i}=e,{error:s}=await ur(r,n,i);return{session:null,mfa:null,error:s}}if("phoneNumber"in e&&"otp"in e){const n=await Ln(r,e.phoneNumber,e.otp);return{...se(n),mfa:null}}if("phoneNumber"in e){const{error:n}=await lr(r,e.phoneNumber,e.options);return{error:n,mfa:null,session:null}}if("otp"in e){const n=await Cn(r,e.otp,e.ticket);return{...se(n),mfa:null}}return{error:on,mfa:null,session:null}}async signInPAT(e){const r=await this.waitUntilReady(),n=await Mn(r,e);return se(n)}async signInEmailOTP(e,r){const n=await this.waitUntilReady(),{error:i}=await Fn(n,e,r);return{error:i,session:null,mfa:null}}async verifyEmailOTP(e,r){const n=await this.waitUntilReady(),i=await Hn(n,e,r);return{...se(i),mfa:null}}async signInSecurityKey(){const e=await this.waitUntilReady(),r=await Kn(e);return{...se(r),mfa:null}}async signOut(e){const r=await this.waitUntilReady(),{error:n}=await jn(r,e==null?void 0:e.all);return{error:n}}async resetPassword({email:e,options:r}){const n=Ne(Sn(this._client)).start(),{error:i}=await Rn(n,e,r);return{error:i}}async changePassword({newPassword:e,ticket:r}){const n=Ne(Tn(this._client)).start(),{error:i}=await In(n,e,r);return{error:i}}async sendVerificationEmail({email:e,options:r}){const n=Ne(bn(this._client)).start(),{error:i}=await xn(n,e,r);return{error:i}}async changeEmail({newEmail:e,options:r}){const n=Ne(wn(this._client)).start(),{error:i}=await On(n,e,r);return{error:i}}async deanonymize(e){const r=await this.waitUntilReady();if(e.signInMethod==="passwordless"){if(e.connection==="email"){const{error:n}=await ur(r,e.email,e.options);return{error:n}}if(e.connection==="sms"){const{error:n}=await lr(r,e.phoneNumber,e.options);return{error:n}}}if(e.signInMethod==="email-password"){const{error:n}=await dr(r,e.email,e.password,e.options);return{error:n}}throw Error("Unknown deanonymization method")}async addSecurityKey(e){const{error:r,key:n}=await An(this._client,e);return{error:r,key:n}}async elevateEmailSecurityKey(e){if(!e)throw Error("A user email is required");return{...await Dn(this._client,e),mfa:null}}async createPAT(e,r){return ks(this._client,{expiresAt:e,metadata:r})}onTokenChanged(e){return this._client.subscribe(()=>{var r;const n=(r=this._client.interpreter)==null?void 0:r.onTransition(({event:i,context:s})=>{i.type==="TOKEN_CHANGED"&&e(Ze(s))});return()=>n==null?void 0:n.stop()})}onAuthStateChanged(e){return this._client.subscribe(()=>{var r;const n=(r=this._client.interpreter)==null?void 0:r.onTransition(({event:i,context:s})=>{(i.type==="SIGNED_IN"||i.type==="SIGNED_OUT")&&e(i.type,Ze(s))});return()=>n==null?void 0:n.stop()})}isAuthenticated(){var e;return!!((e=this._client.interpreter)!=null&&e.getSnapshot().matches({authentication:"signedIn"}))}async isAuthenticatedAsync(){return(await this.waitUntilReady()).getSnapshot().matches({authentication:"signedIn"})}getAuthenticationStatus(){var e;const r=((e=this.client.interpreter)==null?void 0:e.getSnapshot().context.importTokenAttempts)||0;return this.isReady()?{isAuthenticated:this.isAuthenticated(),isLoading:!1,connectionAttempts:r}:{isAuthenticated:!1,isLoading:!0,connectionAttempts:r}}getAccessToken(){var e,r;return(r=(e=this._client.interpreter)==null?void 0:e.getSnapshot().context.accessToken.value)!=null?r:void 0}getDecodedAccessToken(){const e=this.getAccessToken();return e?pr(e):null}getHasuraClaims(){var e;return((e=this.getDecodedAccessToken())==null?void 0:e["https://hasura.io/jwt/claims"])||null}getHasuraClaim(e){var r;return((r=this.getHasuraClaims())==null?void 0:r[e.startsWith("x-hasura-")?e:`x-hasura-${e}`])||null}async refreshSession(e){try{const r=await this.waitUntilReady();return new Promise(n=>{const i=e||r.getSnapshot().context.refreshToken.value;if(!i)return n({session:null,error:en});const{changed:s}=r.send("TRY_TOKEN",{token:i});if(!s)return n({session:null,error:tn});r.onTransition(o=>{o.matches({token:{idle:"error"}})?n({session:null,error:sn}):o.event.type==="TOKEN_CHANGED"&&n({session:Ze(o.context),error:null})})})}catch(r){return{session:null,error:r.message}}}getSession(){var e,r;return Ze((r=(e=this._client.interpreter)==null?void 0:e.getSnapshot())==null?void 0:r.context)}async initWithSession({session:e}){this.client.start({initialSession:e}),await this.waitUntilReady()}getUser(){var e,r,n;return((n=(r=(e=this._client.interpreter)==null?void 0:e.getSnapshot())==null?void 0:r.context)==null?void 0:n.user)||null}waitUntilReady(){const e=this._client.interpreter;if(!e)throw Error("Auth interpreter not set");return e.getSnapshot().hasTag("loading")?new Promise((r,n)=>{let i=setTimeout(()=>n("The state machine is not yet ready after 15 seconds."),15e3);e.onTransition(s=>{if(!s.hasTag("loading"))return clearTimeout(i),r(e)})}):Promise.resolve(e)}isReady(){var e,r;return!((r=(e=this._client.interpreter)==null?void 0:e.getSnapshot())!=null&&r.hasTag("loading"))}get client(){return this._client}}var As=Object.defineProperty,Os=(t,e,r)=>e in t?As(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,je=(t,e,r)=>Os(t,typeof e!="symbol"?e+"":e,r);const hr=async(t,e,{accessToken:r,name:n,fileId:i,bucketId:s,adminSecret:o,onUploadProgress:u,headers:c={}}={})=>{var d;const h={...c};if(s&&e.append("bucket-id",s),o&&(h["x-hasura-admin-secret"]=o),r&&(h.Authorization=`Bearer ${r}`),(n||i)&&!e.has("metadata[]")){const a={};n&&(a.name=n),i&&(a.id=i),e.append("metadata[]",new Blob([JSON.stringify(a)],{type:"application/json"}),"")}const v=`${t}/files`;if(typeof XMLHttpRequest=="undefined")try{const a=await fetch(v,{method:"POST",headers:h,body:e}),l=await a.json();return a.ok?{fileMetadata:l,error:null}:{error:{status:a.status,message:((d=l==null?void 0:l.error)==null?void 0:d.message)||a.statusText,error:a.statusText},fileMetadata:null}}catch(a){return{error:{status:0,message:a.message,error:a.message},fileMetadata:null}}return new Promise(a=>{let l=new XMLHttpRequest;l.responseType="json",l.onload=()=>{var f,y,T,g,S,b,O,M;if(l.status<200||l.status>=300){const D={error:(S=(g=(y=(f=l.response)==null?void 0:f.error)==null?void 0:y.message)!=null?g:(T=l.response)==null?void 0:T.error)!=null?S:l.response,message:(M=(O=(b=l.response)==null?void 0:b.error)==null?void 0:O.message)!=null?M:l.response,status:l.status};return a({fileMetadata:null,error:D})}return a({fileMetadata:l.response,error:null})},l.onerror=()=>{const f={error:l.statusText,message:l.statusText,status:l.status};return a({fileMetadata:null,error:f})},u&&l.upload.addEventListener("progress",u,!1),l.open("POST",v,!0),Object.entries(h).forEach(([f,y])=>{l.setRequestHeader(f,y)}),l.send(e)})};function xt(t,e){if(!e||Object.keys(e).length===0)return t;const r=new URL(t),n=Object.entries(e).reduce((i,[s,o])=>({...i,[s.charAt(0)]:o}),{});return Object.entries(n).forEach(([i,s])=>{s&&r.searchParams.set(i,s)}),r.toString()}class Bn{constructor({url:e}){je(this,"url"),je(this,"accessToken"),je(this,"adminSecret"),je(this,"headers",{}),this.url=e}async uploadFormData({formData:e,bucketId:r,headers:n}){const{error:i,fileMetadata:s}=await hr(this.url,e,{bucketId:r,headers:{...this.headers,...n},accessToken:this.accessToken,adminSecret:this.adminSecret});return i?{fileMetadata:null,error:i}:s&&!("processedFiles"in s)?{fileMetadata:{processedFiles:[s]},error:null}:{fileMetadata:s,error:null}}async uploadFile({file:e,bucketId:r,id:n,name:i,headers:s}){const o=new FormData;o.append("file[]",e),o.append("metadata[]",new Blob([JSON.stringify({id:n,name:i})],{type:"application/json"}),"");const{error:u,fileMetadata:c}=await hr(this.url,o,{accessToken:this.accessToken,adminSecret:this.adminSecret,bucketId:r,headers:{...this.headers,...s}});return u?{fileMetadata:null,error:u}:c&&"processedFiles"in c?{fileMetadata:c.processedFiles[0],error:null}:{fileMetadata:c,error:null}}async downloadFile(e){try{const{fileId:r,headers:n,...i}=e,s=xt(`${this.url}/files/${r}`,i),o=await fetch(s,{method:"GET",headers:{...this.generateAuthHeaders(),...this.headers,...n}});if(!o.ok)throw new Error(await o.text());return{file:await o.blob(),error:null}}catch(r){return{file:null,error:r}}}async getPresignedUrl(e){try{const{fileId:r,headers:n}=e,i=await fetch(`${this.url}/files/${r}/presignedurl`,{method:"GET",headers:{...this.generateAuthHeaders(),...this.headers,...n}});if(!i.ok)throw new Error(await i.text());return{presignedUrl:await i.json(),error:null}}catch(r){return{presignedUrl:null,error:r}}}async delete(e){try{const{fileId:r,headers:n}=e,i=await fetch(`${this.url}/files/${r}`,{method:"DELETE",headers:{...this.generateAuthHeaders(),...this.headers,...n}});if(!i.ok)throw new Error(await i.text());return{error:null}}catch(r){return{error:r}}}setAccessToken(e){return this.accessToken=e,this}setAdminSecret(e){return this.adminSecret=e,this}getHeaders(){return this.headers}setHeaders(e){return e?(this.headers={...this.headers,...e},this):this}unsetHeaders(){const e=this.headers["x-hasura-role"];return this.headers=e?{"x-hasura-role":e}:{},this}generateAuthHeaders(){if(!(!this.adminSecret&&!this.accessToken))return this.adminSecret?{"x-hasura-admin-secret":this.adminSecret}:{Authorization:`Bearer ${this.accessToken}`}}}class zn{constructor({url:e,adminSecret:r}){je(this,"url"),je(this,"api"),this.url=e,this.api=new Bn({url:e}),this.setAdminSecret(r)}async upload(e){return"file"in e?this.api.uploadFile(e):this.api.uploadFormData(e)}getPublicUrl(e){const{fileId:r,...n}=e;return xt(`${this.url}/files/${r}`,n)}async getPresignedUrl(e){const{fileId:r,headers:n,...i}=e,{presignedUrl:s,error:o}=await this.api.getPresignedUrl(e);if(o)return{presignedUrl:null,error:o};if(!s)return{presignedUrl:null,error:new Error("Invalid file id")};const u=xt(s.url,i);return{presignedUrl:{...s,url:u},error:null}}async download(e){const{file:r,error:n}=await this.api.downloadFile(e);return n?{file:null,error:n}:r?{file:r,error:null}:{file:null,error:new Error("File does not exist")}}async delete(e){const{error:r}=await this.api.delete(e);return r?{error:r}:{error:null}}setAccessToken(e){return this.api.setAccessToken(e),this}setAdminSecret(e){return this.api.setAdminSecret(e),this}getHeaders(){return this.api.getHeaders()}setHeaders(e){return this.api.setHeaders(e),this}unsetHeaders(){return this.api.unsetHeaders(),this}}const _t={progress:null,loaded:0,error:null,bucketId:void 0,file:void 0,id:void 0},Yn=()=>Ee({predictableActionArguments:!0,schema:{context:{},events:{}},tsTypes:{},context:{..._t},initial:"idle",on:{DESTROY:{actions:"sendDestroy",target:"stopped"}},states:{idle:{on:{ADD:{actions:"addFile"},UPLOAD:{cond:"hasFile",target:"uploading"}}},uploading:{entry:"resetProgress",on:{UPLOAD_PROGRESS:{actions:["incrementProgress","sendProgress"]},UPLOAD_DONE:"uploaded",UPLOAD_ERROR:"error",CANCEL:"idle"},invoke:{src:"uploadFile"}},uploaded:{entry:["setFileMetadata","sendDone"],on:{ADD:{actions:"addFile",target:"idle"},UPLOAD:{actions:"resetContext",target:"uploading"}}},error:{entry:["setError","sendError"],on:{ADD:{actions:"addFile",target:"idle"},UPLOAD:{actions:"resetContext",target:"uploading"}}},stopped:{type:"final"}}},{guards:{hasFile:(t,e)=>!!t.file||!!e.file},actions:{incrementProgress:I({loaded:(t,{loaded:e})=>e,progress:(t,{progress:e})=>e}),setFileMetadata:I({id:(t,{id:e})=>e,bucketId:(t,{bucketId:e})=>e,progress:t=>100}),setError:I({error:(t,{error:e})=>e}),sendProgress:()=>{},sendError:()=>{},sendDestroy:()=>{},sendDone:()=>{},resetProgress:I({progress:t=>null,loaded:t=>0}),resetContext:I(t=>_t),addFile:I({file:(t,{file:e})=>e,bucketId:(t,{bucketId:e})=>e,id:(t,{id:e})=>e})},services:{uploadFile:(t,e)=>r=>{const n=e.file||t.file,i=new FormData;i.append("file[]",n);let s=0;return hr(e.url,i,{fileId:e.id||t.id,bucketId:e.bucketId||t.bucketId,accessToken:e.accessToken,adminSecret:e.adminSecret,name:e.name||n.name,onUploadProgress:o=>{const u=o.total?Math.round(o.loaded*n.size/o.total):0,c=u-s;s=u,r({type:"UPLOAD_PROGRESS",progress:o.total?Math.round(u*100/o.total):0,loaded:u,additions:c})}}).then(({fileMetadata:o,error:u})=>{if(u&&r({type:"UPLOAD_ERROR",error:u}),o&&!("processedFiles"in o)){const{id:c,bucketId:d}=o;r({type:"UPLOAD_DONE",id:c,bucketId:d})}if(o&&"processedFiles"in o){const{id:c,bucketId:d}=o.processedFiles[0];r({type:"UPLOAD_DONE",id:c,bucketId:d})}}),()=>{}}}}),{pure:fr,sendParent:Pt}=Di,Is=()=>Ee({id:"files-list",schema:{context:{},events:{}},tsTypes:{},predictableActionArguments:!0,context:{progress:null,files:[],loaded:0,total:0},initial:"idle",on:{UPLOAD:{cond:"hasFileToDownload",actions:"addItem",target:"uploading"},ADD:{actions:"addItem"},REMOVE:{actions:"removeItem"}},states:{idle:{entry:["resetProgress","resetLoaded","resetTotal"],on:{CLEAR:{actions:"clearList",target:"idle"}}},uploading:{entry:["upload","startProgress","resetLoaded","resetTotal"],on:{UPLOAD_PROGRESS:{actions:["incrementProgress"]},UPLOAD_DONE:[{cond:"isAllUploaded",target:"uploaded"},{cond:"isAllUploadedOrError",target:"error"}],UPLOAD_ERROR:[{cond:"isAllUploaded",target:"uploaded"},{cond:"isAllUploadedOrError",target:"error"}],CANCEL:{actions:"cancel",target:"idle"}}},uploaded:{entry:"setUploaded",on:{CLEAR:{actions:"clearList",target:"idle"}}},error:{on:{CLEAR:{actions:"clearList",target:"idle"}}}}},{guards:{hasFileToDownload:(t,e)=>t.files.some(r=>r.getSnapshot().matches("idle"))||!!e.files,isAllUploaded:t=>t.files.every(e=>{var r;return(r=e.getSnapshot())==null?void 0:r.matches("uploaded")}),isAllUploadedOrError:t=>t.files.every(e=>{const r=e.getSnapshot();return(r==null?void 0:r.matches("error"))||(r==null?void 0:r.matches("uploaded"))})},actions:{incrementProgress:I((t,e)=>{const r=t.loaded+e.additions,n=Math.round(r*100/t.total);return{...t,loaded:r,progress:n}}),setUploaded:I({progress:t=>100,loaded:({files:t})=>t.map(e=>e.getSnapshot()).filter(e=>e.matches("uploaded")).reduce((e,r)=>{var n;return e+((n=r.context.file)==null?void 0:n.size)},0)}),resetTotal:I({total:({files:t})=>t.map(e=>e.getSnapshot()).filter(e=>!e.matches("uploaded")).reduce((e,r)=>{var n;return e+((n=r.context.file)==null?void 0:n.size)},0)}),resetLoaded:I({loaded:t=>0}),startProgress:I({progress:t=>0}),resetProgress:I({progress:t=>null}),addItem:I((t,{files:e,bucketId:r})=>{const n=e?Array.isArray(e)?e:"item"in e?Array.from(e):[e]:[],i=t.total+n.reduce((o,u)=>o+u.size,0),s=Math.round(t.loaded*100/i);return{files:[...t.files,...n.map(o=>Qi(Yn().withConfig({actions:{sendProgress:Pt((u,{additions:c})=>({type:"UPLOAD_PROGRESS",additions:c})),sendDone:Pt("UPLOAD_DONE"),sendError:Pt("UPLOAD_ERROR"),sendDestroy:Pt("REMOVE")}}).withContext({..._t,file:o,bucketId:r}),{sync:!0}))],total:i,loaded:t.loaded,progress:s}}),removeItem:I({files:t=>t.files.filter(e=>{var r,n;const i=(r=e.getSnapshot())==null?void 0:r.matches("stopped");return i&&((n=e.stop)==null||n.call(e)),!i})}),clearList:fr(t=>t.files.map(e=>X({type:"DESTROY"},{to:e.id}))),upload:fr((t,e)=>t.files.map(r=>X(e,{to:r.id}))),cancel:fr(t=>t.files.map(e=>X({type:"CANCEL"},{to:e.id})))}}),Rs=async(t,e)=>new Promise(r=>{e.send({type:"UPLOAD",...t}),e.subscribe(n=>{var i;n.matches("error")?r({error:n.context.error,isError:!0,isUploaded:!1}):n.matches("uploaded")&&r({error:null,isError:!1,isUploaded:!0,id:n.context.id,bucketId:n.context.id,name:(i=n.context.file)==null?void 0:i.name})})}),xs=async(t,e)=>new Promise(r=>{e.send({type:"UPLOAD",...t,files:t.files}),e.onTransition(n=>{n.matches("error")?r({errors:n.context.files.filter(i=>{var s;return(s=i.getSnapshot())==null?void 0:s.context.error}),isError:!0,files:[]}):n.matches("uploaded")&&r({errors:[],isError:!1,files:n.context.files})})}),_s=/^((?<protocol>http[s]?):\/\/)?(?<host>(localhost|local))(:(?<port>(\d+|__\w+__)))?$/;function rt(t,e){const{subdomain:r,region:n}=t;if(!r)throw new Error("A `subdomain` must be set.");const i=r.match(_s);if(i!=null&&i.groups){const{protocol:s,host:o,port:u}=i.groups,c=Us(e);return c||(o==="localhost"?(console.warn('The `subdomain` is set to "localhost". Support for this will be removed in a future release. Please use "local" instead.'),`${s||"http"}://localhost:${u||1337}/v1/${e}`):u?`${s||"https"}://local.${e}.local.nhost.run:${u}/v1`:`${s||"https"}://local.${e}.local.nhost.run/v1`)}if(!n)throw new Error('`region` must be set when using a `subdomain` other than "local".');return`https://${r}.${e}.${n}.nhost.run/v1`}function Ps(){return typeof window!="undefined"}function Ns(){return typeof process!="undefined"&&process.env}function Us(t){return Ps()||!Ns()?null:process.env[`NHOST_${t.toUpperCase()}_URL`]}function Ds(t,e){const n=e.startsWith("/")?e:`/${e}`;return t+n}function Wn(t){const e="subdomain"in t?rt(t,"auth"):t.authUrl,{subdomain:r,region:n}=t;if(!e)throw new Error("Please provide `subdomain` or `authUrl`.");return new Gn({url:e,broadcastKey:`${r}${n!=null?n:"local"}`,...t})}function Cs(t,e){return e=e||{},new Promise(function(r,n){var i=new XMLHttpRequest,s=[],o=[],u={},c=function(){return{ok:(i.status/100|0)==2,statusText:i.statusText,status:i.status,url:i.responseURL,text:function(){return Promise.resolve(i.responseText)},json:function(){return Promise.resolve(i.responseText).then(JSON.parse)},blob:function(){return Promise.resolve(new Blob([i.response]))},clone:c,headers:{keys:function(){return s},entries:function(){return o},get:function(h){return u[h.toLowerCase()]},has:function(h){return h.toLowerCase()in u}}}};for(var d in i.open(e.method||"get",t,!0),i.onload=function(){i.getAllResponseHeaders().replace(/^(.*?):[^\S\n]*([\s\S]*?)$/gm,function(h,v,a){s.push(v=v.toLowerCase()),o.push([v,a]),u[v]=u[v]?u[v]+","+a:a}),r(c())},i.onerror=n,i.withCredentials=e.credentials=="include",e.headers)i.setRequestHeader(d,e.headers[d]);i.send(e.body||null)})}const Jn=is(Object.freeze(Object.defineProperty({__proto__:null,default:Cs},Symbol.toStringTag,{value:"Module"})));var Ms=self.fetch||(self.fetch=Jn.default||Jn);const Xn=Yr(Ms);function Qn(t){const e="subdomain"in t?rt(t,"functions"):t.functionsUrl;if(!e)throw new Error("Please provide `subdomain` or `functionsUrl`.");return new Zn({url:e,...t})}class Zn{constructor(e){de(this,"url");de(this,"accessToken");de(this,"adminSecret");de(this,"headers",{});const{url:r,adminSecret:n}=e;this.url=r,this.accessToken=null,this.adminSecret=n}async call(e,r,n){var o,u;const i={"Content-Type":"application/json",...this.generateAccessTokenHeaders(),...n==null?void 0:n.headers,...this.headers},s=Ds(this.url,e);try{const c=await Xn(s,{body:r?JSON.stringify(r):null,headers:i,method:"POST"});if(!c.ok){let h;return(o=c.headers.get("content-type"))!=null&&o.includes("application/json")?h=await c.json():h=await c.text(),{res:null,error:{message:h,error:c.statusText,status:c.status}}}let d;return(u=c.headers.get("content-type"))!=null&&u.includes("application/json")?d=await c.json():d=await c.text(),{res:{data:d,status:c.status,statusText:c.statusText},error:null}}catch(c){const d=c;return{res:null,error:{message:d.message,status:d.name==="AbortError"?0:500,error:d.name==="AbortError"?"abort-error":"unknown"}}}}setAccessToken(e){if(!e){this.accessToken=null;return}this.accessToken=e}getHeaders(){return this.headers}setHeaders(e){e&&(this.headers={...this.headers,...e})}unsetHeaders(){const e=this.headers["x-hasura-role"];this.headers=e?{"x-hasura-role":e}:{}}generateAccessTokenHeaders(){return this.adminSecret?{"x-hasura-admin-secret":this.adminSecret}:this.accessToken?{Authorization:`Bearer ${this.accessToken}`}:{}}}var Ls=Object.defineProperty,js=(t,e,r)=>e in t?Ls(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,$e=(t,e,r)=>js(t,typeof e!="symbol"?e+"":e,r);function $s(t,e,r){return t.document?t:{document:t,variables:e,config:r}}function ei(t){var e;let r;const n=t.definitions.filter(i=>i.kind==="OperationDefinition");return n.length===1&&(r=(e=n[0].name)==null?void 0:e.value),r}function Fs(t){if(typeof t=="string"){let r;try{const n=te.parse(t);r=ei(n)}catch{}return{query:t,operationName:r}}const e=ei(t);return{query:te.print(t),operationName:e}}class Hs{constructor(e){$e(this,"_url"),$e(this,"accessToken"),$e(this,"adminSecret"),$e(this,"headers",{}),$e(this,"isAccessTokenValidOrNull",()=>{if(!this.accessToken)return!0;try{const i=pr(this.accessToken);return i.exp!=null&&i.exp*1e3>Date.now()}catch(i){return console.error("Error decoding token:",i),!1}}),$e(this,"awaitForValidAccessTokenOrNull",async()=>{if(this.isAccessTokenValidOrNull())return!0;const i=()=>this.isAccessTokenValidOrNull()?Promise.resolve(!0):new Promise(s=>{setTimeout(()=>i().then(s),100)});return i()});const{url:r,adminSecret:n}=e;this._url=r,this.accessToken=null,this.adminSecret=n}async request(e,...r){const[n,i]=r,s=$s(e,n,i),{headers:o,...u}=i||{},{query:c,operationName:d}=Fs(s.document);typeof process!="undefined"&&!process.env.TEST_MODE&&await this.awaitForValidAccessTokenOrNull();try{const h=await Xn(this.httpUrl,{method:"POST",body:JSON.stringify({operationName:d,query:c,variables:n}),headers:{"Content-Type":"application/json",...this.generateAccessTokenHeaders(),...this.headers,...o},...u});if(!h.ok)return{data:null,error:{error:h.statusText,message:h.statusText,status:h.status}};const{data:v,errors:a}=await h.json();return a?{data:null,error:a}:typeof v!="object"||Array.isArray(v)||v===null?{data:null,error:{error:"invalid-response",message:"incorrect response data from GraphQL server",status:0}}:{data:v,error:null}}catch(h){const v=h;return{data:null,error:{message:v.message,status:v.name==="AbortError"?0:500,error:v.name==="AbortError"?"abort-error":"unknown"}}}}get httpUrl(){return this._url}get wsUrl(){return this._url.replace(/^(http)(s?):\/\//,"ws$2://")}get url(){return this._url}getUrl(){return this._url}setAccessToken(e){if(!e){this.accessToken=null;return}this.accessToken=e}getHeaders(){return this.headers}setHeaders(e){e&&(this.headers={...this.headers,...e})}unsetHeaders(){const e=this.headers["x-hasura-role"];this.headers=e?{"x-hasura-role":e}:{}}generateAccessTokenHeaders(){return this.adminSecret?{"x-hasura-admin-secret":this.adminSecret}:this.accessToken?{Authorization:`Bearer ${this.accessToken}`}:{}}}function ti(t){const e="subdomain"in t?rt(t,"graphql"):t.graphqlUrl;if(!e)throw new Error("Please provide `subdomain` or `graphqlUrl`.");return new Hs({url:e,...t})}function ri(t){const e="subdomain"in t?rt(t,"storage"):t.storageUrl;if(!e)throw new Error("Please provide `subdomain` or `storageUrl`.");return new zn({url:e,...t})}const qs=t=>new ni(t);class ni{constructor({refreshIntervalTime:e,clientStorage:r,clientStorageType:n,autoRefreshToken:i,autoSignIn:s,adminSecret:o,devTools:u,start:c=!0,...d}){de(this,"auth");de(this,"storage");de(this,"functions");de(this,"graphql");de(this,"_adminSecret");de(this,"devTools");this.auth=Wn({refreshIntervalTime:e,clientStorage:r,clientStorageType:n,autoRefreshToken:i,autoSignIn:s,start:c,...d}),this.storage=ri({adminSecret:o,...d}),this.functions=Qn({adminSecret:o,...d}),this.graphql=ti({adminSecret:o,...d}),this.auth.onAuthStateChanged((h,v)=>{if(h==="SIGNED_OUT"){this.storage.setAccessToken(void 0),this.functions.setAccessToken(void 0),this.graphql.setAccessToken(void 0);return}const a=v==null?void 0:v.accessToken;this.storage.setAccessToken(a),this.functions.setAccessToken(a),this.graphql.setAccessToken(a)}),this.auth.onTokenChanged(h=>{const v=h==null?void 0:h.accessToken;this.storage.setAccessToken(v),this.functions.setAccessToken(v),this.graphql.setAccessToken(v)}),this._adminSecret=o,this.devTools=u}get adminSecret(){return this._adminSecret}set adminSecret(e){this._adminSecret=e,this.storage.setAdminSecret(e)}setRole(e){this.graphql.setHeaders({"x-hasura-role":e}),this.storage.setHeaders({"x-hasura-role":e}),this.functions.setHeaders({"x-hasura-role":e})}unsetRole(){this.graphql.setHeaders((({"x-hasura-role":e,...r})=>r)(this.graphql.getHeaders())),this.storage.setHeaders((({"x-hasura-role":e,...r})=>r)(this.storage.getHeaders())),this.functions.setHeaders((({"x-hasura-role":e,...r})=>r)(this.functions.getHeaders()))}}m.AuthClient=cr,m.AuthClientSSR=ws,m.AuthCookieClient=kn,m.CodifiedError=be,m.EMAIL_NEEDS_VERIFICATION=nn,m.HasuraAuthClient=Gn,m.HasuraStorageApi=Bn,m.HasuraStorageClient=zn,m.INITIAL_FILE_CONTEXT=_t,m.INITIAL_MACHINE_CONTEXT=kt,m.INVALID_EMAIL_ERROR=ue,m.INVALID_MFA_CODE_ERROR=Xr,m.INVALID_MFA_TICKET_ERROR=Qr,m.INVALID_MFA_TYPE_ERROR=Jr,m.INVALID_PASSWORD_ERROR=bt,m.INVALID_PHONE_NUMBER_ERROR=rr,m.INVALID_REFRESH_TOKEN=sn,m.INVALID_SIGN_IN_METHOD=on,m.MIN_PASSWORD_LENGTH=Wr,m.NETWORK_ERROR_CODE=er,m.NHOST_JWT_EXPIRES_AT_KEY=Se,m.NHOST_REFRESH_TOKEN_ID_KEY=Qe,m.NHOST_REFRESH_TOKEN_KEY=Me,m.NO_MFA_TICKET_ERROR=Zr,m.NO_REFRESH_TOKEN=en,m.NhostClient=ni,m.NhostFunctionsClient=Zn,m.OTHER_ERROR_CODE=tr,m.REFRESH_TOKEN_MAX_ATTEMPTS=Zt,m.STATE_ERROR_CODE=Le,m.TOKEN_REFRESHER_RUNNING_ERROR=tn,m.TOKEN_REFRESH_MARGIN_SECONDS=Qt,m.USER_ALREADY_SIGNED_IN=ee,m.USER_NOT_ANONYMOUS=us,m.USER_UNAUTHENTICATED=rn,m.VALIDATION_ERROR_CODE=ce,m.activateMfaPromise=Ss,m.addSecurityKeyPromise=An,m.appendImageTransformationParameters=xt,m.changeEmailPromise=On,m.changePasswordPromise=In,m.createAuthClient=Wn,m.createAuthMachine=En,m.createChangeEmailMachine=wn,m.createChangePasswordMachine=Tn,m.createEnableMfaMachine=Es,m.createFileUploadMachine=Yn,m.createFunctionsClient=Qn,m.createGraphqlClient=ti,m.createMultipleFilesUploadMachine=Is,m.createNhostClient=qs,m.createResetPasswordMachine=Sn,m.createSendVerificationEmailMachine=bn,m.createStorageClient=ri,m.disableMfaPromise=bs,m.elevateEmailSecurityKeyPromise=Dn,m.encodeQueryParameters=It,m.generateQrCodePromise=Ts,m.getAuthenticationResult=se,m.getFetch=mn,m.getParameterByName=tt,m.getSession=Ze,m.isBrowser=et,m.isValidEmail=le,m.isValidPassword=Rt,m.isValidPhoneNumber=ar,m.isValidTicket=gn,m.linkIdTokenPromise=Vn,m.localStorageGetter=fn,m.localStorageSetter=pn,m.postFetch=re,m.removeParameterFromWindow=or,m.resetPasswordPromise=Rn,m.rewriteRedirectTo=ne,m.sendVerificationEmailPromise=xn,m.signInAnonymousPromise=_n,m.signInEmailOTPPromise=Fn,m.signInEmailPasswordPromise=Pn,m.signInEmailPasswordlessPromise=ur,m.signInEmailSecurityKeyPromise=Nn,m.signInIdTokenPromise=qn,m.signInMfaTotpPromise=Cn,m.signInPATPromise=Mn,m.signInSecurityKeyPromise=Kn,m.signInSmsPasswordlessOtpPromise=Ln,m.signInSmsPasswordlessPromise=lr,m.signOutPromise=jn,m.signUpEmailPasswordPromise=dr,m.signUpEmailSecurityKeyPromise=$n,m.uploadFilePromise=Rs,m.uploadMultipleFilesPromise=xs,m.urlFromSubdomain=rt,m.verifyEmailOTPPromise=Hn,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})});
|
|
22
22
|
//# sourceMappingURL=nhost-js.umd.js.map
|