@sesamy/sesamy-js 1.24.0 → 1.24.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,8 +2,8 @@
2
2
  `,10)+1,o=a.substring(i)+(n?"//# sourceMappingURL="+n:""),s=new Blob([o],{type:"application/javascript"});return URL.createObjectURL(s)}var Du,Mu,Fu,bi,XT=(Du="Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscil7c3VwZXIociksdGhpcy5lcnJvcj10LHRoaXMuZXJyb3JfZGVzY3JpcHRpb249cixPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxlLnByb3RvdHlwZSl9c3RhdGljIGZyb21QYXlsb2FkKHtlcnJvcjp0LGVycm9yX2Rlc2NyaXB0aW9uOnJ9KXtyZXR1cm4gbmV3IGUodCxyKX19Y2xhc3MgdCBleHRlbmRzIGV7Y29uc3RydWN0b3IoZSxzKXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIixgTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyR7cihlLFsiZGVmYXVsdCJdKX0nLCBzY29wZTogJyR7cihzKX0nKWApLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXMsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsdC5wcm90b3R5cGUpfX1mdW5jdGlvbiByKGUsdD1bXSl7cmV0dXJuIGUmJiF0LmluY2x1ZGVzKGUpP2U6IiJ9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO2NvbnN0IHM9ZT0+e3ZhcntjbGllbnRJZDp0fT1lLHI9ZnVuY3Rpb24oZSx0KXt2YXIgcj17fTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmdC5pbmRleE9mKHMpPDAmJihyW3NdPWVbc10pO2lmKG51bGwhPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz0wO2ZvcihzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7bzxzLmxlbmd0aDtvKyspdC5pbmRleE9mKHNbb10pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHNbb10pJiYocltzW29dXT1lW3Nbb11dKX1yZXR1cm4gcn0oZSxbImNsaWVudElkIl0pO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKChlPT5PYmplY3Qua2V5cyhlKS5maWx0ZXIoKHQ9PnZvaWQgMCE9PWVbdF0pKS5yZWR1Y2UoKCh0LHIpPT5PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse1tyXTplW3JdfSkpLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IG89e307Y29uc3Qgbj0oZSx0KT0+YCR7ZX18JHt0fWA7YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGFzeW5jKHtkYXRhOnt0aW1lb3V0OmUsYXV0aDpyLGZldGNoVXJsOmksZmV0Y2hPcHRpb25zOmMsdXNlRm9ybURhdGE6YX0scG9ydHM6W3BdfSk9PntsZXQgZjtjb25zdHthdWRpZW5jZTp1LHNjb3BlOmx9PXJ8fHt9O3RyeXtjb25zdCByPWE/KGU9Pntjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMoZSkscj17fTtyZXR1cm4gdC5mb3JFYWNoKCgoZSx0KT0+e3JbdF09ZX0pKSxyfSkoYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7aWYoIXIucmVmcmVzaF90b2tlbiYmInJlZnJlc2hfdG9rZW4iPT09ci5ncmFudF90eXBlKXtjb25zdCBlPSgoZSx0KT0+b1tuKGUsdCldKSh1LGwpO2lmKCFlKXRocm93IG5ldyB0KHUsbCk7Yy5ib2R5PWE/cyhPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKTpKU09OLnN0cmluZ2lmeShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKX1sZXQgaCxnOyJmdW5jdGlvbiI9PXR5cGVvZiBBYm9ydENvbnRyb2xsZXImJihoPW5ldyBBYm9ydENvbnRyb2xsZXIsYy5zaWduYWw9aC5zaWduYWwpO3RyeXtnPWF3YWl0IFByb21pc2UucmFjZShbKGQ9ZSxuZXcgUHJvbWlzZSgoZT0+c2V0VGltZW91dChlLGQpKSkpLGZldGNoKGksT2JqZWN0LmFzc2lnbih7fSxjKSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBwLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighZylyZXR1cm4gaCYmaC5hYm9ydCgpLHZvaWQgcC5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtmPWF3YWl0IGcuanNvbigpLGYucmVmcmVzaF90b2tlbj8oKChlLHQscik9PntvW24odCxyKV09ZX0pKGYucmVmcmVzaF90b2tlbix1LGwpLGRlbGV0ZSBmLnJlZnJlc2hfdG9rZW4pOigoZSx0KT0+e2RlbGV0ZSBvW24oZSx0KV19KSh1LGwpLHAucG9zdE1lc3NhZ2Uoe29rOmcub2ssanNvbjpmfSl9Y2F0Y2goZSl7cC5wb3N0TWVzc2FnZSh7b2s6ITEsanNvbjp7ZXJyb3I6ZS5lcnJvcixlcnJvcl9kZXNjcmlwdGlvbjplLm1lc3NhZ2V9fSl9dmFyIGR9KSl9KCk7Cgo=",Mu=null,Fu=!1,function(e){return bi=bi||YT(Du,Mu,Fu),new Worker(bi,e)});const Si={};let qT=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 QT={memory:()=>new Zd().enclosedCache,localstorage:()=>new zT},Bu=e=>QT[e],zu=e=>{const{openUrl:t,onRedirect:r}=e,n=xe(e,["openUrl","onRedirect"]);return Object.assign(Object.assign({},n),{openUrl:t===!1||t?t:r})},$i=new CT;let eP=class{constructor(t){let r,n;if(this.userCache=new Zd().enclosedCache,this.defaultOptions={authorizationParams:{scope:"openid profile email"},useRefreshTokensFallback:!1,useFormData:!0},this._releaseLockOnPageHide=async()=>{await $i.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(!On())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(On().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",!Bu(r))throw new Error(`Invalid cache location "${r}"`);n=Bu(r)()}this.httpTimeoutMs=t.httpTimeoutInSeconds?1e3*t.httpTimeoutInSeconds:1e4,this.cookieStorage=t.legacySameSiteCookie===!1?jt:ZT,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:JT;var i;this.scope=dn("openid",this.options.authorizationParams.scope,this.options.useRefreshTokens?"offline_access":""),this.transactionManager=new KT(a,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||Fd,this.cacheManager=new HT(n,n.allKeys?void 0:new qT(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 XT)}_url(t){const r=encodeURIComponent(btoa(JSON.stringify(this.options.auth0Client||Md)));return`${this.domainUrl}${t}&auth0Client=${r}`}_authorizeUrl(t){return this._url(`/authorize?${oo(t)}`)}async _verifyIdToken(t,r,n){const a=await this.nowProvider();return WT({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=Nu(wi()),i=Nu(wi()),o=wi(),s=(l=>{const c=new Uint8Array(l);return(d=>{const h={"+":"-","/":"_","=":""};return d.replace(/[+/=]/g,v=>h[v])})(window.btoa(String.fromCharCode(...Array.from(c))))})(await(async l=>await On().subtle.digest({name:"SHA-256"},new TextEncoder().encode(l)))(o)),u=((l,c,d,h,v,b,g,T)=>Object.assign(Object.assign(Object.assign({client_id:l.clientId},l.authorizationParams),d),{scope:dn(c,d.scope),response_type:"code",response_mode:T||"query",state:h,nonce:v,redirect_uri:g||l.authorizationParams.redirect_uri,code_challenge:b,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 UT(s.popup)))},1e3),d=setTimeout(()=>{clearInterval(c),f(new LT(s.popup)),window.removeEventListener("message",l,!1)},1e3*(s.timeoutInSeconds||60));l=function(h){if(h.data&&h.data.type==="authorization_response"){if(clearTimeout(d),clearInterval(c),window.removeEventListener("message",l,!1),s.popup.close(),h.data.response.error)return f(le.fromPayload(h.data.response));u(h.data.response)}},window.addEventListener("message",l)}))(Object.assign(Object.assign({},r),{timeoutInSeconds:r.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}));if(a.state!==i.state)throw new le("state_mismatch","Invalid state");const o=((n=t.authorizationParams)===null||n===void 0?void 0:n.organization)||this.options.authorizationParams.organization;await this._requestToken({audience:a.audience,scope:a.scope,code_verifier:a.code_verifier,grant_type:"authorization_code",code:i.code,redirect_uri:a.redirect_uri},{nonceIn:a.nonce,organization:o})}async getUser(){var t;const r=await this._getIdTokenFromCache();return(t=r==null?void 0:r.decodedToken)===null||t===void 0?void 0:t.user}async getIdTokenClaims(){var t;const r=await this._getIdTokenFromCache();return(t=r==null?void 0:r.decodedToken)===null||t===void 0?void 0:t.claims}async loginWithRedirect(t={}){var r;const n=zu(t),{openUrl:a,fragment:i,appState:o}=n,s=xe(n,["openUrl","fragment","appState"]),u=((r=s.authorizationParams)===null||r===void 0?void 0:r.organization)||this.options.authorizationParams.organization,f=await this._prepareAuthorizeUrl(s.authorizationParams||{}),{url:l}=f,c=xe(f,["url"]);this.transactionManager.create(Object.assign(Object.assign(Object.assign({},c),{appState:o}),u&&{organization:u}));const d=i?`${l}#${i}`:l;a?await a(d):window.location.assign(d)}async handleRedirectCallback(t=window.location.href){const r=t.split("?").slice(1);if(r.length===0)throw new Error("There are no query params available for parsing.");const{state:n,code:a,error:i,error_description:o}=(c=>{c.indexOf("#")>-1&&(c=c.substring(0,c.indexOf("#")));const d=new URLSearchParams(c);return{state:d.get("state"),code:d.get("code")||void 0,error:d.get("error")||void 0,error_description:d.get("error_description")||void 0}})(r.join("")),s=this.transactionManager.get();if(!s)throw new le("missing_transaction","Invalid state");if(this.transactionManager.remove(),i)throw new jT(i,o||i,n,s.appState);if(!s.code_verifier||s.state&&s.state!==n)throw new le("state_mismatch","Invalid state");const u=s.organization,f=s.nonce,l=s.redirect_uri;return await this._requestToken(Object.assign({audience:s.audience,scope:s.scope,code_verifier:s.code_verifier,grant_type:"authorization_code",code:a},l?{redirect_uri:l}:{}),{nonceIn:f,organization:u}),{appState:s.appState}}async checkSession(t){if(!this.cookieStorage.get(this.isAuthenticatedCookieName)){if(!this.cookieStorage.get("auth0.is.authenticated"))return;this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove("auth0.is.authenticated")}try{await this.getTokenSilently(t)}catch{}}async getTokenSilently(t={}){var r;const n=Object.assign(Object.assign({cacheMode:"on"},t),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),t.authorizationParams),{scope:dn(this.scope,(r=t.authorizationParams)===null||r===void 0?void 0:r.scope)})}),a=await((i,o)=>{let s=Si[o];return s||(s=i().finally(()=>{delete Si[o],s=null}),Si[o]=s),s})(()=>this._getTokenSilently(n),`${this.options.clientId}::${n.authorizationParams.audience}::${n.authorizationParams.scope}`);return t.detailedResponse?a:a==null?void 0:a.access_token}async _getTokenSilently(t){const{cacheMode:r}=t,n=xe(t,["cacheMode"]);if(r!=="off"){const a=await this._getEntryFromCache({scope:n.authorizationParams.scope,audience:n.authorizationParams.audience||"default",clientId:this.options.clientId});if(a)return a}if(r!=="cache-only"){if(!await(async(a,i=3)=>{for(let o=0;o<i;o++)if(await a())return!0;return!1})(()=>$i.acquireLock("auth0.lock.getTokenSilently",5e3),10))throw new io;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 $i.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:dn(this.scope,(n=t.authorizationParams)===null||n===void 0?void 0:n.scope)})});return r=Object.assign(Object.assign({},AT),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=xe(r,["federated"]),i=n?"&federated":"";return this._url(`/v2/logout?${oo(Object.assign({clientId:t.clientId},a))}`)+i}async logout(t={}){const r=zu(t),{openUrl:n}=r,a=xe(r,["openUrl"]);t.clientId===null?await this.cacheManager.clear():await this.cacheManager.clear(t.clientId||this.options.clientId),this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain}),this.cookieStorage.remove(this.isAuthenticatedCookieName,{cookieDomain:this.options.cookieDomain}),this.userCache.remove("@@user@@");const i=this._buildLogoutUrl(a);n?await n(i):n!==!1&&window.location.assign(i)}async _getTokenFromIFrame(t){const r=Object.assign(Object.assign({},t.authorizationParams),{prompt:"none"}),n=this.cookieStorage.get(this.orgHintCookieName);n&&!r.organization&&(r.organization=n);const{url:a,state:i,nonce:o,code_verifier:s,redirect_uri:u,scope:f,audience:l}=await this._prepareAuthorizeUrl(r,{response_mode:"web_message"},window.location.origin);try{if(window.crossOriginIsolated)throw new le("login_required","The application is running in a Cross-Origin Isolated context, silently retrieving a token without refresh token is not possible.");const c=t.timeoutInSeconds||this.options.authorizeTimeoutInSeconds,d=await((v,b,g=60)=>new Promise((T,I)=>{const y=window.document.createElement("iframe");y.setAttribute("width","0"),y.setAttribute("height","0"),y.style.display="none";const p=()=>{window.document.body.contains(y)&&(window.document.body.removeChild(y),window.removeEventListener("message",S,!1))};let S;const O=setTimeout(()=>{I(new io),p()},1e3*g);S=function(_){if(_.origin!=b||!_.data||_.data.type!=="authorization_response")return;const k=_.source;k&&k.close(),_.data.response.error?I(le.fromPayload(_.data.response)):T(_.data.response),clearTimeout(O),window.removeEventListener("message",S,!1),setTimeout(p,2e3)},window.addEventListener("message",S,!1),window.document.body.appendChild(y),y.setAttribute("src",v)}))(a,this.domainUrl,c);if(i!==d.state)throw new le("state_mismatch","Invalid state");const h=await this._requestToken(Object.assign(Object.assign({},t.authorizationParams),{code_verifier:s,code:d.code,grant_type:"authorization_code",redirect_uri:u,timeout:t.authorizationParams.timeout||this.httpTimeoutMs}),{nonceIn:o,organization:r.organization});return Object.assign(Object.assign({},h),{scope:f,oauthTokenScope:h.scope,audience:l})}catch(c){throw c.error==="login_required"&&this.logout({openUrl:!1}),c}}async _getTokenUsingRefreshToken(t){const r=await this.cacheManager.get(new 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 Wd(t.authorizationParams.audience||"default",t.authorizationParams.scope)}const n=t.authorizationParams.redirect_uri||this.options.authorizationParams.redirect_uri||window.location.origin,a=typeof t.timeoutInSeconds=="number"?1e3*t.timeoutInSeconds:null;try{const i=await this._requestToken(Object.assign(Object.assign(Object.assign({},t.authorizationParams),{grant_type:"refresh_token",refresh_token:r&&r.refresh_token,redirect_uri:n}),a&&{timeout:a}));return Object.assign(Object.assign({},i),{scope:t.authorizationParams.scope,oauthTokenScope:i.scope,audience:t.authorizationParams.audience||"default"})}catch(i){if((i.message.indexOf("Missing Refresh Token")>-1||i.message&&i.message.indexOf("invalid refresh token")>-1)&&this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(t);throw i}}async _saveEntryInCache(t){const{id_token:r,decodedToken:n}=t,a=xe(t,["id_token","decodedToken"]);this.userCache.set("@@user@@",{id_token:r,decodedToken:n}),await this.cacheManager.setIdToken(this.options.clientId,t.id_token,t.decodedToken),await this.cacheManager.set(a)}async _getIdTokenFromCache(){const t=this.options.authorizationParams.audience||"default",r=await this.cacheManager.getIdToken(new 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 BT(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 tP(e){const t=new eP(e);return await t.checkSession(),t}var ve=(e=>(e.AUTH_INITIALIZED="sesamyJsAuthInitialized",e.READY="sesamyJsReady",e.AUTHENTICATED="sesamyJsAuthenticated",e.LOGOUT="sesamyJsLogout",e.CLEAR_CACHE="sesamyJsClearCache",e.USER_ATTRIBUTE_CHANGED="sesamyUserAttributeChanged",e.PURCHASE="sesamyJsPurchase",e))(ve||{});const rP="sesamy.com",nP="sesamy.dev",aP="https://sesa.my",co="sesamyCacheTimestamp";function Ke(e,t){return`https://${e}.${t==="dev"?nP:rP}`}function uo(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}let de,Xd,lo=!1,Hu=!1;const Zt="sesamyAccessToken",Ii="sesamyRefreshToken";async function Hr(){return lo?!0:new Promise((e,t)=>{const r=setTimeout(()=>{lo?e(!0):t(new Error("Initialization failed: Timeout"))},2e3);window.addEventListener(ve.AUTH_INITIALIZED,()=>{clearTimeout(r),e(!0)})})}async function iP(e){if(!e)return null;const t=localStorage.getItem(Ii);if(!t)return he("No refresh token found in localstorage"),null;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(Ii),new Error("Renew token failed");const i=await a.json();return localStorage.setItem(Ii,i.refresh_token),localStorage.setItem(Zt,i.access_token),i.access_token}catch{qd()}}async function os(){const e=localStorage.getItem(Zt);if(!e)return null;const t=Qd(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3){const r=await iP(t);if(r)return r;localStorage.removeItem(Zt)}return e}function Ku(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 oP(e){if(e.enabled===!1)return;Xd=e.organization;const t={domain:Ke("token",e.environment),clientId:e.clientId,useCookiesForTransactions:!0};if(Ku(window.location.href)!==Ku(Ke("auth",e.environment))&&(t.cacheLocation="localstorage",t.useRefreshTokens=!0),de=await tP(t),window.location.search.includes("code="))try{await de.handleRedirectCallback();const r=await de.getUser();if(!r)throw new Error("No user found");Ve(ve.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){alert("There was an error logging in"),console.error(r)}lo=!0,Ve(ve.AUTH_INITIALIZED,{})}async function jr(){return await Hr(),await os()?!0:de?de.isAuthenticated():!1}async function sP(){return await Hr(),await os()?(he("Using local user"),{sub:"local",name:"Local User"}):de?de.getUser():null}async function ss(e){if(Hu){he("Login already in progress");return}if(Hu=!0,await Hr(),localStorage.removeItem(Zt),!de)throw new Error("Auth0 client not initialized");const t=(e==null?void 0:e.authorizationParams)||{};return de.loginWithRedirect({...e,authorizationParams:{organization:Xd,redirect_uri:window.location.href,ui_locales:uo(),...t}})}async function pr(e=!0){await Hr();const t=await os();if(t)return t;try{return de?await de.getTokenSilently():null}catch(r){if(e)throw r;return null}}async function qd(e={}){if(await Hr(),localStorage.removeItem(Zt),Ve(ve.LOGOUT,{}),!!de)return de.logout({...e,logoutParams:{returnTo:window.location.href,...e.logoutParams}})}function Qd(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 eh(e){const t=Qd(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3)throw new Error("Invalid token");localStorage.setItem(Zt,e),Ve(ve.AUTHENTICATED,t)}const cP=(e,t)=>t.skipDedupe||t.method!=="GET",uP=(e,t)=>t.method+"@"+e,lP=e=>e.clone(),Gu=({skip:e=cP,key:t=uP,resolver:r=lP}={})=>{const n=new Map;return a=>(i,o)=>{if(e(i,o))return a(i,o);const s=t(i,o);if(!n.has(s))n.set(s,[]);else return new Promise((u,f)=>{n.get(s).push([u,f])});try{return a(i,o).then(u=>(n.get(s).forEach(([f])=>f(r(u))),n.delete(s),u)).catch(u=>{throw n.get(s).forEach(([,f])=>f(u)),n.delete(s),u})}catch(u){return n.delete(s),Promise.reject(u)}}},fP=(e,t)=>e*t,dP=e=>e&&e.ok,Wu=({delayTimer:e=500,delayRamp:t=fP,maxAttempts:r=10,until:n=dP,onRetry:a=null,retryOnNetworkError:i=!1,resolveWithLatestResponse:o=!1,skip:s}={})=>u=>(f,l)=>{let c=0;if(s&&s(f,l))return u(f,l);const d=(h,v)=>Promise.resolve(n(h,v)).then(b=>b?h&&o?h:v?Promise.reject(v):h:(c++,!r||c<=r?new Promise(g=>{const T=t(e,c);setTimeout(()=>{typeof a=="function"?Promise.resolve(a({response:h,error:v,url:f,options:l})).then((I={})=>{var y,p;g(u((y=I&&I.url)!==null&&y!==void 0?y:f,(p=I&&I.options)!==null&&p!==void 0?p:l))}):g(u(f,l))},T)}).then(d).catch(g=>{if(!i)throw g;return d(null,g)}):h&&o?h:Promise.reject(v||new Error("Number of attempts exceeded."))));return u(f,l).then(d).catch(h=>{if(!i)throw h;return d(null,h)})},hP="application/json",th="Content-Type",Rt=Symbol(),rh=Symbol();function Vu(e={}){var t;return(t=Object.entries(e).find(([r])=>r.toLowerCase()===th.toLowerCase()))===null||t===void 0?void 0:t[1]}function Zu(e){return/^application\/.*json.*/.test(e)}const ht=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]=ht(o,i,r):n[a]=i,n},{...e})},Jt={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 vP(e,t=!1){Jt.options=t?e:ht(Jt.options,e)}function pP(e,t=!1){Jt.polyfills=t?e:ht(Jt.polyfills,e)}function mP(e){Jt.errorType=e}const gP=e=>t=>e.reduceRight((r,n)=>n(r),t)||t;class nh extends Error{}const yP=e=>{const t=Object.create(null);e=e._addons.reduce((y,p)=>p.beforeRequest&&p.beforeRequest(y,e._options,t)||y,e);const{_url:r,_options:n,_config:a,_catchers:i,_resolvers:o,_middlewares:s,_addons:u}=e,f=new Map(i),l=ht(a.options,n);let c=r;const d=gP(s)((y,p)=>(c=y,a.polyfill("fetch")(y,p)))(r,l),h=new Error,v=d.catch(y=>{throw{[Rt]:y}}).then(y=>{var p;if(!y.ok){const S=new nh;if(S.cause=h,S.stack=S.stack+`
