@sesamy/sesamy-js 1.20.0 → 1.20.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.
@@ -2,5 +2,5 @@
2
2
  `,10)+1,o=a.substring(i)+(n?"//# sourceMappingURL="+n:""),s=new Blob([o],{type:"application/javascript"});return URL.createObjectURL(s)}var Pu,Ou,ku,vi,kT=(Pu="Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscil7c3VwZXIociksdGhpcy5lcnJvcj10LHRoaXMuZXJyb3JfZGVzY3JpcHRpb249cixPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxlLnByb3RvdHlwZSl9c3RhdGljIGZyb21QYXlsb2FkKHtlcnJvcjp0LGVycm9yX2Rlc2NyaXB0aW9uOnJ9KXtyZXR1cm4gbmV3IGUodCxyKX19Y2xhc3MgdCBleHRlbmRzIGV7Y29uc3RydWN0b3IoZSxzKXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIixgTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyR7cihlLFsiZGVmYXVsdCJdKX0nLCBzY29wZTogJyR7cihzKX0nKWApLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXMsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsdC5wcm90b3R5cGUpfX1mdW5jdGlvbiByKGUsdD1bXSl7cmV0dXJuIGUmJiF0LmluY2x1ZGVzKGUpP2U6IiJ9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO2NvbnN0IHM9ZT0+e3ZhcntjbGllbnRJZDp0fT1lLHI9ZnVuY3Rpb24oZSx0KXt2YXIgcj17fTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmdC5pbmRleE9mKHMpPDAmJihyW3NdPWVbc10pO2lmKG51bGwhPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz0wO2ZvcihzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7bzxzLmxlbmd0aDtvKyspdC5pbmRleE9mKHNbb10pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHNbb10pJiYocltzW29dXT1lW3Nbb11dKX1yZXR1cm4gcn0oZSxbImNsaWVudElkIl0pO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKChlPT5PYmplY3Qua2V5cyhlKS5maWx0ZXIoKHQ9PnZvaWQgMCE9PWVbdF0pKS5yZWR1Y2UoKCh0LHIpPT5PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse1tyXTplW3JdfSkpLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IG89e307Y29uc3Qgbj0oZSx0KT0+YCR7ZX18JHt0fWA7YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGFzeW5jKHtkYXRhOnt0aW1lb3V0OmUsYXV0aDpyLGZldGNoVXJsOmksZmV0Y2hPcHRpb25zOmMsdXNlRm9ybURhdGE6YX0scG9ydHM6W3BdfSk9PntsZXQgZjtjb25zdHthdWRpZW5jZTp1LHNjb3BlOmx9PXJ8fHt9O3RyeXtjb25zdCByPWE/KGU9Pntjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMoZSkscj17fTtyZXR1cm4gdC5mb3JFYWNoKCgoZSx0KT0+e3JbdF09ZX0pKSxyfSkoYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7aWYoIXIucmVmcmVzaF90b2tlbiYmInJlZnJlc2hfdG9rZW4iPT09ci5ncmFudF90eXBlKXtjb25zdCBlPSgoZSx0KT0+b1tuKGUsdCldKSh1LGwpO2lmKCFlKXRocm93IG5ldyB0KHUsbCk7Yy5ib2R5PWE/cyhPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKTpKU09OLnN0cmluZ2lmeShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKX1sZXQgaCxnOyJmdW5jdGlvbiI9PXR5cGVvZiBBYm9ydENvbnRyb2xsZXImJihoPW5ldyBBYm9ydENvbnRyb2xsZXIsYy5zaWduYWw9aC5zaWduYWwpO3RyeXtnPWF3YWl0IFByb21pc2UucmFjZShbKGQ9ZSxuZXcgUHJvbWlzZSgoZT0+c2V0VGltZW91dChlLGQpKSkpLGZldGNoKGksT2JqZWN0LmFzc2lnbih7fSxjKSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBwLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighZylyZXR1cm4gaCYmaC5hYm9ydCgpLHZvaWQgcC5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtmPWF3YWl0IGcuanNvbigpLGYucmVmcmVzaF90b2tlbj8oKChlLHQscik9PntvW24odCxyKV09ZX0pKGYucmVmcmVzaF90b2tlbix1LGwpLGRlbGV0ZSBmLnJlZnJlc2hfdG9rZW4pOigoZSx0KT0+e2RlbGV0ZSBvW24oZSx0KV19KSh1LGwpLHAucG9zdE1lc3NhZ2Uoe29rOmcub2ssanNvbjpmfSl9Y2F0Y2goZSl7cC5wb3N0TWVzc2FnZSh7b2s6ITEsanNvbjp7ZXJyb3I6ZS5lcnJvcixlcnJvcl9kZXNjcmlwdGlvbjplLm1lc3NhZ2V9fSl9dmFyIGR9KSl9KCk7Cgo=",Ou=null,ku=!1,function(e){return vi=vi||OT(Pu,Ou,ku),new Worker(vi,e)});const hi={};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},_u=e=>RT[e],Ru=e=>{const{openUrl:t,onRedirect:r}=e,n=Ae(e,["openUrl","onRedirect"]);return Object.assign(Object.assign({},n),{openUrl:t===!1||t?t:r})},pi=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 pi.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(!wn())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(wn().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",!_u(r))throw new Error(`Invalid cache location "${r}"`);n=_u(r)()}this.httpTimeoutMs=t.httpTimeoutInSeconds?1e3*t.httpTimeoutInSeconds:1e4,this.cookieStorage=t.legacySameSiteCookie===!1?Ot:ET,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:PT;var i;this.scope=nn("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?${Qi(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=Tu(di()),i=Tu(di()),o=di(),s=(l=>{const c=new Uint8Array(l);return(d=>{const v={"+":"-","/":"_","=":""};return d.replace(/[+/=]/g,p=>v[p])})(window.btoa(String.fromCharCode(...Array.from(c))))})(await(async l=>await wn().subtle.digest({name:"SHA-256"},new TextEncoder().encode(l)))(o)),u=((l,c,d,v,p,w,g,E)=>Object.assign(Object.assign(Object.assign({client_id:l.clientId},l.authorizationParams),d),{scope:nn(c,d.scope),response_type:"code",response_mode:E||"query",state:v,nonce:p,redirect_uri:g||l.authorizationParams.redirect_uri,code_challenge:w,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(v){if(v.data&&v.data.type==="authorization_response"){if(clearTimeout(d),clearInterval(c),window.removeEventListener("message",l,!1),s.popup.close(),v.data.response.error)return f(ce.fromPayload(v.data.response));u(v.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 ce("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=Ru(t),{openUrl:a,fragment:i,appState:o}=n,s=Ae(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=Ae(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 ce("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 ce("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:nn(this.scope,(r=t.authorizationParams)===null||r===void 0?void 0:r.scope)})}),a=await((i,o)=>{let s=hi[o];return s||(s=i().finally(()=>{delete hi[o],s=null}),hi[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=Ae(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})(()=>pi.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 pi.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:nn(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 it({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=Ae(r,["federated"]),i=n?"&federated":"";return this._url(`/v2/logout?${Qi(Object.assign({clientId:t.clientId},a))}`)+i}async logout(t={}){const r=Ru(t),{openUrl:n}=r,a=Ae(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 ce("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((p,w,g=60)=>new Promise((E,T)=>{const b=window.document.createElement("iframe");b.setAttribute("width","0"),b.setAttribute("height","0"),b.style.display="none";const h=()=>{window.document.body.contains(b)&&(window.document.body.removeChild(b),window.removeEventListener("message",$,!1))};let $;const O=setTimeout(()=>{T(new qi),h()},1e3*g);$=function(k){if(k.origin!=w||!k.data||k.data.type!=="authorization_response")return;const R=k.source;R&&R.close(),k.data.response.error?T(ce.fromPayload(k.data.response)):E(k.data.response),clearTimeout(O),window.removeEventListener("message",$,!1),setTimeout(h,2e3)},window.addEventListener("message",$,!1),window.document.body.appendChild(b),b.setAttribute("src",p)}))(a,this.domainUrl,c);if(i!==d.state)throw new ce("state_mismatch","Invalid state");const v=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({},v),{scope:f,oauthTokenScope:v.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 it({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=Ae(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 it({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 it({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 Oe=(e=>(e.READY="sesamyJsReady",e.AUTHENTICATED="sesamyJsAuthenticated",e.LOGOUT="sesamyJsLogout",e.CLEAR_CACHE="sesamyJsClearCache",e.USER_ATTRIBUTE_CHANGED="sesamyUserAttributeChanged",e.PURCHASE="sesamyJsPurchase",e))(Oe||{});const jT="sesamy.com",LT="sesamy.dev",NT="https://sesa.my",to="sesamyCacheTimestamp";function Ke(e,t){return`https://${e}.${t==="dev"?LT:jT}`}let le,Ld,Nd=!1;const zt="sesamyAccessToken",mi="sesamyRefreshToken";async function Nr(){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(mi);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(mi),new Error("Renew token failed");const i=await a.json();return localStorage.setItem(mi,i.refresh_token),localStorage.setItem(zt,i.access_token),i.access_token}catch{xd()}}async function Jo(){const e=localStorage.getItem(zt);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(zt)}return e}function Cu(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:Ke("token",e.environment),clientId:e.clientId,useCookiesForTransactions:!0};if(Cu(window.location.href)!==Cu(Ke("auth",e.environment))&&(t.cacheLocation="localstorage",t.useRefreshTokens=!0),le=await AT(t),window.location.search.includes("code="))try{await le.handleRedirectCallback();const r=await le.getUser();Xe(Oe.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 Yo(){return await Nr(),await Jo()?!0:le?le.isAuthenticated():!1}async function DT(){return await Nr(),await Jo()?{sub:"local",name:"Local User"}:le?le.getUser():null}async function Xo(e){if(await Nr(),localStorage.removeItem(zt),!le)throw new Error("Auth0 client not initialized");const t=(e==null?void 0:e.authorizationParams)||{};return le.loginWithRedirect({...e,authorizationParams:{organization:Ld,redirect_uri:window.location.href,...t}})}async function cr(e=!0){await Nr();const t=await Jo();if(t)return t;try{return le?await le.getTokenSilently():null}catch(r){if(e)throw r;return null}}async function xd(e={}){if(await Nr(),localStorage.removeItem(zt),Xe(Oe.LOGOUT,{}),!!le)return le.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(zt,e),Xe(Oe.AUTHENTICATED,t)}const MT=(e,t)=>t.skipDedupe||t.method!=="GET",FT=(e,t)=>t.method+"@"+e,BT=e=>e.clone(),Au=({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,l])=>l(u)),n.delete(s),u})}catch(u){return n.delete(s),Promise.reject(u)}}},zT=(e,t)=>e*t,HT=e=>e&&e.ok,ju=({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=(v,p)=>Promise.resolve(n(v,p)).then(w=>w?v&&o?v:p?Promise.reject(p):v:(c++,!r||c<=r?new Promise(g=>{const E=t(e,c);setTimeout(()=>{typeof a=="function"?Promise.resolve(a({response:v,error:p,url:f,options:l})).then((T={})=>{var b,h;g(u((b=T&&T.url)!==null&&b!==void 0?b:f,(h=T&&T.options)!==null&&h!==void 0?h:l))}):g(u(f,l))},E)}).then(d).catch(g=>{if(!i)throw g;return d(null,g)}):v&&o?v:Promise.reject(p||new Error("Number of attempts exceeded."))));return u(f,l).then(d).catch(v=>{if(!i)throw v;return d(null,v)})},KT="application/json",Md="Content-Type",Tt=Symbol(),Fd=Symbol();function Lu(e={}){var t;return(t=Object.entries(e).find(([r])=>r.toLowerCase()===Md.toLowerCase()))===null||t===void 0?void 0:t[1]}function Nu(e){return/^application\/.*json.*/.test(e)}const st=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]=st(o,i,r):n[a]=i,n},{...e})},Ht={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 GT(e,t=!1){Ht.options=t?e:st(Ht.options,e)}function WT(e,t=!1){Ht.polyfills=t?e:st(Ht.polyfills,e)}function VT(e){Ht.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((b,h)=>h.beforeRequest&&h.beforeRequest(b,e._options,t)||b,e);const{_url:r,_options:n,_config:a,_catchers:i,_resolvers:o,_middlewares:s,_addons:u}=e,f=new Map(i),l=st(a.options,n);let c=r;const d=ZT(s)((b,h)=>(c=b,a.polyfill("fetch")(b,h)))(r,l),v=new Error,p=d.catch(b=>{throw{[Tt]:b}}).then(b=>{if(!b.ok){const h=new Bd;if(h.cause=v,h.stack=h.stack+`
