@sesamy/sesamy-js 1.22.0 → 1.22.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/sesamy-js.cjs +1 -1
- package/dist/sesamy-js.iife.js +1 -1
- package/dist/sesamy-js.mjs +1 -1
- package/package.json +1 -1
package/dist/sesamy-js.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
`,10)+1,o=a.substring(i)+(n?"//# sourceMappingURL="+n:""),s=new Blob([o],{type:"application/javascript"});return URL.createObjectURL(s)}var Ou,ku,_u,vi,kT=(Ou="Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscil7c3VwZXIociksdGhpcy5lcnJvcj10LHRoaXMuZXJyb3JfZGVzY3JpcHRpb249cixPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxlLnByb3RvdHlwZSl9c3RhdGljIGZyb21QYXlsb2FkKHtlcnJvcjp0LGVycm9yX2Rlc2NyaXB0aW9uOnJ9KXtyZXR1cm4gbmV3IGUodCxyKX19Y2xhc3MgdCBleHRlbmRzIGV7Y29uc3RydWN0b3IoZSxzKXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIixgTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyR7cihlLFsiZGVmYXVsdCJdKX0nLCBzY29wZTogJyR7cihzKX0nKWApLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXMsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsdC5wcm90b3R5cGUpfX1mdW5jdGlvbiByKGUsdD1bXSl7cmV0dXJuIGUmJiF0LmluY2x1ZGVzKGUpP2U6IiJ9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO2NvbnN0IHM9ZT0+e3ZhcntjbGllbnRJZDp0fT1lLHI9ZnVuY3Rpb24oZSx0KXt2YXIgcj17fTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmdC5pbmRleE9mKHMpPDAmJihyW3NdPWVbc10pO2lmKG51bGwhPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz0wO2ZvcihzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7bzxzLmxlbmd0aDtvKyspdC5pbmRleE9mKHNbb10pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHNbb10pJiYocltzW29dXT1lW3Nbb11dKX1yZXR1cm4gcn0oZSxbImNsaWVudElkIl0pO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKChlPT5PYmplY3Qua2V5cyhlKS5maWx0ZXIoKHQ9PnZvaWQgMCE9PWVbdF0pKS5yZWR1Y2UoKCh0LHIpPT5PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse1tyXTplW3JdfSkpLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IG89e307Y29uc3Qgbj0oZSx0KT0+YCR7ZX18JHt0fWA7YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGFzeW5jKHtkYXRhOnt0aW1lb3V0OmUsYXV0aDpyLGZldGNoVXJsOmksZmV0Y2hPcHRpb25zOmMsdXNlRm9ybURhdGE6YX0scG9ydHM6W3BdfSk9PntsZXQgZjtjb25zdHthdWRpZW5jZTp1LHNjb3BlOmx9PXJ8fHt9O3RyeXtjb25zdCByPWE/KGU9Pntjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMoZSkscj17fTtyZXR1cm4gdC5mb3JFYWNoKCgoZSx0KT0+e3JbdF09ZX0pKSxyfSkoYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7aWYoIXIucmVmcmVzaF90b2tlbiYmInJlZnJlc2hfdG9rZW4iPT09ci5ncmFudF90eXBlKXtjb25zdCBlPSgoZSx0KT0+b1tuKGUsdCldKSh1LGwpO2lmKCFlKXRocm93IG5ldyB0KHUsbCk7Yy5ib2R5PWE/cyhPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKTpKU09OLnN0cmluZ2lmeShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKX1sZXQgaCxnOyJmdW5jdGlvbiI9PXR5cGVvZiBBYm9ydENvbnRyb2xsZXImJihoPW5ldyBBYm9ydENvbnRyb2xsZXIsYy5zaWduYWw9aC5zaWduYWwpO3RyeXtnPWF3YWl0IFByb21pc2UucmFjZShbKGQ9ZSxuZXcgUHJvbWlzZSgoZT0+c2V0VGltZW91dChlLGQpKSkpLGZldGNoKGksT2JqZWN0LmFzc2lnbih7fSxjKSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBwLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighZylyZXR1cm4gaCYmaC5hYm9ydCgpLHZvaWQgcC5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtmPWF3YWl0IGcuanNvbigpLGYucmVmcmVzaF90b2tlbj8oKChlLHQscik9PntvW24odCxyKV09ZX0pKGYucmVmcmVzaF90b2tlbix1LGwpLGRlbGV0ZSBmLnJlZnJlc2hfdG9rZW4pOigoZSx0KT0+e2RlbGV0ZSBvW24oZSx0KV19KSh1LGwpLHAucG9zdE1lc3NhZ2Uoe29rOmcub2ssanNvbjpmfSl9Y2F0Y2goZSl7cC5wb3N0TWVzc2FnZSh7b2s6ITEsanNvbjp7ZXJyb3I6ZS5lcnJvcixlcnJvcl9kZXNjcmlwdGlvbjplLm1lc3NhZ2V9fSl9dmFyIGR9KSl9KCk7Cgo=",ku=null,_u=!1,function(e){return vi=vi||OT(Ou,ku,_u),new Worker(vi,e)});const pi={};let _T=class{constructor(t,r){this.cache=t,this.clientId=r,this.manifestKey=this.createManifestKeyFrom(this.clientId)}async add(t){var r;const n=new Set(((r=await this.cache.get(this.manifestKey))===null||r===void 0?void 0:r.keys)||[]);n.add(t),await this.cache.set(this.manifestKey,{keys:[...n]})}async remove(t){const r=await this.cache.get(this.manifestKey);if(r){const n=new Set(r.keys);return n.delete(t),n.size>0?await this.cache.set(this.manifestKey,{keys:[...n]}):await this.cache.remove(this.manifestKey)}}get(){return this.cache.get(this.manifestKey)}clear(){return this.cache.remove(this.manifestKey)}createManifestKeyFrom(t){return`@@auth0spajs@@::${t}`}};const RT={memory:()=>new Cd().enclosedCache,localstorage:()=>new wT},Ru=e=>RT[e],Cu=e=>{const{openUrl:t,onRedirect:r}=e,n=je(e,["openUrl","onRedirect"]);return Object.assign(Object.assign({},n),{openUrl:t===!1||t?t:r})},mi=new cT;let CT=class{constructor(t){let r,n;if(this.userCache=new Cd().enclosedCache,this.defaultOptions={authorizationParams:{scope:"openid profile email"},useRefreshTokensFallback:!1,useFormData:!0},this._releaseLockOnPageHide=async()=>{await mi.releaseLock("auth0.lock.getTokenSilently"),window.removeEventListener("pagehide",this._releaseLockOnPageHide)},this.options=Object.assign(Object.assign(Object.assign({},this.defaultOptions),t),{authorizationParams:Object.assign(Object.assign({},this.defaultOptions.authorizationParams),t.authorizationParams)}),typeof window<"u"&&(()=>{if(!Sn())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(Sn().subtle===void 0)throw new Error(`
|
|
3
3
|
auth0-spa-js must run on a secure origin. See https://github.com/auth0/auth0-spa-js/blob/main/FAQ.md#why-do-i-get-auth0-spa-js-must-run-on-a-secure-origin for more information.
|
|
4
4
|
`)})(),t.cache&&t.cacheLocation&&console.warn("Both `cache` and `cacheLocation` options have been specified in the Auth0Client configuration; ignoring `cacheLocation` and using `cache`."),t.cache)n=t.cache;else{if(r=t.cacheLocation||"memory",!Ru(r))throw new Error(`Invalid cache location "${r}"`);n=Ru(r)()}this.httpTimeoutMs=t.httpTimeoutInSeconds?1e3*t.httpTimeoutInSeconds:1e4,this.cookieStorage=t.legacySameSiteCookie===!1?kt:PT,this.orgHintCookieName=`auth0.${this.options.clientId}.organization_hint`,this.isAuthenticatedCookieName=(o=>`auth0.${o}.is.authenticated`)(this.options.clientId),this.sessionCheckExpiryDays=t.sessionCheckExpiryDays||1;const a=t.useCookiesForTransactions?this.cookieStorage:ET;var i;this.scope=on("openid",this.options.authorizationParams.scope,this.options.useRefreshTokens?"offline_access":""),this.transactionManager=new ST(a,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||Id,this.cacheManager=new bT(n,n.allKeys?void 0:new _T(n,this.options.clientId),this.nowProvider),this.domainUrl=(i=this.options.domain,/^https?:\/\//.test(i)?i:`https://${i}`),this.tokenIssuer=((o,s)=>o?o.startsWith("https://")?o:`https://${o}/`:`${s}/`)(this.options.issuer,this.domainUrl),typeof window<"u"&&window.Worker&&this.options.useRefreshTokens&&r==="memory"&&(this.options.workerUrl?this.worker=new Worker(this.options.workerUrl):this.worker=new kT)}_url(t){const r=encodeURIComponent(btoa(JSON.stringify(this.options.auth0Client||$d)));return`${this.domainUrl}${t}&auth0Client=${r}`}_authorizeUrl(t){return this._url(`/authorize?${eo(t)}`)}async _verifyIdToken(t,r,n){const a=await this.nowProvider();return IT({iss:this.tokenIssuer,aud:this.options.clientId,id_token:t,nonce:r,organization:n,leeway:this.options.leeway,max_age:(i=this.options.authorizationParams.max_age,typeof i!="string"?i:parseInt(i,10)||void 0),now:a});var i}_processOrgHint(t){t?this.cookieStorage.save(this.orgHintCookieName,t,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}):this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain})}async _prepareAuthorizeUrl(t,r,n){const a=Pu(hi()),i=Pu(hi()),o=hi(),s=(l=>{const c=new Uint8Array(l);return(d=>{const h={"+":"-","/":"_","=":""};return d.replace(/[+/=]/g,v=>h[v])})(window.btoa(String.fromCharCode(...Array.from(c))))})(await(async l=>await Sn().subtle.digest({name:"SHA-256"},new TextEncoder().encode(l)))(o)),u=((l,c,d,h,v,S,g,T)=>Object.assign(Object.assign(Object.assign({client_id:l.clientId},l.authorizationParams),d),{scope:on(c,d.scope),response_type:"code",response_mode:T||"query",state:h,nonce:v,redirect_uri:g||l.authorizationParams.redirect_uri,code_challenge:S,code_challenge_method:"S256"}))(this.options,this.scope,t,a,i,s,t.redirect_uri||this.options.authorizationParams.redirect_uri||n,r==null?void 0:r.response_mode),f=this._authorizeUrl(u);return{nonce:i,code_verifier:o,scope:u.scope,audience:u.audience||"default",redirect_uri:u.redirect_uri,state:a,url:f}}async loginWithPopup(t,r){var n;if(t=t||{},!(r=r||{}).popup&&(r.popup=(s=>{const u=window.screenX+(window.innerWidth-400)/2,f=window.screenY+(window.innerHeight-600)/2;return window.open(s,"auth0:authorize:popup",`left=${u},top=${f},width=400,height=600,resizable,scrollbars=yes,status=1`)})(""),!r.popup))throw new Error("Unable to open a popup for loginWithPopup - window.open returned `null`");const a=await this._prepareAuthorizeUrl(t.authorizationParams||{},{response_mode:"web_message"},window.location.origin);r.popup.location.href=a.url;const i=await(s=>new Promise((u,f)=>{let l;const c=setInterval(()=>{s.popup&&s.popup.closed&&(clearInterval(c),clearTimeout(d),window.removeEventListener("message",l,!1),f(new dT(s.popup)))},1e3),d=setTimeout(()=>{clearInterval(c),f(new fT(s.popup)),window.removeEventListener("message",l,!1)},1e3*(s.timeoutInSeconds||60));l=function(h){if(h.data&&h.data.type==="authorization_response"){if(clearTimeout(d),clearInterval(c),window.removeEventListener("message",l,!1),s.popup.close(),h.data.response.error)return f(ue.fromPayload(h.data.response));u(h.data.response)}},window.addEventListener("message",l)}))(Object.assign(Object.assign({},r),{timeoutInSeconds:r.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}));if(a.state!==i.state)throw new ue("state_mismatch","Invalid state");const o=((n=t.authorizationParams)===null||n===void 0?void 0:n.organization)||this.options.authorizationParams.organization;await this._requestToken({audience:a.audience,scope:a.scope,code_verifier:a.code_verifier,grant_type:"authorization_code",code:i.code,redirect_uri:a.redirect_uri},{nonceIn:a.nonce,organization:o})}async getUser(){var t;const r=await this._getIdTokenFromCache();return(t=r==null?void 0:r.decodedToken)===null||t===void 0?void 0:t.user}async getIdTokenClaims(){var t;const r=await this._getIdTokenFromCache();return(t=r==null?void 0:r.decodedToken)===null||t===void 0?void 0:t.claims}async loginWithRedirect(t={}){var r;const n=Cu(t),{openUrl:a,fragment:i,appState:o}=n,s=je(n,["openUrl","fragment","appState"]),u=((r=s.authorizationParams)===null||r===void 0?void 0:r.organization)||this.options.authorizationParams.organization,f=await this._prepareAuthorizeUrl(s.authorizationParams||{}),{url:l}=f,c=je(f,["url"]);this.transactionManager.create(Object.assign(Object.assign(Object.assign({},c),{appState:o}),u&&{organization:u}));const d=i?`${l}#${i}`:l;a?await a(d):window.location.assign(d)}async handleRedirectCallback(t=window.location.href){const r=t.split("?").slice(1);if(r.length===0)throw new Error("There are no query params available for parsing.");const{state:n,code:a,error:i,error_description:o}=(c=>{c.indexOf("#")>-1&&(c=c.substring(0,c.indexOf("#")));const d=new URLSearchParams(c);return{state:d.get("state"),code:d.get("code")||void 0,error:d.get("error")||void 0,error_description:d.get("error_description")||void 0}})(r.join("")),s=this.transactionManager.get();if(!s)throw new ue("missing_transaction","Invalid state");if(this.transactionManager.remove(),i)throw new lT(i,o||i,n,s.appState);if(!s.code_verifier||s.state&&s.state!==n)throw new ue("state_mismatch","Invalid state");const u=s.organization,f=s.nonce,l=s.redirect_uri;return await this._requestToken(Object.assign({audience:s.audience,scope:s.scope,code_verifier:s.code_verifier,grant_type:"authorization_code",code:a},l?{redirect_uri:l}:{}),{nonceIn:f,organization:u}),{appState:s.appState}}async checkSession(t){if(!this.cookieStorage.get(this.isAuthenticatedCookieName)){if(!this.cookieStorage.get("auth0.is.authenticated"))return;this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove("auth0.is.authenticated")}try{await this.getTokenSilently(t)}catch{}}async getTokenSilently(t={}){var r;const n=Object.assign(Object.assign({cacheMode:"on"},t),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),t.authorizationParams),{scope:on(this.scope,(r=t.authorizationParams)===null||r===void 0?void 0:r.scope)})}),a=await((i,o)=>{let s=pi[o];return s||(s=i().finally(()=>{delete pi[o],s=null}),pi[o]=s),s})(()=>this._getTokenSilently(n),`${this.options.clientId}::${n.authorizationParams.audience}::${n.authorizationParams.scope}`);return t.detailedResponse?a:a==null?void 0:a.access_token}async _getTokenSilently(t){const{cacheMode:r}=t,n=je(t,["cacheMode"]);if(r!=="off"){const a=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||"default",clientId:this.options.clientId});if(a)return a}if(r!=="cache-only"){if(!await(async(a,i=3)=>{for(let o=0;o<i;o++)if(await a())return!0;return!1})(()=>mi.acquireLock("auth0.lock.getTokenSilently",5e3),10))throw new Qi;try{if(window.addEventListener("pagehide",this._releaseLockOnPageHide),r!=="off"){const f=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||"default",clientId:this.options.clientId});if(f)return f}const a=this.options.useRefreshTokens?await this._getTokenUsingRefreshToken(n):await this._getTokenFromIFrame(n),{id_token:i,access_token:o,oauthTokenScope:s,expires_in:u}=a;return Object.assign(Object.assign({id_token:i,access_token:o},s?{scope:s}:null),{expires_in:u})}finally{await mi.releaseLock("auth0.lock.getTokenSilently"),window.removeEventListener("pagehide",this._releaseLockOnPageHide)}}}async getTokenWithPopup(t={},r={}){var n;const a=Object.assign(Object.assign({},t),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),t.authorizationParams),{scope:on(this.scope,(n=t.authorizationParams)===null||n===void 0?void 0:n.scope)})});return r=Object.assign(Object.assign({},uT),r),await this.loginWithPopup(a,r),(await this.cacheManager.get(new st({scope:a.authorizationParams.scope,audience:a.authorizationParams.audience||"default",clientId:this.options.clientId}))).access_token}async isAuthenticated(){return!!await this.getUser()}_buildLogoutUrl(t){t.clientId!==null?t.clientId=t.clientId||this.options.clientId:delete t.clientId;const r=t.logoutParams||{},{federated:n}=r,a=je(r,["federated"]),i=n?"&federated":"";return this._url(`/v2/logout?${eo(Object.assign({clientId:t.clientId},a))}`)+i}async logout(t={}){const r=Cu(t),{openUrl:n}=r,a=je(r,["openUrl"]);t.clientId===null?await this.cacheManager.clear():await this.cacheManager.clear(t.clientId||this.options.clientId),this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(this.isAuthenticatedCookieName,{cookieDomain:this.options.cookieDomain}),this.userCache.remove("@@user@@");const i=this._buildLogoutUrl(a);n?await n(i):n!==!1&&window.location.assign(i)}async _getTokenFromIFrame(t){const r=Object.assign(Object.assign({},t.authorizationParams),{prompt:"none"}),n=this.cookieStorage.get(this.orgHintCookieName);n&&!r.organization&&(r.organization=n);const{url:a,state:i,nonce:o,code_verifier:s,redirect_uri:u,scope:f,audience:l}=await this._prepareAuthorizeUrl(r,{response_mode:"web_message"},window.location.origin);try{if(window.crossOriginIsolated)throw new ue("login_required","The application is running in a Cross-Origin Isolated context, silently retrieving a token without refresh token is not possible.");const c=t.timeoutInSeconds||this.options.authorizeTimeoutInSeconds,d=await((v,S,g=60)=>new Promise((T,I)=>{const w=window.document.createElement("iframe");w.setAttribute("width","0"),w.setAttribute("height","0"),w.style.display="none";const p=()=>{window.document.body.contains(w)&&(window.document.body.removeChild(w),window.removeEventListener("message",$,!1))};let $;const O=setTimeout(()=>{I(new Qi),p()},1e3*g);$=function(_){if(_.origin!=S||!_.data||_.data.type!=="authorization_response")return;const k=_.source;k&&k.close(),_.data.response.error?I(ue.fromPayload(_.data.response)):T(_.data.response),clearTimeout(O),window.removeEventListener("message",$,!1),setTimeout(p,2e3)},window.addEventListener("message",$,!1),window.document.body.appendChild(w),w.setAttribute("src",v)}))(a,this.domainUrl,c);if(i!==d.state)throw new ue("state_mismatch","Invalid state");const h=await this._requestToken(Object.assign(Object.assign({},t.authorizationParams),{code_verifier:s,code:d.code,grant_type:"authorization_code",redirect_uri:u,timeout:t.authorizationParams.timeout||this.httpTimeoutMs}),{nonceIn:o,organization:r.organization});return Object.assign(Object.assign({},h),{scope:f,oauthTokenScope:h.scope,audience:l})}catch(c){throw c.error==="login_required"&&this.logout({openUrl:!1}),c}}async _getTokenUsingRefreshToken(t){const r=await this.cacheManager.get(new st({scope:t.authorizationParams.scope,audience:t.authorizationParams.audience||"default",clientId:this.options.clientId}));if(!(r&&r.refresh_token||this.worker)){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(t);throw new _d(t.authorizationParams.audience||"default",t.authorizationParams.scope)}const n=t.authorizationParams.redirect_uri||this.options.authorizationParams.redirect_uri||window.location.origin,a=typeof t.timeoutInSeconds=="number"?1e3*t.timeoutInSeconds:null;try{const i=await this._requestToken(Object.assign(Object.assign(Object.assign({},t.authorizationParams),{grant_type:"refresh_token",refresh_token:r&&r.refresh_token,redirect_uri:n}),a&&{timeout:a}));return Object.assign(Object.assign({},i),{scope:t.authorizationParams.scope,oauthTokenScope:i.scope,audience:t.authorizationParams.audience||"default"})}catch(i){if((i.message.indexOf("Missing Refresh Token")>-1||i.message&&i.message.indexOf("invalid refresh token")>-1)&&this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(t);throw i}}async _saveEntryInCache(t){const{id_token:r,decodedToken:n}=t,a=je(t,["id_token","decodedToken"]);this.userCache.set("@@user@@",{id_token:r,decodedToken:n}),await this.cacheManager.setIdToken(this.options.clientId,t.id_token,t.decodedToken),await this.cacheManager.set(a)}async _getIdTokenFromCache(){const t=this.options.authorizationParams.audience||"default",r=await this.cacheManager.getIdToken(new st({clientId:this.options.clientId,audience:t,scope:this.scope})),n=this.userCache.get("@@user@@");return r&&r.id_token===(n==null?void 0:n.id_token)?n:(this.userCache.set("@@user@@",r),r)}async _getEntryFromCache({scope:t,audience:r,clientId:n}){const a=await this.cacheManager.get(new st({scope:t,audience:r,clientId:n}),60);if(a&&a.access_token){const{access_token:i,oauthTokenScope:o,expires_in:s}=a,u=await this._getIdTokenFromCache();return u&&Object.assign(Object.assign({id_token:u.id_token,access_token:i},o?{scope:o}:null),{expires_in:s})}}async _requestToken(t,r){const{nonceIn:n,organization:a}=r||{},i=await yT(Object.assign({baseUrl:this.domainUrl,client_id:this.options.clientId,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,timeout:this.httpTimeoutMs},t),this.worker),o=await this._verifyIdToken(i.id_token,n,a);return await this._saveEntryInCache(Object.assign(Object.assign(Object.assign(Object.assign({},i),{decodedToken:o,scope:t.scope,audience:t.audience||"default"}),i.scope?{oauthTokenScope:i.scope}:null),{client_id:this.options.clientId})),this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this._processOrgHint(a||o.claims.org_id),Object.assign(Object.assign({},i),{decodedToken:o})}};async function AT(e){const t=new CT(e);return await t.checkSession(),t}var ke=(e=>(e.READY="sesamyJsReady",e.AUTHENTICATED="sesamyJsAuthenticated",e.LOGOUT="sesamyJsLogout",e.CLEAR_CACHE="sesamyJsClearCache",e.USER_ATTRIBUTE_CHANGED="sesamyUserAttributeChanged",e.PURCHASE="sesamyJsPurchase",e))(ke||{});const jT="sesamy.com",LT="sesamy.dev",NT="https://sesa.my",ro="sesamyCacheTimestamp";function Fe(e,t){return`https://${e}.${t==="dev"?LT:jT}`}let fe,Ld,Nd=!1;const Ht="sesamyAccessToken",gi="sesamyRefreshToken";async function Ur(){return new Promise((r,n)=>{let a=0;const i=()=>{Nd?r(!0):a>=5e3?n(new Error("Initialization failed: Timeout")):(a+=100,setTimeout(i,100))};i()})}async function xT(e){if(!e)return null;const t=localStorage.getItem(gi);if(!t)throw new Error("No refresh token available");const r=new URLSearchParams;r.set("client_id",e.iss),r.set("refresh_token",t),r.set("grant_type","refresh_token");const n=new URL(e.iss);n.pathname="/oauth/token",n.searchParams.set("user_id",e.sub);try{const a=await fetch(n.href,{body:r.toString(),method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"}});if(!a.ok)throw localStorage.removeItem(gi),new Error("Renew token failed");const i=await a.json();return localStorage.setItem(gi,i.refresh_token),localStorage.setItem(Ht,i.access_token),i.access_token}catch{xd()}}async function Yo(){const e=localStorage.getItem(Ht);if(!e)return null;const t=Ud(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3){const r=await xT(t);if(r)return r;localStorage.removeItem(Ht)}return e}function Au(e){try{const t=new URL(e).hostname,r=t.split(".");return r.length>1?r.slice(-2).join("."):t}catch{return null}}async function UT(e){if(e.enabled===!1)return;Ld=e.organization;const t={domain:Fe("token",e.environment),clientId:e.clientId,useCookiesForTransactions:!0};if(Au(window.location.href)!==Au(Fe("auth",e.environment))&&(t.cacheLocation="localstorage",t.useRefreshTokens=!0),fe=await AT(t),window.location.search.includes("code="))try{await fe.handleRedirectCallback();const r=await fe.getUser();qe(ke.AUTHENTICATED,r);const n=new URL(location.href),a=n.searchParams;a.delete("code"),a.delete("state"),n.search=a.toString(),window.history.replaceState({},document.title,n.toString())}catch(r){console.error(r)}Nd=!0}async function Or(){return await Ur(),await Yo()?!0:fe?fe.isAuthenticated():!1}async function DT(){return await Ur(),await Yo()?{sub:"local",name:"Local User"}:fe?fe.getUser():null}async function Xo(e){if(await Ur(),localStorage.removeItem(Ht),!fe)throw new Error("Auth0 client not initialized");const t=(e==null?void 0:e.authorizationParams)||{};return fe.loginWithRedirect({...e,authorizationParams:{organization:Ld,redirect_uri:window.location.href,...t}})}async function ur(e=!0){await Ur();const t=await Yo();if(t)return t;try{return fe?await fe.getTokenSilently():null}catch(r){if(e)throw r;return null}}async function xd(e={}){if(await Ur(),localStorage.removeItem(Ht),qe(ke.LOGOUT,{}),!!fe)return fe.logout({...e,logoutParams:{returnTo:window.location.href,...e.logoutParams}})}function Ud(e){const t=e.split(".");if(t.length!==3)return null;const n=t[1].replace(/-/g,"+").replace(/_/g,"/"),a=decodeURIComponent(atob(n).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join(""));return JSON.parse(a)}async function Dd(e){const t=Ud(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3)throw new Error("Invalid token");localStorage.setItem(Ht,e),qe(ke.AUTHENTICATED,t)}const MT=(e,t)=>t.skipDedupe||t.method!=="GET",FT=(e,t)=>t.method+"@"+e,BT=e=>e.clone(),ju=({skip:e=MT,key:t=FT,resolver:r=BT}={})=>{const n=new Map;return a=>(i,o)=>{if(e(i,o))return a(i,o);const s=t(i,o);if(!n.has(s))n.set(s,[]);else return new Promise((u,f)=>{n.get(s).push([u,f])});try{return a(i,o).then(u=>(n.get(s).forEach(([f])=>f(r(u))),n.delete(s),u)).catch(u=>{throw n.get(s).forEach(([,f])=>f(u)),n.delete(s),u})}catch(u){return n.delete(s),Promise.reject(u)}}},zT=(e,t)=>e*t,HT=e=>e&&e.ok,Lu=({delayTimer:e=500,delayRamp:t=zT,maxAttempts:r=10,until:n=HT,onRetry:a=null,retryOnNetworkError:i=!1,resolveWithLatestResponse:o=!1,skip:s}={})=>u=>(f,l)=>{let c=0;if(s&&s(f,l))return u(f,l);const d=(h,v)=>Promise.resolve(n(h,v)).then(S=>S?h&&o?h:v?Promise.reject(v):h:(c++,!r||c<=r?new Promise(g=>{const T=t(e,c);setTimeout(()=>{typeof a=="function"?Promise.resolve(a({response:h,error:v,url:f,options:l})).then((I={})=>{var w,p;g(u((w=I&&I.url)!==null&&w!==void 0?w:f,(p=I&&I.options)!==null&&p!==void 0?p:l))}):g(u(f,l))},T)}).then(d).catch(g=>{if(!i)throw g;return d(null,g)}):h&&o?h:Promise.reject(v||new Error("Number of attempts exceeded."))));return u(f,l).then(d).catch(h=>{if(!i)throw h;return d(null,h)})},GT="application/json",Md="Content-Type",Pt=Symbol(),Fd=Symbol();function Nu(e={}){var t;return(t=Object.entries(e).find(([r])=>r.toLowerCase()===Md.toLowerCase()))===null||t===void 0?void 0:t[1]}function xu(e){return/^application\/.*json.*/.test(e)}const ut=function(e,t,r=!1){return Object.entries(t).reduce((n,[a,i])=>{const o=e[a];return Array.isArray(o)&&Array.isArray(i)?n[a]=r?[...o,...i]:i:typeof o=="object"&&typeof i=="object"?n[a]=ut(o,i,r):n[a]=i,n},{...e})},Gt={options:{},errorType:"text",polyfills:{},polyfill(e,t=!0,r=!1,...n){const a=this.polyfills[e]||(typeof self<"u"?self[e]:null)||(typeof global<"u"?global[e]:null);if(t&&!a)throw new Error(e+" is not defined");return r&&a?new a(...n):a}};function KT(e,t=!1){Gt.options=t?e:ut(Gt.options,e)}function WT(e,t=!1){Gt.polyfills=t?e:ut(Gt.polyfills,e)}function VT(e){Gt.errorType=e}const ZT=e=>t=>e.reduceRight((r,n)=>n(r),t)||t;class Bd extends Error{}const JT=e=>{const t=Object.create(null);e=e._addons.reduce((w,p)=>p.beforeRequest&&p.beforeRequest(w,e._options,t)||w,e);const{_url:r,_options:n,_config:a,_catchers:i,_resolvers:o,_middlewares:s,_addons:u}=e,f=new Map(i),l=ut(a.options,n);let c=r;const d=ZT(s)((w,p)=>(c=w,a.polyfill("fetch")(w,p)))(r,l),h=new Error,v=d.catch(w=>{throw{[Pt]:w}}).then(w=>{var p;if(!w.ok){const $=new Bd;if($.cause=h,$.stack=$.stack+`
|
|
5
|
-
CAUSE: `+h.stack,$.response=w,$.status=w.status,$.url=c,w.type==="opaque")throw $;const O=a.errorType==="json"||((p=w.headers.get("Content-Type"))===null||p===void 0?void 0:p.split(";")[0])==="application/json";return(a.errorType?O?w.text():w[a.errorType]():Promise.resolve(w.body)).then(k=>{throw $.message=typeof k=="string"?k:w.statusText,k&&(O&&typeof k=="string"?($.text=k,$.json=JSON.parse(k)):$[a.errorType]=k),$})}return w}),S=w=>w.catch(p=>{const $=Object.prototype.hasOwnProperty.call(p,Pt),O=$?p[Pt]:p,_=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||$&&f.has(Pt)&&f.get(Pt);if(_)return _(O,e);const k=f.get(Fd);if(k)return k(O,e);throw O}),g=w=>p=>S(w?v.then($=>$&&$[w]()).then($=>p?p($):$):v.then($=>p?p($):$)),T={_wretchReq:e,_fetchReq:d,_sharedState:t,res:g(null),json:g("json"),blob:g("blob"),formData:g("formData"),arrayBuffer:g("arrayBuffer"),text:g("text"),error(w,p){return f.set(w,p),this},badRequest(w){return this.error(400,w)},unauthorized(w){return this.error(401,w)},forbidden(w){return this.error(403,w)},notFound(w){return this.error(404,w)},timeout(w){return this.error(408,w)},internalError(w){return this.error(500,w)},fetchError(w){return this.error(Pt,w)}},I=u.reduce((w,p)=>({...w,...typeof p.resolver=="function"?p.resolver(w):p.resolver}),T);return o.reduce((w,p)=>p(w,e),I)},YT={_url:"",_options:{},_config:Gt,_catchers:new Map,_resolvers:[],_deferred:[],_middlewares:[],_addons:[],addon(e){return{...this,_addons:[...this._addons,e],...e.wretch}},errorType(e){return{...this,_config:{...this._config,errorType:e}}},polyfills(e,t=!1){return{...this,_config:{...this._config,polyfills:t?e:ut(this._config.polyfills,e)}}},url(e,t=!1){if(t)return{...this,_url:e};const r=this._url.split("?");return{...this,_url:r.length>1?r[0]+e+"?"+r[1]:this._url+e}},options(e,t=!1){return{...this,_options:t?e:ut(this._options,e)}},headers(e){const t=e?Array.isArray(e)?Object.fromEntries(e):"entries"in e?Object.fromEntries(e.entries()):e:{};return{...this,_options:ut(this._options,{headers:t})}},accept(e){return this.headers({Accept:e})},content(e){return this.headers({[Md]:e})},auth(e){return this.headers({Authorization:e})},catcher(e,t){const r=new Map(this._catchers);return r.set(e,t),{...this,_catchers:r}},catcherFallback(e){return this.catcher(Fd,e)},resolve(e,t=!1){return{...this,_resolvers:t?[e]:[...this._resolvers,e]}},defer(e,t=!1){return{...this,_deferred:t?[e]:[...this._deferred,e]}},middlewares(e,t=!1){return{...this,_middlewares:t?e:[...this._middlewares,...e]}},fetch(e=this._options.method,t="",r=null){let n=this.url(t).options({method:e});const a=Nu(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||xu(a));return n=r?o?n.json(r,a):n.body(r):n,JT(n._deferred.reduce((s,u)=>u(s,s._url,s._options),n))},get(e=""){return this.fetch("GET",e)},delete(e=""){return this.fetch("DELETE",e)},put(e,t=""){return this.fetch("PUT",t,e)},post(e,t=""){return this.fetch("POST",t,e)},patch(e,t=""){return this.fetch("PATCH",t,e)},head(e=""){return this.fetch("HEAD",e)},opts(e=""){return this.fetch("OPTIONS",e)},body(e){return{...this,_options:{...this._options,body:e}}},json(e,t){const r=Nu(this._options.headers);return this.content(t||xu(r)&&r||GT).body(JSON.stringify(e))}};function ze(e="",t={}){return{...YT,_url:e,_options:t}}ze.default=ze;ze.options=KT;ze.errorType=VT;ze.polyfills=WT;ze.WretchError=Bd;function Te(){sessionStorage.removeItem(ro),qe(ke.CLEAR_CACHE,{})}function Uu(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function XT(e){let t;try{t=new URL(e)}catch{return!1}return t.protocol==="http:"||t.protocol==="https:"}function qT(e,t){if(XT(e))return{itemSrc:e};const[r,n,a]=e.split(":");return{sku:`${r}:${n}`,purchaseOption:t||a}}function QT(e,t){const r=new URL(`${Fe("checkout3",e.environment)}`);if(r.searchParams.set("vendorId",e.clientId),t.language&&r.searchParams.set("lang",t.language),t.sku)r.searchParams.set("sku",t.sku),t.purchaseOptionId&&r.searchParams.set("poId",t.purchaseOptionId);else if(t.itemSrc){const{sku:o,purchaseOption:s,itemSrc:u}=qT(t.itemSrc,t.purchaseOptionId);u&&r.searchParams.set("itemSrc",u),o&&r.searchParams.set("sku",o),s&&r.searchParams.set("poId",s)}t.email&&r.searchParams.set("email",t.email),t.business&&r.searchParams.set("business","true"),t.currency&&r.searchParams.set("currency",t.currency),t.price&&r.searchParams.set("price",t.price.toString()),t.discountCode&&r.searchParams.set("discountCode",t.discountCode),t.attributionItemSrc&&r.searchParams.set("attributionItemSrc",t.attributionItemSrc),t.attributionPublisherContentId&&r.searchParams.set("attributionPublisherContentId",t.attributionPublisherContentId),t.utmSource&&r.searchParams.set("utmSource",t.utmSource),t.utmMedium&&r.searchParams.set("utmMedium",t.utmMedium),t.utmCampaign&&r.searchParams.set("utmCampaign",t.utmCampaign),t.utmTerm&&r.searchParams.set("utmTerm",t.utmTerm),t.utmContent&&r.searchParams.set("utmContent",t.utmContent);const n=["_ga","_gid","_fbp","_fbc"];document.cookie.split(";").map(o=>{const[s,u]=o.trim().split("=");return{key:s,value:u}}).filter(o=>n.some(s=>s===o.key)).forEach(o=>{r.searchParams.append(o.key,o.value)});const i=new URL(t.redirectUrl||window.location.href);return i.searchParams.set("force-refetch-entitlements","true"),t.itemSrc&&i.searchParams.set("sesamy-purchase",t.itemSrc),r.searchParams.set("redirectUrl",i.toString()),t.paymemtMethodsFilter&&r.searchParams.set("paymentMethodsFilter",t.paymemtMethodsFilter.flatMap(({provider:o,methods:s})=>s?s.map(u=>`${o}|${u}`):o).join(",")),r}const zd="sesamySignedURLs";function qo(){const e=sessionStorage.getItem(zd);return e?JSON.parse(e):[]}function eP(e){const t=qo();t.push(e),sessionStorage.setItem(zd,JSON.stringify(t))}function tP(e){const t=Fe("api2",e.environment),r=y=>async(P,j)=>{let V=sessionStorage.getItem(ro);V||(V=Date.now().toString(),sessionStorage.setItem(ro,V));const oe={...j,headers:{...j.headers,"Cache-Timestamp":V}};return y(P,oe)},n=(y=!0)=>P=>async(j,V)=>{let oe=null;if(oe=await ur(y),!oe){if(y)throw new Error("No access token available");return P(j,V)}const Qe={...V,headers:{...V.headers,...oe?{Authorization:`Bearer ${oe}`}:{}}};return P(j,Qe)},a=y=>(P,j)=>{if(j.headers.Authorization)return y(P,j);const V=localStorage.getItem("__anon_id"),oe=btoa(`${V}:`),Qe={...j,headers:{...j.headers,Authorization:`Basic ${oe}`}};return y(P,Qe)},i=ze(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),ju(),Lu({delayTimer:1e3,delayRamp:(y,P)=>y*P,maxAttempts:3,until:y=>!!(y&&(y.ok||y.status>=400&&y.status<500)),retryOnNetworkError:!1})]),o=ze(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,ju(),Lu({delayTimer:1e3,delayRamp:(y,P)=>y*P,maxAttempts:3,until:y=>!!(y&&(y.ok||y.status>=400&&y.status<500)),retryOnNetworkError:!1})]);async function s(y={}){const{waitForEntitlementAfter:P,includeSignedLinks:j=!0}=y,V=P?`?wait-for-entitlement-after=${P.toISOString()}`:"",oe=await Or()?await i.get(`/entitlements${V}`).json():[];return j&&oe.push(...qo()),oe}async function u(y){const P=await i.get("/entitlements").json();return P==null?void 0:P.find(j=>j.id===y)}async function f(y){return i.get(`/entitlements/${y}/access`).json()}async function l(){return await Or()?await i.get("/fullfilments").json():[]}async function c(){return i.get("/contracts").json()}async function d(y){const P=await i.get("/contracts").json();return P==null?void 0:P.find(j=>j.id===y)}async function h(y){return(await i.post({},`/contracts/${y}/cancel`).res()).ok}async function v(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function S(){return i.get("/bills").json()}async function g(y){const P=await i.get("/bills").json();return P==null?void 0:P.find(j=>j.id===y)}async function T(){return i.get("/transactions").json()}async function I(y){const P=await i.get("/transactions").json();return P==null?void 0:P.find(j=>j.id===y)}async function w(y,P){const j=await i.url(`/user-metadata/${y}`).put(P).json();return qe(ke.USER_ATTRIBUTE_CHANGED,{}),Te(),j}async function p(y){const P=await i.url(`/user-metadata/${y}`).delete().res();return Te(),P.ok}async function $(y){return(await i.url(`/user-metadata/${y}`).get().json())[y]}async function O(){return await i.url("/user-metadata").get().json()}async function _(){return await i.url("/tags").get().json()}async function k(y){const P=await i.url(`/tags/${y}`).delete().res();return Te(),P.ok}async function M(y){const P=await i.url("/tags").post(y).res();return qe(ke.USER_ATTRIBUTE_CHANGED,{}),Te(),P.ok}async function F(y){return(await o.url("/tallies").get().json())[y]}async function J(){return await o.url("/tallies").get().json()}async function L(y){const P=await o.url(`/tallies/${y}`).delete().res();return Te(),P.ok}async function U(y,P){return await o.url(`/tallies/${y}/push`).post(P).json()}async function z(y){return await i.url(`/products/${y}`).get().json()}async function R(){return await ur(!1)?await i.url("/profile").get().json():null}async function K(y){const P=await i.url("/profile").patch(y).res();return Te(),P.ok}async function q(){return await i.url("/payment-issues").get().json()}async function xe(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function m(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function b(y){const P=await ur(!1);if(!P)throw new Error("No access token available");const j=new URL(`${Fe("spotify-oas",e.environment)}/sesamy-callback`);j.searchParams.set("access_token",P),j.searchParams.set("state",y),window.location.href=j.toString()}async function E(y){const P=await i.url(`/products/${y}/auto-onboard`).post().json();return P.length&&Te(),P}async function N(y,P=3600){const{shortlink:j}=await ze(NT).post({url:y,ttl:P}).json();return j}async function x(y){const P=await ur(!1);let j;const V=y.language||Uu();switch(y.target){case"account":j=new URL(`${Fe("account",e.environment)}/${y.language||V}/subscriptions/${e.clientId}`),j.searchParams.set("sesamy-redirect-url",y.redirectUrl||window.location.href);break;case"consume":j=new URL(`${Fe("consume",e.environment)}/${y.language||V}/@${e.clientId}/${y.sku}`),y.episodeId?j.href+=`/${y.episodeId}`:j.href+="/listen",j.searchParams.set("sesamy-redirect-url",y.redirectUrl||window.location.href);break;case"checkout":j=QT(e,{language:V,...y});break;default:throw new Error("Invalid target")}return P&&(j.hash=`#access_token=${P}`),y.shorten?N(j.href,y.ttl):j.href}async function D(y){return(await o.url("/checkouts").post({language:Uu(),...y,vendorId:e.clientId})).json()}async function Y(y,P){return(await o.url(`/checkouts/${y}`).patch(P)).json()}async function B(y){return(await o.url(`/checkouts/${y}`).get()).json()}async function W(){const y=await ur(!1),P=new URL(`${Fe("account",e.environment)}/subscriptions/${e.clientId}`);y&&(P.hash=`#access_token=${y}`),window.location.href=P.toString()}return{createCheckout:D,updateCheckout:Y,getCheckout:B,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getFulfillments:l,getContracts:c,getContract:d,cancelContract:h,getProfile:R,updateProfile:K,getSubscriptions:v,getBills:S,getBill:g,setUserMetadata:w,deleteUserMetadata:p,getUserMetadata:$,listUserMetadata:O,getTags:_,deleteTag:k,setTag:M,getTally:F,getTallies:J,deleteTally:L,pushTally:U,getTransactions:T,getTransaction:I,getProduct:z,getPaymentIssues:q,autoOnboardProduct:E,isSpotifyLinked:xe,unlinkSpotify:m,linkSpotify:b,generateLink:x,openHostedAccountPage:W}}const Hd="@sesamy/sesamy-js",Qo="1.19.1";function Du(e,t,r,n,a){for(t=t.split?t.split("."):t,n=0;n<t.length;n++)e=e?e[t[n]]:a;return e===a?r:e}var sn="undefined",Mu="object",no=function(){},Gd="any",Kd="*",dt="__",xn=typeof process<"u"?process:{};xn.env&&xn.env.NODE_ENV;var Q=typeof document<"u";xn.versions!=null&&xn.versions.node!=null;typeof Deno<"u"&&Deno.core;Q&&window.name==="nodejs"||typeof navigator<"u"&&navigator.userAgent!==void 0&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));function Wd(e,t){return t.charAt(0)[e]()+t.slice(1)}var rP=Wd.bind(null,"toUpperCase"),nP=Wd.bind(null,"toLowerCase");function aP(e){return Vd(e)?rP("null"):typeof e=="object"?cP(e):Object.prototype.toString.call(e).slice(8,-1)}function Un(e,t){t===void 0&&(t=!0);var r=aP(e);return t?nP(r):r}function Dr(e,t){return typeof t===e}var ce=Dr.bind(null,"function"),Je=Dr.bind(null,"string"),At=Dr.bind(null,"undefined"),iP=Dr.bind(null,"boolean");Dr.bind(null,"symbol");function Vd(e){return e===null}function oP(e){return Un(e)==="number"&&!isNaN(e)}function Zd(e){return Un(e)==="array"}function se(e){if(!sP(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function sP(e){return e&&(typeof e=="object"||e!==null)}function cP(e){return ce(e.constructor)?e.constructor.name:null}function uP(e){return e instanceof Error||Je(e.message)&&e.constructor&&oP(e.constructor.stackTraceLimit)}function Jd(e,t){if(typeof t!="object"||Vd(t))return!1;if(t instanceof e)return!0;var r=Un(new e(""));if(uP(t))for(;t;){if(Un(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}Jd.bind(null,TypeError);Jd.bind(null,SyntaxError);function aa(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?lP(e,t):r}function lP(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function ia(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}ia(aa,"form");ia(aa,"button");ia(aa,"input");ia(aa,"select");function fP(e){return e?Zd(e)?e:[e]:[]}function Fu(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function dP(){if(Q){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function hP(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function vP(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=Fu(r[1]),o=Fu(r[2]);i.substring(i.length-2)==="[]"?(n[i=i.substring(0,i.length-2)]||(n[i]=[])).push(o):n[i]=o===""||o}for(var s in n){var u=s.split("[");u.length>1&&(pP(n,u.map(function(f){return f.replace(/[?[\]\\ ]/g,"")}),n[s]),delete n[s])}return n}(function(t){return Q&&window.location.search.substring(1)}())}function pP(e,t,r){for(var n=t.length-1,a=0;a<n;++a){var i=t[a];if(i==="__proto__"||i==="constructor")break;i in e||(e[i]={}),e=e[i]}e[t[n]]=r}function oa(){for(var e="",t=0,r=4294967295*Math.random()|0;t++<36;){var n="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[t-1],a=15&r;e+=n=="-"||n=="4"?n:(n=="x"?a:3&a|8).toString(16),r=t%8==0?4294967295*Math.random()|0:r>>4}return e}function mP(e,t){var r,n,a,i=null,o=0,s=function(){o=new Date,i=null,a=e.apply(r,n)};return function(){var u=new Date;o||(o=u);var f=t-(u-o);return r=this,n=arguments,f<=0?(clearTimeout(i),i=null,o=u,a=e.apply(r,n)):i||(i=setTimeout(s,f)),a}}var Sr="global",Kt=dt+"global"+dt,Wt=typeof self===Mu&&self.self===self&&self||typeof global===Mu&&global.global===global&&global||void 0;function ht(e){return Wt[Kt][e]}function vt(e,t){return Wt[Kt][e]=t}function Qt(e){delete Wt[Kt][e]}function er(e,t,r){var n;try{if(es(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Wt[Kt]||(Wt[Kt]={});var cn={};function es(e){if(typeof cn[e]!==sn)return cn[e];try{var t=window[e];t.setItem(sn,sn),t.removeItem(sn)}catch{return cn[e]=!1}return cn[e]=!0}function A(){return A=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},A.apply(this,arguments)}var We="function",Be="undefined",gP="@@redux/"+Math.random().toString(36),Bu=function(){return typeof Symbol===We&&Symbol.observable||"@@observable"}(),un=" != "+We;function Yd(e,t,r){var n;if(typeof t===We&&typeof r===Be&&(r=t,t=void 0),typeof r!==Be){if(typeof r!==We)throw new Error("enhancer"+un);return r(Yd)(e,t)}if(typeof e!==We)throw new Error("reducer"+un);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(h){if(typeof h!==We)throw new Error("Listener"+un);var v=!0;return f(),s.push(h),function(){if(v){v=!1,f();var S=s.indexOf(h);s.splice(S,1)}}}function d(h){if(!se(h))throw new Error("Act != obj");if(typeof h.type===Be)throw new Error("ActType "+Be);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,h)}finally{u=!1}for(var v=o=s,S=0;S<v.length;S++)(0,v[S])();return h}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(h){if(typeof h!==We)throw new Error("next reducer"+un);a=h,d({type:"@@redux/INIT"})}})[Bu]=function(){var h,v=c;return(h={subscribe:function(S){if(typeof S!="object")throw new TypeError("Observer != obj");function g(){S.next&&S.next(l())}return g(),{unsubscribe:v(g)}}})[Bu]=function(){return this},h},n}function yP(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+Be}function Vt(){var e=[].slice.call(arguments);return e.length===0?function(t){return t}:e.length===1?e[0]:e.reduce(function(t,r){return function(){return t(r.apply(void 0,[].slice.call(arguments)))}})}function wP(){var e=arguments;return function(t){return function(r,n,a){var i,o=t(r,n,a),s=o.dispatch,u={getState:o.getState,dispatch:function(f){return s(f)}};return i=[].slice.call(e).map(function(f){return f(u)}),A({},o,{dispatch:s=Vt.apply(void 0,i)(o.dispatch)})}}}var Ye=dt+"anon_id",lt=dt+"user_id",Nt=dt+"user_traits",Ke="userId",jt="anonymousId",$n=["bootstrap","params","campaign","initializeStart","initialize","initializeEnd","ready","resetStart","reset","resetEnd","pageStart","page","pageEnd","pageAborted","trackStart","track","trackEnd","trackAborted","identifyStart","identify","identifyEnd","identifyAborted","userIdChanged","registerPlugins","enablePlugin","disablePlugin","online","offline","setItemStart","setItem","setItemEnd","setItemAborted","removeItemStart","removeItem","removeItemEnd","removeItemAborted"],ao=["name","EVENTS","config","loaded"],C=$n.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),zu=/^utm_/,Hu=/^an_prop_/,Gu=/^an_trait_/;function bP(e){var t=e.storage.setItem;return function(r){return function(n){return function(a){if(a.type===C.bootstrap){var i=a.params,o=a.user,s=a.persistedUser,u=a.initialUser,f=s.userId===o.userId;s.anonymousId!==o.anonymousId&&t(Ye,o.anonymousId),f||t(lt,o.userId),u.traits&&t(Nt,A({},f&&s.traits?s.traits:{},u.traits));var l=Object.keys(a.params);if(l.length){var c=i.an_uid,d=i.an_event,h=l.reduce(function(v,S){if(S.match(zu)||S.match(/^(d|g)clid/)){var g=S.replace(zu,"");v.campaign[g==="campaign"?"name":g]=i[S]}return S.match(Hu)&&(v.props[S.replace(Hu,"")]=i[S]),S.match(Gu)&&(v.traits[S.replace(Gu,"")]=i[S]),v},{campaign:{},props:{},traits:{}});r.dispatch(A({type:C.params,raw:i},h,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,h.traits)},0),d&&setTimeout(function(){return e.track(d,h.props)},0),Object.keys(h.campaign).length&&r.dispatch({type:C.campaign,campaign:h.campaign})}}return n(a)}}}}function SP(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===C.setItemEnd){if(r.key===Ye)return A({},t,{anonymousId:r.value});if(r.key===lt)return A({},t,{userId:r.value})}switch(r.type){case C.identify:return Object.assign({},t,{userId:r.userId,traits:A({},t.traits,r.traits)});case C.reset:return[lt,Ye,Nt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Ku(e){return{userId:e.getItem(lt),anonymousId:e.getItem(Ye),traits:e.getItem(Nt)}}var io=function(e){return dt+"TEMP"+dt+e};function $P(e){var t=e.storage,r=t.setItem,n=t.removeItem,a=t.getItem;return function(i){return function(o){return function(s){var u=s.userId,f=s.traits,l=s.options;if(s.type===C.reset&&([lt,Nt,Ye].forEach(function(h){n(h)}),[Ke,jt,"traits"].forEach(function(h){Qt(io(h))})),s.type===C.identify){a(Ye)||r(Ye,oa());var c=a(lt),d=a(Nt)||{};c&&c!==u&&i.dispatch({type:C.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(lt,u),f&&r(Nt,A({},d,f))}return o(s)}}}}var vr={};function Wu(e,t){vr[e]&&ce(vr[e])&&(vr[e](t),delete vr[e])}function Xd(e,t,r){return new Promise(function(n,a){return t()?n(e):r<1?a(A({},e,{queue:!0})):new Promise(function(i){return setTimeout(i,10)}).then(function(i){return Xd(e,t,r-10).then(n,a)})})}function IP(e){return{abort:e}}function qd(e,t,r){var n={},a=t(),i=e.getState(),o=i.plugins,s=i.queue,u=i.user;if(!i.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(c,d,h){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(h)):(c.requeue.push(d),c.requeueIndex.push(h)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],h=d.plugin,v=d.payload.type,S=a[h][v];if(S&&ce(S)){var g,T=function(p,$){return p===void 0&&(p={}),$===void 0&&($={}),[Ke,jt].reduce(function(O,_){return p.hasOwnProperty(_)&&$[_]&&$[_]!==p[_]&&(O[_]=$[_]),O},p)}(d.payload,u),I=n[T.meta.rid];if(!I&&(g=S({payload:T,config:o[h].config,instance:r,abort:IP}))&&se(g)&&g.abort)return void(n[T.meta.rid]=!0);if(!I){var w=v+":"+h;e.dispatch(A({},T,{type:w,_:{called:w,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var yi=function(e){var t=e.data,r=e.action,n=e.instance,a=e.state,i=e.allPlugins,o=e.allMatches,s=e.store,u=e.EVENTS;try{var f=a.plugins,l=a.context,c=r.type,d=c.match(xt),h=t.exact.map(function(g){return g.pluginName});d&&(h=o.during.map(function(g){return g.pluginName}));var v=function(g,T){return function(I,w,p){var $=w.config,O=w.name,_=O+"."+I.type;p&&(_=p.event);var k=I.type.match(xt)?function(M,F,J,L,U){return function(z,R){var K=L?L.name:M,q=R&&kr(R)?R:J;if(L&&(!(q=R&&kr(R)?R:[M]).includes(M)||q.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(q)+" input valid");return A({},U,{abort:{reason:z,plugins:q,caller:F,_:K}})}}(O,_,T,p,I):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(I,_);return{payload:TP(I),instance:g,config:$||{},abort:k}}}(n,h),S=t.exact.reduce(function(g,T){var I=T.pluginName,w=T.methodName,p=!1;return w.match(/^initialize/)||w.match(/^reset/)||(p=!f[I].loaded),l.offline&&w.match(/^(page|track|identify)/)&&(p=!0),g[""+I]=p,g},{});return Promise.resolve(t.exact.reduce(function(g,T,I){try{var w=T.pluginName;return Promise.resolve(g).then(function(p){function $(){return Promise.resolve(p)}var O=function(){if(t.namespaced&&t.namespaced[w])return Promise.resolve(t.namespaced[w].reduce(function(_,k,M){try{return Promise.resolve(_).then(function(F){return k.method&&ce(k.method)?(function(z,R){var K=Qu(z);if(K&&K.name===R){var q=Qu(K.method);throw new Error([R+" plugin is calling method "+z,"Plugins cant call self","Use "+K.method+" "+(q?"or "+q.method:"")+" in "+R+" plugin insteadof "+z].join(`
|
|
5
|
+
CAUSE: `+h.stack,$.response=w,$.status=w.status,$.url=c,w.type==="opaque")throw $;const O=a.errorType==="json"||((p=w.headers.get("Content-Type"))===null||p===void 0?void 0:p.split(";")[0])==="application/json";return(a.errorType?O?w.text():w[a.errorType]():Promise.resolve(w.body)).then(k=>{throw $.message=typeof k=="string"?k:w.statusText,k&&(O&&typeof k=="string"?($.text=k,$.json=JSON.parse(k)):$[a.errorType]=k),$})}return w}),S=w=>w.catch(p=>{const $=Object.prototype.hasOwnProperty.call(p,Pt),O=$?p[Pt]:p,_=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||$&&f.has(Pt)&&f.get(Pt);if(_)return _(O,e);const k=f.get(Fd);if(k)return k(O,e);throw O}),g=w=>p=>S(w?v.then($=>$&&$[w]()).then($=>p?p($):$):v.then($=>p?p($):$)),T={_wretchReq:e,_fetchReq:d,_sharedState:t,res:g(null),json:g("json"),blob:g("blob"),formData:g("formData"),arrayBuffer:g("arrayBuffer"),text:g("text"),error(w,p){return f.set(w,p),this},badRequest(w){return this.error(400,w)},unauthorized(w){return this.error(401,w)},forbidden(w){return this.error(403,w)},notFound(w){return this.error(404,w)},timeout(w){return this.error(408,w)},internalError(w){return this.error(500,w)},fetchError(w){return this.error(Pt,w)}},I=u.reduce((w,p)=>({...w,...typeof p.resolver=="function"?p.resolver(w):p.resolver}),T);return o.reduce((w,p)=>p(w,e),I)},YT={_url:"",_options:{},_config:Gt,_catchers:new Map,_resolvers:[],_deferred:[],_middlewares:[],_addons:[],addon(e){return{...this,_addons:[...this._addons,e],...e.wretch}},errorType(e){return{...this,_config:{...this._config,errorType:e}}},polyfills(e,t=!1){return{...this,_config:{...this._config,polyfills:t?e:ut(this._config.polyfills,e)}}},url(e,t=!1){if(t)return{...this,_url:e};const r=this._url.split("?");return{...this,_url:r.length>1?r[0]+e+"?"+r[1]:this._url+e}},options(e,t=!1){return{...this,_options:t?e:ut(this._options,e)}},headers(e){const t=e?Array.isArray(e)?Object.fromEntries(e):"entries"in e?Object.fromEntries(e.entries()):e:{};return{...this,_options:ut(this._options,{headers:t})}},accept(e){return this.headers({Accept:e})},content(e){return this.headers({[Md]:e})},auth(e){return this.headers({Authorization:e})},catcher(e,t){const r=new Map(this._catchers);return r.set(e,t),{...this,_catchers:r}},catcherFallback(e){return this.catcher(Fd,e)},resolve(e,t=!1){return{...this,_resolvers:t?[e]:[...this._resolvers,e]}},defer(e,t=!1){return{...this,_deferred:t?[e]:[...this._deferred,e]}},middlewares(e,t=!1){return{...this,_middlewares:t?e:[...this._middlewares,...e]}},fetch(e=this._options.method,t="",r=null){let n=this.url(t).options({method:e});const a=Nu(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||xu(a));return n=r?o?n.json(r,a):n.body(r):n,JT(n._deferred.reduce((s,u)=>u(s,s._url,s._options),n))},get(e=""){return this.fetch("GET",e)},delete(e=""){return this.fetch("DELETE",e)},put(e,t=""){return this.fetch("PUT",t,e)},post(e,t=""){return this.fetch("POST",t,e)},patch(e,t=""){return this.fetch("PATCH",t,e)},head(e=""){return this.fetch("HEAD",e)},opts(e=""){return this.fetch("OPTIONS",e)},body(e){return{...this,_options:{...this._options,body:e}}},json(e,t){const r=Nu(this._options.headers);return this.content(t||xu(r)&&r||GT).body(JSON.stringify(e))}};function ze(e="",t={}){return{...YT,_url:e,_options:t}}ze.default=ze;ze.options=KT;ze.errorType=VT;ze.polyfills=WT;ze.WretchError=Bd;function Te(){sessionStorage.removeItem(ro),qe(ke.CLEAR_CACHE,{})}function Uu(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function XT(e){let t;try{t=new URL(e)}catch{return!1}return t.protocol==="http:"||t.protocol==="https:"}function qT(e,t){if(XT(e))return{itemSrc:e};const[r,n,a]=e.split(":");return{sku:`${r}:${n}`,purchaseOption:t||a}}function QT(e,t){const r=new URL(`${Fe("checkout3",e.environment)}`);if(r.searchParams.set("vendorId",e.clientId),t.language&&r.searchParams.set("lang",t.language),t.sku)r.searchParams.set("sku",t.sku),t.purchaseOptionId&&r.searchParams.set("poId",t.purchaseOptionId);else if(t.itemSrc){const{sku:o,purchaseOption:s,itemSrc:u}=qT(t.itemSrc,t.purchaseOptionId);u&&r.searchParams.set("itemSrc",u),o&&r.searchParams.set("sku",o),s&&r.searchParams.set("poId",s)}t.email&&r.searchParams.set("email",t.email),t.business&&r.searchParams.set("business","true"),t.currency&&r.searchParams.set("currency",t.currency),t.price&&r.searchParams.set("price",t.price.toString()),t.discountCode&&r.searchParams.set("discountCode",t.discountCode),t.attributionItemSrc&&r.searchParams.set("attributionItemSrc",t.attributionItemSrc),t.attributionPublisherContentId&&r.searchParams.set("attributionPublisherContentId",t.attributionPublisherContentId),t.utmSource&&r.searchParams.set("utmSource",t.utmSource),t.utmMedium&&r.searchParams.set("utmMedium",t.utmMedium),t.utmCampaign&&r.searchParams.set("utmCampaign",t.utmCampaign),t.utmTerm&&r.searchParams.set("utmTerm",t.utmTerm),t.utmContent&&r.searchParams.set("utmContent",t.utmContent);const n=["_ga","_gid","_fbp","_fbc"];document.cookie.split(";").map(o=>{const[s,u]=o.trim().split("=");return{key:s,value:u}}).filter(o=>n.some(s=>s===o.key)).forEach(o=>{r.searchParams.append(o.key,o.value)});const i=new URL(t.redirectUrl||window.location.href);return i.searchParams.set("force-refetch-entitlements","true"),t.itemSrc&&i.searchParams.set("sesamy-purchase",t.itemSrc),r.searchParams.set("redirectUrl",i.toString()),t.paymemtMethodsFilter&&r.searchParams.set("paymentMethodsFilter",t.paymemtMethodsFilter.flatMap(({provider:o,methods:s})=>s?s.map(u=>`${o}|${u}`):o).join(",")),r}const zd="sesamySignedURLs";function qo(){const e=sessionStorage.getItem(zd);return e?JSON.parse(e):[]}function eP(e){const t=qo();t.push(e),sessionStorage.setItem(zd,JSON.stringify(t))}function tP(e){const t=Fe("api2",e.environment),r=y=>async(P,j)=>{let V=sessionStorage.getItem(ro);V||(V=Date.now().toString(),sessionStorage.setItem(ro,V));const oe={...j,headers:{...j.headers,"Cache-Timestamp":V}};return y(P,oe)},n=(y=!0)=>P=>async(j,V)=>{let oe=null;if(oe=await ur(y),!oe){if(y)throw new Error("No access token available");return P(j,V)}const Qe={...V,headers:{...V.headers,...oe?{Authorization:`Bearer ${oe}`}:{}}};return P(j,Qe)},a=y=>(P,j)=>{if(j.headers.Authorization)return y(P,j);const V=localStorage.getItem("__anon_id"),oe=btoa(`${V}:`),Qe={...j,headers:{...j.headers,Authorization:`Basic ${oe}`}};return y(P,Qe)},i=ze(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),ju(),Lu({delayTimer:1e3,delayRamp:(y,P)=>y*P,maxAttempts:3,until:y=>!!(y&&(y.ok||y.status>=400&&y.status<500)),retryOnNetworkError:!1})]),o=ze(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,ju(),Lu({delayTimer:1e3,delayRamp:(y,P)=>y*P,maxAttempts:3,until:y=>!!(y&&(y.ok||y.status>=400&&y.status<500)),retryOnNetworkError:!1})]);async function s(y={}){const{waitForEntitlementAfter:P,includeSignedLinks:j=!0}=y,V=P?`?wait-for-entitlement-after=${P.toISOString()}`:"",oe=await Or()?await i.get(`/entitlements${V}`).json():[];return j&&oe.push(...qo()),oe}async function u(y){const P=await i.get("/entitlements").json();return P==null?void 0:P.find(j=>j.id===y)}async function f(y){return i.get(`/entitlements/${y}/access`).json()}async function l(){return await Or()?await i.get("/fulfillments").json():[]}async function c(){return i.get("/contracts").json()}async function d(y){const P=await i.get("/contracts").json();return P==null?void 0:P.find(j=>j.id===y)}async function h(y){return(await i.post({},`/contracts/${y}/cancel`).res()).ok}async function v(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function S(){return i.get("/bills").json()}async function g(y){const P=await i.get("/bills").json();return P==null?void 0:P.find(j=>j.id===y)}async function T(){return i.get("/transactions").json()}async function I(y){const P=await i.get("/transactions").json();return P==null?void 0:P.find(j=>j.id===y)}async function w(y,P){const j=await i.url(`/user-metadata/${y}`).put(P).json();return qe(ke.USER_ATTRIBUTE_CHANGED,{}),Te(),j}async function p(y){const P=await i.url(`/user-metadata/${y}`).delete().res();return Te(),P.ok}async function $(y){return(await i.url(`/user-metadata/${y}`).get().json())[y]}async function O(){return await i.url("/user-metadata").get().json()}async function _(){return await i.url("/tags").get().json()}async function k(y){const P=await i.url(`/tags/${y}`).delete().res();return Te(),P.ok}async function M(y){const P=await i.url("/tags").post(y).res();return qe(ke.USER_ATTRIBUTE_CHANGED,{}),Te(),P.ok}async function F(y){return(await o.url("/tallies").get().json())[y]}async function J(){return await o.url("/tallies").get().json()}async function L(y){const P=await o.url(`/tallies/${y}`).delete().res();return Te(),P.ok}async function U(y,P){return await o.url(`/tallies/${y}/push`).post(P).json()}async function z(y){return await i.url(`/products/${y}`).get().json()}async function R(){return await ur(!1)?await i.url("/profile").get().json():null}async function K(y){const P=await i.url("/profile").patch(y).res();return Te(),P.ok}async function q(){return await i.url("/payment-issues").get().json()}async function xe(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function m(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function b(y){const P=await ur(!1);if(!P)throw new Error("No access token available");const j=new URL(`${Fe("spotify-oas",e.environment)}/sesamy-callback`);j.searchParams.set("access_token",P),j.searchParams.set("state",y),window.location.href=j.toString()}async function E(y){const P=await i.url(`/products/${y}/auto-onboard`).post().json();return P.length&&Te(),P}async function N(y,P=3600){const{shortlink:j}=await ze(NT).post({url:y,ttl:P}).json();return j}async function x(y){const P=await ur(!1);let j;const V=y.language||Uu();switch(y.target){case"account":j=new URL(`${Fe("account",e.environment)}/${y.language||V}/subscriptions/${e.clientId}`),j.searchParams.set("sesamy-redirect-url",y.redirectUrl||window.location.href);break;case"consume":j=new URL(`${Fe("consume",e.environment)}/${y.language||V}/@${e.clientId}/${y.sku}`),y.episodeId?j.href+=`/${y.episodeId}`:j.href+="/listen",j.searchParams.set("sesamy-redirect-url",y.redirectUrl||window.location.href);break;case"checkout":j=QT(e,{language:V,...y});break;default:throw new Error("Invalid target")}return P&&(j.hash=`#access_token=${P}`),y.shorten?N(j.href,y.ttl):j.href}async function D(y){return(await o.url("/checkouts").post({language:Uu(),...y,vendorId:e.clientId})).json()}async function Y(y,P){return(await o.url(`/checkouts/${y}`).patch(P)).json()}async function B(y){return(await o.url(`/checkouts/${y}`).get()).json()}async function W(){const y=await ur(!1),P=new URL(`${Fe("account",e.environment)}/subscriptions/${e.clientId}`);y&&(P.hash=`#access_token=${y}`),window.location.href=P.toString()}return{createCheckout:D,updateCheckout:Y,getCheckout:B,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getFulfillments:l,getContracts:c,getContract:d,cancelContract:h,getProfile:R,updateProfile:K,getSubscriptions:v,getBills:S,getBill:g,setUserMetadata:w,deleteUserMetadata:p,getUserMetadata:$,listUserMetadata:O,getTags:_,deleteTag:k,setTag:M,getTally:F,getTallies:J,deleteTally:L,pushTally:U,getTransactions:T,getTransaction:I,getProduct:z,getPaymentIssues:q,autoOnboardProduct:E,isSpotifyLinked:xe,unlinkSpotify:m,linkSpotify:b,generateLink:x,openHostedAccountPage:W}}const Hd="@sesamy/sesamy-js",Qo="1.19.1";function Du(e,t,r,n,a){for(t=t.split?t.split("."):t,n=0;n<t.length;n++)e=e?e[t[n]]:a;return e===a?r:e}var sn="undefined",Mu="object",no=function(){},Gd="any",Kd="*",dt="__",xn=typeof process<"u"?process:{};xn.env&&xn.env.NODE_ENV;var Q=typeof document<"u";xn.versions!=null&&xn.versions.node!=null;typeof Deno<"u"&&Deno.core;Q&&window.name==="nodejs"||typeof navigator<"u"&&navigator.userAgent!==void 0&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));function Wd(e,t){return t.charAt(0)[e]()+t.slice(1)}var rP=Wd.bind(null,"toUpperCase"),nP=Wd.bind(null,"toLowerCase");function aP(e){return Vd(e)?rP("null"):typeof e=="object"?cP(e):Object.prototype.toString.call(e).slice(8,-1)}function Un(e,t){t===void 0&&(t=!0);var r=aP(e);return t?nP(r):r}function Dr(e,t){return typeof t===e}var ce=Dr.bind(null,"function"),Je=Dr.bind(null,"string"),At=Dr.bind(null,"undefined"),iP=Dr.bind(null,"boolean");Dr.bind(null,"symbol");function Vd(e){return e===null}function oP(e){return Un(e)==="number"&&!isNaN(e)}function Zd(e){return Un(e)==="array"}function se(e){if(!sP(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function sP(e){return e&&(typeof e=="object"||e!==null)}function cP(e){return ce(e.constructor)?e.constructor.name:null}function uP(e){return e instanceof Error||Je(e.message)&&e.constructor&&oP(e.constructor.stackTraceLimit)}function Jd(e,t){if(typeof t!="object"||Vd(t))return!1;if(t instanceof e)return!0;var r=Un(new e(""));if(uP(t))for(;t;){if(Un(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}Jd.bind(null,TypeError);Jd.bind(null,SyntaxError);function aa(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?lP(e,t):r}function lP(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function ia(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}ia(aa,"form");ia(aa,"button");ia(aa,"input");ia(aa,"select");function fP(e){return e?Zd(e)?e:[e]:[]}function Fu(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function dP(){if(Q){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function hP(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function vP(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=Fu(r[1]),o=Fu(r[2]);i.substring(i.length-2)==="[]"?(n[i=i.substring(0,i.length-2)]||(n[i]=[])).push(o):n[i]=o===""||o}for(var s in n){var u=s.split("[");u.length>1&&(pP(n,u.map(function(f){return f.replace(/[?[\]\\ ]/g,"")}),n[s]),delete n[s])}return n}(function(t){return Q&&window.location.search.substring(1)}())}function pP(e,t,r){for(var n=t.length-1,a=0;a<n;++a){var i=t[a];if(i==="__proto__"||i==="constructor")break;i in e||(e[i]={}),e=e[i]}e[t[n]]=r}function oa(){for(var e="",t=0,r=4294967295*Math.random()|0;t++<36;){var n="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[t-1],a=15&r;e+=n=="-"||n=="4"?n:(n=="x"?a:3&a|8).toString(16),r=t%8==0?4294967295*Math.random()|0:r>>4}return e}function mP(e,t){var r,n,a,i=null,o=0,s=function(){o=new Date,i=null,a=e.apply(r,n)};return function(){var u=new Date;o||(o=u);var f=t-(u-o);return r=this,n=arguments,f<=0?(clearTimeout(i),i=null,o=u,a=e.apply(r,n)):i||(i=setTimeout(s,f)),a}}var Sr="global",Kt=dt+"global"+dt,Wt=typeof self===Mu&&self.self===self&&self||typeof global===Mu&&global.global===global&&global||void 0;function ht(e){return Wt[Kt][e]}function vt(e,t){return Wt[Kt][e]=t}function Qt(e){delete Wt[Kt][e]}function er(e,t,r){var n;try{if(es(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Wt[Kt]||(Wt[Kt]={});var cn={};function es(e){if(typeof cn[e]!==sn)return cn[e];try{var t=window[e];t.setItem(sn,sn),t.removeItem(sn)}catch{return cn[e]=!1}return cn[e]=!0}function A(){return A=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},A.apply(this,arguments)}var We="function",Be="undefined",gP="@@redux/"+Math.random().toString(36),Bu=function(){return typeof Symbol===We&&Symbol.observable||"@@observable"}(),un=" != "+We;function Yd(e,t,r){var n;if(typeof t===We&&typeof r===Be&&(r=t,t=void 0),typeof r!==Be){if(typeof r!==We)throw new Error("enhancer"+un);return r(Yd)(e,t)}if(typeof e!==We)throw new Error("reducer"+un);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(h){if(typeof h!==We)throw new Error("Listener"+un);var v=!0;return f(),s.push(h),function(){if(v){v=!1,f();var S=s.indexOf(h);s.splice(S,1)}}}function d(h){if(!se(h))throw new Error("Act != obj");if(typeof h.type===Be)throw new Error("ActType "+Be);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,h)}finally{u=!1}for(var v=o=s,S=0;S<v.length;S++)(0,v[S])();return h}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(h){if(typeof h!==We)throw new Error("next reducer"+un);a=h,d({type:"@@redux/INIT"})}})[Bu]=function(){var h,v=c;return(h={subscribe:function(S){if(typeof S!="object")throw new TypeError("Observer != obj");function g(){S.next&&S.next(l())}return g(),{unsubscribe:v(g)}}})[Bu]=function(){return this},h},n}function yP(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+Be}function Vt(){var e=[].slice.call(arguments);return e.length===0?function(t){return t}:e.length===1?e[0]:e.reduce(function(t,r){return function(){return t(r.apply(void 0,[].slice.call(arguments)))}})}function wP(){var e=arguments;return function(t){return function(r,n,a){var i,o=t(r,n,a),s=o.dispatch,u={getState:o.getState,dispatch:function(f){return s(f)}};return i=[].slice.call(e).map(function(f){return f(u)}),A({},o,{dispatch:s=Vt.apply(void 0,i)(o.dispatch)})}}}var Ye=dt+"anon_id",lt=dt+"user_id",Nt=dt+"user_traits",Ke="userId",jt="anonymousId",$n=["bootstrap","params","campaign","initializeStart","initialize","initializeEnd","ready","resetStart","reset","resetEnd","pageStart","page","pageEnd","pageAborted","trackStart","track","trackEnd","trackAborted","identifyStart","identify","identifyEnd","identifyAborted","userIdChanged","registerPlugins","enablePlugin","disablePlugin","online","offline","setItemStart","setItem","setItemEnd","setItemAborted","removeItemStart","removeItem","removeItemEnd","removeItemAborted"],ao=["name","EVENTS","config","loaded"],C=$n.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),zu=/^utm_/,Hu=/^an_prop_/,Gu=/^an_trait_/;function bP(e){var t=e.storage.setItem;return function(r){return function(n){return function(a){if(a.type===C.bootstrap){var i=a.params,o=a.user,s=a.persistedUser,u=a.initialUser,f=s.userId===o.userId;s.anonymousId!==o.anonymousId&&t(Ye,o.anonymousId),f||t(lt,o.userId),u.traits&&t(Nt,A({},f&&s.traits?s.traits:{},u.traits));var l=Object.keys(a.params);if(l.length){var c=i.an_uid,d=i.an_event,h=l.reduce(function(v,S){if(S.match(zu)||S.match(/^(d|g)clid/)){var g=S.replace(zu,"");v.campaign[g==="campaign"?"name":g]=i[S]}return S.match(Hu)&&(v.props[S.replace(Hu,"")]=i[S]),S.match(Gu)&&(v.traits[S.replace(Gu,"")]=i[S]),v},{campaign:{},props:{},traits:{}});r.dispatch(A({type:C.params,raw:i},h,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,h.traits)},0),d&&setTimeout(function(){return e.track(d,h.props)},0),Object.keys(h.campaign).length&&r.dispatch({type:C.campaign,campaign:h.campaign})}}return n(a)}}}}function SP(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===C.setItemEnd){if(r.key===Ye)return A({},t,{anonymousId:r.value});if(r.key===lt)return A({},t,{userId:r.value})}switch(r.type){case C.identify:return Object.assign({},t,{userId:r.userId,traits:A({},t.traits,r.traits)});case C.reset:return[lt,Ye,Nt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Ku(e){return{userId:e.getItem(lt),anonymousId:e.getItem(Ye),traits:e.getItem(Nt)}}var io=function(e){return dt+"TEMP"+dt+e};function $P(e){var t=e.storage,r=t.setItem,n=t.removeItem,a=t.getItem;return function(i){return function(o){return function(s){var u=s.userId,f=s.traits,l=s.options;if(s.type===C.reset&&([lt,Nt,Ye].forEach(function(h){n(h)}),[Ke,jt,"traits"].forEach(function(h){Qt(io(h))})),s.type===C.identify){a(Ye)||r(Ye,oa());var c=a(lt),d=a(Nt)||{};c&&c!==u&&i.dispatch({type:C.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(lt,u),f&&r(Nt,A({},d,f))}return o(s)}}}}var vr={};function Wu(e,t){vr[e]&&ce(vr[e])&&(vr[e](t),delete vr[e])}function Xd(e,t,r){return new Promise(function(n,a){return t()?n(e):r<1?a(A({},e,{queue:!0})):new Promise(function(i){return setTimeout(i,10)}).then(function(i){return Xd(e,t,r-10).then(n,a)})})}function IP(e){return{abort:e}}function qd(e,t,r){var n={},a=t(),i=e.getState(),o=i.plugins,s=i.queue,u=i.user;if(!i.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(c,d,h){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(h)):(c.requeue.push(d),c.requeueIndex.push(h)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],h=d.plugin,v=d.payload.type,S=a[h][v];if(S&&ce(S)){var g,T=function(p,$){return p===void 0&&(p={}),$===void 0&&($={}),[Ke,jt].reduce(function(O,_){return p.hasOwnProperty(_)&&$[_]&&$[_]!==p[_]&&(O[_]=$[_]),O},p)}(d.payload,u),I=n[T.meta.rid];if(!I&&(g=S({payload:T,config:o[h].config,instance:r,abort:IP}))&&se(g)&&g.abort)return void(n[T.meta.rid]=!0);if(!I){var w=v+":"+h;e.dispatch(A({},T,{type:w,_:{called:w,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var yi=function(e){var t=e.data,r=e.action,n=e.instance,a=e.state,i=e.allPlugins,o=e.allMatches,s=e.store,u=e.EVENTS;try{var f=a.plugins,l=a.context,c=r.type,d=c.match(xt),h=t.exact.map(function(g){return g.pluginName});d&&(h=o.during.map(function(g){return g.pluginName}));var v=function(g,T){return function(I,w,p){var $=w.config,O=w.name,_=O+"."+I.type;p&&(_=p.event);var k=I.type.match(xt)?function(M,F,J,L,U){return function(z,R){var K=L?L.name:M,q=R&&kr(R)?R:J;if(L&&(!(q=R&&kr(R)?R:[M]).includes(M)||q.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(q)+" input valid");return A({},U,{abort:{reason:z,plugins:q,caller:F,_:K}})}}(O,_,T,p,I):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(I,_);return{payload:TP(I),instance:g,config:$||{},abort:k}}}(n,h),S=t.exact.reduce(function(g,T){var I=T.pluginName,w=T.methodName,p=!1;return w.match(/^initialize/)||w.match(/^reset/)||(p=!f[I].loaded),l.offline&&w.match(/^(page|track|identify)/)&&(p=!0),g[""+I]=p,g},{});return Promise.resolve(t.exact.reduce(function(g,T,I){try{var w=T.pluginName;return Promise.resolve(g).then(function(p){function $(){return Promise.resolve(p)}var O=function(){if(t.namespaced&&t.namespaced[w])return Promise.resolve(t.namespaced[w].reduce(function(_,k,M){try{return Promise.resolve(_).then(function(F){return k.method&&ce(k.method)?(function(z,R){var K=Qu(z);if(K&&K.name===R){var q=Qu(K.method);throw new Error([R+" plugin is calling method "+z,"Plugins cant call self","Use "+K.method+" "+(q?"or "+q.method:"")+" in "+R+" plugin insteadof "+z].join(`
|
|
6
6
|
`))}}(k.methodName,k.pluginName),Promise.resolve(k.method({payload:F,instance:n,abort:(J=F,L=w,U=k.pluginName,function(z,R){return A({},J,{abort:{reason:z,plugins:R||[L],caller:c,from:U||L}})}),config:Ju(k.pluginName,f,i),plugins:f})).then(function(z){var R=se(z)?z:{};return Promise.resolve(A({},F,R))})):F;var J,L,U})}catch(F){return Promise.reject(F)}},Promise.resolve(r))).then(function(_){p[w]=_});p[w]=r}();return O&&O.then?O.then($):$()})}catch(p){return Promise.reject(p)}},Promise.resolve({}))).then(function(g){return Promise.resolve(t.exact.reduce(function(T,I,w){try{var p=t.exact.length===w+1,$=I.pluginName,O=i[$];return Promise.resolve(T).then(function(_){var k=g[$]?g[$]:{};if(d&&(k=_),bi(k,$))return wi({data:k,method:c,instance:n,pluginName:$,store:s}),Promise.resolve(_);if(bi(_,$))return p&&wi({data:_,method:c,instance:n,store:s}),Promise.resolve(_);if(S.hasOwnProperty($)&&S[$]===!0)return s.dispatch({type:"queue",plugin:$,payload:k,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(_);var M=v(g[$],i[$]);return Promise.resolve(O[c]({abort:M.abort,payload:k,instance:n,config:Ju($,f,i),plugins:f})).then(function(F){var J=se(F)?F:{},L=A({},_,J),U=g[$];if(bi(U,$))wi({data:U,method:c,instance:n,pluginName:$,store:s});else{var z=c+":"+$;(z.match(/:/g)||[]).length<2&&!c.match(Vu)&&!c.match(Zu)&&n.dispatch(A({},d?L:k,{type:z,_:{called:z,from:"submethod"}}))}return Promise.resolve(L)})})}catch(_){return Promise.reject(_)}},Promise.resolve(r))).then(function(T){if(!(c.match(xt)||c.match(/^registerPlugin/)||c.match(Zu)||c.match(Vu)||c.match(/^params/)||c.match(/^userIdChanged/))){if(u.plugins.includes(c),T._&&T._.originalAction===c)return T;var I=A({},T,{_:{originalAction:T.type,called:T.type,from:"engineEnd"}});Qd(T,t.exact.length)&&!c.match(/End$/)&&(I=A({},I,{type:T.type+"Aborted"})),s.dispatch(I)}return T})})}catch(g){return Promise.reject(g)}},xt=/Start$/,Vu=/^bootstrap/,Zu=/^ready/;function wi(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(A({},e.data,{type:r,_:{called:r,from:"abort"}}))}function Ju(e,t,r){var n=t[e]||r[e];return n&&n.config?n.config:{}}function Yu(e,t){return t.reduce(function(r,n){return n[e]?r.concat({methodName:e,pluginName:n.name,method:n[e]}):r},[])}function Xu(e,t){var r=e.replace(xt,""),n=t?":"+t:"";return[""+e+n,""+r+n,r+"End"+n]}function bi(e,t){var r=e.abort;return!!r&&(r===!0||qu(r,t)||r&&qu(r.plugins,t))}function Qd(e,t){var r=e.abort;if(!r)return!1;if(r===!0||Je(r))return!0;var n=r.plugins;return kr(r)&&r.length===t||kr(n)&&n.length===t}function kr(e){return Array.isArray(e)}function qu(e,t){return!(!e||!kr(e))&&e.includes(t)}function Qu(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function TP(e){return Object.keys(e).reduce(function(t,r){return r==="type"||(t[r]=se(e[r])?Object.assign({},e[r]):e[r]),t},{})}function PP(e,t,r){var n={};return function(a){return function(i){return function(o){try{var s,u=function(p){return s?p:i(c)},f=o.type,l=o.plugins,c=o;if(o.abort)return Promise.resolve(i(o));if(f===C.enablePlugin&&a.dispatch({type:C.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),f===C.disablePlugin&&setTimeout(function(){return Wu(o.meta.rid,{payload:o})},0),f===C.initializeEnd){var d=t(),h=Object.keys(d),v=h.filter(function(p){return l.includes(p)}).map(function(p){return d[p]}),S=[],g=[],T=o.disabled,I=v.map(function(p){var $=p.loaded,O=p.name,_=p.config;return Xd(p,function(){return $({config:_})},1e4).then(function(k){return n[O]||(a.dispatch({type:C.pluginReadyType(O),name:O,events:Object.keys(p).filter(function(M){return!ao.includes(M)})}),n[O]=!0),S=S.concat(O),p}).catch(function(k){if(k instanceof Error)throw new Error(k);return g=g.concat(k.name),k})});Promise.all(I).then(function(p){var $={plugins:S,failed:g,disabled:T};setTimeout(function(){h.length===I.length+T.length&&a.dispatch(A({},{type:C.ready},$))},0)})}var w=function(){if(f!==C.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return qd(a,t,e)},0),Promise.resolve(function(p,$,O,_,k){try{var M=ce($)?$():$,F=p.type,J=F.replace(xt,"");if(p._&&p._.called)return Promise.resolve(p);var L=O.getState(),U=(K=M,(q=L.plugins)===void 0&&(q={}),(xe=p.options)===void 0&&(xe={}),Object.keys(K).filter(function(m){var b=xe.plugins||{};return iP(b[m])?b[m]:b.all!==!1&&(!q[m]||q[m].enabled!==!1)}).map(function(m){return K[m]}));F===C.initializeStart&&p.fromEnable&&(U=Object.keys(L.plugins).filter(function(m){var b=L.plugins[m];return p.plugins.includes(m)&&!b.initialized}).map(function(m){return M[m]}));var z=U.map(function(m){return m.name}),R=function(m,b,E){var N=Xu(m).map(function(x){return Yu(x,b)});return b.reduce(function(x,D){var Y=D.name,B=Xu(m,Y).map(function(j){return Yu(j,b)}),W=B[0],y=B[1],P=B[2];return W.length&&(x.beforeNS[Y]=W),y.length&&(x.duringNS[Y]=y),P.length&&(x.afterNS[Y]=P),x},{before:N[0],beforeNS:{},during:N[1],duringNS:{},after:N[2],afterNS:{}})}(F,U);return Promise.resolve(yi({action:p,data:{exact:R.before,namespaced:R.beforeNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(m){function b(){var x=function(){if(F.match(xt))return Promise.resolve(yi({action:A({},E,{type:J+"End"}),data:{exact:R.after,namespaced:R.afterNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(D){D.meta&&D.meta.hasCallback&&Wu(D.meta.rid,{payload:D})})}();return x&&x.then?x.then(function(){return m}):m}if(Qd(m,z.length))return m;var E,N=function(){if(F!==J)return Promise.resolve(yi({action:A({},m,{type:J}),data:{exact:R.during,namespaced:R.duringNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(x){E=x});E=m}();return N&&N.then?N.then(b):b()})}catch(m){return Promise.reject(m)}var K,q,xe}(o,t,e,a,r)).then(function(p){return s=1,i(p)})}();return Promise.resolve(w&&w.then?w.then(u):u(w))}catch(p){return Promise.reject(p)}}}}}function EP(e){return function(t){return function(r){return function(n){var a=n.type,i=n.key,o=n.value,s=n.options;if(a===C.setItem||a===C.removeItem){if(n.abort)return r(n);a===C.setItem?e.setItem(i,o,s):e.removeItem(i,s)}return r(n)}}}}var OP=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,r){e[r]=e[r].concat(t)},this.removeMiddleware=function(t,r){var n=e[r].findIndex(function(a){return a===t});n!==-1&&(e[r]=[].concat(e[r].slice(0,n),e[r].slice(n+1)))},this.dynamicMiddlewares=function(t){return function(r){return function(n){return function(a){var i={getState:r.getState,dispatch:function(s){return r.dispatch(s)}},o=e[t].map(function(s){return s(i)});return Vt.apply(void 0,o)(n)(a)}}}}};function kP(e){return function(t,r){t===void 0&&(t={});var n={};if(r.type==="initialize:aborted")return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var a=el(r.type,"registerPlugin"),i=e()[a];if(!i||!a)return t;var o=r.enabled,s=i.config;return n[a]={enabled:o,initialized:!!o&&!i.initialize,loaded:!!o&&!!i.loaded({config:s}),config:s},A({},t,n)}if(/^initialize:([^:]*)$/.test(r.type)){var u=el(r.type,C.initialize),f=e()[u];return f&&u?(n[u]=A({},t[u],{initialized:!0,loaded:!!f.loaded({config:f.config})}),A({},t,n)):t}if(/^ready:([^:]*)$/.test(r.type))return n[r.name]=A({},t[r.name],{loaded:!0}),A({},t,n);switch(r.type){case C.disablePlugin:return A({},t,tl(r.plugins,!1,t));case C.enablePlugin:return A({},t,tl(r.plugins,!0,t));default:return t}}}function el(e,t){return e.substring(t.length+1,e.length)}function tl(e,t,r){return e.reduce(function(n,a){return n[a]=A({},r[a],{enabled:t}),n},r)}function eh(e){try{return JSON.parse(JSON.stringify(e))}catch{}return e}var _P={last:{},history:[]};function RP(e,t){e===void 0&&(e=_P);var r=t.options,n=t.meta;if(t.type===C.track){var a=eh(A({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:n}));return A({},e,{last:a,history:e.history.concat(a)})}return e}var CP={actions:[]};function AP(e,t){e===void 0&&(e=CP);var r=t.payload;switch(t.type){case"queue":var n;return n=r&&r.type&&r.type===C.identify?[t].concat(e.actions):e.actions.concat(t),A({},e,{actions:n});case"dequeue":return[];default:return e}}var th=/#.*$/;function jP(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(th,""):"")}var rh,nh,ah,ih,LP=function(e){if(e===void 0&&(e={}),!Q)return e;var t=document,r=t.title,n=t.referrer,a=window,i=a.location,o=a.innerWidth,s=a.innerHeight,u=i.hash,f=i.search,l=function(d){var h=function(){if(Q){for(var v,S=document.getElementsByTagName("link"),g=0;v=S[g];g++)if(v.getAttribute("rel")==="canonical")return v.getAttribute("href")}}();return h?h.match(/\?/)?h:h+d:window.location.href.replace(th,"")}(f),c={title:r,url:l,path:jP(l),hash:u,search:f,width:o,height:s};return n&&n!==""&&(c.referrer=n),A({},c,e)},NP={last:{},history:[]};function xP(e,t){e===void 0&&(e=NP);var r=t.options;if(t.type===C.page){var n=eh(A({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return A({},e,{last:n,history:e.history.concat(n)})}return e}rh=function(){if(!Q)return!1;var e=navigator.appVersion;return~e.indexOf("Win")?"Windows":~e.indexOf("Mac")?"MacOS":~e.indexOf("X11")?"UNIX":~e.indexOf("Linux")?"Linux":"Unknown OS"}(),nh=Q?document.referrer:null,ah=dP(),ih=hP();var rl={initialized:!1,sessionId:oa(),app:null,version:null,debug:!1,offline:!!Q&&!navigator.onLine,os:{name:rh},userAgent:Q?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.13"},timezone:ih,locale:ah,campaign:{},referrer:nh};function UP(e,t){e===void 0&&(e=rl);var r=e.initialized,n=t.campaign;switch(t.type){case C.campaign:return A({},e,{campaign:n});case C.offline:return A({},e,{offline:!0});case C.online:return A({},e,{offline:!1});default:return r?e:A({},rl,e,{initialized:!0})}}var DP=["plugins","reducers","storage"];function MP(e,t,r){if(Q){var n=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(a){n(a,t)})}}function FP(e){var t=MP.bind(null,"online offline",function(r){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(r){return t(!1)}}function oh(){return vt("analytics",[]),function(e){return function(t,r,n){var a=e(t,r,n),i=a.dispatch;return Object.assign(a,{dispatch:function(o){return Wt[Kt].analytics.push(o.action||o),i(o)}})}}}function nl(e){return function(){return Vt(Vt.apply(null,arguments),oh())}}function Si(e){return e?Zd(e)?e:[e]:[]}function al(e,t,r){e===void 0&&(e={});var n,a,i=oa();return t&&(vr[i]=(n=t,a=function(o){for(var s,u=o||Array.prototype.slice.call(arguments),f=0;f<u.length;f++)if(ce(u[f])){s=u[f];break}return s}(r),function(o){a&&a(o),n(o)})),A({},e,{rid:i,ts:new Date().getTime()},t?{hasCallback:!0}:{})}function BP(e){e===void 0&&(e={});var t=e.reducers||{},r=e.initialUser||{},n=(e.plugins||[]).reduce(function(m,b){if(ce(b))return m.middlewares=m.middlewares.concat(b),m;if(b.NAMESPACE&&(b.name=b.NAMESPACE),!b.name)throw new Error("https://lytics.dev/errors/1");b.config||(b.config={});var E=b.EVENTS?Object.keys(b.EVENTS).map(function(D){return b.EVENTS[D]}):[];m.pluginEnabled[b.name]=!(b.enabled===!1||b.config.enabled===!1),delete b.enabled,b.methods&&(m.methods[b.name]=Object.keys(b.methods).reduce(function(D,Y){var B;return D[Y]=(B=b.methods[Y],function(){for(var W=Array.prototype.slice.call(arguments),y=new Array(B.length),P=0;P<W.length;P++)y[P]=W[P];return y[y.length]=$,B.apply({instance:$},y)}),D},{}),delete b.methods);var N=Object.keys(b).concat(E),x=new Set(m.events.concat(N));if(m.events=Array.from(x),m.pluginsArray=m.pluginsArray.concat(b),m.plugins[b.name])throw new Error(b.name+"AlreadyLoaded");return m.plugins[b.name]=b,m.plugins[b.name].loaded||(m.plugins[b.name].loaded=function(){return!0}),m},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),a=e.storage?e.storage:{getItem:ht,setItem:vt,removeItem:Qt},i=function(m){return function(b,E,N){return E.getState("user")[b]||(N&&se(N)&&N[b]?N[b]:Ku(m)[b]||ht(io(b))||null)}}(a),o=n.plugins,s=n.events.filter(function(m){return!ao.includes(m)}).sort(),u=new Set(s.concat($n).filter(function(m){return!ao.includes(m)})),f=Array.from(u).sort(),l=function(){return o},c=new OP,d=c.addMiddleware,h=c.removeMiddleware,v=c.dynamicMiddlewares,S=function(){throw new Error("Abort disabled inListener")},g=vP(),T=Ku(a),I=A({},T,r,g.an_uid?{userId:g.an_uid}:{},g.an_aid?{anonymousId:g.an_aid}:{});I.anonymousId||(I.anonymousId=oa());var w=A({enable:function(m,b){return new Promise(function(E){R.dispatch({type:C.enablePlugin,plugins:Si(m),_:{originalAction:C.enablePlugin}},E,[b])})},disable:function(m,b){return new Promise(function(E){R.dispatch({type:C.disablePlugin,plugins:Si(m),_:{originalAction:C.disablePlugin}},E,[b])})}},n.methods),p=!1,$={identify:function(m,b,E,N){try{var x=Je(m)?m:null,D=se(m)?m:b,Y=E||{},B=$.user();vt(io(Ke),x);var W=x||D.userId||i(Ke,$,D);return Promise.resolve(new Promise(function(y){R.dispatch(A({type:C.identifyStart,userId:W,traits:D||{},options:Y,anonymousId:B.anonymousId},B.id&&B.id!==x&&{previousId:B.id}),y,[b,E,N])}))}catch(y){return Promise.reject(y)}},track:function(m,b,E,N){try{var x=se(m)?m.event:m;if(!x||!Je(x))throw new Error("EventMissing");var D=se(m)?m:b||{},Y=se(E)?E:{};return Promise.resolve(new Promise(function(B){R.dispatch({type:C.trackStart,event:x,properties:D,options:Y,userId:i(Ke,$,b),anonymousId:i(jt,$,b)},B,[b,E,N])}))}catch(B){return Promise.reject(B)}},page:function(m,b,E){try{var N=se(m)?m:{},x=se(b)?b:{};return Promise.resolve(new Promise(function(D){R.dispatch({type:C.pageStart,properties:LP(N),options:x,userId:i(Ke,$,N),anonymousId:i(jt,$,N)},D,[m,b,E])}))}catch(D){return Promise.reject(D)}},user:function(m){if(m===Ke||m==="id")return i(Ke,$);if(m===jt||m==="anonId")return i(jt,$);var b=$.getState("user");return m?Du(b,m):b},reset:function(m){return new Promise(function(b){R.dispatch({type:C.resetStart},b,m)})},ready:function(m){return p&&m({plugins:w,instance:$}),$.on(C.ready,function(b){m(b),p=!0})},on:function(m,b){if(!m||!ce(b))return!1;if(m===C.bootstrap)throw new Error(".on disabled for "+m);var E=/Start$|Start:/;if(m==="*"){var N=function(B){return function(W){return function(y){return y.type.match(E)&&b({payload:y,instance:$,plugins:o}),W(y)}}},x=function(B){return function(W){return function(y){return y.type.match(E)||b({payload:y,instance:$,plugins:o}),W(y)}}};return d(N,ln),d(x,fn),function(){h(N,ln),h(x,fn)}}var D=m.match(E)?ln:fn,Y=function(B){return function(W){return function(y){return y.type===m&&b({payload:y,instance:$,plugins:o,abort:S}),W(y)}}};return d(Y,D),function(){return h(Y,D)}},once:function(m,b){if(!m||!ce(b))return!1;if(m===C.bootstrap)throw new Error(".once disabled for "+m);var E=$.on(m,function(N){b({payload:N.payload,instance:$,plugins:o,abort:S}),E()});return E},getState:function(m){var b=R.getState();return m?Du(b,m):Object.assign({},b)},dispatch:function(m){var b=Je(m)?{type:m}:m;if($n.includes(b.type))throw new Error("reserved action "+b.type);var E=A({},b,{_:A({originalAction:b.type},m._||{})});R.dispatch(E)},enablePlugin:w.enable,disablePlugin:w.disable,plugins:w,storage:{getItem:a.getItem,setItem:function(m,b,E){R.dispatch({type:C.setItemStart,key:m,value:b,options:E})},removeItem:function(m,b){R.dispatch({type:C.removeItemStart,key:m,options:b})}},setAnonymousId:function(m,b){$.storage.setItem(Ye,m,b)},events:{core:$n,plugins:s}},O=n.middlewares.concat([function(m){return function(b){return function(E){return E.meta||(E.meta=al()),b(E)}}},v(ln),PP($,l,{all:f,plugins:s}),EP(a),bP($),$P($),v(fn)]),_={context:UP,user:SP(a),page:xP,track:RP,plugins:kP(l),queue:AP},k=Vt,M=Vt;if(Q&&e.debug){var F=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;F&&(k=F({trace:!0,traceLimit:25})),M=function(){return arguments.length===0?oh():se(typeof arguments[0])?nl():nl().apply(null,arguments)}}var J,L=function(m){return Object.keys(m).reduce(function(b,E){return DP.includes(E)||(b[E]=m[E]),b},{})}(e),U=n.pluginsArray.reduce(function(m,b){var E=b.name,N=b.config,x=b.loaded,D=n.pluginEnabled[E];return m[E]={enabled:D,initialized:!!D&&!b.initialize,loaded:!!x({config:N}),config:N},m},{}),z={context:L,user:I,plugins:U},R=Yd(function(m){for(var b=Object.keys(m),E={},N=0;N<b.length;N++){var x=b[N];typeof m[x]===We&&(E[x]=m[x])}var D,Y=Object.keys(E);try{(function(B){Object.keys(B).forEach(function(W){var y=B[W];if(typeof y(void 0,{type:"@@redux/INIT"})===Be||typeof y(void 0,{type:gP})===Be)throw new Error("reducer "+W+" "+Be)})})(E)}catch(B){D=B}return function(B,W){if(B===void 0&&(B={}),D)throw D;for(var y=!1,P={},j=0;j<Y.length;j++){var V=Y[j],oe=B[V],Qe=(0,E[V])(oe,W);if(typeof Qe===Be){var wh=yP(V,W);throw new Error(wh)}P[V]=Qe,y=y||Qe!==oe}return y?P:B}}(A({},_,t)),z,M(k(wP.apply(void 0,O))));R.dispatch=(J=R.dispatch,function(m,b,E){var N=A({},m,{meta:al(m.meta,b,Si(E))});return J.apply(null,[N])});var K=Object.keys(o);R.dispatch({type:C.bootstrap,plugins:K,config:L,params:g,user:I,initialUser:r,persistedUser:T});var q=K.filter(function(m){return n.pluginEnabled[m]}),xe=K.filter(function(m){return!n.pluginEnabled[m]});return R.dispatch({type:C.registerPlugins,plugins:K,enabled:n.pluginEnabled}),n.pluginsArray.map(function(m,b){var E=m.bootstrap,N=m.config,x=m.name;E&&ce(E)&&E({instance:$,config:N,payload:m}),R.dispatch({type:C.registerPluginType(x),name:x,enabled:n.pluginEnabled[x],plugin:m}),n.pluginsArray.length===b+1&&R.dispatch({type:C.initializeStart,plugins:q,disabled:xe})}),FP(function(m){R.dispatch({type:m?C.offline:C.online})}),function(m,b,E){setInterval(function(){return qd(m,b,E)},3e3)}(R,l,$),$}var ln="before",fn="after",$r="cookie",ot=uh(),sh=sa,zP=sa;function ch(e){return ot?sa(e,"",-1):Qt(e)}function uh(){if(ot!==void 0)return ot;var e="cookiecookie";try{sa(e,e),ot=document.cookie.indexOf(e)!==-1,ch(e)}catch{ot=!1}return ot}function sa(e,t,r,n,a,i){if(typeof window<"u"){var o=arguments.length>1;return ot===!1&&(o?vt(e,t):ht(e)),o?document.cookie=e+"="+encodeURIComponent(t)+(r?"; expires="+new Date(+new Date+1e3*r).toUTCString()+(n?"; path="+n:"")+(a?"; domain="+a:"")+(i?"; secure":""):""):decodeURIComponent((("; "+document.cookie).split("; "+e+"=")[1]||"").split(";")[0])}}var Ir="localStorage",HP=es.bind(null,"localStorage");er("localStorage","getItem",ht);er("localStorage","setItem",vt);er("localStorage","removeItem",Qt);var Tr="sessionStorage",GP=es.bind(null,"sessionStorage");er("sessionStorage","getItem",ht);er("sessionStorage","setItem",vt);er("sessionStorage","removeItem",Qt);function Ut(e){var t=e;try{if((t=JSON.parse(e))==="true")return!0;if(t==="false")return!1;if(se(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch{}if(t!==null&&t!=="")return t}var KP=HP(),WP=GP(),VP=uh();function lh(e,t){if(e){var r=ts(t),n=!is(r),a=rs(r)?Ut(localStorage.getItem(e)):void 0;if(n&&!At(a))return a;var i=ns(r)?Ut(sh(e)):void 0;if(n&&i)return i;var o=as(r)?Ut(sessionStorage.getItem(e)):void 0;if(n&&o)return o;var s=ht(e);return n?s:{localStorage:a,sessionStorage:o,cookie:i,global:s}}}function ZP(e,t,r){if(e&&!At(t)){var n={},a=ts(r),i=JSON.stringify(t),o=!is(a);return rs(a)&&(n[Ir]=dn(Ir,t,Ut(localStorage.getItem(e))),localStorage.setItem(e,i),o)?n[Ir]:ns(a)&&(n[$r]=dn($r,t,Ut(sh(e))),zP(e,i),o)?n[$r]:as(a)&&(n[Tr]=dn(Tr,t,Ut(sessionStorage.getItem(e))),sessionStorage.setItem(e,i),o)?n[Tr]:(n[Sr]=dn(Sr,t,ht(e)),vt(e,t),o?n[Sr]:n)}}function JP(e,t){if(e){var r=ts(t),n=lh(e,Kd),a={};return!At(n.localStorage)&&rs(r)&&(localStorage.removeItem(e),a[Ir]=n.localStorage),!At(n.cookie)&&ns(r)&&(ch(e),a[$r]=n.cookie),!At(n.sessionStorage)&&as(r)&&(sessionStorage.removeItem(e),a[Tr]=n.sessionStorage),!At(n.global)&&ca(r,Sr)&&(Qt(e),a[Sr]=n.global),a}}function ts(e){return e?Je(e)?e:e.storage:Gd}function rs(e){return KP&&ca(e,Ir)}function ns(e){return VP&&ca(e,$r)}function as(e){return WP&&ca(e,Tr)}function is(e){return e===Kd||e==="all"}function ca(e,t){return e===Gd||e===t||is(e)}function dn(e,t,r){return{location:e,current:t,previous:r}}var YP={setItem:ZP,getItem:lh,removeItem:JP};function XP(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function il(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function ol(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?il(Object(r),!0).forEach(function(n){XP(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):il(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function qP(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t={storage:YP};return BP(ol(ol({},t),e))}function QP(e,t){t=t||{};var r,n,a=[],i=t.max||1/0;function o(){clearInterval(r),e(a.splice(0,i)),s()}function s(){r=setInterval(o,t.interval||1e4)}return s(),{flush:o,push:function(u){return n=a.push(u),n>=i&&o(),n},size:function(){return a.length},end:function(u){u&&o(),clearInterval(r)}}}function eE(e){if(typeof window>"u")return;const{addEventListener:t,history:r,location:n}=window;let a=n.pathname;t("popstate",()=>e(n.pathname)),["push","replace"].map(i=>{const o=`${i}State`;if(o!=="pushState"&&o!=="replaceState")return;const s=r[o];r[o]=function(...u){var c;const f=((c=u[2])==null?void 0:c.toString())||"",l=rE(f);return a!==l&&(a=l,setTimeout(()=>e(f),0)),s.apply(r,u)}})}function tE(e,t){const r=e.indexOf(t);return r>-1?e.slice(0,r):e}function rE(e){return["#","?"].forEach(t=>e=tE(e,t)),e}function nE(){eE(()=>{Me.page()})}function aE(e){if(e===void 0&&(e={}),!Q)return no;var t=cl(),r=oo(),n=sl(),a=hn(n,t),i=hn(r,t),o=[],s=[],u=[],f=n,l=a,c=i,d=Object.keys(e);if(!d.length)return no;var h=d.map(function(S){return Number(S)}),v=mP(function(){var S=cl(),g=function(L,U){return U.map(function(z){return z===100?L-5:L*(z/100)})}(S,h),T=oo(),I=sl(),w=hn(I,S),p=hn(T,S);if(l=w>l?w:l,c=p<c?p:c,!(o.length>=h.length)){var $=f===I,O="up";$?O="initial":f<=I&&(O="down");var _=g,k=h;(O==="up"||$)&&(_=g.slice().reverse(),k=h.slice().reverse());var M=k.reduce(function(L,U,z){var R=_[z];return u.includes(U)&&I<=R&&(u=u.filter(function(K){return K!==U}),L.singleFunction=U),O==="down"&&!o.includes(U)&&I>=R&&U>i?(s.push(U),L.callbacks=L.callbacks.concat(U),L):O==="up"&&!o.includes(U)&&I<=R&&U<=w?(L.foundFunc=[U],L):($&&I>=R&&L.foundFunc.length===0&&(L.foundFunc=[U]),!s.includes(U)&&I>=R&&(s.push(U),L.singleFunction?u.push(U):L.singleFunction=U),L)},{foundFunc:[],singleFunction:null,callbacks:[],direction:O});if(f=I,O==="down"&&M.callbacks&&M.callbacks.forEach(function(L){ce(e[L])&&(e[L]({trigger:L,direction:O,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(L))}),M.singleFunction){var F=M.singleFunction,J=M.direction;ce(e[F])&&e[F]({trigger:F,direction:J,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(F)}}},500);return window.addEventListener("scroll",v),function(){return window.removeEventListener("scroll",v)}}function oo(){return Q?document.body.scrollTop||document.documentElement.scrollTop:0}function iE(){return Q?window.innerHeight||document.documentElement.clientHeight:0}function sl(){return Math.round(oo()+iE())}function cl(){if(!Q)return 0;var e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}function hn(e,t){return Math.round(e/t*100)}var ul="EventListener";function oE(e){return function(t,r,n,a){var i=n||no,o=a||!1;if(!Q)return i;var s=Dn(r),u=Dn(t,!0);if(!u.length)throw new Error("noElements");if(!s.length)throw new Error("noEvent");var f=[];return function l(c){c&&(f=[]);for(var d=c?"add"+ul:"remove"+ul,h=0;h<u.length;h++){var v=u[h];f[h]=c?o&&o.once?sE(i):i:f[h]||i;for(var S=0;S<s.length;S++)v[d]?v["on"+s[S]]=c?f[h]:null:v[d](s[S],f[h],o)}return l.bind(null,!c)}(e)}}function Dn(e,t){if(Je(e))return t?Dn(document.querySelectorAll(e)):(r=e).split(r.indexOf(",")>-1?",":" ").map(function(o){return o.trim()});var r;if(NodeList.prototype.isPrototypeOf(e)){for(var n=[],a=e.length>>>0;a--;)n[a]=e[a];return n}var i=fP(e);return t?i.map(function(o){return Je(o)?Dn(o,!0):o}).flat():i}function sE(e,t){var r;return function(){return e&&(r=e.apply(this,arguments),e=null),r}}var $i=oE("Event");function fh(e,t){return Q&&ce(window[e])?(r=window[e],n=t,(a=window)===void 0&&(a=null),ce(r)?function(){r.apply(a,arguments),n.apply(a,arguments)}:n):window[e]=t;var r,n,a}fh.bind(null,"onerror");fh.bind(null,"onload");var dh=typeof window>"u",ll="hidden";function cE(e){if(dh)return!1;var t=uE(),r="".concat(t.replace(/[H|h]idden/,""),"visibilitychange"),n=function(){return e(!!document[t])},a=function(){return document.addEventListener(r,n)};return a(),function(){return document.removeEventListener(r,n),a}}function uE(){var e=["webkit","moz","ms","o"];return dh||ll in document?ll:e.reduce(function(t,r){var n=r+"Hidden";return!t&&n in document?n:t},null)}var lE=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function fE(e,t){t===void 0&&(t={});var r=function(o,s){var u=this,f=!1;return function(l){f||(o.call(u,l),f=!0,setTimeout(function(){return f=!1},s))}}(e,t.throttle||1e4),n=[];function a(){var o=cE(function(s){s||r({type:"tabVisible"})});return n=[o].concat(lE.map(function(s){return $i(document,s,r)})).concat($i(window,"load",r)).concat($i(window,"scroll",r,{capture:!0,passive:!0})),i}function i(){n.map(function(o){return o()})}return a(),function(){return i(),a}}function dE(e){var t,r,n=e.onIdle,a=e.onWakeUp,i=e.onHeartbeat,o=e.timeout,s=o===void 0?1e4:o,u=e.throttle,f=u===void 0?2e3:u,l=!1,c=!1,d=new Date,h=function(){return clearTimeout(t)};function v(g){h(),i&&!l&&i(lr(d),g),a&&l&&(l=!1,a(lr(r),g),d=new Date),t=setTimeout(function(){l=!0,n&&(r=new Date,n(lr(d),g))},s)}var S=fE(v,{throttle:f});return{disable:function(){c=!0,l=!1,h();var g=S();return function(){return c=!1,d=new Date,v({type:"load"}),g()}},getStatus:function(){return{isIdle:l,isDisabled:c,active:l?0:lr(d,c),idle:l?lr(r,c):0}}}}function lr(e,t){return t?0:Math.round((new Date-e)/1e3)}const fl=5e3;class hE{constructor(t){de(this,"element");de(this,"isInViewport",!1);de(this,"isAwake",!1);de(this,"isFlushing");de(this,"observer");de(this,"lastEventAt",Date.now());de(this,"registeredView",!1);de(this,"viewCallback");de(this,"activeDurationCallback");de(this,"idleDurationCallback");de(this,"scrollCallback");this.element=t.element,this.viewCallback=t.viewCallback,this.activeDurationCallback=t.activeDurationCallback,this.idleDurationCallback=t.idleDurationCallback,this.scrollCallback=t.scrollCallback,this.observer=new IntersectionObserver(r=>{r.forEach(n=>{this.handleInViewPort(n.isIntersecting)})},{threshold:0}),this.observer.observe(this.element),dE({onIdle:r=>this.handleAwake(!1,r),onWakeUp:r=>this.handleAwake(!0,r),timeout:fl}),aE({25:this.handleScroll.bind(this),50:this.handleScroll.bind(this),75:this.handleScroll.bind(this),90:this.handleScroll.bind(this),100:this.handleScroll.bind(this)})}flush(){this.isFlushing=!0,this.handleAwake(!this.isAwake)}handleInViewPort(t){t?(this.isAwake=!0,this.trackInViewport()):this.handleAwake(!1),this.isInViewport=t}handleAwake(t,r=Math.round((Date.now()-this.lastEventAt)/1e3)){this.isAwake=t,this.lastEventAt=t?Date.now()-r*fl:Date.now(),this.isInViewport&&this.trackAwake(t,r)}handleScroll(t){this.scrollCallback&&this.scrollCallback(t)}handleVisibilityChange(){this.isAwake=!1;const t=Math.round((Date.now()-this.lastEventAt)/1e3);t>1&&(this.lastEventAt=Date.now(),this.trackAwake(!1,t))}trackAwake(t,r){!t&&this.activeDurationCallback&&this.activeDurationCallback(r,this.isFlushing,this.lastEventAt),t&&this.idleDurationCallback&&this.idleDurationCallback(r,this.isFlushing,this.lastEventAt)}trackInViewport(){this.registeredView||(this.registeredView=!0,this.viewCallback&&this.viewCallback())}}const dl="sesamy_session_id";function vE(){let e=sessionStorage.getItem(dl);return e||(e=Math.random().toString(36).slice(2,9),sessionStorage.setItem(dl,e)),e}let hh=!1,so,hl,Mn;const vh=new Map;function pE({clientId:e,enabled:t=!0,environment:r}){if(so=e,hl=t,Mn=`${Fe("logs",r)}/events`,!hl)return;window.addEventListener("beforeunload",()=>{mh.forEach((a,i)=>{a.bind(i)()}),gE()}),window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&vh.forEach((a,i)=>{a.bind(i)()})}),nE();const n=new hE({element:document.body,viewCallback:()=>{Me.page()},activeDurationCallback:(a,i,o)=>{Me.track("activeDuration",{duration:a,durationStart:o,flushing:i})},idleDurationCallback:(a,i,o)=>{Me.track("idleDuration",{duration:a,durationStart:o,flushing:i})},scrollCallback:a=>{Me.track("scroll",{scroll:a.scrollMax})}});yE(document.body,()=>{n.flush()}),wE(document.body,()=>{n.handleVisibilityChange()}),window.addEventListener(ke.AUTHENTICATED,async a=>{const i=a;await Me.identify(i.detail.sub)}),window.addEventListener(ke.LOGOUT,async()=>{await Me.track("logout",{}),os.flush(),await Me.reset()})}function ph(e){return JSON.stringify(e.map(t=>({...t,clientId:so,requestId:Math.random().toString(36).slice(2,9),sessionId:vE(),timestamp:new Date().toISOString(),version:Qo,event:t.event,context:{page:{url:window.location.hostname,path:window.location.pathname,title:document.title,search:window.location.search,referrer:document.referrer},locale:navigator.language,library:Hd,userAgent:navigator.userAgent,clientId:so}})))}const os=QP(async e=>{if(e.length>0){const t=ph(e);hh?navigator.sendBeacon(Mn,t):(await fetch(Mn,{method:"POST",body:t,headers:{"Content-Type":"text/plain"}})).ok}},{max:10,interval:3e3});function Ii(e){var t;if(e.anonymousId)if((t=e.properties)!=null&&t.flushing){const r={...e};delete r.properties.flushing,navigator.sendBeacon(Mn,ph([r]))}else os.push(e)}const Me=qP({app:Hd,version:Qo,plugins:[{name:"custom-analytics-plugin",page:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;Ii({anonymousId:r,userId:n,properties:t,event:a,type:"page"})},track:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;Ii({anonymousId:r,userId:n,properties:t,event:a,type:"track"})},identify:({payload:e})=>{const{properties:t,anonymousId:r,userId:n}=e;Ii({anonymousId:r,userId:n,properties:t,type:"identify"})}}]});function mE(e,t){Me.track(e,t)}function gE(){return hh=!0,os.flush()}const mh=new Map;function yE(e,t){mh.set(e,t)}function wE(e,t){vh.set(e,t)}const bE=["AdHeader","AdContainer","AD_Top","homead","ad-lead"];function SE(){return new Promise(e=>{const t=bE.map(r=>{const n=document.createElement("div");return n.innerHTML=" ",n.id=r,n.style.position="absolute",document.body.appendChild(n),n});window.setTimeout(()=>{const r=!t.every(n=>{const a=document.querySelector(`#${n.id}`);return a==null?void 0:a.offsetParent});t.forEach(n=>n.remove()),e(r)},100)})}function $E(){const e=navigator.userAgent.toLowerCase(),t=[{name:"Facebook",regex:/fbav|fban/i},{name:"LinkedIn",regex:/linkedin/i},{name:"Instagram",regex:/instagram/i},{name:"Gmail",regex:/gmail/i},{name:"Twitter",regex:/twitter/i},{name:"WeChat",regex:/micromessenger/i},{name:"Line",regex:/line/i},{name:"Snapchat",regex:/snapchat/i},{name:"Pinterest",regex:/pinterest/i},{name:"Kakao",regex:/kakaotalk/i},{name:"Skype",regex:/skype/i},{name:"WhatsApp",regex:/whatsapp/i}];for(const r of t)if(r.regex.test(e))return{isInAppBrowser:!0,browserName:r.name};return/; wv\)/.test(e)?{isInAppBrowser:!0,browserName:"Unknown In-App Browser"}:{isInAppBrowser:!1,browserName:null}}function IE(e){const{createCheckout:t,getCheckout:r,updateCheckout:n,getEntitlement:a,getEntitlements:i,getEntitlementAccess:o,getFulfillments:s,getSubscriptions:u,getContract:f,getContracts:l,cancelContract:c,getBill:d,getBills:h,getTransaction:v,getTransactions:S,getProfile:g,updateProfile:T,getTags:I,deleteTag:w,setTag:p,getUserMetadata:$,listUserMetadata:O,setUserMetadata:_,deleteUserMetadata:k,getTally:M,getTallies:F,pushTally:J,deleteTally:L,getProduct:U,getPaymentIssues:z,isSpotifyLinked:R,unlinkSpotify:K,linkSpotify:q,autoOnboardProduct:xe,openHostedAccountPage:m,generateLink:b}=tP(e),E={auth:{getUser:g,isAuthenticated:Or,loginWithRedirect:Xo,logout:xd,setToken:Dd},checkouts:{get:r,create:t,update:n},profile:{get:g,update:T,openHostedAccountPage:m,isSpotifyLinked:R,unlinkSpotify:K},analytics:{track:mE},tags:{list:I,set:p,delete:w},entitlements:{get:a,list:i,access:o,signedLinks:qo},fulfillments:{list:s},contracts:{get:f,list:l,cancel:c},bills:{get:d,list:h},userMetadata:{get:$,list:O,set:_,delete:k},tallies:{get:M,list:F,push:J,delete:L},subscriptions:{list:u},transactions:{get:v,list:S},products:{get:U,autoOnboard:xe,linkSpotify:q},browser:{detectAdblock:SE,isInAppBrowser:$E},getVersion:TE,getPaymentIssues:z,generateLink:b,clearCache:Te};return e.namespace&&(window[e.namespace]=E),E}function TE(){return Qo}function PE(e,t){e.style.position="relative",e.style.height="200px",e.style.overflow="hidden";let n=0;const a=Array.from(e.children);for(const o of a){const s=o.offsetHeight;n+s>200?o.remove():n+=s}const i=document.createElement("style");i.innerHTML=`
|
|
7
7
|
${t.selector}::before {
|
|
8
8
|
content: '';
|
package/dist/sesamy-js.iife.js
CHANGED
|
@@ -2,7 +2,7 @@ var sesamyJs=function(Ue){"use strict";var UE=Object.defineProperty;var DE=(Ue,d
|
|
|
2
2
|
`,10)+1,o=a.substring(i)+(n?"//# sourceMappingURL="+n:""),s=new Blob([o],{type:"application/javascript"});return URL.createObjectURL(s)}var xf,Uf,Df,jo,ET=(xf="Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscil7c3VwZXIociksdGhpcy5lcnJvcj10LHRoaXMuZXJyb3JfZGVzY3JpcHRpb249cixPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxlLnByb3RvdHlwZSl9c3RhdGljIGZyb21QYXlsb2FkKHtlcnJvcjp0LGVycm9yX2Rlc2NyaXB0aW9uOnJ9KXtyZXR1cm4gbmV3IGUodCxyKX19Y2xhc3MgdCBleHRlbmRzIGV7Y29uc3RydWN0b3IoZSxzKXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIixgTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyR7cihlLFsiZGVmYXVsdCJdKX0nLCBzY29wZTogJyR7cihzKX0nKWApLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXMsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsdC5wcm90b3R5cGUpfX1mdW5jdGlvbiByKGUsdD1bXSl7cmV0dXJuIGUmJiF0LmluY2x1ZGVzKGUpP2U6IiJ9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO2NvbnN0IHM9ZT0+e3ZhcntjbGllbnRJZDp0fT1lLHI9ZnVuY3Rpb24oZSx0KXt2YXIgcj17fTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmdC5pbmRleE9mKHMpPDAmJihyW3NdPWVbc10pO2lmKG51bGwhPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz0wO2ZvcihzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7bzxzLmxlbmd0aDtvKyspdC5pbmRleE9mKHNbb10pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHNbb10pJiYocltzW29dXT1lW3Nbb11dKX1yZXR1cm4gcn0oZSxbImNsaWVudElkIl0pO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKChlPT5PYmplY3Qua2V5cyhlKS5maWx0ZXIoKHQ9PnZvaWQgMCE9PWVbdF0pKS5yZWR1Y2UoKCh0LHIpPT5PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse1tyXTplW3JdfSkpLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IG89e307Y29uc3Qgbj0oZSx0KT0+YCR7ZX18JHt0fWA7YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGFzeW5jKHtkYXRhOnt0aW1lb3V0OmUsYXV0aDpyLGZldGNoVXJsOmksZmV0Y2hPcHRpb25zOmMsdXNlRm9ybURhdGE6YX0scG9ydHM6W3BdfSk9PntsZXQgZjtjb25zdHthdWRpZW5jZTp1LHNjb3BlOmx9PXJ8fHt9O3RyeXtjb25zdCByPWE/KGU9Pntjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMoZSkscj17fTtyZXR1cm4gdC5mb3JFYWNoKCgoZSx0KT0+e3JbdF09ZX0pKSxyfSkoYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7aWYoIXIucmVmcmVzaF90b2tlbiYmInJlZnJlc2hfdG9rZW4iPT09ci5ncmFudF90eXBlKXtjb25zdCBlPSgoZSx0KT0+b1tuKGUsdCldKSh1LGwpO2lmKCFlKXRocm93IG5ldyB0KHUsbCk7Yy5ib2R5PWE/cyhPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKTpKU09OLnN0cmluZ2lmeShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKX1sZXQgaCxnOyJmdW5jdGlvbiI9PXR5cGVvZiBBYm9ydENvbnRyb2xsZXImJihoPW5ldyBBYm9ydENvbnRyb2xsZXIsYy5zaWduYWw9aC5zaWduYWwpO3RyeXtnPWF3YWl0IFByb21pc2UucmFjZShbKGQ9ZSxuZXcgUHJvbWlzZSgoZT0+c2V0VGltZW91dChlLGQpKSkpLGZldGNoKGksT2JqZWN0LmFzc2lnbih7fSxjKSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBwLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighZylyZXR1cm4gaCYmaC5hYm9ydCgpLHZvaWQgcC5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtmPWF3YWl0IGcuanNvbigpLGYucmVmcmVzaF90b2tlbj8oKChlLHQscik9PntvW24odCxyKV09ZX0pKGYucmVmcmVzaF90b2tlbix1LGwpLGRlbGV0ZSBmLnJlZnJlc2hfdG9rZW4pOigoZSx0KT0+e2RlbGV0ZSBvW24oZSx0KV19KSh1LGwpLHAucG9zdE1lc3NhZ2Uoe29rOmcub2ssanNvbjpmfSl9Y2F0Y2goZSl7cC5wb3N0TWVzc2FnZSh7b2s6ITEsanNvbjp7ZXJyb3I6ZS5lcnJvcixlcnJvcl9kZXNjcmlwdGlvbjplLm1lc3NhZ2V9fSl9dmFyIGR9KSl9KCk7Cgo=",Uf=null,Df=!1,function(e){return jo=jo||PT(xf,Uf,Df),new Worker(jo,e)});const Lo={};let OT=class{constructor(t,r){this.cache=t,this.clientId=r,this.manifestKey=this.createManifestKeyFrom(this.clientId)}async add(t){var r;const n=new Set(((r=await this.cache.get(this.manifestKey))===null||r===void 0?void 0:r.keys)||[]);n.add(t),await this.cache.set(this.manifestKey,{keys:[...n]})}async remove(t){const r=await this.cache.get(this.manifestKey);if(r){const n=new Set(r.keys);return n.delete(t),n.size>0?await this.cache.set(this.manifestKey,{keys:[...n]}):await this.cache.remove(this.manifestKey)}}get(){return this.cache.get(this.manifestKey)}clear(){return this.cache.remove(this.manifestKey)}createManifestKeyFrom(t){return`@@auth0spajs@@::${t}`}};const kT={memory:()=>new jf().enclosedCache,localstorage:()=>new gT},Mf=e=>kT[e],Ff=e=>{const{openUrl:t,onRedirect:r}=e,n=xe(e,["openUrl","onRedirect"]);return Object.assign(Object.assign({},n),{openUrl:t===!1||t?t:r})},No=new oT;let _T=class{constructor(t){let r,n;if(this.userCache=new jf().enclosedCache,this.defaultOptions={authorizationParams:{scope:"openid profile email"},useRefreshTokensFallback:!1,useFormData:!0},this._releaseLockOnPageHide=async()=>{await No.releaseLock("auth0.lock.getTokenSilently"),window.removeEventListener("pagehide",this._releaseLockOnPageHide)},this.options=Object.assign(Object.assign(Object.assign({},this.defaultOptions),t),{authorizationParams:Object.assign(Object.assign({},this.defaultOptions.authorizationParams),t.authorizationParams)}),typeof window<"u"&&(()=>{if(!Kn())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(Kn().subtle===void 0)throw new Error(`
|
|
3
3
|
auth0-spa-js must run on a secure origin. See https://github.com/auth0/auth0-spa-js/blob/main/FAQ.md#why-do-i-get-auth0-spa-js-must-run-on-a-secure-origin for more information.
|
|
4
4
|
`)})(),t.cache&&t.cacheLocation&&console.warn("Both `cache` and `cacheLocation` options have been specified in the Auth0Client configuration; ignoring `cacheLocation` and using `cache`."),t.cache)n=t.cache;else{if(r=t.cacheLocation||"memory",!Mf(r))throw new Error(`Invalid cache location "${r}"`);n=Mf(r)()}this.httpTimeoutMs=t.httpTimeoutInSeconds?1e3*t.httpTimeoutInSeconds:1e4,this.cookieStorage=t.legacySameSiteCookie===!1?Ht:IT,this.orgHintCookieName=`auth0.${this.options.clientId}.organization_hint`,this.isAuthenticatedCookieName=(o=>`auth0.${o}.is.authenticated`)(this.options.clientId),this.sessionCheckExpiryDays=t.sessionCheckExpiryDays||1;const a=t.useCookiesForTransactions?this.cookieStorage:TT;var i;this.scope=Wn("openid",this.options.authorizationParams.scope,this.options.useRefreshTokens?"offline_access":""),this.transactionManager=new wT(a,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||kf,this.cacheManager=new yT(n,n.allKeys?void 0:new OT(n,this.options.clientId),this.nowProvider),this.domainUrl=(i=this.options.domain,/^https?:\/\//.test(i)?i:`https://${i}`),this.tokenIssuer=((o,s)=>o?o.startsWith("https://")?o:`https://${o}/`:`${s}/`)(this.options.issuer,this.domainUrl),typeof window<"u"&&window.Worker&&this.options.useRefreshTokens&&r==="memory"&&(this.options.workerUrl?this.worker=new Worker(this.options.workerUrl):this.worker=new ET)}_url(t){const r=encodeURIComponent(btoa(JSON.stringify(this.options.auth0Client||Of)));return`${this.domainUrl}${t}&auth0Client=${r}`}_authorizeUrl(t){return this._url(`/authorize?${Ao(t)}`)}async _verifyIdToken(t,r,n){const a=await this.nowProvider();return ST({iss:this.tokenIssuer,aud:this.options.clientId,id_token:t,nonce:r,organization:n,leeway:this.options.leeway,max_age:(i=this.options.authorizationParams.max_age,typeof i!="string"?i:parseInt(i,10)||void 0),now:a});var i}_processOrgHint(t){t?this.cookieStorage.save(this.orgHintCookieName,t,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}):this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain})}async _prepareAuthorizeUrl(t,r,n){const a=Cf(Co()),i=Cf(Co()),o=Co(),s=(l=>{const c=new Uint8Array(l);return(d=>{const h={"+":"-","/":"_","=":""};return d.replace(/[+/=]/g,v=>h[v])})(window.btoa(String.fromCharCode(...Array.from(c))))})(await(async l=>await Kn().subtle.digest({name:"SHA-256"},new TextEncoder().encode(l)))(o)),u=((l,c,d,h,v,S,g,T)=>Object.assign(Object.assign(Object.assign({client_id:l.clientId},l.authorizationParams),d),{scope:Wn(c,d.scope),response_type:"code",response_mode:T||"query",state:h,nonce:v,redirect_uri:g||l.authorizationParams.redirect_uri,code_challenge:S,code_challenge_method:"S256"}))(this.options,this.scope,t,a,i,s,t.redirect_uri||this.options.authorizationParams.redirect_uri||n,r==null?void 0:r.response_mode),f=this._authorizeUrl(u);return{nonce:i,code_verifier:o,scope:u.scope,audience:u.audience||"default",redirect_uri:u.redirect_uri,state:a,url:f}}async loginWithPopup(t,r){var n;if(t=t||{},!(r=r||{}).popup&&(r.popup=(s=>{const u=window.screenX+(window.innerWidth-400)/2,f=window.screenY+(window.innerHeight-600)/2;return window.open(s,"auth0:authorize:popup",`left=${u},top=${f},width=400,height=600,resizable,scrollbars=yes,status=1`)})(""),!r.popup))throw new Error("Unable to open a popup for loginWithPopup - window.open returned `null`");const a=await this._prepareAuthorizeUrl(t.authorizationParams||{},{response_mode:"web_message"},window.location.origin);r.popup.location.href=a.url;const i=await(s=>new Promise((u,f)=>{let l;const c=setInterval(()=>{s.popup&&s.popup.closed&&(clearInterval(c),clearTimeout(d),window.removeEventListener("message",l,!1),f(new lT(s.popup)))},1e3),d=setTimeout(()=>{clearInterval(c),f(new uT(s.popup)),window.removeEventListener("message",l,!1)},1e3*(s.timeoutInSeconds||60));l=function(h){if(h.data&&h.data.type==="authorization_response"){if(clearTimeout(d),clearInterval(c),window.removeEventListener("message",l,!1),s.popup.close(),h.data.response.error)return f(le.fromPayload(h.data.response));u(h.data.response)}},window.addEventListener("message",l)}))(Object.assign(Object.assign({},r),{timeoutInSeconds:r.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}));if(a.state!==i.state)throw new le("state_mismatch","Invalid state");const o=((n=t.authorizationParams)===null||n===void 0?void 0:n.organization)||this.options.authorizationParams.organization;await this._requestToken({audience:a.audience,scope:a.scope,code_verifier:a.code_verifier,grant_type:"authorization_code",code:i.code,redirect_uri:a.redirect_uri},{nonceIn:a.nonce,organization:o})}async getUser(){var t;const r=await this._getIdTokenFromCache();return(t=r==null?void 0:r.decodedToken)===null||t===void 0?void 0:t.user}async getIdTokenClaims(){var t;const r=await this._getIdTokenFromCache();return(t=r==null?void 0:r.decodedToken)===null||t===void 0?void 0:t.claims}async loginWithRedirect(t={}){var r;const n=Ff(t),{openUrl:a,fragment:i,appState:o}=n,s=xe(n,["openUrl","fragment","appState"]),u=((r=s.authorizationParams)===null||r===void 0?void 0:r.organization)||this.options.authorizationParams.organization,f=await this._prepareAuthorizeUrl(s.authorizationParams||{}),{url:l}=f,c=xe(f,["url"]);this.transactionManager.create(Object.assign(Object.assign(Object.assign({},c),{appState:o}),u&&{organization:u}));const d=i?`${l}#${i}`:l;a?await a(d):window.location.assign(d)}async handleRedirectCallback(t=window.location.href){const r=t.split("?").slice(1);if(r.length===0)throw new Error("There are no query params available for parsing.");const{state:n,code:a,error:i,error_description:o}=(c=>{c.indexOf("#")>-1&&(c=c.substring(0,c.indexOf("#")));const d=new URLSearchParams(c);return{state:d.get("state"),code:d.get("code")||void 0,error:d.get("error")||void 0,error_description:d.get("error_description")||void 0}})(r.join("")),s=this.transactionManager.get();if(!s)throw new le("missing_transaction","Invalid state");if(this.transactionManager.remove(),i)throw new cT(i,o||i,n,s.appState);if(!s.code_verifier||s.state&&s.state!==n)throw new le("state_mismatch","Invalid state");const u=s.organization,f=s.nonce,l=s.redirect_uri;return await this._requestToken(Object.assign({audience:s.audience,scope:s.scope,code_verifier:s.code_verifier,grant_type:"authorization_code",code:a},l?{redirect_uri:l}:{}),{nonceIn:f,organization:u}),{appState:s.appState}}async checkSession(t){if(!this.cookieStorage.get(this.isAuthenticatedCookieName)){if(!this.cookieStorage.get("auth0.is.authenticated"))return;this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove("auth0.is.authenticated")}try{await this.getTokenSilently(t)}catch{}}async getTokenSilently(t={}){var r;const n=Object.assign(Object.assign({cacheMode:"on"},t),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),t.authorizationParams),{scope:Wn(this.scope,(r=t.authorizationParams)===null||r===void 0?void 0:r.scope)})}),a=await((i,o)=>{let s=Lo[o];return s||(s=i().finally(()=>{delete Lo[o],s=null}),Lo[o]=s),s})(()=>this._getTokenSilently(n),`${this.options.clientId}::${n.authorizationParams.audience}::${n.authorizationParams.scope}`);return t.detailedResponse?a:a==null?void 0:a.access_token}async _getTokenSilently(t){const{cacheMode:r}=t,n=xe(t,["cacheMode"]);if(r!=="off"){const a=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||"default",clientId:this.options.clientId});if(a)return a}if(r!=="cache-only"){if(!await(async(a,i=3)=>{for(let o=0;o<i;o++)if(await a())return!0;return!1})(()=>No.acquireLock("auth0.lock.getTokenSilently",5e3),10))throw new Ro;try{if(window.addEventListener("pagehide",this._releaseLockOnPageHide),r!=="off"){const f=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||"default",clientId:this.options.clientId});if(f)return f}const a=this.options.useRefreshTokens?await this._getTokenUsingRefreshToken(n):await this._getTokenFromIFrame(n),{id_token:i,access_token:o,oauthTokenScope:s,expires_in:u}=a;return Object.assign(Object.assign({id_token:i,access_token:o},s?{scope:s}:null),{expires_in:u})}finally{await No.releaseLock("auth0.lock.getTokenSilently"),window.removeEventListener("pagehide",this._releaseLockOnPageHide)}}}async getTokenWithPopup(t={},r={}){var n;const a=Object.assign(Object.assign({},t),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),t.authorizationParams),{scope:Wn(this.scope,(n=t.authorizationParams)===null||n===void 0?void 0:n.scope)})});return r=Object.assign(Object.assign({},sT),r),await this.loginWithPopup(a,r),(await this.cacheManager.get(new dt({scope:a.authorizationParams.scope,audience:a.authorizationParams.audience||"default",clientId:this.options.clientId}))).access_token}async isAuthenticated(){return!!await this.getUser()}_buildLogoutUrl(t){t.clientId!==null?t.clientId=t.clientId||this.options.clientId:delete t.clientId;const r=t.logoutParams||{},{federated:n}=r,a=xe(r,["federated"]),i=n?"&federated":"";return this._url(`/v2/logout?${Ao(Object.assign({clientId:t.clientId},a))}`)+i}async logout(t={}){const r=Ff(t),{openUrl:n}=r,a=xe(r,["openUrl"]);t.clientId===null?await this.cacheManager.clear():await this.cacheManager.clear(t.clientId||this.options.clientId),this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(this.isAuthenticatedCookieName,{cookieDomain:this.options.cookieDomain}),this.userCache.remove("@@user@@");const i=this._buildLogoutUrl(a);n?await n(i):n!==!1&&window.location.assign(i)}async _getTokenFromIFrame(t){const r=Object.assign(Object.assign({},t.authorizationParams),{prompt:"none"}),n=this.cookieStorage.get(this.orgHintCookieName);n&&!r.organization&&(r.organization=n);const{url:a,state:i,nonce:o,code_verifier:s,redirect_uri:u,scope:f,audience:l}=await this._prepareAuthorizeUrl(r,{response_mode:"web_message"},window.location.origin);try{if(window.crossOriginIsolated)throw new le("login_required","The application is running in a Cross-Origin Isolated context, silently retrieving a token without refresh token is not possible.");const c=t.timeoutInSeconds||this.options.authorizeTimeoutInSeconds,d=await((v,S,g=60)=>new Promise((T,I)=>{const w=window.document.createElement("iframe");w.setAttribute("width","0"),w.setAttribute("height","0"),w.style.display="none";const p=()=>{window.document.body.contains(w)&&(window.document.body.removeChild(w),window.removeEventListener("message",$,!1))};let $;const O=setTimeout(()=>{I(new Ro),p()},1e3*g);$=function(_){if(_.origin!=S||!_.data||_.data.type!=="authorization_response")return;const k=_.source;k&&k.close(),_.data.response.error?I(le.fromPayload(_.data.response)):T(_.data.response),clearTimeout(O),window.removeEventListener("message",$,!1),setTimeout(p,2e3)},window.addEventListener("message",$,!1),window.document.body.appendChild(w),w.setAttribute("src",v)}))(a,this.domainUrl,c);if(i!==d.state)throw new le("state_mismatch","Invalid state");const h=await this._requestToken(Object.assign(Object.assign({},t.authorizationParams),{code_verifier:s,code:d.code,grant_type:"authorization_code",redirect_uri:u,timeout:t.authorizationParams.timeout||this.httpTimeoutMs}),{nonceIn:o,organization:r.organization});return Object.assign(Object.assign({},h),{scope:f,oauthTokenScope:h.scope,audience:l})}catch(c){throw c.error==="login_required"&&this.logout({openUrl:!1}),c}}async _getTokenUsingRefreshToken(t){const r=await this.cacheManager.get(new dt({scope:t.authorizationParams.scope,audience:t.authorizationParams.audience||"default",clientId:this.options.clientId}));if(!(r&&r.refresh_token||this.worker)){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(t);throw new _f(t.authorizationParams.audience||"default",t.authorizationParams.scope)}const n=t.authorizationParams.redirect_uri||this.options.authorizationParams.redirect_uri||window.location.origin,a=typeof t.timeoutInSeconds=="number"?1e3*t.timeoutInSeconds:null;try{const i=await this._requestToken(Object.assign(Object.assign(Object.assign({},t.authorizationParams),{grant_type:"refresh_token",refresh_token:r&&r.refresh_token,redirect_uri:n}),a&&{timeout:a}));return Object.assign(Object.assign({},i),{scope:t.authorizationParams.scope,oauthTokenScope:i.scope,audience:t.authorizationParams.audience||"default"})}catch(i){if((i.message.indexOf("Missing Refresh Token")>-1||i.message&&i.message.indexOf("invalid refresh token")>-1)&&this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(t);throw i}}async _saveEntryInCache(t){const{id_token:r,decodedToken:n}=t,a=xe(t,["id_token","decodedToken"]);this.userCache.set("@@user@@",{id_token:r,decodedToken:n}),await this.cacheManager.setIdToken(this.options.clientId,t.id_token,t.decodedToken),await this.cacheManager.set(a)}async _getIdTokenFromCache(){const t=this.options.authorizationParams.audience||"default",r=await this.cacheManager.getIdToken(new dt({clientId:this.options.clientId,audience:t,scope:this.scope})),n=this.userCache.get("@@user@@");return r&&r.id_token===(n==null?void 0:n.id_token)?n:(this.userCache.set("@@user@@",r),r)}async _getEntryFromCache({scope:t,audience:r,clientId:n}){const a=await this.cacheManager.get(new dt({scope:t,audience:r,clientId:n}),60);if(a&&a.access_token){const{access_token:i,oauthTokenScope:o,expires_in:s}=a,u=await this._getIdTokenFromCache();return u&&Object.assign(Object.assign({id_token:u.id_token,access_token:i},o?{scope:o}:null),{expires_in:s})}}async _requestToken(t,r){const{nonceIn:n,organization:a}=r||{},i=await mT(Object.assign({baseUrl:this.domainUrl,client_id:this.options.clientId,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,timeout:this.httpTimeoutMs},t),this.worker),o=await this._verifyIdToken(i.id_token,n,a);return await this._saveEntryInCache(Object.assign(Object.assign(Object.assign(Object.assign({},i),{decodedToken:o,scope:t.scope,audience:t.audience||"default"}),i.scope?{oauthTokenScope:i.scope}:null),{client_id:this.options.clientId})),this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this._processOrgHint(a||o.claims.org_id),Object.assign(Object.assign({},i),{decodedToken:o})}};async function RT(e){const t=new _T(e);return await t.checkSession(),t}var Re=(e=>(e.READY="sesamyJsReady",e.AUTHENTICATED="sesamyJsAuthenticated",e.LOGOUT="sesamyJsLogout",e.CLEAR_CACHE="sesamyJsClearCache",e.USER_ATTRIBUTE_CHANGED="sesamyUserAttributeChanged",e.PURCHASE="sesamyJsPurchase",e))(Re||{});const CT="sesamy.com",AT="sesamy.dev",jT="https://sesa.my",xo="sesamyCacheTimestamp";function Be(e,t){return`https://${e}.${t==="dev"?AT:CT}`}let fe,Bf,zf=!1;const Gt="sesamyAccessToken",Uo="sesamyRefreshToken";async function Rr(){return new Promise((r,n)=>{let a=0;const i=()=>{zf?r(!0):a>=5e3?n(new Error("Initialization failed: Timeout")):(a+=100,setTimeout(i,100))};i()})}async function LT(e){if(!e)return null;const t=localStorage.getItem(Uo);if(!t)throw new Error("No refresh token available");const r=new URLSearchParams;r.set("client_id",e.iss),r.set("refresh_token",t),r.set("grant_type","refresh_token");const n=new URL(e.iss);n.pathname="/oauth/token",n.searchParams.set("user_id",e.sub);try{const a=await fetch(n.href,{body:r.toString(),method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"}});if(!a.ok)throw localStorage.removeItem(Uo),new Error("Renew token failed");const i=await a.json();return localStorage.setItem(Uo,i.refresh_token),localStorage.setItem(Gt,i.access_token),i.access_token}catch{Gf()}}async function Do(){const e=localStorage.getItem(Gt);if(!e)return null;const t=Kf(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3){const r=await LT(t);if(r)return r;localStorage.removeItem(Gt)}return e}function Hf(e){try{const t=new URL(e).hostname,r=t.split(".");return r.length>1?r.slice(-2).join("."):t}catch{return null}}async function NT(e){if(e.enabled===!1)return;Bf=e.organization;const t={domain:Be("token",e.environment),clientId:e.clientId,useCookiesForTransactions:!0};if(Hf(window.location.href)!==Hf(Be("auth",e.environment))&&(t.cacheLocation="localstorage",t.useRefreshTokens=!0),fe=await RT(t),window.location.search.includes("code="))try{await fe.handleRedirectCallback();const r=await fe.getUser();Ye(Re.AUTHENTICATED,r);const n=new URL(location.href),a=n.searchParams;a.delete("code"),a.delete("state"),n.search=a.toString(),window.history.replaceState({},document.title,n.toString())}catch(r){console.error(r)}zf=!0}async function Cr(){return await Rr(),await Do()?!0:fe?fe.isAuthenticated():!1}async function xT(){return await Rr(),await Do()?{sub:"local",name:"Local User"}:fe?fe.getUser():null}async function Mo(e){if(await Rr(),localStorage.removeItem(Gt),!fe)throw new Error("Auth0 client not initialized");const t=(e==null?void 0:e.authorizationParams)||{};return fe.loginWithRedirect({...e,authorizationParams:{organization:Bf,redirect_uri:window.location.href,...t}})}async function Ar(e=!0){await Rr();const t=await Do();if(t)return t;try{return fe?await fe.getTokenSilently():null}catch(r){if(e)throw r;return null}}async function Gf(e={}){if(await Rr(),localStorage.removeItem(Gt),Ye(Re.LOGOUT,{}),!!fe)return fe.logout({...e,logoutParams:{returnTo:window.location.href,...e.logoutParams}})}function Kf(e){const t=e.split(".");if(t.length!==3)return null;const n=t[1].replace(/-/g,"+").replace(/_/g,"/"),a=decodeURIComponent(atob(n).split("").map(function(i){return"%"+("00"+i.charCodeAt(0).toString(16)).slice(-2)}).join(""));return JSON.parse(a)}async function Wf(e){const t=Kf(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3)throw new Error("Invalid token");localStorage.setItem(Gt,e),Ye(Re.AUTHENTICATED,t)}const UT=(e,t)=>t.skipDedupe||t.method!=="GET",DT=(e,t)=>t.method+"@"+e,MT=e=>e.clone(),Vf=({skip:e=UT,key:t=DT,resolver:r=MT}={})=>{const n=new Map;return a=>(i,o)=>{if(e(i,o))return a(i,o);const s=t(i,o);if(!n.has(s))n.set(s,[]);else return new Promise((u,f)=>{n.get(s).push([u,f])});try{return a(i,o).then(u=>(n.get(s).forEach(([f])=>f(r(u))),n.delete(s),u)).catch(u=>{throw n.get(s).forEach(([,f])=>f(u)),n.delete(s),u})}catch(u){return n.delete(s),Promise.reject(u)}}},FT=(e,t)=>e*t,BT=e=>e&&e.ok,Zf=({delayTimer:e=500,delayRamp:t=FT,maxAttempts:r=10,until:n=BT,onRetry:a=null,retryOnNetworkError:i=!1,resolveWithLatestResponse:o=!1,skip:s}={})=>u=>(f,l)=>{let c=0;if(s&&s(f,l))return u(f,l);const d=(h,v)=>Promise.resolve(n(h,v)).then(S=>S?h&&o?h:v?Promise.reject(v):h:(c++,!r||c<=r?new Promise(g=>{const T=t(e,c);setTimeout(()=>{typeof a=="function"?Promise.resolve(a({response:h,error:v,url:f,options:l})).then((I={})=>{var w,p;g(u((w=I&&I.url)!==null&&w!==void 0?w:f,(p=I&&I.options)!==null&&p!==void 0?p:l))}):g(u(f,l))},T)}).then(d).catch(g=>{if(!i)throw g;return d(null,g)}):h&&o?h:Promise.reject(v||new Error("Number of attempts exceeded."))));return u(f,l).then(d).catch(h=>{if(!i)throw h;return d(null,h)})},zT="application/json",Jf="Content-Type",Kt=Symbol(),Yf=Symbol();function Xf(e={}){var t;return(t=Object.entries(e).find(([r])=>r.toLowerCase()===Jf.toLowerCase()))===null||t===void 0?void 0:t[1]}function qf(e){return/^application\/.*json.*/.test(e)}const vt=function(e,t,r=!1){return Object.entries(t).reduce((n,[a,i])=>{const o=e[a];return Array.isArray(o)&&Array.isArray(i)?n[a]=r?[...o,...i]:i:typeof o=="object"&&typeof i=="object"?n[a]=vt(o,i,r):n[a]=i,n},{...e})},Wt={options:{},errorType:"text",polyfills:{},polyfill(e,t=!0,r=!1,...n){const a=this.polyfills[e]||(typeof self<"u"?self[e]:null)||(typeof global<"u"?global[e]:null);if(t&&!a)throw new Error(e+" is not defined");return r&&a?new a(...n):a}};function HT(e,t=!1){Wt.options=t?e:vt(Wt.options,e)}function GT(e,t=!1){Wt.polyfills=t?e:vt(Wt.polyfills,e)}function KT(e){Wt.errorType=e}const WT=e=>t=>e.reduceRight((r,n)=>n(r),t)||t;class Qf extends Error{}const VT=e=>{const t=Object.create(null);e=e._addons.reduce((w,p)=>p.beforeRequest&&p.beforeRequest(w,e._options,t)||w,e);const{_url:r,_options:n,_config:a,_catchers:i,_resolvers:o,_middlewares:s,_addons:u}=e,f=new Map(i),l=vt(a.options,n);let c=r;const d=WT(s)((w,p)=>(c=w,a.polyfill("fetch")(w,p)))(r,l),h=new Error,v=d.catch(w=>{throw{[Kt]:w}}).then(w=>{var p;if(!w.ok){const $=new Qf;if($.cause=h,$.stack=$.stack+`
|
|
5
|
-
CAUSE: `+h.stack,$.response=w,$.status=w.status,$.url=c,w.type==="opaque")throw $;const O=a.errorType==="json"||((p=w.headers.get("Content-Type"))===null||p===void 0?void 0:p.split(";")[0])==="application/json";return(a.errorType?O?w.text():w[a.errorType]():Promise.resolve(w.body)).then(k=>{throw $.message=typeof k=="string"?k:w.statusText,k&&(O&&typeof k=="string"?($.text=k,$.json=JSON.parse(k)):$[a.errorType]=k),$})}return w}),S=w=>w.catch(p=>{const $=Object.prototype.hasOwnProperty.call(p,Kt),O=$?p[Kt]:p,_=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||$&&f.has(Kt)&&f.get(Kt);if(_)return _(O,e);const k=f.get(Yf);if(k)return k(O,e);throw O}),g=w=>p=>S(w?v.then($=>$&&$[w]()).then($=>p?p($):$):v.then($=>p?p($):$)),T={_wretchReq:e,_fetchReq:d,_sharedState:t,res:g(null),json:g("json"),blob:g("blob"),formData:g("formData"),arrayBuffer:g("arrayBuffer"),text:g("text"),error(w,p){return f.set(w,p),this},badRequest(w){return this.error(400,w)},unauthorized(w){return this.error(401,w)},forbidden(w){return this.error(403,w)},notFound(w){return this.error(404,w)},timeout(w){return this.error(408,w)},internalError(w){return this.error(500,w)},fetchError(w){return this.error(Kt,w)}},I=u.reduce((w,p)=>({...w,...typeof p.resolver=="function"?p.resolver(w):p.resolver}),T);return o.reduce((w,p)=>p(w,e),I)},ZT={_url:"",_options:{},_config:Wt,_catchers:new Map,_resolvers:[],_deferred:[],_middlewares:[],_addons:[],addon(e){return{...this,_addons:[...this._addons,e],...e.wretch}},errorType(e){return{...this,_config:{...this._config,errorType:e}}},polyfills(e,t=!1){return{...this,_config:{...this._config,polyfills:t?e:vt(this._config.polyfills,e)}}},url(e,t=!1){if(t)return{...this,_url:e};const r=this._url.split("?");return{...this,_url:r.length>1?r[0]+e+"?"+r[1]:this._url+e}},options(e,t=!1){return{...this,_options:t?e:vt(this._options,e)}},headers(e){const t=e?Array.isArray(e)?Object.fromEntries(e):"entries"in e?Object.fromEntries(e.entries()):e:{};return{...this,_options:vt(this._options,{headers:t})}},accept(e){return this.headers({Accept:e})},content(e){return this.headers({[Jf]:e})},auth(e){return this.headers({Authorization:e})},catcher(e,t){const r=new Map(this._catchers);return r.set(e,t),{...this,_catchers:r}},catcherFallback(e){return this.catcher(Yf,e)},resolve(e,t=!1){return{...this,_resolvers:t?[e]:[...this._resolvers,e]}},defer(e,t=!1){return{...this,_deferred:t?[e]:[...this._deferred,e]}},middlewares(e,t=!1){return{...this,_middlewares:t?e:[...this._middlewares,...e]}},fetch(e=this._options.method,t="",r=null){let n=this.url(t).options({method:e});const a=Xf(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||qf(a));return n=r?o?n.json(r,a):n.body(r):n,VT(n._deferred.reduce((s,u)=>u(s,s._url,s._options),n))},get(e=""){return this.fetch("GET",e)},delete(e=""){return this.fetch("DELETE",e)},put(e,t=""){return this.fetch("PUT",t,e)},post(e,t=""){return this.fetch("POST",t,e)},patch(e,t=""){return this.fetch("PATCH",t,e)},head(e=""){return this.fetch("HEAD",e)},opts(e=""){return this.fetch("OPTIONS",e)},body(e){return{...this,_options:{...this._options,body:e}}},json(e,t){const r=Xf(this._options.headers);return this.content(t||qf(r)&&r||zT).body(JSON.stringify(e))}};function ze(e="",t={}){return{...ZT,_url:e,_options:t}}ze.default=ze,ze.options=HT,ze.errorType=KT,ze.polyfills=GT,ze.WretchError=Qf;function Ce(){sessionStorage.removeItem(xo),Ye(Re.CLEAR_CACHE,{})}function ed(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function JT(e){let t;try{t=new URL(e)}catch{return!1}return t.protocol==="http:"||t.protocol==="https:"}function YT(e,t){if(JT(e))return{itemSrc:e};const[r,n,a]=e.split(":");return{sku:`${r}:${n}`,purchaseOption:t||a}}function XT(e,t){const r=new URL(`${Be("checkout3",e.environment)}`);if(r.searchParams.set("vendorId",e.clientId),t.language&&r.searchParams.set("lang",t.language),t.sku)r.searchParams.set("sku",t.sku),t.purchaseOptionId&&r.searchParams.set("poId",t.purchaseOptionId);else if(t.itemSrc){const{sku:o,purchaseOption:s,itemSrc:u}=YT(t.itemSrc,t.purchaseOptionId);u&&r.searchParams.set("itemSrc",u),o&&r.searchParams.set("sku",o),s&&r.searchParams.set("poId",s)}t.email&&r.searchParams.set("email",t.email),t.business&&r.searchParams.set("business","true"),t.currency&&r.searchParams.set("currency",t.currency),t.price&&r.searchParams.set("price",t.price.toString()),t.discountCode&&r.searchParams.set("discountCode",t.discountCode),t.attributionItemSrc&&r.searchParams.set("attributionItemSrc",t.attributionItemSrc),t.attributionPublisherContentId&&r.searchParams.set("attributionPublisherContentId",t.attributionPublisherContentId),t.utmSource&&r.searchParams.set("utmSource",t.utmSource),t.utmMedium&&r.searchParams.set("utmMedium",t.utmMedium),t.utmCampaign&&r.searchParams.set("utmCampaign",t.utmCampaign),t.utmTerm&&r.searchParams.set("utmTerm",t.utmTerm),t.utmContent&&r.searchParams.set("utmContent",t.utmContent);const n=["_ga","_gid","_fbp","_fbc"];document.cookie.split(";").map(o=>{const[s,u]=o.trim().split("=");return{key:s,value:u}}).filter(o=>n.some(s=>s===o.key)).forEach(o=>{r.searchParams.append(o.key,o.value)});const i=new URL(t.redirectUrl||window.location.href);return i.searchParams.set("force-refetch-entitlements","true"),t.itemSrc&&i.searchParams.set("sesamy-purchase",t.itemSrc),r.searchParams.set("redirectUrl",i.toString()),t.paymemtMethodsFilter&&r.searchParams.set("paymentMethodsFilter",t.paymemtMethodsFilter.flatMap(({provider:o,methods:s})=>s?s.map(u=>`${o}|${u}`):o).join(",")),r}const td="sesamySignedURLs";function Fo(){const e=sessionStorage.getItem(td);return e?JSON.parse(e):[]}function qT(e){const t=Fo();t.push(e),sessionStorage.setItem(td,JSON.stringify(t))}function QT(e){const t=Be("api2",e.environment),r=y=>async(P,j)=>{let J=sessionStorage.getItem(xo);J||(J=Date.now().toString(),sessionStorage.setItem(xo,J));const ce={...j,headers:{...j.headers,"Cache-Timestamp":J}};return y(P,ce)},n=(y=!0)=>P=>async(j,J)=>{let ce=null;if(ce=await Ar(y),!ce){if(y)throw new Error("No access token available");return P(j,J)}const bt={...J,headers:{...J.headers,...ce?{Authorization:`Bearer ${ce}`}:{}}};return P(j,bt)},a=y=>(P,j)=>{if(j.headers.Authorization)return y(P,j);const J=localStorage.getItem("__anon_id"),ce=btoa(`${J}:`),bt={...j,headers:{...j.headers,Authorization:`Basic ${ce}`}};return y(P,bt)},i=ze(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Vf(),Zf({delayTimer:1e3,delayRamp:(y,P)=>y*P,maxAttempts:3,until:y=>!!(y&&(y.ok||y.status>=400&&y.status<500)),retryOnNetworkError:!1})]),o=ze(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Vf(),Zf({delayTimer:1e3,delayRamp:(y,P)=>y*P,maxAttempts:3,until:y=>!!(y&&(y.ok||y.status>=400&&y.status<500)),retryOnNetworkError:!1})]);async function s(y={}){const{waitForEntitlementAfter:P,includeSignedLinks:j=!0}=y,J=P?`?wait-for-entitlement-after=${P.toISOString()}`:"",ce=await Cr()?await i.get(`/entitlements${J}`).json():[];return j&&ce.push(...Fo()),ce}async function u(y){const P=await i.get("/entitlements").json();return P==null?void 0:P.find(j=>j.id===y)}async function f(y){return i.get(`/entitlements/${y}/access`).json()}async function l(){return await Cr()?await i.get("/fullfilments").json():[]}async function c(){return i.get("/contracts").json()}async function d(y){const P=await i.get("/contracts").json();return P==null?void 0:P.find(j=>j.id===y)}async function h(y){return(await i.post({},`/contracts/${y}/cancel`).res()).ok}async function v(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function S(){return i.get("/bills").json()}async function g(y){const P=await i.get("/bills").json();return P==null?void 0:P.find(j=>j.id===y)}async function T(){return i.get("/transactions").json()}async function I(y){const P=await i.get("/transactions").json();return P==null?void 0:P.find(j=>j.id===y)}async function w(y,P){const j=await i.url(`/user-metadata/${y}`).put(P).json();return Ye(Re.USER_ATTRIBUTE_CHANGED,{}),Ce(),j}async function p(y){const P=await i.url(`/user-metadata/${y}`).delete().res();return Ce(),P.ok}async function $(y){return(await i.url(`/user-metadata/${y}`).get().json())[y]}async function O(){return await i.url("/user-metadata").get().json()}async function _(){return await i.url("/tags").get().json()}async function k(y){const P=await i.url(`/tags/${y}`).delete().res();return Ce(),P.ok}async function M(y){const P=await i.url("/tags").post(y).res();return Ye(Re.USER_ATTRIBUTE_CHANGED,{}),Ce(),P.ok}async function F(y){return(await o.url("/tallies").get().json())[y]}async function X(){return await o.url("/tallies").get().json()}async function L(y){const P=await o.url(`/tallies/${y}`).delete().res();return Ce(),P.ok}async function U(y,P){return await o.url(`/tallies/${y}/push`).post(P).json()}async function z(y){return await i.url(`/products/${y}`).get().json()}async function R(){return await Ar(!1)?await i.url("/profile").get().json():null}async function V(y){const P=await i.url("/profile").patch(y).res();return Ce(),P.ok}async function Q(){return await i.url("/payment-issues").get().json()}async function Ke(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function m(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function b(y){const P=await Ar(!1);if(!P)throw new Error("No access token available");const j=new URL(`${Be("spotify-oas",e.environment)}/sesamy-callback`);j.searchParams.set("access_token",P),j.searchParams.set("state",y),window.location.href=j.toString()}async function E(y){const P=await i.url(`/products/${y}/auto-onboard`).post().json();return P.length&&Ce(),P}async function N(y,P=3600){const{shortlink:j}=await ze(jT).post({url:y,ttl:P}).json();return j}async function x(y){const P=await Ar(!1);let j;const J=y.language||ed();switch(y.target){case"account":j=new URL(`${Be("account",e.environment)}/${y.language||J}/subscriptions/${e.clientId}`),j.searchParams.set("sesamy-redirect-url",y.redirectUrl||window.location.href);break;case"consume":j=new URL(`${Be("consume",e.environment)}/${y.language||J}/@${e.clientId}/${y.sku}`),y.episodeId?j.href+=`/${y.episodeId}`:j.href+="/listen",j.searchParams.set("sesamy-redirect-url",y.redirectUrl||window.location.href);break;case"checkout":j=XT(e,{language:J,...y});break;default:throw new Error("Invalid target")}return P&&(j.hash=`#access_token=${P}`),y.shorten?N(j.href,y.ttl):j.href}async function D(y){return(await o.url("/checkouts").post({language:ed(),...y,vendorId:e.clientId})).json()}async function q(y,P){return(await o.url(`/checkouts/${y}`).patch(P)).json()}async function B(y){return(await o.url(`/checkouts/${y}`).get()).json()}async function Z(){const y=await Ar(!1),P=new URL(`${Be("account",e.environment)}/subscriptions/${e.clientId}`);y&&(P.hash=`#access_token=${y}`),window.location.href=P.toString()}return{createCheckout:D,updateCheckout:q,getCheckout:B,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getFulfillments:l,getContracts:c,getContract:d,cancelContract:h,getProfile:R,updateProfile:V,getSubscriptions:v,getBills:S,getBill:g,setUserMetadata:w,deleteUserMetadata:p,getUserMetadata:$,listUserMetadata:O,getTags:_,deleteTag:k,setTag:M,getTally:F,getTallies:X,deleteTally:L,pushTally:U,getTransactions:T,getTransaction:I,getProduct:z,getPaymentIssues:Q,autoOnboardProduct:E,isSpotifyLinked:Ke,unlinkSpotify:m,linkSpotify:b,generateLink:x,openHostedAccountPage:Z}}const rd="@sesamy/sesamy-js",Bo="1.19.1";function nd(e,t,r,n,a){for(t=t.split?t.split("."):t,n=0;n<t.length;n++)e=e?e[t[n]]:a;return e===a?r:e}var Vn="undefined",ad="object",zo=function(){},id="any",od="*",pt="__",Zn=typeof process<"u"?process:{};Zn.env&&Zn.env.NODE_ENV;var re=typeof document<"u";Zn.versions!=null&&Zn.versions.node!=null,typeof Deno<"u"&&Deno.core,re&&window.name==="nodejs"||typeof navigator<"u"&&navigator.userAgent!==void 0&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));function sd(e,t){return t.charAt(0)[e]()+t.slice(1)}var eP=sd.bind(null,"toUpperCase"),tP=sd.bind(null,"toLowerCase");function rP(e){return cd(e)?eP("null"):typeof e=="object"?oP(e):Object.prototype.toString.call(e).slice(8,-1)}function Jn(e,t){t===void 0&&(t=!0);var r=rP(e);return t?tP(r):r}function jr(e,t){return typeof t===e}var oe=jr.bind(null,"function"),Xe=jr.bind(null,"string"),Vt=jr.bind(null,"undefined"),nP=jr.bind(null,"boolean");jr.bind(null,"symbol");function cd(e){return e===null}function aP(e){return Jn(e)==="number"&&!isNaN(e)}function ud(e){return Jn(e)==="array"}function se(e){if(!iP(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function iP(e){return e&&(typeof e=="object"||e!==null)}function oP(e){return oe(e.constructor)?e.constructor.name:null}function sP(e){return e instanceof Error||Xe(e.message)&&e.constructor&&aP(e.constructor.stackTraceLimit)}function ld(e,t){if(typeof t!="object"||cd(t))return!1;if(t instanceof e)return!0;var r=Jn(new e(""));if(sP(t))for(;t;){if(Jn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}ld.bind(null,TypeError),ld.bind(null,SyntaxError);function Yn(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?cP(e,t):r}function cP(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function Xn(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}Xn(Yn,"form"),Xn(Yn,"button"),Xn(Yn,"input"),Xn(Yn,"select");function uP(e){return e?ud(e)?e:[e]:[]}function fd(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function lP(){if(re){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function fP(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function dP(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=fd(r[1]),o=fd(r[2]);i.substring(i.length-2)==="[]"?(n[i=i.substring(0,i.length-2)]||(n[i]=[])).push(o):n[i]=o===""||o}for(var s in n){var u=s.split("[");u.length>1&&(hP(n,u.map(function(f){return f.replace(/[?[\]\\ ]/g,"")}),n[s]),delete n[s])}return n}(function(t){return re&&window.location.search.substring(1)}())}function hP(e,t,r){for(var n=t.length-1,a=0;a<n;++a){var i=t[a];if(i==="__proto__"||i==="constructor")break;i in e||(e[i]={}),e=e[i]}e[t[n]]=r}function qn(){for(var e="",t=0,r=4294967295*Math.random()|0;t++<36;){var n="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[t-1],a=15&r;e+=n=="-"||n=="4"?n:(n=="x"?a:3&a|8).toString(16),r=t%8==0?4294967295*Math.random()|0:r>>4}return e}function vP(e,t){var r,n,a,i=null,o=0,s=function(){o=new Date,i=null,a=e.apply(r,n)};return function(){var u=new Date;o||(o=u);var f=t-(u-o);return r=this,n=arguments,f<=0?(clearTimeout(i),i=null,o=u,a=e.apply(r,n)):i||(i=setTimeout(s,f)),a}}var Lr="global",Zt=pt+"global"+pt,Jt=typeof self===ad&&self.self===self&&self||typeof global===ad&&global.global===global&&global||void 0;function mt(e){return Jt[Zt][e]}function gt(e,t){return Jt[Zt][e]=t}function Yt(e){delete Jt[Zt][e]}function Xt(e,t,r){var n;try{if(Ho(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Jt[Zt]||(Jt[Zt]={});var Qn={};function Ho(e){if(typeof Qn[e]!==Vn)return Qn[e];try{var t=window[e];t.setItem(Vn,Vn),t.removeItem(Vn)}catch{return Qn[e]=!1}return Qn[e]=!0}function C(){return C=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},C.apply(this,arguments)}var qe="function",He="undefined",pP="@@redux/"+Math.random().toString(36),dd=function(){return typeof Symbol===qe&&Symbol.observable||"@@observable"}(),ea=" != "+qe;function hd(e,t,r){var n;if(typeof t===qe&&typeof r===He&&(r=t,t=void 0),typeof r!==He){if(typeof r!==qe)throw new Error("enhancer"+ea);return r(hd)(e,t)}if(typeof e!==qe)throw new Error("reducer"+ea);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(h){if(typeof h!==qe)throw new Error("Listener"+ea);var v=!0;return f(),s.push(h),function(){if(v){v=!1,f();var S=s.indexOf(h);s.splice(S,1)}}}function d(h){if(!se(h))throw new Error("Act != obj");if(typeof h.type===He)throw new Error("ActType "+He);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,h)}finally{u=!1}for(var v=o=s,S=0;S<v.length;S++)(0,v[S])();return h}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(h){if(typeof h!==qe)throw new Error("next reducer"+ea);a=h,d({type:"@@redux/INIT"})}})[dd]=function(){var h,v=c;return(h={subscribe:function(S){if(typeof S!="object")throw new TypeError("Observer != obj");function g(){S.next&&S.next(l())}return g(),{unsubscribe:v(g)}}})[dd]=function(){return this},h},n}function mP(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+He}function qt(){var e=[].slice.call(arguments);return e.length===0?function(t){return t}:e.length===1?e[0]:e.reduce(function(t,r){return function(){return t(r.apply(void 0,[].slice.call(arguments)))}})}function gP(){var e=arguments;return function(t){return function(r,n,a){var i,o=t(r,n,a),s=o.dispatch,u={getState:o.getState,dispatch:function(f){return s(f)}};return i=[].slice.call(e).map(function(f){return f(u)}),C({},o,{dispatch:s=qt.apply(void 0,i)(o.dispatch)})}}}var Qe=pt+"anon_id",yt=pt+"user_id",Qt=pt+"user_traits",et="userId",er="anonymousId",ta=["bootstrap","params","campaign","initializeStart","initialize","initializeEnd","ready","resetStart","reset","resetEnd","pageStart","page","pageEnd","pageAborted","trackStart","track","trackEnd","trackAborted","identifyStart","identify","identifyEnd","identifyAborted","userIdChanged","registerPlugins","enablePlugin","disablePlugin","online","offline","setItemStart","setItem","setItemEnd","setItemAborted","removeItemStart","removeItem","removeItemEnd","removeItemAborted"],Go=["name","EVENTS","config","loaded"],A=ta.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),vd=/^utm_/,pd=/^an_prop_/,md=/^an_trait_/;function yP(e){var t=e.storage.setItem;return function(r){return function(n){return function(a){if(a.type===A.bootstrap){var i=a.params,o=a.user,s=a.persistedUser,u=a.initialUser,f=s.userId===o.userId;s.anonymousId!==o.anonymousId&&t(Qe,o.anonymousId),f||t(yt,o.userId),u.traits&&t(Qt,C({},f&&s.traits?s.traits:{},u.traits));var l=Object.keys(a.params);if(l.length){var c=i.an_uid,d=i.an_event,h=l.reduce(function(v,S){if(S.match(vd)||S.match(/^(d|g)clid/)){var g=S.replace(vd,"");v.campaign[g==="campaign"?"name":g]=i[S]}return S.match(pd)&&(v.props[S.replace(pd,"")]=i[S]),S.match(md)&&(v.traits[S.replace(md,"")]=i[S]),v},{campaign:{},props:{},traits:{}});r.dispatch(C({type:A.params,raw:i},h,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,h.traits)},0),d&&setTimeout(function(){return e.track(d,h.props)},0),Object.keys(h.campaign).length&&r.dispatch({type:A.campaign,campaign:h.campaign})}}return n(a)}}}}function wP(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===A.setItemEnd){if(r.key===Qe)return C({},t,{anonymousId:r.value});if(r.key===yt)return C({},t,{userId:r.value})}switch(r.type){case A.identify:return Object.assign({},t,{userId:r.userId,traits:C({},t.traits,r.traits)});case A.reset:return[yt,Qe,Qt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function gd(e){return{userId:e.getItem(yt),anonymousId:e.getItem(Qe),traits:e.getItem(Qt)}}var Ko=function(e){return pt+"TEMP"+pt+e};function bP(e){var t=e.storage,r=t.setItem,n=t.removeItem,a=t.getItem;return function(i){return function(o){return function(s){var u=s.userId,f=s.traits,l=s.options;if(s.type===A.reset&&([yt,Qt,Qe].forEach(function(h){n(h)}),[et,er,"traits"].forEach(function(h){Yt(Ko(h))})),s.type===A.identify){a(Qe)||r(Qe,qn());var c=a(yt),d=a(Qt)||{};c&&c!==u&&i.dispatch({type:A.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(yt,u),f&&r(Qt,C({},d,f))}return o(s)}}}}var Nr={};function yd(e,t){Nr[e]&&oe(Nr[e])&&(Nr[e](t),delete Nr[e])}function wd(e,t,r){return new Promise(function(n,a){return t()?n(e):r<1?a(C({},e,{queue:!0})):new Promise(function(i){return setTimeout(i,10)}).then(function(i){return wd(e,t,r-10).then(n,a)})})}function SP(e){return{abort:e}}function bd(e,t,r){var n={},a=t(),i=e.getState(),o=i.plugins,s=i.queue,u=i.user;if(!i.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(c,d,h){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(h)):(c.requeue.push(d),c.requeueIndex.push(h)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],h=d.plugin,v=d.payload.type,S=a[h][v];if(S&&oe(S)){var g,T=function(p,$){return p===void 0&&(p={}),$===void 0&&($={}),[et,er].reduce(function(O,_){return p.hasOwnProperty(_)&&$[_]&&$[_]!==p[_]&&(O[_]=$[_]),O},p)}(d.payload,u),I=n[T.meta.rid];if(!I&&(g=S({payload:T,config:o[h].config,instance:r,abort:SP}))&&se(g)&&g.abort)return void(n[T.meta.rid]=!0);if(!I){var w=v+":"+h;e.dispatch(C({},T,{type:w,_:{called:w,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var Wo=function(e){var t=e.data,r=e.action,n=e.instance,a=e.state,i=e.allPlugins,o=e.allMatches,s=e.store,u=e.EVENTS;try{var f=a.plugins,l=a.context,c=r.type,d=c.match(tr),h=t.exact.map(function(g){return g.pluginName});d&&(h=o.during.map(function(g){return g.pluginName}));var v=function(g,T){return function(I,w,p){var $=w.config,O=w.name,_=O+"."+I.type;p&&(_=p.event);var k=I.type.match(tr)?function(M,F,X,L,U){return function(z,R){var V=L?L.name:M,Q=R&&xr(R)?R:X;if(L&&(!(Q=R&&xr(R)?R:[M]).includes(M)||Q.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(Q)+" input valid");return C({},U,{abort:{reason:z,plugins:Q,caller:F,_:V}})}}(O,_,T,p,I):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(I,_);return{payload:$P(I),instance:g,config:$||{},abort:k}}}(n,h),S=t.exact.reduce(function(g,T){var I=T.pluginName,w=T.methodName,p=!1;return w.match(/^initialize/)||w.match(/^reset/)||(p=!f[I].loaded),l.offline&&w.match(/^(page|track|identify)/)&&(p=!0),g[""+I]=p,g},{});return Promise.resolve(t.exact.reduce(function(g,T,I){try{var w=T.pluginName;return Promise.resolve(g).then(function(p){function $(){return Promise.resolve(p)}var O=function(){if(t.namespaced&&t.namespaced[w])return Promise.resolve(t.namespaced[w].reduce(function(_,k,M){try{return Promise.resolve(_).then(function(F){return k.method&&oe(k.method)?(function(z,R){var V=kd(z);if(V&&V.name===R){var Q=kd(V.method);throw new Error([R+" plugin is calling method "+z,"Plugins cant call self","Use "+V.method+" "+(Q?"or "+Q.method:"")+" in "+R+" plugin insteadof "+z].join(`
|
|
5
|
+
CAUSE: `+h.stack,$.response=w,$.status=w.status,$.url=c,w.type==="opaque")throw $;const O=a.errorType==="json"||((p=w.headers.get("Content-Type"))===null||p===void 0?void 0:p.split(";")[0])==="application/json";return(a.errorType?O?w.text():w[a.errorType]():Promise.resolve(w.body)).then(k=>{throw $.message=typeof k=="string"?k:w.statusText,k&&(O&&typeof k=="string"?($.text=k,$.json=JSON.parse(k)):$[a.errorType]=k),$})}return w}),S=w=>w.catch(p=>{const $=Object.prototype.hasOwnProperty.call(p,Kt),O=$?p[Kt]:p,_=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||$&&f.has(Kt)&&f.get(Kt);if(_)return _(O,e);const k=f.get(Yf);if(k)return k(O,e);throw O}),g=w=>p=>S(w?v.then($=>$&&$[w]()).then($=>p?p($):$):v.then($=>p?p($):$)),T={_wretchReq:e,_fetchReq:d,_sharedState:t,res:g(null),json:g("json"),blob:g("blob"),formData:g("formData"),arrayBuffer:g("arrayBuffer"),text:g("text"),error(w,p){return f.set(w,p),this},badRequest(w){return this.error(400,w)},unauthorized(w){return this.error(401,w)},forbidden(w){return this.error(403,w)},notFound(w){return this.error(404,w)},timeout(w){return this.error(408,w)},internalError(w){return this.error(500,w)},fetchError(w){return this.error(Kt,w)}},I=u.reduce((w,p)=>({...w,...typeof p.resolver=="function"?p.resolver(w):p.resolver}),T);return o.reduce((w,p)=>p(w,e),I)},ZT={_url:"",_options:{},_config:Wt,_catchers:new Map,_resolvers:[],_deferred:[],_middlewares:[],_addons:[],addon(e){return{...this,_addons:[...this._addons,e],...e.wretch}},errorType(e){return{...this,_config:{...this._config,errorType:e}}},polyfills(e,t=!1){return{...this,_config:{...this._config,polyfills:t?e:vt(this._config.polyfills,e)}}},url(e,t=!1){if(t)return{...this,_url:e};const r=this._url.split("?");return{...this,_url:r.length>1?r[0]+e+"?"+r[1]:this._url+e}},options(e,t=!1){return{...this,_options:t?e:vt(this._options,e)}},headers(e){const t=e?Array.isArray(e)?Object.fromEntries(e):"entries"in e?Object.fromEntries(e.entries()):e:{};return{...this,_options:vt(this._options,{headers:t})}},accept(e){return this.headers({Accept:e})},content(e){return this.headers({[Jf]:e})},auth(e){return this.headers({Authorization:e})},catcher(e,t){const r=new Map(this._catchers);return r.set(e,t),{...this,_catchers:r}},catcherFallback(e){return this.catcher(Yf,e)},resolve(e,t=!1){return{...this,_resolvers:t?[e]:[...this._resolvers,e]}},defer(e,t=!1){return{...this,_deferred:t?[e]:[...this._deferred,e]}},middlewares(e,t=!1){return{...this,_middlewares:t?e:[...this._middlewares,...e]}},fetch(e=this._options.method,t="",r=null){let n=this.url(t).options({method:e});const a=Xf(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||qf(a));return n=r?o?n.json(r,a):n.body(r):n,VT(n._deferred.reduce((s,u)=>u(s,s._url,s._options),n))},get(e=""){return this.fetch("GET",e)},delete(e=""){return this.fetch("DELETE",e)},put(e,t=""){return this.fetch("PUT",t,e)},post(e,t=""){return this.fetch("POST",t,e)},patch(e,t=""){return this.fetch("PATCH",t,e)},head(e=""){return this.fetch("HEAD",e)},opts(e=""){return this.fetch("OPTIONS",e)},body(e){return{...this,_options:{...this._options,body:e}}},json(e,t){const r=Xf(this._options.headers);return this.content(t||qf(r)&&r||zT).body(JSON.stringify(e))}};function ze(e="",t={}){return{...ZT,_url:e,_options:t}}ze.default=ze,ze.options=HT,ze.errorType=KT,ze.polyfills=GT,ze.WretchError=Qf;function Ce(){sessionStorage.removeItem(xo),Ye(Re.CLEAR_CACHE,{})}function ed(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function JT(e){let t;try{t=new URL(e)}catch{return!1}return t.protocol==="http:"||t.protocol==="https:"}function YT(e,t){if(JT(e))return{itemSrc:e};const[r,n,a]=e.split(":");return{sku:`${r}:${n}`,purchaseOption:t||a}}function XT(e,t){const r=new URL(`${Be("checkout3",e.environment)}`);if(r.searchParams.set("vendorId",e.clientId),t.language&&r.searchParams.set("lang",t.language),t.sku)r.searchParams.set("sku",t.sku),t.purchaseOptionId&&r.searchParams.set("poId",t.purchaseOptionId);else if(t.itemSrc){const{sku:o,purchaseOption:s,itemSrc:u}=YT(t.itemSrc,t.purchaseOptionId);u&&r.searchParams.set("itemSrc",u),o&&r.searchParams.set("sku",o),s&&r.searchParams.set("poId",s)}t.email&&r.searchParams.set("email",t.email),t.business&&r.searchParams.set("business","true"),t.currency&&r.searchParams.set("currency",t.currency),t.price&&r.searchParams.set("price",t.price.toString()),t.discountCode&&r.searchParams.set("discountCode",t.discountCode),t.attributionItemSrc&&r.searchParams.set("attributionItemSrc",t.attributionItemSrc),t.attributionPublisherContentId&&r.searchParams.set("attributionPublisherContentId",t.attributionPublisherContentId),t.utmSource&&r.searchParams.set("utmSource",t.utmSource),t.utmMedium&&r.searchParams.set("utmMedium",t.utmMedium),t.utmCampaign&&r.searchParams.set("utmCampaign",t.utmCampaign),t.utmTerm&&r.searchParams.set("utmTerm",t.utmTerm),t.utmContent&&r.searchParams.set("utmContent",t.utmContent);const n=["_ga","_gid","_fbp","_fbc"];document.cookie.split(";").map(o=>{const[s,u]=o.trim().split("=");return{key:s,value:u}}).filter(o=>n.some(s=>s===o.key)).forEach(o=>{r.searchParams.append(o.key,o.value)});const i=new URL(t.redirectUrl||window.location.href);return i.searchParams.set("force-refetch-entitlements","true"),t.itemSrc&&i.searchParams.set("sesamy-purchase",t.itemSrc),r.searchParams.set("redirectUrl",i.toString()),t.paymemtMethodsFilter&&r.searchParams.set("paymentMethodsFilter",t.paymemtMethodsFilter.flatMap(({provider:o,methods:s})=>s?s.map(u=>`${o}|${u}`):o).join(",")),r}const td="sesamySignedURLs";function Fo(){const e=sessionStorage.getItem(td);return e?JSON.parse(e):[]}function qT(e){const t=Fo();t.push(e),sessionStorage.setItem(td,JSON.stringify(t))}function QT(e){const t=Be("api2",e.environment),r=y=>async(P,j)=>{let J=sessionStorage.getItem(xo);J||(J=Date.now().toString(),sessionStorage.setItem(xo,J));const ce={...j,headers:{...j.headers,"Cache-Timestamp":J}};return y(P,ce)},n=(y=!0)=>P=>async(j,J)=>{let ce=null;if(ce=await Ar(y),!ce){if(y)throw new Error("No access token available");return P(j,J)}const bt={...J,headers:{...J.headers,...ce?{Authorization:`Bearer ${ce}`}:{}}};return P(j,bt)},a=y=>(P,j)=>{if(j.headers.Authorization)return y(P,j);const J=localStorage.getItem("__anon_id"),ce=btoa(`${J}:`),bt={...j,headers:{...j.headers,Authorization:`Basic ${ce}`}};return y(P,bt)},i=ze(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Vf(),Zf({delayTimer:1e3,delayRamp:(y,P)=>y*P,maxAttempts:3,until:y=>!!(y&&(y.ok||y.status>=400&&y.status<500)),retryOnNetworkError:!1})]),o=ze(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Vf(),Zf({delayTimer:1e3,delayRamp:(y,P)=>y*P,maxAttempts:3,until:y=>!!(y&&(y.ok||y.status>=400&&y.status<500)),retryOnNetworkError:!1})]);async function s(y={}){const{waitForEntitlementAfter:P,includeSignedLinks:j=!0}=y,J=P?`?wait-for-entitlement-after=${P.toISOString()}`:"",ce=await Cr()?await i.get(`/entitlements${J}`).json():[];return j&&ce.push(...Fo()),ce}async function u(y){const P=await i.get("/entitlements").json();return P==null?void 0:P.find(j=>j.id===y)}async function f(y){return i.get(`/entitlements/${y}/access`).json()}async function l(){return await Cr()?await i.get("/fulfillments").json():[]}async function c(){return i.get("/contracts").json()}async function d(y){const P=await i.get("/contracts").json();return P==null?void 0:P.find(j=>j.id===y)}async function h(y){return(await i.post({},`/contracts/${y}/cancel`).res()).ok}async function v(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function S(){return i.get("/bills").json()}async function g(y){const P=await i.get("/bills").json();return P==null?void 0:P.find(j=>j.id===y)}async function T(){return i.get("/transactions").json()}async function I(y){const P=await i.get("/transactions").json();return P==null?void 0:P.find(j=>j.id===y)}async function w(y,P){const j=await i.url(`/user-metadata/${y}`).put(P).json();return Ye(Re.USER_ATTRIBUTE_CHANGED,{}),Ce(),j}async function p(y){const P=await i.url(`/user-metadata/${y}`).delete().res();return Ce(),P.ok}async function $(y){return(await i.url(`/user-metadata/${y}`).get().json())[y]}async function O(){return await i.url("/user-metadata").get().json()}async function _(){return await i.url("/tags").get().json()}async function k(y){const P=await i.url(`/tags/${y}`).delete().res();return Ce(),P.ok}async function M(y){const P=await i.url("/tags").post(y).res();return Ye(Re.USER_ATTRIBUTE_CHANGED,{}),Ce(),P.ok}async function F(y){return(await o.url("/tallies").get().json())[y]}async function X(){return await o.url("/tallies").get().json()}async function L(y){const P=await o.url(`/tallies/${y}`).delete().res();return Ce(),P.ok}async function U(y,P){return await o.url(`/tallies/${y}/push`).post(P).json()}async function z(y){return await i.url(`/products/${y}`).get().json()}async function R(){return await Ar(!1)?await i.url("/profile").get().json():null}async function V(y){const P=await i.url("/profile").patch(y).res();return Ce(),P.ok}async function Q(){return await i.url("/payment-issues").get().json()}async function Ke(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function m(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function b(y){const P=await Ar(!1);if(!P)throw new Error("No access token available");const j=new URL(`${Be("spotify-oas",e.environment)}/sesamy-callback`);j.searchParams.set("access_token",P),j.searchParams.set("state",y),window.location.href=j.toString()}async function E(y){const P=await i.url(`/products/${y}/auto-onboard`).post().json();return P.length&&Ce(),P}async function N(y,P=3600){const{shortlink:j}=await ze(jT).post({url:y,ttl:P}).json();return j}async function x(y){const P=await Ar(!1);let j;const J=y.language||ed();switch(y.target){case"account":j=new URL(`${Be("account",e.environment)}/${y.language||J}/subscriptions/${e.clientId}`),j.searchParams.set("sesamy-redirect-url",y.redirectUrl||window.location.href);break;case"consume":j=new URL(`${Be("consume",e.environment)}/${y.language||J}/@${e.clientId}/${y.sku}`),y.episodeId?j.href+=`/${y.episodeId}`:j.href+="/listen",j.searchParams.set("sesamy-redirect-url",y.redirectUrl||window.location.href);break;case"checkout":j=XT(e,{language:J,...y});break;default:throw new Error("Invalid target")}return P&&(j.hash=`#access_token=${P}`),y.shorten?N(j.href,y.ttl):j.href}async function D(y){return(await o.url("/checkouts").post({language:ed(),...y,vendorId:e.clientId})).json()}async function q(y,P){return(await o.url(`/checkouts/${y}`).patch(P)).json()}async function B(y){return(await o.url(`/checkouts/${y}`).get()).json()}async function Z(){const y=await Ar(!1),P=new URL(`${Be("account",e.environment)}/subscriptions/${e.clientId}`);y&&(P.hash=`#access_token=${y}`),window.location.href=P.toString()}return{createCheckout:D,updateCheckout:q,getCheckout:B,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getFulfillments:l,getContracts:c,getContract:d,cancelContract:h,getProfile:R,updateProfile:V,getSubscriptions:v,getBills:S,getBill:g,setUserMetadata:w,deleteUserMetadata:p,getUserMetadata:$,listUserMetadata:O,getTags:_,deleteTag:k,setTag:M,getTally:F,getTallies:X,deleteTally:L,pushTally:U,getTransactions:T,getTransaction:I,getProduct:z,getPaymentIssues:Q,autoOnboardProduct:E,isSpotifyLinked:Ke,unlinkSpotify:m,linkSpotify:b,generateLink:x,openHostedAccountPage:Z}}const rd="@sesamy/sesamy-js",Bo="1.19.1";function nd(e,t,r,n,a){for(t=t.split?t.split("."):t,n=0;n<t.length;n++)e=e?e[t[n]]:a;return e===a?r:e}var Vn="undefined",ad="object",zo=function(){},id="any",od="*",pt="__",Zn=typeof process<"u"?process:{};Zn.env&&Zn.env.NODE_ENV;var re=typeof document<"u";Zn.versions!=null&&Zn.versions.node!=null,typeof Deno<"u"&&Deno.core,re&&window.name==="nodejs"||typeof navigator<"u"&&navigator.userAgent!==void 0&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));function sd(e,t){return t.charAt(0)[e]()+t.slice(1)}var eP=sd.bind(null,"toUpperCase"),tP=sd.bind(null,"toLowerCase");function rP(e){return cd(e)?eP("null"):typeof e=="object"?oP(e):Object.prototype.toString.call(e).slice(8,-1)}function Jn(e,t){t===void 0&&(t=!0);var r=rP(e);return t?tP(r):r}function jr(e,t){return typeof t===e}var oe=jr.bind(null,"function"),Xe=jr.bind(null,"string"),Vt=jr.bind(null,"undefined"),nP=jr.bind(null,"boolean");jr.bind(null,"symbol");function cd(e){return e===null}function aP(e){return Jn(e)==="number"&&!isNaN(e)}function ud(e){return Jn(e)==="array"}function se(e){if(!iP(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function iP(e){return e&&(typeof e=="object"||e!==null)}function oP(e){return oe(e.constructor)?e.constructor.name:null}function sP(e){return e instanceof Error||Xe(e.message)&&e.constructor&&aP(e.constructor.stackTraceLimit)}function ld(e,t){if(typeof t!="object"||cd(t))return!1;if(t instanceof e)return!0;var r=Jn(new e(""));if(sP(t))for(;t;){if(Jn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}ld.bind(null,TypeError),ld.bind(null,SyntaxError);function Yn(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?cP(e,t):r}function cP(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function Xn(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}Xn(Yn,"form"),Xn(Yn,"button"),Xn(Yn,"input"),Xn(Yn,"select");function uP(e){return e?ud(e)?e:[e]:[]}function fd(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function lP(){if(re){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function fP(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function dP(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=fd(r[1]),o=fd(r[2]);i.substring(i.length-2)==="[]"?(n[i=i.substring(0,i.length-2)]||(n[i]=[])).push(o):n[i]=o===""||o}for(var s in n){var u=s.split("[");u.length>1&&(hP(n,u.map(function(f){return f.replace(/[?[\]\\ ]/g,"")}),n[s]),delete n[s])}return n}(function(t){return re&&window.location.search.substring(1)}())}function hP(e,t,r){for(var n=t.length-1,a=0;a<n;++a){var i=t[a];if(i==="__proto__"||i==="constructor")break;i in e||(e[i]={}),e=e[i]}e[t[n]]=r}function qn(){for(var e="",t=0,r=4294967295*Math.random()|0;t++<36;){var n="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[t-1],a=15&r;e+=n=="-"||n=="4"?n:(n=="x"?a:3&a|8).toString(16),r=t%8==0?4294967295*Math.random()|0:r>>4}return e}function vP(e,t){var r,n,a,i=null,o=0,s=function(){o=new Date,i=null,a=e.apply(r,n)};return function(){var u=new Date;o||(o=u);var f=t-(u-o);return r=this,n=arguments,f<=0?(clearTimeout(i),i=null,o=u,a=e.apply(r,n)):i||(i=setTimeout(s,f)),a}}var Lr="global",Zt=pt+"global"+pt,Jt=typeof self===ad&&self.self===self&&self||typeof global===ad&&global.global===global&&global||void 0;function mt(e){return Jt[Zt][e]}function gt(e,t){return Jt[Zt][e]=t}function Yt(e){delete Jt[Zt][e]}function Xt(e,t,r){var n;try{if(Ho(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Jt[Zt]||(Jt[Zt]={});var Qn={};function Ho(e){if(typeof Qn[e]!==Vn)return Qn[e];try{var t=window[e];t.setItem(Vn,Vn),t.removeItem(Vn)}catch{return Qn[e]=!1}return Qn[e]=!0}function C(){return C=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},C.apply(this,arguments)}var qe="function",He="undefined",pP="@@redux/"+Math.random().toString(36),dd=function(){return typeof Symbol===qe&&Symbol.observable||"@@observable"}(),ea=" != "+qe;function hd(e,t,r){var n;if(typeof t===qe&&typeof r===He&&(r=t,t=void 0),typeof r!==He){if(typeof r!==qe)throw new Error("enhancer"+ea);return r(hd)(e,t)}if(typeof e!==qe)throw new Error("reducer"+ea);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(h){if(typeof h!==qe)throw new Error("Listener"+ea);var v=!0;return f(),s.push(h),function(){if(v){v=!1,f();var S=s.indexOf(h);s.splice(S,1)}}}function d(h){if(!se(h))throw new Error("Act != obj");if(typeof h.type===He)throw new Error("ActType "+He);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,h)}finally{u=!1}for(var v=o=s,S=0;S<v.length;S++)(0,v[S])();return h}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(h){if(typeof h!==qe)throw new Error("next reducer"+ea);a=h,d({type:"@@redux/INIT"})}})[dd]=function(){var h,v=c;return(h={subscribe:function(S){if(typeof S!="object")throw new TypeError("Observer != obj");function g(){S.next&&S.next(l())}return g(),{unsubscribe:v(g)}}})[dd]=function(){return this},h},n}function mP(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+He}function qt(){var e=[].slice.call(arguments);return e.length===0?function(t){return t}:e.length===1?e[0]:e.reduce(function(t,r){return function(){return t(r.apply(void 0,[].slice.call(arguments)))}})}function gP(){var e=arguments;return function(t){return function(r,n,a){var i,o=t(r,n,a),s=o.dispatch,u={getState:o.getState,dispatch:function(f){return s(f)}};return i=[].slice.call(e).map(function(f){return f(u)}),C({},o,{dispatch:s=qt.apply(void 0,i)(o.dispatch)})}}}var Qe=pt+"anon_id",yt=pt+"user_id",Qt=pt+"user_traits",et="userId",er="anonymousId",ta=["bootstrap","params","campaign","initializeStart","initialize","initializeEnd","ready","resetStart","reset","resetEnd","pageStart","page","pageEnd","pageAborted","trackStart","track","trackEnd","trackAborted","identifyStart","identify","identifyEnd","identifyAborted","userIdChanged","registerPlugins","enablePlugin","disablePlugin","online","offline","setItemStart","setItem","setItemEnd","setItemAborted","removeItemStart","removeItem","removeItemEnd","removeItemAborted"],Go=["name","EVENTS","config","loaded"],A=ta.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),vd=/^utm_/,pd=/^an_prop_/,md=/^an_trait_/;function yP(e){var t=e.storage.setItem;return function(r){return function(n){return function(a){if(a.type===A.bootstrap){var i=a.params,o=a.user,s=a.persistedUser,u=a.initialUser,f=s.userId===o.userId;s.anonymousId!==o.anonymousId&&t(Qe,o.anonymousId),f||t(yt,o.userId),u.traits&&t(Qt,C({},f&&s.traits?s.traits:{},u.traits));var l=Object.keys(a.params);if(l.length){var c=i.an_uid,d=i.an_event,h=l.reduce(function(v,S){if(S.match(vd)||S.match(/^(d|g)clid/)){var g=S.replace(vd,"");v.campaign[g==="campaign"?"name":g]=i[S]}return S.match(pd)&&(v.props[S.replace(pd,"")]=i[S]),S.match(md)&&(v.traits[S.replace(md,"")]=i[S]),v},{campaign:{},props:{},traits:{}});r.dispatch(C({type:A.params,raw:i},h,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,h.traits)},0),d&&setTimeout(function(){return e.track(d,h.props)},0),Object.keys(h.campaign).length&&r.dispatch({type:A.campaign,campaign:h.campaign})}}return n(a)}}}}function wP(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===A.setItemEnd){if(r.key===Qe)return C({},t,{anonymousId:r.value});if(r.key===yt)return C({},t,{userId:r.value})}switch(r.type){case A.identify:return Object.assign({},t,{userId:r.userId,traits:C({},t.traits,r.traits)});case A.reset:return[yt,Qe,Qt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function gd(e){return{userId:e.getItem(yt),anonymousId:e.getItem(Qe),traits:e.getItem(Qt)}}var Ko=function(e){return pt+"TEMP"+pt+e};function bP(e){var t=e.storage,r=t.setItem,n=t.removeItem,a=t.getItem;return function(i){return function(o){return function(s){var u=s.userId,f=s.traits,l=s.options;if(s.type===A.reset&&([yt,Qt,Qe].forEach(function(h){n(h)}),[et,er,"traits"].forEach(function(h){Yt(Ko(h))})),s.type===A.identify){a(Qe)||r(Qe,qn());var c=a(yt),d=a(Qt)||{};c&&c!==u&&i.dispatch({type:A.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(yt,u),f&&r(Qt,C({},d,f))}return o(s)}}}}var Nr={};function yd(e,t){Nr[e]&&oe(Nr[e])&&(Nr[e](t),delete Nr[e])}function wd(e,t,r){return new Promise(function(n,a){return t()?n(e):r<1?a(C({},e,{queue:!0})):new Promise(function(i){return setTimeout(i,10)}).then(function(i){return wd(e,t,r-10).then(n,a)})})}function SP(e){return{abort:e}}function bd(e,t,r){var n={},a=t(),i=e.getState(),o=i.plugins,s=i.queue,u=i.user;if(!i.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(c,d,h){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(h)):(c.requeue.push(d),c.requeueIndex.push(h)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],h=d.plugin,v=d.payload.type,S=a[h][v];if(S&&oe(S)){var g,T=function(p,$){return p===void 0&&(p={}),$===void 0&&($={}),[et,er].reduce(function(O,_){return p.hasOwnProperty(_)&&$[_]&&$[_]!==p[_]&&(O[_]=$[_]),O},p)}(d.payload,u),I=n[T.meta.rid];if(!I&&(g=S({payload:T,config:o[h].config,instance:r,abort:SP}))&&se(g)&&g.abort)return void(n[T.meta.rid]=!0);if(!I){var w=v+":"+h;e.dispatch(C({},T,{type:w,_:{called:w,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var Wo=function(e){var t=e.data,r=e.action,n=e.instance,a=e.state,i=e.allPlugins,o=e.allMatches,s=e.store,u=e.EVENTS;try{var f=a.plugins,l=a.context,c=r.type,d=c.match(tr),h=t.exact.map(function(g){return g.pluginName});d&&(h=o.during.map(function(g){return g.pluginName}));var v=function(g,T){return function(I,w,p){var $=w.config,O=w.name,_=O+"."+I.type;p&&(_=p.event);var k=I.type.match(tr)?function(M,F,X,L,U){return function(z,R){var V=L?L.name:M,Q=R&&xr(R)?R:X;if(L&&(!(Q=R&&xr(R)?R:[M]).includes(M)||Q.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(Q)+" input valid");return C({},U,{abort:{reason:z,plugins:Q,caller:F,_:V}})}}(O,_,T,p,I):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(I,_);return{payload:$P(I),instance:g,config:$||{},abort:k}}}(n,h),S=t.exact.reduce(function(g,T){var I=T.pluginName,w=T.methodName,p=!1;return w.match(/^initialize/)||w.match(/^reset/)||(p=!f[I].loaded),l.offline&&w.match(/^(page|track|identify)/)&&(p=!0),g[""+I]=p,g},{});return Promise.resolve(t.exact.reduce(function(g,T,I){try{var w=T.pluginName;return Promise.resolve(g).then(function(p){function $(){return Promise.resolve(p)}var O=function(){if(t.namespaced&&t.namespaced[w])return Promise.resolve(t.namespaced[w].reduce(function(_,k,M){try{return Promise.resolve(_).then(function(F){return k.method&&oe(k.method)?(function(z,R){var V=kd(z);if(V&&V.name===R){var Q=kd(V.method);throw new Error([R+" plugin is calling method "+z,"Plugins cant call self","Use "+V.method+" "+(Q?"or "+Q.method:"")+" in "+R+" plugin insteadof "+z].join(`
|
|
6
6
|
`))}}(k.methodName,k.pluginName),Promise.resolve(k.method({payload:F,instance:n,abort:(X=F,L=w,U=k.pluginName,function(z,R){return C({},X,{abort:{reason:z,plugins:R||[L],caller:c,from:U||L}})}),config:Id(k.pluginName,f,i),plugins:f})).then(function(z){var R=se(z)?z:{};return Promise.resolve(C({},F,R))})):F;var X,L,U})}catch(F){return Promise.reject(F)}},Promise.resolve(r))).then(function(_){p[w]=_});p[w]=r}();return O&&O.then?O.then($):$()})}catch(p){return Promise.reject(p)}},Promise.resolve({}))).then(function(g){return Promise.resolve(t.exact.reduce(function(T,I,w){try{var p=t.exact.length===w+1,$=I.pluginName,O=i[$];return Promise.resolve(T).then(function(_){var k=g[$]?g[$]:{};if(d&&(k=_),Zo(k,$))return Vo({data:k,method:c,instance:n,pluginName:$,store:s}),Promise.resolve(_);if(Zo(_,$))return p&&Vo({data:_,method:c,instance:n,store:s}),Promise.resolve(_);if(S.hasOwnProperty($)&&S[$]===!0)return s.dispatch({type:"queue",plugin:$,payload:k,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(_);var M=v(g[$],i[$]);return Promise.resolve(O[c]({abort:M.abort,payload:k,instance:n,config:Id($,f,i),plugins:f})).then(function(F){var X=se(F)?F:{},L=C({},_,X),U=g[$];if(Zo(U,$))Vo({data:U,method:c,instance:n,pluginName:$,store:s});else{var z=c+":"+$;(z.match(/:/g)||[]).length<2&&!c.match(Sd)&&!c.match($d)&&n.dispatch(C({},d?L:k,{type:z,_:{called:z,from:"submethod"}}))}return Promise.resolve(L)})})}catch(_){return Promise.reject(_)}},Promise.resolve(r))).then(function(T){if(!(c.match(tr)||c.match(/^registerPlugin/)||c.match($d)||c.match(Sd)||c.match(/^params/)||c.match(/^userIdChanged/))){if(u.plugins.includes(c),T._&&T._.originalAction===c)return T;var I=C({},T,{_:{originalAction:T.type,called:T.type,from:"engineEnd"}});Ed(T,t.exact.length)&&!c.match(/End$/)&&(I=C({},I,{type:T.type+"Aborted"})),s.dispatch(I)}return T})})}catch(g){return Promise.reject(g)}},tr=/Start$/,Sd=/^bootstrap/,$d=/^ready/;function Vo(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(C({},e.data,{type:r,_:{called:r,from:"abort"}}))}function Id(e,t,r){var n=t[e]||r[e];return n&&n.config?n.config:{}}function Td(e,t){return t.reduce(function(r,n){return n[e]?r.concat({methodName:e,pluginName:n.name,method:n[e]}):r},[])}function Pd(e,t){var r=e.replace(tr,""),n=t?":"+t:"";return[""+e+n,""+r+n,r+"End"+n]}function Zo(e,t){var r=e.abort;return!!r&&(r===!0||Od(r,t)||r&&Od(r.plugins,t))}function Ed(e,t){var r=e.abort;if(!r)return!1;if(r===!0||Xe(r))return!0;var n=r.plugins;return xr(r)&&r.length===t||xr(n)&&n.length===t}function xr(e){return Array.isArray(e)}function Od(e,t){return!(!e||!xr(e))&&e.includes(t)}function kd(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function $P(e){return Object.keys(e).reduce(function(t,r){return r==="type"||(t[r]=se(e[r])?Object.assign({},e[r]):e[r]),t},{})}function IP(e,t,r){var n={};return function(a){return function(i){return function(o){try{var s,u=function(p){return s?p:i(c)},f=o.type,l=o.plugins,c=o;if(o.abort)return Promise.resolve(i(o));if(f===A.enablePlugin&&a.dispatch({type:A.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),f===A.disablePlugin&&setTimeout(function(){return yd(o.meta.rid,{payload:o})},0),f===A.initializeEnd){var d=t(),h=Object.keys(d),v=h.filter(function(p){return l.includes(p)}).map(function(p){return d[p]}),S=[],g=[],T=o.disabled,I=v.map(function(p){var $=p.loaded,O=p.name,_=p.config;return wd(p,function(){return $({config:_})},1e4).then(function(k){return n[O]||(a.dispatch({type:A.pluginReadyType(O),name:O,events:Object.keys(p).filter(function(M){return!Go.includes(M)})}),n[O]=!0),S=S.concat(O),p}).catch(function(k){if(k instanceof Error)throw new Error(k);return g=g.concat(k.name),k})});Promise.all(I).then(function(p){var $={plugins:S,failed:g,disabled:T};setTimeout(function(){h.length===I.length+T.length&&a.dispatch(C({},{type:A.ready},$))},0)})}var w=function(){if(f!==A.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return bd(a,t,e)},0),Promise.resolve(function(p,$,O,_,k){try{var M=oe($)?$():$,F=p.type,X=F.replace(tr,"");if(p._&&p._.called)return Promise.resolve(p);var L=O.getState(),U=(V=M,(Q=L.plugins)===void 0&&(Q={}),(Ke=p.options)===void 0&&(Ke={}),Object.keys(V).filter(function(m){var b=Ke.plugins||{};return nP(b[m])?b[m]:b.all!==!1&&(!Q[m]||Q[m].enabled!==!1)}).map(function(m){return V[m]}));F===A.initializeStart&&p.fromEnable&&(U=Object.keys(L.plugins).filter(function(m){var b=L.plugins[m];return p.plugins.includes(m)&&!b.initialized}).map(function(m){return M[m]}));var z=U.map(function(m){return m.name}),R=function(m,b,E){var N=Pd(m).map(function(x){return Td(x,b)});return b.reduce(function(x,D){var q=D.name,B=Pd(m,q).map(function(j){return Td(j,b)}),Z=B[0],y=B[1],P=B[2];return Z.length&&(x.beforeNS[q]=Z),y.length&&(x.duringNS[q]=y),P.length&&(x.afterNS[q]=P),x},{before:N[0],beforeNS:{},during:N[1],duringNS:{},after:N[2],afterNS:{}})}(F,U);return Promise.resolve(Wo({action:p,data:{exact:R.before,namespaced:R.beforeNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(m){function b(){var x=function(){if(F.match(tr))return Promise.resolve(Wo({action:C({},E,{type:X+"End"}),data:{exact:R.after,namespaced:R.afterNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(D){D.meta&&D.meta.hasCallback&&yd(D.meta.rid,{payload:D})})}();return x&&x.then?x.then(function(){return m}):m}if(Ed(m,z.length))return m;var E,N=function(){if(F!==X)return Promise.resolve(Wo({action:C({},m,{type:X}),data:{exact:R.during,namespaced:R.duringNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(x){E=x});E=m}();return N&&N.then?N.then(b):b()})}catch(m){return Promise.reject(m)}var V,Q,Ke}(o,t,e,a,r)).then(function(p){return s=1,i(p)})}();return Promise.resolve(w&&w.then?w.then(u):u(w))}catch(p){return Promise.reject(p)}}}}}function TP(e){return function(t){return function(r){return function(n){var a=n.type,i=n.key,o=n.value,s=n.options;if(a===A.setItem||a===A.removeItem){if(n.abort)return r(n);a===A.setItem?e.setItem(i,o,s):e.removeItem(i,s)}return r(n)}}}}var PP=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,r){e[r]=e[r].concat(t)},this.removeMiddleware=function(t,r){var n=e[r].findIndex(function(a){return a===t});n!==-1&&(e[r]=[].concat(e[r].slice(0,n),e[r].slice(n+1)))},this.dynamicMiddlewares=function(t){return function(r){return function(n){return function(a){var i={getState:r.getState,dispatch:function(s){return r.dispatch(s)}},o=e[t].map(function(s){return s(i)});return qt.apply(void 0,o)(n)(a)}}}}};function EP(e){return function(t,r){t===void 0&&(t={});var n={};if(r.type==="initialize:aborted")return t;if(/^registerPlugin:([^:]*)$/.test(r.type)){var a=_d(r.type,"registerPlugin"),i=e()[a];if(!i||!a)return t;var o=r.enabled,s=i.config;return n[a]={enabled:o,initialized:!!o&&!i.initialize,loaded:!!o&&!!i.loaded({config:s}),config:s},C({},t,n)}if(/^initialize:([^:]*)$/.test(r.type)){var u=_d(r.type,A.initialize),f=e()[u];return f&&u?(n[u]=C({},t[u],{initialized:!0,loaded:!!f.loaded({config:f.config})}),C({},t,n)):t}if(/^ready:([^:]*)$/.test(r.type))return n[r.name]=C({},t[r.name],{loaded:!0}),C({},t,n);switch(r.type){case A.disablePlugin:return C({},t,Rd(r.plugins,!1,t));case A.enablePlugin:return C({},t,Rd(r.plugins,!0,t));default:return t}}}function _d(e,t){return e.substring(t.length+1,e.length)}function Rd(e,t,r){return e.reduce(function(n,a){return n[a]=C({},r[a],{enabled:t}),n},r)}function Cd(e){try{return JSON.parse(JSON.stringify(e))}catch{}return e}var OP={last:{},history:[]};function kP(e,t){e===void 0&&(e=OP);var r=t.options,n=t.meta;if(t.type===A.track){var a=Cd(C({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:n}));return C({},e,{last:a,history:e.history.concat(a)})}return e}var _P={actions:[]};function RP(e,t){e===void 0&&(e=_P);var r=t.payload;switch(t.type){case"queue":var n;return n=r&&r.type&&r.type===A.identify?[t].concat(e.actions):e.actions.concat(t),C({},e,{actions:n});case"dequeue":return[];default:return e}}var Ad=/#.*$/;function CP(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(Ad,""):"")}var jd,Ld,Nd,xd,AP=function(e){if(e===void 0&&(e={}),!re)return e;var t=document,r=t.title,n=t.referrer,a=window,i=a.location,o=a.innerWidth,s=a.innerHeight,u=i.hash,f=i.search,l=function(d){var h=function(){if(re){for(var v,S=document.getElementsByTagName("link"),g=0;v=S[g];g++)if(v.getAttribute("rel")==="canonical")return v.getAttribute("href")}}();return h?h.match(/\?/)?h:h+d:window.location.href.replace(Ad,"")}(f),c={title:r,url:l,path:CP(l),hash:u,search:f,width:o,height:s};return n&&n!==""&&(c.referrer=n),C({},c,e)},jP={last:{},history:[]};function LP(e,t){e===void 0&&(e=jP);var r=t.options;if(t.type===A.page){var n=Cd(C({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return C({},e,{last:n,history:e.history.concat(n)})}return e}jd=function(){if(!re)return!1;var e=navigator.appVersion;return~e.indexOf("Win")?"Windows":~e.indexOf("Mac")?"MacOS":~e.indexOf("X11")?"UNIX":~e.indexOf("Linux")?"Linux":"Unknown OS"}(),Ld=re?document.referrer:null,Nd=lP(),xd=fP();var Ud={initialized:!1,sessionId:qn(),app:null,version:null,debug:!1,offline:!!re&&!navigator.onLine,os:{name:jd},userAgent:re?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.13"},timezone:xd,locale:Nd,campaign:{},referrer:Ld};function NP(e,t){e===void 0&&(e=Ud);var r=e.initialized,n=t.campaign;switch(t.type){case A.campaign:return C({},e,{campaign:n});case A.offline:return C({},e,{offline:!0});case A.online:return C({},e,{offline:!1});default:return r?e:C({},Ud,e,{initialized:!0})}}var xP=["plugins","reducers","storage"];function UP(e,t,r){if(re){var n=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(a){n(a,t)})}}function DP(e){var t=UP.bind(null,"online offline",function(r){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(r){return t(!1)}}function Dd(){return gt("analytics",[]),function(e){return function(t,r,n){var a=e(t,r,n),i=a.dispatch;return Object.assign(a,{dispatch:function(o){return Jt[Zt].analytics.push(o.action||o),i(o)}})}}}function Md(e){return function(){return qt(qt.apply(null,arguments),Dd())}}function Jo(e){return e?ud(e)?e:[e]:[]}function Fd(e,t,r){e===void 0&&(e={});var n,a,i=qn();return t&&(Nr[i]=(n=t,a=function(o){for(var s,u=o||Array.prototype.slice.call(arguments),f=0;f<u.length;f++)if(oe(u[f])){s=u[f];break}return s}(r),function(o){a&&a(o),n(o)})),C({},e,{rid:i,ts:new Date().getTime()},t?{hasCallback:!0}:{})}function MP(e){e===void 0&&(e={});var t=e.reducers||{},r=e.initialUser||{},n=(e.plugins||[]).reduce(function(m,b){if(oe(b))return m.middlewares=m.middlewares.concat(b),m;if(b.NAMESPACE&&(b.name=b.NAMESPACE),!b.name)throw new Error("https://lytics.dev/errors/1");b.config||(b.config={});var E=b.EVENTS?Object.keys(b.EVENTS).map(function(D){return b.EVENTS[D]}):[];m.pluginEnabled[b.name]=!(b.enabled===!1||b.config.enabled===!1),delete b.enabled,b.methods&&(m.methods[b.name]=Object.keys(b.methods).reduce(function(D,q){var B;return D[q]=(B=b.methods[q],function(){for(var Z=Array.prototype.slice.call(arguments),y=new Array(B.length),P=0;P<Z.length;P++)y[P]=Z[P];return y[y.length]=$,B.apply({instance:$},y)}),D},{}),delete b.methods);var N=Object.keys(b).concat(E),x=new Set(m.events.concat(N));if(m.events=Array.from(x),m.pluginsArray=m.pluginsArray.concat(b),m.plugins[b.name])throw new Error(b.name+"AlreadyLoaded");return m.plugins[b.name]=b,m.plugins[b.name].loaded||(m.plugins[b.name].loaded=function(){return!0}),m},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),a=e.storage?e.storage:{getItem:mt,setItem:gt,removeItem:Yt},i=function(m){return function(b,E,N){return E.getState("user")[b]||(N&&se(N)&&N[b]?N[b]:gd(m)[b]||mt(Ko(b))||null)}}(a),o=n.plugins,s=n.events.filter(function(m){return!Go.includes(m)}).sort(),u=new Set(s.concat(ta).filter(function(m){return!Go.includes(m)})),f=Array.from(u).sort(),l=function(){return o},c=new PP,d=c.addMiddleware,h=c.removeMiddleware,v=c.dynamicMiddlewares,S=function(){throw new Error("Abort disabled inListener")},g=dP(),T=gd(a),I=C({},T,r,g.an_uid?{userId:g.an_uid}:{},g.an_aid?{anonymousId:g.an_aid}:{});I.anonymousId||(I.anonymousId=qn());var w=C({enable:function(m,b){return new Promise(function(E){R.dispatch({type:A.enablePlugin,plugins:Jo(m),_:{originalAction:A.enablePlugin}},E,[b])})},disable:function(m,b){return new Promise(function(E){R.dispatch({type:A.disablePlugin,plugins:Jo(m),_:{originalAction:A.disablePlugin}},E,[b])})}},n.methods),p=!1,$={identify:function(m,b,E,N){try{var x=Xe(m)?m:null,D=se(m)?m:b,q=E||{},B=$.user();gt(Ko(et),x);var Z=x||D.userId||i(et,$,D);return Promise.resolve(new Promise(function(y){R.dispatch(C({type:A.identifyStart,userId:Z,traits:D||{},options:q,anonymousId:B.anonymousId},B.id&&B.id!==x&&{previousId:B.id}),y,[b,E,N])}))}catch(y){return Promise.reject(y)}},track:function(m,b,E,N){try{var x=se(m)?m.event:m;if(!x||!Xe(x))throw new Error("EventMissing");var D=se(m)?m:b||{},q=se(E)?E:{};return Promise.resolve(new Promise(function(B){R.dispatch({type:A.trackStart,event:x,properties:D,options:q,userId:i(et,$,b),anonymousId:i(er,$,b)},B,[b,E,N])}))}catch(B){return Promise.reject(B)}},page:function(m,b,E){try{var N=se(m)?m:{},x=se(b)?b:{};return Promise.resolve(new Promise(function(D){R.dispatch({type:A.pageStart,properties:AP(N),options:x,userId:i(et,$,N),anonymousId:i(er,$,N)},D,[m,b,E])}))}catch(D){return Promise.reject(D)}},user:function(m){if(m===et||m==="id")return i(et,$);if(m===er||m==="anonId")return i(er,$);var b=$.getState("user");return m?nd(b,m):b},reset:function(m){return new Promise(function(b){R.dispatch({type:A.resetStart},b,m)})},ready:function(m){return p&&m({plugins:w,instance:$}),$.on(A.ready,function(b){m(b),p=!0})},on:function(m,b){if(!m||!oe(b))return!1;if(m===A.bootstrap)throw new Error(".on disabled for "+m);var E=/Start$|Start:/;if(m==="*"){var N=function(B){return function(Z){return function(y){return y.type.match(E)&&b({payload:y,instance:$,plugins:o}),Z(y)}}},x=function(B){return function(Z){return function(y){return y.type.match(E)||b({payload:y,instance:$,plugins:o}),Z(y)}}};return d(N,ra),d(x,na),function(){h(N,ra),h(x,na)}}var D=m.match(E)?ra:na,q=function(B){return function(Z){return function(y){return y.type===m&&b({payload:y,instance:$,plugins:o,abort:S}),Z(y)}}};return d(q,D),function(){return h(q,D)}},once:function(m,b){if(!m||!oe(b))return!1;if(m===A.bootstrap)throw new Error(".once disabled for "+m);var E=$.on(m,function(N){b({payload:N.payload,instance:$,plugins:o,abort:S}),E()});return E},getState:function(m){var b=R.getState();return m?nd(b,m):Object.assign({},b)},dispatch:function(m){var b=Xe(m)?{type:m}:m;if(ta.includes(b.type))throw new Error("reserved action "+b.type);var E=C({},b,{_:C({originalAction:b.type},m._||{})});R.dispatch(E)},enablePlugin:w.enable,disablePlugin:w.disable,plugins:w,storage:{getItem:a.getItem,setItem:function(m,b,E){R.dispatch({type:A.setItemStart,key:m,value:b,options:E})},removeItem:function(m,b){R.dispatch({type:A.removeItemStart,key:m,options:b})}},setAnonymousId:function(m,b){$.storage.setItem(Qe,m,b)},events:{core:ta,plugins:s}},O=n.middlewares.concat([function(m){return function(b){return function(E){return E.meta||(E.meta=Fd()),b(E)}}},v(ra),IP($,l,{all:f,plugins:s}),TP(a),yP($),bP($),v(na)]),_={context:NP,user:wP(a),page:LP,track:kP,plugins:EP(l),queue:RP},k=qt,M=qt;if(re&&e.debug){var F=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;F&&(k=F({trace:!0,traceLimit:25})),M=function(){return arguments.length===0?Dd():se(typeof arguments[0])?Md():Md().apply(null,arguments)}}var X,L=function(m){return Object.keys(m).reduce(function(b,E){return xP.includes(E)||(b[E]=m[E]),b},{})}(e),U=n.pluginsArray.reduce(function(m,b){var E=b.name,N=b.config,x=b.loaded,D=n.pluginEnabled[E];return m[E]={enabled:D,initialized:!!D&&!b.initialize,loaded:!!x({config:N}),config:N},m},{}),z={context:L,user:I,plugins:U},R=hd(function(m){for(var b=Object.keys(m),E={},N=0;N<b.length;N++){var x=b[N];typeof m[x]===qe&&(E[x]=m[x])}var D,q=Object.keys(E);try{(function(B){Object.keys(B).forEach(function(Z){var y=B[Z];if(typeof y(void 0,{type:"@@redux/INIT"})===He||typeof y(void 0,{type:pP})===He)throw new Error("reducer "+Z+" "+He)})})(E)}catch(B){D=B}return function(B,Z){if(B===void 0&&(B={}),D)throw D;for(var y=!1,P={},j=0;j<q.length;j++){var J=q[j],ce=B[J],bt=(0,E[J])(ce,Z);if(typeof bt===He){var xE=mP(J,Z);throw new Error(xE)}P[J]=bt,y=y||bt!==ce}return y?P:B}}(C({},_,t)),z,M(k(gP.apply(void 0,O))));R.dispatch=(X=R.dispatch,function(m,b,E){var N=C({},m,{meta:Fd(m.meta,b,Jo(E))});return X.apply(null,[N])});var V=Object.keys(o);R.dispatch({type:A.bootstrap,plugins:V,config:L,params:g,user:I,initialUser:r,persistedUser:T});var Q=V.filter(function(m){return n.pluginEnabled[m]}),Ke=V.filter(function(m){return!n.pluginEnabled[m]});return R.dispatch({type:A.registerPlugins,plugins:V,enabled:n.pluginEnabled}),n.pluginsArray.map(function(m,b){var E=m.bootstrap,N=m.config,x=m.name;E&&oe(E)&&E({instance:$,config:N,payload:m}),R.dispatch({type:A.registerPluginType(x),name:x,enabled:n.pluginEnabled[x],plugin:m}),n.pluginsArray.length===b+1&&R.dispatch({type:A.initializeStart,plugins:Q,disabled:Ke})}),DP(function(m){R.dispatch({type:m?A.offline:A.online})}),function(m,b,E){setInterval(function(){return bd(m,b,E)},3e3)}(R,l,$),$}var ra="before",na="after",Ur="cookie",wt=Hd(),Bd=aa,FP=aa;function zd(e){return wt?aa(e,"",-1):Yt(e)}function Hd(){if(wt!==void 0)return wt;var e="cookiecookie";try{aa(e,e),wt=document.cookie.indexOf(e)!==-1,zd(e)}catch{wt=!1}return wt}function aa(e,t,r,n,a,i){if(typeof window<"u"){var o=arguments.length>1;return wt===!1&&(o?gt(e,t):mt(e)),o?document.cookie=e+"="+encodeURIComponent(t)+(r?"; expires="+new Date(+new Date+1e3*r).toUTCString()+(n?"; path="+n:"")+(a?"; domain="+a:"")+(i?"; secure":""):""):decodeURIComponent((("; "+document.cookie).split("; "+e+"=")[1]||"").split(";")[0])}}var Dr="localStorage",BP=Ho.bind(null,"localStorage");Xt("localStorage","getItem",mt),Xt("localStorage","setItem",gt),Xt("localStorage","removeItem",Yt);var Mr="sessionStorage",zP=Ho.bind(null,"sessionStorage");Xt("sessionStorage","getItem",mt),Xt("sessionStorage","setItem",gt),Xt("sessionStorage","removeItem",Yt);function rr(e){var t=e;try{if((t=JSON.parse(e))==="true")return!0;if(t==="false")return!1;if(se(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch{}if(t!==null&&t!=="")return t}var HP=BP(),GP=zP(),KP=Hd();function Gd(e,t){if(e){var r=Yo(t),n=!es(r),a=Xo(r)?rr(localStorage.getItem(e)):void 0;if(n&&!Vt(a))return a;var i=qo(r)?rr(Bd(e)):void 0;if(n&&i)return i;var o=Qo(r)?rr(sessionStorage.getItem(e)):void 0;if(n&&o)return o;var s=mt(e);return n?s:{localStorage:a,sessionStorage:o,cookie:i,global:s}}}function WP(e,t,r){if(e&&!Vt(t)){var n={},a=Yo(r),i=JSON.stringify(t),o=!es(a);return Xo(a)&&(n[Dr]=oa(Dr,t,rr(localStorage.getItem(e))),localStorage.setItem(e,i),o)?n[Dr]:qo(a)&&(n[Ur]=oa(Ur,t,rr(Bd(e))),FP(e,i),o)?n[Ur]:Qo(a)&&(n[Mr]=oa(Mr,t,rr(sessionStorage.getItem(e))),sessionStorage.setItem(e,i),o)?n[Mr]:(n[Lr]=oa(Lr,t,mt(e)),gt(e,t),o?n[Lr]:n)}}function VP(e,t){if(e){var r=Yo(t),n=Gd(e,od),a={};return!Vt(n.localStorage)&&Xo(r)&&(localStorage.removeItem(e),a[Dr]=n.localStorage),!Vt(n.cookie)&&qo(r)&&(zd(e),a[Ur]=n.cookie),!Vt(n.sessionStorage)&&Qo(r)&&(sessionStorage.removeItem(e),a[Mr]=n.sessionStorage),!Vt(n.global)&&ia(r,Lr)&&(Yt(e),a[Lr]=n.global),a}}function Yo(e){return e?Xe(e)?e:e.storage:id}function Xo(e){return HP&&ia(e,Dr)}function qo(e){return KP&&ia(e,Ur)}function Qo(e){return GP&&ia(e,Mr)}function es(e){return e===od||e==="all"}function ia(e,t){return e===id||e===t||es(e)}function oa(e,t,r){return{location:e,current:t,previous:r}}var ZP={setItem:WP,getItem:Gd,removeItem:VP};function JP(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Kd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),r.push.apply(r,n)}return r}function Wd(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Kd(Object(r),!0).forEach(function(n){JP(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Kd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function YP(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t={storage:ZP};return MP(Wd(Wd({},t),e))}function XP(e,t){t=t||{};var r,n,a=[],i=t.max||1/0;function o(){clearInterval(r),e(a.splice(0,i)),s()}function s(){r=setInterval(o,t.interval||1e4)}return s(),{flush:o,push:function(u){return n=a.push(u),n>=i&&o(),n},size:function(){return a.length},end:function(u){u&&o(),clearInterval(r)}}}function qP(e){if(typeof window>"u")return;const{addEventListener:t,history:r,location:n}=window;let a=n.pathname;t("popstate",()=>e(n.pathname)),["push","replace"].map(i=>{const o=`${i}State`;if(o!=="pushState"&&o!=="replaceState")return;const s=r[o];r[o]=function(...u){var c;const f=((c=u[2])==null?void 0:c.toString())||"",l=eE(f);return a!==l&&(a=l,setTimeout(()=>e(f),0)),s.apply(r,u)}})}function QP(e,t){const r=e.indexOf(t);return r>-1?e.slice(0,r):e}function eE(e){return["#","?"].forEach(t=>e=QP(e,t)),e}function tE(){qP(()=>{Ge.page()})}function rE(e){if(e===void 0&&(e={}),!re)return zo;var t=Zd(),r=ts(),n=Vd(),a=sa(n,t),i=sa(r,t),o=[],s=[],u=[],f=n,l=a,c=i,d=Object.keys(e);if(!d.length)return zo;var h=d.map(function(S){return Number(S)}),v=vP(function(){var S=Zd(),g=function(L,U){return U.map(function(z){return z===100?L-5:L*(z/100)})}(S,h),T=ts(),I=Vd(),w=sa(I,S),p=sa(T,S);if(l=w>l?w:l,c=p<c?p:c,!(o.length>=h.length)){var $=f===I,O="up";$?O="initial":f<=I&&(O="down");var _=g,k=h;(O==="up"||$)&&(_=g.slice().reverse(),k=h.slice().reverse());var M=k.reduce(function(L,U,z){var R=_[z];return u.includes(U)&&I<=R&&(u=u.filter(function(V){return V!==U}),L.singleFunction=U),O==="down"&&!o.includes(U)&&I>=R&&U>i?(s.push(U),L.callbacks=L.callbacks.concat(U),L):O==="up"&&!o.includes(U)&&I<=R&&U<=w?(L.foundFunc=[U],L):($&&I>=R&&L.foundFunc.length===0&&(L.foundFunc=[U]),!s.includes(U)&&I>=R&&(s.push(U),L.singleFunction?u.push(U):L.singleFunction=U),L)},{foundFunc:[],singleFunction:null,callbacks:[],direction:O});if(f=I,O==="down"&&M.callbacks&&M.callbacks.forEach(function(L){oe(e[L])&&(e[L]({trigger:L,direction:O,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(L))}),M.singleFunction){var F=M.singleFunction,X=M.direction;oe(e[F])&&e[F]({trigger:F,direction:X,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(F)}}},500);return window.addEventListener("scroll",v),function(){return window.removeEventListener("scroll",v)}}function ts(){return re?document.body.scrollTop||document.documentElement.scrollTop:0}function nE(){return re?window.innerHeight||document.documentElement.clientHeight:0}function Vd(){return Math.round(ts()+nE())}function Zd(){if(!re)return 0;var e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}function sa(e,t){return Math.round(e/t*100)}var Jd="EventListener";function aE(e){return function(t,r,n,a){var i=n||zo,o=a||!1;if(!re)return i;var s=ca(r),u=ca(t,!0);if(!u.length)throw new Error("noElements");if(!s.length)throw new Error("noEvent");var f=[];return function l(c){c&&(f=[]);for(var d=c?"add"+Jd:"remove"+Jd,h=0;h<u.length;h++){var v=u[h];f[h]=c?o&&o.once?iE(i):i:f[h]||i;for(var S=0;S<s.length;S++)v[d]?v["on"+s[S]]=c?f[h]:null:v[d](s[S],f[h],o)}return l.bind(null,!c)}(e)}}function ca(e,t){if(Xe(e))return t?ca(document.querySelectorAll(e)):(r=e).split(r.indexOf(",")>-1?",":" ").map(function(o){return o.trim()});var r;if(NodeList.prototype.isPrototypeOf(e)){for(var n=[],a=e.length>>>0;a--;)n[a]=e[a];return n}var i=uP(e);return t?i.map(function(o){return Xe(o)?ca(o,!0):o}).flat():i}function iE(e,t){var r;return function(){return e&&(r=e.apply(this,arguments),e=null),r}}var rs=aE("Event");function Yd(e,t){return re&&oe(window[e])?(r=window[e],n=t,(a=window)===void 0&&(a=null),oe(r)?function(){r.apply(a,arguments),n.apply(a,arguments)}:n):window[e]=t;var r,n,a}Yd.bind(null,"onerror"),Yd.bind(null,"onload");var Xd=typeof window>"u",qd="hidden";function oE(e){if(Xd)return!1;var t=sE(),r="".concat(t.replace(/[H|h]idden/,""),"visibilitychange"),n=function(){return e(!!document[t])},a=function(){return document.addEventListener(r,n)};return a(),function(){return document.removeEventListener(r,n),a}}function sE(){var e=["webkit","moz","ms","o"];return Xd||qd in document?qd:e.reduce(function(t,r){var n=r+"Hidden";return!t&&n in document?n:t},null)}var cE=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function uE(e,t){t===void 0&&(t={});var r=function(o,s){var u=this,f=!1;return function(l){f||(o.call(u,l),f=!0,setTimeout(function(){return f=!1},s))}}(e,t.throttle||1e4),n=[];function a(){var o=oE(function(s){s||r({type:"tabVisible"})});return n=[o].concat(cE.map(function(s){return rs(document,s,r)})).concat(rs(window,"load",r)).concat(rs(window,"scroll",r,{capture:!0,passive:!0})),i}function i(){n.map(function(o){return o()})}return a(),function(){return i(),a}}function lE(e){var t,r,n=e.onIdle,a=e.onWakeUp,i=e.onHeartbeat,o=e.timeout,s=o===void 0?1e4:o,u=e.throttle,f=u===void 0?2e3:u,l=!1,c=!1,d=new Date,h=function(){return clearTimeout(t)};function v(g){h(),i&&!l&&i(Fr(d),g),a&&l&&(l=!1,a(Fr(r),g),d=new Date),t=setTimeout(function(){l=!0,n&&(r=new Date,n(Fr(d),g))},s)}var S=uE(v,{throttle:f});return{disable:function(){c=!0,l=!1,h();var g=S();return function(){return c=!1,d=new Date,v({type:"load"}),g()}},getStatus:function(){return{isIdle:l,isDisabled:c,active:l?0:Fr(d,c),idle:l?Fr(r,c):0}}}}function Fr(e,t){return t?0:Math.round((new Date-e)/1e3)}const Qd=5e3;class fE{constructor(t){Ie(this,"element");Ie(this,"isInViewport",!1);Ie(this,"isAwake",!1);Ie(this,"isFlushing");Ie(this,"observer");Ie(this,"lastEventAt",Date.now());Ie(this,"registeredView",!1);Ie(this,"viewCallback");Ie(this,"activeDurationCallback");Ie(this,"idleDurationCallback");Ie(this,"scrollCallback");this.element=t.element,this.viewCallback=t.viewCallback,this.activeDurationCallback=t.activeDurationCallback,this.idleDurationCallback=t.idleDurationCallback,this.scrollCallback=t.scrollCallback,this.observer=new IntersectionObserver(r=>{r.forEach(n=>{this.handleInViewPort(n.isIntersecting)})},{threshold:0}),this.observer.observe(this.element),lE({onIdle:r=>this.handleAwake(!1,r),onWakeUp:r=>this.handleAwake(!0,r),timeout:Qd}),rE({25:this.handleScroll.bind(this),50:this.handleScroll.bind(this),75:this.handleScroll.bind(this),90:this.handleScroll.bind(this),100:this.handleScroll.bind(this)})}flush(){this.isFlushing=!0,this.handleAwake(!this.isAwake)}handleInViewPort(t){t?(this.isAwake=!0,this.trackInViewport()):this.handleAwake(!1),this.isInViewport=t}handleAwake(t,r=Math.round((Date.now()-this.lastEventAt)/1e3)){this.isAwake=t,this.lastEventAt=t?Date.now()-r*Qd:Date.now(),this.isInViewport&&this.trackAwake(t,r)}handleScroll(t){this.scrollCallback&&this.scrollCallback(t)}handleVisibilityChange(){this.isAwake=!1;const t=Math.round((Date.now()-this.lastEventAt)/1e3);t>1&&(this.lastEventAt=Date.now(),this.trackAwake(!1,t))}trackAwake(t,r){!t&&this.activeDurationCallback&&this.activeDurationCallback(r,this.isFlushing,this.lastEventAt),t&&this.idleDurationCallback&&this.idleDurationCallback(r,this.isFlushing,this.lastEventAt)}trackInViewport(){this.registeredView||(this.registeredView=!0,this.viewCallback&&this.viewCallback())}}const eh="sesamy_session_id";function dE(){let e=sessionStorage.getItem(eh);return e||(e=Math.random().toString(36).slice(2,9),sessionStorage.setItem(eh,e)),e}let th=!1,ns,rh,ua;const nh=new Map;function hE({clientId:e,enabled:t=!0,environment:r}){if(ns=e,rh=t,ua=`${Be("logs",r)}/events`,!rh)return;window.addEventListener("beforeunload",()=>{ih.forEach((a,i)=>{a.bind(i)()}),pE()}),window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&nh.forEach((a,i)=>{a.bind(i)()})}),tE();const n=new fE({element:document.body,viewCallback:()=>{Ge.page()},activeDurationCallback:(a,i,o)=>{Ge.track("activeDuration",{duration:a,durationStart:o,flushing:i})},idleDurationCallback:(a,i,o)=>{Ge.track("idleDuration",{duration:a,durationStart:o,flushing:i})},scrollCallback:a=>{Ge.track("scroll",{scroll:a.scrollMax})}});mE(document.body,()=>{n.flush()}),gE(document.body,()=>{n.handleVisibilityChange()}),window.addEventListener(Re.AUTHENTICATED,async a=>{const i=a;await Ge.identify(i.detail.sub)}),window.addEventListener(Re.LOGOUT,async()=>{await Ge.track("logout",{}),as.flush(),await Ge.reset()})}function ah(e){return JSON.stringify(e.map(t=>({...t,clientId:ns,requestId:Math.random().toString(36).slice(2,9),sessionId:dE(),timestamp:new Date().toISOString(),version:Bo,event:t.event,context:{page:{url:window.location.hostname,path:window.location.pathname,title:document.title,search:window.location.search,referrer:document.referrer},locale:navigator.language,library:rd,userAgent:navigator.userAgent,clientId:ns}})))}const as=XP(async e=>{if(e.length>0){const t=ah(e);th?navigator.sendBeacon(ua,t):(await fetch(ua,{method:"POST",body:t,headers:{"Content-Type":"text/plain"}})).ok}},{max:10,interval:3e3});function is(e){var t;if(e.anonymousId)if((t=e.properties)!=null&&t.flushing){const r={...e};delete r.properties.flushing,navigator.sendBeacon(ua,ah([r]))}else as.push(e)}const Ge=YP({app:rd,version:Bo,plugins:[{name:"custom-analytics-plugin",page:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;is({anonymousId:r,userId:n,properties:t,event:a,type:"page"})},track:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;is({anonymousId:r,userId:n,properties:t,event:a,type:"track"})},identify:({payload:e})=>{const{properties:t,anonymousId:r,userId:n}=e;is({anonymousId:r,userId:n,properties:t,type:"identify"})}}]});function vE(e,t){Ge.track(e,t)}function pE(){return th=!0,as.flush()}const ih=new Map;function mE(e,t){ih.set(e,t)}function gE(e,t){nh.set(e,t)}const yE=["AdHeader","AdContainer","AD_Top","homead","ad-lead"];function wE(){return new Promise(e=>{const t=yE.map(r=>{const n=document.createElement("div");return n.innerHTML=" ",n.id=r,n.style.position="absolute",document.body.appendChild(n),n});window.setTimeout(()=>{const r=!t.every(n=>{const a=document.querySelector(`#${n.id}`);return a==null?void 0:a.offsetParent});t.forEach(n=>n.remove()),e(r)},100)})}function bE(){const e=navigator.userAgent.toLowerCase(),t=[{name:"Facebook",regex:/fbav|fban/i},{name:"LinkedIn",regex:/linkedin/i},{name:"Instagram",regex:/instagram/i},{name:"Gmail",regex:/gmail/i},{name:"Twitter",regex:/twitter/i},{name:"WeChat",regex:/micromessenger/i},{name:"Line",regex:/line/i},{name:"Snapchat",regex:/snapchat/i},{name:"Pinterest",regex:/pinterest/i},{name:"Kakao",regex:/kakaotalk/i},{name:"Skype",regex:/skype/i},{name:"WhatsApp",regex:/whatsapp/i}];for(const r of t)if(r.regex.test(e))return{isInAppBrowser:!0,browserName:r.name};return/; wv\)/.test(e)?{isInAppBrowser:!0,browserName:"Unknown In-App Browser"}:{isInAppBrowser:!1,browserName:null}}function SE(e){const{createCheckout:t,getCheckout:r,updateCheckout:n,getEntitlement:a,getEntitlements:i,getEntitlementAccess:o,getFulfillments:s,getSubscriptions:u,getContract:f,getContracts:l,cancelContract:c,getBill:d,getBills:h,getTransaction:v,getTransactions:S,getProfile:g,updateProfile:T,getTags:I,deleteTag:w,setTag:p,getUserMetadata:$,listUserMetadata:O,setUserMetadata:_,deleteUserMetadata:k,getTally:M,getTallies:F,pushTally:X,deleteTally:L,getProduct:U,getPaymentIssues:z,isSpotifyLinked:R,unlinkSpotify:V,linkSpotify:Q,autoOnboardProduct:Ke,openHostedAccountPage:m,generateLink:b}=QT(e),E={auth:{getUser:g,isAuthenticated:Cr,loginWithRedirect:Mo,logout:Gf,setToken:Wf},checkouts:{get:r,create:t,update:n},profile:{get:g,update:T,openHostedAccountPage:m,isSpotifyLinked:R,unlinkSpotify:V},analytics:{track:vE},tags:{list:I,set:p,delete:w},entitlements:{get:a,list:i,access:o,signedLinks:Fo},fulfillments:{list:s},contracts:{get:f,list:l,cancel:c},bills:{get:d,list:h},userMetadata:{get:$,list:O,set:_,delete:k},tallies:{get:M,list:F,push:X,delete:L},subscriptions:{list:u},transactions:{get:v,list:S},products:{get:U,autoOnboard:Ke,linkSpotify:Q},browser:{detectAdblock:wE,isInAppBrowser:bE},getVersion:$E,getPaymentIssues:z,generateLink:b,clearCache:Ce};return e.namespace&&(window[e.namespace]=E),E}function $E(){return Bo}function IE(e,t){e.style.position="relative",e.style.height="200px",e.style.overflow="hidden";let n=0;const a=Array.from(e.children);for(const o of a){const s=o.offsetHeight;n+s>200?o.remove():n+=s}const i=document.createElement("style");i.innerHTML=`
|
|
7
7
|
${t.selector}::before {
|
|
8
8
|
content: '';
|
package/dist/sesamy-js.mjs
CHANGED
|
@@ -3614,7 +3614,7 @@ function eP(e) {
|
|
|
3614
3614
|
return i.get(`/entitlements/${y}/access`).json();
|
|
3615
3615
|
}
|
|
3616
3616
|
async function l() {
|
|
3617
|
-
return await Or() ? await i.get("/
|
|
3617
|
+
return await Or() ? await i.get("/fulfillments").json() : [];
|
|
3618
3618
|
}
|
|
3619
3619
|
async function c() {
|
|
3620
3620
|
return i.get("/contracts").json();
|