dauth-context-react 0.2.108 → 0.2.109

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- "use strict";function t(t){return t&&"object"==typeof t&&"default"in t?t.default:t}Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=t(e),n=t(require("expo-jwt"));function a(){a=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function p(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{p({},"")}catch(t){p=function(t,e,r){return t[e]=r}}function l(t,e,r,n){var a=Object.create((e&&e.prototype instanceof y?e:y).prototype),i=new T(n||[]);return o(a,"_invoke",{value:N(t,r,i)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=l;var d="suspendedStart",h="executing",m="completed",v={};function y(){}function g(){}function w(){}var E={};p(E,u,(function(){return this}));var b=Object.getPrototypeOf,I=b&&b(b(O([])));I&&I!==r&&n.call(I,u)&&(E=I);var _=w.prototype=y.prototype=Object.create(E);function x(t){["next","throw","return"].forEach((function(e){p(t,e,(function(t){return this._invoke(e,t)}))}))}function S(t,e){function r(a,o,i,u){var c=f(t[a],t,o);if("throw"!==c.type){var s=c.arg,p=s.value;return p&&"object"==typeof p&&n.call(p,"__await")?e.resolve(p.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):e.resolve(p).then((function(t){s.value=t,i(s)}),(function(t){return r("throw",t,i,u)}))}u(c.arg)}var a;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,a){r(t,n,e,a)}))}return a=a?a.then(o,o):o()}})}function N(e,r,n){var a=d;return function(o,i){if(a===h)throw new Error("Generator is already running");if(a===m){if("throw"===o)throw i;return{value:t,done:!0}}for(n.method=o,n.arg=i;;){var u=n.delegate;if(u){var c=L(u,n);if(c){if(c===v)continue;return c}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===d)throw a=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=h;var s=f(e,r,n);if("normal"===s.type){if(a=n.done?m:"suspendedYield",s.arg===v)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(a=m,n.method="throw",n.arg=s.arg)}}}function L(e,r){var n=r.method,a=e.iterator[n];if(a===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,L(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),v;var o=f(a,e.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,v;var i=o.arg;return i?i.done?(r[e.resultName]=i.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,v):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function A(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(A,this),this.reset(!0)}function O(e){if(e||""===e){var r=e[u];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var a=-1,o=function r(){for(;++a<e.length;)if(n.call(e,a))return r.value=e[a],r.done=!1,r;return r.value=t,r.done=!0,r};return o.next=o}}throw new TypeError(typeof e+" is not iterable")}return g.prototype=w,o(_,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:g,configurable:!0}),g.displayName=p(w,s,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===g||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,p(t,s,"GeneratorFunction")),t.prototype=Object.create(_),t},e.awrap=function(t){return{__await:t}},x(S.prototype),p(S.prototype,c,(function(){return this})),e.AsyncIterator=S,e.async=function(t,r,n,a,o){void 0===o&&(o=Promise);var i=new S(l(t,r,n,a),o);return e.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},x(_),p(_,s,"Generator"),p(_,u,(function(){return this})),p(_,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=O,T.prototype={constructor:T,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(k),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function a(n,a){return u.type="throw",u.arg=e,r.next=n,a&&(r.method="next",r.arg=t),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],u=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var c=n.call(i,"catchLoc"),s=n.call(i,"finallyLoc");if(c&&s){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r];if(a.tryLoc<=this.prev&&n.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var o=a;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=t,i.arg=e,o?(this.method="next",this.next=o.finallyLoc,v):this.complete(i)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),v},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),v}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var a=n.arg;k(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:O(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),v}},e}function o(t,e,r,n,a,o,i){try{var u=t[o](i),c=u.value}catch(t){return void r(t)}u.done?e(c):Promise.resolve(c).then(n,a)}function i(t){return function(){var e=this,r=arguments;return new Promise((function(n,a){var i=t.apply(e,r);function u(t){o(i,n,a,u,c,"next",t)}function c(t){o(i,n,a,u,c,"throw",t)}u(void 0)}))}}function u(){return(u=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}var c={user:{language:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isLoading:!1,isAuthenticated:!1,loginWithRedirect:function(){},logout:function(){},getAccessToken:function(){return Promise.resolve("")},updateUser:function(){return Promise.resolve(!1)},updateUserWithRedirect:function(){},sendEmailVerificationStatus:{status:{type:"info",message:"Sending email verification..."},isLoading:!1},sendEmailVerification:function(){return Promise.resolve(!1)}};function s(t,e){var r=e.payload;switch(e.type){case"LOGIN":return u({},t,{user:r.user,domain:r.domain,isAuthenticated:r.isAuthenticated});case"SET_IS_LOADING":return u({},t,{isLoading:r.isLoading});case"UPDATE_USER":return u({},t,{user:u({},t.user,r)});case"SET_SEND_EMAIL_VERIFICATION_STATUS":return u({},t,{sendEmailVerificationStatus:u({},t.sendEmailVerificationStatus,{status:{type:r.type,message:r.message}})});case"SET_SEND_EMAIL_VERIFICATION_IS_LOADING":return u({},t,{sendEmailVerificationStatus:u({},t.sendEmailVerificationStatus,{isLoading:r})});default:return t}}var p=Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/(192)\.(168)\.(1)\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm)||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));function l(t){var e=window.location.protocol+"//"+window.location.hostname+":4012/api/v1";return p?e:"https://"+t.domainName+".dauth.ovh/api/v1"}function f(t){var e=window.location.protocol+"//"+window.location.hostname+":5185";return p?e:"https://"+t.domainName+".dauth.ovh"}var d=function(){var t=i(a().mark((function t(e,r){var n,o;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(l({domainName:e})+"/t-get-user/"+e,n);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),h=function(){var t=i(a().mark((function t(e,r,n){var o,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o={method:"PATCH",headers:{Authorization:n,"Content-Type":"application/json"},body:JSON.stringify(r)},t.next=3,fetch(l({domainName:e})+"/t-update-user/"+e,o);case 3:return i=t.sent,t.next=6,i.json();case 6:return t.abrupt("return",{response:i,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r,n){return t.apply(this,arguments)}}(),m=function(){var t=i(a().mark((function t(e,r){var n,o;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(l({domainName:e})+"/t-resend-email-verification/"+e,n);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),v=function(){var t=i(a().mark((function t(e,r){var n,o;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(l({domainName:e})+"/t-refresh-access-token/"+e,n);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),y="dauth_state";function g(){return(g=i(a().mark((function t(e){var r,n,o,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.token,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,d(o,n);case 5:if(200!==(i=t.sent).response.status){t.next=12;break}return r({type:"LOGIN",payload:{user:i.data.user,domain:i.data.domain,isAuthenticated:!0}}),window.history.replaceState({},document.title,i.data.domain.loginRedirect),t.abrupt("return",localStorage.setItem(y,n));case 12:return t.abrupt("return",L(r));case 13:t.next=19;break;case 15:return t.prev=15,t.t0=t.catch(2),console.log(t.t0),t.abrupt("return",L(r));case 19:return t.prev=19,r({type:"SET_IS_LOADING",payload:{isLoading:!1}}),t.finish(19);case 22:case"end":return t.stop()}}),t,null,[[2,15,19,22]])})))).apply(this,arguments)}function w(){return(w=i(a().mark((function t(e){var r,n,o,i,u;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.dauth_state_ls,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,v(o,n);case 5:if(200!==(i=t.sent).response.status){t.next=20;break}return t.next=9,d(o,n);case 9:if(200!==(u=t.sent).response.status){t.next=16;break}return r({type:"LOGIN",payload:{user:u.data.user,domain:u.data.domain,isAuthenticated:!0}}),localStorage.setItem(y,i.data.accessToken),t.abrupt("return");case 16:return window.location.replace(f({domainName:o})+"/t-signin/"+o),t.abrupt("return",L(r));case 18:t.next=22;break;case 20:return window.location.replace(f({domainName:o})+"/t-signin/"+o),t.abrupt("return",L(r));case 22:t.next=28;break;case 24:return t.prev=24,t.t0=t.catch(2),console.log(t.t0),t.abrupt("return",L(r));case 28:return t.prev=28,r({type:"SET_IS_LOADING",payload:{isLoading:!1}}),t.finish(28);case 31:case"end":return t.stop()}}),t,null,[[2,24,28,31]])})))).apply(this,arguments)}function E(t){return b.apply(this,arguments)}function b(){return(b=i(a().mark((function t(e){var r,n,o,i,u;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.dispatch,n=e.domainName,i=e.token,(o=e.user).language&&window.document.documentElement.setAttribute("lang",o.language),i){t.next=5;break}return r({type:"UPDATE_USER",payload:o}),t.abrupt("return",!1);case 5:return t.prev=5,t.next=8,h(n,o,i);case 8:if(200!==(u=t.sent).response.status){t.next=14;break}return r({type:"UPDATE_USER",payload:u.data.user}),t.abrupt("return",!0);case 14:return console.log("Update user error",u.data.message),t.abrupt("return",!1);case 16:t.next=22;break;case 18:return t.prev=18,t.t0=t.catch(5),console.log("Update user error",t.t0),t.abrupt("return",!1);case 22:case"end":return t.stop()}}),t,null,[[5,18]])})))).apply(this,arguments)}function I(t){return _.apply(this,arguments)}function _(){return(_=i(a().mark((function t(e){var r,n,o,i;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.domainName,o=e.token,(r=e.dispatch)({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!0}),r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"info",message:"Sending email verification..."}}),t.prev=3,t.next=6,m(n,o);case 6:if(200!==(i=t.sent).response.status){t.next=13;break}return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"success",message:i.data.message}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!0);case 13:return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:i.data.message}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!1);case 16:t.next=23;break;case 18:return t.prev=18,t.t0=t.catch(3),r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:"Send email verification fetch error"}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!1);case 23:case"end":return t.stop()}}),t,null,[[3,18]])})))).apply(this,arguments)}function x(){return(x=i(a().mark((function t(e){var r,n,o;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.dispatch,n=e.domainName,o=e.token,t.prev=1,t.next=4,v(n,o);case 4:if(200!==t.sent.response.status){t.next=9;break}return t.abrupt("return");case 9:return window.location.replace(f({domainName:n})+"/t-signin/"+n),t.abrupt("return",L(r));case 11:t.next=17;break;case 13:throw t.prev=13,t.t0=t.catch(1),L(r),t.t0;case 17:case"end":return t.stop()}}),t,null,[[1,13]])})))).apply(this,arguments)}function S(t){return N.apply(this,arguments)}function N(){return(N=i(a().mark((function t(e){var r,n,o,i,u;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.dispatch,n=e.domainName,o=localStorage.getItem(y)){t.next=4;break}return t.abrupt("return");case 4:return t.prev=4,t.next=7,v(n,o);case 7:if(200!==(i=t.sent).response.status){t.next=12;break}return t.abrupt("return",null!=(u=i.data.accessToken)?u:o);case 12:return L(r),t.abrupt("return","token-not-found");case 14:t.next=20;break;case 16:throw t.prev=16,t.t0=t.catch(4),L(r),t.t0;case 20:case"end":return t.stop()}}),t,null,[[4,16]])})))).apply(this,arguments)}var L=function(t){return localStorage.removeItem(y),t({type:"LOGIN",payload:{user:{},domain:{},isAuthenticated:!1}})},A=e.createContext(c);exports.DauthProvider=function(t){var o=t.domainName,p=t.ask,l=t.children,d=e.useReducer(s,c),h=d[0],m=d[1];e.useEffect((function(){if(h.isAuthenticated){var t=setInterval((function(){var t=localStorage.getItem(y);t&&function(t){x.apply(this,arguments)}({dispatch:m,domainName:o,token:t})}),6e4);return function(){return clearInterval(t)}}}),[]),e.useEffect((function(){var t=window.location.search;if(t){var e=new URLSearchParams(t).get(y);e&&!h.isAuthenticated&&function(t){g.apply(this,arguments)}({dispatch:m,token:e,domainName:o})}}),[]),e.useEffect((function(){if(!h.isAuthenticated){var t=localStorage.getItem(y);if(t){try{var e=n.decode(t,p);console.log({verify:e})}catch(t){console.log(t)}t&&!h.isAuthenticated&&function(t){w.apply(this,arguments)}({dispatch:m,dauth_state_ls:t,domainName:o})}}}),[]);var v=e.useCallback((function(){return window.location.replace(f({domainName:o})+"/t-signin/"+o)}),[o,o]),b=e.useCallback((function(){return function(t){var e=t.dispatch;return e({type:"SET_IS_LOADING",payload:{isLoading:!0}}),e({type:"LOGIN",payload:{user:{language:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isAuthenticated:!1}}),localStorage.removeItem(y),e({type:"SET_IS_LOADING",payload:{isLoading:!1}})}({dispatch:m})}),[]),_=e.useCallback(i(a().mark((function t(){return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,S({dispatch:m,domainName:o});case 2:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)}))),[]),N=e.useCallback(function(){var t=i(a().mark((function t(e){var r,n,i,u,c,s,p,l,f;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.name,n=e.lastname,i=e.nickname,u=e.telPrefix,c=e.telSuffix,s=e.language,p=e.avatar,l=localStorage.getItem(y),f={name:r,lastname:n,nickname:i,telPrefix:u,telSuffix:c,language:s,avatar:p},t.next=5,E({dispatch:m,domainName:o,user:f,token:l});case 5:return t.abrupt("return",t.sent);case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),[o]),L=e.useCallback((function(){var t=localStorage.getItem(y);if(t)return window.location.replace(f({domainName:o})+"/t-update-user/"+o+"/"+t)}),[o,o]),k=e.useCallback(i(a().mark((function t(){var e;return a().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=localStorage.getItem(y)){t.next=3;break}return t.abrupt("return",!1);case 3:return t.next=5,I({dispatch:m,domainName:o,token:e});case 5:return t.abrupt("return",t.sent);case 6:case"end":return t.stop()}}),t)}))),[o]),T=e.useMemo((function(){return u({},h,{loginWithRedirect:v,logout:b,getAccessToken:_,updateUser:N,updateUserWithRedirect:L,sendEmailVerification:k})}),[h,v,b,_,N,L,k]);return r.createElement(A.Provider,{value:T},l)},exports.useDauth=function(){var t=e.useContext(A);if(!t)throw new Error("useDauth must be used inside DauthProvider");return t};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,e=require("react"),r=(t=e)&&"object"==typeof t&&"default"in t?t.default:t;function n(){n=function(){return e};var t,e={},r=Object.prototype,a=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},u=i.iterator||"@@iterator",s=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function p(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{p({},"")}catch(t){p=function(t,e,r){return t[e]=r}}function l(t,e,r,n){var a=Object.create((e&&e.prototype instanceof y?e:y).prototype),i=new T(n||[]);return o(a,"_invoke",{value:k(t,r,i)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=l;var d="suspendedStart",h="executing",m="completed",v={};function y(){}function g(){}function w(){}var b={};p(b,u,(function(){return this}));var x=Object.getPrototypeOf,E=x&&x(x(O([])));E&&E!==r&&a.call(E,u)&&(b=E);var I=w.prototype=y.prototype=Object.create(b);function _(t){["next","throw","return"].forEach((function(e){p(t,e,(function(t){return this._invoke(e,t)}))}))}function S(t,e){function r(n,o,i,u){var s=f(t[n],t,o);if("throw"!==s.type){var c=s.arg,p=c.value;return p&&"object"==typeof p&&a.call(p,"__await")?e.resolve(p.__await).then((function(t){r("next",t,i,u)}),(function(t){r("throw",t,i,u)})):e.resolve(p).then((function(t){c.value=t,i(c)}),(function(t){return r("throw",t,i,u)}))}u(s.arg)}var n;o(this,"_invoke",{value:function(t,a){function o(){return new e((function(e,n){r(t,a,e,n)}))}return n=n?n.then(o,o):o()}})}function k(e,r,n){var a=d;return function(o,i){if(a===h)throw new Error("Generator is already running");if(a===m){if("throw"===o)throw i;return{value:t,done:!0}}for(n.method=o,n.arg=i;;){var u=n.delegate;if(u){var s=N(u,n);if(s){if(s===v)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(a===d)throw a=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);a=h;var c=f(e,r,n);if("normal"===c.type){if(a=n.done?m:"suspendedYield",c.arg===v)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(a=m,n.method="throw",n.arg=c.arg)}}}function N(e,r){var n=r.method,a=e.iterator[n];if(a===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,N(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),v;var o=f(a,e.iterator,r.arg);if("throw"===o.type)return r.method="throw",r.arg=o.arg,r.delegate=null,v;var i=o.arg;return i?i.done?(r[e.resultName]=i.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,v):i:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,v)}function L(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(L,this),this.reset(!0)}function O(e){if(e||""===e){var r=e[u];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function r(){for(;++n<e.length;)if(a.call(e,n))return r.value=e[n],r.done=!1,r;return r.value=t,r.done=!0,r};return o.next=o}}throw new TypeError(typeof e+" is not iterable")}return g.prototype=w,o(I,"constructor",{value:w,configurable:!0}),o(w,"constructor",{value:g,configurable:!0}),g.displayName=p(w,c,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===g||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,w):(t.__proto__=w,p(t,c,"GeneratorFunction")),t.prototype=Object.create(I),t},e.awrap=function(t){return{__await:t}},_(S.prototype),p(S.prototype,s,(function(){return this})),e.AsyncIterator=S,e.async=function(t,r,n,a,o){void 0===o&&(o=Promise);var i=new S(l(t,r,n,a),o);return e.isGeneratorFunction(r)?i:i.next().then((function(t){return t.done?t.value:i.next()}))},_(I),p(I,c,"Generator"),p(I,u,(function(){return this})),p(I,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=O,T.prototype={constructor:T,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(A),!e)for(var r in this)"t"===r.charAt(0)&&a.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function n(n,a){return u.type="throw",u.arg=e,r.next=n,a&&(r.method="next",r.arg=t),!!a}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],u=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=a.call(i,"catchLoc"),c=a.call(i,"finallyLoc");if(s&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&a.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var o=n;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var i=o?o.completion:{};return i.type=t,i.arg=e,o?(this.method="next",this.next=o.finallyLoc,v):this.complete(i)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),v},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),v}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var a=n.arg;A(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:O(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),v}},e}function a(t,e,r,n,a,o,i){try{var u=t[o](i),s=u.value}catch(t){return void r(t)}u.done?e(s):Promise.resolve(s).then(n,a)}function o(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function u(t){a(i,n,o,u,s,"next",t)}function s(t){a(i,n,o,u,s,"throw",t)}u(void 0)}))}}function i(){return(i=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t}).apply(this,arguments)}var u={user:{language:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isLoading:!1,isAuthenticated:!1,loginWithRedirect:function(){},logout:function(){},getAccessToken:function(){return Promise.resolve("")},updateUser:function(){return Promise.resolve(!1)},updateUserWithRedirect:function(){},sendEmailVerificationStatus:{status:{type:"info",message:"Sending email verification..."},isLoading:!1},sendEmailVerification:function(){return Promise.resolve(!1)}};function s(t,e){var r=e.payload;switch(e.type){case"LOGIN":return i({},t,{user:r.user,domain:r.domain,isAuthenticated:r.isAuthenticated});case"SET_IS_LOADING":return i({},t,{isLoading:r.isLoading});case"UPDATE_USER":return i({},t,{user:i({},t.user,r)});case"SET_SEND_EMAIL_VERIFICATION_STATUS":return i({},t,{sendEmailVerificationStatus:i({},t.sendEmailVerificationStatus,{status:{type:r.type,message:r.message}})});case"SET_SEND_EMAIL_VERIFICATION_IS_LOADING":return i({},t,{sendEmailVerificationStatus:i({},t.sendEmailVerificationStatus,{isLoading:r})});default:return t}}var c=Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/(192)\.(168)\.(1)\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm)||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));function p(t){var e=window.location.protocol+"//"+window.location.hostname+":4012/api/v1";return c?e:"https://"+t.domainName+".dauth.ovh/api/v1"}function l(t){var e=window.location.protocol+"//"+window.location.hostname+":5185";return c?e:"https://"+t.domainName+".dauth.ovh"}var f=function(){var t=o(n().mark((function t(e,r){var a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(p({domainName:e})+"/t-get-user/"+e,a);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),d=function(){var t=o(n().mark((function t(e,r,a){var o,i;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o={method:"PATCH",headers:{Authorization:a,"Content-Type":"application/json"},body:JSON.stringify(r)},t.next=3,fetch(p({domainName:e})+"/t-update-user/"+e,o);case 3:return i=t.sent,t.next=6,i.json();case 6:return t.abrupt("return",{response:i,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r,n){return t.apply(this,arguments)}}(),h=function(){var t=o(n().mark((function t(e,r){var a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(p({domainName:e})+"/t-resend-email-verification/"+e,a);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),m=function(){var t=o(n().mark((function t(e,r){var a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a={method:"GET",headers:{Authorization:r,"Content-Type":"application/json"}},t.next=3,fetch(p({domainName:e})+"/t-refresh-access-token/"+e,a);case 3:return o=t.sent,t.next=6,o.json();case 6:return t.abrupt("return",{response:o,data:t.sent});case 8:case"end":return t.stop()}}),t)})));return function(e,r){return t.apply(this,arguments)}}(),v=function(){var t=o(n().mark((function t(e){var r,a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.domainName,a={method:"POST",headers:{Authorization:e.token,"Content-Type":"application/json"},body:JSON.stringify({ask:e.ask})},t.next=4,fetch(p({domainName:r})+"/t-verify-token/"+r,a);case 4:return o=t.sent,t.next=7,o.json();case 7:return t.abrupt("return",{response:o,data:t.sent});case 9:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),y="dauth_state";function g(t){return w.apply(this,arguments)}function w(){return(w=o(n().mark((function t(e){var r,a,o,i;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=e.token,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,f(o,a);case 5:if(200!==(i=t.sent).response.status){t.next=12;break}return r({type:"LOGIN",payload:{user:i.data.user,domain:i.data.domain,isAuthenticated:!0}}),window.history.replaceState({},document.title,i.data.domain.loginRedirect),t.abrupt("return",localStorage.setItem(y,a));case 12:return t.abrupt("return",O(r));case 13:t.next=19;break;case 15:return t.prev=15,t.t0=t.catch(2),console.log(t.t0),t.abrupt("return",O(r));case 19:return t.prev=19,r({type:"SET_IS_LOADING",payload:{isLoading:!1}}),t.finish(19);case 22:case"end":return t.stop()}}),t,null,[[2,15,19,22]])})))).apply(this,arguments)}function b(t){return x.apply(this,arguments)}function x(){return(x=o(n().mark((function t(e){var r,a,o,i,u;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=e.dauth_state_ls,o=e.domainName,(r=e.dispatch)({type:"SET_IS_LOADING",payload:{isLoading:!0}}),t.prev=2,t.next=5,m(o,a);case 5:if(200!==(i=t.sent).response.status){t.next=20;break}return t.next=9,f(o,a);case 9:if(200!==(u=t.sent).response.status){t.next=16;break}return r({type:"LOGIN",payload:{user:u.data.user,domain:u.data.domain,isAuthenticated:!0}}),localStorage.setItem(y,i.data.accessToken),t.abrupt("return");case 16:return window.location.replace(l({domainName:o})+"/t-signin/"+o),t.abrupt("return",O(r));case 18:t.next=22;break;case 20:return window.location.replace(l({domainName:o})+"/t-signin/"+o),t.abrupt("return",O(r));case 22:t.next=28;break;case 24:return t.prev=24,t.t0=t.catch(2),console.log(t.t0),t.abrupt("return",O(r));case 28:return t.prev=28,r({type:"SET_IS_LOADING",payload:{isLoading:!1}}),t.finish(28);case 31:case"end":return t.stop()}}),t,null,[[2,24,28,31]])})))).apply(this,arguments)}function E(t){var e=t.dispatch;return e({type:"SET_IS_LOADING",payload:{isLoading:!0}}),e({type:"LOGIN",payload:{user:{language:window.document.documentElement.getAttribute("lang")||"es"},domain:{},isAuthenticated:!1}}),localStorage.removeItem(y),e({type:"SET_IS_LOADING",payload:{isLoading:!1}})}function I(t){return _.apply(this,arguments)}function _(){return(_=o(n().mark((function t(e){var r,a,o,i,u;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.dispatch,a=e.domainName,i=e.token,(o=e.user).language&&window.document.documentElement.setAttribute("lang",o.language),i){t.next=5;break}return r({type:"UPDATE_USER",payload:o}),t.abrupt("return",!1);case 5:return t.prev=5,t.next=8,d(a,o,i);case 8:if(200!==(u=t.sent).response.status){t.next=14;break}return r({type:"UPDATE_USER",payload:u.data.user}),t.abrupt("return",!0);case 14:return console.log("Update user error",u.data.message),t.abrupt("return",!1);case 16:t.next=22;break;case 18:return t.prev=18,t.t0=t.catch(5),console.log("Update user error",t.t0),t.abrupt("return",!1);case 22:case"end":return t.stop()}}),t,null,[[5,18]])})))).apply(this,arguments)}function S(t){return k.apply(this,arguments)}function k(){return(k=o(n().mark((function t(e){var r,a,o,i;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return a=e.domainName,o=e.token,(r=e.dispatch)({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!0}),r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"info",message:"Sending email verification..."}}),t.prev=3,t.next=6,h(a,o);case 6:if(200!==(i=t.sent).response.status){t.next=13;break}return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"success",message:i.data.message}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!0);case 13:return r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:i.data.message}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!1);case 16:t.next=23;break;case 18:return t.prev=18,t.t0=t.catch(3),r({type:"SET_SEND_EMAIL_VERIFICATION_STATUS",payload:{type:"error",message:"Send email verification fetch error"}}),r({type:"SET_SEND_EMAIL_VERIFICATION_IS_LOADING",payload:!1}),t.abrupt("return",!1);case 23:case"end":return t.stop()}}),t,null,[[3,18]])})))).apply(this,arguments)}function N(t){return L.apply(this,arguments)}function L(){return(L=o(n().mark((function t(e){var r,a,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.dispatch,a=e.domainName,o=e.token,t.prev=1,t.next=4,m(a,o);case 4:if(200!==t.sent.response.status){t.next=9;break}return t.abrupt("return");case 9:return window.location.replace(l({domainName:a})+"/t-signin/"+a),t.abrupt("return",O(r));case 11:t.next=17;break;case 13:throw t.prev=13,t.t0=t.catch(1),O(r),t.t0;case 17:case"end":return t.stop()}}),t,null,[[1,13]])})))).apply(this,arguments)}function A(t){return T.apply(this,arguments)}function T(){return(T=o(n().mark((function t(e){var r,a,o,i,u;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=e.dispatch,a=e.domainName,o=localStorage.getItem(y)){t.next=4;break}return t.abrupt("return");case 4:return t.prev=4,t.next=7,m(a,o);case 7:if(200!==(i=t.sent).response.status){t.next=12;break}return t.abrupt("return",null!=(u=i.data.accessToken)?u:o);case 12:return O(r),t.abrupt("return","token-not-found");case 14:t.next=20;break;case 16:throw t.prev=16,t.t0=t.catch(4),O(r),t.t0;case 20:case"end":return t.stop()}}),t,null,[[4,16]])})))).apply(this,arguments)}var O=function(t){return localStorage.removeItem(y),t({type:"LOGIN",payload:{user:{},domain:{},isAuthenticated:!1}})},D=e.createContext(u);exports.DauthProvider=function(t){var a=t.domainName,c=t.ask,p=t.children,f=e.useReducer(s,u),d=f[0],h=f[1],m=e.useCallback(function(){var t=o(n().mark((function t(e){return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,v({domainName:a,token:e,ask:c});case 2:if(200===t.sent.response.status){t.next=5;break}return t.abrupt("return",E({dispatch:h}));case 5:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),[a,c]);e.useEffect((function(){if(d.isAuthenticated){var t=setInterval(o(n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=localStorage.getItem(y)){t.next=3;break}return t.abrupt("return");case 3:return t.next=5,m(e);case 5:return t.abrupt("return",N({dispatch:h,domainName:a,token:e}));case 6:case"end":return t.stop()}}),t)}))),6e4);return function(){return clearInterval(t)}}}),[]),e.useEffect((function(){o(n().mark((function t(){var e,r,o;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=window.location.search){t.next=3;break}return t.abrupt("return");case 3:if(r=new URLSearchParams(e),!(o=r.get(y))||d.isAuthenticated){t.next=9;break}return t.next=8,m(o);case 8:g({dispatch:h,token:o,domainName:a});case 9:case"end":return t.stop()}}),t)})))()}),[]),e.useEffect((function(){o(n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!(e=localStorage.getItem(y))||d.isAuthenticated){t.next=5;break}return t.next=4,m(e);case 4:b({dispatch:h,dauth_state_ls:e,domainName:a});case 5:case"end":return t.stop()}}),t)})))()}),[]);var w=e.useCallback((function(){return window.location.replace(l({domainName:a})+"/t-signin/"+a)}),[a,a]),x=e.useCallback((function(){return E({dispatch:h})}),[]),_=e.useCallback(o(n().mark((function t(){return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,A({dispatch:h,domainName:a});case 2:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)}))),[]),k=e.useCallback(function(){var t=o(n().mark((function t(e){var r,o,i,u,s,c,p,l,f;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.name,o=e.lastname,i=e.nickname,u=e.telPrefix,s=e.telSuffix,c=e.language,p=e.avatar,l=localStorage.getItem(y),f={name:r,lastname:o,nickname:i,telPrefix:u,telSuffix:s,language:c,avatar:p},t.next=5,I({dispatch:h,domainName:a,user:f,token:l});case 5:return t.abrupt("return",t.sent);case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),[a]),L=e.useCallback((function(){var t=localStorage.getItem(y);if(t)return window.location.replace(l({domainName:a})+"/t-update-user/"+a+"/"+t)}),[a,a]),T=e.useCallback(o(n().mark((function t(){var e;return n().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=localStorage.getItem(y)){t.next=3;break}return t.abrupt("return",!1);case 3:return t.next=5,S({dispatch:h,domainName:a,token:e});case 5:return t.abrupt("return",t.sent);case 6:case"end":return t.stop()}}),t)}))),[a]),O=e.useMemo((function(){return i({},d,{loginWithRedirect:w,logout:x,getAccessToken:_,updateUser:k,updateUserWithRedirect:L,sendEmailVerification:T})}),[d,w,x,_,k,L,T]);return r.createElement(D.Provider,{value:O},p)},exports.useDauth=function(){var t=e.useContext(D);if(!t)throw new Error("useDauth must be used inside DauthProvider");return t};
2
2
  //# sourceMappingURL=dauth-context-react.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dauth-context-react.cjs.production.min.js","sources":["../src/initialDauthState.ts","../src/reducer/dauth.reducer.ts","../src/reducer/dauth.types.ts","../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/constants.ts","../src/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["export interface IDauthUser {\n _id: string;\n name: string;\n lastname: string;\n nickname: string;\n email: string;\n isVerified: boolean;\n language: string;\n avatar: {\n id: string;\n url: string;\n };\n role: string;\n telPrefix: string;\n telSuffix: string;\n createdAt: Date;\n updatedAt: Date;\n lastLogin: Date;\n}\n\nexport interface IDauthDomainState {\n name: string;\n loginRedirect: string;\n allowedOrigins: string[];\n}\n\nexport interface IDauthState {\n user: IDauthUser;\n domain: IDauthDomainState;\n isLoading: boolean;\n isAuthenticated: boolean;\n loginWithRedirect: () => void;\n logout: () => void;\n getAccessToken: () => Promise<string>;\n updateUser: ({\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => Promise<boolean>;\n updateUserWithRedirect: () => void;\n // Send email verification\n sendEmailVerificationStatus: {\n status: IActionStatus;\n isLoading: boolean;\n };\n sendEmailVerification: () => Promise<boolean>;\n}\n\nexport interface IActionStatus {\n type: TStatusTypes;\n message: string;\n}\nexport type TStatusTypes = 'success' | 'error' | 'info' | 'warning';\n\nconst initialDauthState: IDauthState = {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: false,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => Promise.resolve(''),\n updateUser: () => Promise.resolve(false),\n updateUserWithRedirect: () => {},\n // Send email verification\n sendEmailVerificationStatus: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => Promise.resolve(false),\n};\n\nexport default initialDauthState;\n","import { IDauthState } from '../initialDauthState';\nimport * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: IDauthState, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN: {\n const login: IDauthState = {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n return login;\n }\n\n case DauthTypes.SET_IS_LOADING: {\n const isLoading: IDauthState = {\n ...state,\n isLoading: payload.isLoading,\n };\n return isLoading;\n }\n\n case DauthTypes.UPDATE_USER: {\n const updateUser: IDauthState = {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n return updateUser;\n }\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS: {\n const setSendEmailVerificationStatus: IDauthState = {\n ...state,\n sendEmailVerificationStatus: {\n ...state.sendEmailVerificationStatus,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n return setSendEmailVerificationStatus;\n }\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING: {\n const setSendEmailVerificationIsLoading: IDauthState = {\n ...state,\n sendEmailVerificationStatus: {\n ...state.sendEmailVerificationStatus,\n isLoading: payload,\n },\n };\n return setSendEmailVerificationIsLoading;\n }\n\n default:\n return state;\n }\n}\n","export const LOGIN = 'LOGIN';\nexport const SET_IS_LOADING = 'SET_IS_LOADING';\nexport const UPDATE_USER = 'UPDATE_USER';\nexport const SET_SEND_EMAIL_VERIFICATION_IS_LOADING =\n 'SET_SEND_EMAIL_VERIFICATION_IS_LOADING';\nexport const SET_SEND_EMAIL_VERIFICATION_STATUS =\n 'SET_SEND_EMAIL_VERIFICATION_STATUS';\n","const isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n window.location.hostname === '[::1]' ||\n window.location.hostname.match(\n /(192)\\.(168)\\.(1)\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm\n ) ||\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const serverPort = 4012;\n const serverLocalUrl = `${window.location.protocol}//${window.location.hostname}:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n\nexport function getClientBasePath({ domainName }: { domainName: string }) {\n const clientPort = 5185;\n const clientLocalUrl = `${window.location.protocol}//${window.location.hostname}:${clientPort}`;\n const clientProdUrl = `https://${domainName}.${serverDomain}`;\n const clientBasePath = isLocalhost ? clientLocalUrl : clientProdUrl;\n return clientBasePath;\n}\n","import { IDauthUser } from '../initialDauthState';\nimport { routes } from '../routes';\nimport { getServerBasePath } from './utils/config';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantGetUser\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const updateUserAPI = async (\n domainName: string,\n user: Partial<IDauthUser>,\n token: string\n): Promise<any> => {\n const params = {\n method: 'PATCH',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(user),\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantUpdateUser\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const sendEmailVerificationAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantResendEmailVerification\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const refreshAccessTokenAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantRefreshAccessToken\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const TOKEN_LS = 'dauth_state';\n","import {\n getUserAPI,\n refreshAccessTokenAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { getClientBasePath } from '../api/utils/config';\nimport { TOKEN_LS } from '../constants';\nimport { IDauthDomainState, IDauthUser } from '../initialDauthState';\nimport { routes } from '../routes';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: React.Dispatch<any>;\n token: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n token,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, token);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: getUserFetch.data.user,\n domain: getUserFetch.data.domain,\n isAuthenticated: true,\n },\n });\n window.history.replaceState(\n {},\n document.title,\n getUserFetch.data.domain.loginRedirect\n );\n return localStorage.setItem(TOKEN_LS, token);\n } else {\n return resetUser(dispatch);\n }\n } catch (error) {\n console.log(error);\n return resetUser(dispatch);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: React.Dispatch<any>;\n dauth_state_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n dauth_state_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n dauth_state_ls\n ); \n if (refreshAccessTokenFetch.response.status === 200) {\n const getUserFetch = await getUserAPI(domainName, dauth_state_ls);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: getUserFetch.data.user,\n domain: getUserFetch.data.domain,\n isAuthenticated: true,\n },\n });\n localStorage.setItem(\n TOKEN_LS,\n refreshAccessTokenFetch.data.accessToken\n );\n return;\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${routes.tenantSignin}/${domainName}`\n );\n return resetUser(dispatch);\n }\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${routes.tenantSignin}/${domainName}`\n );\n return resetUser(dispatch);\n }\n } catch (error) {\n console.log(error);\n return resetUser(dispatch);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport function setLogoutAction({\n dispatch,\n}: {\n dispatch: React.Dispatch<any>;\n}) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n },\n domain: {},\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(TOKEN_LS);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n dispatch: React.Dispatch<any>;\n domainName: string;\n user: Partial<IDauthUser>;\n token: string | null;\n};\nexport async function setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token,\n}: TSetUpdateAction) {\n if (user.language) {\n window.document.documentElement.setAttribute('lang', user.language);\n }\n if (!token) {\n dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n return false;\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n return true;\n } else {\n console.log('Update user error', getUserFetch.data.message);\n return false;\n }\n } catch (error) {\n console.log('Update user error', error);\n return false;\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n dispatch: React.Dispatch<any>;\n domainName: string;\n token: string;\n};\nexport async function sendEmailVerificationAction({\n dispatch,\n domainName,\n token,\n}: TSetSendEmailVerificationAction) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: true,\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'info', message: 'Sending email verification...' },\n });\n try {\n const sendEmailFetch = await sendEmailVerificationAPI(domainName, token);\n if (sendEmailFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'success', message: sendEmailFetch.data.message },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return true;\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return false;\n }\n } catch (error) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: {\n type: 'error',\n message: 'Send email verification fetch error',\n },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return false;\n }\n}\n\nexport async function checkTokenAction({\n dispatch,\n domainName,\n token,\n}: {\n dispatch: React.Dispatch<any>;\n domainName: string;\n token: string;\n}) {\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n return;\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${routes.tenantSignin}/${domainName}`\n );\n return resetUser(dispatch);\n }\n } catch (error) {\n resetUser(dispatch);\n throw error;\n }\n}\n\nexport async function getAccessTokenAction({\n dispatch,\n domainName,\n}: {\n dispatch: React.Dispatch<any>;\n domainName: string;\n}) {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token_ls\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n return refreshAccessTokenFetch.data.accessToken ?? token_ls;\n } else {\n resetUser(dispatch);\n return 'token-not-found';\n }\n } catch (error) {\n resetUser(dispatch);\n throw error;\n }\n}\n\n///////////////////////////////////////////\n//////////////////////////////////////////\nexport const resetUser = (dispatch: React.Dispatch<any>) => {\n localStorage.removeItem(TOKEN_LS);\n return dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n};\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState, { IDauthUser } from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { TOKEN_LS } from './constants';\nimport { routes } from './routes';\nimport JWT from 'expo-jwt';\n\ninterface DauthProviderProps {\n domainName: string;\n ask: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, ask, children } = props;\n const [dauthState, dispatch] = useReducer(userReducer, initialDauthState);\n\n // Check token periodically\n useEffect(() => {\n if (!dauthState.isAuthenticated) return;\n let interval = setInterval(() => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n action.checkTokenAction({ dispatch, domainName, token: token_ls });\n }, 1000 * 60 * 1);\n return () => clearInterval(interval);\n }, []);\n\n // Catch login redirect\n useEffect(() => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const token_url = urlParams.get(TOKEN_LS);\n if (token_url && !dauthState.isAuthenticated) {\n action.setDauthStateAction({ dispatch, token: token_url, domainName });\n }\n }, []);\n\n // Auto Login\n useEffect(() => {\n if (dauthState.isAuthenticated) return;\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n \n try {\n const verify = JWT.decode(token_ls, ask as string);\n console.log({ verify });\n } catch (error) {\n console.log(error);\n }\n\n if (token_ls && !dauthState.isAuthenticated) {\n action.setAutoLoginAction({\n dispatch,\n dauth_state_ls: token_ls,\n domainName,\n });\n }\n }, []);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath({ domainName })}/${\n routes.tenantSignin\n }/${domainName}`\n );\n }, [domainName, domainName]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(async () => {\n const token = await action.getAccessTokenAction({ dispatch, domainName });\n return token as string;\n }, []);\n\n const updateUser = useCallback(\n async ({\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n const user = {\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return (await action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n })) as boolean;\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath({ domainName })}/${\n routes.tenantUpdateUser\n }/${domainName}/${token_ls}`\n );\n }, [domainName, domainName]);\n\n const sendEmailVerification = useCallback(async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return false;\n return (await action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n })) as boolean;\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken,\n updateUser,\n updateUserWithRedirect,\n sendEmailVerification,\n }),\n [\n dauthState,\n loginWithRedirect,\n logout,\n getAccessToken,\n updateUser,\n updateUserWithRedirect,\n sendEmailVerification,\n ]\n );\n\n return (\n <DauthContext.Provider value={memoProvider}>\n {children}\n </DauthContext.Provider>\n );\n};\n\nconst DauthContext = createContext(initialDauthState);\n\nexport const useDauth = () => {\n const context = useContext(DauthContext);\n if (!context) {\n throw new Error('useDauth must be used inside DauthProvider');\n }\n return context;\n};\n"],"names":["initialDauthState","user","language","window","document","documentElement","getAttribute","domain","isLoading","isAuthenticated","loginWithRedirect","logout","getAccessToken","Promise","resolve","updateUser","updateUserWithRedirect","sendEmailVerificationStatus","status","type","message","sendEmailVerification","userReducer","state","action","payload","_extends","isLocalhost","Boolean","location","hostname","match","getServerBasePath","_ref","serverLocalUrl","protocol","domainName","getClientBasePath","_ref2","clientLocalUrl","getUserAPI","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","params","response","wrap","_context","prev","next","method","headers","Authorization","Content-Type","fetch","sent","json","abrupt","data","stop","_x","_x2","apply","arguments","updateUserAPI","_callee2","_context2","body","JSON","stringify","_x3","_x4","_x5","sendEmailVerificationAPI","_ref3","_callee3","_context3","_x6","_x7","refreshAccessTokenAPI","_ref4","_callee4","_context4","_x8","_x9","TOKEN_LS","_setDauthStateAction","dispatch","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","resetUser","t0","console","log","finish","_setAutoLoginAction","dauth_state_ls","refreshAccessTokenFetch","accessToken","replace","setUpdateUserAction","_setUpdateUserAction","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","_ref5","sendEmailFetch","_checkTokenAction","_callee5","_ref6","_context5","getAccessTokenAction","_getAccessTokenAction","_callee6","_ref7","token_ls","_refreshAccessTokenFe","_context6","getItem","removeItem","DauthContext","createContext","props","ask","children","_useReducer","useReducer","dauthState","useEffect","interval","setInterval","clearInterval","queryString","search","token_url","URLSearchParams","get","verify","JWT","decode","error","useCallback","name","lastname","nickname","telPrefix","telSuffix","avatar","memoProvider","useMemo","React","Provider","value","context","useContext","Error"],"mappings":"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"}