5
- CAUSE: `+v.stack,h.response=b,h.url=c,b.type==="opaque")throw h;return b.text().then($=>{var O;if(h.message=$,a.errorType==="json"||((O=b.headers.get("Content-Type"))===null||O===void 0?void 0:O.split(";")[0])==="application/json")try{h.json=JSON.parse($)}catch{}throw h.text=$,h.status=b.status,h})}return b}),w=b=>b.catch(h=>{const $=h.hasOwnProperty(Tt),O=$?h[Tt]:h,k=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||$&&f.has(Tt)&&f.get(Tt);if(k)return k(O,e);const R=f.get(Fd);if(R)return R(O,e);throw O}),g=b=>h=>w(b?p.then($=>$&&$[b]()).then($=>h?h($):$):p.then($=>h?h($):$)),E={_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(b,h){return f.set(b,h),this},badRequest(b){return this.error(400,b)},unauthorized(b){return this.error(401,b)},forbidden(b){return this.error(403,b)},notFound(b){return this.error(404,b)},timeout(b){return this.error(408,b)},internalError(b){return this.error(500,b)},fetchError(b){return this.error(Tt,b)}},T=u.reduce((b,h)=>({...b,...typeof h.resolver=="function"?h.resolver(b):h.resolver}),E);return o.reduce((b,h)=>h(b,e),T)},YT={_url:"",_options:{},_config:Ht,_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:st(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:st(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:st(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=Lu(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||Nu(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=Lu(this._options.headers);return this.content(t||Nu(r)&&r||KT).body(JSON.stringify(e))}};function Fe(e="",t={}){return{...YT,_url:e,_options:t}}Fe.default=Fe;Fe.options=GT;Fe.errorType=VT;Fe.polyfills=WT;Fe.WretchError=Bd;function Ie(){sessionStorage.removeItem(to),Xe(Oe.CLEAR_CACHE,{})}function xu(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function XT(e){const t=Ke("api2",e.environment),r=S=>async(I,C)=>{let J=sessionStorage.getItem(to);J||(J=Date.now().toString(),sessionStorage.setItem(to,J));const se={...C,headers:{...C.headers,"Cache-Timestamp":J}};return S(I,se)},n=(S=!0)=>I=>async(C,J)=>{let se=null;if(se=await cr(S),!se){if(S)throw new Error("No access token available");return I(C,J)}const gt={...J,headers:{...J.headers,...se?{Authorization:`Bearer ${se}`}:{}}};return I(C,gt)},a=S=>(I,C)=>{if(C.headers.Authorization)return S(I,C);const J=localStorage.getItem("__anon_id"),se=btoa(`${J}:`),gt={...C,headers:{...C.headers,Authorization:`Basic ${se}`}};return S(I,gt)},i=Fe(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Au(),ju({delayTimer:1e3,delayRamp:(S,I)=>S*I,maxAttempts:3,until:S=>!!(S&&(S.ok||S.status>=400&&S.status<500)),retryOnNetworkError:!1})]),o=Fe(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Au(),ju({delayTimer:1e3,delayRamp:(S,I)=>S*I,maxAttempts:3,until:S=>!!(S&&(S.ok||S.status>=400&&S.status<500)),retryOnNetworkError:!1})]);async function s(){return i.get("/entitlements").json()}async function u(S){const I=await i.get("/entitlements").json();return I==null?void 0:I.find(C=>C.id===S)}async function f(S){return i.get(`/entitlements/${S}/access`).json()}async function l(){return i.get("/contracts").json()}async function c(S){const I=await i.get("/contracts").json();return I==null?void 0:I.find(C=>C.id===S)}async function d(S){return(await i.post(`/contracts/${S}/cancel`).res()).ok}async function v(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function p(){return i.get("/bills").json()}async function w(S){const I=await i.get("/bills").json();return I==null?void 0:I.find(C=>C.id===S)}async function g(){return i.get("/transactions").json()}async function E(S){const I=await i.get("/transactions").json();return I==null?void 0:I.find(C=>C.id===S)}async function T(S,I){const C=await i.url(`/user-metadata/${S}`).put(I).json();return Xe(Oe.USER_ATTRIBUTE_CHANGED,{}),Ie(),C}async function b(S){const I=await i.url(`/user-metadata/${S}`).delete().res();return Ie(),I.ok}async function h(S){return(await i.url(`/user-metadata/${S}`).get().json())[S]}async function $(){return await i.url("/user-metadata").get().json()}async function O(){return await i.url("/tags").get().json()}async function k(S){const I=await i.url(`/tags/${S}`).delete().res();return Ie(),I.ok}async function R(S){const I=await i.url("/tags").post(S).res();return Xe(Oe.USER_ATTRIBUTE_CHANGED,{}),Ie(),I.ok}async function M(S){return(await o.url("/tallies").get().json())[S]}async function F(){return await o.url("/tallies").get().json()}async function V(S){const I=await o.url(`/tallies/${S}`).delete().res();return Ie(),I.ok}async function L(S,I){return await o.url(`/tallies/${S}/push`).post(I).json()}async function U(S){return await i.url(`/products/${S}`).get().json()}async function z(){return await cr(!1)?await i.url("/profile").get().json():null}async function _(S){const I=await i.url("/profile").patch(S).res();return Ie(),I.ok}async function G(){return await i.url("/payment-issues").get().json()}async function X(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function Ne(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function m(S){const I=await cr(!1);if(!I)throw new Error("No access token available");const C=new URL(`${Ke("spotify-oas",e.environment)}/sesamy-callback`);C.searchParams.set("access_token",I),C.searchParams.set("state",S),window.location.href=C.toString()}async function y(S){const I=await i.url(`/products/${S}/auto-onboard`).post().json();return I.length&&Ie(),I}async function P(S,I=3600){const{shortlink:C}=await Fe(NT).post({url:S,ttl:I}).json();return C}async function N(S){const I=await cr(!1);let C;const J=S.language||xu();switch(S.target){case"account":C=new URL(`${Ke("account",e.environment)}/${J}/subscriptions/${e.clientId}`);break;case"consume":C=new URL(`${Ke("consume",e.environment)}/${J}/@${e.clientId}/${S.sku}`),S.episodeId?C.href+=`/${S.episodeId}`:C.href+="/listen";break;default:throw new Error("Invalid target")}return C.searchParams.set("sesamy-redirect-url",S.redirectUrl||window.location.href),I&&(C.hash=`#access_token=${I}`),S.shorten?P(C.href,S.ttl):C.href}async function x(S){return(await o.url("/checkouts").post({language:xu(),...S,vendorId:e.clientId})).json()}async function D(S,I){return(await o.url(`/checkouts/${S}`).patch(I)).json()}async function Z(S){return(await o.url(`/checkouts/${S}`).get()).json()}async function B(){const S=await cr(!1),I=new URL(`${Ke("account",e.environment)}/subscriptions/${e.clientId}`);S&&(I.hash=`#access_token=${S}`),window.location.href=I.toString()}return{createCheckout:x,updateCheckout:D,getCheckout:Z,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getContracts:l,getContract:c,cancelContract:d,getProfile:z,updateProfile:_,getSubscriptions:v,getBills:p,getBill:w,setUserMetadata:T,deleteUserMetadata:b,getUserMetadata:h,listUserMetadata:$,getTags:O,deleteTag:k,setTag:R,getTally:M,getTallies:F,deleteTally:V,pushTally:L,getTransactions:g,getTransaction:E,getProduct:U,getPaymentIssues:G,autoOnboardProduct:y,isSpotifyLinked:X,unlinkSpotify:Ne,linkSpotify:m,generateLink:N,openHostedAccountPage:B}}const zd="@sesamy/sesamy-js",qo="1.19.1";function Uu(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 an="undefined",Du="object",ro=function(){},Hd="any",Kd="*",lt="__",Ln=typeof process<"u"?process:{};Ln.env&&Ln.env.NODE_ENV;var q=typeof document<"u";Ln.versions!=null&&Ln.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 Gd(e,t){return t.charAt(0)[e]()+t.slice(1)}var qT=Gd.bind(null,"toUpperCase"),QT=Gd.bind(null,"toLowerCase");function eE(e){return Wd(e)?qT("null"):typeof e=="object"?aE(e):Object.prototype.toString.call(e).slice(8,-1)}function Nn(e,t){t===void 0&&(t=!0);var r=eE(e);return t?QT(r):r}function xr(e,t){return typeof t===e}var oe=xr.bind(null,"function"),Ze=xr.bind(null,"string"),Ct=xr.bind(null,"undefined"),tE=xr.bind(null,"boolean");xr.bind(null,"symbol");function Wd(e){return e===null}function rE(e){return Nn(e)==="number"&&!isNaN(e)}function Vd(e){return Nn(e)==="array"}function ie(e){if(!nE(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function nE(e){return e&&(typeof e=="object"||e!==null)}function aE(e){return oe(e.constructor)?e.constructor.name:null}function iE(e){return e instanceof Error||Ze(e.message)&&e.constructor&&rE(e.constructor.stackTraceLimit)}function Zd(e,t){if(typeof t!="object"||Wd(t))return!1;if(t instanceof e)return!0;var r=Nn(new e(""));if(iE(t))for(;t;){if(Nn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}Zd.bind(null,TypeError);Zd.bind(null,SyntaxError);function ra(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?oE(e,t):r}function oE(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function na(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}na(ra,"form");na(ra,"button");na(ra,"input");na(ra,"select");function sE(e){return e?Vd(e)?e:[e]:[]}function Mu(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function cE(){if(q){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function uE(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function lE(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=Mu(r[1]),o=Mu(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&&(fE(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 fE(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 aa(){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 dE(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 br="global",Kt=lt+"global"+lt,Gt=typeof self===Du&&self.self===self&&self||typeof global===Du&&global.global===global&&global||void 0;function ft(e){return Gt[Kt][e]}function dt(e,t){return Gt[Kt][e]=t}function qt(e){delete Gt[Kt][e]}function Qt(e,t,r){var n;try{if(Qo(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Gt[Kt]||(Gt[Kt]={});var on={};function Qo(e){if(typeof on[e]!==an)return on[e];try{var t=window[e];t.setItem(an,an),t.removeItem(an)}catch{return on[e]=!1}return on[e]=!0}function j(){return j=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},j.apply(this,arguments)}var Ge="function",Me="undefined",vE="@@redux/"+Math.random().toString(36),Fu=function(){return typeof Symbol===Ge&&Symbol.observable||"@@observable"}(),sn=" != "+Ge;function Jd(e,t,r){var n;if(typeof t===Ge&&typeof r===Me&&(r=t,t=void 0),typeof r!==Me){if(typeof r!==Ge)throw new Error("enhancer"+sn);return r(Jd)(e,t)}if(typeof e!==Ge)throw new Error("reducer"+sn);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(v){if(typeof v!==Ge)throw new Error("Listener"+sn);var p=!0;return f(),s.push(v),function(){if(p){p=!1,f();var w=s.indexOf(v);s.splice(w,1)}}}function d(v){if(!ie(v))throw new Error("Act != obj");if(typeof v.type===Me)throw new Error("ActType "+Me);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,v)}finally{u=!1}for(var p=o=s,w=0;w<p.length;w++)(0,p[w])();return v}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(v){if(typeof v!==Ge)throw new Error("next reducer"+sn);a=v,d({type:"@@redux/INIT"})}})[Fu]=function(){var v,p=c;return(v={subscribe:function(w){if(typeof w!="object")throw new TypeError("Observer != obj");function g(){w.next&&w.next(l())}return g(),{unsubscribe:p(g)}}})[Fu]=function(){return this},v},n}function hE(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+Me}function Wt(){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 pE(){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)}),j({},o,{dispatch:s=Wt.apply(void 0,i)(o.dispatch)})}}}var Je=lt+"anon_id",ct=lt+"user_id",Lt=lt+"user_traits",He="userId",At="anonymousId",bn=["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"],no=["name","EVENTS","config","loaded"],A=bn.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),Bu=/^utm_/,zu=/^an_prop_/,Hu=/^an_trait_/;function mE(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(Je,o.anonymousId),f||t(ct,o.userId),u.traits&&t(Lt,j({},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,v=l.reduce(function(p,w){if(w.match(Bu)||w.match(/^(d|g)clid/)){var g=w.replace(Bu,"");p.campaign[g==="campaign"?"name":g]=i[w]}return w.match(zu)&&(p.props[w.replace(zu,"")]=i[w]),w.match(Hu)&&(p.traits[w.replace(Hu,"")]=i[w]),p},{campaign:{},props:{},traits:{}});r.dispatch(j({type:A.params,raw:i},v,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,v.traits)},0),d&&setTimeout(function(){return e.track(d,v.props)},0),Object.keys(v.campaign).length&&r.dispatch({type:A.campaign,campaign:v.campaign})}}return n(a)}}}}function gE(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===A.setItemEnd){if(r.key===Je)return j({},t,{anonymousId:r.value});if(r.key===ct)return j({},t,{userId:r.value})}switch(r.type){case A.identify:return Object.assign({},t,{userId:r.userId,traits:j({},t.traits,r.traits)});case A.reset:return[ct,Je,Lt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Ku(e){return{userId:e.getItem(ct),anonymousId:e.getItem(Je),traits:e.getItem(Lt)}}var ao=function(e){return lt+"TEMP"+lt+e};function yE(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&&([ct,Lt,Je].forEach(function(v){n(v)}),[He,At,"traits"].forEach(function(v){qt(ao(v))})),s.type===A.identify){a(Je)||r(Je,aa());var c=a(ct),d=a(Lt)||{};c&&c!==u&&i.dispatch({type:A.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(ct,u),f&&r(Lt,j({},d,f))}return o(s)}}}}var vr={};function Gu(e,t){vr[e]&&oe(vr[e])&&(vr[e](t),delete vr[e])}function Yd(e,t,r){return new Promise(function(n,a){return t()?n(e):r<1?a(j({},e,{queue:!0})):new Promise(function(i){return setTimeout(i,10)}).then(function(i){return Yd(e,t,r-10).then(n,a)})})}function wE(e){return{abort:e}}function Xd(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,v){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(v)):(c.requeue.push(d),c.requeueIndex.push(v)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],v=d.plugin,p=d.payload.type,w=a[v][p];if(w&&oe(w)){var g,E=function(h,$){return h===void 0&&(h={}),$===void 0&&($={}),[He,At].reduce(function(O,k){return h.hasOwnProperty(k)&&$[k]&&$[k]!==h[k]&&(O[k]=$[k]),O},h)}(d.payload,u),T=n[E.meta.rid];if(!T&&(g=w({payload:E,config:o[v].config,instance:r,abort:wE}))&&ie(g)&&g.abort)return void(n[E.meta.rid]=!0);if(!T){var b=p+":"+v;e.dispatch(j({},E,{type:b,_:{called:b,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var gi=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(Nt),v=t.exact.map(function(g){return g.pluginName});d&&(v=o.during.map(function(g){return g.pluginName}));var p=function(g,E){return function(T,b,h){var $=b.config,O=b.name,k=O+"."+T.type;h&&(k=h.event);var R=T.type.match(Nt)?function(M,F,V,L,U){return function(z,_){var G=L?L.name:M,X=_&&Pr(_)?_:V;if(L&&(!(X=_&&Pr(_)?_:[M]).includes(M)||X.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(X)+" input valid");return j({},U,{abort:{reason:z,plugins:X,caller:F,_:G}})}}(O,k,E,h,T):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(T,k);return{payload:bE(T),instance:g,config:$||{},abort:R}}}(n,v),w=t.exact.reduce(function(g,E){var T=E.pluginName,b=E.methodName,h=!1;return b.match(/^initialize/)||b.match(/^reset/)||(h=!f[T].loaded),l.offline&&b.match(/^(page|track|identify)/)&&(h=!0),g[""+T]=h,g},{});return Promise.resolve(t.exact.reduce(function(g,E,T){try{var b=E.pluginName;return Promise.resolve(g).then(function(h){function $(){return Promise.resolve(h)}var O=function(){if(t.namespaced&&t.namespaced[b])return Promise.resolve(t.namespaced[b].reduce(function(k,R,M){try{return Promise.resolve(k).then(function(F){return R.method&&oe(R.method)?(function(z,_){var G=qu(z);if(G&&G.name===_){var X=qu(G.method);throw new Error([_+" plugin is calling method "+z,"Plugins cant call self","Use "+G.method+" "+(X?"or "+X.method:"")+" in "+_+" plugin insteadof "+z].join(`
5
+ CAUSE: `+v.stack,h.response=b,h.url=c,b.type==="opaque")throw h;return b.text().then($=>{var O;if(h.message=$,a.errorType==="json"||((O=b.headers.get("Content-Type"))===null||O===void 0?void 0:O.split(";")[0])==="application/json")try{h.json=JSON.parse($)}catch{}throw h.text=$,h.status=b.status,h})}return b}),w=b=>b.catch(h=>{const $=h.hasOwnProperty(Tt),O=$?h[Tt]:h,k=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||$&&f.has(Tt)&&f.get(Tt);if(k)return k(O,e);const R=f.get(Fd);if(R)return R(O,e);throw O}),g=b=>h=>w(b?p.then($=>$&&$[b]()).then($=>h?h($):$):p.then($=>h?h($):$)),E={_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(b,h){return f.set(b,h),this},badRequest(b){return this.error(400,b)},unauthorized(b){return this.error(401,b)},forbidden(b){return this.error(403,b)},notFound(b){return this.error(404,b)},timeout(b){return this.error(408,b)},internalError(b){return this.error(500,b)},fetchError(b){return this.error(Tt,b)}},T=u.reduce((b,h)=>({...b,...typeof h.resolver=="function"?h.resolver(b):h.resolver}),E);return o.reduce((b,h)=>h(b,e),T)},YT={_url:"",_options:{},_config:Ht,_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:st(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:st(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:st(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=Lu(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||Nu(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=Lu(this._options.headers);return this.content(t||Nu(r)&&r||KT).body(JSON.stringify(e))}};function Fe(e="",t={}){return{...YT,_url:e,_options:t}}Fe.default=Fe;Fe.options=GT;Fe.errorType=VT;Fe.polyfills=WT;Fe.WretchError=Bd;function Ie(){sessionStorage.removeItem(to),Xe(Oe.CLEAR_CACHE,{})}function xu(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function XT(e){const t=Ke("api2",e.environment),r=S=>async(I,C)=>{let J=sessionStorage.getItem(to);J||(J=Date.now().toString(),sessionStorage.setItem(to,J));const se={...C,headers:{...C.headers,"Cache-Timestamp":J}};return S(I,se)},n=(S=!0)=>I=>async(C,J)=>{let se=null;if(se=await cr(S),!se){if(S)throw new Error("No access token available");return I(C,J)}const gt={...J,headers:{...J.headers,...se?{Authorization:`Bearer ${se}`}:{}}};return I(C,gt)},a=S=>(I,C)=>{if(C.headers.Authorization)return S(I,C);const J=localStorage.getItem("__anon_id"),se=btoa(`${J}:`),gt={...C,headers:{...C.headers,Authorization:`Basic ${se}`}};return S(I,gt)},i=Fe(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Au(),ju({delayTimer:1e3,delayRamp:(S,I)=>S*I,maxAttempts:3,until:S=>!!(S&&(S.ok||S.status>=400&&S.status<500)),retryOnNetworkError:!1})]),o=Fe(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Au(),ju({delayTimer:1e3,delayRamp:(S,I)=>S*I,maxAttempts:3,until:S=>!!(S&&(S.ok||S.status>=400&&S.status<500)),retryOnNetworkError:!1})]);async function s(){return i.get("/entitlements").json()}async function u(S){const I=await i.get("/entitlements").json();return I==null?void 0:I.find(C=>C.id===S)}async function f(S){return i.get(`/entitlements/${S}/access`).json()}async function l(){return i.get("/contracts").json()}async function c(S){const I=await i.get("/contracts").json();return I==null?void 0:I.find(C=>C.id===S)}async function d(S){return(await i.post({},`/contracts/${S}/cancel`).res()).ok}async function v(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function p(){return i.get("/bills").json()}async function w(S){const I=await i.get("/bills").json();return I==null?void 0:I.find(C=>C.id===S)}async function g(){return i.get("/transactions").json()}async function E(S){const I=await i.get("/transactions").json();return I==null?void 0:I.find(C=>C.id===S)}async function T(S,I){const C=await i.url(`/user-metadata/${S}`).put(I).json();return Xe(Oe.USER_ATTRIBUTE_CHANGED,{}),Ie(),C}async function b(S){const I=await i.url(`/user-metadata/${S}`).delete().res();return Ie(),I.ok}async function h(S){return(await i.url(`/user-metadata/${S}`).get().json())[S]}async function $(){return await i.url("/user-metadata").get().json()}async function O(){return await i.url("/tags").get().json()}async function k(S){const I=await i.url(`/tags/${S}`).delete().res();return Ie(),I.ok}async function R(S){const I=await i.url("/tags").post(S).res();return Xe(Oe.USER_ATTRIBUTE_CHANGED,{}),Ie(),I.ok}async function M(S){return(await o.url("/tallies").get().json())[S]}async function F(){return await o.url("/tallies").get().json()}async function V(S){const I=await o.url(`/tallies/${S}`).delete().res();return Ie(),I.ok}async function L(S,I){return await o.url(`/tallies/${S}/push`).post(I).json()}async function U(S){return await i.url(`/products/${S}`).get().json()}async function z(){return await cr(!1)?await i.url("/profile").get().json():null}async function _(S){const I=await i.url("/profile").patch(S).res();return Ie(),I.ok}async function G(){return await i.url("/payment-issues").get().json()}async function X(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function Ne(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function m(S){const I=await cr(!1);if(!I)throw new Error("No access token available");const C=new URL(`${Ke("spotify-oas",e.environment)}/sesamy-callback`);C.searchParams.set("access_token",I),C.searchParams.set("state",S),window.location.href=C.toString()}async function y(S){const I=await i.url(`/products/${S}/auto-onboard`).post().json();return I.length&&Ie(),I}async function P(S,I=3600){const{shortlink:C}=await Fe(NT).post({url:S,ttl:I}).json();return C}async function N(S){const I=await cr(!1);let C;const J=S.language||xu();switch(S.target){case"account":C=new URL(`${Ke("account",e.environment)}/${J}/subscriptions/${e.clientId}`);break;case"consume":C=new URL(`${Ke("consume",e.environment)}/${J}/@${e.clientId}/${S.sku}`),S.episodeId?C.href+=`/${S.episodeId}`:C.href+="/listen";break;default:throw new Error("Invalid target")}return C.searchParams.set("sesamy-redirect-url",S.redirectUrl||window.location.href),I&&(C.hash=`#access_token=${I}`),S.shorten?P(C.href,S.ttl):C.href}async function x(S){return(await o.url("/checkouts").post({language:xu(),...S,vendorId:e.clientId})).json()}async function D(S,I){return(await o.url(`/checkouts/${S}`).patch(I)).json()}async function Z(S){return(await o.url(`/checkouts/${S}`).get()).json()}async function B(){const S=await cr(!1),I=new URL(`${Ke("account",e.environment)}/subscriptions/${e.clientId}`);S&&(I.hash=`#access_token=${S}`),window.location.href=I.toString()}return{createCheckout:x,updateCheckout:D,getCheckout:Z,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getContracts:l,getContract:c,cancelContract:d,getProfile:z,updateProfile:_,getSubscriptions:v,getBills:p,getBill:w,setUserMetadata:T,deleteUserMetadata:b,getUserMetadata:h,listUserMetadata:$,getTags:O,deleteTag:k,setTag:R,getTally:M,getTallies:F,deleteTally:V,pushTally:L,getTransactions:g,getTransaction:E,getProduct:U,getPaymentIssues:G,autoOnboardProduct:y,isSpotifyLinked:X,unlinkSpotify:Ne,linkSpotify:m,generateLink:N,openHostedAccountPage:B}}const zd="@sesamy/sesamy-js",qo="1.19.1";function Uu(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 an="undefined",Du="object",ro=function(){},Hd="any",Kd="*",lt="__",Ln=typeof process<"u"?process:{};Ln.env&&Ln.env.NODE_ENV;var q=typeof document<"u";Ln.versions!=null&&Ln.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 Gd(e,t){return t.charAt(0)[e]()+t.slice(1)}var qT=Gd.bind(null,"toUpperCase"),QT=Gd.bind(null,"toLowerCase");function eE(e){return Wd(e)?qT("null"):typeof e=="object"?aE(e):Object.prototype.toString.call(e).slice(8,-1)}function Nn(e,t){t===void 0&&(t=!0);var r=eE(e);return t?QT(r):r}function xr(e,t){return typeof t===e}var oe=xr.bind(null,"function"),Ze=xr.bind(null,"string"),Ct=xr.bind(null,"undefined"),tE=xr.bind(null,"boolean");xr.bind(null,"symbol");function Wd(e){return e===null}function rE(e){return Nn(e)==="number"&&!isNaN(e)}function Vd(e){return Nn(e)==="array"}function ie(e){if(!nE(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function nE(e){return e&&(typeof e=="object"||e!==null)}function aE(e){return oe(e.constructor)?e.constructor.name:null}function iE(e){return e instanceof Error||Ze(e.message)&&e.constructor&&rE(e.constructor.stackTraceLimit)}function Zd(e,t){if(typeof t!="object"||Wd(t))return!1;if(t instanceof e)return!0;var r=Nn(new e(""));if(iE(t))for(;t;){if(Nn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}Zd.bind(null,TypeError);Zd.bind(null,SyntaxError);function ra(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?oE(e,t):r}function oE(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function na(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}na(ra,"form");na(ra,"button");na(ra,"input");na(ra,"select");function sE(e){return e?Vd(e)?e:[e]:[]}function Mu(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function cE(){if(q){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function uE(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function lE(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=Mu(r[1]),o=Mu(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&&(fE(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 fE(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 aa(){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 dE(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 br="global",Kt=lt+"global"+lt,Gt=typeof self===Du&&self.self===self&&self||typeof global===Du&&global.global===global&&global||void 0;function ft(e){return Gt[Kt][e]}function dt(e,t){return Gt[Kt][e]=t}function qt(e){delete Gt[Kt][e]}function Qt(e,t,r){var n;try{if(Qo(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Gt[Kt]||(Gt[Kt]={});var on={};function Qo(e){if(typeof on[e]!==an)return on[e];try{var t=window[e];t.setItem(an,an),t.removeItem(an)}catch{return on[e]=!1}return on[e]=!0}function j(){return j=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},j.apply(this,arguments)}var Ge="function",Me="undefined",vE="@@redux/"+Math.random().toString(36),Fu=function(){return typeof Symbol===Ge&&Symbol.observable||"@@observable"}(),sn=" != "+Ge;function Jd(e,t,r){var n;if(typeof t===Ge&&typeof r===Me&&(r=t,t=void 0),typeof r!==Me){if(typeof r!==Ge)throw new Error("enhancer"+sn);return r(Jd)(e,t)}if(typeof e!==Ge)throw new Error("reducer"+sn);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(v){if(typeof v!==Ge)throw new Error("Listener"+sn);var p=!0;return f(),s.push(v),function(){if(p){p=!1,f();var w=s.indexOf(v);s.splice(w,1)}}}function d(v){if(!ie(v))throw new Error("Act != obj");if(typeof v.type===Me)throw new Error("ActType "+Me);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,v)}finally{u=!1}for(var p=o=s,w=0;w<p.length;w++)(0,p[w])();return v}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(v){if(typeof v!==Ge)throw new Error("next reducer"+sn);a=v,d({type:"@@redux/INIT"})}})[Fu]=function(){var v,p=c;return(v={subscribe:function(w){if(typeof w!="object")throw new TypeError("Observer != obj");function g(){w.next&&w.next(l())}return g(),{unsubscribe:p(g)}}})[Fu]=function(){return this},v},n}function hE(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+Me}function Wt(){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 pE(){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)}),j({},o,{dispatch:s=Wt.apply(void 0,i)(o.dispatch)})}}}var Je=lt+"anon_id",ct=lt+"user_id",Lt=lt+"user_traits",He="userId",At="anonymousId",bn=["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"],no=["name","EVENTS","config","loaded"],A=bn.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),Bu=/^utm_/,zu=/^an_prop_/,Hu=/^an_trait_/;function mE(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(Je,o.anonymousId),f||t(ct,o.userId),u.traits&&t(Lt,j({},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,v=l.reduce(function(p,w){if(w.match(Bu)||w.match(/^(d|g)clid/)){var g=w.replace(Bu,"");p.campaign[g==="campaign"?"name":g]=i[w]}return w.match(zu)&&(p.props[w.replace(zu,"")]=i[w]),w.match(Hu)&&(p.traits[w.replace(Hu,"")]=i[w]),p},{campaign:{},props:{},traits:{}});r.dispatch(j({type:A.params,raw:i},v,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,v.traits)},0),d&&setTimeout(function(){return e.track(d,v.props)},0),Object.keys(v.campaign).length&&r.dispatch({type:A.campaign,campaign:v.campaign})}}return n(a)}}}}function gE(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===A.setItemEnd){if(r.key===Je)return j({},t,{anonymousId:r.value});if(r.key===ct)return j({},t,{userId:r.value})}switch(r.type){case A.identify:return Object.assign({},t,{userId:r.userId,traits:j({},t.traits,r.traits)});case A.reset:return[ct,Je,Lt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Ku(e){return{userId:e.getItem(ct),anonymousId:e.getItem(Je),traits:e.getItem(Lt)}}var ao=function(e){return lt+"TEMP"+lt+e};function yE(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&&([ct,Lt,Je].forEach(function(v){n(v)}),[He,At,"traits"].forEach(function(v){qt(ao(v))})),s.type===A.identify){a(Je)||r(Je,aa());var c=a(ct),d=a(Lt)||{};c&&c!==u&&i.dispatch({type:A.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(ct,u),f&&r(Lt,j({},d,f))}return o(s)}}}}var vr={};function Gu(e,t){vr[e]&&oe(vr[e])&&(vr[e](t),delete vr[e])}function Yd(e,t,r){return new Promise(function(n,a){return t()?n(e):r<1?a(j({},e,{queue:!0})):new Promise(function(i){return setTimeout(i,10)}).then(function(i){return Yd(e,t,r-10).then(n,a)})})}function wE(e){return{abort:e}}function Xd(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,v){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(v)):(c.requeue.push(d),c.requeueIndex.push(v)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],v=d.plugin,p=d.payload.type,w=a[v][p];if(w&&oe(w)){var g,E=function(h,$){return h===void 0&&(h={}),$===void 0&&($={}),[He,At].reduce(function(O,k){return h.hasOwnProperty(k)&&$[k]&&$[k]!==h[k]&&(O[k]=$[k]),O},h)}(d.payload,u),T=n[E.meta.rid];if(!T&&(g=w({payload:E,config:o[v].config,instance:r,abort:wE}))&&ie(g)&&g.abort)return void(n[E.meta.rid]=!0);if(!T){var b=p+":"+v;e.dispatch(j({},E,{type:b,_:{called:b,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var gi=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(Nt),v=t.exact.map(function(g){return g.pluginName});d&&(v=o.during.map(function(g){return g.pluginName}));var p=function(g,E){return function(T,b,h){var $=b.config,O=b.name,k=O+"."+T.type;h&&(k=h.event);var R=T.type.match(Nt)?function(M,F,V,L,U){return function(z,_){var G=L?L.name:M,X=_&&Pr(_)?_:V;if(L&&(!(X=_&&Pr(_)?_:[M]).includes(M)||X.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(X)+" input valid");return j({},U,{abort:{reason:z,plugins:X,caller:F,_:G}})}}(O,k,E,h,T):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(T,k);return{payload:bE(T),instance:g,config:$||{},abort:R}}}(n,v),w=t.exact.reduce(function(g,E){var T=E.pluginName,b=E.methodName,h=!1;return b.match(/^initialize/)||b.match(/^reset/)||(h=!f[T].loaded),l.offline&&b.match(/^(page|track|identify)/)&&(h=!0),g[""+T]=h,g},{});return Promise.resolve(t.exact.reduce(function(g,E,T){try{var b=E.pluginName;return Promise.resolve(g).then(function(h){function $(){return Promise.resolve(h)}var O=function(){if(t.namespaced&&t.namespaced[b])return Promise.resolve(t.namespaced[b].reduce(function(k,R,M){try{return Promise.resolve(k).then(function(F){return R.method&&oe(R.method)?(function(z,_){var G=qu(z);if(G&&G.name===_){var X=qu(G.method);throw new Error([_+" plugin is calling method "+z,"Plugins cant call self","Use "+G.method+" "+(X?"or "+X.method:"")+" in "+_+" plugin insteadof "+z].join(`
6
6
  `))}}(R.methodName,R.pluginName),Promise.resolve(R.method({payload:F,instance:n,abort:(V=F,L=b,U=R.pluginName,function(z,_){return j({},V,{abort:{reason:z,plugins:_||[L],caller:c,from:U||L}})}),config:Zu(R.pluginName,f,i),plugins:f})).then(function(z){var _=ie(z)?z:{};return Promise.resolve(j({},F,_))})):F;var V,L,U})}catch(F){return Promise.reject(F)}},Promise.resolve(r))).then(function(k){h[b]=k});h[b]=r}();return O&&O.then?O.then($):$()})}catch(h){return Promise.reject(h)}},Promise.resolve({}))).then(function(g){return Promise.resolve(t.exact.reduce(function(E,T,b){try{var h=t.exact.length===b+1,$=T.pluginName,O=i[$];return Promise.resolve(E).then(function(k){var R=g[$]?g[$]:{};if(d&&(R=k),wi(R,$))return yi({data:R,method:c,instance:n,pluginName:$,store:s}),Promise.resolve(k);if(wi(k,$))return h&&yi({data:k,method:c,instance:n,store:s}),Promise.resolve(k);if(w.hasOwnProperty($)&&w[$]===!0)return s.dispatch({type:"queue",plugin:$,payload:R,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(k);var M=p(g[$],i[$]);return Promise.resolve(O[c]({abort:M.abort,payload:R,instance:n,config:Zu($,f,i),plugins:f})).then(function(F){var V=ie(F)?F:{},L=j({},k,V),U=g[$];if(wi(U,$))yi({data:U,method:c,instance:n,pluginName:$,store:s});else{var z=c+":"+$;(z.match(/:/g)||[]).length<2&&!c.match(Wu)&&!c.match(Vu)&&n.dispatch(j({},d?L:R,{type:z,_:{called:z,from:"submethod"}}))}return Promise.resolve(L)})})}catch(k){return Promise.reject(k)}},Promise.resolve(r))).then(function(E){if(!(c.match(Nt)||c.match(/^registerPlugin/)||c.match(Vu)||c.match(Wu)||c.match(/^params/)||c.match(/^userIdChanged/))){if(u.plugins.includes(c),E._&&E._.originalAction===c)return E;var T=j({},E,{_:{originalAction:E.type,called:E.type,from:"engineEnd"}});qd(E,t.exact.length)&&!c.match(/End$/)&&(T=j({},T,{type:E.type+"Aborted"})),s.dispatch(T)}return E})})}catch(g){return Promise.reject(g)}},Nt=/Start$/,Wu=/^bootstrap/,Vu=/^ready/;function yi(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(j({},e.data,{type:r,_:{called:r,from:"abort"}}))}function Zu(e,t,r){var n=t[e]||r[e];return n&&n.config?n.config:{}}function Ju(e,t){return t.reduce(function(r,n){return n[e]?r.concat({methodName:e,pluginName:n.name,method:n[e]}):r},[])}function Yu(e,t){var r=e.replace(Nt,""),n=t?":"+t:"";return[""+e+n,""+r+n,r+"End"+n]}function wi(e,t){var r=e.abort;return!!r&&(r===!0||Xu(r,t)||r&&Xu(r.plugins,t))}function qd(e,t){var r=e.abort;if(!r)return!1;if(r===!0||Ze(r))return!0;var n=r.plugins;return Pr(r)&&r.length===t||Pr(n)&&n.length===t}function Pr(e){return Array.isArray(e)}function Xu(e,t){return!(!e||!Pr(e))&&e.includes(t)}function qu(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function bE(e){return Object.keys(e).reduce(function(t,r){return r==="type"||(t[r]=ie(e[r])?Object.assign({},e[r]):e[r]),t},{})}function SE(e,t,r){var n={};return function(a){return function(i){return function(o){try{var s,u=function(h){return s?h: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 Gu(o.meta.rid,{payload:o})},0),f===A.initializeEnd){var d=t(),v=Object.keys(d),p=v.filter(function(h){return l.includes(h)}).map(function(h){return d[h]}),w=[],g=[],E=o.disabled,T=p.map(function(h){var $=h.loaded,O=h.name,k=h.config;return Yd(h,function(){return $({config:k})},1e4).then(function(R){return n[O]||(a.dispatch({type:A.pluginReadyType(O),name:O,events:Object.keys(h).filter(function(M){return!no.includes(M)})}),n[O]=!0),w=w.concat(O),h}).catch(function(R){if(R instanceof Error)throw new Error(R);return g=g.concat(R.name),R})});Promise.all(T).then(function(h){var $={plugins:w,failed:g,disabled:E};setTimeout(function(){v.length===T.length+E.length&&a.dispatch(j({},{type:A.ready},$))},0)})}var b=function(){if(f!==A.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return Xd(a,t,e)},0),Promise.resolve(function(h,$,O,k,R){try{var M=oe($)?$():$,F=h.type,V=F.replace(Nt,"");if(h._&&h._.called)return Promise.resolve(h);var L=O.getState(),U=(G=M,(X=L.plugins)===void 0&&(X={}),(Ne=h.options)===void 0&&(Ne={}),Object.keys(G).filter(function(m){var y=Ne.plugins||{};return tE(y[m])?y[m]:y.all!==!1&&(!X[m]||X[m].enabled!==!1)}).map(function(m){return G[m]}));F===A.initializeStart&&h.fromEnable&&(U=Object.keys(L.plugins).filter(function(m){var y=L.plugins[m];return h.plugins.includes(m)&&!y.initialized}).map(function(m){return M[m]}));var z=U.map(function(m){return m.name}),_=function(m,y,P){var N=Yu(m).map(function(x){return Ju(x,y)});return y.reduce(function(x,D){var Z=D.name,B=Yu(m,Z).map(function(J){return Ju(J,y)}),S=B[0],I=B[1],C=B[2];return S.length&&(x.beforeNS[Z]=S),I.length&&(x.duringNS[Z]=I),C.length&&(x.afterNS[Z]=C),x},{before:N[0],beforeNS:{},during:N[1],duringNS:{},after:N[2],afterNS:{}})}(F,U);return Promise.resolve(gi({action:h,data:{exact:_.before,namespaced:_.beforeNS},state:L,allPlugins:M,allMatches:_,instance:O,store:k,EVENTS:R})).then(function(m){function y(){var x=function(){if(F.match(Nt))return Promise.resolve(gi({action:j({},P,{type:V+"End"}),data:{exact:_.after,namespaced:_.afterNS},state:L,allPlugins:M,allMatches:_,instance:O,store:k,EVENTS:R})).then(function(D){D.meta&&D.meta.hasCallback&&Gu(D.meta.rid,{payload:D})})}();return x&&x.then?x.then(function(){return m}):m}if(qd(m,z.length))return m;var P,N=function(){if(F!==V)return Promise.resolve(gi({action:j({},m,{type:V}),data:{exact:_.during,namespaced:_.duringNS},state:L,allPlugins:M,allMatches:_,instance:O,store:k,EVENTS:R})).then(function(x){P=x});P=m}();return N&&N.then?N.then(y):y()})}catch(m){return Promise.reject(m)}var G,X,Ne}(o,t,e,a,r)).then(function(h){return s=1,i(h)})}();return Promise.resolve(b&&b.then?b.then(u):u(b))}catch(h){return Promise.reject(h)}}}}}function $E(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 IE=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 Wt.apply(void 0,o)(n)(a)}}}}};function TE(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=Qu(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},j({},t,n)}if(/^initialize:([^:]*)$/.test(r.type)){var u=Qu(r.type,A.initialize),f=e()[u];return f&&u?(n[u]=j({},t[u],{initialized:!0,loaded:!!f.loaded({config:f.config})}),j({},t,n)):t}if(/^ready:([^:]*)$/.test(r.type))return n[r.name]=j({},t[r.name],{loaded:!0}),j({},t,n);switch(r.type){case A.disablePlugin:return j({},t,el(r.plugins,!1,t));case A.enablePlugin:return j({},t,el(r.plugins,!0,t));default:return t}}}function Qu(e,t){return e.substring(t.length+1,e.length)}function el(e,t,r){return e.reduce(function(n,a){return n[a]=j({},r[a],{enabled:t}),n},r)}function Qd(e){try{return JSON.parse(JSON.stringify(e))}catch{}return e}var EE={last:{},history:[]};function PE(e,t){e===void 0&&(e=EE);var r=t.options,n=t.meta;if(t.type===A.track){var a=Qd(j({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:n}));return j({},e,{last:a,history:e.history.concat(a)})}return e}var OE={actions:[]};function kE(e,t){e===void 0&&(e=OE);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),j({},e,{actions:n});case"dequeue":return[];default:return e}}var ev=/#.*$/;function _E(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(ev,""):"")}var tv,rv,nv,av,RE=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 v=function(){if(q){for(var p,w=document.getElementsByTagName("link"),g=0;p=w[g];g++)if(p.getAttribute("rel")==="canonical")return p.getAttribute("href")}}();return v?v.match(/\?/)?v:v+d:window.location.href.replace(ev,"")}(f),c={title:r,url:l,path:_E(l),hash:u,search:f,width:o,height:s};return n&&n!==""&&(c.referrer=n),j({},c,e)},CE={last:{},history:[]};function AE(e,t){e===void 0&&(e=CE);var r=t.options;if(t.type===A.page){var n=Qd(j({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return j({},e,{last:n,history:e.history.concat(n)})}return e}tv=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"}(),rv=q?document.referrer:null,nv=cE(),av=uE();var tl={initialized:!1,sessionId:aa(),app:null,version:null,debug:!1,offline:!!q&&!navigator.onLine,os:{name:tv},userAgent:q?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.13"},timezone:av,locale:nv,campaign:{},referrer:rv};function jE(e,t){e===void 0&&(e=tl);var r=e.initialized,n=t.campaign;switch(t.type){case A.campaign:return j({},e,{campaign:n});case A.offline:return j({},e,{offline:!0});case A.online:return j({},e,{offline:!1});default:return r?e:j({},tl,e,{initialized:!0})}}var LE=["plugins","reducers","storage"];function NE(e,t,r){if(q){var n=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(a){n(a,t)})}}function xE(e){var t=NE.bind(null,"online offline",function(r){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(r){return t(!1)}}function iv(){return dt("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 Gt[Kt].analytics.push(o.action||o),i(o)}})}}}function rl(e){return function(){return Wt(Wt.apply(null,arguments),iv())}}function bi(e){return e?Vd(e)?e:[e]:[]}function nl(e,t,r){e===void 0&&(e={});var n,a,i=aa();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(oe(u[f])){s=u[f];break}return s}(r),function(o){a&&a(o),n(o)})),j({},e,{rid:i,ts:new Date().getTime()},t?{hasCallback:!0}:{})}function UE(e){e===void 0&&(e={});var t=e.reducers||{},r=e.initialUser||{},n=(e.plugins||[]).reduce(function(m,y){if(oe(y))return m.middlewares=m.middlewares.concat(y),m;if(y.NAMESPACE&&(y.name=y.NAMESPACE),!y.name)throw new Error("https://lytics.dev/errors/1");y.config||(y.config={});var P=y.EVENTS?Object.keys(y.EVENTS).map(function(D){return y.EVENTS[D]}):[];m.pluginEnabled[y.name]=!(y.enabled===!1||y.config.enabled===!1),delete y.enabled,y.methods&&(m.methods[y.name]=Object.keys(y.methods).reduce(function(D,Z){var B;return D[Z]=(B=y.methods[Z],function(){for(var S=Array.prototype.slice.call(arguments),I=new Array(B.length),C=0;C<S.length;C++)I[C]=S[C];return I[I.length]=$,B.apply({instance:$},I)}),D},{}),delete y.methods);var N=Object.keys(y).concat(P),x=new Set(m.events.concat(N));if(m.events=Array.from(x),m.pluginsArray=m.pluginsArray.concat(y),m.plugins[y.name])throw new Error(y.name+"AlreadyLoaded");return m.plugins[y.name]=y,m.plugins[y.name].loaded||(m.plugins[y.name].loaded=function(){return!0}),m},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),a=e.storage?e.storage:{getItem:ft,setItem:dt,removeItem:qt},i=function(m){return function(y,P,N){return P.getState("user")[y]||(N&&ie(N)&&N[y]?N[y]:Ku(m)[y]||ft(ao(y))||null)}}(a),o=n.plugins,s=n.events.filter(function(m){return!no.includes(m)}).sort(),u=new Set(s.concat(bn).filter(function(m){return!no.includes(m)})),f=Array.from(u).sort(),l=function(){return o},c=new IE,d=c.addMiddleware,v=c.removeMiddleware,p=c.dynamicMiddlewares,w=function(){throw new Error("Abort disabled inListener")},g=lE(),E=Ku(a),T=j({},E,r,g.an_uid?{userId:g.an_uid}:{},g.an_aid?{anonymousId:g.an_aid}:{});T.anonymousId||(T.anonymousId=aa());var b=j({enable:function(m,y){return new Promise(function(P){_.dispatch({type:A.enablePlugin,plugins:bi(m),_:{originalAction:A.enablePlugin}},P,[y])})},disable:function(m,y){return new Promise(function(P){_.dispatch({type:A.disablePlugin,plugins:bi(m),_:{originalAction:A.disablePlugin}},P,[y])})}},n.methods),h=!1,$={identify:function(m,y,P,N){try{var x=Ze(m)?m:null,D=ie(m)?m:y,Z=P||{},B=$.user();dt(ao(He),x);var S=x||D.userId||i(He,$,D);return Promise.resolve(new Promise(function(I){_.dispatch(j({type:A.identifyStart,userId:S,traits:D||{},options:Z,anonymousId:B.anonymousId},B.id&&B.id!==x&&{previousId:B.id}),I,[y,P,N])}))}catch(I){return Promise.reject(I)}},track:function(m,y,P,N){try{var x=ie(m)?m.event:m;if(!x||!Ze(x))throw new Error("EventMissing");var D=ie(m)?m:y||{},Z=ie(P)?P:{};return Promise.resolve(new Promise(function(B){_.dispatch({type:A.trackStart,event:x,properties:D,options:Z,userId:i(He,$,y),anonymousId:i(At,$,y)},B,[y,P,N])}))}catch(B){return Promise.reject(B)}},page:function(m,y,P){try{var N=ie(m)?m:{},x=ie(y)?y:{};return Promise.resolve(new Promise(function(D){_.dispatch({type:A.pageStart,properties:RE(N),options:x,userId:i(He,$,N),anonymousId:i(At,$,N)},D,[m,y,P])}))}catch(D){return Promise.reject(D)}},user:function(m){if(m===He||m==="id")return i(He,$);if(m===At||m==="anonId")return i(At,$);var y=$.getState("user");return m?Uu(y,m):y},reset:function(m){return new Promise(function(y){_.dispatch({type:A.resetStart},y,m)})},ready:function(m){return h&&m({plugins:b,instance:$}),$.on(A.ready,function(y){m(y),h=!0})},on:function(m,y){if(!m||!oe(y))return!1;if(m===A.bootstrap)throw new Error(".on disabled for "+m);var P=/Start$|Start:/;if(m==="*"){var N=function(B){return function(S){return function(I){return I.type.match(P)&&y({payload:I,instance:$,plugins:o}),S(I)}}},x=function(B){return function(S){return function(I){return I.type.match(P)||y({payload:I,instance:$,plugins:o}),S(I)}}};return d(N,cn),d(x,un),function(){v(N,cn),v(x,un)}}var D=m.match(P)?cn:un,Z=function(B){return function(S){return function(I){return I.type===m&&y({payload:I,instance:$,plugins:o,abort:w}),S(I)}}};return d(Z,D),function(){return v(Z,D)}},once:function(m,y){if(!m||!oe(y))return!1;if(m===A.bootstrap)throw new Error(".once disabled for "+m);var P=$.on(m,function(N){y({payload:N.payload,instance:$,plugins:o,abort:w}),P()});return P},getState:function(m){var y=_.getState();return m?Uu(y,m):Object.assign({},y)},dispatch:function(m){var y=Ze(m)?{type:m}:m;if(bn.includes(y.type))throw new Error("reserved action "+y.type);var P=j({},y,{_:j({originalAction:y.type},m._||{})});_.dispatch(P)},enablePlugin:b.enable,disablePlugin:b.disable,plugins:b,storage:{getItem:a.getItem,setItem:function(m,y,P){_.dispatch({type:A.setItemStart,key:m,value:y,options:P})},removeItem:function(m,y){_.dispatch({type:A.removeItemStart,key:m,options:y})}},setAnonymousId:function(m,y){$.storage.setItem(Je,m,y)},events:{core:bn,plugins:s}},O=n.middlewares.concat([function(m){return function(y){return function(P){return P.meta||(P.meta=nl()),y(P)}}},p(cn),SE($,l,{all:f,plugins:s}),$E(a),mE($),yE($),p(un)]),k={context:jE,user:gE(a),page:AE,track:PE,plugins:TE(l),queue:kE},R=Wt,M=Wt;if(q&&e.debug){var F=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;F&&(R=F({trace:!0,traceLimit:25})),M=function(){return arguments.length===0?iv():ie(typeof arguments[0])?rl():rl().apply(null,arguments)}}var V,L=function(m){return Object.keys(m).reduce(function(y,P){return LE.includes(P)||(y[P]=m[P]),y},{})}(e),U=n.pluginsArray.reduce(function(m,y){var P=y.name,N=y.config,x=y.loaded,D=n.pluginEnabled[P];return m[P]={enabled:D,initialized:!!D&&!y.initialize,loaded:!!x({config:N}),config:N},m},{}),z={context:L,user:T,plugins:U},_=Jd(function(m){for(var y=Object.keys(m),P={},N=0;N<y.length;N++){var x=y[N];typeof m[x]===Ge&&(P[x]=m[x])}var D,Z=Object.keys(P);try{(function(B){Object.keys(B).forEach(function(S){var I=B[S];if(typeof I(void 0,{type:"@@redux/INIT"})===Me||typeof I(void 0,{type:vE})===Me)throw new Error("reducer "+S+" "+Me)})})(P)}catch(B){D=B}return function(B,S){if(B===void 0&&(B={}),D)throw D;for(var I=!1,C={},J=0;J<Z.length;J++){var se=Z[J],gt=B[se],sa=(0,P[se])(gt,S);if(typeof sa===Me){var wv=hE(se,S);throw new Error(wv)}C[se]=sa,I=I||sa!==gt}return I?C:B}}(j({},k,t)),z,M(R(pE.apply(void 0,O))));_.dispatch=(V=_.dispatch,function(m,y,P){var N=j({},m,{meta:nl(m.meta,y,bi(P))});return V.apply(null,[N])});var G=Object.keys(o);_.dispatch({type:A.bootstrap,plugins:G,config:L,params:g,user:T,initialUser:r,persistedUser:E});var X=G.filter(function(m){return n.pluginEnabled[m]}),Ne=G.filter(function(m){return!n.pluginEnabled[m]});return _.dispatch({type:A.registerPlugins,plugins:G,enabled:n.pluginEnabled}),n.pluginsArray.map(function(m,y){var P=m.bootstrap,N=m.config,x=m.name;P&&oe(P)&&P({instance:$,config:N,payload:m}),_.dispatch({type:A.registerPluginType(x),name:x,enabled:n.pluginEnabled[x],plugin:m}),n.pluginsArray.length===y+1&&_.dispatch({type:A.initializeStart,plugins:X,disabled:Ne})}),xE(function(m){_.dispatch({type:m?A.offline:A.online})}),function(m,y,P){setInterval(function(){return Xd(m,y,P)},3e3)}(_,l,$),$}var cn="before",un="after",Sr="cookie",at=cv(),ov=ia,DE=ia;function sv(e){return at?ia(e,"",-1):qt(e)}function cv(){if(at!==void 0)return at;var e="cookiecookie";try{ia(e,e),at=document.cookie.indexOf(e)!==-1,sv(e)}catch{at=!1}return at}function ia(e,t,r,n,a,i){if(typeof window<"u"){var o=arguments.length>1;return at===!1&&(o?dt(e,t):ft(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 $r="localStorage",ME=Qo.bind(null,"localStorage");Qt("localStorage","getItem",ft);Qt("localStorage","setItem",dt);Qt("localStorage","removeItem",qt);var Ir="sessionStorage",FE=Qo.bind(null,"sessionStorage");Qt("sessionStorage","getItem",ft);Qt("sessionStorage","setItem",dt);Qt("sessionStorage","removeItem",qt);function xt(e){var t=e;try{if((t=JSON.parse(e))==="true")return!0;if(t==="false")return!1;if(ie(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch{}if(t!==null&&t!=="")return t}var BE=ME(),zE=FE(),HE=cv();function uv(e,t){if(e){var r=es(t),n=!as(r),a=ts(r)?xt(localStorage.getItem(e)):void 0;if(n&&!Ct(a))return a;var i=rs(r)?xt(ov(e)):void 0;if(n&&i)return i;var o=ns(r)?xt(sessionStorage.getItem(e)):void 0;if(n&&o)return o;var s=ft(e);return n?s:{localStorage:a,sessionStorage:o,cookie:i,global:s}}}function KE(e,t,r){if(e&&!Ct(t)){var n={},a=es(r),i=JSON.stringify(t),o=!as(a);return ts(a)&&(n[$r]=ln($r,t,xt(localStorage.getItem(e))),localStorage.setItem(e,i),o)?n[$r]:rs(a)&&(n[Sr]=ln(Sr,t,xt(ov(e))),DE(e,i),o)?n[Sr]:ns(a)&&(n[Ir]=ln(Ir,t,xt(sessionStorage.getItem(e))),sessionStorage.setItem(e,i),o)?n[Ir]:(n[br]=ln(br,t,ft(e)),dt(e,t),o?n[br]:n)}}function GE(e,t){if(e){var r=es(t),n=uv(e,Kd),a={};return!Ct(n.localStorage)&&ts(r)&&(localStorage.removeItem(e),a[$r]=n.localStorage),!Ct(n.cookie)&&rs(r)&&(sv(e),a[Sr]=n.cookie),!Ct(n.sessionStorage)&&ns(r)&&(sessionStorage.removeItem(e),a[Ir]=n.sessionStorage),!Ct(n.global)&&oa(r,br)&&(qt(e),a[br]=n.global),a}}function es(e){return e?Ze(e)?e:e.storage:Hd}function ts(e){return BE&&oa(e,$r)}function rs(e){return HE&&oa(e,Sr)}function ns(e){return zE&&oa(e,Ir)}function as(e){return e===Kd||e==="all"}function oa(e,t){return e===Hd||e===t||as(e)}function ln(e,t,r){return{location:e,current:t,previous:r}}var WE={setItem:KE,getItem:uv,removeItem:GE};function VE(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function al(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 il(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?al(Object(r),!0).forEach(function(n){VE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):al(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ZE(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t={storage:WE};return UE(il(il({},t),e))}function JE(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 YE(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=qE(f);return a!==l&&(a=l,setTimeout(()=>e(f),0)),s.apply(r,u)}})}function XE(e,t){const r=e.indexOf(t);return r>-1?e.slice(0,r):e}function qE(e){return["#","?"].forEach(t=>e=XE(e,t)),e}function QE(){YE(()=>{De.page()})}function eP(e){if(e===void 0&&(e={}),!q)return ro;var t=sl(),r=io(),n=ol(),a=fn(n,t),i=fn(r,t),o=[],s=[],u=[],f=n,l=a,c=i,d=Object.keys(e);if(!d.length)return ro;var v=d.map(function(w){return Number(w)}),p=dE(function(){var w=sl(),g=function(L,U){return U.map(function(z){return z===100?L-5:L*(z/100)})}(w,v),E=io(),T=ol(),b=fn(T,w),h=fn(E,w);if(l=b>l?b:l,c=h<c?h:c,!(o.length>=v.length)){var $=f===T,O="up";$?O="initial":f<=T&&(O="down");var k=g,R=v;(O==="up"||$)&&(k=g.slice().reverse(),R=v.slice().reverse());var M=R.reduce(function(L,U,z){var _=k[z];return u.includes(U)&&T<=_&&(u=u.filter(function(G){return G!==U}),L.singleFunction=U),O==="down"&&!o.includes(U)&&T>=_&&U>i?(s.push(U),L.callbacks=L.callbacks.concat(U),L):O==="up"&&!o.includes(U)&&T<=_&&U<=b?(L.foundFunc=[U],L):($&&T>=_&&L.foundFunc.length===0&&(L.foundFunc=[U]),!s.includes(U)&&T>=_&&(s.push(U),L.singleFunction?u.push(U):L.singleFunction=U),L)},{foundFunc:[],singleFunction:null,callbacks:[],direction:O});if(f=T,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,V=M.direction;oe(e[F])&&e[F]({trigger:F,direction:V,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(F)}}},500);return window.addEventListener("scroll",p),function(){return window.removeEventListener("scroll",p)}}function io(){return q?document.body.scrollTop||document.documentElement.scrollTop:0}function tP(){return q?window.innerHeight||document.documentElement.clientHeight:0}function ol(){return Math.round(io()+tP())}function sl(){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 fn(e,t){return Math.round(e/t*100)}var cl="EventListener";function rP(e){return function(t,r,n,a){var i=n||ro,o=a||!1;if(!q)return i;var s=xn(r),u=xn(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"+cl:"remove"+cl,v=0;v<u.length;v++){var p=u[v];f[v]=c?o&&o.once?nP(i):i:f[v]||i;for(var w=0;w<s.length;w++)p[d]?p["on"+s[w]]=c?f[v]:null:p[d](s[w],f[v],o)}return l.bind(null,!c)}(e)}}function xn(e,t){if(Ze(e))return t?xn(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=sE(e);return t?i.map(function(o){return Ze(o)?xn(o,!0):o}).flat():i}function nP(e,t){var r;return function(){return e&&(r=e.apply(this,arguments),e=null),r}}var Si=rP("Event");function lv(e,t){return q&&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}lv.bind(null,"onerror");lv.bind(null,"onload");var fv=typeof window>"u",ul="hidden";function aP(e){if(fv)return!1;var t=iP(),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 iP(){var e=["webkit","moz","ms","o"];return fv||ul in document?ul:e.reduce(function(t,r){var n=r+"Hidden";return!t&&n in document?n:t},null)}var oP=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function sP(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=aP(function(s){s||r({type:"tabVisible"})});return n=[o].concat(oP.map(function(s){return Si(document,s,r)})).concat(Si(window,"load",r)).concat(Si(window,"scroll",r,{capture:!0,passive:!0})),i}function i(){n.map(function(o){return o()})}return a(),function(){return i(),a}}function cP(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,v=function(){return clearTimeout(t)};function p(g){v(),i&&!l&&i(ur(d),g),a&&l&&(l=!1,a(ur(r),g),d=new Date),t=setTimeout(function(){l=!0,n&&(r=new Date,n(ur(d),g))},s)}var w=sP(p,{throttle:f});return{disable:function(){c=!0,l=!1,v();var g=w();return function(){return c=!1,d=new Date,p({type:"load"}),g()}},getStatus:function(){return{isIdle:l,isDisabled:c,active:l?0:ur(d,c),idle:l?ur(r,c):0}}}}function ur(e,t){return t?0:Math.round((new Date-e)/1e3)}const ll=5e3;class uP{constructor(t){fe(this,"element");fe(this,"isInViewport",!1);fe(this,"isAwake",!1);fe(this,"isFlushing");fe(this,"observer");fe(this,"lastEventAt",Date.now());fe(this,"registeredView",!1);fe(this,"viewCallback");fe(this,"activeDurationCallback");fe(this,"idleDurationCallback");fe(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),cP({onIdle:r=>this.handleAwake(!1,r),onWakeUp:r=>this.handleAwake(!0,r),timeout:ll}),eP({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*ll: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 fl="sesamy_session_id";function lP(){let e=sessionStorage.getItem(fl);return e||(e=Math.random().toString(36).slice(2,9),sessionStorage.setItem(fl,e)),e}let dv=!1,oo,dl,Un;const vv=new Map;function fP({clientId:e,enabled:t=!0,environment:r}){if(oo=e,dl=t,Un=`${Ke("logs",r)}/events`,!dl)return;window.addEventListener("beforeunload",()=>{pv.forEach((a,i)=>{a.bind(i)()}),vP()}),window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&vv.forEach((a,i)=>{a.bind(i)()})}),QE();const n=new uP({element:document.body,viewCallback:()=>{De.page()},activeDurationCallback:(a,i,o)=>{De.track("activeDuration",{duration:a,durationStart:o,flushing:i})},idleDurationCallback:(a,i,o)=>{De.track("idleDuration",{duration:a,durationStart:o,flushing:i})},scrollCallback:a=>{De.track("scroll",{scroll:a.scrollMax})}});hP(document.body,()=>{n.flush()}),pP(document.body,()=>{n.handleVisibilityChange()}),window.addEventListener(Oe.AUTHENTICATED,async a=>{const i=a;await De.identify(i.detail.sub)}),window.addEventListener(Oe.LOGOUT,async()=>{await De.track("logout",{}),is.flush(),await De.reset()})}function hv(e){return JSON.stringify(e.map(t=>({...t,clientId:oo,requestId:Math.random().toString(36).slice(2,9),sessionId:lP(),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:zd,userAgent:navigator.userAgent,clientId:oo}})))}const is=JE(async e=>{if(e.length>0){const t=hv(e);dv?navigator.sendBeacon(Un,t):(await fetch(Un,{method:"POST",body:t,headers:{"Content-Type":"text/plain"}})).ok}},{max:10,interval:3e3});function $i(e){var t;if(e.anonymousId)if((t=e.properties)!=null&&t.flushing){const r={...e};delete r.properties.flushing,navigator.sendBeacon(Un,hv([r]))}else is.push(e)}const De=ZE({app:zd,version:qo,plugins:[{name:"custom-analytics-plugin",page:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;$i({anonymousId:r,userId:n,properties:t,event:a,type:"page"})},track:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;$i({anonymousId:r,userId:n,properties:t,event:a,type:"track"})},identify:({payload:e})=>{const{properties:t,anonymousId:r,userId:n}=e;$i({anonymousId:r,userId:n,properties:t,type:"identify"})}}]});function dP(e,t){De.track(e,t)}function vP(){return dv=!0,is.flush()}const pv=new Map;function hP(e,t){pv.set(e,t)}function pP(e,t){vv.set(e,t)}const mv="sesamySignedURLs";function gv(){const e=sessionStorage.getItem(mv);return e?JSON.parse(e):[]}function mP(e){const t=gv();t.push(e),sessionStorage.setItem(mv,JSON.stringify(t))}const gP=["AdHeader","AdContainer","AD_Top","homead","ad-lead"];function yP(){return new Promise(e=>{const t=gP.map(r=>{const n=document.createElement("div");return n.innerHTML="&nbsp;",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 wP(){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 bP(e){const{createCheckout:t,getCheckout:r,updateCheckout:n,getEntitlement:a,getEntitlements:i,getEntitlementAccess:o,getSubscriptions:s,getContract:u,getContracts:f,cancelContract:l,getBill:c,getBills:d,getTransaction:v,getTransactions:p,getProfile:w,updateProfile:g,getTags:E,deleteTag:T,setTag:b,getUserMetadata:h,listUserMetadata:$,setUserMetadata:O,deleteUserMetadata:k,getTally:R,getTallies:M,pushTally:F,deleteTally:V,getProduct:L,getPaymentIssues:U,isSpotifyLinked:z,unlinkSpotify:_,linkSpotify:G,autoOnboardProduct:X,openHostedAccountPage:Ne,generateLink:m}=XT(e),y={auth:{getUser:w,isAuthenticated:Yo,loginWithRedirect:Xo,logout:xd,setToken:Dd},checkouts:{get:r,create:t,update:n},profile:{get:w,update:g,openHostedAccountPage:Ne,isSpotifyLinked:z,unlinkSpotify:_},analytics:{track:dP},tags:{list:E,set:b,delete:T},entitlements:{get:a,list:i,access:o,signedLinks:gv},contracts:{get:u,list:f,cancel:l},bills:{get:c,list:d},userMetadata:{get:h,list:$,set:O,delete:k},tallies:{get:R,list:M,push:F,delete:V},subscriptions:{list:s},transactions:{get:v,list:p},products:{get:L,autoOnboard:X,linkSpotify:G},browser:{detectAdblock:yP,isInAppBrowser:wP},getVersion:SP,getPaymentIssues:U,generateLink:m,clearCache:Ie};return e.namespace&&(window[e.namespace]=y),y}function SP(){return qo}async function $P({enabled:e=!1,rules:t}){if(!e)return;const r=await Yo(),n=window.location.href;for(const a of t){const i=document.querySelectorAll(a.selector);if(!(a.path&&!new RegExp(a.path).test(n))){for(const o of i)if(!(a.authenticated!==void 0&&a.authenticated!==r))switch(a.transform){case"insert":if(a.contentType==="selector"&&a.content){const s=document.querySelector(a.content);s?o.innerHTML+=s.innerHTML:console.warn(`Source element for selector '${a.content}' not found`)}else if(a.contentType==="url"&&a.content){const s=await vl(a.content);s?o.innerHTML+=s:console.warn(`Failed to fetch content from URL '${a.content}'`)}else a.content&&(o.innerHTML+=a.content);break;case"replace":if(a.contentType==="selector"&&a.content){const s=document.querySelector(a.content);s?o.innerHTML=s.innerHTML:console.warn(`Source element for selector '${a.content}' not found`)}else if(a.contentType==="url"&&a.content){const s=await vl(a.content);s?o.innerHTML=s:console.warn(`Failed to fetch content from URL '${a.content}'`)}else a.content&&(o.innerHTML=a.content);break;case"remove":o.remove();break;default:console.warn(`Unknown transform type: ${a.transform}`)}}}}async function vl(e){try{const t=await fetch(e);return t.ok?await t.text():(console.error(`Failed to fetch content from ${e}: ${t.statusText}`),null)}catch(t){return console.error(`Error fetching content from ${e}:`,t),null}}function IP(){const e=new URLSearchParams(window.location.hash.substring(1)),t=e.get("access_token");if(t){Dd(t);const r=new URL(window.location.href);e.delete("access_token"),r.hash=e.toString(),window.history.replaceState(null,"",r)}}const hl="sesamy-refresh",pl="force-refetch-entitlements";function TP(){const e=new URLSearchParams(window.location.search),t=e.get(pl),r=e.get(hl);if(t!==null||r!==null){const n=new URL(window.location.href);e.delete(pl),e.delete(hl),n.search=e.toString(),Ie(),window.history.replaceState(null,"",n)}}function EP(){const e=new URLSearchParams(window.location.search),t=e.get("token"),r=e.get("se");if(!r||!t)return;const n=parseInt(r,10);if(Number.isNaN(n)||n<Date.now())return;mP({url:window.location.href.split("?")[0],token:t,expiresAt:n,publisherContentId:e.get("sp")??void 0});const a=new URL(window.location.href);a.searchParams.delete("ss"),a.searchParams.delete("se"),a.searchParams.delete("sp"),a.searchParams.delete("so"),a.searchParams.delete("token"),window.history.replaceState(null,"",a)}const ml="sesamy-user";async function PP(){const t=new URLSearchParams(window.location.search).get(ml);if(!t)return;const r=await DT();(r==null?void 0:r.email)!==t&&(Ie(),Xo({authorizationParams:{email_hint:t,login_hint:t}}));const n=new URL(window.location.href);n.searchParams.delete(ml),window.history.replaceState(null,"",n)}const gl="sesamy-purchase";function OP(){const e=new URLSearchParams(window.location.search),t=e.get(gl);if(t!==null){const r=new URL(window.location.href);e.delete(gl),r.search=e.toString(),Xe(Oe.PURCHASE,{itemSrc:t}),Ie(),window.history.replaceState(null,"",r)}}const yl="sesamy-login";async function kP(){if(!new URLSearchParams(window.location.search).get(yl))return;await Yo()||Xo();const n=new URL(window.location.href);n.searchParams.delete(yl),window.history.replaceState(null,"",n)}const _P=typeof window<"u";async function wl(e){fP({clientId:e.clientId,environment:e.environment,...e.analytics}),await UT({clientId:e.clientId,organization:e.organization,environment:e.environment,...e.auth}),e.transform&&await $P(e.transform),IP(),TP(),EP(),await kP(),await PP(),OP(),Xe(Oe.READY,{})}async function yv(e){const t=bP({clientId:e.clientId,environment:e.environment,...e.api});return _P&&(e.awaitAllServices?await wl(e):wl(e)),t}if(typeof document<"u"){const e=document.getElementById("sesamy-js");if(e!=null&&e.textContent)try{const t=JSON.parse(e.textContent);yv(t)}catch(t){console.error("Failed to parse config",t)}}exports.init=yv;
@@ -2,5 +2,5 @@ var sesamyJs=function(xe){"use strict";var _P=Object.defineProperty;var RP=(xe,f
2
2
  `,10)+1,o=a.substring(i)+(n?"//# sourceMappingURL="+n:""),s=new Blob([o],{type:"application/javascript"});return URL.createObjectURL(s)}var Nf,xf,Uf,Co,PT=(Nf="Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscil7c3VwZXIociksdGhpcy5lcnJvcj10LHRoaXMuZXJyb3JfZGVzY3JpcHRpb249cixPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxlLnByb3RvdHlwZSl9c3RhdGljIGZyb21QYXlsb2FkKHtlcnJvcjp0LGVycm9yX2Rlc2NyaXB0aW9uOnJ9KXtyZXR1cm4gbmV3IGUodCxyKX19Y2xhc3MgdCBleHRlbmRzIGV7Y29uc3RydWN0b3IoZSxzKXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIixgTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyR7cihlLFsiZGVmYXVsdCJdKX0nLCBzY29wZTogJyR7cihzKX0nKWApLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXMsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsdC5wcm90b3R5cGUpfX1mdW5jdGlvbiByKGUsdD1bXSl7cmV0dXJuIGUmJiF0LmluY2x1ZGVzKGUpP2U6IiJ9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO2NvbnN0IHM9ZT0+e3ZhcntjbGllbnRJZDp0fT1lLHI9ZnVuY3Rpb24oZSx0KXt2YXIgcj17fTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmdC5pbmRleE9mKHMpPDAmJihyW3NdPWVbc10pO2lmKG51bGwhPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz0wO2ZvcihzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7bzxzLmxlbmd0aDtvKyspdC5pbmRleE9mKHNbb10pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHNbb10pJiYocltzW29dXT1lW3Nbb11dKX1yZXR1cm4gcn0oZSxbImNsaWVudElkIl0pO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKChlPT5PYmplY3Qua2V5cyhlKS5maWx0ZXIoKHQ9PnZvaWQgMCE9PWVbdF0pKS5yZWR1Y2UoKCh0LHIpPT5PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse1tyXTplW3JdfSkpLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IG89e307Y29uc3Qgbj0oZSx0KT0+YCR7ZX18JHt0fWA7YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGFzeW5jKHtkYXRhOnt0aW1lb3V0OmUsYXV0aDpyLGZldGNoVXJsOmksZmV0Y2hPcHRpb25zOmMsdXNlRm9ybURhdGE6YX0scG9ydHM6W3BdfSk9PntsZXQgZjtjb25zdHthdWRpZW5jZTp1LHNjb3BlOmx9PXJ8fHt9O3RyeXtjb25zdCByPWE/KGU9Pntjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMoZSkscj17fTtyZXR1cm4gdC5mb3JFYWNoKCgoZSx0KT0+e3JbdF09ZX0pKSxyfSkoYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7aWYoIXIucmVmcmVzaF90b2tlbiYmInJlZnJlc2hfdG9rZW4iPT09ci5ncmFudF90eXBlKXtjb25zdCBlPSgoZSx0KT0+b1tuKGUsdCldKSh1LGwpO2lmKCFlKXRocm93IG5ldyB0KHUsbCk7Yy5ib2R5PWE/cyhPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKTpKU09OLnN0cmluZ2lmeShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKX1sZXQgaCxnOyJmdW5jdGlvbiI9PXR5cGVvZiBBYm9ydENvbnRyb2xsZXImJihoPW5ldyBBYm9ydENvbnRyb2xsZXIsYy5zaWduYWw9aC5zaWduYWwpO3RyeXtnPWF3YWl0IFByb21pc2UucmFjZShbKGQ9ZSxuZXcgUHJvbWlzZSgoZT0+c2V0VGltZW91dChlLGQpKSkpLGZldGNoKGksT2JqZWN0LmFzc2lnbih7fSxjKSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBwLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighZylyZXR1cm4gaCYmaC5hYm9ydCgpLHZvaWQgcC5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtmPWF3YWl0IGcuanNvbigpLGYucmVmcmVzaF90b2tlbj8oKChlLHQscik9PntvW24odCxyKV09ZX0pKGYucmVmcmVzaF90b2tlbix1LGwpLGRlbGV0ZSBmLnJlZnJlc2hfdG9rZW4pOigoZSx0KT0+e2RlbGV0ZSBvW24oZSx0KV19KSh1LGwpLHAucG9zdE1lc3NhZ2Uoe29rOmcub2ssanNvbjpmfSl9Y2F0Y2goZSl7cC5wb3N0TWVzc2FnZSh7b2s6ITEsanNvbjp7ZXJyb3I6ZS5lcnJvcixlcnJvcl9kZXNjcmlwdGlvbjplLm1lc3NhZ2V9fSl9dmFyIGR9KSl9KCk7Cgo=",xf=null,Uf=!1,function(e){return Co=Co||ET(Nf,xf,Uf),new Worker(Co,e)});const Ao={};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 Af().enclosedCache,localstorage:()=>new gT},Df=e=>kT[e],Mf=e=>{const{openUrl:t,onRedirect:r}=e,n=Ne(e,["openUrl","onRedirect"]);return Object.assign(Object.assign({},n),{openUrl:t===!1||t?t:r})},jo=new oT;let _T=class{constructor(t){let r,n;if(this.userCache=new Af().enclosedCache,this.defaultOptions={authorizationParams:{scope:"openid profile email"},useRefreshTokensFallback:!1,useFormData:!0},this._releaseLockOnPageHide=async()=>{await jo.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(!Hn())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(Hn().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",!Df(r))throw new Error(`Invalid cache location "${r}"`);n=Df(r)()}this.httpTimeoutMs=t.httpTimeoutInSeconds?1e3*t.httpTimeoutInSeconds:1e4,this.cookieStorage=t.legacySameSiteCookie===!1?Bt: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=Kn("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||Of,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 PT)}_url(t){const r=encodeURIComponent(btoa(JSON.stringify(this.options.auth0Client||Pf)));return`${this.domainUrl}${t}&auth0Client=${r}`}_authorizeUrl(t){return this._url(`/authorize?${Ro(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=Rf(_o()),i=Rf(_o()),o=_o(),s=(l=>{const c=new Uint8Array(l);return(d=>{const v={"+":"-","/":"_","=":""};return d.replace(/[+/=]/g,p=>v[p])})(window.btoa(String.fromCharCode(...Array.from(c))))})(await(async l=>await Hn().subtle.digest({name:"SHA-256"},new TextEncoder().encode(l)))(o)),u=((l,c,d,v,p,w,g,E)=>Object.assign(Object.assign(Object.assign({client_id:l.clientId},l.authorizationParams),d),{scope:Kn(c,d.scope),response_type:"code",response_mode:E||"query",state:v,nonce:p,redirect_uri:g||l.authorizationParams.redirect_uri,code_challenge:w,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(v){if(v.data&&v.data.type==="authorization_response"){if(clearTimeout(d),clearInterval(c),window.removeEventListener("message",l,!1),s.popup.close(),v.data.response.error)return f(ce.fromPayload(v.data.response));u(v.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 ce("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=Mf(t),{openUrl:a,fragment:i,appState:o}=n,s=Ne(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=Ne(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 ce("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 ce("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:Kn(this.scope,(r=t.authorizationParams)===null||r===void 0?void 0:r.scope)})}),a=await((i,o)=>{let s=Ao[o];return s||(s=i().finally(()=>{delete Ao[o],s=null}),Ao[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=Ne(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})(()=>jo.acquireLock("auth0.lock.getTokenSilently",5e3),10))throw new ko;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 jo.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:Kn(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 ft({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=Ne(r,["federated"]),i=n?"&federated":"";return this._url(`/v2/logout?${Ro(Object.assign({clientId:t.clientId},a))}`)+i}async logout(t={}){const r=Mf(t),{openUrl:n}=r,a=Ne(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 ce("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((p,w,g=60)=>new Promise((E,T)=>{const b=window.document.createElement("iframe");b.setAttribute("width","0"),b.setAttribute("height","0"),b.style.display="none";const h=()=>{window.document.body.contains(b)&&(window.document.body.removeChild(b),window.removeEventListener("message",$,!1))};let $;const O=setTimeout(()=>{T(new ko),h()},1e3*g);$=function(k){if(k.origin!=w||!k.data||k.data.type!=="authorization_response")return;const A=k.source;A&&A.close(),k.data.response.error?T(ce.fromPayload(k.data.response)):E(k.data.response),clearTimeout(O),window.removeEventListener("message",$,!1),setTimeout(h,2e3)},window.addEventListener("message",$,!1),window.document.body.appendChild(b),b.setAttribute("src",p)}))(a,this.domainUrl,c);if(i!==d.state)throw new ce("state_mismatch","Invalid state");const v=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({},v),{scope:f,oauthTokenScope:v.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 ft({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 kf(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=Ne(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 ft({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 ft({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 _e=(e=>(e.READY="sesamyJsReady",e.AUTHENTICATED="sesamyJsAuthenticated",e.LOGOUT="sesamyJsLogout",e.CLEAR_CACHE="sesamyJsClearCache",e.USER_ATTRIBUTE_CHANGED="sesamyUserAttributeChanged",e.PURCHASE="sesamyJsPurchase",e))(_e||{});const CT="sesamy.com",AT="sesamy.dev",jT="https://sesa.my",Lo="sesamyCacheTimestamp";function Je(e,t){return`https://${e}.${t==="dev"?AT:CT}`}let ue,Ff,Bf=!1;const zt="sesamyAccessToken",No="sesamyRefreshToken";async function _r(){return new Promise((r,n)=>{let a=0;const i=()=>{Bf?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(No);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(No),new Error("Renew token failed");const i=await a.json();return localStorage.setItem(No,i.refresh_token),localStorage.setItem(zt,i.access_token),i.access_token}catch{Hf()}}async function xo(){const e=localStorage.getItem(zt);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(zt)}return e}function zf(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;Ff=e.organization;const t={domain:Je("token",e.environment),clientId:e.clientId,useCookiesForTransactions:!0};if(zf(window.location.href)!==zf(Je("auth",e.environment))&&(t.cacheLocation="localstorage",t.useRefreshTokens=!0),ue=await RT(t),window.location.search.includes("code="))try{await ue.handleRedirectCallback();const r=await ue.getUser();Ze(_e.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)}Bf=!0}async function Uo(){return await _r(),await xo()?!0:ue?ue.isAuthenticated():!1}async function xT(){return await _r(),await xo()?{sub:"local",name:"Local User"}:ue?ue.getUser():null}async function Do(e){if(await _r(),localStorage.removeItem(zt),!ue)throw new Error("Auth0 client not initialized");const t=(e==null?void 0:e.authorizationParams)||{};return ue.loginWithRedirect({...e,authorizationParams:{organization:Ff,redirect_uri:window.location.href,...t}})}async function Rr(e=!0){await _r();const t=await xo();if(t)return t;try{return ue?await ue.getTokenSilently():null}catch(r){if(e)throw r;return null}}async function Hf(e={}){if(await _r(),localStorage.removeItem(zt),Ze(_e.LOGOUT,{}),!!ue)return ue.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 Gf(e){const t=Kf(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3)throw new Error("Invalid token");localStorage.setItem(zt,e),Ze(_e.AUTHENTICATED,t)}const UT=(e,t)=>t.skipDedupe||t.method!=="GET",DT=(e,t)=>t.method+"@"+e,MT=e=>e.clone(),Wf=({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,l])=>l(u)),n.delete(s),u})}catch(u){return n.delete(s),Promise.reject(u)}}},FT=(e,t)=>e*t,BT=e=>e&&e.ok,Vf=({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=(v,p)=>Promise.resolve(n(v,p)).then(w=>w?v&&o?v:p?Promise.reject(p):v:(c++,!r||c<=r?new Promise(g=>{const E=t(e,c);setTimeout(()=>{typeof a=="function"?Promise.resolve(a({response:v,error:p,url:f,options:l})).then((T={})=>{var b,h;g(u((b=T&&T.url)!==null&&b!==void 0?b:f,(h=T&&T.options)!==null&&h!==void 0?h:l))}):g(u(f,l))},E)}).then(d).catch(g=>{if(!i)throw g;return d(null,g)}):v&&o?v:Promise.reject(p||new Error("Number of attempts exceeded."))));return u(f,l).then(d).catch(v=>{if(!i)throw v;return d(null,v)})},zT="application/json",Zf="Content-Type",Ht=Symbol(),Jf=Symbol();function Yf(e={}){var t;return(t=Object.entries(e).find(([r])=>r.toLowerCase()===Zf.toLowerCase()))===null||t===void 0?void 0:t[1]}function Xf(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})},Kt={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){Kt.options=t?e:vt(Kt.options,e)}function KT(e,t=!1){Kt.polyfills=t?e:vt(Kt.polyfills,e)}function GT(e){Kt.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((b,h)=>h.beforeRequest&&h.beforeRequest(b,e._options,t)||b,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)((b,h)=>(c=b,a.polyfill("fetch")(b,h)))(r,l),v=new Error,p=d.catch(b=>{throw{[Ht]:b}}).then(b=>{if(!b.ok){const h=new qf;if(h.cause=v,h.stack=h.stack+`
5
- CAUSE: `+v.stack,h.response=b,h.url=c,b.type==="opaque")throw h;return b.text().then($=>{var O;if(h.message=$,a.errorType==="json"||((O=b.headers.get("Content-Type"))===null||O===void 0?void 0:O.split(";")[0])==="application/json")try{h.json=JSON.parse($)}catch{}throw h.text=$,h.status=b.status,h})}return b}),w=b=>b.catch(h=>{const $=h.hasOwnProperty(Ht),O=$?h[Ht]:h,k=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||$&&f.has(Ht)&&f.get(Ht);if(k)return k(O,e);const A=f.get(Jf);if(A)return A(O,e);throw O}),g=b=>h=>w(b?p.then($=>$&&$[b]()).then($=>h?h($):$):p.then($=>h?h($):$)),E={_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(b,h){return f.set(b,h),this},badRequest(b){return this.error(400,b)},unauthorized(b){return this.error(401,b)},forbidden(b){return this.error(403,b)},notFound(b){return this.error(404,b)},timeout(b){return this.error(408,b)},internalError(b){return this.error(500,b)},fetchError(b){return this.error(Ht,b)}},T=u.reduce((b,h)=>({...b,...typeof h.resolver=="function"?h.resolver(b):h.resolver}),E);return o.reduce((b,h)=>h(b,e),T)},ZT={_url:"",_options:{},_config:Kt,_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({[Zf]: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(Jf,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=Yf(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||Xf(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=Yf(this._options.headers);return this.content(t||Xf(r)&&r||zT).body(JSON.stringify(e))}};function Fe(e="",t={}){return{...ZT,_url:e,_options:t}}Fe.default=Fe,Fe.options=HT,Fe.errorType=GT,Fe.polyfills=KT,Fe.WretchError=qf;function Re(){sessionStorage.removeItem(Lo),Ze(_e.CLEAR_CACHE,{})}function Qf(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function JT(e){const t=Je("api2",e.environment),r=S=>async(I,j)=>{let X=sessionStorage.getItem(Lo);X||(X=Date.now().toString(),sessionStorage.setItem(Lo,X));const le={...j,headers:{...j.headers,"Cache-Timestamp":X}};return S(I,le)},n=(S=!0)=>I=>async(j,X)=>{let le=null;if(le=await Rr(S),!le){if(S)throw new Error("No access token available");return I(j,X)}const tr={...X,headers:{...X.headers,...le?{Authorization:`Bearer ${le}`}:{}}};return I(j,tr)},a=S=>(I,j)=>{if(j.headers.Authorization)return S(I,j);const X=localStorage.getItem("__anon_id"),le=btoa(`${X}:`),tr={...j,headers:{...j.headers,Authorization:`Basic ${le}`}};return S(I,tr)},i=Fe(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Wf(),Vf({delayTimer:1e3,delayRamp:(S,I)=>S*I,maxAttempts:3,until:S=>!!(S&&(S.ok||S.status>=400&&S.status<500)),retryOnNetworkError:!1})]),o=Fe(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Wf(),Vf({delayTimer:1e3,delayRamp:(S,I)=>S*I,maxAttempts:3,until:S=>!!(S&&(S.ok||S.status>=400&&S.status<500)),retryOnNetworkError:!1})]);async function s(){return i.get("/entitlements").json()}async function u(S){const I=await i.get("/entitlements").json();return I==null?void 0:I.find(j=>j.id===S)}async function f(S){return i.get(`/entitlements/${S}/access`).json()}async function l(){return i.get("/contracts").json()}async function c(S){const I=await i.get("/contracts").json();return I==null?void 0:I.find(j=>j.id===S)}async function d(S){return(await i.post(`/contracts/${S}/cancel`).res()).ok}async function v(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function p(){return i.get("/bills").json()}async function w(S){const I=await i.get("/bills").json();return I==null?void 0:I.find(j=>j.id===S)}async function g(){return i.get("/transactions").json()}async function E(S){const I=await i.get("/transactions").json();return I==null?void 0:I.find(j=>j.id===S)}async function T(S,I){const j=await i.url(`/user-metadata/${S}`).put(I).json();return Ze(_e.USER_ATTRIBUTE_CHANGED,{}),Re(),j}async function b(S){const I=await i.url(`/user-metadata/${S}`).delete().res();return Re(),I.ok}async function h(S){return(await i.url(`/user-metadata/${S}`).get().json())[S]}async function $(){return await i.url("/user-metadata").get().json()}async function O(){return await i.url("/tags").get().json()}async function k(S){const I=await i.url(`/tags/${S}`).delete().res();return Re(),I.ok}async function A(S){const I=await i.url("/tags").post(S).res();return Ze(_e.USER_ATTRIBUTE_CHANGED,{}),Re(),I.ok}async function M(S){return(await o.url("/tallies").get().json())[S]}async function F(){return await o.url("/tallies").get().json()}async function J(S){const I=await o.url(`/tallies/${S}`).delete().res();return Re(),I.ok}async function L(S,I){return await o.url(`/tallies/${S}/push`).post(I).json()}async function U(S){return await i.url(`/products/${S}`).get().json()}async function z(){return await Rr(!1)?await i.url("/profile").get().json():null}async function _(S){const I=await i.url("/profile").patch(S).res();return Re(),I.ok}async function V(){return await i.url("/payment-issues").get().json()}async function q(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function He(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function m(S){const I=await Rr(!1);if(!I)throw new Error("No access token available");const j=new URL(`${Je("spotify-oas",e.environment)}/sesamy-callback`);j.searchParams.set("access_token",I),j.searchParams.set("state",S),window.location.href=j.toString()}async function y(S){const I=await i.url(`/products/${S}/auto-onboard`).post().json();return I.length&&Re(),I}async function P(S,I=3600){const{shortlink:j}=await Fe(jT).post({url:S,ttl:I}).json();return j}async function N(S){const I=await Rr(!1);let j;const X=S.language||Qf();switch(S.target){case"account":j=new URL(`${Je("account",e.environment)}/${X}/subscriptions/${e.clientId}`);break;case"consume":j=new URL(`${Je("consume",e.environment)}/${X}/@${e.clientId}/${S.sku}`),S.episodeId?j.href+=`/${S.episodeId}`:j.href+="/listen";break;default:throw new Error("Invalid target")}return j.searchParams.set("sesamy-redirect-url",S.redirectUrl||window.location.href),I&&(j.hash=`#access_token=${I}`),S.shorten?P(j.href,S.ttl):j.href}async function x(S){return(await o.url("/checkouts").post({language:Qf(),...S,vendorId:e.clientId})).json()}async function D(S,I){return(await o.url(`/checkouts/${S}`).patch(I)).json()}async function Y(S){return(await o.url(`/checkouts/${S}`).get()).json()}async function B(){const S=await Rr(!1),I=new URL(`${Je("account",e.environment)}/subscriptions/${e.clientId}`);S&&(I.hash=`#access_token=${S}`),window.location.href=I.toString()}return{createCheckout:x,updateCheckout:D,getCheckout:Y,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getContracts:l,getContract:c,cancelContract:d,getProfile:z,updateProfile:_,getSubscriptions:v,getBills:p,getBill:w,setUserMetadata:T,deleteUserMetadata:b,getUserMetadata:h,listUserMetadata:$,getTags:O,deleteTag:k,setTag:A,getTally:M,getTallies:F,deleteTally:J,pushTally:L,getTransactions:g,getTransaction:E,getProduct:U,getPaymentIssues:V,autoOnboardProduct:y,isSpotifyLinked:q,unlinkSpotify:He,linkSpotify:m,generateLink:N,openHostedAccountPage:B}}const ed="@sesamy/sesamy-js",Mo="1.19.1";function td(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 Gn="undefined",rd="object",Fo=function(){},nd="any",ad="*",ht="__",Wn=typeof process<"u"?process:{};Wn.env&&Wn.env.NODE_ENV;var te=typeof document<"u";Wn.versions!=null&&Wn.versions.node!=null,typeof Deno<"u"&&Deno.core,te&&window.name==="nodejs"||typeof navigator<"u"&&navigator.userAgent!==void 0&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));function id(e,t){return t.charAt(0)[e]()+t.slice(1)}var YT=id.bind(null,"toUpperCase"),XT=id.bind(null,"toLowerCase");function qT(e){return od(e)?YT("null"):typeof e=="object"?rE(e):Object.prototype.toString.call(e).slice(8,-1)}function Vn(e,t){t===void 0&&(t=!0);var r=qT(e);return t?XT(r):r}function Cr(e,t){return typeof t===e}var ie=Cr.bind(null,"function"),Ye=Cr.bind(null,"string"),Gt=Cr.bind(null,"undefined"),QT=Cr.bind(null,"boolean");Cr.bind(null,"symbol");function od(e){return e===null}function eE(e){return Vn(e)==="number"&&!isNaN(e)}function sd(e){return Vn(e)==="array"}function oe(e){if(!tE(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function tE(e){return e&&(typeof e=="object"||e!==null)}function rE(e){return ie(e.constructor)?e.constructor.name:null}function nE(e){return e instanceof Error||Ye(e.message)&&e.constructor&&eE(e.constructor.stackTraceLimit)}function cd(e,t){if(typeof t!="object"||od(t))return!1;if(t instanceof e)return!0;var r=Vn(new e(""));if(nE(t))for(;t;){if(Vn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}cd.bind(null,TypeError),cd.bind(null,SyntaxError);function Zn(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?aE(e,t):r}function aE(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function Jn(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}Jn(Zn,"form"),Jn(Zn,"button"),Jn(Zn,"input"),Jn(Zn,"select");function iE(e){return e?sd(e)?e:[e]:[]}function ud(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function oE(){if(te){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function sE(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function cE(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=ud(r[1]),o=ud(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&&(uE(n,u.map(function(f){return f.replace(/[?[\]\\ ]/g,"")}),n[s]),delete n[s])}return n}(function(t){return te&&window.location.search.substring(1)}())}function uE(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 Yn(){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 lE(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 Ar="global",Wt=ht+"global"+ht,Vt=typeof self===rd&&self.self===self&&self||typeof global===rd&&global.global===global&&global||void 0;function pt(e){return Vt[Wt][e]}function mt(e,t){return Vt[Wt][e]=t}function Zt(e){delete Vt[Wt][e]}function Jt(e,t,r){var n;try{if(Bo(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Vt[Wt]||(Vt[Wt]={});var Xn={};function Bo(e){if(typeof Xn[e]!==Gn)return Xn[e];try{var t=window[e];t.setItem(Gn,Gn),t.removeItem(Gn)}catch{return Xn[e]=!1}return Xn[e]=!0}function R(){return R=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},R.apply(this,arguments)}var Xe="function",Be="undefined",fE="@@redux/"+Math.random().toString(36),ld=function(){return typeof Symbol===Xe&&Symbol.observable||"@@observable"}(),qn=" != "+Xe;function fd(e,t,r){var n;if(typeof t===Xe&&typeof r===Be&&(r=t,t=void 0),typeof r!==Be){if(typeof r!==Xe)throw new Error("enhancer"+qn);return r(fd)(e,t)}if(typeof e!==Xe)throw new Error("reducer"+qn);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(v){if(typeof v!==Xe)throw new Error("Listener"+qn);var p=!0;return f(),s.push(v),function(){if(p){p=!1,f();var w=s.indexOf(v);s.splice(w,1)}}}function d(v){if(!oe(v))throw new Error("Act != obj");if(typeof v.type===Be)throw new Error("ActType "+Be);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,v)}finally{u=!1}for(var p=o=s,w=0;w<p.length;w++)(0,p[w])();return v}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(v){if(typeof v!==Xe)throw new Error("next reducer"+qn);a=v,d({type:"@@redux/INIT"})}})[ld]=function(){var v,p=c;return(v={subscribe:function(w){if(typeof w!="object")throw new TypeError("Observer != obj");function g(){w.next&&w.next(l())}return g(),{unsubscribe:p(g)}}})[ld]=function(){return this},v},n}function dE(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+Be}function Yt(){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 vE(){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)}),R({},o,{dispatch:s=Yt.apply(void 0,i)(o.dispatch)})}}}var qe=ht+"anon_id",gt=ht+"user_id",Xt=ht+"user_traits",Qe="userId",qt="anonymousId",Qn=["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"],zo=["name","EVENTS","config","loaded"],C=Qn.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),dd=/^utm_/,vd=/^an_prop_/,hd=/^an_trait_/;function hE(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(qe,o.anonymousId),f||t(gt,o.userId),u.traits&&t(Xt,R({},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,v=l.reduce(function(p,w){if(w.match(dd)||w.match(/^(d|g)clid/)){var g=w.replace(dd,"");p.campaign[g==="campaign"?"name":g]=i[w]}return w.match(vd)&&(p.props[w.replace(vd,"")]=i[w]),w.match(hd)&&(p.traits[w.replace(hd,"")]=i[w]),p},{campaign:{},props:{},traits:{}});r.dispatch(R({type:C.params,raw:i},v,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,v.traits)},0),d&&setTimeout(function(){return e.track(d,v.props)},0),Object.keys(v.campaign).length&&r.dispatch({type:C.campaign,campaign:v.campaign})}}return n(a)}}}}function pE(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===C.setItemEnd){if(r.key===qe)return R({},t,{anonymousId:r.value});if(r.key===gt)return R({},t,{userId:r.value})}switch(r.type){case C.identify:return Object.assign({},t,{userId:r.userId,traits:R({},t.traits,r.traits)});case C.reset:return[gt,qe,Xt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function pd(e){return{userId:e.getItem(gt),anonymousId:e.getItem(qe),traits:e.getItem(Xt)}}var Ho=function(e){return ht+"TEMP"+ht+e};function mE(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&&([gt,Xt,qe].forEach(function(v){n(v)}),[Qe,qt,"traits"].forEach(function(v){Zt(Ho(v))})),s.type===C.identify){a(qe)||r(qe,Yn());var c=a(gt),d=a(Xt)||{};c&&c!==u&&i.dispatch({type:C.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(gt,u),f&&r(Xt,R({},d,f))}return o(s)}}}}var jr={};function md(e,t){jr[e]&&ie(jr[e])&&(jr[e](t),delete jr[e])}function gd(e,t,r){return new Promise(function(n,a){return t()?n(e):r<1?a(R({},e,{queue:!0})):new Promise(function(i){return setTimeout(i,10)}).then(function(i){return gd(e,t,r-10).then(n,a)})})}function gE(e){return{abort:e}}function yd(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,v){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(v)):(c.requeue.push(d),c.requeueIndex.push(v)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],v=d.plugin,p=d.payload.type,w=a[v][p];if(w&&ie(w)){var g,E=function(h,$){return h===void 0&&(h={}),$===void 0&&($={}),[Qe,qt].reduce(function(O,k){return h.hasOwnProperty(k)&&$[k]&&$[k]!==h[k]&&(O[k]=$[k]),O},h)}(d.payload,u),T=n[E.meta.rid];if(!T&&(g=w({payload:E,config:o[v].config,instance:r,abort:gE}))&&oe(g)&&g.abort)return void(n[E.meta.rid]=!0);if(!T){var b=p+":"+v;e.dispatch(R({},E,{type:b,_:{called:b,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var Ko=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(Qt),v=t.exact.map(function(g){return g.pluginName});d&&(v=o.during.map(function(g){return g.pluginName}));var p=function(g,E){return function(T,b,h){var $=b.config,O=b.name,k=O+"."+T.type;h&&(k=h.event);var A=T.type.match(Qt)?function(M,F,J,L,U){return function(z,_){var V=L?L.name:M,q=_&&Lr(_)?_:J;if(L&&(!(q=_&&Lr(_)?_:[M]).includes(M)||q.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(q)+" input valid");return R({},U,{abort:{reason:z,plugins:q,caller:F,_:V}})}}(O,k,E,h,T):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(T,k);return{payload:yE(T),instance:g,config:$||{},abort:A}}}(n,v),w=t.exact.reduce(function(g,E){var T=E.pluginName,b=E.methodName,h=!1;return b.match(/^initialize/)||b.match(/^reset/)||(h=!f[T].loaded),l.offline&&b.match(/^(page|track|identify)/)&&(h=!0),g[""+T]=h,g},{});return Promise.resolve(t.exact.reduce(function(g,E,T){try{var b=E.pluginName;return Promise.resolve(g).then(function(h){function $(){return Promise.resolve(h)}var O=function(){if(t.namespaced&&t.namespaced[b])return Promise.resolve(t.namespaced[b].reduce(function(k,A,M){try{return Promise.resolve(k).then(function(F){return A.method&&ie(A.method)?(function(z,_){var V=Pd(z);if(V&&V.name===_){var q=Pd(V.method);throw new Error([_+" plugin is calling method "+z,"Plugins cant call self","Use "+V.method+" "+(q?"or "+q.method:"")+" in "+_+" plugin insteadof "+z].join(`
5
+ CAUSE: `+v.stack,h.response=b,h.url=c,b.type==="opaque")throw h;return b.text().then($=>{var O;if(h.message=$,a.errorType==="json"||((O=b.headers.get("Content-Type"))===null||O===void 0?void 0:O.split(";")[0])==="application/json")try{h.json=JSON.parse($)}catch{}throw h.text=$,h.status=b.status,h})}return b}),w=b=>b.catch(h=>{const $=h.hasOwnProperty(Ht),O=$?h[Ht]:h,k=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||$&&f.has(Ht)&&f.get(Ht);if(k)return k(O,e);const A=f.get(Jf);if(A)return A(O,e);throw O}),g=b=>h=>w(b?p.then($=>$&&$[b]()).then($=>h?h($):$):p.then($=>h?h($):$)),E={_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(b,h){return f.set(b,h),this},badRequest(b){return this.error(400,b)},unauthorized(b){return this.error(401,b)},forbidden(b){return this.error(403,b)},notFound(b){return this.error(404,b)},timeout(b){return this.error(408,b)},internalError(b){return this.error(500,b)},fetchError(b){return this.error(Ht,b)}},T=u.reduce((b,h)=>({...b,...typeof h.resolver=="function"?h.resolver(b):h.resolver}),E);return o.reduce((b,h)=>h(b,e),T)},ZT={_url:"",_options:{},_config:Kt,_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({[Zf]: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(Jf,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=Yf(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||Xf(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=Yf(this._options.headers);return this.content(t||Xf(r)&&r||zT).body(JSON.stringify(e))}};function Fe(e="",t={}){return{...ZT,_url:e,_options:t}}Fe.default=Fe,Fe.options=HT,Fe.errorType=GT,Fe.polyfills=KT,Fe.WretchError=qf;function Re(){sessionStorage.removeItem(Lo),Ze(_e.CLEAR_CACHE,{})}function Qf(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function JT(e){const t=Je("api2",e.environment),r=S=>async(I,j)=>{let X=sessionStorage.getItem(Lo);X||(X=Date.now().toString(),sessionStorage.setItem(Lo,X));const le={...j,headers:{...j.headers,"Cache-Timestamp":X}};return S(I,le)},n=(S=!0)=>I=>async(j,X)=>{let le=null;if(le=await Rr(S),!le){if(S)throw new Error("No access token available");return I(j,X)}const tr={...X,headers:{...X.headers,...le?{Authorization:`Bearer ${le}`}:{}}};return I(j,tr)},a=S=>(I,j)=>{if(j.headers.Authorization)return S(I,j);const X=localStorage.getItem("__anon_id"),le=btoa(`${X}:`),tr={...j,headers:{...j.headers,Authorization:`Basic ${le}`}};return S(I,tr)},i=Fe(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Wf(),Vf({delayTimer:1e3,delayRamp:(S,I)=>S*I,maxAttempts:3,until:S=>!!(S&&(S.ok||S.status>=400&&S.status<500)),retryOnNetworkError:!1})]),o=Fe(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Wf(),Vf({delayTimer:1e3,delayRamp:(S,I)=>S*I,maxAttempts:3,until:S=>!!(S&&(S.ok||S.status>=400&&S.status<500)),retryOnNetworkError:!1})]);async function s(){return i.get("/entitlements").json()}async function u(S){const I=await i.get("/entitlements").json();return I==null?void 0:I.find(j=>j.id===S)}async function f(S){return i.get(`/entitlements/${S}/access`).json()}async function l(){return i.get("/contracts").json()}async function c(S){const I=await i.get("/contracts").json();return I==null?void 0:I.find(j=>j.id===S)}async function d(S){return(await i.post({},`/contracts/${S}/cancel`).res()).ok}async function v(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function p(){return i.get("/bills").json()}async function w(S){const I=await i.get("/bills").json();return I==null?void 0:I.find(j=>j.id===S)}async function g(){return i.get("/transactions").json()}async function E(S){const I=await i.get("/transactions").json();return I==null?void 0:I.find(j=>j.id===S)}async function T(S,I){const j=await i.url(`/user-metadata/${S}`).put(I).json();return Ze(_e.USER_ATTRIBUTE_CHANGED,{}),Re(),j}async function b(S){const I=await i.url(`/user-metadata/${S}`).delete().res();return Re(),I.ok}async function h(S){return(await i.url(`/user-metadata/${S}`).get().json())[S]}async function $(){return await i.url("/user-metadata").get().json()}async function O(){return await i.url("/tags").get().json()}async function k(S){const I=await i.url(`/tags/${S}`).delete().res();return Re(),I.ok}async function A(S){const I=await i.url("/tags").post(S).res();return Ze(_e.USER_ATTRIBUTE_CHANGED,{}),Re(),I.ok}async function M(S){return(await o.url("/tallies").get().json())[S]}async function F(){return await o.url("/tallies").get().json()}async function J(S){const I=await o.url(`/tallies/${S}`).delete().res();return Re(),I.ok}async function L(S,I){return await o.url(`/tallies/${S}/push`).post(I).json()}async function U(S){return await i.url(`/products/${S}`).get().json()}async function z(){return await Rr(!1)?await i.url("/profile").get().json():null}async function _(S){const I=await i.url("/profile").patch(S).res();return Re(),I.ok}async function V(){return await i.url("/payment-issues").get().json()}async function q(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function He(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function m(S){const I=await Rr(!1);if(!I)throw new Error("No access token available");const j=new URL(`${Je("spotify-oas",e.environment)}/sesamy-callback`);j.searchParams.set("access_token",I),j.searchParams.set("state",S),window.location.href=j.toString()}async function y(S){const I=await i.url(`/products/${S}/auto-onboard`).post().json();return I.length&&Re(),I}async function P(S,I=3600){const{shortlink:j}=await Fe(jT).post({url:S,ttl:I}).json();return j}async function N(S){const I=await Rr(!1);let j;const X=S.language||Qf();switch(S.target){case"account":j=new URL(`${Je("account",e.environment)}/${X}/subscriptions/${e.clientId}`);break;case"consume":j=new URL(`${Je("consume",e.environment)}/${X}/@${e.clientId}/${S.sku}`),S.episodeId?j.href+=`/${S.episodeId}`:j.href+="/listen";break;default:throw new Error("Invalid target")}return j.searchParams.set("sesamy-redirect-url",S.redirectUrl||window.location.href),I&&(j.hash=`#access_token=${I}`),S.shorten?P(j.href,S.ttl):j.href}async function x(S){return(await o.url("/checkouts").post({language:Qf(),...S,vendorId:e.clientId})).json()}async function D(S,I){return(await o.url(`/checkouts/${S}`).patch(I)).json()}async function Y(S){return(await o.url(`/checkouts/${S}`).get()).json()}async function B(){const S=await Rr(!1),I=new URL(`${Je("account",e.environment)}/subscriptions/${e.clientId}`);S&&(I.hash=`#access_token=${S}`),window.location.href=I.toString()}return{createCheckout:x,updateCheckout:D,getCheckout:Y,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getContracts:l,getContract:c,cancelContract:d,getProfile:z,updateProfile:_,getSubscriptions:v,getBills:p,getBill:w,setUserMetadata:T,deleteUserMetadata:b,getUserMetadata:h,listUserMetadata:$,getTags:O,deleteTag:k,setTag:A,getTally:M,getTallies:F,deleteTally:J,pushTally:L,getTransactions:g,getTransaction:E,getProduct:U,getPaymentIssues:V,autoOnboardProduct:y,isSpotifyLinked:q,unlinkSpotify:He,linkSpotify:m,generateLink:N,openHostedAccountPage:B}}const ed="@sesamy/sesamy-js",Mo="1.19.1";function td(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 Gn="undefined",rd="object",Fo=function(){},nd="any",ad="*",ht="__",Wn=typeof process<"u"?process:{};Wn.env&&Wn.env.NODE_ENV;var te=typeof document<"u";Wn.versions!=null&&Wn.versions.node!=null,typeof Deno<"u"&&Deno.core,te&&window.name==="nodejs"||typeof navigator<"u"&&navigator.userAgent!==void 0&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));function id(e,t){return t.charAt(0)[e]()+t.slice(1)}var YT=id.bind(null,"toUpperCase"),XT=id.bind(null,"toLowerCase");function qT(e){return od(e)?YT("null"):typeof e=="object"?rE(e):Object.prototype.toString.call(e).slice(8,-1)}function Vn(e,t){t===void 0&&(t=!0);var r=qT(e);return t?XT(r):r}function Cr(e,t){return typeof t===e}var ie=Cr.bind(null,"function"),Ye=Cr.bind(null,"string"),Gt=Cr.bind(null,"undefined"),QT=Cr.bind(null,"boolean");Cr.bind(null,"symbol");function od(e){return e===null}function eE(e){return Vn(e)==="number"&&!isNaN(e)}function sd(e){return Vn(e)==="array"}function oe(e){if(!tE(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function tE(e){return e&&(typeof e=="object"||e!==null)}function rE(e){return ie(e.constructor)?e.constructor.name:null}function nE(e){return e instanceof Error||Ye(e.message)&&e.constructor&&eE(e.constructor.stackTraceLimit)}function cd(e,t){if(typeof t!="object"||od(t))return!1;if(t instanceof e)return!0;var r=Vn(new e(""));if(nE(t))for(;t;){if(Vn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}cd.bind(null,TypeError),cd.bind(null,SyntaxError);function Zn(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?aE(e,t):r}function aE(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function Jn(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}Jn(Zn,"form"),Jn(Zn,"button"),Jn(Zn,"input"),Jn(Zn,"select");function iE(e){return e?sd(e)?e:[e]:[]}function ud(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function oE(){if(te){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function sE(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function cE(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=ud(r[1]),o=ud(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&&(uE(n,u.map(function(f){return f.replace(/[?[\]\\ ]/g,"")}),n[s]),delete n[s])}return n}(function(t){return te&&window.location.search.substring(1)}())}function uE(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 Yn(){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 lE(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 Ar="global",Wt=ht+"global"+ht,Vt=typeof self===rd&&self.self===self&&self||typeof global===rd&&global.global===global&&global||void 0;function pt(e){return Vt[Wt][e]}function mt(e,t){return Vt[Wt][e]=t}function Zt(e){delete Vt[Wt][e]}function Jt(e,t,r){var n;try{if(Bo(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Vt[Wt]||(Vt[Wt]={});var Xn={};function Bo(e){if(typeof Xn[e]!==Gn)return Xn[e];try{var t=window[e];t.setItem(Gn,Gn),t.removeItem(Gn)}catch{return Xn[e]=!1}return Xn[e]=!0}function R(){return R=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},R.apply(this,arguments)}var Xe="function",Be="undefined",fE="@@redux/"+Math.random().toString(36),ld=function(){return typeof Symbol===Xe&&Symbol.observable||"@@observable"}(),qn=" != "+Xe;function fd(e,t,r){var n;if(typeof t===Xe&&typeof r===Be&&(r=t,t=void 0),typeof r!==Be){if(typeof r!==Xe)throw new Error("enhancer"+qn);return r(fd)(e,t)}if(typeof e!==Xe)throw new Error("reducer"+qn);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(v){if(typeof v!==Xe)throw new Error("Listener"+qn);var p=!0;return f(),s.push(v),function(){if(p){p=!1,f();var w=s.indexOf(v);s.splice(w,1)}}}function d(v){if(!oe(v))throw new Error("Act != obj");if(typeof v.type===Be)throw new Error("ActType "+Be);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,v)}finally{u=!1}for(var p=o=s,w=0;w<p.length;w++)(0,p[w])();return v}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(v){if(typeof v!==Xe)throw new Error("next reducer"+qn);a=v,d({type:"@@redux/INIT"})}})[ld]=function(){var v,p=c;return(v={subscribe:function(w){if(typeof w!="object")throw new TypeError("Observer != obj");function g(){w.next&&w.next(l())}return g(),{unsubscribe:p(g)}}})[ld]=function(){return this},v},n}function dE(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+Be}function Yt(){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 vE(){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)}),R({},o,{dispatch:s=Yt.apply(void 0,i)(o.dispatch)})}}}var qe=ht+"anon_id",gt=ht+"user_id",Xt=ht+"user_traits",Qe="userId",qt="anonymousId",Qn=["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"],zo=["name","EVENTS","config","loaded"],C=Qn.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),dd=/^utm_/,vd=/^an_prop_/,hd=/^an_trait_/;function hE(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(qe,o.anonymousId),f||t(gt,o.userId),u.traits&&t(Xt,R({},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,v=l.reduce(function(p,w){if(w.match(dd)||w.match(/^(d|g)clid/)){var g=w.replace(dd,"");p.campaign[g==="campaign"?"name":g]=i[w]}return w.match(vd)&&(p.props[w.replace(vd,"")]=i[w]),w.match(hd)&&(p.traits[w.replace(hd,"")]=i[w]),p},{campaign:{},props:{},traits:{}});r.dispatch(R({type:C.params,raw:i},v,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,v.traits)},0),d&&setTimeout(function(){return e.track(d,v.props)},0),Object.keys(v.campaign).length&&r.dispatch({type:C.campaign,campaign:v.campaign})}}return n(a)}}}}function pE(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===C.setItemEnd){if(r.key===qe)return R({},t,{anonymousId:r.value});if(r.key===gt)return R({},t,{userId:r.value})}switch(r.type){case C.identify:return Object.assign({},t,{userId:r.userId,traits:R({},t.traits,r.traits)});case C.reset:return[gt,qe,Xt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function pd(e){return{userId:e.getItem(gt),anonymousId:e.getItem(qe),traits:e.getItem(Xt)}}var Ho=function(e){return ht+"TEMP"+ht+e};function mE(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&&([gt,Xt,qe].forEach(function(v){n(v)}),[Qe,qt,"traits"].forEach(function(v){Zt(Ho(v))})),s.type===C.identify){a(qe)||r(qe,Yn());var c=a(gt),d=a(Xt)||{};c&&c!==u&&i.dispatch({type:C.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(gt,u),f&&r(Xt,R({},d,f))}return o(s)}}}}var jr={};function md(e,t){jr[e]&&ie(jr[e])&&(jr[e](t),delete jr[e])}function gd(e,t,r){return new Promise(function(n,a){return t()?n(e):r<1?a(R({},e,{queue:!0})):new Promise(function(i){return setTimeout(i,10)}).then(function(i){return gd(e,t,r-10).then(n,a)})})}function gE(e){return{abort:e}}function yd(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,v){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(v)):(c.requeue.push(d),c.requeueIndex.push(v)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],v=d.plugin,p=d.payload.type,w=a[v][p];if(w&&ie(w)){var g,E=function(h,$){return h===void 0&&(h={}),$===void 0&&($={}),[Qe,qt].reduce(function(O,k){return h.hasOwnProperty(k)&&$[k]&&$[k]!==h[k]&&(O[k]=$[k]),O},h)}(d.payload,u),T=n[E.meta.rid];if(!T&&(g=w({payload:E,config:o[v].config,instance:r,abort:gE}))&&oe(g)&&g.abort)return void(n[E.meta.rid]=!0);if(!T){var b=p+":"+v;e.dispatch(R({},E,{type:b,_:{called:b,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var Ko=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(Qt),v=t.exact.map(function(g){return g.pluginName});d&&(v=o.during.map(function(g){return g.pluginName}));var p=function(g,E){return function(T,b,h){var $=b.config,O=b.name,k=O+"."+T.type;h&&(k=h.event);var A=T.type.match(Qt)?function(M,F,J,L,U){return function(z,_){var V=L?L.name:M,q=_&&Lr(_)?_:J;if(L&&(!(q=_&&Lr(_)?_:[M]).includes(M)||q.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(q)+" input valid");return R({},U,{abort:{reason:z,plugins:q,caller:F,_:V}})}}(O,k,E,h,T):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(T,k);return{payload:yE(T),instance:g,config:$||{},abort:A}}}(n,v),w=t.exact.reduce(function(g,E){var T=E.pluginName,b=E.methodName,h=!1;return b.match(/^initialize/)||b.match(/^reset/)||(h=!f[T].loaded),l.offline&&b.match(/^(page|track|identify)/)&&(h=!0),g[""+T]=h,g},{});return Promise.resolve(t.exact.reduce(function(g,E,T){try{var b=E.pluginName;return Promise.resolve(g).then(function(h){function $(){return Promise.resolve(h)}var O=function(){if(t.namespaced&&t.namespaced[b])return Promise.resolve(t.namespaced[b].reduce(function(k,A,M){try{return Promise.resolve(k).then(function(F){return A.method&&ie(A.method)?(function(z,_){var V=Pd(z);if(V&&V.name===_){var q=Pd(V.method);throw new Error([_+" plugin is calling method "+z,"Plugins cant call self","Use "+V.method+" "+(q?"or "+q.method:"")+" in "+_+" plugin insteadof "+z].join(`
6
6
  `))}}(A.methodName,A.pluginName),Promise.resolve(A.method({payload:F,instance:n,abort:(J=F,L=b,U=A.pluginName,function(z,_){return R({},J,{abort:{reason:z,plugins:_||[L],caller:c,from:U||L}})}),config:Sd(A.pluginName,f,i),plugins:f})).then(function(z){var _=oe(z)?z:{};return Promise.resolve(R({},F,_))})):F;var J,L,U})}catch(F){return Promise.reject(F)}},Promise.resolve(r))).then(function(k){h[b]=k});h[b]=r}();return O&&O.then?O.then($):$()})}catch(h){return Promise.reject(h)}},Promise.resolve({}))).then(function(g){return Promise.resolve(t.exact.reduce(function(E,T,b){try{var h=t.exact.length===b+1,$=T.pluginName,O=i[$];return Promise.resolve(E).then(function(k){var A=g[$]?g[$]:{};if(d&&(A=k),Wo(A,$))return Go({data:A,method:c,instance:n,pluginName:$,store:s}),Promise.resolve(k);if(Wo(k,$))return h&&Go({data:k,method:c,instance:n,store:s}),Promise.resolve(k);if(w.hasOwnProperty($)&&w[$]===!0)return s.dispatch({type:"queue",plugin:$,payload:A,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(k);var M=p(g[$],i[$]);return Promise.resolve(O[c]({abort:M.abort,payload:A,instance:n,config:Sd($,f,i),plugins:f})).then(function(F){var J=oe(F)?F:{},L=R({},k,J),U=g[$];if(Wo(U,$))Go({data:U,method:c,instance:n,pluginName:$,store:s});else{var z=c+":"+$;(z.match(/:/g)||[]).length<2&&!c.match(wd)&&!c.match(bd)&&n.dispatch(R({},d?L:A,{type:z,_:{called:z,from:"submethod"}}))}return Promise.resolve(L)})})}catch(k){return Promise.reject(k)}},Promise.resolve(r))).then(function(E){if(!(c.match(Qt)||c.match(/^registerPlugin/)||c.match(bd)||c.match(wd)||c.match(/^params/)||c.match(/^userIdChanged/))){if(u.plugins.includes(c),E._&&E._.originalAction===c)return E;var T=R({},E,{_:{originalAction:E.type,called:E.type,from:"engineEnd"}});Td(E,t.exact.length)&&!c.match(/End$/)&&(T=R({},T,{type:E.type+"Aborted"})),s.dispatch(T)}return E})})}catch(g){return Promise.reject(g)}},Qt=/Start$/,wd=/^bootstrap/,bd=/^ready/;function Go(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(R({},e.data,{type:r,_:{called:r,from:"abort"}}))}function Sd(e,t,r){var n=t[e]||r[e];return n&&n.config?n.config:{}}function $d(e,t){return t.reduce(function(r,n){return n[e]?r.concat({methodName:e,pluginName:n.name,method:n[e]}):r},[])}function Id(e,t){var r=e.replace(Qt,""),n=t?":"+t:"";return[""+e+n,""+r+n,r+"End"+n]}function Wo(e,t){var r=e.abort;return!!r&&(r===!0||Ed(r,t)||r&&Ed(r.plugins,t))}function Td(e,t){var r=e.abort;if(!r)return!1;if(r===!0||Ye(r))return!0;var n=r.plugins;return Lr(r)&&r.length===t||Lr(n)&&n.length===t}function Lr(e){return Array.isArray(e)}function Ed(e,t){return!(!e||!Lr(e))&&e.includes(t)}function Pd(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function yE(e){return Object.keys(e).reduce(function(t,r){return r==="type"||(t[r]=oe(e[r])?Object.assign({},e[r]):e[r]),t},{})}function wE(e,t,r){var n={};return function(a){return function(i){return function(o){try{var s,u=function(h){return s?h: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 md(o.meta.rid,{payload:o})},0),f===C.initializeEnd){var d=t(),v=Object.keys(d),p=v.filter(function(h){return l.includes(h)}).map(function(h){return d[h]}),w=[],g=[],E=o.disabled,T=p.map(function(h){var $=h.loaded,O=h.name,k=h.config;return gd(h,function(){return $({config:k})},1e4).then(function(A){return n[O]||(a.dispatch({type:C.pluginReadyType(O),name:O,events:Object.keys(h).filter(function(M){return!zo.includes(M)})}),n[O]=!0),w=w.concat(O),h}).catch(function(A){if(A instanceof Error)throw new Error(A);return g=g.concat(A.name),A})});Promise.all(T).then(function(h){var $={plugins:w,failed:g,disabled:E};setTimeout(function(){v.length===T.length+E.length&&a.dispatch(R({},{type:C.ready},$))},0)})}var b=function(){if(f!==C.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return yd(a,t,e)},0),Promise.resolve(function(h,$,O,k,A){try{var M=ie($)?$():$,F=h.type,J=F.replace(Qt,"");if(h._&&h._.called)return Promise.resolve(h);var L=O.getState(),U=(V=M,(q=L.plugins)===void 0&&(q={}),(He=h.options)===void 0&&(He={}),Object.keys(V).filter(function(m){var y=He.plugins||{};return QT(y[m])?y[m]:y.all!==!1&&(!q[m]||q[m].enabled!==!1)}).map(function(m){return V[m]}));F===C.initializeStart&&h.fromEnable&&(U=Object.keys(L.plugins).filter(function(m){var y=L.plugins[m];return h.plugins.includes(m)&&!y.initialized}).map(function(m){return M[m]}));var z=U.map(function(m){return m.name}),_=function(m,y,P){var N=Id(m).map(function(x){return $d(x,y)});return y.reduce(function(x,D){var Y=D.name,B=Id(m,Y).map(function(X){return $d(X,y)}),S=B[0],I=B[1],j=B[2];return S.length&&(x.beforeNS[Y]=S),I.length&&(x.duringNS[Y]=I),j.length&&(x.afterNS[Y]=j),x},{before:N[0],beforeNS:{},during:N[1],duringNS:{},after:N[2],afterNS:{}})}(F,U);return Promise.resolve(Ko({action:h,data:{exact:_.before,namespaced:_.beforeNS},state:L,allPlugins:M,allMatches:_,instance:O,store:k,EVENTS:A})).then(function(m){function y(){var x=function(){if(F.match(Qt))return Promise.resolve(Ko({action:R({},P,{type:J+"End"}),data:{exact:_.after,namespaced:_.afterNS},state:L,allPlugins:M,allMatches:_,instance:O,store:k,EVENTS:A})).then(function(D){D.meta&&D.meta.hasCallback&&md(D.meta.rid,{payload:D})})}();return x&&x.then?x.then(function(){return m}):m}if(Td(m,z.length))return m;var P,N=function(){if(F!==J)return Promise.resolve(Ko({action:R({},m,{type:J}),data:{exact:_.during,namespaced:_.duringNS},state:L,allPlugins:M,allMatches:_,instance:O,store:k,EVENTS:A})).then(function(x){P=x});P=m}();return N&&N.then?N.then(y):y()})}catch(m){return Promise.reject(m)}var V,q,He}(o,t,e,a,r)).then(function(h){return s=1,i(h)})}();return Promise.resolve(b&&b.then?b.then(u):u(b))}catch(h){return Promise.reject(h)}}}}}function bE(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 SE=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 Yt.apply(void 0,o)(n)(a)}}}}};function $E(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=Od(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},R({},t,n)}if(/^initialize:([^:]*)$/.test(r.type)){var u=Od(r.type,C.initialize),f=e()[u];return f&&u?(n[u]=R({},t[u],{initialized:!0,loaded:!!f.loaded({config:f.config})}),R({},t,n)):t}if(/^ready:([^:]*)$/.test(r.type))return n[r.name]=R({},t[r.name],{loaded:!0}),R({},t,n);switch(r.type){case C.disablePlugin:return R({},t,kd(r.plugins,!1,t));case C.enablePlugin:return R({},t,kd(r.plugins,!0,t));default:return t}}}function Od(e,t){return e.substring(t.length+1,e.length)}function kd(e,t,r){return e.reduce(function(n,a){return n[a]=R({},r[a],{enabled:t}),n},r)}function _d(e){try{return JSON.parse(JSON.stringify(e))}catch{}return e}var IE={last:{},history:[]};function TE(e,t){e===void 0&&(e=IE);var r=t.options,n=t.meta;if(t.type===C.track){var a=_d(R({event:t.event,properties:t.properties},Object.keys(r).length&&{options:r},{meta:n}));return R({},e,{last:a,history:e.history.concat(a)})}return e}var EE={actions:[]};function PE(e,t){e===void 0&&(e=EE);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),R({},e,{actions:n});case"dequeue":return[];default:return e}}var Rd=/#.*$/;function OE(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(Rd,""):"")}var Cd,Ad,jd,Ld,kE=function(e){if(e===void 0&&(e={}),!te)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 v=function(){if(te){for(var p,w=document.getElementsByTagName("link"),g=0;p=w[g];g++)if(p.getAttribute("rel")==="canonical")return p.getAttribute("href")}}();return v?v.match(/\?/)?v:v+d:window.location.href.replace(Rd,"")}(f),c={title:r,url:l,path:OE(l),hash:u,search:f,width:o,height:s};return n&&n!==""&&(c.referrer=n),R({},c,e)},_E={last:{},history:[]};function RE(e,t){e===void 0&&(e=_E);var r=t.options;if(t.type===C.page){var n=_d(R({properties:t.properties,meta:t.meta},Object.keys(r).length&&{options:r}));return R({},e,{last:n,history:e.history.concat(n)})}return e}Cd=function(){if(!te)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"}(),Ad=te?document.referrer:null,jd=oE(),Ld=sE();var Nd={initialized:!1,sessionId:Yn(),app:null,version:null,debug:!1,offline:!!te&&!navigator.onLine,os:{name:Cd},userAgent:te?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.13"},timezone:Ld,locale:jd,campaign:{},referrer:Ad};function CE(e,t){e===void 0&&(e=Nd);var r=e.initialized,n=t.campaign;switch(t.type){case C.campaign:return R({},e,{campaign:n});case C.offline:return R({},e,{offline:!0});case C.online:return R({},e,{offline:!1});default:return r?e:R({},Nd,e,{initialized:!0})}}var AE=["plugins","reducers","storage"];function jE(e,t,r){if(te){var n=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(a){n(a,t)})}}function LE(e){var t=jE.bind(null,"online offline",function(r){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(r){return t(!1)}}function xd(){return mt("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 Vt[Wt].analytics.push(o.action||o),i(o)}})}}}function Ud(e){return function(){return Yt(Yt.apply(null,arguments),xd())}}function Vo(e){return e?sd(e)?e:[e]:[]}function Dd(e,t,r){e===void 0&&(e={});var n,a,i=Yn();return t&&(jr[i]=(n=t,a=function(o){for(var s,u=o||Array.prototype.slice.call(arguments),f=0;f<u.length;f++)if(ie(u[f])){s=u[f];break}return s}(r),function(o){a&&a(o),n(o)})),R({},e,{rid:i,ts:new Date().getTime()},t?{hasCallback:!0}:{})}function NE(e){e===void 0&&(e={});var t=e.reducers||{},r=e.initialUser||{},n=(e.plugins||[]).reduce(function(m,y){if(ie(y))return m.middlewares=m.middlewares.concat(y),m;if(y.NAMESPACE&&(y.name=y.NAMESPACE),!y.name)throw new Error("https://lytics.dev/errors/1");y.config||(y.config={});var P=y.EVENTS?Object.keys(y.EVENTS).map(function(D){return y.EVENTS[D]}):[];m.pluginEnabled[y.name]=!(y.enabled===!1||y.config.enabled===!1),delete y.enabled,y.methods&&(m.methods[y.name]=Object.keys(y.methods).reduce(function(D,Y){var B;return D[Y]=(B=y.methods[Y],function(){for(var S=Array.prototype.slice.call(arguments),I=new Array(B.length),j=0;j<S.length;j++)I[j]=S[j];return I[I.length]=$,B.apply({instance:$},I)}),D},{}),delete y.methods);var N=Object.keys(y).concat(P),x=new Set(m.events.concat(N));if(m.events=Array.from(x),m.pluginsArray=m.pluginsArray.concat(y),m.plugins[y.name])throw new Error(y.name+"AlreadyLoaded");return m.plugins[y.name]=y,m.plugins[y.name].loaded||(m.plugins[y.name].loaded=function(){return!0}),m},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),a=e.storage?e.storage:{getItem:pt,setItem:mt,removeItem:Zt},i=function(m){return function(y,P,N){return P.getState("user")[y]||(N&&oe(N)&&N[y]?N[y]:pd(m)[y]||pt(Ho(y))||null)}}(a),o=n.plugins,s=n.events.filter(function(m){return!zo.includes(m)}).sort(),u=new Set(s.concat(Qn).filter(function(m){return!zo.includes(m)})),f=Array.from(u).sort(),l=function(){return o},c=new SE,d=c.addMiddleware,v=c.removeMiddleware,p=c.dynamicMiddlewares,w=function(){throw new Error("Abort disabled inListener")},g=cE(),E=pd(a),T=R({},E,r,g.an_uid?{userId:g.an_uid}:{},g.an_aid?{anonymousId:g.an_aid}:{});T.anonymousId||(T.anonymousId=Yn());var b=R({enable:function(m,y){return new Promise(function(P){_.dispatch({type:C.enablePlugin,plugins:Vo(m),_:{originalAction:C.enablePlugin}},P,[y])})},disable:function(m,y){return new Promise(function(P){_.dispatch({type:C.disablePlugin,plugins:Vo(m),_:{originalAction:C.disablePlugin}},P,[y])})}},n.methods),h=!1,$={identify:function(m,y,P,N){try{var x=Ye(m)?m:null,D=oe(m)?m:y,Y=P||{},B=$.user();mt(Ho(Qe),x);var S=x||D.userId||i(Qe,$,D);return Promise.resolve(new Promise(function(I){_.dispatch(R({type:C.identifyStart,userId:S,traits:D||{},options:Y,anonymousId:B.anonymousId},B.id&&B.id!==x&&{previousId:B.id}),I,[y,P,N])}))}catch(I){return Promise.reject(I)}},track:function(m,y,P,N){try{var x=oe(m)?m.event:m;if(!x||!Ye(x))throw new Error("EventMissing");var D=oe(m)?m:y||{},Y=oe(P)?P:{};return Promise.resolve(new Promise(function(B){_.dispatch({type:C.trackStart,event:x,properties:D,options:Y,userId:i(Qe,$,y),anonymousId:i(qt,$,y)},B,[y,P,N])}))}catch(B){return Promise.reject(B)}},page:function(m,y,P){try{var N=oe(m)?m:{},x=oe(y)?y:{};return Promise.resolve(new Promise(function(D){_.dispatch({type:C.pageStart,properties:kE(N),options:x,userId:i(Qe,$,N),anonymousId:i(qt,$,N)},D,[m,y,P])}))}catch(D){return Promise.reject(D)}},user:function(m){if(m===Qe||m==="id")return i(Qe,$);if(m===qt||m==="anonId")return i(qt,$);var y=$.getState("user");return m?td(y,m):y},reset:function(m){return new Promise(function(y){_.dispatch({type:C.resetStart},y,m)})},ready:function(m){return h&&m({plugins:b,instance:$}),$.on(C.ready,function(y){m(y),h=!0})},on:function(m,y){if(!m||!ie(y))return!1;if(m===C.bootstrap)throw new Error(".on disabled for "+m);var P=/Start$|Start:/;if(m==="*"){var N=function(B){return function(S){return function(I){return I.type.match(P)&&y({payload:I,instance:$,plugins:o}),S(I)}}},x=function(B){return function(S){return function(I){return I.type.match(P)||y({payload:I,instance:$,plugins:o}),S(I)}}};return d(N,ea),d(x,ta),function(){v(N,ea),v(x,ta)}}var D=m.match(P)?ea:ta,Y=function(B){return function(S){return function(I){return I.type===m&&y({payload:I,instance:$,plugins:o,abort:w}),S(I)}}};return d(Y,D),function(){return v(Y,D)}},once:function(m,y){if(!m||!ie(y))return!1;if(m===C.bootstrap)throw new Error(".once disabled for "+m);var P=$.on(m,function(N){y({payload:N.payload,instance:$,plugins:o,abort:w}),P()});return P},getState:function(m){var y=_.getState();return m?td(y,m):Object.assign({},y)},dispatch:function(m){var y=Ye(m)?{type:m}:m;if(Qn.includes(y.type))throw new Error("reserved action "+y.type);var P=R({},y,{_:R({originalAction:y.type},m._||{})});_.dispatch(P)},enablePlugin:b.enable,disablePlugin:b.disable,plugins:b,storage:{getItem:a.getItem,setItem:function(m,y,P){_.dispatch({type:C.setItemStart,key:m,value:y,options:P})},removeItem:function(m,y){_.dispatch({type:C.removeItemStart,key:m,options:y})}},setAnonymousId:function(m,y){$.storage.setItem(qe,m,y)},events:{core:Qn,plugins:s}},O=n.middlewares.concat([function(m){return function(y){return function(P){return P.meta||(P.meta=Dd()),y(P)}}},p(ea),wE($,l,{all:f,plugins:s}),bE(a),hE($),mE($),p(ta)]),k={context:CE,user:pE(a),page:RE,track:TE,plugins:$E(l),queue:PE},A=Yt,M=Yt;if(te&&e.debug){var F=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;F&&(A=F({trace:!0,traceLimit:25})),M=function(){return arguments.length===0?xd():oe(typeof arguments[0])?Ud():Ud().apply(null,arguments)}}var J,L=function(m){return Object.keys(m).reduce(function(y,P){return AE.includes(P)||(y[P]=m[P]),y},{})}(e),U=n.pluginsArray.reduce(function(m,y){var P=y.name,N=y.config,x=y.loaded,D=n.pluginEnabled[P];return m[P]={enabled:D,initialized:!!D&&!y.initialize,loaded:!!x({config:N}),config:N},m},{}),z={context:L,user:T,plugins:U},_=fd(function(m){for(var y=Object.keys(m),P={},N=0;N<y.length;N++){var x=y[N];typeof m[x]===Xe&&(P[x]=m[x])}var D,Y=Object.keys(P);try{(function(B){Object.keys(B).forEach(function(S){var I=B[S];if(typeof I(void 0,{type:"@@redux/INIT"})===Be||typeof I(void 0,{type:fE})===Be)throw new Error("reducer "+S+" "+Be)})})(P)}catch(B){D=B}return function(B,S){if(B===void 0&&(B={}),D)throw D;for(var I=!1,j={},X=0;X<Y.length;X++){var le=Y[X],tr=B[le],as=(0,P[le])(tr,S);if(typeof as===Be){var kP=dE(le,S);throw new Error(kP)}j[le]=as,I=I||as!==tr}return I?j:B}}(R({},k,t)),z,M(A(vE.apply(void 0,O))));_.dispatch=(J=_.dispatch,function(m,y,P){var N=R({},m,{meta:Dd(m.meta,y,Vo(P))});return J.apply(null,[N])});var V=Object.keys(o);_.dispatch({type:C.bootstrap,plugins:V,config:L,params:g,user:T,initialUser:r,persistedUser:E});var q=V.filter(function(m){return n.pluginEnabled[m]}),He=V.filter(function(m){return!n.pluginEnabled[m]});return _.dispatch({type:C.registerPlugins,plugins:V,enabled:n.pluginEnabled}),n.pluginsArray.map(function(m,y){var P=m.bootstrap,N=m.config,x=m.name;P&&ie(P)&&P({instance:$,config:N,payload:m}),_.dispatch({type:C.registerPluginType(x),name:x,enabled:n.pluginEnabled[x],plugin:m}),n.pluginsArray.length===y+1&&_.dispatch({type:C.initializeStart,plugins:q,disabled:He})}),LE(function(m){_.dispatch({type:m?C.offline:C.online})}),function(m,y,P){setInterval(function(){return yd(m,y,P)},3e3)}(_,l,$),$}var ea="before",ta="after",Nr="cookie",yt=Bd(),Md=ra,xE=ra;function Fd(e){return yt?ra(e,"",-1):Zt(e)}function Bd(){if(yt!==void 0)return yt;var e="cookiecookie";try{ra(e,e),yt=document.cookie.indexOf(e)!==-1,Fd(e)}catch{yt=!1}return yt}function ra(e,t,r,n,a,i){if(typeof window<"u"){var o=arguments.length>1;return yt===!1&&(o?mt(e,t):pt(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 xr="localStorage",UE=Bo.bind(null,"localStorage");Jt("localStorage","getItem",pt),Jt("localStorage","setItem",mt),Jt("localStorage","removeItem",Zt);var Ur="sessionStorage",DE=Bo.bind(null,"sessionStorage");Jt("sessionStorage","getItem",pt),Jt("sessionStorage","setItem",mt),Jt("sessionStorage","removeItem",Zt);function er(e){var t=e;try{if((t=JSON.parse(e))==="true")return!0;if(t==="false")return!1;if(oe(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch{}if(t!==null&&t!=="")return t}var ME=UE(),FE=DE(),BE=Bd();function zd(e,t){if(e){var r=Zo(t),n=!qo(r),a=Jo(r)?er(localStorage.getItem(e)):void 0;if(n&&!Gt(a))return a;var i=Yo(r)?er(Md(e)):void 0;if(n&&i)return i;var o=Xo(r)?er(sessionStorage.getItem(e)):void 0;if(n&&o)return o;var s=pt(e);return n?s:{localStorage:a,sessionStorage:o,cookie:i,global:s}}}function zE(e,t,r){if(e&&!Gt(t)){var n={},a=Zo(r),i=JSON.stringify(t),o=!qo(a);return Jo(a)&&(n[xr]=aa(xr,t,er(localStorage.getItem(e))),localStorage.setItem(e,i),o)?n[xr]:Yo(a)&&(n[Nr]=aa(Nr,t,er(Md(e))),xE(e,i),o)?n[Nr]:Xo(a)&&(n[Ur]=aa(Ur,t,er(sessionStorage.getItem(e))),sessionStorage.setItem(e,i),o)?n[Ur]:(n[Ar]=aa(Ar,t,pt(e)),mt(e,t),o?n[Ar]:n)}}function HE(e,t){if(e){var r=Zo(t),n=zd(e,ad),a={};return!Gt(n.localStorage)&&Jo(r)&&(localStorage.removeItem(e),a[xr]=n.localStorage),!Gt(n.cookie)&&Yo(r)&&(Fd(e),a[Nr]=n.cookie),!Gt(n.sessionStorage)&&Xo(r)&&(sessionStorage.removeItem(e),a[Ur]=n.sessionStorage),!Gt(n.global)&&na(r,Ar)&&(Zt(e),a[Ar]=n.global),a}}function Zo(e){return e?Ye(e)?e:e.storage:nd}function Jo(e){return ME&&na(e,xr)}function Yo(e){return BE&&na(e,Nr)}function Xo(e){return FE&&na(e,Ur)}function qo(e){return e===ad||e==="all"}function na(e,t){return e===nd||e===t||qo(e)}function aa(e,t,r){return{location:e,current:t,previous:r}}var KE={setItem:zE,getItem:zd,removeItem:HE};function GE(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Hd(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 Kd(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?Hd(Object(r),!0).forEach(function(n){GE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Hd(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function WE(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t={storage:KE};return NE(Kd(Kd({},t),e))}function VE(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 ZE(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=YE(f);return a!==l&&(a=l,setTimeout(()=>e(f),0)),s.apply(r,u)}})}function JE(e,t){const r=e.indexOf(t);return r>-1?e.slice(0,r):e}function YE(e){return["#","?"].forEach(t=>e=JE(e,t)),e}function XE(){ZE(()=>{ze.page()})}function qE(e){if(e===void 0&&(e={}),!te)return Fo;var t=Wd(),r=Qo(),n=Gd(),a=ia(n,t),i=ia(r,t),o=[],s=[],u=[],f=n,l=a,c=i,d=Object.keys(e);if(!d.length)return Fo;var v=d.map(function(w){return Number(w)}),p=lE(function(){var w=Wd(),g=function(L,U){return U.map(function(z){return z===100?L-5:L*(z/100)})}(w,v),E=Qo(),T=Gd(),b=ia(T,w),h=ia(E,w);if(l=b>l?b:l,c=h<c?h:c,!(o.length>=v.length)){var $=f===T,O="up";$?O="initial":f<=T&&(O="down");var k=g,A=v;(O==="up"||$)&&(k=g.slice().reverse(),A=v.slice().reverse());var M=A.reduce(function(L,U,z){var _=k[z];return u.includes(U)&&T<=_&&(u=u.filter(function(V){return V!==U}),L.singleFunction=U),O==="down"&&!o.includes(U)&&T>=_&&U>i?(s.push(U),L.callbacks=L.callbacks.concat(U),L):O==="up"&&!o.includes(U)&&T<=_&&U<=b?(L.foundFunc=[U],L):($&&T>=_&&L.foundFunc.length===0&&(L.foundFunc=[U]),!s.includes(U)&&T>=_&&(s.push(U),L.singleFunction?u.push(U):L.singleFunction=U),L)},{foundFunc:[],singleFunction:null,callbacks:[],direction:O});if(f=T,O==="down"&&M.callbacks&&M.callbacks.forEach(function(L){ie(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;ie(e[F])&&e[F]({trigger:F,direction:J,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(F)}}},500);return window.addEventListener("scroll",p),function(){return window.removeEventListener("scroll",p)}}function Qo(){return te?document.body.scrollTop||document.documentElement.scrollTop:0}function QE(){return te?window.innerHeight||document.documentElement.clientHeight:0}function Gd(){return Math.round(Qo()+QE())}function Wd(){if(!te)return 0;var e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}function ia(e,t){return Math.round(e/t*100)}var Vd="EventListener";function eP(e){return function(t,r,n,a){var i=n||Fo,o=a||!1;if(!te)return i;var s=oa(r),u=oa(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"+Vd:"remove"+Vd,v=0;v<u.length;v++){var p=u[v];f[v]=c?o&&o.once?tP(i):i:f[v]||i;for(var w=0;w<s.length;w++)p[d]?p["on"+s[w]]=c?f[v]:null:p[d](s[w],f[v],o)}return l.bind(null,!c)}(e)}}function oa(e,t){if(Ye(e))return t?oa(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=iE(e);return t?i.map(function(o){return Ye(o)?oa(o,!0):o}).flat():i}function tP(e,t){var r;return function(){return e&&(r=e.apply(this,arguments),e=null),r}}var es=eP("Event");function Zd(e,t){return te&&ie(window[e])?(r=window[e],n=t,(a=window)===void 0&&(a=null),ie(r)?function(){r.apply(a,arguments),n.apply(a,arguments)}:n):window[e]=t;var r,n,a}Zd.bind(null,"onerror"),Zd.bind(null,"onload");var Jd=typeof window>"u",Yd="hidden";function rP(e){if(Jd)return!1;var t=nP(),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 nP(){var e=["webkit","moz","ms","o"];return Jd||Yd in document?Yd:e.reduce(function(t,r){var n=r+"Hidden";return!t&&n in document?n:t},null)}var aP=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function iP(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=rP(function(s){s||r({type:"tabVisible"})});return n=[o].concat(aP.map(function(s){return es(document,s,r)})).concat(es(window,"load",r)).concat(es(window,"scroll",r,{capture:!0,passive:!0})),i}function i(){n.map(function(o){return o()})}return a(),function(){return i(),a}}function oP(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,v=function(){return clearTimeout(t)};function p(g){v(),i&&!l&&i(Dr(d),g),a&&l&&(l=!1,a(Dr(r),g),d=new Date),t=setTimeout(function(){l=!0,n&&(r=new Date,n(Dr(d),g))},s)}var w=iP(p,{throttle:f});return{disable:function(){c=!0,l=!1,v();var g=w();return function(){return c=!1,d=new Date,p({type:"load"}),g()}},getStatus:function(){return{isIdle:l,isDisabled:c,active:l?0:Dr(d,c),idle:l?Dr(r,c):0}}}}function Dr(e,t){return t?0:Math.round((new Date-e)/1e3)}const Xd=5e3;class sP{constructor(t){$e(this,"element");$e(this,"isInViewport",!1);$e(this,"isAwake",!1);$e(this,"isFlushing");$e(this,"observer");$e(this,"lastEventAt",Date.now());$e(this,"registeredView",!1);$e(this,"viewCallback");$e(this,"activeDurationCallback");$e(this,"idleDurationCallback");$e(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),oP({onIdle:r=>this.handleAwake(!1,r),onWakeUp:r=>this.handleAwake(!0,r),timeout:Xd}),qE({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*Xd: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 qd="sesamy_session_id";function cP(){let e=sessionStorage.getItem(qd);return e||(e=Math.random().toString(36).slice(2,9),sessionStorage.setItem(qd,e)),e}let Qd=!1,ts,ev,sa;const tv=new Map;function uP({clientId:e,enabled:t=!0,environment:r}){if(ts=e,ev=t,sa=`${Je("logs",r)}/events`,!ev)return;window.addEventListener("beforeunload",()=>{nv.forEach((a,i)=>{a.bind(i)()}),fP()}),window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&tv.forEach((a,i)=>{a.bind(i)()})}),XE();const n=new sP({element:document.body,viewCallback:()=>{ze.page()},activeDurationCallback:(a,i,o)=>{ze.track("activeDuration",{duration:a,durationStart:o,flushing:i})},idleDurationCallback:(a,i,o)=>{ze.track("idleDuration",{duration:a,durationStart:o,flushing:i})},scrollCallback:a=>{ze.track("scroll",{scroll:a.scrollMax})}});dP(document.body,()=>{n.flush()}),vP(document.body,()=>{n.handleVisibilityChange()}),window.addEventListener(_e.AUTHENTICATED,async a=>{const i=a;await ze.identify(i.detail.sub)}),window.addEventListener(_e.LOGOUT,async()=>{await ze.track("logout",{}),rs.flush(),await ze.reset()})}function rv(e){return JSON.stringify(e.map(t=>({...t,clientId:ts,requestId:Math.random().toString(36).slice(2,9),sessionId:cP(),timestamp:new Date().toISOString(),version:Mo,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:ed,userAgent:navigator.userAgent,clientId:ts}})))}const rs=VE(async e=>{if(e.length>0){const t=rv(e);Qd?navigator.sendBeacon(sa,t):(await fetch(sa,{method:"POST",body:t,headers:{"Content-Type":"text/plain"}})).ok}},{max:10,interval:3e3});function ns(e){var t;if(e.anonymousId)if((t=e.properties)!=null&&t.flushing){const r={...e};delete r.properties.flushing,navigator.sendBeacon(sa,rv([r]))}else rs.push(e)}const ze=WE({app:ed,version:Mo,plugins:[{name:"custom-analytics-plugin",page:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;ns({anonymousId:r,userId:n,properties:t,event:a,type:"page"})},track:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;ns({anonymousId:r,userId:n,properties:t,event:a,type:"track"})},identify:({payload:e})=>{const{properties:t,anonymousId:r,userId:n}=e;ns({anonymousId:r,userId:n,properties:t,type:"identify"})}}]});function lP(e,t){ze.track(e,t)}function fP(){return Qd=!0,rs.flush()}const nv=new Map;function dP(e,t){nv.set(e,t)}function vP(e,t){tv.set(e,t)}const av="sesamySignedURLs";function iv(){const e=sessionStorage.getItem(av);return e?JSON.parse(e):[]}function hP(e){const t=iv();t.push(e),sessionStorage.setItem(av,JSON.stringify(t))}const pP=["AdHeader","AdContainer","AD_Top","homead","ad-lead"];function mP(){return new Promise(e=>{const t=pP.map(r=>{const n=document.createElement("div");return n.innerHTML="&nbsp;",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 gP(){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 yP(e){const{createCheckout:t,getCheckout:r,updateCheckout:n,getEntitlement:a,getEntitlements:i,getEntitlementAccess:o,getSubscriptions:s,getContract:u,getContracts:f,cancelContract:l,getBill:c,getBills:d,getTransaction:v,getTransactions:p,getProfile:w,updateProfile:g,getTags:E,deleteTag:T,setTag:b,getUserMetadata:h,listUserMetadata:$,setUserMetadata:O,deleteUserMetadata:k,getTally:A,getTallies:M,pushTally:F,deleteTally:J,getProduct:L,getPaymentIssues:U,isSpotifyLinked:z,unlinkSpotify:_,linkSpotify:V,autoOnboardProduct:q,openHostedAccountPage:He,generateLink:m}=JT(e),y={auth:{getUser:w,isAuthenticated:Uo,loginWithRedirect:Do,logout:Hf,setToken:Gf},checkouts:{get:r,create:t,update:n},profile:{get:w,update:g,openHostedAccountPage:He,isSpotifyLinked:z,unlinkSpotify:_},analytics:{track:lP},tags:{list:E,set:b,delete:T},entitlements:{get:a,list:i,access:o,signedLinks:iv},contracts:{get:u,list:f,cancel:l},bills:{get:c,list:d},userMetadata:{get:h,list:$,set:O,delete:k},tallies:{get:A,list:M,push:F,delete:J},subscriptions:{list:s},transactions:{get:v,list:p},products:{get:L,autoOnboard:q,linkSpotify:V},browser:{detectAdblock:mP,isInAppBrowser:gP},getVersion:wP,getPaymentIssues:U,generateLink:m,clearCache:Re};return e.namespace&&(window[e.namespace]=y),y}function wP(){return Mo}async function bP({enabled:e=!1,rules:t}){if(!e)return;const r=await Uo(),n=window.location.href;for(const a of t){const i=document.querySelectorAll(a.selector);if(!(a.path&&!new RegExp(a.path).test(n))){for(const o of i)if(!(a.authenticated!==void 0&&a.authenticated!==r))switch(a.transform){case"insert":if(a.contentType==="selector"&&a.content){const s=document.querySelector(a.content);s?o.innerHTML+=s.innerHTML:console.warn(`Source element for selector '${a.content}' not found`)}else if(a.contentType==="url"&&a.content){const s=await ov(a.content);s?o.innerHTML+=s:console.warn(`Failed to fetch content from URL '${a.content}'`)}else a.content&&(o.innerHTML+=a.content);break;case"replace":if(a.contentType==="selector"&&a.content){const s=document.querySelector(a.content);s?o.innerHTML=s.innerHTML:console.warn(`Source element for selector '${a.content}' not found`)}else if(a.contentType==="url"&&a.content){const s=await ov(a.content);s?o.innerHTML=s:console.warn(`Failed to fetch content from URL '${a.content}'`)}else a.content&&(o.innerHTML=a.content);break;case"remove":o.remove();break;default:console.warn(`Unknown transform type: ${a.transform}`)}}}}async function ov(e){try{const t=await fetch(e);return t.ok?await t.text():(console.error(`Failed to fetch content from ${e}: ${t.statusText}`),null)}catch(t){return console.error(`Error fetching content from ${e}:`,t),null}}function SP(){const e=new URLSearchParams(window.location.hash.substring(1)),t=e.get("access_token");if(t){Gf(t);const r=new URL(window.location.href);e.delete("access_token"),r.hash=e.toString(),window.history.replaceState(null,"",r)}}const sv="sesamy-refresh",cv="force-refetch-entitlements";function $P(){const e=new URLSearchParams(window.location.search),t=e.get(cv),r=e.get(sv);if(t!==null||r!==null){const n=new URL(window.location.href);e.delete(cv),e.delete(sv),n.search=e.toString(),Re(),window.history.replaceState(null,"",n)}}function IP(){const e=new URLSearchParams(window.location.search),t=e.get("token"),r=e.get("se");if(!r||!t)return;const n=parseInt(r,10);if(Number.isNaN(n)||n<Date.now())return;hP({url:window.location.href.split("?")[0],token:t,expiresAt:n,publisherContentId:e.get("sp")??void 0});const a=new URL(window.location.href);a.searchParams.delete("ss"),a.searchParams.delete("se"),a.searchParams.delete("sp"),a.searchParams.delete("so"),a.searchParams.delete("token"),window.history.replaceState(null,"",a)}const uv="sesamy-user";async function TP(){const t=new URLSearchParams(window.location.search).get(uv);if(!t)return;const r=await xT();(r==null?void 0:r.email)!==t&&(Re(),Do({authorizationParams:{email_hint:t,login_hint:t}}));const n=new URL(window.location.href);n.searchParams.delete(uv),window.history.replaceState(null,"",n)}const lv="sesamy-purchase";function EP(){const e=new URLSearchParams(window.location.search),t=e.get(lv);if(t!==null){const r=new URL(window.location.href);e.delete(lv),r.search=e.toString(),Ze(_e.PURCHASE,{itemSrc:t}),Re(),window.history.replaceState(null,"",r)}}const fv="sesamy-login";async function PP(){if(!new URLSearchParams(window.location.search).get(fv))return;await Uo()||Do();const n=new URL(window.location.href);n.searchParams.delete(fv),window.history.replaceState(null,"",n)}const OP=typeof window<"u";async function dv(e){uP({clientId:e.clientId,environment:e.environment,...e.analytics}),await NT({clientId:e.clientId,organization:e.organization,environment:e.environment,...e.auth}),e.transform&&await bP(e.transform),SP(),$P(),IP(),await PP(),await TP(),EP(),Ze(_e.READY,{})}async function vv(e){const t=yP({clientId:e.clientId,environment:e.environment,...e.api});return OP&&(e.awaitAllServices?await dv(e):dv(e)),t}if(typeof document<"u"){const e=document.getElementById("sesamy-js");if(e!=null&&e.textContent)try{const t=JSON.parse(e.textContent);vv(t)}catch(t){console.error("Failed to parse config",t)}}return xe.init=vv,Object.defineProperty(xe,Symbol.toStringTag,{value:"Module"}),xe}({});
@@ -3572,7 +3572,7 @@ function YT(e) {
3572
3572
  return I == null ? void 0 : I.find((C) => C.id === S);
3573
3573
  }
3574
3574
  async function d(S) {
3575
- return (await i.post(`/contracts/${S}/cancel`).res()).ok;
3575
+ return (await i.post({}, `/contracts/${S}/cancel`).res()).ok;
3576
3576
  }
3577
3577
  async function v() {
3578
3578
  return console.warn("getSubscriptions is deprecated, use getContracts instead"), i.get("/subscriptions").json();
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "registry": "https://registry.npmjs.org/",
7
7
  "tag": "latest"
8
8
  },
9
- "version": "1.20.0",
9
+ "version": "1.20.1",
10
10
  "main": "dist/sesamy-js.cjs",
11
11
  "module": "dist/sesamy-js.mjs",
12
12
  "types": "dist/sesamy-js.d.ts",