analytica.click 0.0.197 → 0.0.200
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
@@ -76,4 +76,4 @@ var Bn=Object.create;var Ue=Object.defineProperty,Fn=Object.defineProperties,Vn=
|
|
76
76
|
flex-flow: column;
|
77
77
|
`,Rs=e=>ye.default.createElement(Ds,Object.assign({},e,{className:e.className}),e.options.map((t,r)=>ye.default.createElement(B.ModalItem,{key:t,onClick:n=>{var i;n.stopPropagation(),n.preventDefault(),(i=e.onSelect)===null||i===void 0||i.call(e,r,n),e.setOpen(!1)}},t)));B.ModalDropList=Rs});var nn=g(Ie=>{var tn=Ie&&Ie.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ie,"__esModule",{value:!0});Ie.ErrorBoundary=void 0;var Is=en(),yt=tn(require("react")),Ms=tn(require("styled-components")),Ls=Ms.default.div`
|
78
78
|
font-size: 2rem;
|
79
|
-
`,rn=class extends yt.default.Component{constructor(t){super(t);this.state={hasError:void 0}}static getDerivedStateFromError(t){var r;let n=typeof window<"u"&&((r=window?.location)===null||r===void 0?void 0:r.href);return{hasError:Object.assign(Object.assign(Object.assign(Object.assign({},t),{message:t?.message||t}),t?.stack&&{stack:t?.stack}),n&&{href:n})}}render(){let{hasError:t}=this.state,{children:r,notify:n}=this.props;return t?(n&&n(t),yt.default.createElement(Is.Modal,{open:!0,setOpen:()=>{}},yt.default.createElement(Ls,null,"A fatal error has occurred - the admin has been notified.",yt.default.createElement("button",{type:"button",onClick:()=>window.location.reload()},"Press here to restart app")))):r}};Ie.ErrorBoundary=rn});var an=g(bt=>{"use strict";bt.__esModule=!0;bt.createRequires=void 0;var Vs=function(e){return typeof e=="function"?e():e||{}},Ks=function(e){var t=!1;return function(r){if(t||(e=Vs(e),t=!0),!(r in e))throw new Error("Could not require '"+r+"'. '"+r+"' does not exist in dependencies.");return e[r]}};bt.createRequires=Ks});var cn=g(Ft=>{"use strict";Ft.__esModule=!0;var Us=function(e){var t={};return function(r){return r in t||(t[r]=e(r)),t[r]}};Ft.default=Us});var Vt=g(Me=>{"use strict";Me.__esModule=!0;Me.InternalServerError=Me.OK=void 0;Me.OK=200;Me.InternalServerError=500});var fn=g($e=>{"use strict";var un=$e&&$e.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,i=t.length,o;n<i;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))};$e.__esModule=!0;var ln=require("http"),dn=require("https"),Ns=Vt(),Js=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return typeof e!="string"?{on:function(n,i){i(new Error("URL must be a string."))}}:e.indexOf("https://")===0?dn.get.apply(dn,un([e],t,!1)):ln.get.apply(ln,un([e],t,!1))},$s=function(e){return new Promise(function(t,r){Js(e,function(n){if(n.statusCode!==Ns.OK)return r(new Error("HTTP Error Response: "+n.statusCode+" "+n.statusMessage+" ("+e+")"));var i=null;n.on("data",function(o){if(i===null){i=o;return}i+=o}),n.on("end",function(){return t(i)})}).on("error",r)})};$e.default=$s});var hn=g(ve=>{"use strict";ve.__esModule=!0;ve.DONE=ve.OPENED=ve.UNSENT=void 0;ve.UNSENT=0;ve.OPENED=1;ve.DONE=4});var pn=g(Kt=>{"use strict";Kt.__esModule=!0;var zs=Vt(),Hs=hn(),Gs=function(e){return new Promise(function(t,r){var n=new XMLHttpRequest;n.onreadystatechange=function(){n.readyState===Hs.DONE&&(n.status===zs.OK?t(n.responseText):r(new Error("HTTP Error Response: "+n.status+" "+n.statusText+" ("+e+")")))},n.open("GET",e,!0),n.send()})};Kt.default=Gs});var gn=g(vt=>{"use strict";vt.__esModule=!0;vt.createLoadRemoteModule=void 0;var Ws=cn(),Ys=fn(),Qs=pn(),Zs=typeof window<"u"&&typeof window.document<"u",Xs=Zs?Qs.default:Ys.default,ea=function(e){throw new Error("Could not require '"+e+"'. The 'requires' function was not provided.")},ta=function(e){var t=e===void 0?{}:e,r=t.requires,n=t.fetcher,i=r||ea,o=n||Xs;return(0,Ws.default)(function(s){return o(s).then(function(l){var a={},u={exports:a},c=new Function("require","module","exports",l);return c(i,u,a),u.exports})})};vt.createLoadRemoteModule=ta});var mn=g(_t=>{"use strict";_t.__esModule=!0;_t.createRequires=void 0;var ra=function(e){return function(t){var r=e||{};if(!(t in r))throw new Error("Could not require '"+t+"'. '"+t+"' does not exist in dependencies.");return r[t]}};_t.createRequires=ra});var bn=g(_e=>{"use strict";var yn=_e&&_e.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]});_e.__esModule=!0;_e.createRequires=_e.default=void 0;var na=gn();yn(_e,na,"createLoadRemoteModule","default");var ia=mn();yn(_e,ia,"createRequires")});var _n=g(Le=>{"use strict";var oa=Le&&Le.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Le.__esModule=!0;Le.createUseRemoteComponent=void 0;var vn=require("react"),sa=oa(bn()),aa=function(e){var t=sa.default(e),r=function(n){var i=vn.useState({loading:!0,err:void 0,component:void 0}),o=i[0],s=o.loading,l=o.err,a=o.component,u=i[1];return vn.useEffect(function(){var c=u;return c({loading:!0,err:void 0,component:void 0}),t(n).then(function(d){return c({loading:!1,err:void 0,component:d.default})}).catch(function(d){return c({loading:!1,err:d,component:void 0})}),function(){c=function(){}}},[n]),[s,l,a]};return r};Le.createUseRemoteComponent=aa});var Nt=g(we=>{"use strict";var la=we&&we.__awaiter||function(e,t,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function l(c){try{u(n.next(c))}catch(d){s(d)}}function a(c){try{u(n.throw(c))}catch(d){s(d)}}function u(c){c.done?o(c.value):i(c.value).then(l,a)}u((n=n.apply(e,t||[])).next())})},da=we&&we.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(we,"__esModule",{value:!0});we.axiosHelper=void 0;var fa=J(),ha=Qe(),Fe=da(require("axios")),pa=({verb:e,url:t,body:r,headers:n,timeout:i=3e4,retryMax:o=0,onStaleAuth:s})=>la(void 0,void 0,void 0,function*(){let l=0;do{try{let a=Object.assign({Accept:"application/json"},n);if(e==="get")return yield Fe.default.get(t,{headers:a,timeout:i,timeoutErrorMessage:`${t} timeout`});let u=!1,c=Fe.default.post;e==="put"?c=Fe.default.put:e==="post"?c=Fe.default.post:e==="patch"?c=Fe.default.patch:e==="delete"&&(c=Fe.default.delete,u=!0);let d;return u?d=yield c(t,{headers:a,timeout:i,timeoutErrorMessage:`${t} timeout`}):(r&&(0,ha.isJson)(r)&&(a["Content-Type"]=a["Content-Type"]||"application/json"),d=yield c(t,r,{headers:a})),d}catch(a){let u=a;if((u.code==="401"||u.code==="403")&&((0,fa.debug)("auth expired"),s?.(),l=o),l>=o)throw u}l+=1}while(l<=o);throw new Error("unexpected")});we.axiosHelper=pa});var Et=g(H=>{Object.defineProperty(H,"__esModule",{value:!0});H.stringify=H.extractQs=H.getClientY=H.getChildrenPositions=H.getChildrenArray=void 0;var kn=J(),ga=require("querystring"),ma=e=>{var t;let r=((t=e.current)===null||t===void 0?void 0:t.children)||[],n=[];for(let i=0;i<r.length;i+=1)n.push(r[i]);return n};H.getChildrenArray=ma;var ya=e=>(0,H.getChildrenArray)(e).map(t=>t.getBoundingClientRect().top+t.getBoundingClientRect().height);H.getChildrenPositions=ya;var ba=e=>{var t,r,n,i;if(!e)return;let o;if(e?.changedTouches||e?.touches){let s=e;o=((r=(t=s.changedTouches)===null||t===void 0?void 0:t[0])===null||r===void 0?void 0:r.clientY)||((i=(n=s.touches)===null||n===void 0?void 0:n[0])===null||i===void 0?void 0:i.clientY)}else e?.clientY&&(o=e.clientY);return o};H.getClientY=ba;var Tn=e=>e.replace(/[^a-zA-Z0-9\-_]/gim,"");function va({search:e,sanatise:t}){if(!e)return{};let r=(0,ga.parse)(e.replace(/^[?]/,"")),n={};return Object.keys(r).forEach(i=>{let o=t?Tn(i):i;i!==o&&(0,kn.debug)("sanatising qs input key for ",o),Array.isArray(r[o])?n[o]=r[o].join(""):n[o]=r[o];let s=t?Tn(n[o]):n[o];s!==n[o]&&((0,kn.debug)("sanatising qs input for ",o),n[o]=s)}),n}H.extractQs=va;var _a=e=>{let t=new URLSearchParams;return Object.entries(e).forEach(([r,n])=>t.append(r,n)),t};H.stringify=_a});var In=g(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.UseLocalStorage=F.getLocalStorageItem=F.setLocalStorageItem=F.clearAllLocalStorage=F.clearLocalStorageItem=void 0;var $t=J(),Dn=Qe(),wa=require("react"),Rn=()=>Math.ceil(new Date().getTime()/1e3),Oa=e=>{if(!(typeof window>"u"))try{window.localStorage.removeItem(e)}catch(t){(0,$t.warn)("error clearing local storage:",t)}};F.clearLocalStorageItem=Oa;var ja=e=>{try{if(typeof window>"u")return;for(let t=0;t<localStorage.length;t+=1){let r=localStorage.key(t);if(!r||e?.includes(r))return;(0,F.clearLocalStorageItem)(r)}}catch(t){(0,$t.warn)("error clearing local storage:",t)}};F.clearAllLocalStorage=ja;var Aa=(e,t,r)=>{try{if(typeof window>"u")return;let n={expiry:r?Rn()+r:void 0,val:JSON.stringify(t)};window.localStorage.setItem(e,JSON.stringify(n))}catch(n){(0,$t.error)(`set LS error:${e}-${n}`),(0,F.clearLocalStorageItem)(e)}};F.setLocalStorageItem=Aa;var Ea=(e,t,r)=>{if(typeof window>"u")return t;let n=window.localStorage.getItem(e),i=(0,Dn.tryJsonParse)(n,void 0);if(!i||i.expiry&&Rn()>i.expiry)return(0,F.setLocalStorageItem)(e,t,r),t;let o=(0,Dn.tryJsonParse)(i.val,void 0);return o||((0,F.setLocalStorageItem)(e,t,r),t)};F.getLocalStorageItem=Ea;function ka(e,t,r){let n=(0,F.getLocalStorageItem)(e,t,r),[,i]=(0,wa.useState)(0);return[n,s=>{let l=s instanceof Function?s(n):s;(0,F.setLocalStorageItem)(e,l,r),i(new Date().getTime())}]}F.UseLocalStorage=ka});var Sa={};$n(Sa,{AnalyticaConfigContext:()=>se,AnalyticaConfigProvider:()=>fs,CognitoAuthContext:()=>Ln,CognitoAuthProvider:()=>Ta,ErrorBoundary:()=>Fs,ExternalComponent:()=>Ut,Feedback:()=>ua,decodeIdToken:()=>pt,errorTrack:()=>Ae,feedback:()=>ht,getUserFromIdToken:()=>De,page:()=>Yr,tokenMissing:()=>ue,track:()=>Bt,useFeedback:()=>ps,useTrack:()=>ms});var Lt=w(J()),Vr=w(dt()),Kr=w(ft());function us(e){return(0,Vr.callOpenApi)(S(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Kr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>E(this,null,function*(){})}))}var Ae=r=>E(void 0,[r],function*({data:e,overrideBaseUrl:t="https://api.analytica.click"}){var i;if(typeof window!="undefined"&&((i=window==null?void 0:window.location)==null?void 0:i.hostname)==="localhost")return(0,Lt.debug)(`local error tracking ignored:${e.data.message} ${JSON.stringify(e)}, to ${t}`),{};(0,Lt.debug)("error track",e.data.message,JSON.stringify(e));let n=yield us({apiUrl:t,func:o=>o.postError(e)});return n.error?{error:n.error.message}:{}});var me=w(require("react")),ls={analyticaToken:void 0,overrideBaseUrl:void 0},se=me.default.createContext(ls);function ds(e){if(!e.analyticaToken)return;let t=window.console.error;window.console.error=(...n)=>Ae({data:{data:{href:window.location.href,message:JSON.stringify(n)},key:e.analyticaToken},overrideBaseUrl:e.overrideBaseUrl}).finally(()=>t(...n));let r=window.console.warn;window.console.warn=(...n)=>Ae({data:{data:{href:window.location.href,message:JSON.stringify(n)},key:e.analyticaToken},overrideBaseUrl:e.overrideBaseUrl}).finally(()=>r(...n))}var fs=({children:e,values:t})=>{let[r,n]=(0,me.useState)(t);return(0,me.useEffect)(()=>{JSON.stringify(t)!==JSON.stringify(r)&&n(t)},[r,t]),(0,me.useEffect)(()=>{ds(t)},[]),me.default.createElement(se.Provider,{value:r},e)};var ue=e=>`[Analytica.${e}] Please load analytica token in AnalyticaConfigProvider to use this component`;var Ne=w(J()),Ur=require("react"),Nr=w(dt()),Jr=w(ft());function hs(e){return(0,Nr.callOpenApi)(S(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Jr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>E(this,null,function*(){})}))}var ht=n=>E(void 0,[n],function*({data:e,analyticaToken:t,overrideBaseUrl:r="https://api.analytica.click"}){var o;if(typeof window!="undefined"&&((o=window==null?void 0:window.location)==null?void 0:o.hostname)==="localhost")return(0,Ne.debug)(`local feedback ignored:${JSON.stringify(e)}, to ${r}`),{};(0,Ne.debug)("feedback",JSON.stringify(e));let i=yield hs({apiUrl:r,func:s=>s.putFeedback({key:t,data:e})});return i.error?{error:i.error.message}:{}}),ps=()=>{let{analyticaToken:e,overrideBaseUrl:t}=(0,Ur.useContext)(se);return e?{trackWithToken:r=>ht(S(A({},r),{analyticaToken:e,overrideBaseUrl:t}))}:((0,Ne.warn)(ue("useFeedback")),{trackWithToken:()=>({error:"no token"})})};var $r=e=>{var t,r;try{return(r=(t=JSON.parse(e))==null?void 0:t.data)==null?void 0:r.url}catch(n){return e}};var zr=require("jsonwebtoken"),pt=e=>(0,zr.decode)(e),De=e=>{var n;let t=pt(e);if(!t)throw new Error("bad token");return{userId:t.email,fullname:t.name,nickname:t.nickname,picture:$r(t.picture),updatedAt:new Date().getTime(),idJwt:t,isAdmin:(n=t==null?void 0:t["cognito:groups"])==null?void 0:n.includes("Admin")}};var gt=w(J()),Hr=require("react"),Gr=w(ft()),Wr=w(dt());function gs(e){return(0,Wr.callOpenApi)(S(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Gr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>E(this,null,function*(){})}))}var Bt=i=>E(void 0,[i],function*({analyticaToken:e,userData:t,overrideBaseUrl:r="https://api.analytica.click",eventName:n}){var l,a,u;let o={eventName:n};if(typeof window!="undefined"&&(o=S(A({},o),{pageLocation:window.location.href,browserResolution:`${(l=window==null?void 0:window.screen)==null?void 0:l.width}:${(a=window==null?void 0:window.screen)==null?void 0:a.height}`})),typeof document!="undefined"&&(o=S(A({},o),{pageReferrer:document.referrer,pageTitle:document.title})),typeof navigator!="undefined"&&(o=S(A({},o),{browserLanguage:navigator.language})),typeof window!="undefined"&&((u=window==null?void 0:window.location)==null?void 0:u.hostname)==="localhost")return(0,gt.debug)(`local page ignored: ${JSON.stringify(o)}, to ${r}`),{};let s=yield gs({apiUrl:r,func:c=>c.postPageTrack({key:e,data:o,userData:t})});return s.error?{error:s.error.message}:{}}),Yr=n=>E(void 0,[n],function*({analyticaToken:e,userData:t,overrideBaseUrl:r="https://api.analytica.click"}){return Bt({analyticaToken:e,userData:t,overrideBaseUrl:r,eventName:"PAGE"})}),ms=()=>{let{analyticaToken:e,overrideBaseUrl:t}=(0,Hr.useContext)(se);if(!e){(0,gt.warn)(ue("useTrack"));let r=()=>E(void 0,null,function*(){return{error:"no token"}});return{page:r,track:r}}return{page:r=>Yr(S(A({},r),{analyticaToken:e,overrideBaseUrl:t})),track:r=>Bt(S(A({},r),{analyticaToken:e,overrideBaseUrl:t}))}};var on=w(nn()),be=w(require("react")),sn=w(J());function Bs(n){return E(this,arguments,function*({ev:e,analyticaToken:t,filterBrowserError:r}){if(r&&r(e)===!1)return;let i=(e==null?void 0:e.message)||(e==null?void 0:e.error),{href:o}=window.location,s=e==null?void 0:e.stack,l=e==null?void 0:e.filename;yield Ae({data:{key:t,data:{message:i,stack:s,filename:l,href:o}}})})}var Fs=({children:e,filterBrowserError:t})=>{let{analyticaToken:r}=(0,be.useContext)(se);return(0,be.useEffect)(()=>{if(!r)return()=>{};let n=i=>Bs({ev:i,analyticaToken:r,filterBrowserError:t});return window.addEventListener("error",n),()=>{window.removeEventListener("error",n)}},[r,t]),r?be.default.createElement(on.ErrorBoundary,{notify:n=>E(void 0,null,function*(){let{href:i}=window.location;yield Ae({data:{key:r,data:S(A({},n),{href:i})}})})},e):((0,sn.warn)(ue("ErrorBoundary")),be.default.createElement(be.default.Fragment,null,e))};var ze=w(require("react")),wn=w(an()),On=w(_n()),jn=w(require("react-dom")),ca=require("styled-components"),wt={},Ut=({url:e,props:t})=>{let r=(0,wn.createRequires)(()=>({react:ze.default,"react-dom":jn.default,"styled-components":ca})),n,i=!1,o;return wt[e]?n=wt[e]:[i,o,n]=(0,On.createUseRemoteComponent)({requires:r})(e),!wt[e]&&!i&&!o&&n&&(wt[e]=n),ze.default.createElement(ze.default.Fragment,null,!i&&!o&&ze.default.createElement(n,A({},t)),o&&o)};var Be=w(require("react")),An=w(J()),ua=e=>{let{analyticaToken:t,overrideBaseUrl:r,devMode:n}=(0,Be.useContext)(se);if(!t)return(0,An.warn)(ue("Feedback")),Be.default.createElement(Be.default.Fragment,null);let i=S(A({},e),{submitFeedback:ht,analyticaToken:t,overrideBaseUrl:r}),o="https://cdn.analytica.click/feedback.js";return n&&(o="/feedback.js"),Be.default.createElement(Ut,{url:o,props:i})};var En=w(require("aws-sdk/clients/cognitoidentity"));function Ot(r){return E(this,arguments,function*({user:e,config:t}){var d,h,f;if(!((d=e==null?void 0:e.jwt)!=null&&d.id_token)||!e.idJwt||!t.identityPool)return;let n=(h=e==null?void 0:e.jwt)==null?void 0:h.id_token,i={[e.idJwt.iss.replace("https://","")]:n},o=new En.default({region:t.AWSRegion}),s=yield o.getId({IdentityPoolId:t.identityPool,Logins:i}).promise();if(!(s!=null&&s.IdentityId))return;let a={CustomRoleArn:(f=e.idJwt)==null?void 0:f["cognito:preferred_role"],IdentityId:s.IdentityId,Logins:i},{Credentials:u}=yield o.getCredentialsForIdentity(a).promise();return!(u!=null&&u.AccessKeyId)||!u.SecretKey||!u.SessionToken||!u.Expiration?void 0:{accessKeyId:u.AccessKeyId,sessionToken:u.SessionToken,secretAccessKey:u.SecretKey}})}var jt=e=>!(e!=null&&e.expires_at)||new Date().getTime()<=e.expires_at,At=({expires_in:e})=>new Date().getTime()+parseInt(`${e}000`,10);var Sn=w(Nt()),kt=w(J()),Cn=w(Et());function Jt(o){return E(this,arguments,function*({user:e,setUser:t,setError:r,config:n,logout:i}){var s,l;try{if(((s=e==null?void 0:e.jwt)==null?void 0:s.id_token)&&!jt(e==null?void 0:e.jwt))return e;let a=(l=e==null?void 0:e.jwt)==null?void 0:l.refresh_token;if(!a||!e){(0,kt.warn)("no refresh token, wipe"),i();return}let u=yield(0,Sn.axiosHelper)({url:n.cognitoRefresh,verb:"post",body:(0,Cn.stringify)({grant_type:"refresh_token",client_id:n.ClientId,refresh_token:a}),headers:{"Content-Type":"application/x-www-form-urlencoded"}}),c=S(A({},e),{jwt:S(A({},u.data),{refresh_token:a,expires_at:At({expires_in:u.data.expires_in})})});return c.credentials=yield Ot({user:c,config:n}),t(c),c}catch(a){let u=a.toString();if(u.includes(400)||u.includes(401)||u.includes(403)){(0,kt.debug)("old refresh token, wipe"),t(void 0),r(void 0);return}r(a)}})}var Pn=w(Nt()),xn=w(Et());function qn(i){return E(this,arguments,function*({code:e,setUser:t,redirectUrl:r,config:n}){try{let o=yield(0,Pn.axiosHelper)({verb:"post",url:n.cognitoRefresh,body:(0,xn.stringify)({grant_type:"authorization_code",client_id:n.ClientId,code:e,redirect_uri:r}),headers:{"Content-Type":"application/x-www-form-urlencoded"}}),s=S(A({},De(o.data.id_token)),{jwt:S(A({},o.data),{expires_at:At({expires_in:o.data.expires_in})})});return n.identityPool&&(s.credentials=yield Ot({user:s,config:n})),t(s),!0}catch(o){}return!1})}var Ee=w(J()),Q=w(require("react")),Tt=w(In()),He=w(st()),Mn=w(Et()),Ln=Q.default.createContext(void 0),Ta=({config:e,children:t,goToPageUrl:r,location:n,redirectUrl:i=n.origin,onMessage:o,cookieDocument:s})=>{var ae,K,X,le;let[l,a]=(0,Q.useState)(),[u,c]=(0,He.useCookieString)({name:"id_token",cookieDocument:typeof window=="undefined"?s:void 0,defaultValue:""}),d=u;d&&!pt(d)&&((0,Ee.warn)("bad token, logging out"),(0,He.wipeCookies)("id_token"),r({url:n.origin,login:!1}),d="");let h;d&&!(0,Tt.getLocalStorageItem)("user",void 0)&&(h=De(d));let[f,b]=(0,Tt.UseLocalStorage)("user",h),[R,V]=(0,Q.useState)(!1),y=(0,Mn.extractQs)({search:typeof window=="undefined"?"":window.location.search,sanatise:!1}),D=()=>E(void 0,null,function*(){V(!0),(0,He.wipeCookies)("id_token"),b(void 0),a(void 0),yield r({url:n.origin,login:!1}),V(!1)}),m=D;(0,Q.useEffect)(()=>{var _;let T=(_=f==null?void 0:f.jwt)==null?void 0:_.id_token;T!==d&&c(T||"")},[d,c,f,(ae=f==null?void 0:f.jwt)==null?void 0:ae.id_token]);let N=T=>E(void 0,null,function*(){var G;if(l||R||n.hash&&Object.keys(n.hash).length>0||n.search&&((G=Object.keys(n.search))==null?void 0:G.length)>0)return;V(!0);let _={back:n.pathname},$=e.vendToken+i;T&&($+=`&state=${T}`),yield r({url:$,state:_,login:!0})});if((0,Q.useEffect)(()=>{function T(){return E(this,null,function*(){var ee,te,de;let _=!!(y!=null&&y.code)||!!(y!=null&&y.error),$=!((ee=f==null?void 0:f.jwt)!=null&&ee.refresh_token)||jt(f==null?void 0:f.jwt),G=!(f!=null&&f.userId)&&!!(f!=null&&f.jwt);if(!(!_&&!$&&!G))try{if(V(!0),_&&!$)yield r({url:i,login:!0});else if(_){if(y!=null&&y.error){let St={message:(y==null?void 0:y.error_description)||"auth error"};JSON.stringify(St||{})!==JSON.stringify(l||{})&&a(St)}else y!=null&&y.code&&(yield qn({code:y.code,redirectUrl:i,config:e,setUser:b}));let Ke=""||i||"/";if(y!=null&&y.state)try{Ke.includes("?")?Ke+="&":Ke+="?",Ke+=`state=${y.state}`}catch(St){(0,Ee.warn)("bad state passed in")}yield r({url:Ke,login:!0})}else if($)yield Jt({setUser:b,setError:a,user:f,config:e,logout:m});else if(G){let Ve=(de=(te=f==null?void 0:f.jwt)==null?void 0:te.id_token)==null?void 0:de.substr(f.jwt.id_token.indexOf(" ")+1);!f||!Ve?((0,Ee.info)("logging out no token"),b(void 0),a(void 0)):b(S(A({},De(Ve)),{jwt:f.jwt,credentials:f.credentials}))}}finally{V(!1)}})}!R&&!l&&T()},[e,l,r,m,R,y,i,b,f]),(0,Q.useEffect)(()=>{var T;l&&((0,Ee.error)(JSON.stringify(l)),o&&o(`error:${(T=l.response)==null?void 0:T.status}`,{appearance:"error"}))},[o,l]),l)return Q.default.createElement("div",null,l.message);let v=R||!!(y!=null&&y.code),Z={loading:v,isAuthenticated:!v&&(!!((K=f==null?void 0:f.jwt)!=null&&K.id_token)||!!((X=f==null?void 0:f.idJwt)!=null&&X.email)),refreshToken:()=>Jt({setUser:b,setError:a,user:f,config:e,logout:D}),loginWithRedirect:N,logout:D,error:l,user:{loading:R,data:f,reFetch:()=>E(void 0,null,function*(){return b(void 0)}),error:void 0,url:"auth",datetime:((le=f==null?void 0:f.jwt)==null?void 0:le.expires_at)||0}};return Q.default.createElement(Ln.Provider,{value:Z},t)};module.exports=zn(Sa);0&&(module.exports={AnalyticaConfigContext,AnalyticaConfigProvider,CognitoAuthContext,CognitoAuthProvider,ErrorBoundary,ExternalComponent,Feedback,decodeIdToken,errorTrack,feedback,getUserFromIdToken,page,tokenMissing,track,useFeedback,useTrack});
|
79
|
+
`,rn=class extends yt.default.Component{constructor(t){super(t);this.state={hasError:void 0}}static getDerivedStateFromError(t){var r;let n=typeof window<"u"&&((r=window?.location)===null||r===void 0?void 0:r.href);return{hasError:Object.assign(Object.assign(Object.assign(Object.assign({},t),{message:t?.message||t}),t?.stack&&{stack:t?.stack}),n&&{href:n})}}render(){let{hasError:t}=this.state,{children:r,notify:n}=this.props;return t?(n&&n(t),yt.default.createElement(Is.Modal,{open:!0,setOpen:()=>{}},yt.default.createElement(Ls,null,"A fatal error has occurred - the admin has been notified.",yt.default.createElement("button",{type:"button",onClick:()=>window.location.reload()},"Press here to restart app")))):r}};Ie.ErrorBoundary=rn});var an=g(bt=>{"use strict";bt.__esModule=!0;bt.createRequires=void 0;var Vs=function(e){return typeof e=="function"?e():e||{}},Ks=function(e){var t=!1;return function(r){if(t||(e=Vs(e),t=!0),!(r in e))throw new Error("Could not require '"+r+"'. '"+r+"' does not exist in dependencies.");return e[r]}};bt.createRequires=Ks});var cn=g(Ft=>{"use strict";Ft.__esModule=!0;var Us=function(e){var t={};return function(r){return r in t||(t[r]=e(r)),t[r]}};Ft.default=Us});var Vt=g(Me=>{"use strict";Me.__esModule=!0;Me.InternalServerError=Me.OK=void 0;Me.OK=200;Me.InternalServerError=500});var fn=g($e=>{"use strict";var un=$e&&$e.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,i=t.length,o;n<i;n++)(o||!(n in t))&&(o||(o=Array.prototype.slice.call(t,0,n)),o[n]=t[n]);return e.concat(o||Array.prototype.slice.call(t))};$e.__esModule=!0;var ln=require("http"),dn=require("https"),Ns=Vt(),Js=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return typeof e!="string"?{on:function(n,i){i(new Error("URL must be a string."))}}:e.indexOf("https://")===0?dn.get.apply(dn,un([e],t,!1)):ln.get.apply(ln,un([e],t,!1))},$s=function(e){return new Promise(function(t,r){Js(e,function(n){if(n.statusCode!==Ns.OK)return r(new Error("HTTP Error Response: "+n.statusCode+" "+n.statusMessage+" ("+e+")"));var i=null;n.on("data",function(o){if(i===null){i=o;return}i+=o}),n.on("end",function(){return t(i)})}).on("error",r)})};$e.default=$s});var hn=g(ve=>{"use strict";ve.__esModule=!0;ve.DONE=ve.OPENED=ve.UNSENT=void 0;ve.UNSENT=0;ve.OPENED=1;ve.DONE=4});var pn=g(Kt=>{"use strict";Kt.__esModule=!0;var zs=Vt(),Hs=hn(),Gs=function(e){return new Promise(function(t,r){var n=new XMLHttpRequest;n.onreadystatechange=function(){n.readyState===Hs.DONE&&(n.status===zs.OK?t(n.responseText):r(new Error("HTTP Error Response: "+n.status+" "+n.statusText+" ("+e+")")))},n.open("GET",e,!0),n.send()})};Kt.default=Gs});var gn=g(vt=>{"use strict";vt.__esModule=!0;vt.createLoadRemoteModule=void 0;var Ws=cn(),Ys=fn(),Qs=pn(),Zs=typeof window<"u"&&typeof window.document<"u",Xs=Zs?Qs.default:Ys.default,ea=function(e){throw new Error("Could not require '"+e+"'. The 'requires' function was not provided.")},ta=function(e){var t=e===void 0?{}:e,r=t.requires,n=t.fetcher,i=r||ea,o=n||Xs;return(0,Ws.default)(function(s){return o(s).then(function(l){var a={},u={exports:a},c=new Function("require","module","exports",l);return c(i,u,a),u.exports})})};vt.createLoadRemoteModule=ta});var mn=g(_t=>{"use strict";_t.__esModule=!0;_t.createRequires=void 0;var ra=function(e){return function(t){var r=e||{};if(!(t in r))throw new Error("Could not require '"+t+"'. '"+t+"' does not exist in dependencies.");return r[t]}};_t.createRequires=ra});var bn=g(_e=>{"use strict";var yn=_e&&_e.__createBinding||(Object.create?function(e,t,r,n){n===void 0&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){n===void 0&&(n=r),e[n]=t[r]});_e.__esModule=!0;_e.createRequires=_e.default=void 0;var na=gn();yn(_e,na,"createLoadRemoteModule","default");var ia=mn();yn(_e,ia,"createRequires")});var _n=g(Le=>{"use strict";var oa=Le&&Le.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Le.__esModule=!0;Le.createUseRemoteComponent=void 0;var vn=require("react"),sa=oa(bn()),aa=function(e){var t=sa.default(e),r=function(n){var i=vn.useState({loading:!0,err:void 0,component:void 0}),o=i[0],s=o.loading,l=o.err,a=o.component,u=i[1];return vn.useEffect(function(){var c=u;return c({loading:!0,err:void 0,component:void 0}),t(n).then(function(d){return c({loading:!1,err:void 0,component:d.default})}).catch(function(d){return c({loading:!1,err:d,component:void 0})}),function(){c=function(){}}},[n]),[s,l,a]};return r};Le.createUseRemoteComponent=aa});var Nt=g(we=>{"use strict";var la=we&&we.__awaiter||function(e,t,r,n){function i(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function l(c){try{u(n.next(c))}catch(d){s(d)}}function a(c){try{u(n.throw(c))}catch(d){s(d)}}function u(c){c.done?o(c.value):i(c.value).then(l,a)}u((n=n.apply(e,t||[])).next())})},da=we&&we.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(we,"__esModule",{value:!0});we.axiosHelper=void 0;var fa=J(),ha=Qe(),Fe=da(require("axios")),pa=({verb:e,url:t,body:r,headers:n,timeout:i=3e4,retryMax:o=0,onStaleAuth:s})=>la(void 0,void 0,void 0,function*(){let l=0;do{try{let a=Object.assign({Accept:"application/json"},n);if(e==="get")return yield Fe.default.get(t,{headers:a,timeout:i,timeoutErrorMessage:`${t} timeout`});let u=!1,c=Fe.default.post;e==="put"?c=Fe.default.put:e==="post"?c=Fe.default.post:e==="patch"?c=Fe.default.patch:e==="delete"&&(c=Fe.default.delete,u=!0);let d;return u?d=yield c(t,{headers:a,timeout:i,timeoutErrorMessage:`${t} timeout`}):(r&&(0,ha.isJson)(r)&&(a["Content-Type"]=a["Content-Type"]||"application/json"),d=yield c(t,r,{headers:a})),d}catch(a){let u=a;if((u.code==="401"||u.code==="403")&&((0,fa.debug)("auth expired"),s?.(),l=o),l>=o)throw u}l+=1}while(l<=o);throw new Error("unexpected")});we.axiosHelper=pa});var Et=g(H=>{Object.defineProperty(H,"__esModule",{value:!0});H.stringify=H.extractQs=H.getClientY=H.getChildrenPositions=H.getChildrenArray=void 0;var kn=J(),ga=require("querystring"),ma=e=>{var t;let r=((t=e.current)===null||t===void 0?void 0:t.children)||[],n=[];for(let i=0;i<r.length;i+=1)n.push(r[i]);return n};H.getChildrenArray=ma;var ya=e=>(0,H.getChildrenArray)(e).map(t=>t.getBoundingClientRect().top+t.getBoundingClientRect().height);H.getChildrenPositions=ya;var ba=e=>{var t,r,n,i;if(!e)return;let o;if(e?.changedTouches||e?.touches){let s=e;o=((r=(t=s.changedTouches)===null||t===void 0?void 0:t[0])===null||r===void 0?void 0:r.clientY)||((i=(n=s.touches)===null||n===void 0?void 0:n[0])===null||i===void 0?void 0:i.clientY)}else e?.clientY&&(o=e.clientY);return o};H.getClientY=ba;var Tn=e=>e.replace(/[^a-zA-Z0-9\-_]/gim,"");function va({search:e,sanatise:t}){if(!e)return{};let r=(0,ga.parse)(e.replace(/^[?]/,"")),n={};return Object.keys(r).forEach(i=>{let o=t?Tn(i):i;i!==o&&(0,kn.debug)("sanatising qs input key for ",o),Array.isArray(r[o])?n[o]=r[o].join(""):n[o]=r[o];let s=t?Tn(n[o]):n[o];s!==n[o]&&((0,kn.debug)("sanatising qs input for ",o),n[o]=s)}),n}H.extractQs=va;var _a=e=>{let t=new URLSearchParams;return Object.entries(e).forEach(([r,n])=>t.append(r,n)),t};H.stringify=_a});var In=g(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.UseLocalStorage=F.getLocalStorageItem=F.setLocalStorageItem=F.clearAllLocalStorage=F.clearLocalStorageItem=void 0;var $t=J(),Dn=Qe(),wa=require("react"),Rn=()=>Math.ceil(new Date().getTime()/1e3),Oa=e=>{if(!(typeof window>"u"))try{window.localStorage.removeItem(e)}catch(t){(0,$t.warn)("error clearing local storage:",t)}};F.clearLocalStorageItem=Oa;var ja=e=>{try{if(typeof window>"u")return;for(let t=0;t<localStorage.length;t+=1){let r=localStorage.key(t);if(!r||e?.includes(r))return;(0,F.clearLocalStorageItem)(r)}}catch(t){(0,$t.warn)("error clearing local storage:",t)}};F.clearAllLocalStorage=ja;var Aa=(e,t,r)=>{try{if(typeof window>"u")return;let n={expiry:r?Rn()+r:void 0,val:JSON.stringify(t)};window.localStorage.setItem(e,JSON.stringify(n))}catch(n){(0,$t.error)(`set LS error:${e}-${n}`),(0,F.clearLocalStorageItem)(e)}};F.setLocalStorageItem=Aa;var Ea=(e,t,r)=>{if(typeof window>"u")return t;let n=window.localStorage.getItem(e),i=(0,Dn.tryJsonParse)(n,void 0);if(!i||i.expiry&&Rn()>i.expiry)return(0,F.setLocalStorageItem)(e,t,r),t;let o=(0,Dn.tryJsonParse)(i.val,void 0);return o||((0,F.setLocalStorageItem)(e,t,r),t)};F.getLocalStorageItem=Ea;function ka(e,t,r){let n=(0,F.getLocalStorageItem)(e,t,r),[,i]=(0,wa.useState)(0);return[n,s=>{let l=s instanceof Function?s(n):s;(0,F.setLocalStorageItem)(e,l,r),i(new Date().getTime())}]}F.UseLocalStorage=ka});var Sa={};$n(Sa,{AnalyticaConfigContext:()=>se,AnalyticaConfigProvider:()=>fs,CognitoAuthContext:()=>Ln,CognitoAuthProvider:()=>Ta,ErrorBoundary:()=>Fs,ExternalComponent:()=>Ut,Feedback:()=>ua,decodeIdToken:()=>pt,errorTrack:()=>Ae,feedback:()=>ht,getUserFromIdToken:()=>De,page:()=>Yr,tokenMissing:()=>ue,track:()=>Bt,useFeedback:()=>ps,useTrack:()=>ms});var Lt=w(J()),Vr=w(dt()),Kr=w(ft());function us(e){return(0,Vr.callOpenApi)(S(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Kr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>E(this,null,function*(){})}))}var Ae=r=>E(void 0,[r],function*({data:e,overrideBaseUrl:t="https://api.analytica.click"}){var i;if(typeof window!="undefined"&&((i=window==null?void 0:window.location)==null?void 0:i.hostname)==="localhost")return(0,Lt.debug)(`local error tracking ignored:${e.data.message} ${JSON.stringify(e)}, to ${t}`),{};(0,Lt.debug)("error track",e.data.message,JSON.stringify(e));let n=yield us({apiUrl:t,func:o=>o.postError(e)});return n.error?{error:n.error.message}:{}});var me=w(require("react")),ls={analyticaToken:void 0,overrideBaseUrl:void 0},se=me.default.createContext(ls);function ds(e){if(!e.analyticaToken)return;let t=window.console.error;window.console.error=(...n)=>Ae({data:{data:{href:window.location.href,message:JSON.stringify(n)},key:e.analyticaToken},overrideBaseUrl:e.overrideBaseUrl}).finally(()=>t(...n));let r=window.console.warn;window.console.warn=(...n)=>Ae({data:{data:{href:window.location.href,message:JSON.stringify(n)},key:e.analyticaToken},overrideBaseUrl:e.overrideBaseUrl}).finally(()=>r(...n))}var fs=({children:e,values:t})=>{let[r,n]=(0,me.useState)(t);return(0,me.useEffect)(()=>{JSON.stringify(t)!==JSON.stringify(r)&&n(t)},[r,t]),(0,me.useEffect)(()=>{ds(t)},[]),me.default.createElement(se.Provider,{value:r},e)};var ue=e=>`[Analytica.${e}] Please load analytica token in AnalyticaConfigProvider to use this component`;var Ne=w(J()),Ur=require("react"),Nr=w(dt()),Jr=w(ft());function hs(e){return(0,Nr.callOpenApi)(S(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Jr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>E(this,null,function*(){})}))}var ht=n=>E(void 0,[n],function*({data:e,analyticaToken:t,overrideBaseUrl:r="https://api.analytica.click"}){var o;if(typeof window!="undefined"&&((o=window==null?void 0:window.location)==null?void 0:o.hostname)==="localhost")return(0,Ne.debug)(`local feedback ignored:${JSON.stringify(e)}, to ${r}`),{};(0,Ne.debug)("feedback",JSON.stringify(e));let i=yield hs({apiUrl:r,func:s=>s.putFeedback({key:t,data:e})});return i.error?{error:i.error.message}:{}}),ps=()=>{let{analyticaToken:e,overrideBaseUrl:t}=(0,Ur.useContext)(se);return e?{trackWithToken:r=>ht(S(A({},r),{analyticaToken:e,overrideBaseUrl:t}))}:((0,Ne.warn)(ue("useFeedback")),{trackWithToken:()=>({error:"no token"})})};var $r=e=>{var t,r;try{return(r=(t=JSON.parse(e))==null?void 0:t.data)==null?void 0:r.url}catch(n){return e}};var zr=require("jsonwebtoken"),pt=e=>(0,zr.decode)(e),De=e=>{var n;let t=pt(e);if(!t)throw new Error("bad token");return{userId:t.email,fullname:t.name,nickname:t.nickname,picture:$r(t.picture),updatedAt:new Date().getTime(),idJwt:t,isAdmin:(n=t==null?void 0:t["cognito:groups"])==null?void 0:n.includes("Admin")}};var gt=w(J()),Hr=require("react"),Gr=w(ft()),Wr=w(dt());function gs(e){return(0,Wr.callOpenApi)(S(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Gr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>E(this,null,function*(){})}))}var Bt=i=>E(void 0,[i],function*({analyticaToken:e,userData:t,overrideBaseUrl:r="https://api.analytica.click",eventName:n}){var l,a,u;let o={eventName:n};if(typeof window!="undefined"&&(o=S(A({},o),{pageLocation:window.location.href,browserResolution:`${(l=window==null?void 0:window.screen)==null?void 0:l.width}:${(a=window==null?void 0:window.screen)==null?void 0:a.height}`})),typeof document!="undefined"&&(o=S(A({},o),{pageReferrer:document.referrer,pageTitle:document.title})),typeof navigator!="undefined"&&(o=S(A({},o),{browserLanguage:navigator.language})),typeof window!="undefined"&&((u=window==null?void 0:window.location)==null?void 0:u.hostname)==="localhost")return(0,gt.debug)(`local page ignored: ${JSON.stringify(o)}, to ${r}`),{};let s=yield gs({apiUrl:r,func:c=>c.postPageTrack({key:e,data:o,userData:t})});return s.error?{error:s.error.message}:{}}),Yr=n=>E(void 0,[n],function*({analyticaToken:e,userData:t,overrideBaseUrl:r="https://api.analytica.click"}){return Bt({analyticaToken:e,userData:t,overrideBaseUrl:r,eventName:"PAGE"})}),ms=()=>{let{analyticaToken:e,overrideBaseUrl:t}=(0,Hr.useContext)(se);if(!e){(0,gt.warn)(ue("useTrack"));let r=()=>E(void 0,null,function*(){return{error:"no token"}});return{page:r,track:r}}return{page:r=>Yr(S(A({},r),{analyticaToken:e,overrideBaseUrl:t})),track:r=>Bt(S(A({},r),{analyticaToken:e,overrideBaseUrl:t}))}};var on=w(nn()),be=w(require("react")),sn=w(J());function Bs(n){return E(this,arguments,function*({ev:e,analyticaToken:t,filterBrowserError:r}){if(r&&r(e)===!1)return;let i=(e==null?void 0:e.message)||(e==null?void 0:e.error),{href:o}=window.location,s=e==null?void 0:e.stack,l=e==null?void 0:e.filename;yield Ae({data:{key:t,data:{message:i,stack:s,filename:l,href:o}}})})}var Fs=({children:e,filterBrowserError:t})=>{let{analyticaToken:r}=(0,be.useContext)(se);return(0,be.useEffect)(()=>{if(!r)return()=>{};let n=i=>Bs({ev:i,analyticaToken:r,filterBrowserError:t});return window.addEventListener("error",n),()=>{window.removeEventListener("error",n)}},[r,t]),r?be.default.createElement(on.ErrorBoundary,{notify:n=>E(void 0,null,function*(){let{href:i}=window.location;yield Ae({data:{key:r,data:S(A({},n),{href:i})}})})},e):((0,sn.warn)(ue("ErrorBoundary")),be.default.createElement(be.default.Fragment,null,e))};var ze=w(require("react")),wn=w(an()),On=w(_n()),jn=w(require("react-dom")),ca=require("styled-components"),wt={},Ut=({url:e,props:t})=>{let r=(0,wn.createRequires)(()=>({react:ze.default,"react-dom":jn.default,"styled-components":ca})),n,i=!1,o;return wt[e]?n=wt[e]:[i,o,n]=(0,On.createUseRemoteComponent)({requires:r})(e),!wt[e]&&!i&&!o&&n&&(wt[e]=n),ze.default.createElement(ze.default.Fragment,null,!i&&!o&&ze.default.createElement(n,A({},t)),o&&o)};var Be=w(require("react")),An=w(J()),ua=e=>{let{analyticaToken:t,overrideBaseUrl:r,devMode:n}=(0,Be.useContext)(se);if(!t)return(0,An.warn)(ue("Feedback")),Be.default.createElement(Be.default.Fragment,null);let i=S(A({},e),{submitFeedback:ht,analyticaToken:t,overrideBaseUrl:r}),o="https://cdn.analytica.click/feedback.js";return n&&(o="/feedback.js"),Be.default.createElement(Ut,{url:o,props:i})};var En=w(require("aws-sdk/clients/cognitoidentity"));function Ot(r){return E(this,arguments,function*({user:e,config:t}){var d,h,f;if(!((d=e==null?void 0:e.jwt)!=null&&d.id_token)||!e.idJwt||!t.identityPool)return;let n=(h=e==null?void 0:e.jwt)==null?void 0:h.id_token,i={[e.idJwt.iss.replace("https://","")]:n},o=new En.default({region:t.AWSRegion}),s=yield o.getId({IdentityPoolId:t.identityPool,Logins:i}).promise();if(!(s!=null&&s.IdentityId))return;let a={CustomRoleArn:(f=e.idJwt)==null?void 0:f["cognito:preferred_role"],IdentityId:s.IdentityId,Logins:i},{Credentials:u}=yield o.getCredentialsForIdentity(a).promise();return!(u!=null&&u.AccessKeyId)||!u.SecretKey||!u.SessionToken||!u.Expiration?void 0:{accessKeyId:u.AccessKeyId,sessionToken:u.SessionToken,secretAccessKey:u.SecretKey}})}var jt=e=>!(e!=null&&e.expires_at)||new Date().getTime()>e.expires_at,At=({expires_in:e})=>new Date().getTime()+parseInt(`${e}000`,10);var Sn=w(Nt()),kt=w(J()),Cn=w(Et());function Jt(o){return E(this,arguments,function*({user:e,setUser:t,setError:r,config:n,logout:i}){var s,l;try{if(((s=e==null?void 0:e.jwt)==null?void 0:s.id_token)&&!jt(e==null?void 0:e.jwt))return e;let a=(l=e==null?void 0:e.jwt)==null?void 0:l.refresh_token;if(!a||!e){(0,kt.warn)("no refresh token, wipe"),i();return}let u=yield(0,Sn.axiosHelper)({url:n.cognitoRefresh,verb:"post",body:(0,Cn.stringify)({grant_type:"refresh_token",client_id:n.ClientId,refresh_token:a}),headers:{"Content-Type":"application/x-www-form-urlencoded"}}),c=S(A({},e),{jwt:S(A({},u.data),{refresh_token:a,expires_at:At({expires_in:u.data.expires_in})})});return c.credentials=yield Ot({user:c,config:n}),t(c),c}catch(a){let u=a.toString();if(u.includes(400)||u.includes(401)||u.includes(403)){(0,kt.debug)("old refresh token, wipe"),t(void 0),r(void 0);return}r(a)}})}var Pn=w(Nt()),xn=w(Et());function qn(i){return E(this,arguments,function*({code:e,setUser:t,redirectUrl:r,config:n}){try{let o=yield(0,Pn.axiosHelper)({verb:"post",url:n.cognitoRefresh,body:(0,xn.stringify)({grant_type:"authorization_code",client_id:n.ClientId,code:e,redirect_uri:r}),headers:{"Content-Type":"application/x-www-form-urlencoded"}}),s=S(A({},De(o.data.id_token)),{jwt:S(A({},o.data),{expires_at:At({expires_in:o.data.expires_in})})});return n.identityPool&&(s.credentials=yield Ot({user:s,config:n})),t(s),!0}catch(o){}return!1})}var Ee=w(J()),Q=w(require("react")),Tt=w(In()),He=w(st()),Mn=w(Et()),Ln=Q.default.createContext(void 0),Ta=({config:e,children:t,goToPageUrl:r,location:n,redirectUrl:i=n.origin,onMessage:o,cookieDocument:s})=>{var ae,K,X,le;let[l,a]=(0,Q.useState)(),[u,c]=(0,He.useCookieString)({name:"id_token",cookieDocument:typeof window=="undefined"?s:void 0,defaultValue:""}),d=u;d&&!pt(d)&&((0,Ee.warn)("bad token, logging out"),(0,He.wipeCookies)("id_token"),r({url:n.origin,login:!1}),d="");let h;d&&!(0,Tt.getLocalStorageItem)("user",void 0)&&(h=De(d));let[f,b]=(0,Tt.UseLocalStorage)("user",h),[R,V]=(0,Q.useState)(!1),y=(0,Mn.extractQs)({search:typeof window=="undefined"?"":window.location.search,sanatise:!1}),D=()=>E(void 0,null,function*(){V(!0),(0,He.wipeCookies)("id_token"),b(void 0),a(void 0),yield r({url:n.origin,login:!1}),V(!1)}),m=D;(0,Q.useEffect)(()=>{var _;let T=(_=f==null?void 0:f.jwt)==null?void 0:_.id_token;T!==d&&c(T||"")},[d,c,f,(ae=f==null?void 0:f.jwt)==null?void 0:ae.id_token]);let N=T=>E(void 0,null,function*(){var G;if(l||R||n.hash&&Object.keys(n.hash).length>0||n.search&&((G=Object.keys(n.search))==null?void 0:G.length)>0)return;V(!0);let _={back:n.pathname},$=e.vendToken+i;T&&($+=`&state=${T}`),yield r({url:$,state:_,login:!0})});if((0,Q.useEffect)(()=>{function T(){return E(this,null,function*(){var ee,te,de;let _=!!(y!=null&&y.code)||!!(y!=null&&y.error),$=jt(f==null?void 0:f.jwt),G=!(f!=null&&f.userId)&&!!(f!=null&&f.jwt);if(!(!_&&!$&&!G))try{if(V(!0),_&&!$)yield r({url:i,login:!0});else if(_){if(y!=null&&y.error){let St={message:(y==null?void 0:y.error_description)||"auth error"};JSON.stringify(St||{})!==JSON.stringify(l||{})&&a(St)}else y!=null&&y.code&&(yield qn({code:y.code,redirectUrl:i,config:e,setUser:b}));let Ke=""||i||"/";if(y!=null&&y.state)try{Ke.includes("?")?Ke+="&":Ke+="?",Ke+=`state=${y.state}`}catch(St){(0,Ee.warn)("bad state passed in")}yield r({url:Ke,login:!0})}else if($&&((ee=f==null?void 0:f.jwt)==null?void 0:ee.refresh_token))yield Jt({setUser:b,setError:a,user:f,config:e,logout:m});else if(G){let Ve=(de=(te=f==null?void 0:f.jwt)==null?void 0:te.id_token)==null?void 0:de.substr(f.jwt.id_token.indexOf(" ")+1);!f||!Ve?((0,Ee.info)("logging out no token"),b(void 0),a(void 0)):b(S(A({},De(Ve)),{jwt:f.jwt,credentials:f.credentials}))}}finally{V(!1)}})}!R&&!l&&T()},[e,l,r,m,R,y,i,b,f]),(0,Q.useEffect)(()=>{var T;l&&((0,Ee.error)(JSON.stringify(l)),o&&o(`error:${(T=l.response)==null?void 0:T.status}`,{appearance:"error"}))},[o,l]),l)return Q.default.createElement("div",null,l.message);let v=R||!!(y!=null&&y.code),Z={loading:v,isAuthenticated:!v&&(!!((K=f==null?void 0:f.jwt)!=null&&K.id_token)||!!((X=f==null?void 0:f.idJwt)!=null&&X.email)),refreshToken:()=>Jt({setUser:b,setError:a,user:f,config:e,logout:D}),loginWithRedirect:N,logout:D,error:l,user:{loading:R,data:f,reFetch:()=>E(void 0,null,function*(){return b(void 0)}),error:void 0,url:"auth",datetime:((le=f==null?void 0:f.jwt)==null?void 0:le.expires_at)||0}};return Q.default.createElement(Ln.Provider,{value:Z},t)};module.exports=zn(Sa);0&&(module.exports={AnalyticaConfigContext,AnalyticaConfigProvider,CognitoAuthContext,CognitoAuthProvider,ErrorBoundary,ExternalComponent,Feedback,decodeIdToken,errorTrack,feedback,getUserFromIdToken,page,tokenMissing,track,useFeedback,useTrack});
|