1
+ {"version":3,"file":"dauth-context-react.cjs.production.min.js","sources":["../src/initialDauthState.ts","../src/reducer/dauth.reducer.ts","../src/reducer/dauth.types.ts","../src/api/utils/config.ts","../src/api/dauth.api.ts","../src/constants.ts","../src/reducer/dauth.actions.ts","../src/index.tsx"],"sourcesContent":["import { IActionStatus, IDauthDomainState, IDauthState, IDauthUser } from \"./interfaces\";\n\nconst initialDauthState: IDauthState = {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n } as IDauthUser,\n domain: {} as IDauthDomainState,\n isLoading: false,\n isAuthenticated: false,\n loginWithRedirect: () => {},\n logout: () => {},\n getAccessToken: () => Promise.resolve(''),\n updateUser: () => Promise.resolve(false),\n updateUserWithRedirect: () => {},\n // Send email verification\n sendEmailVerificationStatus: {\n status: {\n type: 'info',\n message: 'Sending email verification...',\n } as IActionStatus,\n isLoading: false,\n },\n sendEmailVerification: () => Promise.resolve(false),\n};\n\nexport default initialDauthState;\n","import { IDauthState } from '../interfaces';\nimport * as DauthTypes from './dauth.types';\n\nexport default function userReducer(state: IDauthState, action: any) {\n const { type, payload } = action;\n\n switch (type) {\n case DauthTypes.LOGIN: {\n const login: IDauthState = {\n ...state,\n user: payload.user,\n domain: payload.domain,\n isAuthenticated: payload.isAuthenticated,\n };\n return login;\n }\n\n case DauthTypes.SET_IS_LOADING: {\n const isLoading: IDauthState = {\n ...state,\n isLoading: payload.isLoading,\n };\n return isLoading;\n }\n\n case DauthTypes.UPDATE_USER: {\n const updateUser: IDauthState = {\n ...state,\n user: {\n ...state.user,\n ...payload,\n },\n };\n return updateUser;\n }\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS: {\n const setSendEmailVerificationStatus: IDauthState = {\n ...state,\n sendEmailVerificationStatus: {\n ...state.sendEmailVerificationStatus,\n status: {\n type: payload.type,\n message: payload.message,\n },\n },\n };\n return setSendEmailVerificationStatus;\n }\n\n case DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING: {\n const setSendEmailVerificationIsLoading: IDauthState = {\n ...state,\n sendEmailVerificationStatus: {\n ...state.sendEmailVerificationStatus,\n isLoading: payload,\n },\n };\n return setSendEmailVerificationIsLoading;\n }\n\n default:\n return state;\n }\n}\n","export const LOGIN = 'LOGIN';\nexport const SET_IS_LOADING = 'SET_IS_LOADING';\nexport const UPDATE_USER = 'UPDATE_USER';\nexport const SET_SEND_EMAIL_VERIFICATION_IS_LOADING =\n 'SET_SEND_EMAIL_VERIFICATION_IS_LOADING';\nexport const SET_SEND_EMAIL_VERIFICATION_STATUS =\n 'SET_SEND_EMAIL_VERIFICATION_STATUS';\n","const isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n window.location.hostname === '[::1]' ||\n window.location.hostname.match(\n /(192)\\.(168)\\.(1)\\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm\n ) ||\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\nexport const apiVersion = 'v1';\nexport const serverDomain = 'dauth.ovh';\n\nexport function getServerBasePath({ domainName }: { domainName: string }) {\n const serverPort = 4012;\n const serverLocalUrl = `${window.location.protocol}//${window.location.hostname}:${serverPort}/api/${apiVersion}`;\n const serverProdUrl = `https://${domainName}.${serverDomain}/api/${apiVersion}`;\n const serverBasePath = isLocalhost ? serverLocalUrl : serverProdUrl;\n return serverBasePath;\n}\n\nexport function getClientBasePath({ domainName }: { domainName: string }) {\n const clientPort = 5185;\n const clientLocalUrl = `${window.location.protocol}//${window.location.hostname}:${clientPort}`;\n const clientProdUrl = `https://${domainName}.${serverDomain}`;\n const clientBasePath = isLocalhost ? clientLocalUrl : clientProdUrl;\n return clientBasePath;\n}\n","import { routes } from './utils/routes';\nimport { getServerBasePath } from './utils/config';\nimport { IDauthUser } from '../interfaces';\n\nexport const getUserAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantGetUser\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const updateUserAPI = async (\n domainName: string,\n user: Partial<IDauthUser>,\n token: string\n): Promise<any> => {\n const params = {\n method: 'PATCH',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(user),\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantUpdateUser\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const sendEmailVerificationAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantResendEmailVerification\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const refreshAccessTokenAPI = async (\n domainName: string,\n token: string\n): Promise<any> => {\n const params = {\n method: 'GET',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantRefreshAccessToken\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n\nexport const verifyTokenAPI = async ({\n domainName,\n ask,\n token,\n}: {\n domainName: string;\n ask: string;\n token: string;\n}): Promise<any> => {\n const params = {\n method: 'POST',\n headers: {\n Authorization: token,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({ ask }),\n };\n const response = await fetch(\n `${getServerBasePath({ domainName })}/${\n routes.tenantVerifyToken\n }/${domainName}`,\n params\n );\n const data = await response.json();\n return { response, data };\n};\n","export const TOKEN_LS = 'dauth_state';\n","import {\n getUserAPI,\n refreshAccessTokenAPI,\n sendEmailVerificationAPI,\n updateUserAPI,\n} from '../api/dauth.api';\nimport { getClientBasePath } from '../api/utils/config';\nimport { TOKEN_LS } from '../constants';\nimport { IDauthDomainState, IDauthUser } from '../interfaces';\nimport { routes } from '../api/utils/routes';\nimport * as DauthTypes from './dauth.types';\n\ntype TSetDauthStateAction = {\n dispatch: React.Dispatch<any>;\n token: string;\n domainName: string;\n};\nexport async function setDauthStateAction({\n dispatch,\n token,\n domainName,\n}: TSetDauthStateAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const getUserFetch = await getUserAPI(domainName, token);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: getUserFetch.data.user,\n domain: getUserFetch.data.domain,\n isAuthenticated: true,\n },\n });\n window.history.replaceState(\n {},\n document.title,\n getUserFetch.data.domain.loginRedirect\n );\n return localStorage.setItem(TOKEN_LS, token);\n } else {\n return resetUser(dispatch);\n }\n } catch (error) {\n console.log(error);\n return resetUser(dispatch);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\ntype TSetAutoLoginAction = {\n dispatch: React.Dispatch<any>;\n dauth_state_ls: string;\n domainName: string;\n};\nexport async function setAutoLoginAction({\n dispatch,\n dauth_state_ls,\n domainName,\n}: TSetAutoLoginAction) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n dauth_state_ls\n ); \n if (refreshAccessTokenFetch.response.status === 200) {\n const getUserFetch = await getUserAPI(domainName, dauth_state_ls);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: getUserFetch.data.user,\n domain: getUserFetch.data.domain,\n isAuthenticated: true,\n },\n });\n localStorage.setItem(\n TOKEN_LS,\n refreshAccessTokenFetch.data.accessToken\n );\n return;\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${routes.tenantSignin}/${domainName}`\n );\n return resetUser(dispatch);\n }\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${routes.tenantSignin}/${domainName}`\n );\n return resetUser(dispatch);\n }\n } catch (error) {\n console.log(error);\n return resetUser(dispatch);\n } finally {\n dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n }\n}\n\nexport function setLogoutAction({\n dispatch,\n}: {\n dispatch: React.Dispatch<any>;\n}) {\n dispatch({ type: DauthTypes.SET_IS_LOADING, payload: { isLoading: true } });\n dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {\n language: window.document.documentElement.getAttribute('lang') || 'es',\n },\n domain: {},\n isAuthenticated: false,\n },\n });\n localStorage.removeItem(TOKEN_LS);\n return dispatch({\n type: DauthTypes.SET_IS_LOADING,\n payload: { isLoading: false },\n });\n}\n\ntype TSetUpdateAction = {\n dispatch: React.Dispatch<any>;\n domainName: string;\n user: Partial<IDauthUser>;\n token: string | null;\n};\nexport async function setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token,\n}: TSetUpdateAction) {\n if (user.language) {\n window.document.documentElement.setAttribute('lang', user.language);\n }\n if (!token) {\n dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: user,\n });\n return false;\n }\n try {\n const getUserFetch = await updateUserAPI(domainName, user, token);\n if (getUserFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.UPDATE_USER,\n payload: getUserFetch.data.user,\n });\n return true;\n } else {\n console.log('Update user error', getUserFetch.data.message);\n return false;\n }\n } catch (error) {\n console.log('Update user error', error);\n return false;\n }\n}\n\ntype TSetSendEmailVerificationAction = {\n dispatch: React.Dispatch<any>;\n domainName: string;\n token: string;\n};\nexport async function sendEmailVerificationAction({\n dispatch,\n domainName,\n token,\n}: TSetSendEmailVerificationAction) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: true,\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'info', message: 'Sending email verification...' },\n });\n try {\n const sendEmailFetch = await sendEmailVerificationAPI(domainName, token);\n if (sendEmailFetch.response.status === 200) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'success', message: sendEmailFetch.data.message },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return true;\n } else {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: { type: 'error', message: sendEmailFetch.data.message },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return false;\n }\n } catch (error) {\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_STATUS,\n payload: {\n type: 'error',\n message: 'Send email verification fetch error',\n },\n });\n dispatch({\n type: DauthTypes.SET_SEND_EMAIL_VERIFICATION_IS_LOADING,\n payload: false,\n });\n return false;\n }\n}\n\nexport async function checkTokenAction({\n dispatch,\n domainName,\n token,\n}: {\n dispatch: React.Dispatch<any>;\n domainName: string;\n token: string;\n}) {\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n return;\n } else {\n window.location.replace(\n `${getClientBasePath({ domainName })}/${routes.tenantSignin}/${domainName}`\n );\n return resetUser(dispatch);\n }\n } catch (error) {\n resetUser(dispatch);\n throw error;\n }\n}\n\nexport async function getAccessTokenAction({\n dispatch,\n domainName,\n}: {\n dispatch: React.Dispatch<any>;\n domainName: string;\n}) {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n try {\n const refreshAccessTokenFetch = await refreshAccessTokenAPI(\n domainName,\n token_ls\n );\n if (refreshAccessTokenFetch.response.status === 200) {\n return refreshAccessTokenFetch.data.accessToken ?? token_ls;\n } else {\n resetUser(dispatch);\n return 'token-not-found';\n }\n } catch (error) {\n resetUser(dispatch);\n throw error;\n }\n}\n\n///////////////////////////////////////////\n//////////////////////////////////////////\nexport const resetUser = (dispatch: React.Dispatch<any>) => {\n localStorage.removeItem(TOKEN_LS);\n return dispatch({\n type: DauthTypes.LOGIN,\n payload: {\n user: {} as IDauthUser,\n domain: {} as IDauthDomainState,\n isAuthenticated: false,\n },\n });\n};\n","import React, {\n useReducer,\n useMemo,\n useEffect,\n useCallback,\n createContext,\n useContext,\n} from 'react';\nimport initialDauthState from './initialDauthState';\nimport userReducer from './reducer/dauth.reducer';\nimport * as action from './reducer/dauth.actions';\nimport { getClientBasePath } from './api/utils/config';\nimport { TOKEN_LS } from './constants';\nimport { routes } from './api/utils/routes';\nimport { verifyTokenAPI } from './api/dauth.api';\nimport { IDauthUser } from './interfaces';\n\ninterface DauthProviderProps {\n domainName: string;\n ask: string;\n children: React.ReactNode;\n}\n\nexport const DauthProvider: React.FC<DauthProviderProps> = (\n props: DauthProviderProps\n) => {\n const { domainName, ask, children } = props;\n const [dauthState, dispatch] = useReducer(userReducer, initialDauthState);\n \n const verifyToken = useCallback(\n async (token: string) => {\n const verifyToken = await verifyTokenAPI({\n domainName,\n token,\n ask,\n });\n if (verifyToken.response.status !== 200) {\n return action.setLogoutAction({ dispatch });\n }\n },\n [domainName, ask],\n )\n \n // Check token periodically\n useEffect(() => {\n if (!dauthState.isAuthenticated) return;\n let interval = setInterval(async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n await verifyToken(token_ls);\n return action.checkTokenAction({ dispatch, domainName, token: token_ls });\n }, 1000 * 60 * 1);\n return () => clearInterval(interval);\n }, []);\n\n // Catch login redirect\n useEffect(() => {\n (async () => {\n const queryString = window.location.search;\n if (!queryString) return;\n const urlParams = new URLSearchParams(queryString);\n const token_url = urlParams.get(TOKEN_LS);\n if (token_url && !dauthState.isAuthenticated) {\n await verifyToken(token_url);\n action.setDauthStateAction({ dispatch, token: token_url, domainName });\n }\n })();\n }, []);\n\n // Auto Login\n useEffect(() => {\n (async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (token_ls && !dauthState.isAuthenticated) {\n await verifyToken(token_ls);\n action.setAutoLoginAction({\n dispatch,\n dauth_state_ls: token_ls,\n domainName,\n });\n }\n })();\n }, []);\n\n const loginWithRedirect = useCallback(() => {\n return window.location.replace(\n `${getClientBasePath({ domainName })}/${\n routes.tenantSignin\n }/${domainName}`\n );\n }, [domainName, domainName]);\n\n const logout = useCallback(() => {\n return action.setLogoutAction({ dispatch });\n }, []);\n\n const getAccessToken = useCallback(async () => {\n const token = await action.getAccessTokenAction({ dispatch, domainName });\n return token as string;\n }, []);\n\n const updateUser = useCallback(\n async ({\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n }: Partial<IDauthUser>) => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n const user = {\n name,\n lastname,\n nickname,\n telPrefix,\n telSuffix,\n language,\n avatar,\n } as Partial<IDauthUser>;\n return (await action.setUpdateUserAction({\n dispatch,\n domainName,\n user,\n token: token_ls,\n })) as boolean;\n },\n [domainName]\n );\n\n const updateUserWithRedirect = useCallback(() => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return;\n return window.location.replace(\n `${getClientBasePath({ domainName })}/${\n routes.tenantUpdateUser\n }/${domainName}/${token_ls}`\n );\n }, [domainName, domainName]);\n\n const sendEmailVerification = useCallback(async () => {\n const token_ls = localStorage.getItem(TOKEN_LS);\n if (!token_ls) return false;\n return (await action.sendEmailVerificationAction({\n dispatch,\n domainName,\n token: token_ls,\n })) as boolean;\n }, [domainName]);\n\n const memoProvider = useMemo(\n () => ({\n ...dauthState,\n loginWithRedirect,\n logout,\n getAccessToken,\n updateUser,\n updateUserWithRedirect,\n sendEmailVerification,\n }),\n [\n dauthState,\n loginWithRedirect,\n logout,\n getAccessToken,\n updateUser,\n updateUserWithRedirect,\n sendEmailVerification,\n ]\n );\n\n return (\n <DauthContext.Provider value={memoProvider}>\n {children}\n </DauthContext.Provider>\n );\n};\n\nconst DauthContext = createContext(initialDauthState);\n\nexport const useDauth = () => {\n const context = useContext(DauthContext);\n if (!context) {\n throw new Error('useDauth must be used inside DauthProvider');\n }\n return context;\n};\n"],"names":["initialDauthState","user","language","window","document","documentElement","getAttribute","domain","isLoading","isAuthenticated","loginWithRedirect","logout","getAccessToken","Promise","resolve","updateUser","updateUserWithRedirect","sendEmailVerificationStatus","status","type","message","sendEmailVerification","userReducer","state","action","payload","_extends","isLocalhost","Boolean","location","hostname","match","getServerBasePath","_ref","serverLocalUrl","protocol","domainName","getClientBasePath","_ref2","clientLocalUrl","getUserAPI","_asyncToGenerator","_regeneratorRuntime","mark","_callee","token","params","response","wrap","_context","prev","next","method","headers","Authorization","Content-Type","fetch","sent","json","abrupt","data","stop","_x","_x2","apply","arguments","updateUserAPI","_callee2","_context2","body","JSON","stringify","_x3","_x4","_x5","sendEmailVerificationAPI","_ref3","_callee3","_context3","_x6","_x7","refreshAccessTokenAPI","_ref4","_callee4","_context4","_x8","_x9","verifyTokenAPI","_ref6","_callee5","_ref5","_context5","ask","_x10","TOKEN_LS","setDauthStateAction","_setDauthStateAction","dispatch","getUserFetch","history","replaceState","title","loginRedirect","localStorage","setItem","resetUser","t0","console","log","finish","setAutoLoginAction","_setAutoLoginAction","dauth_state_ls","refreshAccessTokenFetch","accessToken","replace","setLogoutAction","removeItem","setUpdateUserAction","_setUpdateUserAction","setAttribute","sendEmailVerificationAction","_sendEmailVerificationAction","sendEmailFetch","checkTokenAction","_checkTokenAction","getAccessTokenAction","_getAccessTokenAction","_callee6","_ref7","token_ls","_refreshAccessTokenFe","_context6","getItem","DauthContext","createContext","props","children","_useReducer","useReducer","dauthState","verifyToken","useCallback","useEffect","interval","setInterval","clearInterval","queryString","urlParams","token_url","search","URLSearchParams","get","name","lastname","nickname","telPrefix","telSuffix","avatar","_callee7","_context7","memoProvider","useMemo","React","Provider","value","context","useContext","Error"],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import React, { useReducer, useEffect, useCallback, useMemo, createContext, useContext } from 'react';
2
- import JWT from 'expo-jwt';
1
+ import React, { useReducer, useCallback, useEffect, useMemo, createContext, useContext } from 'react';
3
2
 
4
3
  function _regeneratorRuntime() {
5
4
  _regeneratorRuntime = function () {
@@ -440,7 +439,8 @@ var routes = {
440
439
  tenantUpdateUser: 't-update-user',
441
440
  tenantGetUser: 't-get-user',
442
441
  tenantResendEmailVerification: 't-resend-email-verification',
443
- tenantRefreshAccessToken: 't-refresh-access-token'
442
+ tenantRefreshAccessToken: 't-refresh-access-token',
443
+ tenantVerifyToken: "t-verify-token"
444
444
  };
445
445
 
446
446
  var isLocalhost = /*#__PURE__*/Boolean(window.location.hostname === 'localhost' || window.location.hostname === '[::1]' || /*#__PURE__*/window.location.hostname.match(/(192)\.(168)\.(1)\.([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/gm) || /*#__PURE__*/window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));
@@ -612,6 +612,47 @@ var refreshAccessTokenAPI = /*#__PURE__*/function () {
612
612
  return _ref4.apply(this, arguments);
613
613
  };
614
614
  }();
615
+ var verifyTokenAPI = /*#__PURE__*/function () {
616
+ var _ref6 = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(_ref5) {
617
+ var domainName, ask, token, params, response, data;
618
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
619
+ while (1) switch (_context5.prev = _context5.next) {
620
+ case 0:
621
+ domainName = _ref5.domainName, ask = _ref5.ask, token = _ref5.token;
622
+ params = {
623
+ method: 'POST',
624
+ headers: {
625
+ Authorization: token,
626
+ 'Content-Type': 'application/json'
627
+ },
628
+ body: JSON.stringify({
629
+ ask: ask
630
+ })
631
+ };
632
+ _context5.next = 4;
633
+ return fetch(getServerBasePath({
634
+ domainName: domainName
635
+ }) + "/" + routes.tenantVerifyToken + "/" + domainName, params);
636
+ case 4:
637
+ response = _context5.sent;
638
+ _context5.next = 7;
639
+ return response.json();
640
+ case 7:
641
+ data = _context5.sent;
642
+ return _context5.abrupt("return", {
643
+ response: response,
644
+ data: data
645
+ });
646
+ case 9:
647
+ case "end":
648
+ return _context5.stop();
649
+ }
650
+ }, _callee5);
651
+ }));
652
+ return function verifyTokenAPI(_x10) {
653
+ return _ref6.apply(this, arguments);
654
+ };
655
+ }();
615
656
 