5
- CAUSE: `+h.stack,S.response=y,S.status=y.status,S.url=c,y.type==="opaque")throw S;const O=a.errorType==="json"||((p=y.headers.get("Content-Type"))===null||p===void 0?void 0:p.split(";")[0])==="application/json";return(a.errorType?O?y.text():y[a.errorType]():Promise.resolve(y.body)).then(k=>{throw S.message=typeof k=="string"?k:y.statusText,k&&(O&&typeof k=="string"?(S.text=k,S.json=JSON.parse(k)):S[a.errorType]=k),S})}return y}),b=y=>y.catch(p=>{const S=Object.prototype.hasOwnProperty.call(p,Rt),O=S?p[Rt]:p,_=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||S&&f.has(Rt)&&f.get(Rt);if(_)return _(O,e);const k=f.get(rh);if(k)return k(O,e);throw O}),g=y=>p=>b(y?v.then(S=>S&&S[y]()).then(S=>p?p(S):S):v.then(S=>p?p(S):S)),T={_wretchReq:e,_fetchReq:d,_sharedState:t,res:g(null),json:g("json"),blob:g("blob"),formData:g("formData"),arrayBuffer:g("arrayBuffer"),text:g("text"),error(y,p){return f.set(y,p),this},badRequest(y){return this.error(400,y)},unauthorized(y){return this.error(401,y)},forbidden(y){return this.error(403,y)},notFound(y){return this.error(404,y)},timeout(y){return this.error(408,y)},internalError(y){return this.error(500,y)},fetchError(y){return this.error(Rt,y)}},I=u.reduce((y,p)=>({...y,...typeof p.resolver=="function"?p.resolver(y):p.resolver}),T);return o.reduce((y,p)=>p(y,e),I)},wP={_url:"",_options:{},_config:Jt,_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:ht(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:ht(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:ht(this._options,{headers:t})}},accept(e){return this.headers({Accept:e})},content(e){return this.headers({[th]: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(rh,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=Vu(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||Zu(a));return n=r?o?n.json(r,a):n.body(r):n,yP(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=Vu(this._options.headers);return this.content(t||Zu(r)&&r||hP).body(JSON.stringify(e))}};function We(e="",t={}){return{...wP,_url:e,_options:t}}We.default=We;We.options=vP;We.errorType=mP;We.polyfills=pP;We.WretchError=nh;function _e(){sessionStorage.removeItem(co),console.log("Cache cleared"),Ve(ve.CLEAR_CACHE,{})}function fo(e){let t;try{t=new URL(e)}catch{return!1}return t.protocol==="http:"||t.protocol==="https:"}function ah(e,t){if(fo(e))return{itemSrc:e};const[r,n,a]=e.split(":");return{sku:`${r}:${n}`,purchaseOption:t||a}}function Ju(e){return e.endsWith("/")?e.slice(0,-1):e}function Yu(e,t){if(!fo(e)||!fo(t))return!1;const r=new URL(e),n=new URL(t);return r.origin===n.origin&&Ju(r.pathname)===Ju(n.pathname)}function bP(e,t){const r=new URL(`${Ke("checkout3",e.environment)}`);if(r.searchParams.set("vendorId",e.clientId),t.language&&r.searchParams.set("lang",t.language),t.sku)r.searchParams.set("sku",t.sku),t.purchaseOptionId&&r.searchParams.set("poId",t.purchaseOptionId);else if(t.itemSrc){const{sku:o,purchaseOption:s,itemSrc:u}=ah(t.itemSrc,t.purchaseOptionId);u&&r.searchParams.set("url",u),o&&r.searchParams.set("sku",o),s&&r.searchParams.set("poId",s)}t.email&&r.searchParams.set("email",t.email),t.business&&r.searchParams.set("business","true"),t.currency&&r.searchParams.set("currency",t.currency),t.price&&r.searchParams.set("price",t.price.toString()),t.discountCode&&r.searchParams.set("discountCode",t.discountCode),t.attributionItemSrc&&r.searchParams.set("attributionItemSrc",t.attributionItemSrc),t.attributionPublisherContentId&&r.searchParams.set("attributionPublisherContentId",t.attributionPublisherContentId),t.utmSource&&r.searchParams.set("utmSource",t.utmSource),t.utmMedium&&r.searchParams.set("utmMedium",t.utmMedium),t.utmCampaign&&r.searchParams.set("utmCampaign",t.utmCampaign),t.utmTerm&&r.searchParams.set("utmTerm",t.utmTerm),t.utmContent&&r.searchParams.set("utmContent",t.utmContent);const n=["_ga","_gid","_fbp","_fbc"];document.cookie.split(";").map(o=>{const[s,u]=o.trim().split("=");return{key:s,value:u}}).filter(o=>n.some(s=>s===o.key)).forEach(o=>{r.searchParams.append(o.key,o.value)});const i=new URL(t.redirectUrl||window.location.href);return i.searchParams.set("force-refetch-entitlements","true"),t.itemSrc&&i.searchParams.set("sesamy-purchase",t.itemSrc),r.searchParams.set("redirectUrl",i.toString()),t.paymemtMethodsFilter&&r.searchParams.set("paymentMethodsFilter",t.paymemtMethodsFilter.flatMap(({provider:o,methods:s})=>s?s.map(u=>`${o}|${u}`):o).join(",")),r}const ih="sesamySignedURLs";function cs(){const e=sessionStorage.getItem(ih);return e?JSON.parse(e):[]}function SP(e){const t=cs();t.push(e),he(`Adding signed URL: ${e}`),sessionStorage.setItem(ih,JSON.stringify(t))}const ho="sesamyAttribution";function $P(e){const t=sessionStorage.getItem(e);if(!t)return null;try{return JSON.parse(t).value}catch{return console.error(`Failed to parse ${e}`),null}}function us(){return $P(ho)||{}}function IP(e){if(e===null)sessionStorage.removeItem(ho);else{const t=us()??{};sessionStorage.setItem(ho,JSON.stringify({value:{...t,...e}}))}}function TP(e){const t=Ke("api2",e.environment),r=$=>async(P,C)=>{let W=sessionStorage.getItem(co);W||(W=Date.now().toString(),sessionStorage.setItem(co,W));const V={...C,headers:{...C.headers,"Cache-Timestamp":W}};return $(P,V)},n=($=!0)=>P=>async(C,W)=>{let V=null;if(V=await pr($),!V){if($)throw new Error("No access token available");return P(C,W)}const Je={...W,headers:{...W.headers,...V?{Authorization:`Bearer ${V}`}:{}}};return P(C,Je)},a=$=>(P,C)=>{if(C.headers.Authorization)return $(P,C);const W=localStorage.getItem("__anon_id"),V=btoa(`${e.clientId}|${W}:`),Je={...C,headers:{...C.headers,Authorization:`Basic ${V}`}};return $(P,Je)},i=We(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Gu(),Wu({delayTimer:1e3,delayRamp:($,P)=>$*P,maxAttempts:3,until:$=>!!($&&($.ok||$.status>=400&&$.status<500)),retryOnNetworkError:!1})]),o=We(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Gu(),Wu({delayTimer:1e3,delayRamp:($,P)=>$*P,maxAttempts:3,until:$=>!!($&&($.ok||$.status>=400&&$.status<500)),retryOnNetworkError:!1})]);async function s($={}){const{waitForEntitlementAfter:P,includeSignedLinks:C=!0}=$,W=P?`?wait-for-entitlement-after=${P.toISOString()}`:"",V=await jr()?await i.get(`/entitlements${W}`).json():[];return C&&V.push(...cs()),V}async function u($,P=[]){const C=await s();return C==null?void 0:C.find(V=>{const{sku:Je,purchaseOption:It}=ah($);let or="sku"in V&&Je===V.sku;or&&It&&"purchaseOptionId"in V&&(or=It===V.purchaseOptionId);const Nh=Yu($,V.url),xh=P.some(Dh=>Yu(Dh,V.url));return or||Nh||xh})}async function f($){const P=await i.get("/entitlements").json();return P==null?void 0:P.find(C=>C.id===$)}async function l($){return i.get(`/entitlements/${encodeURIComponent($)}/access`).json()}async function c($){return await jr()?await i.get(`/fulfillments?sku=${encodeURIComponent($)}`).json():[]}async function d(){return i.get("/contracts").json()}async function h($){const P=await i.get("/contracts").json();return P==null?void 0:P.find(C=>C.id===$)}async function v($){return(await i.post({},`/contracts/${encodeURIComponent($)}/cancel`).res()).ok}async function b(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function g(){return i.get("/bills").json()}async function T($){const P=await i.get("/bills").json();return P==null?void 0:P.find(C=>C.id===$)}async function I(){return i.get("/transactions").json()}async function y($){const P=await i.get("/transactions").json();return P==null?void 0:P.find(C=>C.id===$)}async function p($,P){const C=await i.url(`/user-metadata/${encodeURIComponent($)}`).put(P).json();return Ve(ve.USER_ATTRIBUTE_CHANGED,{}),_e(),C}async function S($){const P=await i.url(`/user-metadata/${encodeURIComponent($)}`).delete().res();return _e(),P.ok}async function O($){return(await i.url(`/user-metadata/${encodeURIComponent($)}`).get().json())[$]}async function _(){return await i.url("/user-metadata").get().json()}async function k(){return await i.url("/tags").get().json()}async function M($){const P=await i.url(`/tags/${encodeURIComponent($)}`).delete().res();return _e(),P.ok}async function F($){const P=await i.url("/tags").post(encodeURIComponent($)).res();return Ve(ve.USER_ATTRIBUTE_CHANGED,{}),_e(),P.ok}async function X($){return(await o.url("/tallies").get().json())[$]}async function L(){return await o.url("/tallies").get().json()}async function x($){const P=await o.url(`/tallies/${$}`).delete().res();return _e(),P.ok}async function H($,P){return await o.url(`/tallies/${encodeURIComponent($)}/push`).post(P).json()}async function R($){return await i.url(`/products/${encodeURIComponent($)}`).get().json()}async function Z(){return await pr(!1)?await i.url("/profile").get().json():null}async function ee($){const P=await i.url("/profile").patch($).res();return _e(),P.ok}async function Fe(){return await i.url("/payment-issues").get().json()}async function m(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function w(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function E($){const P=await pr(!1);if(!P)throw new Error("No access token available");const C=new URL(`${Ke("spotify-oas",e.environment)}/sesamy-callback`);C.searchParams.set("access_token",P),C.searchParams.set("state",$),window.location.href=C.toString()}async function U($){const P=await i.url(`/products/${encodeURIComponent($)}/auto-onboard`).post().json();return P.length&&_e(),P}async function N($,P=3600){const{shortlink:C}=await We(aP).post({url:$,ttl:P}).json();return C}async function D($){const P=await pr(!1);let C;const W=$.language||uo();switch($.target){case"account":C=new URL(`${Ke("account",e.environment)}/${encodeURIComponent($.language||W)}/subscriptions/${encodeURIComponent(e.clientId)}`),C.searchParams.set("sesamy-redirect-url",$.redirectUrl||window.location.href);break;case"consume":C=new URL(`${Ke("consume",e.environment)}/${encodeURIComponent($.language||W)}/@${encodeURIComponent(e.clientId)}/${encodeURIComponent($.sku)}`),$.episodeId?C.href+=`/${$.episodeId}`:C.href+="/listen",C.searchParams.set("sesamy-redirect-url",$.redirectUrl||window.location.href);break;case"checkout":C=bP(e,{language:W,...$});break;default:throw new Error("Invalid target")}return P&&(C.hash=`#access_token=${P}`),$.shorten?N(C.href,$.ttl):C.href}async function q($){const P=us(),C=["_ga","_gid","_fbp","_fbc"];return document.cookie.split(";").forEach(V=>{const Je=P,[It,or]=V.trim().split("=");C.includes(It)&&!Je[It]&&(Je[It]=or)}),(await o.url("/checkouts").post({language:uo(),attribution:{...P,...$.attribution},...$,vendorId:e.clientId})).json()}async function z($,P){return(await o.url(`/checkouts/${$}`).patch(P)).json()}async function J($){return(await o.url(`/checkouts/${$}`).get()).json()}async function B($){return(await o.url(`/paywalls/${$}`).get()).json()}async function pe(){const $=await pr(!1),P=new URL(`${Ke("account",e.environment)}/subscriptions/${e.clientId}`);$&&(P.hash=`#access_token=${$}`),window.location.href=P.toString()}return{createCheckout:q,updateCheckout:z,getCheckout:J,getEntitlements:s,getEntitlement:f,getEntitlementAccess:l,hasAccess:u,getFulfillments:c,getContracts:d,getContract:h,cancelContract:v,getProfile:Z,updateProfile:ee,getSubscriptions:b,getBills:g,getBill:T,setUserMetadata:p,deleteUserMetadata:S,getUserMetadata:O,listUserMetadata:_,getTags:k,deleteTag:M,setTag:F,getTally:X,getTallies:L,deleteTally:x,pushTally:H,getTransactions:I,getTransaction:y,getProduct:R,getPaymentIssues:Fe,autoOnboardProduct:U,isSpotifyLinked:m,unlinkSpotify:w,linkSpotify:E,generateLink:D,getPaywall:B,openHostedAccountPage:pe}}const oh="@sesamy/sesamy-js",ls="1.19.1";function Xu(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 hn="undefined",qu="object",vo=function(){},sh="any",ch="*",mt="__",zn=typeof process<"u"?process:{};zn.env&&zn.env.NODE_ENV;var te=typeof document<"u";zn.versions!=null&&zn.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 uh(e,t){return t.charAt(0)[e]()+t.slice(1)}var PP=uh.bind(null,"toUpperCase"),EP=uh.bind(null,"toLowerCase");function OP(e){return lh(e)?PP("null"):typeof e=="object"?CP(e):Object.prototype.toString.call(e).slice(8,-1)}function Hn(e,t){t===void 0&&(t=!0);var r=OP(e);return t?EP(r):r}function Kr(e,t){return typeof t===e}var ue=Kr.bind(null,"function"),tt=Kr.bind(null,"string"),xt=Kr.bind(null,"undefined"),kP=Kr.bind(null,"boolean");Kr.bind(null,"symbol");function lh(e){return e===null}function _P(e){return Hn(e)==="number"&&!isNaN(e)}function fh(e){return Hn(e)==="array"}function ce(e){if(!RP(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function RP(e){return e&&(typeof e=="object"||e!==null)}function CP(e){return ue(e.constructor)?e.constructor.name:null}function AP(e){return e instanceof Error||tt(e.message)&&e.constructor&&_P(e.constructor.stackTraceLimit)}function dh(e,t){if(typeof t!="object"||lh(t))return!1;if(t instanceof e)return!0;var r=Hn(new e(""));if(AP(t))for(;t;){if(Hn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}dh.bind(null,TypeError);dh.bind(null,SyntaxError);function la(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?jP(e,t):r}function jP(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function fa(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}fa(la,"form");fa(la,"button");fa(la,"input");fa(la,"select");function LP(e){return e?fh(e)?e:[e]:[]}function Qu(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function UP(){if(te){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function NP(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function xP(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=Qu(r[1]),o=Qu(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&&(DP(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 DP(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 da(){for(var e="",t=0,r=4294967295*Math.random()|0;t++<36;){var n="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[t-1],a=15&r;e+=n=="-"||n=="4"?n:(n=="x"?a:3&a|8).toString(16),r=t%8==0?4294967295*Math.random()|0:r>>4}return e}function MP(e,t){var r,n,a,i=null,o=0,s=function(){o=new Date,i=null,a=e.apply(r,n)};return function(){var u=new Date;o||(o=u);var f=t-(u-o);return r=this,n=arguments,f<=0?(clearTimeout(i),i=null,o=u,a=e.apply(r,n)):i||(i=setTimeout(s,f)),a}}var Or="global",Yt=mt+"global"+mt,Xt=typeof self===qu&&self.self===self&&self||typeof global===qu&&global.global===global&&global||void 0;function gt(e){return Xt[Yt][e]}function yt(e,t){return Xt[Yt][e]=t}function ar(e){delete Xt[Yt][e]}function ir(e,t,r){var n;try{if(fs(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Xt[Yt]||(Xt[Yt]={});var vn={};function fs(e){if(typeof vn[e]!==hn)return vn[e];try{var t=window[e];t.setItem(hn,hn),t.removeItem(hn)}catch{return vn[e]=!1}return vn[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 qe="function",Ge="undefined",FP="@@redux/"+Math.random().toString(36),el=function(){return typeof Symbol===qe&&Symbol.observable||"@@observable"}(),pn=" != "+qe;function hh(e,t,r){var n;if(typeof t===qe&&typeof r===Ge&&(r=t,t=void 0),typeof r!==Ge){if(typeof r!==qe)throw new Error("enhancer"+pn);return r(hh)(e,t)}if(typeof e!==qe)throw new Error("reducer"+pn);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(h){if(typeof h!==qe)throw new Error("Listener"+pn);var v=!0;return f(),s.push(h),function(){if(v){v=!1,f();var b=s.indexOf(h);s.splice(b,1)}}}function d(h){if(!ce(h))throw new Error("Act != obj");if(typeof h.type===Ge)throw new Error("ActType "+Ge);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,h)}finally{u=!1}for(var v=o=s,b=0;b<v.length;b++)(0,v[b])();return h}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(h){if(typeof h!==qe)throw new Error("next reducer"+pn);a=h,d({type:"@@redux/INIT"})}})[el]=function(){var h,v=c;return(h={subscribe:function(b){if(typeof b!="object")throw new TypeError("Observer != obj");function g(){b.next&&b.next(l())}return g(),{unsubscribe:v(g)}}})[el]=function(){return this},h},n}function BP(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+Ge}function qt(){var e=[].slice.call(arguments);return e.length===0?function(t){return t}:e.length===1?e[0]:e.reduce(function(t,r){return function(){return t(r.apply(void 0,[].slice.call(arguments)))}})}function zP(){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=qt.apply(void 0,i)(o.dispatch)})}}}var rt=mt+"anon_id",vt=mt+"user_id",Ft=mt+"user_traits",Xe="userId",Dt="anonymousId",kn=["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"],po=["name","EVENTS","config","loaded"],A=kn.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),tl=/^utm_/,rl=/^an_prop_/,nl=/^an_trait_/;function HP(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(rt,o.anonymousId),f||t(vt,o.userId),u.traits&&t(Ft,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,h=l.reduce(function(v,b){if(b.match(tl)||b.match(/^(d|g)clid/)){var g=b.replace(tl,"");v.campaign[g==="campaign"?"name":g]=i[b]}return b.match(rl)&&(v.props[b.replace(rl,"")]=i[b]),b.match(nl)&&(v.traits[b.replace(nl,"")]=i[b]),v},{campaign:{},props:{},traits:{}});r.dispatch(j({type:A.params,raw:i},h,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,h.traits)},0),d&&setTimeout(function(){return e.track(d,h.props)},0),Object.keys(h.campaign).length&&r.dispatch({type:A.campaign,campaign:h.campaign})}}return n(a)}}}}function KP(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===A.setItemEnd){if(r.key===rt)return j({},t,{anonymousId:r.value});if(r.key===vt)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[vt,rt,Ft].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function al(e){return{userId:e.getItem(vt),anonymousId:e.getItem(rt),traits:e.getItem(Ft)}}var mo=function(e){return mt+"TEMP"+mt+e};function GP(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&&([vt,Ft,rt].forEach(function(h){n(h)}),[Xe,Dt,"traits"].forEach(function(h){ar(mo(h))})),s.type===A.identify){a(rt)||r(rt,da());var c=a(vt),d=a(Ft)||{};c&&c!==u&&i.dispatch({type:A.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(vt,u),f&&r(Ft,j({},d,f))}return o(s)}}}}var br={};function il(e,t){br[e]&&ue(br[e])&&(br[e](t),delete br[e])}function vh(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 vh(e,t,r-10).then(n,a)})})}function WP(e){return{abort:e}}function ph(e,t,r){var n={},a=t(),i=e.getState(),o=i.plugins,s=i.queue,u=i.user;if(!i.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(c,d,h){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(h)):(c.requeue.push(d),c.requeueIndex.push(h)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],h=d.plugin,v=d.payload.type,b=a[h][v];if(b&&ue(b)){var g,T=function(p,S){return p===void 0&&(p={}),S===void 0&&(S={}),[Xe,Dt].reduce(function(O,_){return p.hasOwnProperty(_)&&S[_]&&S[_]!==p[_]&&(O[_]=S[_]),O},p)}(d.payload,u),I=n[T.meta.rid];if(!I&&(g=b({payload:T,config:o[h].config,instance:r,abort:WP}))&&ce(g)&&g.abort)return void(n[T.meta.rid]=!0);if(!I){var y=v+":"+h;e.dispatch(j({},T,{type:y,_:{called:y,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var Ti=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(Bt),h=t.exact.map(function(g){return g.pluginName});d&&(h=o.during.map(function(g){return g.pluginName}));var v=function(g,T){return function(I,y,p){var S=y.config,O=y.name,_=O+"."+I.type;p&&(_=p.event);var k=I.type.match(Bt)?function(M,F,X,L,x){return function(H,R){var Z=L?L.name:M,ee=R&&Lr(R)?R:X;if(L&&(!(ee=R&&Lr(R)?R:[M]).includes(M)||ee.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(ee)+" input valid");return j({},x,{abort:{reason:H,plugins:ee,caller:F,_:Z}})}}(O,_,T,p,I):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(I,_);return{payload:VP(I),instance:g,config:S||{},abort:k}}}(n,h),b=t.exact.reduce(function(g,T){var I=T.pluginName,y=T.methodName,p=!1;return y.match(/^initialize/)||y.match(/^reset/)||(p=!f[I].loaded),l.offline&&y.match(/^(page|track|identify)/)&&(p=!0),g[""+I]=p,g},{});return Promise.resolve(t.exact.reduce(function(g,T,I){try{var y=T.pluginName;return Promise.resolve(g).then(function(p){function S(){return Promise.resolve(p)}var O=function(){if(t.namespaced&&t.namespaced[y])return Promise.resolve(t.namespaced[y].reduce(function(_,k,M){try{return Promise.resolve(_).then(function(F){return k.method&&ue(k.method)?(function(H,R){var Z=dl(H);if(Z&&Z.name===R){var ee=dl(Z.method);throw new Error([R+" plugin is calling method "+H,"Plugins cant call self","Use "+Z.method+" "+(ee?"or "+ee.method:"")+" in "+R+" plugin insteadof "+H].join(`
6
- `))}}(k.methodName,k.pluginName),Promise.resolve(k.method({payload:F,instance:n,abort:(X=F,L=y,x=k.pluginName,function(H,R){return j({},X,{abort:{reason:H,plugins:R||[L],caller:c,from:x||L}})}),config:cl(k.pluginName,f,i),plugins:f})).then(function(H){var R=ce(H)?H:{};return Promise.resolve(j({},F,R))})):F;var X,L,x})}catch(F){return Promise.reject(F)}},Promise.resolve(r))).then(function(_){p[y]=_});p[y]=r}();return O&&O.then?O.then(S):S()})}catch(p){return Promise.reject(p)}},Promise.resolve({}))).then(function(g){return Promise.resolve(t.exact.reduce(function(T,I,y){try{var p=t.exact.length===y+1,S=I.pluginName,O=i[S];return Promise.resolve(T).then(function(_){var k=g[S]?g[S]:{};if(d&&(k=_),Ei(k,S))return Pi({data:k,method:c,instance:n,pluginName:S,store:s}),Promise.resolve(_);if(Ei(_,S))return p&&Pi({data:_,method:c,instance:n,store:s}),Promise.resolve(_);if(b.hasOwnProperty(S)&&b[S]===!0)return s.dispatch({type:"queue",plugin:S,payload:k,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(_);var M=v(g[S],i[S]);return Promise.resolve(O[c]({abort:M.abort,payload:k,instance:n,config:cl(S,f,i),plugins:f})).then(function(F){var X=ce(F)?F:{},L=j({},_,X),x=g[S];if(Ei(x,S))Pi({data:x,method:c,instance:n,pluginName:S,store:s});else{var H=c+":"+S;(H.match(/:/g)||[]).length<2&&!c.match(ol)&&!c.match(sl)&&n.dispatch(j({},d?L:k,{type:H,_:{called:H,from:"submethod"}}))}return Promise.resolve(L)})})}catch(_){return Promise.reject(_)}},Promise.resolve(r))).then(function(T){if(!(c.match(Bt)||c.match(/^registerPlugin/)||c.match(sl)||c.match(ol)||c.match(/^params/)||c.match(/^userIdChanged/))){if(u.plugins.includes(c),T._&&T._.originalAction===c)return T;var I=j({},T,{_:{originalAction:T.type,called:T.type,from:"engineEnd"}});mh(T,t.exact.length)&&!c.match(/End$/)&&(I=j({},I,{type:T.type+"Aborted"})),s.dispatch(I)}return T})})}catch(g){return Promise.reject(g)}},Bt=/Start$/,ol=/^bootstrap/,sl=/^ready/;function Pi(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(j({},e.data,{type:r,_:{called:r,from:"abort"}}))}function cl(e,t,r){var n=t[e]||r[e];return n&&n.config?n.config:{}}function ul(e,t){return t.reduce(function(r,n){return n[e]?r.concat({methodName:e,pluginName:n.name,method:n[e]}):r},[])}function ll(e,t){var r=e.replace(Bt,""),n=t?":"+t:"";return[""+e+n,""+r+n,r+"End"+n]}function Ei(e,t){var r=e.abort;return!!r&&(r===!0||fl(r,t)||r&&fl(r.plugins,t))}function mh(e,t){var r=e.abort;if(!r)return!1;if(r===!0||tt(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 fl(e,t){return!(!e||!Lr(e))&&e.includes(t)}function dl(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function VP(e){return Object.keys(e).reduce(function(t,r){return r==="type"||(t[r]=ce(e[r])?Object.assign({},e[r]):e[r]),t},{})}function ZP(e,t,r){var n={};return function(a){return function(i){return function(o){try{var s,u=function(p){return s?p:i(c)},f=o.type,l=o.plugins,c=o;if(o.abort)return Promise.resolve(i(o));if(f===A.enablePlugin&&a.dispatch({type:A.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),f===A.disablePlugin&&setTimeout(function(){return il(o.meta.rid,{payload:o})},0),f===A.initializeEnd){var d=t(),h=Object.keys(d),v=h.filter(function(p){return l.includes(p)}).map(function(p){return d[p]}),b=[],g=[],T=o.disabled,I=v.map(function(p){var S=p.loaded,O=p.name,_=p.config;return vh(p,function(){return S({config:_})},1e4).then(function(k){return n[O]||(a.dispatch({type:A.pluginReadyType(O),name:O,events:Object.keys(p).filter(function(M){return!po.includes(M)})}),n[O]=!0),b=b.concat(O),p}).catch(function(k){if(k instanceof Error)throw new Error(k);return g=g.concat(k.name),k})});Promise.all(I).then(function(p){var S={plugins:b,failed:g,disabled:T};setTimeout(function(){h.length===I.length+T.length&&a.dispatch(j({},{type:A.ready},S))},0)})}var y=function(){if(f!==A.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return ph(a,t,e)},0),Promise.resolve(function(p,S,O,_,k){try{var M=ue(S)?S():S,F=p.type,X=F.replace(Bt,"");if(p._&&p._.called)return Promise.resolve(p);var L=O.getState(),x=(Z=M,(ee=L.plugins)===void 0&&(ee={}),(Fe=p.options)===void 0&&(Fe={}),Object.keys(Z).filter(function(m){var w=Fe.plugins||{};return kP(w[m])?w[m]:w.all!==!1&&(!ee[m]||ee[m].enabled!==!1)}).map(function(m){return Z[m]}));F===A.initializeStart&&p.fromEnable&&(x=Object.keys(L.plugins).filter(function(m){var w=L.plugins[m];return p.plugins.includes(m)&&!w.initialized}).map(function(m){return M[m]}));var H=x.map(function(m){return m.name}),R=function(m,w,E){var U=ll(m).map(function(N){return ul(N,w)});return w.reduce(function(N,D){var q=D.name,z=ll(m,q).map(function($){return ul($,w)}),J=z[0],B=z[1],pe=z[2];return J.length&&(N.beforeNS[q]=J),B.length&&(N.duringNS[q]=B),pe.length&&(N.afterNS[q]=pe),N},{before:U[0],beforeNS:{},during:U[1],duringNS:{},after:U[2],afterNS:{}})}(F,x);return Promise.resolve(Ti({action:p,data:{exact:R.before,namespaced:R.beforeNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(m){function w(){var N=function(){if(F.match(Bt))return Promise.resolve(Ti({action:j({},E,{type:X+"End"}),data:{exact:R.after,namespaced:R.afterNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(D){D.meta&&D.meta.hasCallback&&il(D.meta.rid,{payload:D})})}();return N&&N.then?N.then(function(){return m}):m}if(mh(m,H.length))return m;var E,U=function(){if(F!==X)return Promise.resolve(Ti({action:j({},m,{type:X}),data:{exact:R.during,namespaced:R.duringNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(N){E=N});E=m}();return U&&U.then?U.then(w):w()})}catch(m){return Promise.reject(m)}var Z,ee,Fe}(o,t,e,a,r)).then(function(p){return s=1,i(p)})}();return Promise.resolve(y&&y.then?y.then(u):u(y))}catch(p){return Promise.reject(p)}}}}}function JP(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 YP=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,r){e[r]=e[r].concat(t)},this.removeMiddleware=function(t,r){var n=e[r].findIndex(function(a){return a===t});n!==-1&&(e[r]=[].concat(e[r].slice(0,n),e[r].slice(n+1)))},this.dynamicMiddlewares=function(t){return function(r){return function(n){return function(a){var i={getState:r.getState,dispatch:function(s){return r.dispatch(s)}},o=e[t].map(function(s){return s(i)});return qt.apply(void 0,o)(n)(a)}}}}};function XP(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=hl(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=hl(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,vl(r.plugins,!1,t));case A.enablePlugin:return j({},t,vl(r.plugins,!0,t));default:return t}}}function hl(e,t){return e.substring(t.length+1,e.length)}function vl(e,t,r){return e.reduce(function(n,a){return n[a]=j({},r[a],{enabled:t}),n},r)}function gh(e){try{return JSON.parse(JSON.stringify(e))}catch{}return e}var qP={last:{},history:[]};function QP(e,t){e===void 0&&(e=qP);var r=t.options,n=t.meta;if(t.type===A.track){var a=gh(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 eE={actions:[]};function tE(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===A.identify?[t].concat(e.actions):e.actions.concat(t),j({},e,{actions:n});case"dequeue":return[];default:return e}}var yh=/#.*$/;function rE(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(yh,""):"")}var wh,bh,Sh,$h,nE=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 h=function(){if(te){for(var v,b=document.getElementsByTagName("link"),g=0;v=b[g];g++)if(v.getAttribute("rel")==="canonical")return v.getAttribute("href")}}();return h?h.match(/\?/)?h:h+d:window.location.href.replace(yh,"")}(f),c={title:r,url:l,path:rE(l),hash:u,search:f,width:o,height:s};return n&&n!==""&&(c.referrer=n),j({},c,e)},aE={last:{},history:[]};function iE(e,t){e===void 0&&(e=aE);var r=t.options;if(t.type===A.page){var n=gh(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}wh=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"}(),bh=te?document.referrer:null,Sh=UP(),$h=NP();var pl={initialized:!1,sessionId:da(),app:null,version:null,debug:!1,offline:!!te&&!navigator.onLine,os:{name:wh},userAgent:te?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.13"},timezone:$h,locale:Sh,campaign:{},referrer:bh};function oE(e,t){e===void 0&&(e=pl);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({},pl,e,{initialized:!0})}}var sE=["plugins","reducers","storage"];function cE(e,t,r){if(te){var n=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(a){n(a,t)})}}function uE(e){var t=cE.bind(null,"online offline",function(r){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(r){return t(!1)}}function Ih(){return yt("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 Xt[Yt].analytics.push(o.action||o),i(o)}})}}}function ml(e){return function(){return qt(qt.apply(null,arguments),Ih())}}function Oi(e){return e?fh(e)?e:[e]:[]}function gl(e,t,r){e===void 0&&(e={});var n,a,i=da();return t&&(br[i]=(n=t,a=function(o){for(var s,u=o||Array.prototype.slice.call(arguments),f=0;f<u.length;f++)if(ue(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 lE(e){e===void 0&&(e={});var t=e.reducers||{},r=e.initialUser||{},n=(e.plugins||[]).reduce(function(m,w){if(ue(w))return m.middlewares=m.middlewares.concat(w),m;if(w.NAMESPACE&&(w.name=w.NAMESPACE),!w.name)throw new Error("https://lytics.dev/errors/1");w.config||(w.config={});var E=w.EVENTS?Object.keys(w.EVENTS).map(function(D){return w.EVENTS[D]}):[];m.pluginEnabled[w.name]=!(w.enabled===!1||w.config.enabled===!1),delete w.enabled,w.methods&&(m.methods[w.name]=Object.keys(w.methods).reduce(function(D,q){var z;return D[q]=(z=w.methods[q],function(){for(var J=Array.prototype.slice.call(arguments),B=new Array(z.length),pe=0;pe<J.length;pe++)B[pe]=J[pe];return B[B.length]=S,z.apply({instance:S},B)}),D},{}),delete w.methods);var U=Object.keys(w).concat(E),N=new Set(m.events.concat(U));if(m.events=Array.from(N),m.pluginsArray=m.pluginsArray.concat(w),m.plugins[w.name])throw new Error(w.name+"AlreadyLoaded");return m.plugins[w.name]=w,m.plugins[w.name].loaded||(m.plugins[w.name].loaded=function(){return!0}),m},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),a=e.storage?e.storage:{getItem:gt,setItem:yt,removeItem:ar},i=function(m){return function(w,E,U){return E.getState("user")[w]||(U&&ce(U)&&U[w]?U[w]:al(m)[w]||gt(mo(w))||null)}}(a),o=n.plugins,s=n.events.filter(function(m){return!po.includes(m)}).sort(),u=new Set(s.concat(kn).filter(function(m){return!po.includes(m)})),f=Array.from(u).sort(),l=function(){return o},c=new YP,d=c.addMiddleware,h=c.removeMiddleware,v=c.dynamicMiddlewares,b=function(){throw new Error("Abort disabled inListener")},g=xP(),T=al(a),I=j({},T,r,g.an_uid?{userId:g.an_uid}:{},g.an_aid?{anonymousId:g.an_aid}:{});I.anonymousId||(I.anonymousId=da());var y=j({enable:function(m,w){return new Promise(function(E){R.dispatch({type:A.enablePlugin,plugins:Oi(m),_:{originalAction:A.enablePlugin}},E,[w])})},disable:function(m,w){return new Promise(function(E){R.dispatch({type:A.disablePlugin,plugins:Oi(m),_:{originalAction:A.disablePlugin}},E,[w])})}},n.methods),p=!1,S={identify:function(m,w,E,U){try{var N=tt(m)?m:null,D=ce(m)?m:w,q=E||{},z=S.user();yt(mo(Xe),N);var J=N||D.userId||i(Xe,S,D);return Promise.resolve(new Promise(function(B){R.dispatch(j({type:A.identifyStart,userId:J,traits:D||{},options:q,anonymousId:z.anonymousId},z.id&&z.id!==N&&{previousId:z.id}),B,[w,E,U])}))}catch(B){return Promise.reject(B)}},track:function(m,w,E,U){try{var N=ce(m)?m.event:m;if(!N||!tt(N))throw new Error("EventMissing");var D=ce(m)?m:w||{},q=ce(E)?E:{};return Promise.resolve(new Promise(function(z){R.dispatch({type:A.trackStart,event:N,properties:D,options:q,userId:i(Xe,S,w),anonymousId:i(Dt,S,w)},z,[w,E,U])}))}catch(z){return Promise.reject(z)}},page:function(m,w,E){try{var U=ce(m)?m:{},N=ce(w)?w:{};return Promise.resolve(new Promise(function(D){R.dispatch({type:A.pageStart,properties:nE(U),options:N,userId:i(Xe,S,U),anonymousId:i(Dt,S,U)},D,[m,w,E])}))}catch(D){return Promise.reject(D)}},user:function(m){if(m===Xe||m==="id")return i(Xe,S);if(m===Dt||m==="anonId")return i(Dt,S);var w=S.getState("user");return m?Xu(w,m):w},reset:function(m){return new Promise(function(w){R.dispatch({type:A.resetStart},w,m)})},ready:function(m){return p&&m({plugins:y,instance:S}),S.on(A.ready,function(w){m(w),p=!0})},on:function(m,w){if(!m||!ue(w))return!1;if(m===A.bootstrap)throw new Error(".on disabled for "+m);var E=/Start$|Start:/;if(m==="*"){var U=function(z){return function(J){return function(B){return B.type.match(E)&&w({payload:B,instance:S,plugins:o}),J(B)}}},N=function(z){return function(J){return function(B){return B.type.match(E)||w({payload:B,instance:S,plugins:o}),J(B)}}};return d(U,mn),d(N,gn),function(){h(U,mn),h(N,gn)}}var D=m.match(E)?mn:gn,q=function(z){return function(J){return function(B){return B.type===m&&w({payload:B,instance:S,plugins:o,abort:b}),J(B)}}};return d(q,D),function(){return h(q,D)}},once:function(m,w){if(!m||!ue(w))return!1;if(m===A.bootstrap)throw new Error(".once disabled for "+m);var E=S.on(m,function(U){w({payload:U.payload,instance:S,plugins:o,abort:b}),E()});return E},getState:function(m){var w=R.getState();return m?Xu(w,m):Object.assign({},w)},dispatch:function(m){var w=tt(m)?{type:m}:m;if(kn.includes(w.type))throw new Error("reserved action "+w.type);var E=j({},w,{_:j({originalAction:w.type},m._||{})});R.dispatch(E)},enablePlugin:y.enable,disablePlugin:y.disable,plugins:y,storage:{getItem:a.getItem,setItem:function(m,w,E){R.dispatch({type:A.setItemStart,key:m,value:w,options:E})},removeItem:function(m,w){R.dispatch({type:A.removeItemStart,key:m,options:w})}},setAnonymousId:function(m,w){S.storage.setItem(rt,m,w)},events:{core:kn,plugins:s}},O=n.middlewares.concat([function(m){return function(w){return function(E){return E.meta||(E.meta=gl()),w(E)}}},v(mn),ZP(S,l,{all:f,plugins:s}),JP(a),HP(S),GP(S),v(gn)]),_={context:oE,user:KP(a),page:iE,track:QP,plugins:XP(l),queue:tE},k=qt,M=qt;if(te&&e.debug){var F=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;F&&(k=F({trace:!0,traceLimit:25})),M=function(){return arguments.length===0?Ih():ce(typeof arguments[0])?ml():ml().apply(null,arguments)}}var X,L=function(m){return Object.keys(m).reduce(function(w,E){return sE.includes(E)||(w[E]=m[E]),w},{})}(e),x=n.pluginsArray.reduce(function(m,w){var E=w.name,U=w.config,N=w.loaded,D=n.pluginEnabled[E];return m[E]={enabled:D,initialized:!!D&&!w.initialize,loaded:!!N({config:U}),config:U},m},{}),H={context:L,user:I,plugins:x},R=hh(function(m){for(var w=Object.keys(m),E={},U=0;U<w.length;U++){var N=w[U];typeof m[N]===qe&&(E[N]=m[N])}var D,q=Object.keys(E);try{(function(z){Object.keys(z).forEach(function(J){var B=z[J];if(typeof B(void 0,{type:"@@redux/INIT"})===Ge||typeof B(void 0,{type:FP})===Ge)throw new Error("reducer "+J+" "+Ge)})})(E)}catch(z){D=z}return function(z,J){if(z===void 0&&(z={}),D)throw D;for(var B=!1,pe={},$=0;$<q.length;$++){var P=q[$],C=z[P],W=(0,E[P])(C,J);if(typeof W===Ge){var V=BP(P,J);throw new Error(V)}pe[P]=W,B=B||W!==C}return B?pe:z}}(j({},_,t)),H,M(k(zP.apply(void 0,O))));R.dispatch=(X=R.dispatch,function(m,w,E){var U=j({},m,{meta:gl(m.meta,w,Oi(E))});return X.apply(null,[U])});var Z=Object.keys(o);R.dispatch({type:A.bootstrap,plugins:Z,config:L,params:g,user:I,initialUser:r,persistedUser:T});var ee=Z.filter(function(m){return n.pluginEnabled[m]}),Fe=Z.filter(function(m){return!n.pluginEnabled[m]});return R.dispatch({type:A.registerPlugins,plugins:Z,enabled:n.pluginEnabled}),n.pluginsArray.map(function(m,w){var E=m.bootstrap,U=m.config,N=m.name;E&&ue(E)&&E({instance:S,config:U,payload:m}),R.dispatch({type:A.registerPluginType(N),name:N,enabled:n.pluginEnabled[N],plugin:m}),n.pluginsArray.length===w+1&&R.dispatch({type:A.initializeStart,plugins:ee,disabled:Fe})}),uE(function(m){R.dispatch({type:m?A.offline:A.online})}),function(m,w,E){setInterval(function(){return ph(m,w,E)},3e3)}(R,l,S),S}var mn="before",gn="after",kr="cookie",lt=Eh(),Th=ha,fE=ha;function Ph(e){return lt?ha(e,"",-1):ar(e)}function Eh(){if(lt!==void 0)return lt;var e="cookiecookie";try{ha(e,e),lt=document.cookie.indexOf(e)!==-1,Ph(e)}catch{lt=!1}return lt}function ha(e,t,r,n,a,i){if(typeof window<"u"){var o=arguments.length>1;return lt===!1&&(o?yt(e,t):gt(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",dE=fs.bind(null,"localStorage");ir("localStorage","getItem",gt);ir("localStorage","setItem",yt);ir("localStorage","removeItem",ar);var Rr="sessionStorage",hE=fs.bind(null,"sessionStorage");ir("sessionStorage","getItem",gt);ir("sessionStorage","setItem",yt);ir("sessionStorage","removeItem",ar);function zt(e){var t=e;try{if((t=JSON.parse(e))==="true")return!0;if(t==="false")return!1;if(ce(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch{}if(t!==null&&t!=="")return t}var vE=dE(),pE=hE(),mE=Eh();function Oh(e,t){if(e){var r=ds(t),n=!ms(r),a=hs(r)?zt(localStorage.getItem(e)):void 0;if(n&&!xt(a))return a;var i=vs(r)?zt(Th(e)):void 0;if(n&&i)return i;var o=ps(r)?zt(sessionStorage.getItem(e)):void 0;if(n&&o)return o;var s=gt(e);return n?s:{localStorage:a,sessionStorage:o,cookie:i,global:s}}}function gE(e,t,r){if(e&&!xt(t)){var n={},a=ds(r),i=JSON.stringify(t),o=!ms(a);return hs(a)&&(n[_r]=yn(_r,t,zt(localStorage.getItem(e))),localStorage.setItem(e,i),o)?n[_r]:vs(a)&&(n[kr]=yn(kr,t,zt(Th(e))),fE(e,i),o)?n[kr]:ps(a)&&(n[Rr]=yn(Rr,t,zt(sessionStorage.getItem(e))),sessionStorage.setItem(e,i),o)?n[Rr]:(n[Or]=yn(Or,t,gt(e)),yt(e,t),o?n[Or]:n)}}function yE(e,t){if(e){var r=ds(t),n=Oh(e,ch),a={};return!xt(n.localStorage)&&hs(r)&&(localStorage.removeItem(e),a[_r]=n.localStorage),!xt(n.cookie)&&vs(r)&&(Ph(e),a[kr]=n.cookie),!xt(n.sessionStorage)&&ps(r)&&(sessionStorage.removeItem(e),a[Rr]=n.sessionStorage),!xt(n.global)&&va(r,Or)&&(ar(e),a[Or]=n.global),a}}function ds(e){return e?tt(e)?e:e.storage:sh}function hs(e){return vE&&va(e,_r)}function vs(e){return mE&&va(e,kr)}function ps(e){return pE&&va(e,Rr)}function ms(e){return e===ch||e==="all"}function va(e,t){return e===sh||e===t||ms(e)}function yn(e,t,r){return{location:e,current:t,previous:r}}var wE={setItem:gE,getItem:Oh,removeItem:yE};function bE(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function yl(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 wl(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?yl(Object(r),!0).forEach(function(n){bE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):yl(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function SE(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t={storage:wE};return lE(wl(wl({},t),e))}function $E(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 IE(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=PE(f);return a!==l&&(a=l,setTimeout(()=>e(f),0)),s.apply(r,u)}})}function TE(e,t){const r=e.indexOf(t);return r>-1?e.slice(0,r):e}function PE(e){return["#","?"].forEach(t=>e=TE(e,t)),e}function EE(){IE(()=>{He.page()})}function OE(e){if(e===void 0&&(e={}),!te)return vo;var t=Sl(),r=go(),n=bl(),a=wn(n,t),i=wn(r,t),o=[],s=[],u=[],f=n,l=a,c=i,d=Object.keys(e);if(!d.length)return vo;var h=d.map(function(b){return Number(b)}),v=MP(function(){var b=Sl(),g=function(L,x){return x.map(function(H){return H===100?L-5:L*(H/100)})}(b,h),T=go(),I=bl(),y=wn(I,b),p=wn(T,b);if(l=y>l?y:l,c=p<c?p:c,!(o.length>=h.length)){var S=f===I,O="up";S?O="initial":f<=I&&(O="down");var _=g,k=h;(O==="up"||S)&&(_=g.slice().reverse(),k=h.slice().reverse());var M=k.reduce(function(L,x,H){var R=_[H];return u.includes(x)&&I<=R&&(u=u.filter(function(Z){return Z!==x}),L.singleFunction=x),O==="down"&&!o.includes(x)&&I>=R&&x>i?(s.push(x),L.callbacks=L.callbacks.concat(x),L):O==="up"&&!o.includes(x)&&I<=R&&x<=y?(L.foundFunc=[x],L):(S&&I>=R&&L.foundFunc.length===0&&(L.foundFunc=[x]),!s.includes(x)&&I>=R&&(s.push(x),L.singleFunction?u.push(x):L.singleFunction=x),L)},{foundFunc:[],singleFunction:null,callbacks:[],direction:O});if(f=I,O==="down"&&M.callbacks&&M.callbacks.forEach(function(L){ue(e[L])&&(e[L]({trigger:L,direction:O,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(L))}),M.singleFunction){var F=M.singleFunction,X=M.direction;ue(e[F])&&e[F]({trigger:F,direction:X,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(F)}}},500);return window.addEventListener("scroll",v),function(){return window.removeEventListener("scroll",v)}}function go(){return te?document.body.scrollTop||document.documentElement.scrollTop:0}function kE(){return te?window.innerHeight||document.documentElement.clientHeight:0}function bl(){return Math.round(go()+kE())}function Sl(){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 wn(e,t){return Math.round(e/t*100)}var $l="EventListener";function _E(e){return function(t,r,n,a){var i=n||vo,o=a||!1;if(!te)return i;var s=Kn(r),u=Kn(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"+$l:"remove"+$l,h=0;h<u.length;h++){var v=u[h];f[h]=c?o&&o.once?RE(i):i:f[h]||i;for(var b=0;b<s.length;b++)v[d]?v["on"+s[b]]=c?f[h]:null:v[d](s[b],f[h],o)}return l.bind(null,!c)}(e)}}function Kn(e,t){if(tt(e))return t?Kn(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=LP(e);return t?i.map(function(o){return tt(o)?Kn(o,!0):o}).flat():i}function RE(e,t){var r;return function(){return e&&(r=e.apply(this,arguments),e=null),r}}var ki=_E("Event");function kh(e,t){return te&&ue(window[e])?(r=window[e],n=t,(a=window)===void 0&&(a=null),ue(r)?function(){r.apply(a,arguments),n.apply(a,arguments)}:n):window[e]=t;var r,n,a}kh.bind(null,"onerror");kh.bind(null,"onload");var _h=typeof window>"u",Il="hidden";function CE(e){if(_h)return!1;var t=AE(),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 AE(){var e=["webkit","moz","ms","o"];return _h||Il in document?Il:e.reduce(function(t,r){var n=r+"Hidden";return!t&&n in document?n:t},null)}var jE=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function LE(e,t){t===void 0&&(t={});var r=function(o,s){var u=this,f=!1;return function(l){f||(o.call(u,l),f=!0,setTimeout(function(){return f=!1},s))}}(e,t.throttle||1e4),n=[];function a(){var o=CE(function(s){s||r({type:"tabVisible"})});return n=[o].concat(jE.map(function(s){return ki(document,s,r)})).concat(ki(window,"load",r)).concat(ki(window,"scroll",r,{capture:!0,passive:!0})),i}function i(){n.map(function(o){return o()})}return a(),function(){return i(),a}}function UE(e){var t,r,n=e.onIdle,a=e.onWakeUp,i=e.onHeartbeat,o=e.timeout,s=o===void 0?1e4:o,u=e.throttle,f=u===void 0?2e3:u,l=!1,c=!1,d=new Date,h=function(){return clearTimeout(t)};function v(g){h(),i&&!l&&i(mr(d),g),a&&l&&(l=!1,a(mr(r),g),d=new Date),t=setTimeout(function(){l=!0,n&&(r=new Date,n(mr(d),g))},s)}var b=LE(v,{throttle:f});return{disable:function(){c=!0,l=!1,h();var g=b();return function(){return c=!1,d=new Date,v({type:"load"}),g()}},getStatus:function(){return{isIdle:l,isDisabled:c,active:l?0:mr(d,c),idle:l?mr(r,c):0}}}}function mr(e,t){return t?0:Math.round((new Date-e)/1e3)}const Tl=5e3;class NE{constructor(t){me(this,"element");me(this,"isInViewport",!1);me(this,"isAwake",!1);me(this,"isFlushing");me(this,"observer");me(this,"lastEventAt",Date.now());me(this,"registeredView",!1);me(this,"viewCallback");me(this,"activeDurationCallback");me(this,"idleDurationCallback");me(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),UE({onIdle:r=>this.handleAwake(!1,r),onWakeUp:r=>this.handleAwake(!0,r),timeout:Tl}),OE({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*Tl: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 Pl="sesamy_session_id";function xE(){let e=sessionStorage.getItem(Pl);return e||(e=Math.random().toString(36).slice(2,9),sessionStorage.setItem(Pl,e)),e}let Rh=!1,yo,El,Gn;const Ch=new Map;function DE({clientId:e,enabled:t=!0,environment:r}){if(yo=e,El=t,Gn=`${Ke("logs",r)}/events`,!El)return;window.addEventListener("beforeunload",()=>{jh.forEach((a,i)=>{a.bind(i)()}),FE()}),window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&Ch.forEach((a,i)=>{a.bind(i)()})}),EE();const n=new NE({element:document.body,viewCallback:()=>{He.page()},activeDurationCallback:(a,i,o)=>{He.track("activeDuration",{duration:a,durationStart:o,flushing:i})},idleDurationCallback:(a,i,o)=>{He.track("idleDuration",{duration:a,durationStart:o,flushing:i})},scrollCallback:a=>{He.track("scroll",{scroll:a.scrollMax})}});BE(document.body,()=>{n.flush()}),zE(document.body,()=>{n.handleVisibilityChange()}),window.addEventListener(ve.AUTHENTICATED,async a=>{const i=a;await He.identify(i.detail.sub)}),window.addEventListener(ve.LOGOUT,async()=>{await He.track("logout",{}),gs.flush(),await He.reset()})}function Ah(e){return JSON.stringify(e.map(t=>({...t,clientId:yo,requestId:Math.random().toString(36).slice(2,9),sessionId:xE(),timestamp:new Date().toISOString(),version:ls,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:oh,userAgent:navigator.userAgent,clientId:yo}})))}const gs=$E(async e=>{if(e.length>0){const t=Ah(e);Rh?navigator.sendBeacon(Gn,t):(await fetch(Gn,{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(Gn,Ah([r]))}else gs.push(e)}const He=SE({app:oh,version:ls,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 ME(e,t){He.track(e,t)}function FE(){return Rh=!0,gs.flush()}const jh=new Map;function BE(e,t){jh.set(e,t)}function zE(e,t){Ch.set(e,t)}const HE=["AdHeader","AdContainer","AD_Top","homead","ad-lead"];function KE(){return new Promise(e=>{const t=HE.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 GE(){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}}let ke={article:{selector:"article"},image:{selector:"img",attribute:"src"},title:{selector:"h1",attribute:"textContent"},excerpt:{selector:"p",attribute:"textContent"},price:{selector:"article",attribute:"data-price"},currency:{selector:"article",attribute:"data-currency"},url:{selector:"link",attribute:"href"},id:{selector:"article",attribute:"data-id"}};function WE(e){var t;ke={...ke,...(t=e.content)==null?void 0:t.article}}function VE(e,t){const{selector:r}=t;return r===ke.article.selector?e:e.querySelector(r)}function ZE(e,t){if(e)return t.attribute?t.attribute==="textContent"?e.textContent??void 0:e.getAttribute(t.attribute)??void 0:e.textContent??void 0}function JE(){const e=document.querySelectorAll(ke.article.selector);return Array.from(e).map(t=>{const r={element:t},n=(a,i,o)=>{const s=VE(t,i);if(s){const u=ZE(s,i);u!==void 0&&(r[a]=o?o(u):u)}};return n("title",ke.title),n("excerpt",ke.excerpt),n("image",ke.image),n("price",ke.price,a=>parseFloat(a)),n("currency",ke.currency),n("url",ke.url),n("id",ke.id),r})}function YE(e){const{createCheckout:t,getCheckout:r,updateCheckout:n,getEntitlement:a,getEntitlements:i,getEntitlementAccess:o,getFulfillments:s,getSubscriptions:u,getContract:f,getContracts:l,cancelContract:c,getBill:d,getBills:h,getTransaction:v,getTransactions:b,getProfile:g,updateProfile:T,getTags:I,deleteTag:y,setTag:p,getUserMetadata:S,listUserMetadata:O,setUserMetadata:_,deleteUserMetadata:k,getTally:M,getTallies:F,pushTally:X,deleteTally:L,getProduct:x,getPaymentIssues:H,isSpotifyLinked:R,unlinkSpotify:Z,linkSpotify:ee,autoOnboardProduct:Fe,openHostedAccountPage:m,generateLink:w,hasAccess:E,getPaywall:U}=TP(e),N={auth:{getUser:g,isAuthenticated:jr,loginWithRedirect:ss,logout:qd,setToken:eh},attribution:{get:us,set:IP},checkouts:{get:r,create:t,update:n},profile:{get:g,update:T,openHostedAccountPage:m,isSpotifyLinked:R,unlinkSpotify:Z},analytics:{track:ME},content:{list:JE},tags:{list:I,set:p,delete:y},entitlements:{get:a,list:i,hasAccess:E,access:o,signedLinks:cs},fulfillments:{list:s},contracts:{get:f,list:l,cancel:c},bills:{get:d,list:h},userMetadata:{get:S,list:O,set:_,delete:k},tallies:{get:M,list:F,push:X,delete:L},subscriptions:{list:u},transactions:{get:v,list:b},products:{get:x,autoOnboard:Fe,linkSpotify:ee},paywalls:{get:U},browser:{detectAdblock:KE,isInAppBrowser:GE},getVersion:XE,getPaymentIssues:H,generateLink:w,clearCache:_e,log:he};return e.namespace&&(window[e.namespace]=N),N}function XE(){return ls}function qE(e,t){e.style.position="relative",e.style.height="200px",e.style.overflow="hidden";let n=0;const a=Array.from(e.children);for(const o of a){const s=o.offsetHeight;n+s>200?o.remove():n+=s}const i=document.createElement("style");i.innerHTML=`
5
+ CAUSE: `+h.stack,S.response=y,S.status=y.status,S.url=c,y.type==="opaque")throw S;const O=a.errorType==="json"||((p=y.headers.get("Content-Type"))===null||p===void 0?void 0:p.split(";")[0])==="application/json";return(a.errorType?O?y.text():y[a.errorType]():Promise.resolve(y.body)).then(k=>{throw S.message=typeof k=="string"?k:y.statusText,k&&(O&&typeof k=="string"?(S.text=k,S.json=JSON.parse(k)):S[a.errorType]=k),S})}return y}),b=y=>y.catch(p=>{const S=Object.prototype.hasOwnProperty.call(p,Rt),O=S?p[Rt]:p,_=(O==null?void 0:O.status)&&f.get(O.status)||f.get(O==null?void 0:O.name)||S&&f.has(Rt)&&f.get(Rt);if(_)return _(O,e);const k=f.get(rh);if(k)return k(O,e);throw O}),g=y=>p=>b(y?v.then(S=>S&&S[y]()).then(S=>p?p(S):S):v.then(S=>p?p(S):S)),T={_wretchReq:e,_fetchReq:d,_sharedState:t,res:g(null),json:g("json"),blob:g("blob"),formData:g("formData"),arrayBuffer:g("arrayBuffer"),text:g("text"),error(y,p){return f.set(y,p),this},badRequest(y){return this.error(400,y)},unauthorized(y){return this.error(401,y)},forbidden(y){return this.error(403,y)},notFound(y){return this.error(404,y)},timeout(y){return this.error(408,y)},internalError(y){return this.error(500,y)},fetchError(y){return this.error(Rt,y)}},I=u.reduce((y,p)=>({...y,...typeof p.resolver=="function"?p.resolver(y):p.resolver}),T);return o.reduce((y,p)=>p(y,e),I)},wP={_url:"",_options:{},_config:Jt,_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:ht(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:ht(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:ht(this._options,{headers:t})}},accept(e){return this.headers({Accept:e})},content(e){return this.headers({[th]: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(rh,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=Vu(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||Zu(a));return n=r?o?n.json(r,a):n.body(r):n,yP(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=Vu(this._options.headers);return this.content(t||Zu(r)&&r||hP).body(JSON.stringify(e))}};function We(e="",t={}){return{...wP,_url:e,_options:t}}We.default=We;We.options=vP;We.errorType=mP;We.polyfills=pP;We.WretchError=nh;function _e(){sessionStorage.removeItem(co),console.log("Cache cleared"),Ve(ve.CLEAR_CACHE,{})}function fo(e){let t;try{t=new URL(e)}catch{return!1}return t.protocol==="http:"||t.protocol==="https:"}function ah(e,t){if(fo(e))return{itemSrc:e};const[r,n,a]=e.split(":");return{sku:`${r}:${n}`,purchaseOption:t||a}}function Ju(e){return e.endsWith("/")?e.slice(0,-1):e}function Yu(e,t){if(!fo(e)||!fo(t))return!1;const r=new URL(e),n=new URL(t);return r.origin===n.origin&&Ju(r.pathname)===Ju(n.pathname)}function bP(e,t){const r=new URL(`${Ke("checkout3",e.environment)}`);if(r.searchParams.set("vendorId",e.clientId),t.language&&r.searchParams.set("lang",t.language),t.sku)r.searchParams.set("sku",t.sku),t.purchaseOptionId&&r.searchParams.set("poId",t.purchaseOptionId);else if(t.itemSrc){const{sku:o,purchaseOption:s,itemSrc:u}=ah(t.itemSrc,t.purchaseOptionId);u&&r.searchParams.set("url",u),o&&r.searchParams.set("sku",o),s&&r.searchParams.set("poId",s)}t.email&&r.searchParams.set("email",t.email),t.business&&r.searchParams.set("business","true"),t.currency&&r.searchParams.set("currency",t.currency),t.price&&r.searchParams.set("price",t.price.toString()),t.discountCode&&r.searchParams.set("discountCode",t.discountCode),t.attributionItemSrc&&r.searchParams.set("attributionItemSrc",t.attributionItemSrc),t.attributionPublisherContentId&&r.searchParams.set("attributionPublisherContentId",t.attributionPublisherContentId),t.utmSource&&r.searchParams.set("utmSource",t.utmSource),t.utmMedium&&r.searchParams.set("utmMedium",t.utmMedium),t.utmCampaign&&r.searchParams.set("utmCampaign",t.utmCampaign),t.utmTerm&&r.searchParams.set("utmTerm",t.utmTerm),t.utmContent&&r.searchParams.set("utmContent",t.utmContent);const n=["_ga","_gid","_fbp","_fbc"];document.cookie.split(";").map(o=>{const[s,u]=o.trim().split("=");return{key:s,value:u}}).filter(o=>n.some(s=>s===o.key)).forEach(o=>{r.searchParams.append(o.key,o.value)});const i=new URL(t.redirectUrl||window.location.href);return i.searchParams.set("force-refetch-entitlements","true"),t.itemSrc&&i.searchParams.set("sesamy-purchase",t.itemSrc),r.searchParams.set("redirectUrl",i.toString()),t.paymemtMethodsFilter&&r.searchParams.set("paymentMethodsFilter",t.paymemtMethodsFilter.flatMap(({provider:o,methods:s})=>s?s.map(u=>`${o}|${u}`):o).join(",")),r}const ih="sesamySignedURLs";function cs(){const e=sessionStorage.getItem(ih);return e?JSON.parse(e):[]}function SP(e){const t=cs();t.push(e),he(`Adding signed URL: ${e}`),sessionStorage.setItem(ih,JSON.stringify(t))}const ho="sesamyAttribution";function $P(e){const t=sessionStorage.getItem(e);if(!t)return null;try{return JSON.parse(t).value}catch{return console.error(`Failed to parse ${e}`),null}}function us(){return $P(ho)||{}}function IP(e){if(e===null)sessionStorage.removeItem(ho);else{const t=us()??{};sessionStorage.setItem(ho,JSON.stringify({value:{...t,...e}}))}}function TP(e){const t=Ke("api2",e.environment),r=$=>async(P,C)=>{let W=sessionStorage.getItem(co);W||(W=Date.now().toString(),sessionStorage.setItem(co,W));const V={...C,headers:{...C.headers,"Cache-Timestamp":W}};return $(P,V)},n=($=!0)=>P=>async(C,W)=>{let V=null;if(V=await pr($),!V){if($)throw new Error("No access token available");return P(C,W)}const Je={...W,headers:{...W.headers,...V?{Authorization:`Bearer ${V}`}:{}}};return P(C,Je)},a=$=>(P,C)=>{if(C.headers.Authorization)return $(P,C);const W=localStorage.getItem("__anon_id"),V=btoa(`${e.clientId}|${W}:`),Je={...C,headers:{...C.headers,Authorization:`Basic ${V}`}};return $(P,Je)},i=We(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Gu(),Wu({delayTimer:1e3,delayRamp:($,P)=>$*P,maxAttempts:3,until:$=>!!($&&($.ok||$.status>=400&&$.status<500)),retryOnNetworkError:!1})]),o=We(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Gu(),Wu({delayTimer:1e3,delayRamp:($,P)=>$*P,maxAttempts:3,until:$=>!!($&&($.ok||$.status>=400&&$.status<500)),retryOnNetworkError:!1})]);async function s($={}){const{waitForEntitlementAfter:P,includeSignedLinks:C=!0}=$,W=P?`?wait-for-entitlement-after=${P.toISOString()}`:"",V=await jr()?await i.get(`/entitlements${W}`).json():[];return C&&V.push(...cs()),V}async function u($,P=[]){const C=await s();return C==null?void 0:C.find(V=>{const{sku:Je,purchaseOption:It}=ah($);let or="sku"in V&&Je===V.sku;or&&It&&"purchaseOptionId"in V&&(or=It===V.purchaseOptionId);const Nh=Yu($,V.url),xh=P.some(Dh=>Yu(Dh,V.url));return or||Nh||xh})}async function f($){const P=await i.get("/entitlements").json();return P==null?void 0:P.find(C=>C.id===$)}async function l($){return i.get(`/entitlements/${encodeURIComponent($)}/access`).json()}async function c($){return await jr()?await i.get(`/fulfillments?sku=${encodeURIComponent($)}`).json():[]}async function d(){return i.get("/contracts").json()}async function h($){const P=await i.get("/contracts").json();return P==null?void 0:P.find(C=>C.id===$)}async function v($){return(await i.post({},`/contracts/${encodeURIComponent($)}/cancel`).res()).ok}async function b(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function g(){return i.get("/bills").json()}async function T($){const P=await i.get("/bills").json();return P==null?void 0:P.find(C=>C.id===$)}async function I(){return i.get("/transactions").json()}async function y($){const P=await i.get("/transactions").json();return P==null?void 0:P.find(C=>C.id===$)}async function p($,P){const C=await i.url(`/user-metadata/${encodeURIComponent($)}`).put(P).json();return Ve(ve.USER_ATTRIBUTE_CHANGED,{}),_e(),C}async function S($){const P=await i.url(`/user-metadata/${encodeURIComponent($)}`).delete().res();return _e(),P.ok}async function O($){return(await i.url(`/user-metadata/${encodeURIComponent($)}`).get().json())[$]}async function _(){return await i.url("/user-metadata").get().json()}async function k(){return await i.url("/tags").get().json()}async function M($){const P=await i.url(`/tags/${encodeURIComponent($)}`).delete().res();return _e(),P.ok}async function F($){const P=await i.url("/tags").post(encodeURIComponent($)).res();return Ve(ve.USER_ATTRIBUTE_CHANGED,{}),_e(),P.ok}async function X($){return(await o.url("/tallies").get().json())[$]}async function L(){return await o.url("/tallies").get().json()}async function x($){const P=await o.url(`/tallies/${$}`).delete().res();return _e(),P.ok}async function H($,P){return await o.url(`/tallies/${encodeURIComponent($)}/push`).post(P).json()}async function R($){return await i.url(`/products/${encodeURIComponent($)}`).get().json()}async function Z(){return await pr(!1)?await i.url("/profile").get().json():null}async function ee($){const P=await i.url("/profile").patch($).res();return _e(),P.ok}async function Fe(){return await i.url("/payment-issues").get().json()}async function m(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function w(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function E($){const P=await pr(!1);if(!P)throw new Error("No access token available");const C=new URL(`${Ke("spotify-oas",e.environment)}/sesamy-callback`);C.searchParams.set("access_token",P),C.searchParams.set("state",$),window.location.href=C.toString()}async function U($){const P=await i.url(`/products/${encodeURIComponent($)}/auto-onboard`).post().json();return P.length&&_e(),P}async function N($,P=3600){const{shortlink:C}=await We(aP).post({url:$,ttl:P}).json();return C}async function D($){const P=await pr(!1);let C;const W=$.language||uo();switch($.target){case"account":C=new URL(`${Ke("account",e.environment)}/${encodeURIComponent($.language||W)}/subscriptions/${encodeURIComponent(e.clientId)}`),C.searchParams.set("sesamy-redirect-url",$.redirectUrl||window.location.href);break;case"consume":C=new URL(`${Ke("consume",e.environment)}/${encodeURIComponent($.language||W)}/@${encodeURIComponent(e.clientId)}/${encodeURIComponent($.sku)}`),$.episodeId?C.href+=`/${$.episodeId}`:C.href+="/listen",C.searchParams.set("sesamy-redirect-url",$.redirectUrl||window.location.href);break;case"checkout":C=bP(e,{language:W,...$});break;default:throw new Error("Invalid target")}return P&&(C.hash=`#access_token=${P}`),$.shorten?N(C.href,$.ttl):C.href}async function q($){const P=us(),C=["_ga","_gid","_fbp","_fbc"];return document.cookie.split(";").forEach(V=>{const Je=P,[It,or]=V.trim().split("=");C.includes(It)&&!Je[It]&&(Je[It]=or)}),(await o.url("/checkouts").post({language:uo(),attribution:{...P,...$.attribution},...$,vendorId:e.clientId})).json()}async function z($,P){return(await o.url(`/checkouts/${$}`).patch(P)).json()}async function J($){return(await o.url(`/checkouts/${$}`).get()).json()}async function B($){return(await o.url(`/paywalls/${$}`).get()).json()}async function pe(){const $=await pr(!1),P=new URL(`${Ke("account",e.environment)}/subscriptions/${e.clientId}`);$&&(P.hash=`#access_token=${$}`),window.location.href=P.toString()}return{autoOnboardProduct:U,cancelContract:v,createCheckout:q,deleteTag:M,deleteTally:x,deleteUserMetadata:S,generateLink:D,getBill:T,getBills:g,getCheckout:J,getContract:h,getContracts:d,getEntitlement:f,getEntitlementAccess:l,getEntitlements:s,getFulfillments:c,getPaywall:B,getPaymentIssues:Fe,getProfile:Z,getProduct:R,getSubscriptions:b,getTally:X,getTallies:L,getTags:k,getTransaction:y,getTransactions:I,getUserMetadata:O,hasAccess:u,isSpotifyLinked:m,linkSpotify:E,listUserMetadata:_,openHostedAccountPage:pe,pushTally:H,setTag:F,setUserMetadata:p,unlinkSpotify:w,updateCheckout:z,updateProfile:ee}}const oh="@sesamy/sesamy-js",ls="1.19.1";function Xu(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 hn="undefined",qu="object",vo=function(){},sh="any",ch="*",mt="__",zn=typeof process<"u"?process:{};zn.env&&zn.env.NODE_ENV;var te=typeof document<"u";zn.versions!=null&&zn.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 uh(e,t){return t.charAt(0)[e]()+t.slice(1)}var PP=uh.bind(null,"toUpperCase"),EP=uh.bind(null,"toLowerCase");function OP(e){return lh(e)?PP("null"):typeof e=="object"?CP(e):Object.prototype.toString.call(e).slice(8,-1)}function Hn(e,t){t===void 0&&(t=!0);var r=OP(e);return t?EP(r):r}function Kr(e,t){return typeof t===e}var ue=Kr.bind(null,"function"),tt=Kr.bind(null,"string"),xt=Kr.bind(null,"undefined"),kP=Kr.bind(null,"boolean");Kr.bind(null,"symbol");function lh(e){return e===null}function _P(e){return Hn(e)==="number"&&!isNaN(e)}function fh(e){return Hn(e)==="array"}function ce(e){if(!RP(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function RP(e){return e&&(typeof e=="object"||e!==null)}function CP(e){return ue(e.constructor)?e.constructor.name:null}function AP(e){return e instanceof Error||tt(e.message)&&e.constructor&&_P(e.constructor.stackTraceLimit)}function dh(e,t){if(typeof t!="object"||lh(t))return!1;if(t instanceof e)return!0;var r=Hn(new e(""));if(AP(t))for(;t;){if(Hn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}dh.bind(null,TypeError);dh.bind(null,SyntaxError);function la(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?jP(e,t):r}function jP(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function fa(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}fa(la,"form");fa(la,"button");fa(la,"input");fa(la,"select");function LP(e){return e?fh(e)?e:[e]:[]}function Qu(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function UP(){if(te){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function NP(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function xP(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=Qu(r[1]),o=Qu(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&&(DP(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 DP(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 da(){for(var e="",t=0,r=4294967295*Math.random()|0;t++<36;){var n="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[t-1],a=15&r;e+=n=="-"||n=="4"?n:(n=="x"?a:3&a|8).toString(16),r=t%8==0?4294967295*Math.random()|0:r>>4}return e}function MP(e,t){var r,n,a,i=null,o=0,s=function(){o=new Date,i=null,a=e.apply(r,n)};return function(){var u=new Date;o||(o=u);var f=t-(u-o);return r=this,n=arguments,f<=0?(clearTimeout(i),i=null,o=u,a=e.apply(r,n)):i||(i=setTimeout(s,f)),a}}var Or="global",Yt=mt+"global"+mt,Xt=typeof self===qu&&self.self===self&&self||typeof global===qu&&global.global===global&&global||void 0;function gt(e){return Xt[Yt][e]}function yt(e,t){return Xt[Yt][e]=t}function ar(e){delete Xt[Yt][e]}function ir(e,t,r){var n;try{if(fs(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Xt[Yt]||(Xt[Yt]={});var vn={};function fs(e){if(typeof vn[e]!==hn)return vn[e];try{var t=window[e];t.setItem(hn,hn),t.removeItem(hn)}catch{return vn[e]=!1}return vn[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 qe="function",Ge="undefined",FP="@@redux/"+Math.random().toString(36),el=function(){return typeof Symbol===qe&&Symbol.observable||"@@observable"}(),pn=" != "+qe;function hh(e,t,r){var n;if(typeof t===qe&&typeof r===Ge&&(r=t,t=void 0),typeof r!==Ge){if(typeof r!==qe)throw new Error("enhancer"+pn);return r(hh)(e,t)}if(typeof e!==qe)throw new Error("reducer"+pn);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(h){if(typeof h!==qe)throw new Error("Listener"+pn);var v=!0;return f(),s.push(h),function(){if(v){v=!1,f();var b=s.indexOf(h);s.splice(b,1)}}}function d(h){if(!ce(h))throw new Error("Act != obj");if(typeof h.type===Ge)throw new Error("ActType "+Ge);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,h)}finally{u=!1}for(var v=o=s,b=0;b<v.length;b++)(0,v[b])();return h}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(h){if(typeof h!==qe)throw new Error("next reducer"+pn);a=h,d({type:"@@redux/INIT"})}})[el]=function(){var h,v=c;return(h={subscribe:function(b){if(typeof b!="object")throw new TypeError("Observer != obj");function g(){b.next&&b.next(l())}return g(),{unsubscribe:v(g)}}})[el]=function(){return this},h},n}function BP(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+Ge}function qt(){var e=[].slice.call(arguments);return e.length===0?function(t){return t}:e.length===1?e[0]:e.reduce(function(t,r){return function(){return t(r.apply(void 0,[].slice.call(arguments)))}})}function zP(){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=qt.apply(void 0,i)(o.dispatch)})}}}var rt=mt+"anon_id",vt=mt+"user_id",Ft=mt+"user_traits",Xe="userId",Dt="anonymousId",kn=["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"],po=["name","EVENTS","config","loaded"],A=kn.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),tl=/^utm_/,rl=/^an_prop_/,nl=/^an_trait_/;function HP(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(rt,o.anonymousId),f||t(vt,o.userId),u.traits&&t(Ft,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,h=l.reduce(function(v,b){if(b.match(tl)||b.match(/^(d|g)clid/)){var g=b.replace(tl,"");v.campaign[g==="campaign"?"name":g]=i[b]}return b.match(rl)&&(v.props[b.replace(rl,"")]=i[b]),b.match(nl)&&(v.traits[b.replace(nl,"")]=i[b]),v},{campaign:{},props:{},traits:{}});r.dispatch(j({type:A.params,raw:i},h,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,h.traits)},0),d&&setTimeout(function(){return e.track(d,h.props)},0),Object.keys(h.campaign).length&&r.dispatch({type:A.campaign,campaign:h.campaign})}}return n(a)}}}}function KP(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===A.setItemEnd){if(r.key===rt)return j({},t,{anonymousId:r.value});if(r.key===vt)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[vt,rt,Ft].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function al(e){return{userId:e.getItem(vt),anonymousId:e.getItem(rt),traits:e.getItem(Ft)}}var mo=function(e){return mt+"TEMP"+mt+e};function GP(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&&([vt,Ft,rt].forEach(function(h){n(h)}),[Xe,Dt,"traits"].forEach(function(h){ar(mo(h))})),s.type===A.identify){a(rt)||r(rt,da());var c=a(vt),d=a(Ft)||{};c&&c!==u&&i.dispatch({type:A.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(vt,u),f&&r(Ft,j({},d,f))}return o(s)}}}}var br={};function il(e,t){br[e]&&ue(br[e])&&(br[e](t),delete br[e])}function vh(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 vh(e,t,r-10).then(n,a)})})}function WP(e){return{abort:e}}function ph(e,t,r){var n={},a=t(),i=e.getState(),o=i.plugins,s=i.queue,u=i.user;if(!i.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(c,d,h){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(h)):(c.requeue.push(d),c.requeueIndex.push(h)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],h=d.plugin,v=d.payload.type,b=a[h][v];if(b&&ue(b)){var g,T=function(p,S){return p===void 0&&(p={}),S===void 0&&(S={}),[Xe,Dt].reduce(function(O,_){return p.hasOwnProperty(_)&&S[_]&&S[_]!==p[_]&&(O[_]=S[_]),O},p)}(d.payload,u),I=n[T.meta.rid];if(!I&&(g=b({payload:T,config:o[h].config,instance:r,abort:WP}))&&ce(g)&&g.abort)return void(n[T.meta.rid]=!0);if(!I){var y=v+":"+h;e.dispatch(j({},T,{type:y,_:{called:y,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var Ti=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(Bt),h=t.exact.map(function(g){return g.pluginName});d&&(h=o.during.map(function(g){return g.pluginName}));var v=function(g,T){return function(I,y,p){var S=y.config,O=y.name,_=O+"."+I.type;p&&(_=p.event);var k=I.type.match(Bt)?function(M,F,X,L,x){return function(H,R){var Z=L?L.name:M,ee=R&&Lr(R)?R:X;if(L&&(!(ee=R&&Lr(R)?R:[M]).includes(M)||ee.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(ee)+" input valid");return j({},x,{abort:{reason:H,plugins:ee,caller:F,_:Z}})}}(O,_,T,p,I):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(I,_);return{payload:VP(I),instance:g,config:S||{},abort:k}}}(n,h),b=t.exact.reduce(function(g,T){var I=T.pluginName,y=T.methodName,p=!1;return y.match(/^initialize/)||y.match(/^reset/)||(p=!f[I].loaded),l.offline&&y.match(/^(page|track|identify)/)&&(p=!0),g[""+I]=p,g},{});return Promise.resolve(t.exact.reduce(function(g,T,I){try{var y=T.pluginName;return Promise.resolve(g).then(function(p){function S(){return Promise.resolve(p)}var O=function(){if(t.namespaced&&t.namespaced[y])return Promise.resolve(t.namespaced[y].reduce(function(_,k,M){try{return Promise.resolve(_).then(function(F){return k.method&&ue(k.method)?(function(H,R){var Z=dl(H);if(Z&&Z.name===R){var ee=dl(Z.method);throw new Error([R+" plugin is calling method "+H,"Plugins cant call self","Use "+Z.method+" "+(ee?"or "+ee.method:"")+" in "+R+" plugin insteadof "+H].join(`
6
+ `))}}(k.methodName,k.pluginName),Promise.resolve(k.method({payload:F,instance:n,abort:(X=F,L=y,x=k.pluginName,function(H,R){return j({},X,{abort:{reason:H,plugins:R||[L],caller:c,from:x||L}})}),config:cl(k.pluginName,f,i),plugins:f})).then(function(H){var R=ce(H)?H:{};return Promise.resolve(j({},F,R))})):F;var X,L,x})}catch(F){return Promise.reject(F)}},Promise.resolve(r))).then(function(_){p[y]=_});p[y]=r}();return O&&O.then?O.then(S):S()})}catch(p){return Promise.reject(p)}},Promise.resolve({}))).then(function(g){return Promise.resolve(t.exact.reduce(function(T,I,y){try{var p=t.exact.length===y+1,S=I.pluginName,O=i[S];return Promise.resolve(T).then(function(_){var k=g[S]?g[S]:{};if(d&&(k=_),Ei(k,S))return Pi({data:k,method:c,instance:n,pluginName:S,store:s}),Promise.resolve(_);if(Ei(_,S))return p&&Pi({data:_,method:c,instance:n,store:s}),Promise.resolve(_);if(b.hasOwnProperty(S)&&b[S]===!0)return s.dispatch({type:"queue",plugin:S,payload:k,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(_);var M=v(g[S],i[S]);return Promise.resolve(O[c]({abort:M.abort,payload:k,instance:n,config:cl(S,f,i),plugins:f})).then(function(F){var X=ce(F)?F:{},L=j({},_,X),x=g[S];if(Ei(x,S))Pi({data:x,method:c,instance:n,pluginName:S,store:s});else{var H=c+":"+S;(H.match(/:/g)||[]).length<2&&!c.match(ol)&&!c.match(sl)&&n.dispatch(j({},d?L:k,{type:H,_:{called:H,from:"submethod"}}))}return Promise.resolve(L)})})}catch(_){return Promise.reject(_)}},Promise.resolve(r))).then(function(T){if(!(c.match(Bt)||c.match(/^registerPlugin/)||c.match(sl)||c.match(ol)||c.match(/^params/)||c.match(/^userIdChanged/))){if(u.plugins.includes(c),T._&&T._.originalAction===c)return T;var I=j({},T,{_:{originalAction:T.type,called:T.type,from:"engineEnd"}});mh(T,t.exact.length)&&!c.match(/End$/)&&(I=j({},I,{type:T.type+"Aborted"})),s.dispatch(I)}return T})})}catch(g){return Promise.reject(g)}},Bt=/Start$/,ol=/^bootstrap/,sl=/^ready/;function Pi(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(j({},e.data,{type:r,_:{called:r,from:"abort"}}))}function cl(e,t,r){var n=t[e]||r[e];return n&&n.config?n.config:{}}function ul(e,t){return t.reduce(function(r,n){return n[e]?r.concat({methodName:e,pluginName:n.name,method:n[e]}):r},[])}function ll(e,t){var r=e.replace(Bt,""),n=t?":"+t:"";return[""+e+n,""+r+n,r+"End"+n]}function Ei(e,t){var r=e.abort;return!!r&&(r===!0||fl(r,t)||r&&fl(r.plugins,t))}function mh(e,t){var r=e.abort;if(!r)return!1;if(r===!0||tt(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 fl(e,t){return!(!e||!Lr(e))&&e.includes(t)}function dl(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function VP(e){return Object.keys(e).reduce(function(t,r){return r==="type"||(t[r]=ce(e[r])?Object.assign({},e[r]):e[r]),t},{})}function ZP(e,t,r){var n={};return function(a){return function(i){return function(o){try{var s,u=function(p){return s?p:i(c)},f=o.type,l=o.plugins,c=o;if(o.abort)return Promise.resolve(i(o));if(f===A.enablePlugin&&a.dispatch({type:A.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),f===A.disablePlugin&&setTimeout(function(){return il(o.meta.rid,{payload:o})},0),f===A.initializeEnd){var d=t(),h=Object.keys(d),v=h.filter(function(p){return l.includes(p)}).map(function(p){return d[p]}),b=[],g=[],T=o.disabled,I=v.map(function(p){var S=p.loaded,O=p.name,_=p.config;return vh(p,function(){return S({config:_})},1e4).then(function(k){return n[O]||(a.dispatch({type:A.pluginReadyType(O),name:O,events:Object.keys(p).filter(function(M){return!po.includes(M)})}),n[O]=!0),b=b.concat(O),p}).catch(function(k){if(k instanceof Error)throw new Error(k);return g=g.concat(k.name),k})});Promise.all(I).then(function(p){var S={plugins:b,failed:g,disabled:T};setTimeout(function(){h.length===I.length+T.length&&a.dispatch(j({},{type:A.ready},S))},0)})}var y=function(){if(f!==A.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return ph(a,t,e)},0),Promise.resolve(function(p,S,O,_,k){try{var M=ue(S)?S():S,F=p.type,X=F.replace(Bt,"");if(p._&&p._.called)return Promise.resolve(p);var L=O.getState(),x=(Z=M,(ee=L.plugins)===void 0&&(ee={}),(Fe=p.options)===void 0&&(Fe={}),Object.keys(Z).filter(function(m){var w=Fe.plugins||{};return kP(w[m])?w[m]:w.all!==!1&&(!ee[m]||ee[m].enabled!==!1)}).map(function(m){return Z[m]}));F===A.initializeStart&&p.fromEnable&&(x=Object.keys(L.plugins).filter(function(m){var w=L.plugins[m];return p.plugins.includes(m)&&!w.initialized}).map(function(m){return M[m]}));var H=x.map(function(m){return m.name}),R=function(m,w,E){var U=ll(m).map(function(N){return ul(N,w)});return w.reduce(function(N,D){var q=D.name,z=ll(m,q).map(function($){return ul($,w)}),J=z[0],B=z[1],pe=z[2];return J.length&&(N.beforeNS[q]=J),B.length&&(N.duringNS[q]=B),pe.length&&(N.afterNS[q]=pe),N},{before:U[0],beforeNS:{},during:U[1],duringNS:{},after:U[2],afterNS:{}})}(F,x);return Promise.resolve(Ti({action:p,data:{exact:R.before,namespaced:R.beforeNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(m){function w(){var N=function(){if(F.match(Bt))return Promise.resolve(Ti({action:j({},E,{type:X+"End"}),data:{exact:R.after,namespaced:R.afterNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(D){D.meta&&D.meta.hasCallback&&il(D.meta.rid,{payload:D})})}();return N&&N.then?N.then(function(){return m}):m}if(mh(m,H.length))return m;var E,U=function(){if(F!==X)return Promise.resolve(Ti({action:j({},m,{type:X}),data:{exact:R.during,namespaced:R.duringNS},state:L,allPlugins:M,allMatches:R,instance:O,store:_,EVENTS:k})).then(function(N){E=N});E=m}();return U&&U.then?U.then(w):w()})}catch(m){return Promise.reject(m)}var Z,ee,Fe}(o,t,e,a,r)).then(function(p){return s=1,i(p)})}();return Promise.resolve(y&&y.then?y.then(u):u(y))}catch(p){return Promise.reject(p)}}}}}function JP(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 YP=function(){var e=this;this.before=[],this.after=[],this.addMiddleware=function(t,r){e[r]=e[r].concat(t)},this.removeMiddleware=function(t,r){var n=e[r].findIndex(function(a){return a===t});n!==-1&&(e[r]=[].concat(e[r].slice(0,n),e[r].slice(n+1)))},this.dynamicMiddlewares=function(t){return function(r){return function(n){return function(a){var i={getState:r.getState,dispatch:function(s){return r.dispatch(s)}},o=e[t].map(function(s){return s(i)});return qt.apply(void 0,o)(n)(a)}}}}};function XP(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=hl(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=hl(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,vl(r.plugins,!1,t));case A.enablePlugin:return j({},t,vl(r.plugins,!0,t));default:return t}}}function hl(e,t){return e.substring(t.length+1,e.length)}function vl(e,t,r){return e.reduce(function(n,a){return n[a]=j({},r[a],{enabled:t}),n},r)}function gh(e){try{return JSON.parse(JSON.stringify(e))}catch{}return e}var qP={last:{},history:[]};function QP(e,t){e===void 0&&(e=qP);var r=t.options,n=t.meta;if(t.type===A.track){var a=gh(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 eE={actions:[]};function tE(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===A.identify?[t].concat(e.actions):e.actions.concat(t),j({},e,{actions:n});case"dequeue":return[];default:return e}}var yh=/#.*$/;function rE(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(yh,""):"")}var wh,bh,Sh,$h,nE=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 h=function(){if(te){for(var v,b=document.getElementsByTagName("link"),g=0;v=b[g];g++)if(v.getAttribute("rel")==="canonical")return v.getAttribute("href")}}();return h?h.match(/\?/)?h:h+d:window.location.href.replace(yh,"")}(f),c={title:r,url:l,path:rE(l),hash:u,search:f,width:o,height:s};return n&&n!==""&&(c.referrer=n),j({},c,e)},aE={last:{},history:[]};function iE(e,t){e===void 0&&(e=aE);var r=t.options;if(t.type===A.page){var n=gh(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}wh=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"}(),bh=te?document.referrer:null,Sh=UP(),$h=NP();var pl={initialized:!1,sessionId:da(),app:null,version:null,debug:!1,offline:!!te&&!navigator.onLine,os:{name:wh},userAgent:te?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.13"},timezone:$h,locale:Sh,campaign:{},referrer:bh};function oE(e,t){e===void 0&&(e=pl);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({},pl,e,{initialized:!0})}}var sE=["plugins","reducers","storage"];function cE(e,t,r){if(te){var n=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(a){n(a,t)})}}function uE(e){var t=cE.bind(null,"online offline",function(r){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(r){return t(!1)}}function Ih(){return yt("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 Xt[Yt].analytics.push(o.action||o),i(o)}})}}}function ml(e){return function(){return qt(qt.apply(null,arguments),Ih())}}function Oi(e){return e?fh(e)?e:[e]:[]}function gl(e,t,r){e===void 0&&(e={});var n,a,i=da();return t&&(br[i]=(n=t,a=function(o){for(var s,u=o||Array.prototype.slice.call(arguments),f=0;f<u.length;f++)if(ue(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 lE(e){e===void 0&&(e={});var t=e.reducers||{},r=e.initialUser||{},n=(e.plugins||[]).reduce(function(m,w){if(ue(w))return m.middlewares=m.middlewares.concat(w),m;if(w.NAMESPACE&&(w.name=w.NAMESPACE),!w.name)throw new Error("https://lytics.dev/errors/1");w.config||(w.config={});var E=w.EVENTS?Object.keys(w.EVENTS).map(function(D){return w.EVENTS[D]}):[];m.pluginEnabled[w.name]=!(w.enabled===!1||w.config.enabled===!1),delete w.enabled,w.methods&&(m.methods[w.name]=Object.keys(w.methods).reduce(function(D,q){var z;return D[q]=(z=w.methods[q],function(){for(var J=Array.prototype.slice.call(arguments),B=new Array(z.length),pe=0;pe<J.length;pe++)B[pe]=J[pe];return B[B.length]=S,z.apply({instance:S},B)}),D},{}),delete w.methods);var U=Object.keys(w).concat(E),N=new Set(m.events.concat(U));if(m.events=Array.from(N),m.pluginsArray=m.pluginsArray.concat(w),m.plugins[w.name])throw new Error(w.name+"AlreadyLoaded");return m.plugins[w.name]=w,m.plugins[w.name].loaded||(m.plugins[w.name].loaded=function(){return!0}),m},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),a=e.storage?e.storage:{getItem:gt,setItem:yt,removeItem:ar},i=function(m){return function(w,E,U){return E.getState("user")[w]||(U&&ce(U)&&U[w]?U[w]:al(m)[w]||gt(mo(w))||null)}}(a),o=n.plugins,s=n.events.filter(function(m){return!po.includes(m)}).sort(),u=new Set(s.concat(kn).filter(function(m){return!po.includes(m)})),f=Array.from(u).sort(),l=function(){return o},c=new YP,d=c.addMiddleware,h=c.removeMiddleware,v=c.dynamicMiddlewares,b=function(){throw new Error("Abort disabled inListener")},g=xP(),T=al(a),I=j({},T,r,g.an_uid?{userId:g.an_uid}:{},g.an_aid?{anonymousId:g.an_aid}:{});I.anonymousId||(I.anonymousId=da());var y=j({enable:function(m,w){return new Promise(function(E){R.dispatch({type:A.enablePlugin,plugins:Oi(m),_:{originalAction:A.enablePlugin}},E,[w])})},disable:function(m,w){return new Promise(function(E){R.dispatch({type:A.disablePlugin,plugins:Oi(m),_:{originalAction:A.disablePlugin}},E,[w])})}},n.methods),p=!1,S={identify:function(m,w,E,U){try{var N=tt(m)?m:null,D=ce(m)?m:w,q=E||{},z=S.user();yt(mo(Xe),N);var J=N||D.userId||i(Xe,S,D);return Promise.resolve(new Promise(function(B){R.dispatch(j({type:A.identifyStart,userId:J,traits:D||{},options:q,anonymousId:z.anonymousId},z.id&&z.id!==N&&{previousId:z.id}),B,[w,E,U])}))}catch(B){return Promise.reject(B)}},track:function(m,w,E,U){try{var N=ce(m)?m.event:m;if(!N||!tt(N))throw new Error("EventMissing");var D=ce(m)?m:w||{},q=ce(E)?E:{};return Promise.resolve(new Promise(function(z){R.dispatch({type:A.trackStart,event:N,properties:D,options:q,userId:i(Xe,S,w),anonymousId:i(Dt,S,w)},z,[w,E,U])}))}catch(z){return Promise.reject(z)}},page:function(m,w,E){try{var U=ce(m)?m:{},N=ce(w)?w:{};return Promise.resolve(new Promise(function(D){R.dispatch({type:A.pageStart,properties:nE(U),options:N,userId:i(Xe,S,U),anonymousId:i(Dt,S,U)},D,[m,w,E])}))}catch(D){return Promise.reject(D)}},user:function(m){if(m===Xe||m==="id")return i(Xe,S);if(m===Dt||m==="anonId")return i(Dt,S);var w=S.getState("user");return m?Xu(w,m):w},reset:function(m){return new Promise(function(w){R.dispatch({type:A.resetStart},w,m)})},ready:function(m){return p&&m({plugins:y,instance:S}),S.on(A.ready,function(w){m(w),p=!0})},on:function(m,w){if(!m||!ue(w))return!1;if(m===A.bootstrap)throw new Error(".on disabled for "+m);var E=/Start$|Start:/;if(m==="*"){var U=function(z){return function(J){return function(B){return B.type.match(E)&&w({payload:B,instance:S,plugins:o}),J(B)}}},N=function(z){return function(J){return function(B){return B.type.match(E)||w({payload:B,instance:S,plugins:o}),J(B)}}};return d(U,mn),d(N,gn),function(){h(U,mn),h(N,gn)}}var D=m.match(E)?mn:gn,q=function(z){return function(J){return function(B){return B.type===m&&w({payload:B,instance:S,plugins:o,abort:b}),J(B)}}};return d(q,D),function(){return h(q,D)}},once:function(m,w){if(!m||!ue(w))return!1;if(m===A.bootstrap)throw new Error(".once disabled for "+m);var E=S.on(m,function(U){w({payload:U.payload,instance:S,plugins:o,abort:b}),E()});return E},getState:function(m){var w=R.getState();return m?Xu(w,m):Object.assign({},w)},dispatch:function(m){var w=tt(m)?{type:m}:m;if(kn.includes(w.type))throw new Error("reserved action "+w.type);var E=j({},w,{_:j({originalAction:w.type},m._||{})});R.dispatch(E)},enablePlugin:y.enable,disablePlugin:y.disable,plugins:y,storage:{getItem:a.getItem,setItem:function(m,w,E){R.dispatch({type:A.setItemStart,key:m,value:w,options:E})},removeItem:function(m,w){R.dispatch({type:A.removeItemStart,key:m,options:w})}},setAnonymousId:function(m,w){S.storage.setItem(rt,m,w)},events:{core:kn,plugins:s}},O=n.middlewares.concat([function(m){return function(w){return function(E){return E.meta||(E.meta=gl()),w(E)}}},v(mn),ZP(S,l,{all:f,plugins:s}),JP(a),HP(S),GP(S),v(gn)]),_={context:oE,user:KP(a),page:iE,track:QP,plugins:XP(l),queue:tE},k=qt,M=qt;if(te&&e.debug){var F=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;F&&(k=F({trace:!0,traceLimit:25})),M=function(){return arguments.length===0?Ih():ce(typeof arguments[0])?ml():ml().apply(null,arguments)}}var X,L=function(m){return Object.keys(m).reduce(function(w,E){return sE.includes(E)||(w[E]=m[E]),w},{})}(e),x=n.pluginsArray.reduce(function(m,w){var E=w.name,U=w.config,N=w.loaded,D=n.pluginEnabled[E];return m[E]={enabled:D,initialized:!!D&&!w.initialize,loaded:!!N({config:U}),config:U},m},{}),H={context:L,user:I,plugins:x},R=hh(function(m){for(var w=Object.keys(m),E={},U=0;U<w.length;U++){var N=w[U];typeof m[N]===qe&&(E[N]=m[N])}var D,q=Object.keys(E);try{(function(z){Object.keys(z).forEach(function(J){var B=z[J];if(typeof B(void 0,{type:"@@redux/INIT"})===Ge||typeof B(void 0,{type:FP})===Ge)throw new Error("reducer "+J+" "+Ge)})})(E)}catch(z){D=z}return function(z,J){if(z===void 0&&(z={}),D)throw D;for(var B=!1,pe={},$=0;$<q.length;$++){var P=q[$],C=z[P],W=(0,E[P])(C,J);if(typeof W===Ge){var V=BP(P,J);throw new Error(V)}pe[P]=W,B=B||W!==C}return B?pe:z}}(j({},_,t)),H,M(k(zP.apply(void 0,O))));R.dispatch=(X=R.dispatch,function(m,w,E){var U=j({},m,{meta:gl(m.meta,w,Oi(E))});return X.apply(null,[U])});var Z=Object.keys(o);R.dispatch({type:A.bootstrap,plugins:Z,config:L,params:g,user:I,initialUser:r,persistedUser:T});var ee=Z.filter(function(m){return n.pluginEnabled[m]}),Fe=Z.filter(function(m){return!n.pluginEnabled[m]});return R.dispatch({type:A.registerPlugins,plugins:Z,enabled:n.pluginEnabled}),n.pluginsArray.map(function(m,w){var E=m.bootstrap,U=m.config,N=m.name;E&&ue(E)&&E({instance:S,config:U,payload:m}),R.dispatch({type:A.registerPluginType(N),name:N,enabled:n.pluginEnabled[N],plugin:m}),n.pluginsArray.length===w+1&&R.dispatch({type:A.initializeStart,plugins:ee,disabled:Fe})}),uE(function(m){R.dispatch({type:m?A.offline:A.online})}),function(m,w,E){setInterval(function(){return ph(m,w,E)},3e3)}(R,l,S),S}var mn="before",gn="after",kr="cookie",lt=Eh(),Th=ha,fE=ha;function Ph(e){return lt?ha(e,"",-1):ar(e)}function Eh(){if(lt!==void 0)return lt;var e="cookiecookie";try{ha(e,e),lt=document.cookie.indexOf(e)!==-1,Ph(e)}catch{lt=!1}return lt}function ha(e,t,r,n,a,i){if(typeof window<"u"){var o=arguments.length>1;return lt===!1&&(o?yt(e,t):gt(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",dE=fs.bind(null,"localStorage");ir("localStorage","getItem",gt);ir("localStorage","setItem",yt);ir("localStorage","removeItem",ar);var Rr="sessionStorage",hE=fs.bind(null,"sessionStorage");ir("sessionStorage","getItem",gt);ir("sessionStorage","setItem",yt);ir("sessionStorage","removeItem",ar);function zt(e){var t=e;try{if((t=JSON.parse(e))==="true")return!0;if(t==="false")return!1;if(ce(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch{}if(t!==null&&t!=="")return t}var vE=dE(),pE=hE(),mE=Eh();function Oh(e,t){if(e){var r=ds(t),n=!ms(r),a=hs(r)?zt(localStorage.getItem(e)):void 0;if(n&&!xt(a))return a;var i=vs(r)?zt(Th(e)):void 0;if(n&&i)return i;var o=ps(r)?zt(sessionStorage.getItem(e)):void 0;if(n&&o)return o;var s=gt(e);return n?s:{localStorage:a,sessionStorage:o,cookie:i,global:s}}}function gE(e,t,r){if(e&&!xt(t)){var n={},a=ds(r),i=JSON.stringify(t),o=!ms(a);return hs(a)&&(n[_r]=yn(_r,t,zt(localStorage.getItem(e))),localStorage.setItem(e,i),o)?n[_r]:vs(a)&&(n[kr]=yn(kr,t,zt(Th(e))),fE(e,i),o)?n[kr]:ps(a)&&(n[Rr]=yn(Rr,t,zt(sessionStorage.getItem(e))),sessionStorage.setItem(e,i),o)?n[Rr]:(n[Or]=yn(Or,t,gt(e)),yt(e,t),o?n[Or]:n)}}function yE(e,t){if(e){var r=ds(t),n=Oh(e,ch),a={};return!xt(n.localStorage)&&hs(r)&&(localStorage.removeItem(e),a[_r]=n.localStorage),!xt(n.cookie)&&vs(r)&&(Ph(e),a[kr]=n.cookie),!xt(n.sessionStorage)&&ps(r)&&(sessionStorage.removeItem(e),a[Rr]=n.sessionStorage),!xt(n.global)&&va(r,Or)&&(ar(e),a[Or]=n.global),a}}function ds(e){return e?tt(e)?e:e.storage:sh}function hs(e){return vE&&va(e,_r)}function vs(e){return mE&&va(e,kr)}function ps(e){return pE&&va(e,Rr)}function ms(e){return e===ch||e==="all"}function va(e,t){return e===sh||e===t||ms(e)}function yn(e,t,r){return{location:e,current:t,previous:r}}var wE={setItem:gE,getItem:Oh,removeItem:yE};function bE(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function yl(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 wl(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?yl(Object(r),!0).forEach(function(n){bE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):yl(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function SE(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t={storage:wE};return lE(wl(wl({},t),e))}function $E(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 IE(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=PE(f);return a!==l&&(a=l,setTimeout(()=>e(f),0)),s.apply(r,u)}})}function TE(e,t){const r=e.indexOf(t);return r>-1?e.slice(0,r):e}function PE(e){return["#","?"].forEach(t=>e=TE(e,t)),e}function EE(){IE(()=>{He.page()})}function OE(e){if(e===void 0&&(e={}),!te)return vo;var t=Sl(),r=go(),n=bl(),a=wn(n,t),i=wn(r,t),o=[],s=[],u=[],f=n,l=a,c=i,d=Object.keys(e);if(!d.length)return vo;var h=d.map(function(b){return Number(b)}),v=MP(function(){var b=Sl(),g=function(L,x){return x.map(function(H){return H===100?L-5:L*(H/100)})}(b,h),T=go(),I=bl(),y=wn(I,b),p=wn(T,b);if(l=y>l?y:l,c=p<c?p:c,!(o.length>=h.length)){var S=f===I,O="up";S?O="initial":f<=I&&(O="down");var _=g,k=h;(O==="up"||S)&&(_=g.slice().reverse(),k=h.slice().reverse());var M=k.reduce(function(L,x,H){var R=_[H];return u.includes(x)&&I<=R&&(u=u.filter(function(Z){return Z!==x}),L.singleFunction=x),O==="down"&&!o.includes(x)&&I>=R&&x>i?(s.push(x),L.callbacks=L.callbacks.concat(x),L):O==="up"&&!o.includes(x)&&I<=R&&x<=y?(L.foundFunc=[x],L):(S&&I>=R&&L.foundFunc.length===0&&(L.foundFunc=[x]),!s.includes(x)&&I>=R&&(s.push(x),L.singleFunction?u.push(x):L.singleFunction=x),L)},{foundFunc:[],singleFunction:null,callbacks:[],direction:O});if(f=I,O==="down"&&M.callbacks&&M.callbacks.forEach(function(L){ue(e[L])&&(e[L]({trigger:L,direction:O,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(L))}),M.singleFunction){var F=M.singleFunction,X=M.direction;ue(e[F])&&e[F]({trigger:F,direction:X,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(F)}}},500);return window.addEventListener("scroll",v),function(){return window.removeEventListener("scroll",v)}}function go(){return te?document.body.scrollTop||document.documentElement.scrollTop:0}function kE(){return te?window.innerHeight||document.documentElement.clientHeight:0}function bl(){return Math.round(go()+kE())}function Sl(){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 wn(e,t){return Math.round(e/t*100)}var $l="EventListener";function _E(e){return function(t,r,n,a){var i=n||vo,o=a||!1;if(!te)return i;var s=Kn(r),u=Kn(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"+$l:"remove"+$l,h=0;h<u.length;h++){var v=u[h];f[h]=c?o&&o.once?RE(i):i:f[h]||i;for(var b=0;b<s.length;b++)v[d]?v["on"+s[b]]=c?f[h]:null:v[d](s[b],f[h],o)}return l.bind(null,!c)}(e)}}function Kn(e,t){if(tt(e))return t?Kn(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=LP(e);return t?i.map(function(o){return tt(o)?Kn(o,!0):o}).flat():i}function RE(e,t){var r;return function(){return e&&(r=e.apply(this,arguments),e=null),r}}var ki=_E("Event");function kh(e,t){return te&&ue(window[e])?(r=window[e],n=t,(a=window)===void 0&&(a=null),ue(r)?function(){r.apply(a,arguments),n.apply(a,arguments)}:n):window[e]=t;var r,n,a}kh.bind(null,"onerror");kh.bind(null,"onload");var _h=typeof window>"u",Il="hidden";function CE(e){if(_h)return!1;var t=AE(),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 AE(){var e=["webkit","moz","ms","o"];return _h||Il in document?Il:e.reduce(function(t,r){var n=r+"Hidden";return!t&&n in document?n:t},null)}var jE=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function LE(e,t){t===void 0&&(t={});var r=function(o,s){var u=this,f=!1;return function(l){f||(o.call(u,l),f=!0,setTimeout(function(){return f=!1},s))}}(e,t.throttle||1e4),n=[];function a(){var o=CE(function(s){s||r({type:"tabVisible"})});return n=[o].concat(jE.map(function(s){return ki(document,s,r)})).concat(ki(window,"load",r)).concat(ki(window,"scroll",r,{capture:!0,passive:!0})),i}function i(){n.map(function(o){return o()})}return a(),function(){return i(),a}}function UE(e){var t,r,n=e.onIdle,a=e.onWakeUp,i=e.onHeartbeat,o=e.timeout,s=o===void 0?1e4:o,u=e.throttle,f=u===void 0?2e3:u,l=!1,c=!1,d=new Date,h=function(){return clearTimeout(t)};function v(g){h(),i&&!l&&i(mr(d),g),a&&l&&(l=!1,a(mr(r),g),d=new Date),t=setTimeout(function(){l=!0,n&&(r=new Date,n(mr(d),g))},s)}var b=LE(v,{throttle:f});return{disable:function(){c=!0,l=!1,h();var g=b();return function(){return c=!1,d=new Date,v({type:"load"}),g()}},getStatus:function(){return{isIdle:l,isDisabled:c,active:l?0:mr(d,c),idle:l?mr(r,c):0}}}}function mr(e,t){return t?0:Math.round((new Date-e)/1e3)}const Tl=5e3;class NE{constructor(t){me(this,"element");me(this,"isInViewport",!1);me(this,"isAwake",!1);me(this,"isFlushing");me(this,"observer");me(this,"lastEventAt",Date.now());me(this,"registeredView",!1);me(this,"viewCallback");me(this,"activeDurationCallback");me(this,"idleDurationCallback");me(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),UE({onIdle:r=>this.handleAwake(!1,r),onWakeUp:r=>this.handleAwake(!0,r),timeout:Tl}),OE({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*Tl: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 Pl="sesamy_session_id";function xE(){let e=sessionStorage.getItem(Pl);return e||(e=Math.random().toString(36).slice(2,9),sessionStorage.setItem(Pl,e)),e}let Rh=!1,yo,El,Gn;const Ch=new Map;function DE({clientId:e,enabled:t=!0,environment:r}){if(yo=e,El=t,Gn=`${Ke("logs",r)}/events`,!El)return;window.addEventListener("beforeunload",()=>{jh.forEach((a,i)=>{a.bind(i)()}),FE()}),window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&Ch.forEach((a,i)=>{a.bind(i)()})}),EE();const n=new NE({element:document.body,viewCallback:()=>{He.page()},activeDurationCallback:(a,i,o)=>{He.track("activeDuration",{duration:a,durationStart:o,flushing:i})},idleDurationCallback:(a,i,o)=>{He.track("idleDuration",{duration:a,durationStart:o,flushing:i})},scrollCallback:a=>{He.track("scroll",{scroll:a.scrollMax})}});BE(document.body,()=>{n.flush()}),zE(document.body,()=>{n.handleVisibilityChange()}),window.addEventListener(ve.AUTHENTICATED,async a=>{const i=a;await He.identify(i.detail.sub)}),window.addEventListener(ve.LOGOUT,async()=>{await He.track("logout",{}),gs.flush(),await He.reset()})}function Ah(e){return JSON.stringify(e.map(t=>({...t,clientId:yo,requestId:Math.random().toString(36).slice(2,9),sessionId:xE(),timestamp:new Date().toISOString(),version:ls,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:oh,userAgent:navigator.userAgent,clientId:yo}})))}const gs=$E(async e=>{if(e.length>0){const t=Ah(e);Rh?navigator.sendBeacon(Gn,t):(await fetch(Gn,{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(Gn,Ah([r]))}else gs.push(e)}const He=SE({app:oh,version:ls,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 ME(e,t){He.track(e,t)}function FE(){return Rh=!0,gs.flush()}const jh=new Map;function BE(e,t){jh.set(e,t)}function zE(e,t){Ch.set(e,t)}const HE=["AdHeader","AdContainer","AD_Top","homead","ad-lead"];function KE(){return new Promise(e=>{const t=HE.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 GE(){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}}let ke={article:{selector:"article"},image:{selector:"img",attribute:"src"},title:{selector:"h1",attribute:"textContent"},excerpt:{selector:"p",attribute:"textContent"},price:{selector:"article",attribute:"data-price"},currency:{selector:"article",attribute:"data-currency"},url:{selector:"link",attribute:"href"},id:{selector:"article",attribute:"data-id"}};function WE(e){var t;ke={...ke,...(t=e.content)==null?void 0:t.article}}function VE(e,t){const{selector:r}=t;return r===ke.article.selector?e:e.querySelector(r)}function ZE(e,t){if(e)return t.attribute?t.attribute==="textContent"?e.textContent??void 0:e.getAttribute(t.attribute)??void 0:e.textContent??void 0}function JE(){const e=document.querySelectorAll(ke.article.selector);return Array.from(e).map(t=>{const r={element:t},n=(a,i,o)=>{const s=VE(t,i);if(s){const u=ZE(s,i);u!==void 0&&(r[a]=o?o(u):u)}};return n("title",ke.title),n("excerpt",ke.excerpt),n("image",ke.image),n("price",ke.price,a=>parseFloat(a)),n("currency",ke.currency),n("url",ke.url),n("id",ke.id),r})}function YE(e){const{autoOnboardProduct:t,cancelContract:r,createCheckout:n,deleteTag:a,deleteTally:i,deleteUserMetadata:o,generateLink:s,getBill:u,getBills:f,getCheckout:l,getContract:c,getContracts:d,getEntitlement:h,getEntitlementAccess:v,getEntitlements:b,getFulfillments:g,getPaywall:T,getPaymentIssues:I,getProfile:y,getProduct:p,getSubscriptions:S,getTags:O,getTally:_,getTallies:k,getTransaction:M,getTransactions:F,getUserMetadata:X,hasAccess:L,isSpotifyLinked:x,linkSpotify:H,listUserMetadata:R,openHostedAccountPage:Z,pushTally:ee,setTag:Fe,setUserMetadata:m,unlinkSpotify:w,updateCheckout:E,updateProfile:U}=TP(e),N={analytics:{track:ME},attribution:{get:us,set:IP},auth:{getUser:y,isAuthenticated:jr,loginWithRedirect:ss,logout:qd,setToken:eh},bills:{get:u,list:f},browser:{detectAdblock:KE,isInAppBrowser:GE},checkouts:{create:n,get:l,update:E},clearCache:_e,content:{list:JE},contracts:{cancel:r,get:c,list:d},entitlements:{access:v,get:h,hasAccess:L,list:b,signedLinks:cs},fulfillments:{list:g},generateLink:s,getPaymentIssues:I,getVersion:XE,log:he,paywalls:{get:T},products:{autoOnboard:t,get:p,linkSpotify:H},profile:{get:y,isSpotifyLinked:x,openHostedAccountPage:Z,unlinkSpotify:w,update:U},subscriptions:{list:S},tags:{delete:a,list:O,set:Fe},tallies:{delete:i,get:_,list:k,push:ee},transactions:{get:M,list:F},userMetadata:{delete:o,get:X,list:R,set:m}};return e.namespace&&(window[e.namespace]=N),N}function XE(){return ls}function qE(e,t){e.style.position="relative",e.style.height="200px",e.style.overflow="hidden";let n=0;const a=Array.from(e.children);for(const o of a){const s=o.offsetHeight;n+s>200?o.remove():n+=s}const i=document.createElement("style");i.innerHTML=`
7
7
  ${t.selector}::before {
8
8
  content: '';
9
9
  position: absolute;
@@ -221,6 +221,24 @@ export type Profile = {
221
221
  billingAddress?: Address$1;
222
222
  deliveryAddress?: Address$1;
223
223
  };
224
+ export type Bill = {
225
+ id: string;
226
+ items: [
227
+ {
228
+ sku: string;
229
+ title: string;
230
+ purchaseOption: string;
231
+ }
232
+ ];
233
+ currency: string;
234
+ price: number;
235
+ receiptUrl: string;
236
+ paymentMethod: string;
237
+ paymentProvider: string;
238
+ status: string;
239
+ createdAt: string;
240
+ updatedAt: string;
241
+ };
224
242
  export type Contract = {
225
243
  id: string;
226
244
  name: string;
@@ -242,23 +260,14 @@ export type Contract = {
242
260
  }[];
243
261
  status: "DRAFT" | "PENDING" | "FORTHCOMING" | "ACTIVE" | "OVERDUE" | "EXPIRED" | "CLOSED" | "CANCELED" | "DELETED" | "VOIDED";
244
262
  };
245
- export type Bill = {
263
+ export type Access = {
246
264
  id: string;
247
- items: [
248
- {
249
- sku: string;
250
- title: string;
251
- purchaseOption: string;
252
- }
253
- ];
254
- currency: string;
255
- price: number;
256
- receiptUrl: string;
257
- paymentMethod: string;
258
- paymentProvider: string;
259
- status: string;
260
- createdAt: string;
261
- updatedAt: string;
265
+ url: string;
266
+ title?: string;
267
+ filename?: string;
268
+ mimeType?: string;
269
+ type?: string;
270
+ token?: string;
262
271
  };
263
272
  export type TallyValue = string | number;
264
273
  export type Tally = {
@@ -281,15 +290,6 @@ export type Product = {
281
290
  createdAt: string;
282
291
  updatedAt: string;
283
292
  };
284
- export type Access = {
285
- id: string;
286
- url: string;
287
- title?: string;
288
- filename?: string;
289
- mimeType?: string;
290
- type?: string;
291
- token?: string;
292
- };
293
293
  type Product$1 = {
294
294
  name: string;
295
295
  description: string;
@@ -387,6 +387,13 @@ export interface GetEntitlementsOptions {
387
387
  waitForEntitlementAfter?: Date;
388
388
  }
389
389
  declare function registerAPI(config: ApiConfig): {
390
+ analytics: {
391
+ track: typeof track;
392
+ };
393
+ attribution: {
394
+ get: typeof getAttribution;
395
+ set: typeof setAttribution;
396
+ };
390
397
  auth: {
391
398
  getUser: () => Promise<Profile | null>;
392
399
  isAuthenticated: typeof isAuthenticated;
@@ -394,63 +401,67 @@ declare function registerAPI(config: ApiConfig): {
394
401
  logout: typeof logout;
395
402
  setToken: typeof setToken;
396
403
  };
397
- attribution: {
398
- get: typeof getAttribution;
399
- set: typeof setAttribution;
404
+ bills: {
405
+ get: (billId: string) => Promise<Bill | undefined>;
406
+ list: () => Promise<Bill[]>;
407
+ };
408
+ browser: {
409
+ detectAdblock: typeof detectAdblock;
410
+ isInAppBrowser: typeof isInAppBrowser;
400
411
  };
401
412
  checkouts: {
402
- get: (id: string) => Promise<unknown>;
403
413
  create: (params: CreateCheckoutParams) => Promise<Checkout>;
414
+ get: (id: string) => Promise<unknown>;
404
415
  update: (id: string, params: Partial<CreateCheckoutParams>) => Promise<unknown>;
405
416
  };
406
- profile: {
407
- get: () => Promise<Profile | null>;
408
- update: (profile: Partial<Profile>) => Promise<boolean>;
409
- openHostedAccountPage: () => Promise<void>;
410
- isSpotifyLinked: () => Promise<boolean>;
411
- unlinkSpotify: () => Promise<boolean>;
412
- };
413
- analytics: {
414
- track: typeof track;
415
- };
417
+ clearCache: typeof clearCache;
416
418
  content: {
417
419
  list: typeof listContent;
418
420
  };
419
- tags: {
420
- list: () => Promise<string[]>;
421
- set: (id: string) => Promise<boolean>;
422
- delete: (id: string) => Promise<boolean>;
421
+ contracts: {
422
+ cancel: (contractId: string) => Promise<boolean>;
423
+ get: (contractId: string) => Promise<Contract | undefined>;
424
+ list: () => Promise<Contract[]>;
423
425
  };
424
426
  entitlements: {
427
+ access: (entitlementId: string) => Promise<Access>;
425
428
  get: (entitlementId: string) => Promise<Entitlement | undefined>;
426
- list: (params?: GetEntitlementsOptions) => Promise<Entitlement[]>;
427
429
  hasAccess: (itemSrc: string, passes?: string[]) => Promise<Entitlement | undefined>;
428
- access: (entitlementId: string) => Promise<Access>;
430
+ list: (params?: GetEntitlementsOptions) => Promise<Entitlement[]>;
429
431
  signedLinks: typeof getSignedLinks;
430
432
  };
431
433
  fulfillments: {
432
434
  list: (sku: string) => Promise<Fulfillment[]>;
433
435
  };
434
- contracts: {
435
- get: (contractId: string) => Promise<Contract | undefined>;
436
- list: () => Promise<Contract[]>;
437
- cancel: (contractId: string) => Promise<boolean>;
436
+ generateLink: (params: GenerateAccountLink | GenerateConsumeLink | GenerateCheckoutLink) => Promise<string>;
437
+ getPaymentIssues: () => Promise<PaymentIssues[]>;
438
+ getVersion: typeof getVersion;
439
+ log: typeof log;
440
+ paywalls: {
441
+ get: (paywallId: string) => Promise<unknown>;
438
442
  };
439
- bills: {
440
- get: (billId: string) => Promise<Bill | undefined>;
441
- list: () => Promise<Bill[]>;
443
+ products: {
444
+ autoOnboard: (sku: string) => Promise<Entitlement[]>;
445
+ get: (sku: string) => Promise<Product>;
446
+ linkSpotify: (sku: string) => Promise<void>;
442
447
  };
443
- userMetadata: {
444
- get: (id: string) => Promise<string | number>;
445
- list: () => Promise<{
446
- [id: string]: string | number;
447
- }>;
448
- set: (id: string, value: string | number) => Promise<{
449
- [id: string]: string | number;
450
- }[]>;
448
+ profile: {
449
+ get: () => Promise<Profile | null>;
450
+ isSpotifyLinked: () => Promise<boolean>;
451
+ openHostedAccountPage: () => Promise<void>;
452
+ unlinkSpotify: () => Promise<boolean>;
453
+ update: (profile: Partial<Profile>) => Promise<boolean>;
454
+ };
455
+ subscriptions: {
456
+ list: () => Promise<Subscription[]>;
457
+ };
458
+ tags: {
451
459
  delete: (id: string) => Promise<boolean>;
460
+ list: () => Promise<string[]>;
461
+ set: (id: string) => Promise<boolean>;
452
462
  };
453
463
  tallies: {
464
+ delete: (id: string) => Promise<boolean>;
454
465
  get: (id: string) => Promise<TallyValue>;
455
466
  list: () => Promise<{
456
467
  [id: string]: TallyValue;
@@ -458,32 +469,21 @@ declare function registerAPI(config: ApiConfig): {
458
469
  push: (id: string, tally: Tally) => Promise<{
459
470
  [id: string]: TallyValue;
460
471
  }[]>;
461
- delete: (id: string) => Promise<boolean>;
462
- };
463
- subscriptions: {
464
- list: () => Promise<Subscription[]>;
465
472
  };
466
473
  transactions: {
467
474
  get: (transactionsId: string) => Promise<Transaction | undefined>;
468
475
  list: () => Promise<Transaction[]>;
469
476
  };
470
- products: {
471
- get: (sku: string) => Promise<Product>;
472
- autoOnboard: (sku: string) => Promise<Entitlement[]>;
473
- linkSpotify: (sku: string) => Promise<void>;
474
- };
475
- paywalls: {
476
- get: (paywallId: string) => Promise<unknown>;
477
- };
478
- browser: {
479
- detectAdblock: typeof detectAdblock;
480
- isInAppBrowser: typeof isInAppBrowser;
477
+ userMetadata: {
478
+ delete: (id: string) => Promise<boolean>;
479
+ get: (id: string) => Promise<string | number>;
480
+ list: () => Promise<{
481
+ [id: string]: string | number;
482
+ }>;
483
+ set: (id: string, value: string | number) => Promise<{
484
+ [id: string]: string | number;
485
+ }[]>;
481
486
  };
482
- getVersion: typeof getVersion;
483
- getPaymentIssues: () => Promise<PaymentIssues[]>;
484
- generateLink: (params: GenerateAccountLink | GenerateConsumeLink | GenerateCheckoutLink) => Promise<string>;
485
- clearCache: typeof clearCache;
486
- log: typeof log;
487
487
  };
488
488
  declare function getVersion(): string;
489
489
  export type SesamyAPI = ReturnType<typeof registerAPI>;