analytica.click 0.0.212 → 0.0.215
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 +2 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
@@ -109,4 +109,5 @@ var Jn=Object.create;var Je=Object.defineProperty,$n=Object.defineProperties,zn=
|
|
109
109
|
opacity: 0.1;
|
110
110
|
}
|
111
111
|
transition: opacity 5s;
|
112
|
-
`,Va=({name:e,height:t,width:r})=>{let[n,i]=(0,Ct.useState)(!0);(0,Ct.useEffect)(()=>{i(!1)},[]);let o={};return r!==null&&(o.width=r??"2rem"),t!==null&&(o.height=t??"2rem"),Ct.default.createElement(Fa,{"data-loading":e,"data-transparent":n},Ct.default.createElement(Ba,{style:o}))};W.Loader=Va});var Ka={};Qn(Ka,{AnalyticaConfigContext:()=>se,AnalyticaConfigProvider:()=>bs,CognitoAuthContext:()=>Mn,CognitoAuthProvider:()=>Da,DashboardAuthValidation:()=>Nn,ErrorBoundary:()=>$s,ExternalComponent:()=>Nt,Feedback:()=>ga,decodeIdToken:()=>mt,errorTrack:()=>ke,feedback:()=>gt,getUserFromIdToken:()=>Le,page:()=>Yr,tokenMissing:()=>he,track:()=>Ft,useFeedback:()=>_s,useTrack:()=>Os});module.exports=Xn(Ka);var Bt=v(N()),Vr=v(ht()),Kr=v(pt());function gs(e){return(0,Vr.callOpenApi)(T(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Kr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>k(this,null,function*(){})}))}var ke=r=>k(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,Bt.debug)(`local error tracking ignored:${e.data.message} ${JSON.stringify(e)}, to ${t}`),{};(0,Bt.debug)("error track",e.data.message,JSON.stringify(e));let n=yield gs({apiUrl:t,func:o=>o.postError(e)});return n.error?{error:n.error.message}:{}});var be=v(require("react")),ms={analyticaToken:void 0,overrideBaseUrl:void 0},se=be.default.createContext(ms);function ys(e){if(!e.analyticaToken)return;let t=window.console.error;window.console.error=(...n)=>ke({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)=>ke({data:{data:{href:window.location.href,message:JSON.stringify(n)},key:e.analyticaToken},overrideBaseUrl:e.overrideBaseUrl}).finally(()=>r(...n))}var bs=({children:e,values:t})=>{let[r,n]=(0,be.useState)(t);return(0,be.useEffect)(()=>{JSON.stringify(t)!==JSON.stringify(r)&&n(t)},[r,t]),(0,be.useEffect)(()=>{ys(t)},[]),be.default.createElement(se.Provider,{value:r},e)};var he=e=>`[Analytica.${e}] Please load analytica token in AnalyticaConfigProvider to use this component`;var $e=v(N()),Ur=require("react"),Nr=v(ht()),Jr=v(pt());function vs(e){return(0,Nr.callOpenApi)(T(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Jr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>k(this,null,function*(){})}))}var gt=n=>k(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,$e.debug)(`local feedback ignored:${JSON.stringify(e)}, to ${r}`),{};(0,$e.debug)("feedback",JSON.stringify(e));let i=yield vs({apiUrl:r,func:s=>s.putFeedback({key:t,data:e})});return i.error?{error:i.error.message}:{}}),_s=()=>{let{analyticaToken:e,overrideBaseUrl:t}=(0,Ur.useContext)(se);return e?{trackWithToken:r=>gt(T(A({},r),{analyticaToken:e,overrideBaseUrl:t}))}:((0,$e.warn)(he("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"),mt=e=>(0,zr.decode)(e),Le=e=>{var n;let t=mt(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 yt=v(N()),Hr=require("react"),Gr=v(pt()),Wr=v(ht());function ws(e){return(0,Wr.callOpenApi)(T(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Gr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>k(this,null,function*(){})}))}var Ft=i=>k(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=T(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=T(A({},o),{pageReferrer:document.referrer,pageTitle:document.title})),typeof navigator!="undefined"&&(o=T(A({},o),{browserLanguage:navigator.language})),typeof window!="undefined"&&((u=window==null?void 0:window.location)==null?void 0:u.hostname)==="localhost")return(0,yt.debug)(`local page ignored: ${JSON.stringify(o)}, to ${r}`),{};let s=yield ws({apiUrl:r,func:c=>c.postPageTrack({key:e,data:o,userData:t})});return s.error?{error:s.error.message}:{}}),Yr=n=>k(void 0,[n],function*({analyticaToken:e,userData:t,overrideBaseUrl:r="https://api.analytica.click"}){return Ft({analyticaToken:e,userData:t,overrideBaseUrl:r,eventName:"PAGE"})}),Os=()=>{let{analyticaToken:e,overrideBaseUrl:t}=(0,Hr.useContext)(se);if(!e){(0,yt.warn)(he("useTrack"));let r=()=>k(void 0,null,function*(){return{error:"no token"}});return{page:r,track:r}}return{page:r=>Yr(T(A({},r),{analyticaToken:e,overrideBaseUrl:t})),track:r=>Ft(T(A({},r),{analyticaToken:e,overrideBaseUrl:t}))}};var on=v(nn()),_e=v(require("react")),sn=v(N());function Js(n){return k(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 ke({data:{key:t,data:{message:i,stack:s,filename:l,href:o}}})})}var $s=({children:e,filterBrowserError:t})=>{let{analyticaToken:r}=(0,_e.useContext)(se);return(0,_e.useEffect)(()=>{if(!r)return()=>{};let n=i=>Js({ev:i,analyticaToken:r,filterBrowserError:t});return window.addEventListener("error",n),()=>{window.removeEventListener("error",n)}},[r,t]),r?_e.default.createElement(on.ErrorBoundary,{notify:n=>k(void 0,null,function*(){let{href:i}=window.location;yield ke({data:{key:r,data:T(A({},n),{href:i})}})})},e):((0,sn.warn)(he("ErrorBoundary")),_e.default.createElement(_e.default.Fragment,null,e))};var Ge=v(require("react")),wn=v(an()),On=v(_n()),jn=v(require("react-dom")),pa=require("styled-components"),jt={},Nt=({url:e,props:t})=>{let r=(0,wn.createRequires)(()=>({react:Ge.default,"react-dom":jn.default,"styled-components":pa})),n,i=!1,o;return jt[e]?n=jt[e]:[i,o,n]=(0,On.createUseRemoteComponent)({requires:r})(e),!jt[e]&&!i&&!o&&n&&(jt[e]=n),Ge.default.createElement(Ge.default.Fragment,null,!i&&!o&&Ge.default.createElement(n,A({},t)),o&&o)};var Ve=v(require("react")),An=v(N()),ga=e=>{let{analyticaToken:t,overrideBaseUrl:r,devMode:n}=(0,Ve.useContext)(se);if(!t)return(0,An.warn)(he("Feedback")),Ve.default.createElement(Ve.default.Fragment,null);let i=T(A({},e),{submitFeedback:gt,analyticaToken:t,overrideBaseUrl:r}),o="https://cdn.analytica.click/feedback.js";return n&&(o="/feedback.js"),Ve.default.createElement(Nt,{url:o,props:i})};var En=v(require("aws-sdk/clients/cognitoidentity"));function At(r){return k(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 Et=e=>!(e!=null&&e.expires_at)||new Date().getTime()>e.expires_at,Tt=({expires_in:e})=>new Date().getTime()+parseInt(`${e}000`,10);var Sn=v(Jt()),St=v(N()),Cn=v(kt());function $t(o){return k(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)&&!Et(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,St.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=T(A({},e),{jwt:T(A({},u.data),{refresh_token:a,expires_at:Tt({expires_in:u.data.expires_in})})});return c.credentials=yield At({user:c,config:n}),t(c),c}catch(a){let u=a.toString();if(u.includes(400)||u.includes(401)||u.includes(403)){(0,St.debug)("old refresh token, wipe"),t(void 0),r(void 0);return}r(a)}})}var Pn=v(Jt()),xn=v(kt());function qn(i){return k(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=T(A({},Le(o.data.id_token)),{jwt:T(A({},o.data),{expires_at:Tt({expires_in:o.data.expires_in})})});return n.identityPool&&(s.credentials=yield At({user:s,config:n})),t(s),!0}catch(o){}return!1})}var Se=v(N()),ae=v(require("react")),Ue=v(Ln()),We=v(ct()),In=v(kt()),Mn=ae.default.createContext(void 0),Da=({config:e,children:t,goToPageUrl:r,location:n,redirectUrl:i=n.origin,onMessage:o,cookieDocument:s})=>{var ue,U;let[l,a]=(0,ae.useState)(),[u,c]=(0,We.useCookieString)({name:"id_token",cookieDocument:typeof window=="undefined"?s:void 0,defaultValue:""}),d=u;d&&!mt(d)&&((0,Se.warn)("bad token, logging out"),(0,We.wipeCookies)("id_token"),r({url:n.origin,login:!1}),d="");let h;d&&!(0,Ue.getLocalStorageItem)("user",void 0)&&(h=Le(d));let[f,b]=(0,Ue.UseLocalStorage)("user",h),[V,K]=(0,ae.useState)(!1),y=(0,In.extractQs)({search:typeof window=="undefined"?"":window.location.search,sanatise:!1}),q=()=>k(void 0,null,function*(){(0,We.wipeCookies)("id_token"),(0,Ue.clearLocalStorageItem)("user"),c(""),b(void 0),a(void 0),K(!0),yield r({url:n.origin,login:!1}),K(!1)}),m=q;(0,ae.useEffect)(()=>{var z;let R=(z=f==null?void 0:f.jwt)==null?void 0:z.id_token;R!==d&&c(R||"")},[d,c,f,(ue=f==null?void 0:f.jwt)==null?void 0:ue.id_token]);let $=R=>k(void 0,null,function*(){var j;if(l||V||n.hash&&Object.keys(n.hash).length>0||n.search&&((j=Object.keys(n.search))==null?void 0:j.length)>0)return;K(!0);let z={back:n.pathname},D=e.vendToken+i;R&&(D+=`&state=${R}`),yield r({url:D,state:z,login:!0})});(0,ae.useEffect)(()=>{function R(){return k(this,null,function*(){var le,de,te;let z=!!(y!=null&&y.code)||!!(y!=null&&y.error),D=Et(f==null?void 0:f.jwt),j=!(f!=null&&f.userId)&&!!(f!=null&&f.jwt);if(!(!z&&!D&&!j))try{if(K(!0),z&&!D)yield r({url:i,login:!0});else if(z){if(y!=null&&y.error){let Ne={message:(y==null?void 0:y.error_description)||"auth error"};JSON.stringify(Ne||{})!==JSON.stringify(l||{})&&a(Ne)}else y!=null&&y.code&&(yield qn({code:y.code,redirectUrl:i,config:e,setUser:b}));let Q=""||i||"/";if(y!=null&&y.state)try{Q.includes("?")?Q+="&":Q+="?",Q+=`state=${y.state}`}catch(Ne){(0,Se.warn)("bad state passed in")}yield r({url:Q,login:!0})}else if(D&&((le=f==null?void 0:f.jwt)==null?void 0:le.refresh_token))yield $t({setUser:b,setError:a,user:f,config:e,logout:m});else if(j){let Y=(te=(de=f==null?void 0:f.jwt)==null?void 0:de.id_token)==null?void 0:te.substr(f.jwt.id_token.indexOf(" ")+1);!f||!Y?((0,Se.info)("logging out no token"),b(void 0),a(void 0)):b(T(A({},Le(Y)),{jwt:f.jwt,credentials:f.credentials}))}}finally{K(!1)}})}!V&&!l&&R()},[e,l,r,m,V,y,i,b,f]),(0,ae.useEffect)(()=>{var R;l&&((0,Se.error)(JSON.stringify(l)),o&&o(`error:${(R=l.response)==null?void 0:R.status}`,{appearance:"error"}))},[o,l]);let ee={loading:!l&&(V||!!(y!=null&&y.code)),isAuthenticated:!l&&!!((U=f==null?void 0:f.idJwt)!=null&&U.email),refreshToken:()=>$t({setUser:b,setError:a,user:f,config:e,logout:q}),loginWithRedirect:$,logout:q,error:l,user:f};return ae.default.createElement(Mn.Provider,{value:ee},t)};var Vn=v(N()),Kn=v(Ae()),Un=v(Fn()),ce=v(require("react")),Nn=({rc:{request:e,pushPath:t},cac:{error:r,loginWithRedirect:n,logout:i,isAuthenticated:o,loading:s},getDashboardPath:l,addToast:a})=>{if((0,ce.useEffect)(()=>{if(r){let d=r.message.includes("email")?" We require the use of your email for the functionality of this app.":"";a(`An Error has occured with your login attempt.${d}`,{appearance:"error"}),(0,Vn.error)("auth error:",JSON.stringify(r,null,2)),i()}},[r]),Object.keys(e.url.query||{}).includes("login")){if(!o)return n(e.url.query.state),{render:ce.default.createElement(ce.default.Fragment,null),openApiDisabled:!0};if(o)return t(l()),{render:ce.default.createElement(ce.default.Fragment,null),openApiDisabled:!0}}if(e.url.query.state&&o){let d=JSON.parse((0,Kn.fromBase64)(e.url.query.state));if(d.redirect)return t(d.redirect),{render:ce.default.createElement(ce.default.Fragment,null),openApiDisabled:!0}}return s?{render:ce.default.createElement(Un.Loader,{name:"authload"}),openApiDisabled:!0}:{openApiDisabled:!o||s||!!r}};0&&(module.exports={AnalyticaConfigContext,AnalyticaConfigProvider,CognitoAuthContext,CognitoAuthProvider,DashboardAuthValidation,ErrorBoundary,ExternalComponent,Feedback,decodeIdToken,errorTrack,feedback,getUserFromIdToken,page,tokenMissing,track,useFeedback,useTrack});
|
112
|
+
`,Va=({name:e,height:t,width:r})=>{let[n,i]=(0,Ct.useState)(!0);(0,Ct.useEffect)(()=>{i(!1)},[]);let o={};return r!==null&&(o.width=r??"2rem"),t!==null&&(o.height=t??"2rem"),Ct.default.createElement(Fa,{"data-loading":e,"data-transparent":n},Ct.default.createElement(Ba,{style:o}))};W.Loader=Va});var Ka={};Qn(Ka,{AnalyticaConfigContext:()=>se,AnalyticaConfigProvider:()=>bs,CognitoAuthContext:()=>Mn,CognitoAuthProvider:()=>Da,DashboardAuthValidation:()=>Nn,ErrorBoundary:()=>$s,ExternalComponent:()=>Nt,Feedback:()=>ga,decodeIdToken:()=>mt,errorTrack:()=>ke,feedback:()=>gt,getUserFromIdToken:()=>Le,page:()=>Yr,tokenMissing:()=>he,track:()=>Ft,useFeedback:()=>_s,useTrack:()=>Os});module.exports=Xn(Ka);var Bt=v(N()),Vr=v(ht()),Kr=v(pt());function gs(e){return(0,Vr.callOpenApi)(T(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Kr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>k(this,null,function*(){})}))}var ke=r=>k(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,Bt.debug)(`local error tracking ignored:${e.data.message} ${JSON.stringify(e)}, to ${t}`),{};(0,Bt.debug)("error track",e.data.message,JSON.stringify(e));let n=yield gs({apiUrl:t,func:o=>o.postError(e)});return n.error?{error:n.error.message}:{}});var be=v(require("react")),ms={analyticaToken:void 0,overrideBaseUrl:void 0},se=be.default.createContext(ms);function ys(e){if(!e.analyticaToken)return;let t=window.console.error;window.console.error=(...n)=>ke({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)=>ke({data:{data:{href:window.location.href,message:JSON.stringify(n)},key:e.analyticaToken},overrideBaseUrl:e.overrideBaseUrl}).finally(()=>r(...n))}var bs=({children:e,values:t})=>{let[r,n]=(0,be.useState)(t);return(0,be.useEffect)(()=>{JSON.stringify(t)!==JSON.stringify(r)&&n(t)},[r,t]),(0,be.useEffect)(()=>{ys(t)},[]),be.default.createElement(se.Provider,{value:r},e)};var he=e=>`[Analytica.${e}] Please load analytica token in AnalyticaConfigProvider to use this component`;var $e=v(N()),Ur=require("react"),Nr=v(ht()),Jr=v(pt());function vs(e){return(0,Nr.callOpenApi)(T(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Jr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>k(this,null,function*(){})}))}var gt=n=>k(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,$e.debug)(`local feedback ignored:${JSON.stringify(e)}, to ${r}`),{};(0,$e.debug)("feedback",JSON.stringify(e));let i=yield vs({apiUrl:r,func:s=>s.putFeedback({key:t,data:e})});return i.error?{error:i.error.message}:{}}),_s=()=>{let{analyticaToken:e,overrideBaseUrl:t}=(0,Ur.useContext)(se);return e?{trackWithToken:r=>gt(T(A({},r),{analyticaToken:e,overrideBaseUrl:t}))}:((0,$e.warn)(he("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"),mt=e=>(0,zr.decode)(e),Le=e=>{var n;let t=mt(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 yt=v(N()),Hr=require("react"),Gr=v(pt()),Wr=v(ht());function ws(e){return(0,Wr.callOpenApi)(T(A({},e),{func:t=>e.func(t),newDefaultApi:t=>new Gr.DefaultApi(t),logout:()=>window.location.reload(),refreshToken:()=>k(this,null,function*(){})}))}var Ft=i=>k(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=T(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=T(A({},o),{pageReferrer:document.referrer,pageTitle:document.title})),typeof navigator!="undefined"&&(o=T(A({},o),{browserLanguage:navigator.language})),typeof window!="undefined"&&((u=window==null?void 0:window.location)==null?void 0:u.hostname)==="localhost")return(0,yt.debug)(`local page ignored: ${JSON.stringify(o)}, to ${r}`),{};let s=yield ws({apiUrl:r,func:c=>c.postPageTrack({key:e,data:o,userData:t})});return s.error?{error:s.error.message}:{}}),Yr=n=>k(void 0,[n],function*({analyticaToken:e,userData:t,overrideBaseUrl:r="https://api.analytica.click"}){return Ft({analyticaToken:e,userData:t,overrideBaseUrl:r,eventName:"PAGE"})}),Os=()=>{let{analyticaToken:e,overrideBaseUrl:t}=(0,Hr.useContext)(se);if(!e){(0,yt.warn)(he("useTrack"));let r=()=>k(void 0,null,function*(){return{error:"no token"}});return{page:r,track:r}}return{page:r=>Yr(T(A({},r),{analyticaToken:e,overrideBaseUrl:t})),track:r=>Ft(T(A({},r),{analyticaToken:e,overrideBaseUrl:t}))}};var on=v(nn()),_e=v(require("react")),sn=v(N());function Js(n){return k(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 ke({data:{key:t,data:{message:i,stack:s,filename:l,href:o}}})})}var $s=({children:e,filterBrowserError:t})=>{let{analyticaToken:r}=(0,_e.useContext)(se);return(0,_e.useEffect)(()=>{if(!r)return()=>{};let n=i=>Js({ev:i,analyticaToken:r,filterBrowserError:t});return window.addEventListener("error",n),()=>{window.removeEventListener("error",n)}},[r,t]),r?_e.default.createElement(on.ErrorBoundary,{notify:n=>k(void 0,null,function*(){let{href:i}=window.location;yield ke({data:{key:r,data:T(A({},n),{href:i})}})})},e):((0,sn.warn)(he("ErrorBoundary")),_e.default.createElement(_e.default.Fragment,null,e))};var Ge=v(require("react")),wn=v(an()),On=v(_n()),jn=v(require("react-dom")),pa=require("styled-components"),jt={},Nt=({url:e,props:t})=>{let r=(0,wn.createRequires)(()=>({react:Ge.default,"react-dom":jn.default,"styled-components":pa})),n,i=!1,o;return jt[e]?n=jt[e]:[i,o,n]=(0,On.createUseRemoteComponent)({requires:r})(e),!jt[e]&&!i&&!o&&n&&(jt[e]=n),Ge.default.createElement(Ge.default.Fragment,null,!i&&!o&&Ge.default.createElement(n,A({},t)),o&&o)};var Ve=v(require("react")),An=v(N()),ga=e=>{let{analyticaToken:t,overrideBaseUrl:r,devMode:n}=(0,Ve.useContext)(se);if(!t)return(0,An.warn)(he("Feedback")),Ve.default.createElement(Ve.default.Fragment,null);let i=T(A({},e),{submitFeedback:gt,analyticaToken:t,overrideBaseUrl:r}),o="https://cdn.analytica.click/feedback.js";return n&&(o="/feedback.js"),Ve.default.createElement(Nt,{url:o,props:i})};var En=v(require("aws-sdk/clients/cognitoidentity"));function At(r){return k(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 Et=e=>!(e!=null&&e.expires_at)||new Date().getTime()>e.expires_at,Tt=({expires_in:e})=>new Date().getTime()+parseInt(`${e}000`,10);var Sn=v(Jt()),St=v(N()),Cn=v(kt());function $t(o){return k(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)&&!Et(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,St.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=T(A({},e),{jwt:T(A({},u.data),{refresh_token:a,expires_at:Tt({expires_in:u.data.expires_in})})});return c.credentials=yield At({user:c,config:n}),t(c),c}catch(a){let u=a.toString();if(u.includes(400)||u.includes(401)||u.includes(403)){(0,St.debug)("old refresh token, wipe"),t(void 0),r(void 0);return}r(a)}})}var Pn=v(Jt()),xn=v(kt());function qn(i){return k(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=T(A({},Le(o.data.id_token)),{jwt:T(A({},o.data),{expires_at:Tt({expires_in:o.data.expires_in})})});return n.identityPool&&(s.credentials=yield At({user:s,config:n})),t(s),!0}catch(o){}return!1})}var Se=v(N()),ae=v(require("react")),Ue=v(Ln()),We=v(ct()),In=v(kt()),Mn=ae.default.createContext(void 0),Da=({config:e,children:t,goToPageUrl:r,location:n,redirectUrl:i=n.origin,onMessage:o,cookieDocument:s})=>{var ue,U;let[l,a]=(0,ae.useState)(),[u,c]=(0,We.useCookieString)({name:"id_token",cookieDocument:typeof window=="undefined"?s:void 0,defaultValue:""}),d=u;d&&!mt(d)&&((0,Se.warn)("bad token, logging out"),(0,We.wipeCookies)("id_token"),r({url:n.origin,login:!1}),d="");let h;d&&!(0,Ue.getLocalStorageItem)("user",void 0)&&(h=Le(d));let[f,b]=(0,Ue.UseLocalStorage)("user",h),[V,K]=(0,ae.useState)(!1),y=(0,In.extractQs)({search:typeof window=="undefined"?"":window.location.search,sanatise:!1}),q=()=>k(void 0,null,function*(){(0,We.wipeCookies)("id_token"),(0,Ue.clearLocalStorageItem)("user"),c(""),b(void 0),a(void 0),K(!0),yield r({url:n.origin,login:!1}),K(!1)}),m=q;(0,ae.useEffect)(()=>{var z;let R=(z=f==null?void 0:f.jwt)==null?void 0:z.id_token;R!==d&&c(R||"")},[d,c,f,(ue=f==null?void 0:f.jwt)==null?void 0:ue.id_token]);let $=R=>k(void 0,null,function*(){var j;if(l||V||n.hash&&Object.keys(n.hash).length>0||n.search&&((j=Object.keys(n.search))==null?void 0:j.length)>0)return;K(!0);let z={back:n.pathname},D=e.vendToken+i;R&&(D+=`&state=${R}`),yield r({url:D,state:z,login:!0})});(0,ae.useEffect)(()=>{function R(){return k(this,null,function*(){var le,de,te;let z=!!(y!=null&&y.code)||!!(y!=null&&y.error),D=Et(f==null?void 0:f.jwt),j=!(f!=null&&f.userId)&&!!(f!=null&&f.jwt);if(!(!z&&!D&&!j))try{if(K(!0),z&&!D)yield r({url:i,login:!0});else if(z){if(y!=null&&y.error){let Ne={message:(y==null?void 0:y.error_description)||"auth error"};JSON.stringify(Ne||{})!==JSON.stringify(l||{})&&a(Ne)}else y!=null&&y.code&&(yield qn({code:y.code,redirectUrl:i,config:e,setUser:b}));let Q=""||i||"/";if(y!=null&&y.state)try{Q.includes("?")?Q+="&":Q+="?",Q+=`state=${y.state}`}catch(Ne){(0,Se.warn)("bad state passed in")}yield r({url:Q,login:!0})}else if(D&&((le=f==null?void 0:f.jwt)==null?void 0:le.refresh_token))yield $t({setUser:b,setError:a,user:f,config:e,logout:m});else if(j){let Y=(te=(de=f==null?void 0:f.jwt)==null?void 0:de.id_token)==null?void 0:te.substr(f.jwt.id_token.indexOf(" ")+1);!f||!Y?((0,Se.info)("logging out no token"),b(void 0),a(void 0)):b(T(A({},Le(Y)),{jwt:f.jwt,credentials:f.credentials}))}}finally{K(!1)}})}!V&&!l&&R()},[e,l,r,m,V,y,i,b,f]),(0,ae.useEffect)(()=>{var R;l&&((0,Se.error)(JSON.stringify(l)),o&&o(`error:${(R=l.response)==null?void 0:R.status}`,{appearance:"error"}))},[o,l]);let ee={loading:!l&&(V||!!(y!=null&&y.code)),isAuthenticated:!l&&!!((U=f==null?void 0:f.idJwt)!=null&&U.email),refreshToken:()=>$t({setUser:b,setError:a,user:f,config:e,logout:q}),loginWithRedirect:$,logout:q,error:l,user:f};return ae.default.createElement(Mn.Provider,{value:ee},t)};var Vn=v(N()),Kn=v(Ae()),Un=v(Fn()),ce=v(require("react")),Nn=({rc:{request:e,pushPath:t},cac:{error:r,loginWithRedirect:n,logout:i,isAuthenticated:o,loading:s},getDashboardPath:l,addToast:a})=>{if((0,ce.useEffect)(()=>{if(r){let d=r.message.includes("email")?` We require the use of your email for the functionality of this app.
|
113
|
+
You can update your settings at https://www.facebook.com/settings?tab=applications`:"";a(`An Error has occured with your login attempt.${d}`,{appearance:"error"}),(0,Vn.error)("auth error:",JSON.stringify(r,null,2)),i()}},[r]),Object.keys(e.url.query||{}).includes("login")){if(!o)return n(e.url.query.state),{render:ce.default.createElement(ce.default.Fragment,null),openApiDisabled:!0};if(o)return t(l()),{render:ce.default.createElement(ce.default.Fragment,null),openApiDisabled:!0}}if(e.url.query.state&&o){let d=JSON.parse((0,Kn.fromBase64)(e.url.query.state));if(d.redirect)return t(d.redirect),{render:ce.default.createElement(ce.default.Fragment,null),openApiDisabled:!0}}return s?{render:ce.default.createElement(Un.Loader,{name:"authload"}),openApiDisabled:!0}:{openApiDisabled:!o||s||!!r}};0&&(module.exports={AnalyticaConfigContext,AnalyticaConfigProvider,CognitoAuthContext,CognitoAuthProvider,DashboardAuthValidation,ErrorBoundary,ExternalComponent,Feedback,decodeIdToken,errorTrack,feedback,getUserFromIdToken,page,tokenMissing,track,useFeedback,useTrack});
|