616
657
  var TOKEN_LS = 'dauth_state';
617
658
 
@@ -1029,56 +1070,131 @@ var DauthProvider = function DauthProvider(props) {
1029
1070
  var _useReducer = useReducer(userReducer, initialDauthState),
1030
1071
  dauthState = _useReducer[0],
1031
1072
  dispatch = _useReducer[1];
1073
+ var verifyToken = useCallback( /*#__PURE__*/function () {
1074
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(token) {
1075
+ var verifyToken;
1076
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
1077
+ while (1) switch (_context.prev = _context.next) {
1078
+ case 0:
1079
+ _context.next = 2;
1080
+ return verifyTokenAPI({
1081
+ domainName: domainName,
1082
+ token: token,
1083
+ ask: ask
1084
+ });
1085
+ case 2:
1086
+ verifyToken = _context.sent;
1087
+ if (!(verifyToken.response.status !== 200)) {
1088
+ _context.next = 5;
1089
+ break;
1090
+ }
1091
+ return _context.abrupt("return", setLogoutAction({
1092
+ dispatch: dispatch
1093
+ }));
1094
+ case 5:
1095
+ case "end":
1096
+ return _context.stop();
1097
+ }
1098
+ }, _callee);
1099
+ }));
1100
+ return function (_x) {
1101
+ return _ref.apply(this, arguments);
1102
+ };
1103
+ }(), [domainName, ask]);
1032
1104
  // Check token periodically
1033
1105
  useEffect(function () {
1034
1106
  if (!dauthState.isAuthenticated) return;
1035
- var interval = setInterval(function () {
1036
- var token_ls = localStorage.getItem(TOKEN_LS);
1037
- if (!token_ls) return;
1038
- checkTokenAction({
1039
- dispatch: dispatch,
1040
- domainName: domainName,
1041
- token: token_ls
1042
- });
1043
- }, 1000 * 60 * 1);
1107
+ var interval = setInterval( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
1108
+ var token_ls;
1109
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
1110
+ while (1) switch (_context2.prev = _context2.next) {
1111
+ case 0:
1112
+ token_ls = localStorage.getItem(TOKEN_LS);
1113
+ if (token_ls) {
1114
+ _context2.next = 3;
1115
+ break;
1116
+ }
1117
+ return _context2.abrupt("return");
1118
+ case 3:
1119
+ _context2.next = 5;
1120
+ return verifyToken(token_ls);
1121
+ case 5:
1122
+ return _context2.abrupt("return", checkTokenAction({
1123
+ dispatch: dispatch,
1124
+ domainName: domainName,
1125
+ token: token_ls
1126
+ }));
1127
+ case 6:
1128
+ case "end":
1129
+ return _context2.stop();
1130
+ }
1131
+ }, _callee2);
1132
+ })), 1000 * 60 * 1);
1044
1133
  return function () {
1045
1134
  return clearInterval(interval);
1046
1135
  };
1047
1136
  }, []);
1048
1137
  // Catch login redirect
1049
1138
  useEffect(function () {
1050
- var queryString = window.location.search;
1051
- if (!queryString) return;
1052
- var urlParams = new URLSearchParams(queryString);
1053
- var token_url = urlParams.get(TOKEN_LS);
1054
- if (token_url && !dauthState.isAuthenticated) {
1055
- setDauthStateAction({
1056
- dispatch: dispatch,
1057
- token: token_url,
1058
- domainName: domainName
1059
- });
1060
- }
1139
+ _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
1140
+ var queryString, urlParams, token_url;
1141
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
1142
+ while (1) switch (_context3.prev = _context3.next) {
1143
+ case 0:
1144
+ queryString = window.location.search;
1145
+ if (queryString) {
1146
+ _context3.next = 3;
1147
+ break;
1148
+ }
1149
+ return _context3.abrupt("return");
1150
+ case 3:
1151
+ urlParams = new URLSearchParams(queryString);
1152
+ token_url = urlParams.get(TOKEN_LS);
1153
+ if (!(token_url && !dauthState.isAuthenticated)) {
1154
+ _context3.next = 9;
1155
+ break;
1156
+ }
1157
+ _context3.next = 8;
1158
+ return verifyToken(token_url);
1159
+ case 8:
1160
+ setDauthStateAction({
1161
+ dispatch: dispatch,
1162
+ token: token_url,
1163
+ domainName: domainName
1164
+ });
1165
+ case 9:
1166
+ case "end":
1167
+ return _context3.stop();
1168
+ }
1169
+ }, _callee3);
1170
+ }))();
1061
1171
  }, []);
1062
1172
  // Auto Login
1063
1173
  useEffect(function () {
1064
- if (dauthState.isAuthenticated) return;
1065
- var token_ls = localStorage.getItem(TOKEN_LS);
1066
- if (!token_ls) return;
1067
- try {
1068
- var verify = JWT.decode(token_ls, ask);
1069
- console.log({
1070
- verify: verify
1071
- });
1072
- } catch (error) {
1073
- console.log(error);
1074
- }
1075
- if (token_ls && !dauthState.isAuthenticated) {
1076
- setAutoLoginAction({
1077
- dispatch: dispatch,
1078
- dauth_state_ls: token_ls,
1079
- domainName: domainName
1080
- });
1081
- }
1174
+ _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
1175
+ var token_ls;
1176
+ return _regeneratorRuntime().wrap(function _callee4$(_context4) {
1177
+ while (1) switch (_context4.prev = _context4.next) {
1178
+ case 0:
1179
+ token_ls = localStorage.getItem(TOKEN_LS);
1180
+ if (!(token_ls && !dauthState.isAuthenticated)) {
1181
+ _context4.next = 5;
1182
+ break;
1183
+ }
1184
+ _context4.next = 4;
1185
+ return verifyToken(token_ls);
1186
+ case 4:
1187
+ setAutoLoginAction({
1188
+ dispatch: dispatch,
1189
+ dauth_state_ls: token_ls,
1190
+ domainName: domainName
1191
+ });
1192
+ case 5:
1193
+ case "end":
1194
+ return _context4.stop();
1195
+ }
1196
+ }, _callee4);
1197
+ }))();
1082
1198
  }, []);
1083
1199
  var loginWithRedirect = useCallback(function () {
1084
1200
  return window.location.replace(getClientBasePath({
@@ -1090,32 +1206,32 @@ var DauthProvider = function DauthProvider(props) {
1090
1206
  dispatch: dispatch
1091
1207
  });
1092
1208
  }, []);
1093
- var getAccessToken = useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
1209
+ var getAccessToken = useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
1094
1210
  var token;
1095
- return _regeneratorRuntime().wrap(function _callee$(_context) {
1096
- while (1) switch (_context.prev = _context.next) {
1211
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
1212
+ while (1) switch (_context5.prev = _context5.next) {
1097
1213
  case 0:
1098
- _context.next = 2;
1214
+ _context5.next = 2;
1099
1215
  return getAccessTokenAction({
1100
1216
  dispatch: dispatch,
1101
1217
  domainName: domainName
1102
1218
  });
1103
1219
  case 2:
1104
- token = _context.sent;
1105
- return _context.abrupt("return", token);
1220
+ token = _context5.sent;
1221
+ return _context5.abrupt("return", token);
1106
1222
  case 4:
1107
1223
  case "end":
1108
- return _context.stop();
1224
+ return _context5.stop();
1109
1225
  }
1110
- }, _callee);
1226
+ }, _callee5);
1111
1227
  })), []);
1112
1228
  var updateUser = useCallback( /*#__PURE__*/function () {
1113
- var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref2) {
1229
+ var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(_ref6) {
1114
1230
  var name, lastname, nickname, telPrefix, telSuffix, language, avatar, token_ls, user;
1115
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
1116
- while (1) switch (_context2.prev = _context2.next) {
1231
+ return _regeneratorRuntime().wrap(function _callee6$(_context6) {
1232
+ while (1) switch (_context6.prev = _context6.next) {
1117
1233
  case 0:
1118
- name = _ref2.name, lastname = _ref2.lastname, nickname = _ref2.nickname, telPrefix = _ref2.telPrefix, telSuffix = _ref2.telSuffix, language = _ref2.language, avatar = _ref2.avatar;
1234
+ name = _ref6.name, lastname = _ref6.lastname, nickname = _ref6.nickname, telPrefix = _ref6.telPrefix, telSuffix = _ref6.telSuffix, language = _ref6.language, avatar = _ref6.avatar;
1119
1235
  token_ls = localStorage.getItem(TOKEN_LS);
1120
1236
  user = {
1121
1237
  name: name,
@@ -1126,7 +1242,7 @@ var DauthProvider = function DauthProvider(props) {
1126
1242
  language: language,
1127
1243
  avatar: avatar
1128
1244
  };
1129
- _context2.next = 5;
1245
+ _context6.next = 5;
1130
1246
  return setUpdateUserAction({
1131
1247
  dispatch: dispatch,
1132
1248
  domainName: domainName,
@@ -1134,15 +1250,15 @@ var DauthProvider = function DauthProvider(props) {
1134
1250
  token: token_ls
1135
1251
  });
1136
1252
  case 5:
1137
- return _context2.abrupt("return", _context2.sent);
1253
+ return _context6.abrupt("return", _context6.sent);
1138
1254
  case 6:
1139
1255
  case "end":
1140
- return _context2.stop();
1256
+ return _context6.stop();
1141
1257
  }
1142
- }, _callee2);
1258
+ }, _callee6);
1143
1259
  }));
1144
- return function (_x) {
1145
- return _ref3.apply(this, arguments);
1260
+ return function (_x2) {
1261
+ return _ref7.apply(this, arguments);
1146
1262
  };
1147
1263
  }(), [domainName]);
1148
1264
  var updateUserWithRedirect = useCallback(function () {
@@ -1152,31 +1268,31 @@ var DauthProvider = function DauthProvider(props) {
1152
1268
  domainName: domainName
1153
1269
  }) + "/" + routes.tenantUpdateUser + "/" + domainName + "/" + token_ls);
1154
1270
  }, [domainName, domainName]);
1155
- var sendEmailVerification = useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
1271
+ var sendEmailVerification = useCallback( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
1156
1272
  var token_ls;
1157
- return _regeneratorRuntime().wrap(function _callee3$(_context3) {
1158
- while (1) switch (_context3.prev = _context3.next) {
1273
+ return _regeneratorRuntime().wrap(function _callee7$(_context7) {
1274
+ while (1) switch (_context7.prev = _context7.next) {
1159
1275
  case 0:
1160
1276
  token_ls = localStorage.getItem(TOKEN_LS);
1161
1277
  if (token_ls) {
1162
- _context3.next = 3;
1278
+ _context7.next = 3;
1163
1279
  break;
1164
1280
  }
1165
- return _context3.abrupt("return", false);
1281
+ return _context7.abrupt("return", false);
1166
1282
  case 3:
1167
- _context3.next = 5;
1283
+ _context7.next = 5;
1168
1284
  return sendEmailVerificationAction({
1169
1285
  dispatch: dispatch,
1170
1286
  domainName: domainName,
1171
1287
  token: token_ls
1172
1288
  });
1173
1289
  case 5:
1174
- return _context3.abrupt("return", _context3.sent);
1290
+ return _context7.abrupt("return", _context7.sent);
1175
1291
  case 6:
1176
1292
  case "end":
1177
- return _context3.stop();
1293
+ return _context7.stop();
1178
1294
  }
1179
- }, _callee3);
1295
+ }, _callee7);
1180
1296
  })), [domainName]);
1181
1297
  var memoProvider = useMemo(function () {
1182
1298
  return _extends({}, dauthState, {