@sesamy/sesamy-js 1.19.7 → 1.19.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/sesamy-js.cjs +1 -1
- package/dist/sesamy-js.d.ts +86 -44
- package/dist/sesamy-js.iife.js +2 -2
- package/dist/sesamy-js.mjs +36 -17
- package/package.json +1 -1
package/dist/sesamy-js.cjs
CHANGED
|
@@ -3,4 +3,4 @@
|
|
|
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",!Ou(r))throw new Error(`Invalid cache location "${r}"`);n=Ou(r)()}this.httpTimeoutMs=t.httpTimeoutInSeconds?1e3*t.httpTimeoutInSeconds:1e4,this.cookieStorage=t.legacySameSiteCookie===!1?Pt:dT,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:vT;var i;this.scope=rn("openid",this.options.authorizationParams.scope,this.options.useRefreshTokens?"offline_access":""),this.transactionManager=new cT(a,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||yd,this.cacheManager=new sT(n,n.allKeys?void 0:new mT(n,this.options.clientId),this.nowProvider),this.domainUrl=(i=this.options.domain,/^https?:\/\//.test(i)?i:`https://${i}`),this.tokenIssuer=((o,s)=>o?o.startsWith("https://")?o:`https://${o}/`:`${s}/`)(this.options.issuer,this.domainUrl),typeof window<"u"&&window.Worker&&this.options.useRefreshTokens&&r==="memory"&&(this.options.workerUrl?this.worker=new Worker(this.options.workerUrl):this.worker=new pT)}_url(t){const r=encodeURIComponent(btoa(JSON.stringify(this.options.auth0Client||gd)));return`${this.domainUrl}${t}&auth0Client=${r}`}_authorizeUrl(t){return this._url(`/authorize?${qi(t)}`)}async _verifyIdToken(t,r,n){const a=await this.nowProvider();return lT({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=$u(li()),i=$u(li()),o=li(),s=(l=>{const c=new Uint8Array(l);return(d=>{const v={"+":"-","/":"_","=":""};return d.replace(/[+/=]/g,p=>v[p])})(window.btoa(String.fromCharCode(...Array.from(c))))})(await(async l=>await gn().subtle.digest({name:"SHA-256"},new TextEncoder().encode(l)))(o)),u=((l,c,d,v,p,S,g,T)=>Object.assign(Object.assign(Object.assign({client_id:l.clientId},l.authorizationParams),d),{scope:rn(c,d.scope),response_type:"code",response_mode:T||"query",state:v,nonce:p,redirect_uri:g||l.authorizationParams.redirect_uri,code_challenge:S,code_challenge_method:"S256"}))(this.options,this.scope,t,a,i,s,t.redirect_uri||this.options.authorizationParams.redirect_uri||n,r==null?void 0:r.response_mode),f=this._authorizeUrl(u);return{nonce:i,code_verifier:o,scope:u.scope,audience:u.audience||"default",redirect_uri:u.redirect_uri,state:a,url:f}}async loginWithPopup(t,r){var n;if(t=t||{},!(r=r||{}).popup&&(r.popup=(s=>{const u=window.screenX+(window.innerWidth-400)/2,f=window.screenY+(window.innerHeight-600)/2;return window.open(s,"auth0:authorize:popup",`left=${u},top=${f},width=400,height=600,resizable,scrollbars=yes,status=1`)})(""),!r.popup))throw new Error("Unable to open a popup for loginWithPopup - window.open returned `null`");const a=await this._prepareAuthorizeUrl(t.authorizationParams||{},{response_mode:"web_message"},window.location.origin);r.popup.location.href=a.url;const i=await(s=>new Promise((u,f)=>{let l;const c=setInterval(()=>{s.popup&&s.popup.closed&&(clearInterval(c),clearTimeout(d),window.removeEventListener("message",l,!1),f(new Q0(s.popup)))},1e3),d=setTimeout(()=>{clearInterval(c),f(new q0(s.popup)),window.removeEventListener("message",l,!1)},1e3*(s.timeoutInSeconds||60));l=function(v){if(v.data&&v.data.type==="authorization_response"){if(clearTimeout(d),clearInterval(c),window.removeEventListener("message",l,!1),s.popup.close(),v.data.response.error)return f(se.fromPayload(v.data.response));u(v.data.response)}},window.addEventListener("message",l)}))(Object.assign(Object.assign({},r),{timeoutInSeconds:r.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}));if(a.state!==i.state)throw new se("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=ku(t),{openUrl:a,fragment:i,appState:o}=n,s=Re(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=Re(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 se("missing_transaction","Invalid state");if(this.transactionManager.remove(),i)throw new X0(i,o||i,n,s.appState);if(!s.code_verifier||s.state&&s.state!==n)throw new se("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:rn(this.scope,(r=t.authorizationParams)===null||r===void 0?void 0:r.scope)})}),a=await((i,o)=>{let s=di[o];return s||(s=i().finally(()=>{delete di[o],s=null}),di[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=Re(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})(()=>vi.acquireLock("auth0.lock.getTokenSilently",5e3),10))throw new Xi;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 vi.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:rn(this.scope,(n=t.authorizationParams)===null||n===void 0?void 0:n.scope)})});return r=Object.assign(Object.assign({},Y0),r),await this.loginWithPopup(a,r),(await this.cacheManager.get(new it({scope:a.authorizationParams.scope,audience:a.authorizationParams.audience||"default",clientId:this.options.clientId}))).access_token}async isAuthenticated(){return!!await this.getUser()}_buildLogoutUrl(t){t.clientId!==null?t.clientId=t.clientId||this.options.clientId:delete t.clientId;const r=t.logoutParams||{},{federated:n}=r,a=Re(r,["federated"]),i=n?"&federated":"";return this._url(`/v2/logout?${qi(Object.assign({clientId:t.clientId},a))}`)+i}async logout(t={}){const r=ku(t),{openUrl:n}=r,a=Re(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 se("login_required","The application is running in a Cross-Origin Isolated context, silently retrieving a token without refresh token is not possible.");const c=t.timeoutInSeconds||this.options.authorizeTimeoutInSeconds,d=await((p,S,g=60)=>new Promise((T,I)=>{const b=window.document.createElement("iframe");b.setAttribute("width","0"),b.setAttribute("height","0"),b.style.display="none";const h=()=>{window.document.body.contains(b)&&(window.document.body.removeChild(b),window.removeEventListener("message",$,!1))};let $;const k=setTimeout(()=>{I(new Xi),h()},1e3*g);$=function(_){if(_.origin!=S||!_.data||_.data.type!=="authorization_response")return;const C=_.source;C&&C.close(),_.data.response.error?I(se.fromPayload(_.data.response)):T(_.data.response),clearTimeout(k),window.removeEventListener("message",$,!1),setTimeout(h,2e3)},window.addEventListener("message",$,!1),window.document.body.appendChild(b),b.setAttribute("src",p)}))(a,this.domainUrl,c);if(i!==d.state)throw new se("state_mismatch","Invalid state");const v=await this._requestToken(Object.assign(Object.assign({},t.authorizationParams),{code_verifier:s,code:d.code,grant_type:"authorization_code",redirect_uri:u,timeout:t.authorizationParams.timeout||this.httpTimeoutMs}),{nonceIn:o,organization:r.organization});return Object.assign(Object.assign({},v),{scope:f,oauthTokenScope:v.scope,audience:l})}catch(c){throw c.error==="login_required"&&this.logout({openUrl:!1}),c}}async _getTokenUsingRefreshToken(t){const r=await this.cacheManager.get(new it({scope:t.authorizationParams.scope,audience:t.authorizationParams.audience||"default",clientId:this.options.clientId}));if(!(r&&r.refresh_token||this.worker)){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(t);throw new Td(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=Re(t,["id_token","decodedToken"]);this.userCache.set("@@user@@",{id_token:r,decodedToken:n}),await this.cacheManager.setIdToken(this.options.clientId,t.id_token,t.decodedToken),await this.cacheManager.set(a)}async _getIdTokenFromCache(){const t=this.options.authorizationParams.audience||"default",r=await this.cacheManager.getIdToken(new it({clientId:this.options.clientId,audience:t,scope:this.scope})),n=this.userCache.get("@@user@@");return r&&r.id_token===(n==null?void 0:n.id_token)?n:(this.userCache.set("@@user@@",r),r)}async _getEntryFromCache({scope:t,audience:r,clientId:n}){const a=await this.cacheManager.get(new it({scope:t,audience:r,clientId:n}),60);if(a&&a.access_token){const{access_token:i,oauthTokenScope:o,expires_in:s}=a,u=await this._getIdTokenFromCache();return u&&Object.assign(Object.assign({id_token:u.id_token,access_token:i},o?{scope:o}:null),{expires_in:s})}}async _requestToken(t,r){const{nonceIn:n,organization:a}=r||{},i=await iT(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 wT(e){const t=new yT(e);return await t.checkSession(),t}var Te=(e=>(e.READY="sesamyJsReady",e.AUTHENTICATED="sesamyJsAuthenticated",e.LOGOUT="sesamyJsLogout",e.CLEAR_CACHE="sesamyJsClearCache",e.USER_ATTRIBUTE_CHANGED="sesamyUserAttributeChanged",e.PURCHASE="sesamyJsPurchase",e))(Te||{});const bT="sesamy.com",ST="sesamy.dev",$T="https://sesa.my",eo="sesamyCacheTimestamp";function Ke(e,t){return`https://${e}.${t==="dev"?ST:bT}`}let ue,_d,Rd=!1;const zt="sesamyAccessToken",hi="sesamyRefreshToken";async function Lr(){return new Promise((r,n)=>{let a=0;const i=()=>{Rd?r(!0):a>=5e3?n(new Error("Initialization failed: Timeout")):(a+=100,setTimeout(i,100))};i()})}async function IT(e){if(!e)return null;const t=localStorage.getItem(hi);if(!t)throw new Error("No refresh token available");const r=new URLSearchParams;r.set("client_id",e.iss),r.set("refresh_token",t),r.set("grant_type","refresh_token");const n=new URL(e.iss);n.pathname="/oauth/token",n.searchParams.set("user_id",e.sub);try{const a=await fetch(n.href,{body:r.toString(),method:"POST",headers:{"content-type":"application/x-www-form-urlencoded"}});if(!a.ok)throw localStorage.removeItem(hi),new Error("Renew token failed");const i=await a.json();return localStorage.setItem(hi,i.refresh_token),localStorage.setItem(zt,i.access_token),i.access_token}catch{Cd()}}async function Zo(){const e=localStorage.getItem(zt);if(!e)return null;const t=Ad(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3){const r=await IT(t);if(r)return r;localStorage.removeItem(zt)}return e}function _u(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 TT(e){if(e.enabled===!1)return;_d=e.organization;const t={domain:Ke("token",e.environment),clientId:e.clientId,useCookiesForTransactions:!0};if(_u(window.location.href)!==_u(Ke("auth",e.environment))&&(t.cacheLocation="localstorage",t.useRefreshTokens=!0),ue=await wT(t),window.location.search.includes("code="))try{await ue.handleRedirectCallback();const r=await ue.getUser();Ye(Te.AUTHENTICATED,r);const n=new URL(location.href),a=n.searchParams;a.delete("code"),a.delete("state"),n.search=a.toString(),window.history.replaceState({},document.title,n.toString())}catch(r){console.error(r)}Rd=!0}async function Jo(){return await Lr(),await Zo()?!0:ue?ue.isAuthenticated():!1}async function ET(){return await Lr(),await Zo()?{sub:"local",name:"Local User"}:ue?ue.getUser():null}async function Yo(e){if(await Lr(),localStorage.removeItem(zt),!ue)throw new Error("Auth0 client not initialized");const t=(e==null?void 0:e.authorizationParams)||{};return ue.loginWithRedirect({...e,authorizationParams:{organization:_d,redirect_uri:window.location.href,...t}})}async function sr(e=!0){await Lr();const t=await Zo();if(t)return t;try{return ue?await ue.getTokenSilently():null}catch(r){if(e)throw r;return null}}async function Cd(e={}){if(await Lr(),localStorage.removeItem(zt),Ye(Te.LOGOUT,{}),!!ue)return ue.logout({...e,logoutParams:{returnTo:window.location.href,...e.logoutParams}})}function Ad(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 jd(e){const t=Ad(e);if(!t||!t.exp||t.exp<new Date().getTime()/1e3)throw new Error("Invalid token");localStorage.setItem(zt,e),Ye(Te.AUTHENTICATED,t)}const PT=(e,t)=>t.skipDedupe||t.method!=="GET",OT=(e,t)=>t.method+"@"+e,kT=e=>e.clone(),Ru=({skip:e=PT,key:t=OT,resolver:r=kT}={})=>{const n=new Map;return a=>(i,o)=>{if(e(i,o))return a(i,o);const s=t(i,o);if(!n.has(s))n.set(s,[]);else return new Promise((u,f)=>{n.get(s).push([u,f])});try{return a(i,o).then(u=>(n.get(s).forEach(([f])=>f(r(u))),n.delete(s),u)).catch(u=>{throw n.get(s).forEach(([f,l])=>l(u)),n.delete(s),u})}catch(u){return n.delete(s),Promise.reject(u)}}},_T=(e,t)=>e*t,RT=e=>e&&e.ok,Cu=({delayTimer:e=500,delayRamp:t=_T,maxAttempts:r=10,until:n=RT,onRetry:a=null,retryOnNetworkError:i=!1,resolveWithLatestResponse:o=!1,skip:s}={})=>u=>(f,l)=>{let c=0;if(s&&s(f,l))return u(f,l);const d=(v,p)=>Promise.resolve(n(v,p)).then(S=>S?v&&o?v:p?Promise.reject(p):v:(c++,!r||c<=r?new Promise(g=>{const T=t(e,c);setTimeout(()=>{typeof a=="function"?Promise.resolve(a({response:v,error:p,url:f,options:l})).then((I={})=>{var b,h;g(u((b=I&&I.url)!==null&&b!==void 0?b:f,(h=I&&I.options)!==null&&h!==void 0?h:l))}):g(u(f,l))},T)}).then(d).catch(g=>{if(!i)throw g;return d(null,g)}):v&&o?v:Promise.reject(p||new Error("Number of attempts exceeded."))));return u(f,l).then(d).catch(v=>{if(!i)throw v;return d(null,v)})},CT="application/json",Ld="Content-Type",It=Symbol(),Nd=Symbol();function Au(e={}){var t;return(t=Object.entries(e).find(([r])=>r.toLowerCase()===Ld.toLowerCase()))===null||t===void 0?void 0:t[1]}function ju(e){return/^application\/.*json.*/.test(e)}const st=function(e,t,r=!1){return Object.entries(t).reduce((n,[a,i])=>{const o=e[a];return Array.isArray(o)&&Array.isArray(i)?n[a]=r?[...o,...i]:i:typeof o=="object"&&typeof i=="object"?n[a]=st(o,i,r):n[a]=i,n},{...e})},Bt={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 AT(e,t=!1){Bt.options=t?e:st(Bt.options,e)}function jT(e,t=!1){Bt.polyfills=t?e:st(Bt.polyfills,e)}function LT(e){Bt.errorType=e}const NT=e=>t=>e.reduceRight((r,n)=>n(r),t)||t;class Ud extends Error{}const UT=e=>{const t=Object.create(null);e=e._addons.reduce((b,h)=>h.beforeRequest&&h.beforeRequest(b,e._options,t)||b,e);const{_url:r,_options:n,_config:a,_catchers:i,_resolvers:o,_middlewares:s,_addons:u}=e,f=new Map(i),l=st(a.options,n);let c=r;const d=NT(s)((b,h)=>(c=b,a.polyfill("fetch")(b,h)))(r,l),v=new Error,p=d.catch(b=>{throw{[It]:b}}).then(b=>{if(!b.ok){const h=new Ud;if(h.cause=v,h.stack=h.stack+`
|
|
5
5
|
CAUSE: `+v.stack,h.response=b,h.url=c,b.type==="opaque")throw h;return b.text().then($=>{var k;if(h.message=$,a.errorType==="json"||((k=b.headers.get("Content-Type"))===null||k===void 0?void 0:k.split(";")[0])==="application/json")try{h.json=JSON.parse($)}catch{}throw h.text=$,h.status=b.status,h})}return b}),S=b=>b.catch(h=>{const $=h.hasOwnProperty(It),k=$?h[It]:h,_=(k==null?void 0:k.status)&&f.get(k.status)||f.get(k==null?void 0:k.name)||$&&f.has(It)&&f.get(It);if(_)return _(k,e);const C=f.get(Nd);if(C)return C(k,e);throw k}),g=b=>h=>S(b?p.then($=>$&&$[b]()).then($=>h?h($):$):p.then($=>h?h($):$)),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(b,h){return f.set(b,h),this},badRequest(b){return this.error(400,b)},unauthorized(b){return this.error(401,b)},forbidden(b){return this.error(403,b)},notFound(b){return this.error(404,b)},timeout(b){return this.error(408,b)},internalError(b){return this.error(500,b)},fetchError(b){return this.error(It,b)}},I=u.reduce((b,h)=>({...b,...typeof h.resolver=="function"?h.resolver(b):h.resolver}),T);return o.reduce((b,h)=>h(b,e),I)},xT={_url:"",_options:{},_config:Bt,_catchers:new Map,_resolvers:[],_deferred:[],_middlewares:[],_addons:[],addon(e){return{...this,_addons:[...this._addons,e],...e.wretch}},errorType(e){return{...this,_config:{...this._config,errorType:e}}},polyfills(e,t=!1){return{...this,_config:{...this._config,polyfills:t?e:st(this._config.polyfills,e)}}},url(e,t=!1){if(t)return{...this,_url:e};const r=this._url.split("?");return{...this,_url:r.length>1?r[0]+e+"?"+r[1]:this._url+e}},options(e,t=!1){return{...this,_options:t?e:st(this._options,e)}},headers(e){const t=e?Array.isArray(e)?Object.fromEntries(e):"entries"in e?Object.fromEntries(e.entries()):e:{};return{...this,_options:st(this._options,{headers:t})}},accept(e){return this.headers({Accept:e})},content(e){return this.headers({[Ld]: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(Nd,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=Au(n._options.headers),i=this._config.polyfill("FormData",!1),o=typeof r=="object"&&!(i&&r instanceof i)&&(!n._options.headers||!a||ju(a));return n=r?o?n.json(r,a):n.body(r):n,UT(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=Au(this._options.headers);return this.content(t||ju(r)&&r||CT).body(JSON.stringify(e))}};function Me(e="",t={}){return{...xT,_url:e,_options:t}}Me.default=Me;Me.options=AT;Me.errorType=LT;Me.polyfills=jT;Me.WretchError=Ud;function Se(){sessionStorage.removeItem(eo),Ye(Te.CLEAR_CACHE,{})}function Lu(){var r;return(r=(document.documentElement.getAttribute("lang")??"en").split("-")[0])==null?void 0:r.toLocaleLowerCase()}function DT(e){const t=Ke("api2",e.environment),r=w=>async(E,P)=>{let B=sessionStorage.getItem(eo);B||(B=Date.now().toString(),sessionStorage.setItem(eo,B));const ae={...P,headers:{...P.headers,"Cache-Timestamp":B}};return w(E,ae)},n=(w=!0)=>E=>async(P,B)=>{let ae=null;if(ae=await sr(w),!ae){if(w)throw new Error("No access token available");return E(P,B)}const ze={...B,headers:{...B.headers,...ae?{Authorization:`Bearer ${ae}`}:{}}};return E(P,ze)},a=w=>(E,P)=>{if(P.headers.Authorization)return w(E,P);const B=localStorage.getItem("__anon_id"),ae=btoa(`${B}:`),ze={...P,headers:{...P.headers,Authorization:`Basic ${ae}`}};return w(E,ze)},i=Me(t).headers({"Content-Type":"application/json"}).middlewares([r,n(),Ru(),Cu({delayTimer:1e3,delayRamp:(w,E)=>w*E,maxAttempts:3,until:w=>!!(w&&(w.ok||w.status>=400&&w.status<500)),retryOnNetworkError:!1})]),o=Me(t).headers({"Content-Type":"application/json"}).middlewares([r,n(!1),a,Ru(),Cu({delayTimer:1e3,delayRamp:(w,E)=>w*E,maxAttempts:3,until:w=>!!(w&&(w.ok||w.status>=400&&w.status<500)),retryOnNetworkError:!1})]);async function s(){return i.get("/entitlements").json()}async function u(w){const E=await i.get("/entitlements").json();return E==null?void 0:E.find(P=>P.id===w)}async function f(w){return i.get(`/entitlements/${w}/access`).json()}async function l(){return i.get("/contracts").json()}async function c(w){const E=await i.get("/contracts").json();return E==null?void 0:E.find(P=>P.id===w)}async function d(){return console.warn("getSubscriptions is deprecated, use getContracts instead"),i.get("/subscriptions").json()}async function v(){return i.get("/bills").json()}async function p(w){const E=await i.get("/bills").json();return E==null?void 0:E.find(P=>P.id===w)}async function S(){return i.get("/transactions").json()}async function g(w){const E=await i.get("/transactions").json();return E==null?void 0:E.find(P=>P.id===w)}async function T(w,E){const P=await i.url(`/user-metadata/${w}`).put(E).json();return Ye(Te.USER_ATTRIBUTE_CHANGED,{}),Se(),P}async function I(w){const E=await i.url(`/user-metadata/${w}`).delete().res();return Se(),E.ok}async function b(w){return(await i.url(`/user-metadata/${w}`).get().json())[w]}async function h(){return await i.url("/user-metadata").get().json()}async function $(){return await i.url("/tags").get().json()}async function k(w){const E=await i.url(`/tags/${w}`).delete().res();return Se(),E.ok}async function _(w){const E=await i.url("/tags").post(w).res();return Ye(Te.USER_ATTRIBUTE_CHANGED,{}),Se(),E.ok}async function C(w){return(await o.url("/tallies").get().json())[w]}async function M(){return await o.url("/tallies").get().json()}async function F(w){const E=await o.url(`/tallies/${w}`).delete().res();return Se(),E.ok}async function V(w,E){return await o.url(`/tallies/${w}/push`).post(E).json()}async function L(w){return await i.url(`/products/${w}`).get().json()}async function x(){return await sr(!1)?await i.url("/profile").get().json():null}async function z(w){const E=await i.url("/profile").patch(w).res();return Se(),E.ok}async function R(){return await i.url("/payment-issues").get().json()}async function G(){return(await i.url("/profile/spotify-link").get().json()).isSpotifyLinked}async function J(){return(await i.url("/profile/unlink-spotify").post().res()).ok}async function Le(w){const E=await sr(!1);if(!E)throw new Error("No access token available");const P=new URL(`${Ke("spotify-oas",e.environment)}/sesamy-callback`);P.searchParams.set("access_token",E),P.searchParams.set("state",w),window.location.href=P.toString()}async function m(w){const E=await i.url(`/products/${w}/auto-onboard`).post().json();return E.length&&Se(),E}async function y(w,E=3600){const{shortlink:P}=await Me($T).post({url:w,ttl:E}).json();return P}async function O(w){const E=await sr(!1);let P;const B=w.language||Lu();switch(w.target){case"account":P=new URL(`${Ke("account",e.environment)}/${B}/subscriptions/${e.clientId}`);break;case"consume":P=new URL(`${Ke("consume",e.environment)}/${B}/@${e.clientId}/${w.sku}`),w.episodeId?P.href+=`/${w.episodeId}`:P.href+="/listen";break;default:throw new Error("Invalid target")}return P.searchParams.set("sesamy-redirect-url",w.redirectUrl||window.location.href),E&&(P.hash=`#access_token=${E}`),w.shorten?y(P.href,w.ttl):P.href}async function N(w){return(await o.url("/checkouts").post({language:Lu(),...w,vendorId:e.clientId})).json()}async function U(w,E){return(await o.url(`/checkouts/${w}`).patch(E)).json()}async function D(w){return(await o.url(`/checkouts/${w}`).get()).json()}async function Z(){const w=await sr(!1),E=new URL(`${Ke("account",e.environment)}/subscriptions/${e.clientId}`);w&&(E.hash=`#access_token=${w}`),window.location.href=E.toString()}return{createCheckout:N,updateCheckout:U,getCheckout:D,getEntitlements:s,getEntitlement:u,getEntitlementAccess:f,getContracts:l,getContract:c,getProfile:x,updateProfile:z,getSubscriptions:d,getBills:v,getBill:p,setUserMetadata:T,deleteUserMetadata:I,getUserMetadata:b,listUserMetadata:h,getTags:$,deleteTag:k,setTag:_,getTally:C,getTallies:M,deleteTally:F,pushTally:V,getTransactions:S,getTransaction:g,getProduct:L,getPaymentIssues:R,autoOnboardProduct:m,isSpotifyLinked:G,unlinkSpotify:J,linkSpotify:Le,generateLink:O,openHostedAccountPage:Z}}const xd="@sesamy/sesamy-js",Xo="1.19.1";function Nu(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 nn="undefined",Uu="object",to=function(){},Dd="any",Md="*",lt="__",An=typeof process<"u"?process:{};An.env&&An.env.NODE_ENV;var X=typeof document<"u";An.versions!=null&&An.versions.node!=null;typeof Deno<"u"&&Deno.core;X&&window.name==="nodejs"||typeof navigator<"u"&&navigator.userAgent!==void 0&&(navigator.userAgent.includes("Node.js")||navigator.userAgent.includes("jsdom"));function Fd(e,t){return t.charAt(0)[e]()+t.slice(1)}var MT=Fd.bind(null,"toUpperCase"),FT=Fd.bind(null,"toLowerCase");function zT(e){return zd(e)?MT("null"):typeof e=="object"?GT(e):Object.prototype.toString.call(e).slice(8,-1)}function jn(e,t){t===void 0&&(t=!0);var r=zT(e);return t?FT(r):r}function Nr(e,t){return typeof t===e}var oe=Nr.bind(null,"function"),Ve=Nr.bind(null,"string"),Rt=Nr.bind(null,"undefined"),BT=Nr.bind(null,"boolean");Nr.bind(null,"symbol");function zd(e){return e===null}function HT(e){return jn(e)==="number"&&!isNaN(e)}function Bd(e){return jn(e)==="array"}function ie(e){if(!KT(e))return!1;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function KT(e){return e&&(typeof e=="object"||e!==null)}function GT(e){return oe(e.constructor)?e.constructor.name:null}function WT(e){return e instanceof Error||Ve(e.message)&&e.constructor&&HT(e.constructor.stackTraceLimit)}function Hd(e,t){if(typeof t!="object"||zd(t))return!1;if(t instanceof e)return!0;var r=jn(new e(""));if(WT(t))for(;t;){if(jn(t)===r)return!0;t=Object.getPrototypeOf(t)}return!1}Hd.bind(null,TypeError);Hd.bind(null,SyntaxError);function ta(e,t){var r=e instanceof Element||e instanceof HTMLDocument;return r&&t?VT(e,t):r}function VT(e,t){return t===void 0&&(t=""),e&&e.nodeName===t.toUpperCase()}function ra(e){var t=[].slice.call(arguments,1);return function(){return e.apply(void 0,[].slice.call(arguments).concat(t))}}ra(ta,"form");ra(ta,"button");ra(ta,"input");ra(ta,"select");function ZT(e){return e?Bd(e)?e:[e]:[]}function xu(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return null}}function JT(){if(X){var e=navigator,t=e.languages;return e.userLanguage||(t&&t.length?t[0]:e.language)}}function YT(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function XT(e){return function(t){for(var r,n=Object.create(null),a=/([^&=]+)=?([^&]*)/g;r=a.exec(t);){var i=xu(r[1]),o=xu(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&&(qT(n,u.map(function(f){return f.replace(/[?[\]\\ ]/g,"")}),n[s]),delete n[s])}return n}(function(t){return X&&window.location.search.substring(1)}())}function qT(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 na(){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 QT(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 wr="global",Ht=lt+"global"+lt,Kt=typeof self===Uu&&self.self===self&&self||typeof global===Uu&&global.global===global&&global||void 0;function ft(e){return Kt[Ht][e]}function dt(e,t){return Kt[Ht][e]=t}function Xt(e){delete Kt[Ht][e]}function qt(e,t,r){var n;try{if(qo(e)){var a=window[e];n=a[t].bind(a)}}catch{}return n||r}Kt[Ht]||(Kt[Ht]={});var an={};function qo(e){if(typeof an[e]!==nn)return an[e];try{var t=window[e];t.setItem(nn,nn),t.removeItem(nn)}catch{return an[e]=!1}return an[e]=!0}function j(){return j=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},j.apply(this,arguments)}var Ge="function",De="undefined",eE="@@redux/"+Math.random().toString(36),Du=function(){return typeof Symbol===Ge&&Symbol.observable||"@@observable"}(),on=" != "+Ge;function Kd(e,t,r){var n;if(typeof t===Ge&&typeof r===De&&(r=t,t=void 0),typeof r!==De){if(typeof r!==Ge)throw new Error("enhancer"+on);return r(Kd)(e,t)}if(typeof e!==Ge)throw new Error("reducer"+on);var a=e,i=t,o=[],s=o,u=!1;function f(){s===o&&(s=o.slice())}function l(){return i}function c(v){if(typeof v!==Ge)throw new Error("Listener"+on);var p=!0;return f(),s.push(v),function(){if(p){p=!1,f();var S=s.indexOf(v);s.splice(S,1)}}}function d(v){if(!ie(v))throw new Error("Act != obj");if(typeof v.type===De)throw new Error("ActType "+De);if(u)throw new Error("Dispatch in reducer");try{u=!0,i=a(i,v)}finally{u=!1}for(var p=o=s,S=0;S<p.length;S++)(0,p[S])();return v}return d({type:"@@redux/INIT"}),(n={dispatch:d,subscribe:c,getState:l,replaceReducer:function(v){if(typeof v!==Ge)throw new Error("next reducer"+on);a=v,d({type:"@@redux/INIT"})}})[Du]=function(){var v,p=c;return(v={subscribe:function(S){if(typeof S!="object")throw new TypeError("Observer != obj");function g(){S.next&&S.next(l())}return g(),{unsubscribe:p(g)}}})[Du]=function(){return this},v},n}function tE(e,t){var r=t&&t.type;return"action "+(r&&r.toString()||"?")+"reducer "+e+" returns "+De}function Gt(){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 rE(){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=Gt.apply(void 0,i)(o.dispatch)})}}}var Ze=lt+"anon_id",ct=lt+"user_id",jt=lt+"user_traits",He="userId",Ct="anonymousId",yn=["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"],ro=["name","EVENTS","config","loaded"],A=yn.reduce(function(e,t){return e[t]=t,e},{registerPluginType:function(e){return"registerPlugin:"+e},pluginReadyType:function(e){return"ready:"+e}}),Mu=/^utm_/,Fu=/^an_prop_/,zu=/^an_trait_/;function nE(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(Ze,o.anonymousId),f||t(ct,o.userId),u.traits&&t(jt,j({},f&&s.traits?s.traits:{},u.traits));var l=Object.keys(a.params);if(l.length){var c=i.an_uid,d=i.an_event,v=l.reduce(function(p,S){if(S.match(Mu)||S.match(/^(d|g)clid/)){var g=S.replace(Mu,"");p.campaign[g==="campaign"?"name":g]=i[S]}return S.match(Fu)&&(p.props[S.replace(Fu,"")]=i[S]),S.match(zu)&&(p.traits[S.replace(zu,"")]=i[S]),p},{campaign:{},props:{},traits:{}});r.dispatch(j({type:A.params,raw:i},v,c?{userId:c}:{})),c&&setTimeout(function(){return e.identify(c,v.traits)},0),d&&setTimeout(function(){return e.track(d,v.props)},0),Object.keys(v.campaign).length&&r.dispatch({type:A.campaign,campaign:v.campaign})}}return n(a)}}}}function aE(e){return function(t,r){if(t===void 0&&(t={}),r===void 0&&(r={}),r.type===A.setItemEnd){if(r.key===Ze)return j({},t,{anonymousId:r.value});if(r.key===ct)return j({},t,{userId:r.value})}switch(r.type){case A.identify:return Object.assign({},t,{userId:r.userId,traits:j({},t.traits,r.traits)});case A.reset:return[ct,Ze,jt].forEach(function(n){e.removeItem(n)}),Object.assign({},t,{userId:null,anonymousId:null,traits:{}});default:return t}}}function Bu(e){return{userId:e.getItem(ct),anonymousId:e.getItem(Ze),traits:e.getItem(jt)}}var no=function(e){return lt+"TEMP"+lt+e};function iE(e){var t=e.storage,r=t.setItem,n=t.removeItem,a=t.getItem;return function(i){return function(o){return function(s){var u=s.userId,f=s.traits,l=s.options;if(s.type===A.reset&&([ct,jt,Ze].forEach(function(v){n(v)}),[He,Ct,"traits"].forEach(function(v){Xt(no(v))})),s.type===A.identify){a(Ze)||r(Ze,na());var c=a(ct),d=a(jt)||{};c&&c!==u&&i.dispatch({type:A.userIdChanged,old:{userId:c,traits:d},new:{userId:u,traits:f},options:l}),u&&r(ct,u),f&&r(jt,j({},d,f))}return o(s)}}}}var dr={};function Hu(e,t){dr[e]&&oe(dr[e])&&(dr[e](t),delete dr[e])}function Gd(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 Gd(e,t,r-10).then(n,a)})})}function oE(e){return{abort:e}}function Wd(e,t,r){var n={},a=t(),i=e.getState(),o=i.plugins,s=i.queue,u=i.user;if(!i.context.offline&&s&&s.actions&&s.actions.length){var f=s.actions.reduce(function(c,d,v){return o[d.plugin].loaded?(c.process.push(d),c.processIndex.push(v)):(c.requeue.push(d),c.requeueIndex.push(v)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(f.processIndex&&f.processIndex.length){f.processIndex.forEach(function(c){var d=s.actions[c],v=d.plugin,p=d.payload.type,S=a[v][p];if(S&&oe(S)){var g,T=function(h,$){return h===void 0&&(h={}),$===void 0&&($={}),[He,Ct].reduce(function(k,_){return h.hasOwnProperty(_)&&$[_]&&$[_]!==h[_]&&(k[_]=$[_]),k},h)}(d.payload,u),I=n[T.meta.rid];if(!I&&(g=S({payload:T,config:o[v].config,instance:r,abort:oE}))&&ie(g)&&g.abort)return void(n[T.meta.rid]=!0);if(!I){var b=p+":"+v;e.dispatch(j({},T,{type:b,_:{called:b,from:"queueDrain"}}))}}});var l=s.actions.filter(function(c,d){return!~f.processIndex.indexOf(d)});s.actions=l}}}var pi=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(Lt),v=t.exact.map(function(g){return g.pluginName});d&&(v=o.during.map(function(g){return g.pluginName}));var p=function(g,T){return function(I,b,h){var $=b.config,k=b.name,_=k+"."+I.type;h&&(_=h.event);var C=I.type.match(Lt)?function(M,F,V,L,x){return function(z,R){var G=L?L.name:M,J=R&&Er(R)?R:V;if(L&&(!(J=R&&Er(R)?R:[M]).includes(M)||J.length!==1))throw new Error("Method "+F+" can only abort "+M+" plugin. "+JSON.stringify(J)+" input valid");return j({},x,{abort:{reason:z,plugins:J,caller:F,_:G}})}}(k,_,T,h,I):function(M,F){return function(){throw new Error(M.type+" action not cancellable. Remove abort in "+F)}}(I,_);return{payload:sE(I),instance:g,config:$||{},abort:C}}}(n,v),S=t.exact.reduce(function(g,T){var I=T.pluginName,b=T.methodName,h=!1;return b.match(/^initialize/)||b.match(/^reset/)||(h=!f[I].loaded),l.offline&&b.match(/^(page|track|identify)/)&&(h=!0),g[""+I]=h,g},{});return Promise.resolve(t.exact.reduce(function(g,T,I){try{var b=T.pluginName;return Promise.resolve(g).then(function(h){function $(){return Promise.resolve(h)}var k=function(){if(t.namespaced&&t.namespaced[b])return Promise.resolve(t.namespaced[b].reduce(function(_,C,M){try{return Promise.resolve(_).then(function(F){return C.method&&oe(C.method)?(function(z,R){var G=Yu(z);if(G&&G.name===R){var J=Yu(G.method);throw new Error([R+" plugin is calling method "+z,"Plugins cant call self","Use "+G.method+" "+(J?"or "+J.method:"")+" in "+R+" plugin insteadof "+z].join(`
|
|
6
|
-
`))}}(C.methodName,C.pluginName),Promise.resolve(C.method({payload:F,instance:n,abort:(V=F,L=b,x=C.pluginName,function(z,R){return j({},V,{abort:{reason:z,plugins:R||[L],caller:c,from:x||L}})}),config:Wu(C.pluginName,f,i),plugins:f})).then(function(z){var R=ie(z)?z:{};return Promise.resolve(j({},F,R))})):F;var V,L,x})}catch(F){return Promise.reject(F)}},Promise.resolve(r))).then(function(_){h[b]=_});h[b]=r}();return k&&k.then?k.then($):$()})}catch(h){return Promise.reject(h)}},Promise.resolve({}))).then(function(g){return Promise.resolve(t.exact.reduce(function(T,I,b){try{var h=t.exact.length===b+1,$=I.pluginName,k=i[$];return Promise.resolve(T).then(function(_){var C=g[$]?g[$]:{};if(d&&(C=_),gi(C,$))return mi({data:C,method:c,instance:n,pluginName:$,store:s}),Promise.resolve(_);if(gi(_,$))return h&&mi({data:_,method:c,instance:n,store:s}),Promise.resolve(_);if(S.hasOwnProperty($)&&S[$]===!0)return s.dispatch({type:"queue",plugin:$,payload:C,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(_);var M=p(g[$],i[$]);return Promise.resolve(k[c]({abort:M.abort,payload:C,instance:n,config:Wu($,f,i),plugins:f})).then(function(F){var V=ie(F)?F:{},L=j({},_,V),x=g[$];if(gi(x,$))mi({data:x,method:c,instance:n,pluginName:$,store:s});else{var z=c+":"+$;(z.match(/:/g)||[]).length<2&&!c.match(Ku)&&!c.match(Gu)&&n.dispatch(j({},d?L:C,{type:z,_:{called:z,from:"submethod"}}))}return Promise.resolve(L)})})}catch(_){return Promise.reject(_)}},Promise.resolve(r))).then(function(T){if(!(c.match(Lt)||c.match(/^registerPlugin/)||c.match(Gu)||c.match(Ku)||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"}});Vd(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)}},Lt=/Start$/,Ku=/^bootstrap/,Gu=/^ready/;function mi(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(j({},e.data,{type:r,_:{called:r,from:"abort"}}))}function Wu(e,t,r){var n=t[e]||r[e];return n&&n.config?n.config:{}}function Vu(e,t){return t.reduce(function(r,n){return n[e]?r.concat({methodName:e,pluginName:n.name,method:n[e]}):r},[])}function Zu(e,t){var r=e.replace(Lt,""),n=t?":"+t:"";return[""+e+n,""+r+n,r+"End"+n]}function gi(e,t){var r=e.abort;return!!r&&(r===!0||Ju(r,t)||r&&Ju(r.plugins,t))}function Vd(e,t){var r=e.abort;if(!r)return!1;if(r===!0||Ve(r))return!0;var n=r.plugins;return Er(r)&&r.length===t||Er(n)&&n.length===t}function Er(e){return Array.isArray(e)}function Ju(e,t){return!(!e||!Er(e))&&e.includes(t)}function Yu(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function sE(e){return Object.keys(e).reduce(function(t,r){return r==="type"||(t[r]=ie(e[r])?Object.assign({},e[r]):e[r]),t},{})}function cE(e,t,r){var n={};return function(a){return function(i){return function(o){try{var s,u=function(h){return s?h:i(c)},f=o.type,l=o.plugins,c=o;if(o.abort)return Promise.resolve(i(o));if(f===A.enablePlugin&&a.dispatch({type:A.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),f===A.disablePlugin&&setTimeout(function(){return Hu(o.meta.rid,{payload:o})},0),f===A.initializeEnd){var d=t(),v=Object.keys(d),p=v.filter(function(h){return l.includes(h)}).map(function(h){return d[h]}),S=[],g=[],T=o.disabled,I=p.map(function(h){var $=h.loaded,k=h.name,_=h.config;return Gd(h,function(){return $({config:_})},1e4).then(function(C){return n[k]||(a.dispatch({type:A.pluginReadyType(k),name:k,events:Object.keys(h).filter(function(M){return!ro.includes(M)})}),n[k]=!0),S=S.concat(k),h}).catch(function(C){if(C instanceof Error)throw new Error(C);return g=g.concat(C.name),C})});Promise.all(I).then(function(h){var $={plugins:S,failed:g,disabled:T};setTimeout(function(){v.length===I.length+T.length&&a.dispatch(j({},{type:A.ready},$))},0)})}var b=function(){if(f!==A.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return Wd(a,t,e)},0),Promise.resolve(function(h,$,k,_,C){try{var M=oe($)?$():$,F=h.type,V=F.replace(Lt,"");if(h._&&h._.called)return Promise.resolve(h);var L=k.getState(),x=(G=M,(J=L.plugins)===void 0&&(J={}),(Le=h.options)===void 0&&(Le={}),Object.keys(G).filter(function(m){var y=Le.plugins||{};return BT(y[m])?y[m]:y.all!==!1&&(!J[m]||J[m].enabled!==!1)}).map(function(m){return G[m]}));F===A.initializeStart&&h.fromEnable&&(x=Object.keys(L.plugins).filter(function(m){var y=L.plugins[m];return h.plugins.includes(m)&&!y.initialized}).map(function(m){return M[m]}));var z=x.map(function(m){return m.name}),R=function(m,y,O){var N=Zu(m).map(function(U){return Vu(U,y)});return y.reduce(function(U,D){var Z=D.name,w=Zu(m,Z).map(function(ae){return Vu(ae,y)}),E=w[0],P=w[1],B=w[2];return E.length&&(U.beforeNS[Z]=E),P.length&&(U.duringNS[Z]=P),B.length&&(U.afterNS[Z]=B),U},{before:N[0],beforeNS:{},during:N[1],duringNS:{},after:N[2],afterNS:{}})}(F,x);return Promise.resolve(pi({action:h,data:{exact:R.before,namespaced:R.beforeNS},state:L,allPlugins:M,allMatches:R,instance:k,store:_,EVENTS:C})).then(function(m){function y(){var U=function(){if(F.match(Lt))return Promise.resolve(pi({action:j({},O,{type:V+"End"}),data:{exact:R.after,namespaced:R.afterNS},state:L,allPlugins:M,allMatches:R,instance:k,store:_,EVENTS:C})).then(function(D){D.meta&&D.meta.hasCallback&&Hu(D.meta.rid,{payload:D})})}();return U&&U.then?U.then(function(){return m}):m}if(Vd(m,z.length))return m;var O,N=function(){if(F!==V)return Promise.resolve(pi({action:j({},m,{type:V}),data:{exact:R.during,namespaced:R.duringNS},state:L,allPlugins:M,allMatches:R,instance:k,store:_,EVENTS:C})).then(function(U){O=U});O=m}();return N&&N.then?N.then(y):y()})}catch(m){return Promise.reject(m)}var G,J,Le}(o,t,e,a,r)).then(function(h){return s=1,i(h)})}();return Promise.resolve(b&&b.then?b.then(u):u(b))}catch(h){return Promise.reject(h)}}}}}function uE(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 lE=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 Gt.apply(void 0,o)(n)(a)}}}}};function fE(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=Xu(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=Xu(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,qu(r.plugins,!1,t));case A.enablePlugin:return j({},t,qu(r.plugins,!0,t));default:return t}}}function Xu(e,t){return e.substring(t.length+1,e.length)}function qu(e,t,r){return e.reduce(function(n,a){return n[a]=j({},r[a],{enabled:t}),n},r)}function Zd(e){try{return JSON.parse(JSON.stringify(e))}catch{}return e}var dE={last:{},history:[]};function vE(e,t){e===void 0&&(e=dE);var r=t.options,n=t.meta;if(t.type===A.track){var a=Zd(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 hE={actions:[]};function pE(e,t){e===void 0&&(e=hE);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 Jd=/#.*$/;function mE(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(Jd,""):"")}var Yd,Xd,qd,Qd,gE=function(e){if(e===void 0&&(e={}),!X)return e;var t=document,r=t.title,n=t.referrer,a=window,i=a.location,o=a.innerWidth,s=a.innerHeight,u=i.hash,f=i.search,l=function(d){var v=function(){if(X){for(var p,S=document.getElementsByTagName("link"),g=0;p=S[g];g++)if(p.getAttribute("rel")==="canonical")return p.getAttribute("href")}}();return v?v.match(/\?/)?v:v+d:window.location.href.replace(Jd,"")}(f),c={title:r,url:l,path:mE(l),hash:u,search:f,width:o,height:s};return n&&n!==""&&(c.referrer=n),j({},c,e)},yE={last:{},history:[]};function wE(e,t){e===void 0&&(e=yE);var r=t.options;if(t.type===A.page){var n=Zd(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}Yd=function(){if(!X)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"}(),Xd=X?document.referrer:null,qd=JT(),Qd=YT();var Qu={initialized:!1,sessionId:na(),app:null,version:null,debug:!1,offline:!!X&&!navigator.onLine,os:{name:Yd},userAgent:X?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.13"},timezone:Qd,locale:qd,campaign:{},referrer:Xd};function bE(e,t){e===void 0&&(e=Qu);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({},Qu,e,{initialized:!0})}}var SE=["plugins","reducers","storage"];function $E(e,t,r){if(X){var n=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(a){n(a,t)})}}function IE(e){var t=$E.bind(null,"online offline",function(r){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(r){return t(!1)}}function ev(){return dt("analytics",[]),function(e){return function(t,r,n){var a=e(t,r,n),i=a.dispatch;return Object.assign(a,{dispatch:function(o){return Kt[Ht].analytics.push(o.action||o),i(o)}})}}}function el(e){return function(){return Gt(Gt.apply(null,arguments),ev())}}function yi(e){return e?Bd(e)?e:[e]:[]}function tl(e,t,r){e===void 0&&(e={});var n,a,i=na();return t&&(dr[i]=(n=t,a=function(o){for(var s,u=o||Array.prototype.slice.call(arguments),f=0;f<u.length;f++)if(oe(u[f])){s=u[f];break}return s}(r),function(o){a&&a(o),n(o)})),j({},e,{rid:i,ts:new Date().getTime()},t?{hasCallback:!0}:{})}function TE(e){e===void 0&&(e={});var t=e.reducers||{},r=e.initialUser||{},n=(e.plugins||[]).reduce(function(m,y){if(oe(y))return m.middlewares=m.middlewares.concat(y),m;if(y.NAMESPACE&&(y.name=y.NAMESPACE),!y.name)throw new Error("https://lytics.dev/errors/1");y.config||(y.config={});var O=y.EVENTS?Object.keys(y.EVENTS).map(function(D){return y.EVENTS[D]}):[];m.pluginEnabled[y.name]=!(y.enabled===!1||y.config.enabled===!1),delete y.enabled,y.methods&&(m.methods[y.name]=Object.keys(y.methods).reduce(function(D,Z){var w;return D[Z]=(w=y.methods[Z],function(){for(var E=Array.prototype.slice.call(arguments),P=new Array(w.length),B=0;B<E.length;B++)P[B]=E[B];return P[P.length]=$,w.apply({instance:$},P)}),D},{}),delete y.methods);var N=Object.keys(y).concat(O),U=new Set(m.events.concat(N));if(m.events=Array.from(U),m.pluginsArray=m.pluginsArray.concat(y),m.plugins[y.name])throw new Error(y.name+"AlreadyLoaded");return m.plugins[y.name]=y,m.plugins[y.name].loaded||(m.plugins[y.name].loaded=function(){return!0}),m},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),a=e.storage?e.storage:{getItem:ft,setItem:dt,removeItem:Xt},i=function(m){return function(y,O,N){return O.getState("user")[y]||(N&&ie(N)&&N[y]?N[y]:Bu(m)[y]||ft(no(y))||null)}}(a),o=n.plugins,s=n.events.filter(function(m){return!ro.includes(m)}).sort(),u=new Set(s.concat(yn).filter(function(m){return!ro.includes(m)})),f=Array.from(u).sort(),l=function(){return o},c=new lE,d=c.addMiddleware,v=c.removeMiddleware,p=c.dynamicMiddlewares,S=function(){throw new Error("Abort disabled inListener")},g=XT(),T=Bu(a),I=j({},T,r,g.an_uid?{userId:g.an_uid}:{},g.an_aid?{anonymousId:g.an_aid}:{});I.anonymousId||(I.anonymousId=na());var b=j({enable:function(m,y){return new Promise(function(O){R.dispatch({type:A.enablePlugin,plugins:yi(m),_:{originalAction:A.enablePlugin}},O,[y])})},disable:function(m,y){return new Promise(function(O){R.dispatch({type:A.disablePlugin,plugins:yi(m),_:{originalAction:A.disablePlugin}},O,[y])})}},n.methods),h=!1,$={identify:function(m,y,O,N){try{var U=Ve(m)?m:null,D=ie(m)?m:y,Z=O||{},w=$.user();dt(no(He),U);var E=U||D.userId||i(He,$,D);return Promise.resolve(new Promise(function(P){R.dispatch(j({type:A.identifyStart,userId:E,traits:D||{},options:Z,anonymousId:w.anonymousId},w.id&&w.id!==U&&{previousId:w.id}),P,[y,O,N])}))}catch(P){return Promise.reject(P)}},track:function(m,y,O,N){try{var U=ie(m)?m.event:m;if(!U||!Ve(U))throw new Error("EventMissing");var D=ie(m)?m:y||{},Z=ie(O)?O:{};return Promise.resolve(new Promise(function(w){R.dispatch({type:A.trackStart,event:U,properties:D,options:Z,userId:i(He,$,y),anonymousId:i(Ct,$,y)},w,[y,O,N])}))}catch(w){return Promise.reject(w)}},page:function(m,y,O){try{var N=ie(m)?m:{},U=ie(y)?y:{};return Promise.resolve(new Promise(function(D){R.dispatch({type:A.pageStart,properties:gE(N),options:U,userId:i(He,$,N),anonymousId:i(Ct,$,N)},D,[m,y,O])}))}catch(D){return Promise.reject(D)}},user:function(m){if(m===He||m==="id")return i(He,$);if(m===Ct||m==="anonId")return i(Ct,$);var y=$.getState("user");return m?Nu(y,m):y},reset:function(m){return new Promise(function(y){R.dispatch({type:A.resetStart},y,m)})},ready:function(m){return h&&m({plugins:b,instance:$}),$.on(A.ready,function(y){m(y),h=!0})},on:function(m,y){if(!m||!oe(y))return!1;if(m===A.bootstrap)throw new Error(".on disabled for "+m);var O=/Start$|Start:/;if(m==="*"){var N=function(w){return function(E){return function(P){return P.type.match(O)&&y({payload:P,instance:$,plugins:o}),E(P)}}},U=function(w){return function(E){return function(P){return P.type.match(O)||y({payload:P,instance:$,plugins:o}),E(P)}}};return d(N,sn),d(U,cn),function(){v(N,sn),v(U,cn)}}var D=m.match(O)?sn:cn,Z=function(w){return function(E){return function(P){return P.type===m&&y({payload:P,instance:$,plugins:o,abort:S}),E(P)}}};return d(Z,D),function(){return v(Z,D)}},once:function(m,y){if(!m||!oe(y))return!1;if(m===A.bootstrap)throw new Error(".once disabled for "+m);var O=$.on(m,function(N){y({payload:N.payload,instance:$,plugins:o,abort:S}),O()});return O},getState:function(m){var y=R.getState();return m?Nu(y,m):Object.assign({},y)},dispatch:function(m){var y=Ve(m)?{type:m}:m;if(yn.includes(y.type))throw new Error("reserved action "+y.type);var O=j({},y,{_:j({originalAction:y.type},m._||{})});R.dispatch(O)},enablePlugin:b.enable,disablePlugin:b.disable,plugins:b,storage:{getItem:a.getItem,setItem:function(m,y,O){R.dispatch({type:A.setItemStart,key:m,value:y,options:O})},removeItem:function(m,y){R.dispatch({type:A.removeItemStart,key:m,options:y})}},setAnonymousId:function(m,y){$.storage.setItem(Ze,m,y)},events:{core:yn,plugins:s}},k=n.middlewares.concat([function(m){return function(y){return function(O){return O.meta||(O.meta=tl()),y(O)}}},p(sn),cE($,l,{all:f,plugins:s}),uE(a),nE($),iE($),p(cn)]),_={context:bE,user:aE(a),page:wE,track:vE,plugins:fE(l),queue:pE},C=Gt,M=Gt;if(X&&e.debug){var F=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;F&&(C=F({trace:!0,traceLimit:25})),M=function(){return arguments.length===0?ev():ie(typeof arguments[0])?el():el().apply(null,arguments)}}var V,L=function(m){return Object.keys(m).reduce(function(y,O){return SE.includes(O)||(y[O]=m[O]),y},{})}(e),x=n.pluginsArray.reduce(function(m,y){var O=y.name,N=y.config,U=y.loaded,D=n.pluginEnabled[O];return m[O]={enabled:D,initialized:!!D&&!y.initialize,loaded:!!U({config:N}),config:N},m},{}),z={context:L,user:I,plugins:x},R=Kd(function(m){for(var y=Object.keys(m),O={},N=0;N<y.length;N++){var U=y[N];typeof m[U]===Ge&&(O[U]=m[U])}var D,Z=Object.keys(O);try{(function(w){Object.keys(w).forEach(function(E){var P=w[E];if(typeof P(void 0,{type:"@@redux/INIT"})===De||typeof P(void 0,{type:eE})===De)throw new Error("reducer "+E+" "+De)})})(O)}catch(w){D=w}return function(w,E){if(w===void 0&&(w={}),D)throw D;for(var P=!1,B={},ae=0;ae<Z.length;ae++){var ze=Z[ae],is=w[ze],oa=(0,O[ze])(is,E);if(typeof oa===De){var hv=tE(ze,E);throw new Error(hv)}B[ze]=oa,P=P||oa!==is}return P?B:w}}(j({},_,t)),z,M(C(rE.apply(void 0,k))));R.dispatch=(V=R.dispatch,function(m,y,O){var N=j({},m,{meta:tl(m.meta,y,yi(O))});return V.apply(null,[N])});var G=Object.keys(o);R.dispatch({type:A.bootstrap,plugins:G,config:L,params:g,user:I,initialUser:r,persistedUser:T});var J=G.filter(function(m){return n.pluginEnabled[m]}),Le=G.filter(function(m){return!n.pluginEnabled[m]});return R.dispatch({type:A.registerPlugins,plugins:G,enabled:n.pluginEnabled}),n.pluginsArray.map(function(m,y){var O=m.bootstrap,N=m.config,U=m.name;O&&oe(O)&&O({instance:$,config:N,payload:m}),R.dispatch({type:A.registerPluginType(U),name:U,enabled:n.pluginEnabled[U],plugin:m}),n.pluginsArray.length===y+1&&R.dispatch({type:A.initializeStart,plugins:J,disabled:Le})}),IE(function(m){R.dispatch({type:m?A.offline:A.online})}),function(m,y,O){setInterval(function(){return Wd(m,y,O)},3e3)}(R,l,$),$}var sn="before",cn="after",br="cookie",nt=nv(),tv=aa,EE=aa;function rv(e){return nt?aa(e,"",-1):Xt(e)}function nv(){if(nt!==void 0)return nt;var e="cookiecookie";try{aa(e,e),nt=document.cookie.indexOf(e)!==-1,rv(e)}catch{nt=!1}return nt}function aa(e,t,r,n,a,i){if(typeof window<"u"){var o=arguments.length>1;return nt===!1&&(o?dt(e,t):ft(e)),o?document.cookie=e+"="+encodeURIComponent(t)+(r?"; expires="+new Date(+new Date+1e3*r).toUTCString()+(n?"; path="+n:"")+(a?"; domain="+a:"")+(i?"; secure":""):""):decodeURIComponent((("; "+document.cookie).split("; "+e+"=")[1]||"").split(";")[0])}}var Sr="localStorage",PE=qo.bind(null,"localStorage");qt("localStorage","getItem",ft);qt("localStorage","setItem",dt);qt("localStorage","removeItem",Xt);var $r="sessionStorage",OE=qo.bind(null,"sessionStorage");qt("sessionStorage","getItem",ft);qt("sessionStorage","setItem",dt);qt("sessionStorage","removeItem",Xt);function Nt(e){var t=e;try{if((t=JSON.parse(e))==="true")return!0;if(t==="false")return!1;if(ie(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch{}if(t!==null&&t!=="")return t}var kE=PE(),_E=OE(),RE=nv();function av(e,t){if(e){var r=Qo(t),n=!ns(r),a=es(r)?Nt(localStorage.getItem(e)):void 0;if(n&&!Rt(a))return a;var i=ts(r)?Nt(tv(e)):void 0;if(n&&i)return i;var o=rs(r)?Nt(sessionStorage.getItem(e)):void 0;if(n&&o)return o;var s=ft(e);return n?s:{localStorage:a,sessionStorage:o,cookie:i,global:s}}}function CE(e,t,r){if(e&&!Rt(t)){var n={},a=Qo(r),i=JSON.stringify(t),o=!ns(a);return es(a)&&(n[Sr]=un(Sr,t,Nt(localStorage.getItem(e))),localStorage.setItem(e,i),o)?n[Sr]:ts(a)&&(n[br]=un(br,t,Nt(tv(e))),EE(e,i),o)?n[br]:rs(a)&&(n[$r]=un($r,t,Nt(sessionStorage.getItem(e))),sessionStorage.setItem(e,i),o)?n[$r]:(n[wr]=un(wr,t,ft(e)),dt(e,t),o?n[wr]:n)}}function AE(e,t){if(e){var r=Qo(t),n=av(e,Md),a={};return!Rt(n.localStorage)&&es(r)&&(localStorage.removeItem(e),a[Sr]=n.localStorage),!Rt(n.cookie)&&ts(r)&&(rv(e),a[br]=n.cookie),!Rt(n.sessionStorage)&&rs(r)&&(sessionStorage.removeItem(e),a[$r]=n.sessionStorage),!Rt(n.global)&&ia(r,wr)&&(Xt(e),a[wr]=n.global),a}}function Qo(e){return e?Ve(e)?e:e.storage:Dd}function es(e){return kE&&ia(e,Sr)}function ts(e){return RE&&ia(e,br)}function rs(e){return _E&&ia(e,$r)}function ns(e){return e===Md||e==="all"}function ia(e,t){return e===Dd||e===t||ns(e)}function un(e,t,r){return{location:e,current:t,previous:r}}var jE={setItem:CE,getItem:av,removeItem:AE};function LE(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function rl(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 nl(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?rl(Object(r),!0).forEach(function(n){LE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):rl(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function NE(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t={storage:jE};return TE(nl(nl({},t),e))}function UE(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 xE(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=ME(f);return a!==l&&(a=l,setTimeout(()=>e(f),0)),s.apply(r,u)}})}function DE(e,t){const r=e.indexOf(t);return r>-1?e.slice(0,r):e}function ME(e){return["#","?"].forEach(t=>e=DE(e,t)),e}function FE(){xE(()=>{xe.page()})}function zE(e){if(e===void 0&&(e={}),!X)return to;var t=il(),r=ao(),n=al(),a=ln(n,t),i=ln(r,t),o=[],s=[],u=[],f=n,l=a,c=i,d=Object.keys(e);if(!d.length)return to;var v=d.map(function(S){return Number(S)}),p=QT(function(){var S=il(),g=function(L,x){return x.map(function(z){return z===100?L-5:L*(z/100)})}(S,v),T=ao(),I=al(),b=ln(I,S),h=ln(T,S);if(l=b>l?b:l,c=h<c?h:c,!(o.length>=v.length)){var $=f===I,k="up";$?k="initial":f<=I&&(k="down");var _=g,C=v;(k==="up"||$)&&(_=g.slice().reverse(),C=v.slice().reverse());var M=C.reduce(function(L,x,z){var R=_[z];return u.includes(x)&&I<=R&&(u=u.filter(function(G){return G!==x}),L.singleFunction=x),k==="down"&&!o.includes(x)&&I>=R&&x>i?(s.push(x),L.callbacks=L.callbacks.concat(x),L):k==="up"&&!o.includes(x)&&I<=R&&x<=b?(L.foundFunc=[x],L):($&&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:k});if(f=I,k==="down"&&M.callbacks&&M.callbacks.forEach(function(L){oe(e[L])&&(e[L]({trigger:L,direction:k,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(L))}),M.singleFunction){var F=M.singleFunction,V=M.direction;oe(e[F])&&e[F]({trigger:F,direction:V,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(F)}}},500);return window.addEventListener("scroll",p),function(){return window.removeEventListener("scroll",p)}}function ao(){return X?document.body.scrollTop||document.documentElement.scrollTop:0}function BE(){return X?window.innerHeight||document.documentElement.clientHeight:0}function al(){return Math.round(ao()+BE())}function il(){if(!X)return 0;var e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}function ln(e,t){return Math.round(e/t*100)}var ol="EventListener";function HE(e){return function(t,r,n,a){var i=n||to,o=a||!1;if(!X)return i;var s=Ln(r),u=Ln(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"+ol:"remove"+ol,v=0;v<u.length;v++){var p=u[v];f[v]=c?o&&o.once?KE(i):i:f[v]||i;for(var S=0;S<s.length;S++)p[d]?p["on"+s[S]]=c?f[v]:null:p[d](s[S],f[v],o)}return l.bind(null,!c)}(e)}}function Ln(e,t){if(Ve(e))return t?Ln(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=ZT(e);return t?i.map(function(o){return Ve(o)?Ln(o,!0):o}).flat():i}function KE(e,t){var r;return function(){return e&&(r=e.apply(this,arguments),e=null),r}}var wi=HE("Event");function iv(e,t){return X&&oe(window[e])?(r=window[e],n=t,(a=window)===void 0&&(a=null),oe(r)?function(){r.apply(a,arguments),n.apply(a,arguments)}:n):window[e]=t;var r,n,a}iv.bind(null,"onerror");iv.bind(null,"onload");var ov=typeof window>"u",sl="hidden";function GE(e){if(ov)return!1;var t=WE(),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 WE(){var e=["webkit","moz","ms","o"];return ov||sl in document?sl:e.reduce(function(t,r){var n=r+"Hidden";return!t&&n in document?n:t},null)}var VE=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function ZE(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=GE(function(s){s||r({type:"tabVisible"})});return n=[o].concat(VE.map(function(s){return wi(document,s,r)})).concat(wi(window,"load",r)).concat(wi(window,"scroll",r,{capture:!0,passive:!0})),i}function i(){n.map(function(o){return o()})}return a(),function(){return i(),a}}function JE(e){var t,r,n=e.onIdle,a=e.onWakeUp,i=e.onHeartbeat,o=e.timeout,s=o===void 0?1e4:o,u=e.throttle,f=u===void 0?2e3:u,l=!1,c=!1,d=new Date,v=function(){return clearTimeout(t)};function p(g){v(),i&&!l&&i(cr(d),g),a&&l&&(l=!1,a(cr(r),g),d=new Date),t=setTimeout(function(){l=!0,n&&(r=new Date,n(cr(d),g))},s)}var S=ZE(p,{throttle:f});return{disable:function(){c=!0,l=!1,v();var g=S();return function(){return c=!1,d=new Date,p({type:"load"}),g()}},getStatus:function(){return{isIdle:l,isDisabled:c,active:l?0:cr(d,c),idle:l?cr(r,c):0}}}}function cr(e,t){return t?0:Math.round((new Date-e)/1e3)}const cl=5e3;class YE{constructor(t){le(this,"element");le(this,"isInViewport",!1);le(this,"isAwake",!1);le(this,"isFlushing");le(this,"observer");le(this,"lastEventAt",Date.now());le(this,"registeredView",!1);le(this,"viewCallback");le(this,"activeDurationCallback");le(this,"idleDurationCallback");le(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),JE({onIdle:r=>this.handleAwake(!1,r),onWakeUp:r=>this.handleAwake(!0,r),timeout:cl}),zE({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*cl: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 ul="sesamy_session_id";function XE(){let e=sessionStorage.getItem(ul);return e||(e=Math.random().toString(36).slice(2,9),sessionStorage.setItem(ul,e)),e}let sv=!1,io,ll,Nn;const cv=new Map;function qE({clientId:e,enabled:t=!0,environment:r}){if(io=e,ll=t,Nn=`${Ke("logs",r)}/events`,!ll)return;window.addEventListener("beforeunload",()=>{lv.forEach((a,i)=>{a.bind(i)()}),eP()}),window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&cv.forEach((a,i)=>{a.bind(i)()})}),FE();const n=new YE({element:document.body,viewCallback:()=>{xe.page()},activeDurationCallback:(a,i,o)=>{xe.track("activeDuration",{duration:a,durationStart:o,flushing:i})},idleDurationCallback:(a,i,o)=>{xe.track("idleDuration",{duration:a,durationStart:o,flushing:i})},scrollCallback:a=>{xe.track("scroll",{scroll:a.scrollMax})}});tP(document.body,()=>{n.flush()}),rP(document.body,()=>{n.handleVisibilityChange()}),window.addEventListener(Te.AUTHENTICATED,async a=>{const i=a;await xe.identify(i.detail.sub)}),window.addEventListener(Te.LOGOUT,async()=>{await xe.track("logout",{}),as.flush(),await xe.reset()})}function uv(e){return JSON.stringify(e.map(t=>({...t,clientId:io,requestId:Math.random().toString(36).slice(2,9),sessionId:XE(),timestamp:new Date().toISOString(),version:Xo,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:xd,userAgent:navigator.userAgent,clientId:io}})))}const as=UE(async e=>{if(e.length>0){const t=uv(e);sv?navigator.sendBeacon(Nn,t):(await fetch(Nn,{method:"POST",body:t,headers:{"Content-Type":"text/plain"}})).ok}},{max:10,interval:3e3});function bi(e){var t;if(e.anonymousId)if((t=e.properties)!=null&&t.flushing){const r={...e};delete r.properties.flushing,navigator.sendBeacon(Nn,uv([r]))}else as.push(e)}const xe=NE({app:xd,version:Xo,plugins:[{name:"custom-analytics-plugin",page:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;bi({anonymousId:r,userId:n,properties:t,event:a,type:"page"})},track:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;bi({anonymousId:r,userId:n,properties:t,event:a,type:"track"})},identify:({payload:e})=>{const{properties:t,anonymousId:r,userId:n}=e;bi({anonymousId:r,userId:n,properties:t,type:"identify"})}}]});function QE(e,t){xe.track(e,t)}function eP(){return sv=!0,as.flush()}const lv=new Map;function tP(e,t){lv.set(e,t)}function rP(e,t){cv.set(e,t)}const fv="sesamySignedURLs";function dv(){const e=sessionStorage.getItem(fv);return e?JSON.parse(e):[]}function nP(e){const t=dv();t.push(e),sessionStorage.setItem(fv,JSON.stringify(t))}function aP(e){const{createCheckout:t,getCheckout:r,updateCheckout:n,getEntitlement:a,getEntitlements:i,getEntitlementAccess:o,getSubscriptions:s,getContract:u,getContracts:f,getBill:l,getBills:c,getTransaction:d,getTransactions:v,getProfile:p,updateProfile:S,getTags:g,deleteTag:T,setTag:I,getUserMetadata:b,listUserMetadata:h,setUserMetadata:$,deleteUserMetadata:k,getTally:_,getTallies:C,pushTally:M,deleteTally:F,getProduct:V,getPaymentIssues:L,isSpotifyLinked:x,unlinkSpotify:z,linkSpotify:R,autoOnboardProduct:G,openHostedAccountPage:J,generateLink:Le}=DT(e),m={auth:{getUser:p,isAuthenticated:Jo,loginWithRedirect:Yo,logout:Cd,setToken:jd},checkouts:{get:r,create:t,update:n},profile:{get:p,update:S,openHostedAccountPage:J,isSpotifyLinked:x,unlinkSpotify:z},analytics:{track:QE},tags:{list:g,set:I,delete:T},entitlements:{get:a,list:i,access:o,signedLinks:dv},contracts:{get:u,list:f},bills:{get:l,list:c},userMetadata:{get:b,list:h,set:$,delete:k},tallies:{get:_,list:C,push:M,delete:F},subscriptions:{list:s},transactions:{get:d,list:v},products:{get:V,autoOnboard:G,linkSpotify:R},getVersion:iP,getPaymentIssues:L,generateLink:Le,clearCache:Se};return e.namespace&&(window[e.namespace]=m),m}function iP(){return Xo}async function oP({enabled:e=!1,rules:t}){if(!e)return;const r=await Jo(),n=window.location.href;for(const a of t){const i=document.querySelectorAll(a.selector);if(!(a.path&&!new RegExp(a.path).test(n))){for(const o of i)if(!(a.authenticated!==void 0&&a.authenticated!==r))switch(a.transform){case"insert":if(a.contentType==="selector"&&a.content){const s=document.querySelector(a.content);s?o.innerHTML+=s.innerHTML:console.warn(`Source element for selector '${a.content}' not found`)}else if(a.contentType==="url"&&a.content){const s=await fl(a.content);s?o.innerHTML+=s:console.warn(`Failed to fetch content from URL '${a.content}'`)}else a.content&&(o.innerHTML+=a.content);break;case"replace":if(a.contentType==="selector"&&a.content){const s=document.querySelector(a.content);s?o.innerHTML=s.innerHTML:console.warn(`Source element for selector '${a.content}' not found`)}else if(a.contentType==="url"&&a.content){const s=await fl(a.content);s?o.innerHTML=s:console.warn(`Failed to fetch content from URL '${a.content}'`)}else a.content&&(o.innerHTML=a.content);break;case"remove":o.remove();break;default:console.warn(`Unknown transform type: ${a.transform}`)}}}}async function fl(e){try{const t=await fetch(e);return t.ok?await t.text():(console.error(`Failed to fetch content from ${e}: ${t.statusText}`),null)}catch(t){return console.error(`Error fetching content from ${e}:`,t),null}}function sP(){const e=new URLSearchParams(window.location.hash.substring(1)),t=e.get("access_token");if(t){jd(t);const r=new URL(window.location.href);e.delete("access_token"),r.hash=e.toString(),window.history.replaceState(null,"",r)}}const dl="sesamy-refresh",vl="force-refetch-entitlements";function cP(){const e=new URLSearchParams(window.location.search),t=e.get(vl),r=e.get(dl);if(t!==null||r!==null){const n=new URL(window.location.href);e.delete(vl),e.delete(dl),n.search=e.toString(),Se(),window.history.replaceState(null,"",n)}}function uP(){const e=new URLSearchParams(window.location.search),t=e.get("token"),r=e.get("se");if(!r||!t)return;const n=parseInt(r,10);if(Number.isNaN(n)||n<Date.now())return;nP({url:window.location.href.split("?")[0],token:t,expiresAt:n,publisherContentId:e.get("sp")??void 0});const a=new URL(window.location.href);a.searchParams.delete("ss"),a.searchParams.delete("se"),a.searchParams.delete("sp"),a.searchParams.delete("so"),a.searchParams.delete("token"),window.history.replaceState(null,"",a)}const hl="sesamy-user";async function lP(){const t=new URLSearchParams(window.location.search).get(hl);if(!t)return;const r=await ET();(r==null?void 0:r.email)!==t&&(Se(),Yo({authorizationParams:{email_hint:t,login_hint:t}}));const n=new URL(window.location.href);n.searchParams.delete(hl),window.history.replaceState(null,"",n)}const pl="sesamy-purchase";function fP(){const e=new URLSearchParams(window.location.search),t=e.get(pl);if(t!==null){const r=new URL(window.location.href);e.delete(pl),r.search=e.toString(),Ye(Te.PURCHASE,{itemSrc:t}),Se(),window.history.replaceState(null,"",r)}}const ml="sesamy-login";async function dP(){if(!new URLSearchParams(window.location.search).get(ml))return;await Jo()||Yo();const n=new URL(window.location.href);n.searchParams.delete(ml),window.history.replaceState(null,"",n)}const vP=typeof window<"u";async function gl(e){qE({clientId:e.clientId,environment:e.environment,...e.analytics}),await TT({clientId:e.clientId,organization:e.organization,environment:e.environment,...e.auth}),e.transform&&await oP(e.transform),sP(),cP(),uP(),await dP(),await lP(),fP(),Ye(Te.READY,{})}async function vv(e){const t=aP({clientId:e.clientId,environment:e.environment,...e.api});return vP&&(e.awaitAllServices?await gl(e):gl(e)),t}if(typeof document<"u"){const e=document.getElementById("sesamy-js");if(e!=null&&e.textContent)try{const t=JSON.parse(e.textContent);vv(t)}catch(t){console.error("Failed to parse config",t)}}exports.init=vv;
|
|
6
|
+
`))}}(C.methodName,C.pluginName),Promise.resolve(C.method({payload:F,instance:n,abort:(V=F,L=b,x=C.pluginName,function(z,R){return j({},V,{abort:{reason:z,plugins:R||[L],caller:c,from:x||L}})}),config:Wu(C.pluginName,f,i),plugins:f})).then(function(z){var R=ie(z)?z:{};return Promise.resolve(j({},F,R))})):F;var V,L,x})}catch(F){return Promise.reject(F)}},Promise.resolve(r))).then(function(_){h[b]=_});h[b]=r}();return k&&k.then?k.then($):$()})}catch(h){return Promise.reject(h)}},Promise.resolve({}))).then(function(g){return Promise.resolve(t.exact.reduce(function(T,I,b){try{var h=t.exact.length===b+1,$=I.pluginName,k=i[$];return Promise.resolve(T).then(function(_){var C=g[$]?g[$]:{};if(d&&(C=_),gi(C,$))return mi({data:C,method:c,instance:n,pluginName:$,store:s}),Promise.resolve(_);if(gi(_,$))return h&&mi({data:_,method:c,instance:n,store:s}),Promise.resolve(_);if(S.hasOwnProperty($)&&S[$]===!0)return s.dispatch({type:"queue",plugin:$,payload:C,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(_);var M=p(g[$],i[$]);return Promise.resolve(k[c]({abort:M.abort,payload:C,instance:n,config:Wu($,f,i),plugins:f})).then(function(F){var V=ie(F)?F:{},L=j({},_,V),x=g[$];if(gi(x,$))mi({data:x,method:c,instance:n,pluginName:$,store:s});else{var z=c+":"+$;(z.match(/:/g)||[]).length<2&&!c.match(Ku)&&!c.match(Gu)&&n.dispatch(j({},d?L:C,{type:z,_:{called:z,from:"submethod"}}))}return Promise.resolve(L)})})}catch(_){return Promise.reject(_)}},Promise.resolve(r))).then(function(T){if(!(c.match(Lt)||c.match(/^registerPlugin/)||c.match(Gu)||c.match(Ku)||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"}});Vd(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)}},Lt=/Start$/,Ku=/^bootstrap/,Gu=/^ready/;function mi(e){var t=e.pluginName,r=e.method+"Aborted"+(t?":"+t:"");e.store.dispatch(j({},e.data,{type:r,_:{called:r,from:"abort"}}))}function Wu(e,t,r){var n=t[e]||r[e];return n&&n.config?n.config:{}}function Vu(e,t){return t.reduce(function(r,n){return n[e]?r.concat({methodName:e,pluginName:n.name,method:n[e]}):r},[])}function Zu(e,t){var r=e.replace(Lt,""),n=t?":"+t:"";return[""+e+n,""+r+n,r+"End"+n]}function gi(e,t){var r=e.abort;return!!r&&(r===!0||Ju(r,t)||r&&Ju(r.plugins,t))}function Vd(e,t){var r=e.abort;if(!r)return!1;if(r===!0||Ve(r))return!0;var n=r.plugins;return Er(r)&&r.length===t||Er(n)&&n.length===t}function Er(e){return Array.isArray(e)}function Ju(e,t){return!(!e||!Er(e))&&e.includes(t)}function Yu(e){var t=e.match(/(.*):(.*)/);return!!t&&{method:t[1],name:t[2]}}function sE(e){return Object.keys(e).reduce(function(t,r){return r==="type"||(t[r]=ie(e[r])?Object.assign({},e[r]):e[r]),t},{})}function cE(e,t,r){var n={};return function(a){return function(i){return function(o){try{var s,u=function(h){return s?h:i(c)},f=o.type,l=o.plugins,c=o;if(o.abort)return Promise.resolve(i(o));if(f===A.enablePlugin&&a.dispatch({type:A.initializeStart,plugins:l,disabled:[],fromEnable:!0,meta:o.meta}),f===A.disablePlugin&&setTimeout(function(){return Hu(o.meta.rid,{payload:o})},0),f===A.initializeEnd){var d=t(),v=Object.keys(d),p=v.filter(function(h){return l.includes(h)}).map(function(h){return d[h]}),S=[],g=[],T=o.disabled,I=p.map(function(h){var $=h.loaded,k=h.name,_=h.config;return Gd(h,function(){return $({config:_})},1e4).then(function(C){return n[k]||(a.dispatch({type:A.pluginReadyType(k),name:k,events:Object.keys(h).filter(function(M){return!ro.includes(M)})}),n[k]=!0),S=S.concat(k),h}).catch(function(C){if(C instanceof Error)throw new Error(C);return g=g.concat(C.name),C})});Promise.all(I).then(function(h){var $={plugins:S,failed:g,disabled:T};setTimeout(function(){v.length===I.length+T.length&&a.dispatch(j({},{type:A.ready},$))},0)})}var b=function(){if(f!==A.bootstrap)return/^ready:([^:]*)$/.test(f)&&setTimeout(function(){return Wd(a,t,e)},0),Promise.resolve(function(h,$,k,_,C){try{var M=oe($)?$():$,F=h.type,V=F.replace(Lt,"");if(h._&&h._.called)return Promise.resolve(h);var L=k.getState(),x=(G=M,(J=L.plugins)===void 0&&(J={}),(Le=h.options)===void 0&&(Le={}),Object.keys(G).filter(function(m){var y=Le.plugins||{};return BT(y[m])?y[m]:y.all!==!1&&(!J[m]||J[m].enabled!==!1)}).map(function(m){return G[m]}));F===A.initializeStart&&h.fromEnable&&(x=Object.keys(L.plugins).filter(function(m){var y=L.plugins[m];return h.plugins.includes(m)&&!y.initialized}).map(function(m){return M[m]}));var z=x.map(function(m){return m.name}),R=function(m,y,O){var N=Zu(m).map(function(U){return Vu(U,y)});return y.reduce(function(U,D){var Z=D.name,w=Zu(m,Z).map(function(ae){return Vu(ae,y)}),E=w[0],P=w[1],B=w[2];return E.length&&(U.beforeNS[Z]=E),P.length&&(U.duringNS[Z]=P),B.length&&(U.afterNS[Z]=B),U},{before:N[0],beforeNS:{},during:N[1],duringNS:{},after:N[2],afterNS:{}})}(F,x);return Promise.resolve(pi({action:h,data:{exact:R.before,namespaced:R.beforeNS},state:L,allPlugins:M,allMatches:R,instance:k,store:_,EVENTS:C})).then(function(m){function y(){var U=function(){if(F.match(Lt))return Promise.resolve(pi({action:j({},O,{type:V+"End"}),data:{exact:R.after,namespaced:R.afterNS},state:L,allPlugins:M,allMatches:R,instance:k,store:_,EVENTS:C})).then(function(D){D.meta&&D.meta.hasCallback&&Hu(D.meta.rid,{payload:D})})}();return U&&U.then?U.then(function(){return m}):m}if(Vd(m,z.length))return m;var O,N=function(){if(F!==V)return Promise.resolve(pi({action:j({},m,{type:V}),data:{exact:R.during,namespaced:R.duringNS},state:L,allPlugins:M,allMatches:R,instance:k,store:_,EVENTS:C})).then(function(U){O=U});O=m}();return N&&N.then?N.then(y):y()})}catch(m){return Promise.reject(m)}var G,J,Le}(o,t,e,a,r)).then(function(h){return s=1,i(h)})}();return Promise.resolve(b&&b.then?b.then(u):u(b))}catch(h){return Promise.reject(h)}}}}}function uE(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 lE=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 Gt.apply(void 0,o)(n)(a)}}}}};function fE(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=Xu(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=Xu(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,qu(r.plugins,!1,t));case A.enablePlugin:return j({},t,qu(r.plugins,!0,t));default:return t}}}function Xu(e,t){return e.substring(t.length+1,e.length)}function qu(e,t,r){return e.reduce(function(n,a){return n[a]=j({},r[a],{enabled:t}),n},r)}function Zd(e){try{return JSON.parse(JSON.stringify(e))}catch{}return e}var dE={last:{},history:[]};function vE(e,t){e===void 0&&(e=dE);var r=t.options,n=t.meta;if(t.type===A.track){var a=Zd(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 hE={actions:[]};function pE(e,t){e===void 0&&(e=hE);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 Jd=/#.*$/;function mE(e){var t=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(e);return"/"+(t&&t[3]?t[3].split("?")[0].replace(Jd,""):"")}var Yd,Xd,qd,Qd,gE=function(e){if(e===void 0&&(e={}),!X)return e;var t=document,r=t.title,n=t.referrer,a=window,i=a.location,o=a.innerWidth,s=a.innerHeight,u=i.hash,f=i.search,l=function(d){var v=function(){if(X){for(var p,S=document.getElementsByTagName("link"),g=0;p=S[g];g++)if(p.getAttribute("rel")==="canonical")return p.getAttribute("href")}}();return v?v.match(/\?/)?v:v+d:window.location.href.replace(Jd,"")}(f),c={title:r,url:l,path:mE(l),hash:u,search:f,width:o,height:s};return n&&n!==""&&(c.referrer=n),j({},c,e)},yE={last:{},history:[]};function wE(e,t){e===void 0&&(e=yE);var r=t.options;if(t.type===A.page){var n=Zd(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}Yd=function(){if(!X)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"}(),Xd=X?document.referrer:null,qd=JT(),Qd=YT();var Qu={initialized:!1,sessionId:na(),app:null,version:null,debug:!1,offline:!!X&&!navigator.onLine,os:{name:Yd},userAgent:X?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.13"},timezone:Qd,locale:qd,campaign:{},referrer:Xd};function bE(e,t){e===void 0&&(e=Qu);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({},Qu,e,{initialized:!0})}}var SE=["plugins","reducers","storage"];function $E(e,t,r){if(X){var n=window[(r?"add":"remove")+"EventListener"];e.split(" ").forEach(function(a){n(a,t)})}}function IE(e){var t=$E.bind(null,"online offline",function(r){return Promise.resolve(!navigator.onLine).then(e)});return t(!0),function(r){return t(!1)}}function ev(){return dt("analytics",[]),function(e){return function(t,r,n){var a=e(t,r,n),i=a.dispatch;return Object.assign(a,{dispatch:function(o){return Kt[Ht].analytics.push(o.action||o),i(o)}})}}}function el(e){return function(){return Gt(Gt.apply(null,arguments),ev())}}function yi(e){return e?Bd(e)?e:[e]:[]}function tl(e,t,r){e===void 0&&(e={});var n,a,i=na();return t&&(dr[i]=(n=t,a=function(o){for(var s,u=o||Array.prototype.slice.call(arguments),f=0;f<u.length;f++)if(oe(u[f])){s=u[f];break}return s}(r),function(o){a&&a(o),n(o)})),j({},e,{rid:i,ts:new Date().getTime()},t?{hasCallback:!0}:{})}function TE(e){e===void 0&&(e={});var t=e.reducers||{},r=e.initialUser||{},n=(e.plugins||[]).reduce(function(m,y){if(oe(y))return m.middlewares=m.middlewares.concat(y),m;if(y.NAMESPACE&&(y.name=y.NAMESPACE),!y.name)throw new Error("https://lytics.dev/errors/1");y.config||(y.config={});var O=y.EVENTS?Object.keys(y.EVENTS).map(function(D){return y.EVENTS[D]}):[];m.pluginEnabled[y.name]=!(y.enabled===!1||y.config.enabled===!1),delete y.enabled,y.methods&&(m.methods[y.name]=Object.keys(y.methods).reduce(function(D,Z){var w;return D[Z]=(w=y.methods[Z],function(){for(var E=Array.prototype.slice.call(arguments),P=new Array(w.length),B=0;B<E.length;B++)P[B]=E[B];return P[P.length]=$,w.apply({instance:$},P)}),D},{}),delete y.methods);var N=Object.keys(y).concat(O),U=new Set(m.events.concat(N));if(m.events=Array.from(U),m.pluginsArray=m.pluginsArray.concat(y),m.plugins[y.name])throw new Error(y.name+"AlreadyLoaded");return m.plugins[y.name]=y,m.plugins[y.name].loaded||(m.plugins[y.name].loaded=function(){return!0}),m},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),a=e.storage?e.storage:{getItem:ft,setItem:dt,removeItem:Xt},i=function(m){return function(y,O,N){return O.getState("user")[y]||(N&&ie(N)&&N[y]?N[y]:Bu(m)[y]||ft(no(y))||null)}}(a),o=n.plugins,s=n.events.filter(function(m){return!ro.includes(m)}).sort(),u=new Set(s.concat(yn).filter(function(m){return!ro.includes(m)})),f=Array.from(u).sort(),l=function(){return o},c=new lE,d=c.addMiddleware,v=c.removeMiddleware,p=c.dynamicMiddlewares,S=function(){throw new Error("Abort disabled inListener")},g=XT(),T=Bu(a),I=j({},T,r,g.an_uid?{userId:g.an_uid}:{},g.an_aid?{anonymousId:g.an_aid}:{});I.anonymousId||(I.anonymousId=na());var b=j({enable:function(m,y){return new Promise(function(O){R.dispatch({type:A.enablePlugin,plugins:yi(m),_:{originalAction:A.enablePlugin}},O,[y])})},disable:function(m,y){return new Promise(function(O){R.dispatch({type:A.disablePlugin,plugins:yi(m),_:{originalAction:A.disablePlugin}},O,[y])})}},n.methods),h=!1,$={identify:function(m,y,O,N){try{var U=Ve(m)?m:null,D=ie(m)?m:y,Z=O||{},w=$.user();dt(no(He),U);var E=U||D.userId||i(He,$,D);return Promise.resolve(new Promise(function(P){R.dispatch(j({type:A.identifyStart,userId:E,traits:D||{},options:Z,anonymousId:w.anonymousId},w.id&&w.id!==U&&{previousId:w.id}),P,[y,O,N])}))}catch(P){return Promise.reject(P)}},track:function(m,y,O,N){try{var U=ie(m)?m.event:m;if(!U||!Ve(U))throw new Error("EventMissing");var D=ie(m)?m:y||{},Z=ie(O)?O:{};return Promise.resolve(new Promise(function(w){R.dispatch({type:A.trackStart,event:U,properties:D,options:Z,userId:i(He,$,y),anonymousId:i(Ct,$,y)},w,[y,O,N])}))}catch(w){return Promise.reject(w)}},page:function(m,y,O){try{var N=ie(m)?m:{},U=ie(y)?y:{};return Promise.resolve(new Promise(function(D){R.dispatch({type:A.pageStart,properties:gE(N),options:U,userId:i(He,$,N),anonymousId:i(Ct,$,N)},D,[m,y,O])}))}catch(D){return Promise.reject(D)}},user:function(m){if(m===He||m==="id")return i(He,$);if(m===Ct||m==="anonId")return i(Ct,$);var y=$.getState("user");return m?Nu(y,m):y},reset:function(m){return new Promise(function(y){R.dispatch({type:A.resetStart},y,m)})},ready:function(m){return h&&m({plugins:b,instance:$}),$.on(A.ready,function(y){m(y),h=!0})},on:function(m,y){if(!m||!oe(y))return!1;if(m===A.bootstrap)throw new Error(".on disabled for "+m);var O=/Start$|Start:/;if(m==="*"){var N=function(w){return function(E){return function(P){return P.type.match(O)&&y({payload:P,instance:$,plugins:o}),E(P)}}},U=function(w){return function(E){return function(P){return P.type.match(O)||y({payload:P,instance:$,plugins:o}),E(P)}}};return d(N,sn),d(U,cn),function(){v(N,sn),v(U,cn)}}var D=m.match(O)?sn:cn,Z=function(w){return function(E){return function(P){return P.type===m&&y({payload:P,instance:$,plugins:o,abort:S}),E(P)}}};return d(Z,D),function(){return v(Z,D)}},once:function(m,y){if(!m||!oe(y))return!1;if(m===A.bootstrap)throw new Error(".once disabled for "+m);var O=$.on(m,function(N){y({payload:N.payload,instance:$,plugins:o,abort:S}),O()});return O},getState:function(m){var y=R.getState();return m?Nu(y,m):Object.assign({},y)},dispatch:function(m){var y=Ve(m)?{type:m}:m;if(yn.includes(y.type))throw new Error("reserved action "+y.type);var O=j({},y,{_:j({originalAction:y.type},m._||{})});R.dispatch(O)},enablePlugin:b.enable,disablePlugin:b.disable,plugins:b,storage:{getItem:a.getItem,setItem:function(m,y,O){R.dispatch({type:A.setItemStart,key:m,value:y,options:O})},removeItem:function(m,y){R.dispatch({type:A.removeItemStart,key:m,options:y})}},setAnonymousId:function(m,y){$.storage.setItem(Ze,m,y)},events:{core:yn,plugins:s}},k=n.middlewares.concat([function(m){return function(y){return function(O){return O.meta||(O.meta=tl()),y(O)}}},p(sn),cE($,l,{all:f,plugins:s}),uE(a),nE($),iE($),p(cn)]),_={context:bE,user:aE(a),page:wE,track:vE,plugins:fE(l),queue:pE},C=Gt,M=Gt;if(X&&e.debug){var F=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;F&&(C=F({trace:!0,traceLimit:25})),M=function(){return arguments.length===0?ev():ie(typeof arguments[0])?el():el().apply(null,arguments)}}var V,L=function(m){return Object.keys(m).reduce(function(y,O){return SE.includes(O)||(y[O]=m[O]),y},{})}(e),x=n.pluginsArray.reduce(function(m,y){var O=y.name,N=y.config,U=y.loaded,D=n.pluginEnabled[O];return m[O]={enabled:D,initialized:!!D&&!y.initialize,loaded:!!U({config:N}),config:N},m},{}),z={context:L,user:I,plugins:x},R=Kd(function(m){for(var y=Object.keys(m),O={},N=0;N<y.length;N++){var U=y[N];typeof m[U]===Ge&&(O[U]=m[U])}var D,Z=Object.keys(O);try{(function(w){Object.keys(w).forEach(function(E){var P=w[E];if(typeof P(void 0,{type:"@@redux/INIT"})===De||typeof P(void 0,{type:eE})===De)throw new Error("reducer "+E+" "+De)})})(O)}catch(w){D=w}return function(w,E){if(w===void 0&&(w={}),D)throw D;for(var P=!1,B={},ae=0;ae<Z.length;ae++){var ze=Z[ae],is=w[ze],oa=(0,O[ze])(is,E);if(typeof oa===De){var hv=tE(ze,E);throw new Error(hv)}B[ze]=oa,P=P||oa!==is}return P?B:w}}(j({},_,t)),z,M(C(rE.apply(void 0,k))));R.dispatch=(V=R.dispatch,function(m,y,O){var N=j({},m,{meta:tl(m.meta,y,yi(O))});return V.apply(null,[N])});var G=Object.keys(o);R.dispatch({type:A.bootstrap,plugins:G,config:L,params:g,user:I,initialUser:r,persistedUser:T});var J=G.filter(function(m){return n.pluginEnabled[m]}),Le=G.filter(function(m){return!n.pluginEnabled[m]});return R.dispatch({type:A.registerPlugins,plugins:G,enabled:n.pluginEnabled}),n.pluginsArray.map(function(m,y){var O=m.bootstrap,N=m.config,U=m.name;O&&oe(O)&&O({instance:$,config:N,payload:m}),R.dispatch({type:A.registerPluginType(U),name:U,enabled:n.pluginEnabled[U],plugin:m}),n.pluginsArray.length===y+1&&R.dispatch({type:A.initializeStart,plugins:J,disabled:Le})}),IE(function(m){R.dispatch({type:m?A.offline:A.online})}),function(m,y,O){setInterval(function(){return Wd(m,y,O)},3e3)}(R,l,$),$}var sn="before",cn="after",br="cookie",nt=nv(),tv=aa,EE=aa;function rv(e){return nt?aa(e,"",-1):Xt(e)}function nv(){if(nt!==void 0)return nt;var e="cookiecookie";try{aa(e,e),nt=document.cookie.indexOf(e)!==-1,rv(e)}catch{nt=!1}return nt}function aa(e,t,r,n,a,i){if(typeof window<"u"){var o=arguments.length>1;return nt===!1&&(o?dt(e,t):ft(e)),o?document.cookie=e+"="+encodeURIComponent(t)+(r?"; expires="+new Date(+new Date+1e3*r).toUTCString()+(n?"; path="+n:"")+(a?"; domain="+a:"")+(i?"; secure":""):""):decodeURIComponent((("; "+document.cookie).split("; "+e+"=")[1]||"").split(";")[0])}}var Sr="localStorage",PE=qo.bind(null,"localStorage");qt("localStorage","getItem",ft);qt("localStorage","setItem",dt);qt("localStorage","removeItem",Xt);var $r="sessionStorage",OE=qo.bind(null,"sessionStorage");qt("sessionStorage","getItem",ft);qt("sessionStorage","setItem",dt);qt("sessionStorage","removeItem",Xt);function Nt(e){var t=e;try{if((t=JSON.parse(e))==="true")return!0;if(t==="false")return!1;if(ie(t))return t;parseFloat(t)===t&&(t=parseFloat(t))}catch{}if(t!==null&&t!=="")return t}var kE=PE(),_E=OE(),RE=nv();function av(e,t){if(e){var r=Qo(t),n=!ns(r),a=es(r)?Nt(localStorage.getItem(e)):void 0;if(n&&!Rt(a))return a;var i=ts(r)?Nt(tv(e)):void 0;if(n&&i)return i;var o=rs(r)?Nt(sessionStorage.getItem(e)):void 0;if(n&&o)return o;var s=ft(e);return n?s:{localStorage:a,sessionStorage:o,cookie:i,global:s}}}function CE(e,t,r){if(e&&!Rt(t)){var n={},a=Qo(r),i=JSON.stringify(t),o=!ns(a);return es(a)&&(n[Sr]=un(Sr,t,Nt(localStorage.getItem(e))),localStorage.setItem(e,i),o)?n[Sr]:ts(a)&&(n[br]=un(br,t,Nt(tv(e))),EE(e,i),o)?n[br]:rs(a)&&(n[$r]=un($r,t,Nt(sessionStorage.getItem(e))),sessionStorage.setItem(e,i),o)?n[$r]:(n[wr]=un(wr,t,ft(e)),dt(e,t),o?n[wr]:n)}}function AE(e,t){if(e){var r=Qo(t),n=av(e,Md),a={};return!Rt(n.localStorage)&&es(r)&&(localStorage.removeItem(e),a[Sr]=n.localStorage),!Rt(n.cookie)&&ts(r)&&(rv(e),a[br]=n.cookie),!Rt(n.sessionStorage)&&rs(r)&&(sessionStorage.removeItem(e),a[$r]=n.sessionStorage),!Rt(n.global)&&ia(r,wr)&&(Xt(e),a[wr]=n.global),a}}function Qo(e){return e?Ve(e)?e:e.storage:Dd}function es(e){return kE&&ia(e,Sr)}function ts(e){return RE&&ia(e,br)}function rs(e){return _E&&ia(e,$r)}function ns(e){return e===Md||e==="all"}function ia(e,t){return e===Dd||e===t||ns(e)}function un(e,t,r){return{location:e,current:t,previous:r}}var jE={setItem:CE,getItem:av,removeItem:AE};function LE(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function rl(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 nl(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?rl(Object(r),!0).forEach(function(n){LE(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):rl(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function NE(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t={storage:jE};return TE(nl(nl({},t),e))}function UE(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 xE(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=ME(f);return a!==l&&(a=l,setTimeout(()=>e(f),0)),s.apply(r,u)}})}function DE(e,t){const r=e.indexOf(t);return r>-1?e.slice(0,r):e}function ME(e){return["#","?"].forEach(t=>e=DE(e,t)),e}function FE(){xE(()=>{xe.page()})}function zE(e){if(e===void 0&&(e={}),!X)return to;var t=il(),r=ao(),n=al(),a=ln(n,t),i=ln(r,t),o=[],s=[],u=[],f=n,l=a,c=i,d=Object.keys(e);if(!d.length)return to;var v=d.map(function(S){return Number(S)}),p=QT(function(){var S=il(),g=function(L,x){return x.map(function(z){return z===100?L-5:L*(z/100)})}(S,v),T=ao(),I=al(),b=ln(I,S),h=ln(T,S);if(l=b>l?b:l,c=h<c?h:c,!(o.length>=v.length)){var $=f===I,k="up";$?k="initial":f<=I&&(k="down");var _=g,C=v;(k==="up"||$)&&(_=g.slice().reverse(),C=v.slice().reverse());var M=C.reduce(function(L,x,z){var R=_[z];return u.includes(x)&&I<=R&&(u=u.filter(function(G){return G!==x}),L.singleFunction=x),k==="down"&&!o.includes(x)&&I>=R&&x>i?(s.push(x),L.callbacks=L.callbacks.concat(x),L):k==="up"&&!o.includes(x)&&I<=R&&x<=b?(L.foundFunc=[x],L):($&&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:k});if(f=I,k==="down"&&M.callbacks&&M.callbacks.forEach(function(L){oe(e[L])&&(e[L]({trigger:L,direction:k,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(L))}),M.singleFunction){var F=M.singleFunction,V=M.direction;oe(e[F])&&e[F]({trigger:F,direction:V,scrollMin:c,scrollMax:l,range:[c,l]}),o.push(F)}}},500);return window.addEventListener("scroll",p),function(){return window.removeEventListener("scroll",p)}}function ao(){return X?document.body.scrollTop||document.documentElement.scrollTop:0}function BE(){return X?window.innerHeight||document.documentElement.clientHeight:0}function al(){return Math.round(ao()+BE())}function il(){if(!X)return 0;var e=document.body,t=document.documentElement;return Math.max(e.scrollHeight,e.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}function ln(e,t){return Math.round(e/t*100)}var ol="EventListener";function HE(e){return function(t,r,n,a){var i=n||to,o=a||!1;if(!X)return i;var s=Ln(r),u=Ln(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"+ol:"remove"+ol,v=0;v<u.length;v++){var p=u[v];f[v]=c?o&&o.once?KE(i):i:f[v]||i;for(var S=0;S<s.length;S++)p[d]?p["on"+s[S]]=c?f[v]:null:p[d](s[S],f[v],o)}return l.bind(null,!c)}(e)}}function Ln(e,t){if(Ve(e))return t?Ln(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=ZT(e);return t?i.map(function(o){return Ve(o)?Ln(o,!0):o}).flat():i}function KE(e,t){var r;return function(){return e&&(r=e.apply(this,arguments),e=null),r}}var wi=HE("Event");function iv(e,t){return X&&oe(window[e])?(r=window[e],n=t,(a=window)===void 0&&(a=null),oe(r)?function(){r.apply(a,arguments),n.apply(a,arguments)}:n):window[e]=t;var r,n,a}iv.bind(null,"onerror");iv.bind(null,"onload");var ov=typeof window>"u",sl="hidden";function GE(e){if(ov)return!1;var t=WE(),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 WE(){var e=["webkit","moz","ms","o"];return ov||sl in document?sl:e.reduce(function(t,r){var n=r+"Hidden";return!t&&n in document?n:t},null)}var VE=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function ZE(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=GE(function(s){s||r({type:"tabVisible"})});return n=[o].concat(VE.map(function(s){return wi(document,s,r)})).concat(wi(window,"load",r)).concat(wi(window,"scroll",r,{capture:!0,passive:!0})),i}function i(){n.map(function(o){return o()})}return a(),function(){return i(),a}}function JE(e){var t,r,n=e.onIdle,a=e.onWakeUp,i=e.onHeartbeat,o=e.timeout,s=o===void 0?1e4:o,u=e.throttle,f=u===void 0?2e3:u,l=!1,c=!1,d=new Date,v=function(){return clearTimeout(t)};function p(g){v(),i&&!l&&i(cr(d),g),a&&l&&(l=!1,a(cr(r),g),d=new Date),t=setTimeout(function(){l=!0,n&&(r=new Date,n(cr(d),g))},s)}var S=ZE(p,{throttle:f});return{disable:function(){c=!0,l=!1,v();var g=S();return function(){return c=!1,d=new Date,p({type:"load"}),g()}},getStatus:function(){return{isIdle:l,isDisabled:c,active:l?0:cr(d,c),idle:l?cr(r,c):0}}}}function cr(e,t){return t?0:Math.round((new Date-e)/1e3)}const cl=5e3;class YE{constructor(t){le(this,"element");le(this,"isInViewport",!1);le(this,"isAwake",!1);le(this,"isFlushing");le(this,"observer");le(this,"lastEventAt",Date.now());le(this,"registeredView",!1);le(this,"viewCallback");le(this,"activeDurationCallback");le(this,"idleDurationCallback");le(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),JE({onIdle:r=>this.handleAwake(!1,r),onWakeUp:r=>this.handleAwake(!0,r),timeout:cl}),zE({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*cl: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 ul="sesamy_session_id";function XE(){let e=sessionStorage.getItem(ul);return e||(e=Math.random().toString(36).slice(2,9),sessionStorage.setItem(ul,e)),e}let sv=!1,io,ll,Nn;const cv=new Map;function qE({clientId:e,enabled:t=!0,environment:r}){if(io=e,ll=t,Nn=`${Ke("logs",r)}/events`,!ll)return;window.addEventListener("beforeunload",()=>{lv.forEach((a,i)=>{a.bind(i)()}),eP()}),window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&cv.forEach((a,i)=>{a.bind(i)()})}),FE();const n=new YE({element:document.body,viewCallback:()=>{xe.page()},activeDurationCallback:(a,i,o)=>{xe.track("activeDuration",{duration:a,durationStart:o,flushing:i})},idleDurationCallback:(a,i,o)=>{xe.track("idleDuration",{duration:a,durationStart:o,flushing:i})},scrollCallback:a=>{xe.track("scroll",{scroll:a.scrollMax})}});tP(document.body,()=>{n.flush()}),rP(document.body,()=>{n.handleVisibilityChange()}),window.addEventListener(Te.AUTHENTICATED,async a=>{const i=a;await xe.identify(i.detail.sub)}),window.addEventListener(Te.LOGOUT,async()=>{await xe.track("logout",{}),as.flush(),await xe.reset()})}function uv(e){return JSON.stringify(e.map(t=>({...t,clientId:io,requestId:Math.random().toString(36).slice(2,9),sessionId:XE(),timestamp:new Date().toISOString(),version:Xo,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:xd,userAgent:navigator.userAgent,clientId:io}})))}const as=UE(async e=>{if(e.length>0){const t=uv(e);sv?navigator.sendBeacon(Nn,t):(await fetch(Nn,{method:"POST",body:t,headers:{"Content-Type":"text/plain"}})).ok}},{max:10,interval:3e3});function bi(e){var t;if(e.anonymousId)if((t=e.properties)!=null&&t.flushing){const r={...e};delete r.properties.flushing,navigator.sendBeacon(Nn,uv([r]))}else as.push(e)}const xe=NE({app:xd,version:Xo,plugins:[{name:"custom-analytics-plugin",page:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;bi({anonymousId:r,userId:n,properties:t,event:a,type:"page"})},track:({payload:e})=>{const{properties:t,anonymousId:r,userId:n,event:a}=e;bi({anonymousId:r,userId:n,properties:t,event:a,type:"track"})},identify:({payload:e})=>{const{properties:t,anonymousId:r,userId:n}=e;bi({anonymousId:r,userId:n,properties:t,type:"identify"})}}]});function QE(e,t){xe.track(e,t)}function eP(){return sv=!0,as.flush()}const lv=new Map;function tP(e,t){lv.set(e,t)}function rP(e,t){cv.set(e,t)}const fv="sesamySignedURLs";function dv(){const e=sessionStorage.getItem(fv);return e?JSON.parse(e):[]}function nP(e){const t=dv();t.push(e),sessionStorage.setItem(fv,JSON.stringify(t))}const aP=["AdHeader","AdContainer","AD_Top","homead","ad-lead"];function iP(){return new Promise(e=>{const t=aP.map(r=>{const n=document.createElement("div");return n.innerHTML=" ",n.id=r,n.style.position="absolute",document.body.appendChild(n),n});window.setTimeout(()=>{const r=!t.every(n=>{const a=document.querySelector(`#${n.id}`);return a==null?void 0:a.offsetParent});t.forEach(n=>n.remove()),e(r)},100)})}function oP(e){const{createCheckout:t,getCheckout:r,updateCheckout:n,getEntitlement:a,getEntitlements:i,getEntitlementAccess:o,getSubscriptions:s,getContract:u,getContracts:f,getBill:l,getBills:c,getTransaction:d,getTransactions:v,getProfile:p,updateProfile:S,getTags:g,deleteTag:T,setTag:I,getUserMetadata:b,listUserMetadata:h,setUserMetadata:$,deleteUserMetadata:k,getTally:_,getTallies:C,pushTally:M,deleteTally:F,getProduct:V,getPaymentIssues:L,isSpotifyLinked:x,unlinkSpotify:z,linkSpotify:R,autoOnboardProduct:G,openHostedAccountPage:J,generateLink:Le}=DT(e),m={auth:{getUser:p,isAuthenticated:Jo,loginWithRedirect:Yo,logout:Cd,setToken:jd},checkouts:{get:r,create:t,update:n},profile:{get:p,update:S,openHostedAccountPage:J,isSpotifyLinked:x,unlinkSpotify:z},analytics:{track:QE},tags:{list:g,set:I,delete:T},entitlements:{get:a,list:i,access:o,signedLinks:dv},contracts:{get:u,list:f},bills:{get:l,list:c},userMetadata:{get:b,list:h,set:$,delete:k},tallies:{get:_,list:C,push:M,delete:F},subscriptions:{list:s},transactions:{get:d,list:v},products:{get:V,autoOnboard:G,linkSpotify:R},browser:{detectAdblock:iP},getVersion:sP,getPaymentIssues:L,generateLink:Le,clearCache:Se};return e.namespace&&(window[e.namespace]=m),m}function sP(){return Xo}async function cP({enabled:e=!1,rules:t}){if(!e)return;const r=await Jo(),n=window.location.href;for(const a of t){const i=document.querySelectorAll(a.selector);if(!(a.path&&!new RegExp(a.path).test(n))){for(const o of i)if(!(a.authenticated!==void 0&&a.authenticated!==r))switch(a.transform){case"insert":if(a.contentType==="selector"&&a.content){const s=document.querySelector(a.content);s?o.innerHTML+=s.innerHTML:console.warn(`Source element for selector '${a.content}' not found`)}else if(a.contentType==="url"&&a.content){const s=await fl(a.content);s?o.innerHTML+=s:console.warn(`Failed to fetch content from URL '${a.content}'`)}else a.content&&(o.innerHTML+=a.content);break;case"replace":if(a.contentType==="selector"&&a.content){const s=document.querySelector(a.content);s?o.innerHTML=s.innerHTML:console.warn(`Source element for selector '${a.content}' not found`)}else if(a.contentType==="url"&&a.content){const s=await fl(a.content);s?o.innerHTML=s:console.warn(`Failed to fetch content from URL '${a.content}'`)}else a.content&&(o.innerHTML=a.content);break;case"remove":o.remove();break;default:console.warn(`Unknown transform type: ${a.transform}`)}}}}async function fl(e){try{const t=await fetch(e);return t.ok?await t.text():(console.error(`Failed to fetch content from ${e}: ${t.statusText}`),null)}catch(t){return console.error(`Error fetching content from ${e}:`,t),null}}function uP(){const e=new URLSearchParams(window.location.hash.substring(1)),t=e.get("access_token");if(t){jd(t);const r=new URL(window.location.href);e.delete("access_token"),r.hash=e.toString(),window.history.replaceState(null,"",r)}}const dl="sesamy-refresh",vl="force-refetch-entitlements";function lP(){const e=new URLSearchParams(window.location.search),t=e.get(vl),r=e.get(dl);if(t!==null||r!==null){const n=new URL(window.location.href);e.delete(vl),e.delete(dl),n.search=e.toString(),Se(),window.history.replaceState(null,"",n)}}function fP(){const e=new URLSearchParams(window.location.search),t=e.get("token"),r=e.get("se");if(!r||!t)return;const n=parseInt(r,10);if(Number.isNaN(n)||n<Date.now())return;nP({url:window.location.href.split("?")[0],token:t,expiresAt:n,publisherContentId:e.get("sp")??void 0});const a=new URL(window.location.href);a.searchParams.delete("ss"),a.searchParams.delete("se"),a.searchParams.delete("sp"),a.searchParams.delete("so"),a.searchParams.delete("token"),window.history.replaceState(null,"",a)}const hl="sesamy-user";async function dP(){const t=new URLSearchParams(window.location.search).get(hl);if(!t)return;const r=await ET();(r==null?void 0:r.email)!==t&&(Se(),Yo({authorizationParams:{email_hint:t,login_hint:t}}));const n=new URL(window.location.href);n.searchParams.delete(hl),window.history.replaceState(null,"",n)}const pl="sesamy-purchase";function vP(){const e=new URLSearchParams(window.location.search),t=e.get(pl);if(t!==null){const r=new URL(window.location.href);e.delete(pl),r.search=e.toString(),Ye(Te.PURCHASE,{itemSrc:t}),Se(),window.history.replaceState(null,"",r)}}const ml="sesamy-login";async function hP(){if(!new URLSearchParams(window.location.search).get(ml))return;await Jo()||Yo();const n=new URL(window.location.href);n.searchParams.delete(ml),window.history.replaceState(null,"",n)}const pP=typeof window<"u";async function gl(e){qE({clientId:e.clientId,environment:e.environment,...e.analytics}),await TT({clientId:e.clientId,organization:e.organization,environment:e.environment,...e.auth}),e.transform&&await cP(e.transform),uP(),lP(),fP(),await hP(),await dP(),vP(),Ye(Te.READY,{})}async function vv(e){const t=oP({clientId:e.clientId,environment:e.environment,...e.api});return pP&&(e.awaitAllServices?await gl(e):gl(e)),t}if(typeof document<"u"){const e=document.getElementById("sesamy-js");if(e!=null&&e.textContent)try{const t=JSON.parse(e.textContent);vv(t)}catch(t){console.error("Failed to parse config",t)}}exports.init=vv;
|
package/dist/sesamy-js.d.ts
CHANGED
|
@@ -85,6 +85,52 @@ declare function isAuthenticated(): Promise<boolean>;
|
|
|
85
85
|
declare function loginWithRedirect<TAppState = any>(options?: RedirectLoginOptions<TAppState>): Promise<void>;
|
|
86
86
|
declare function logout(options?: LogoutOptions): Promise<void>;
|
|
87
87
|
declare function setToken(accessToken: string): Promise<void>;
|
|
88
|
+
export interface Item {
|
|
89
|
+
sku?: string;
|
|
90
|
+
url?: string;
|
|
91
|
+
purchaseOptionId?: string;
|
|
92
|
+
price?: number;
|
|
93
|
+
currency?: string;
|
|
94
|
+
}
|
|
95
|
+
interface Address$1 {
|
|
96
|
+
street?: string;
|
|
97
|
+
city?: string;
|
|
98
|
+
zip?: string;
|
|
99
|
+
country?: string;
|
|
100
|
+
}
|
|
101
|
+
export interface Attribution {
|
|
102
|
+
utmSource?: string;
|
|
103
|
+
utmMedium?: string;
|
|
104
|
+
utmCampaign?: string;
|
|
105
|
+
utmTerm?: string;
|
|
106
|
+
utmContent?: string;
|
|
107
|
+
}
|
|
108
|
+
export interface BaseCheckout {
|
|
109
|
+
items: Item[];
|
|
110
|
+
address?: Address$1;
|
|
111
|
+
businessAddress?: Address$1;
|
|
112
|
+
email?: string;
|
|
113
|
+
givenName?: string;
|
|
114
|
+
familyName?: string;
|
|
115
|
+
phoneNumber?: string;
|
|
116
|
+
country?: string;
|
|
117
|
+
language?: string;
|
|
118
|
+
redirectUrl: string;
|
|
119
|
+
discountCode?: string;
|
|
120
|
+
isBusiness?: boolean;
|
|
121
|
+
attribution?: Attribution;
|
|
122
|
+
}
|
|
123
|
+
export interface CreateCheckoutParams extends BaseCheckout {
|
|
124
|
+
vendorId: string;
|
|
125
|
+
}
|
|
126
|
+
export interface Checkout extends BaseCheckout {
|
|
127
|
+
id: string;
|
|
128
|
+
checkoutUrl: string;
|
|
129
|
+
status: "PENDING" | "PAID";
|
|
130
|
+
createdAt: string;
|
|
131
|
+
modifiedAt: string;
|
|
132
|
+
}
|
|
133
|
+
declare function track(eventName: string, payload: any): void;
|
|
88
134
|
export type Entitlement = {
|
|
89
135
|
id: string;
|
|
90
136
|
sku: string;
|
|
@@ -96,6 +142,21 @@ export type Entitlement = {
|
|
|
96
142
|
createdAt: string;
|
|
97
143
|
updatedAt: string;
|
|
98
144
|
};
|
|
145
|
+
export type Access = {
|
|
146
|
+
title: string;
|
|
147
|
+
filename: string;
|
|
148
|
+
id: string;
|
|
149
|
+
url: string;
|
|
150
|
+
mimeType: string;
|
|
151
|
+
type: string;
|
|
152
|
+
};
|
|
153
|
+
export type SignedLink = {
|
|
154
|
+
url: string;
|
|
155
|
+
token: string;
|
|
156
|
+
expiresAt: number;
|
|
157
|
+
publisherContentId?: string;
|
|
158
|
+
};
|
|
159
|
+
declare function getSignedLinks(): SignedLink[];
|
|
99
160
|
export type Contract = {
|
|
100
161
|
id: string;
|
|
101
162
|
name: string;
|
|
@@ -137,22 +198,6 @@ export type Tally = {
|
|
|
137
198
|
createdAt: string;
|
|
138
199
|
};
|
|
139
200
|
export type Product = {
|
|
140
|
-
sku: string;
|
|
141
|
-
title: string;
|
|
142
|
-
cover: string;
|
|
143
|
-
currency: string;
|
|
144
|
-
createdAt: string;
|
|
145
|
-
updatedAt: string;
|
|
146
|
-
};
|
|
147
|
-
export type Access = {
|
|
148
|
-
title: string;
|
|
149
|
-
filename: string;
|
|
150
|
-
id: string;
|
|
151
|
-
url: string;
|
|
152
|
-
mimeType: string;
|
|
153
|
-
type: string;
|
|
154
|
-
};
|
|
155
|
-
type Product$1 = {
|
|
156
201
|
name: string;
|
|
157
202
|
description: string;
|
|
158
203
|
image: string;
|
|
@@ -165,13 +210,32 @@ export type Subscription = {
|
|
|
165
210
|
cancelAt?: string;
|
|
166
211
|
createdAt: string;
|
|
167
212
|
status: string;
|
|
168
|
-
product: Product
|
|
213
|
+
product: Product;
|
|
169
214
|
totalIssues?: number;
|
|
170
215
|
remainingIssues?: number;
|
|
171
216
|
price?: number;
|
|
172
217
|
nextPrice?: number;
|
|
173
218
|
nextPaymentAt?: string;
|
|
174
219
|
};
|
|
220
|
+
export type Transaction = {
|
|
221
|
+
id: string;
|
|
222
|
+
currecy: string;
|
|
223
|
+
contractId: string;
|
|
224
|
+
isRefund: boolean;
|
|
225
|
+
userId: string;
|
|
226
|
+
billId: string;
|
|
227
|
+
createdAt: string;
|
|
228
|
+
updatedAt: string;
|
|
229
|
+
};
|
|
230
|
+
type Product$1 = {
|
|
231
|
+
sku: string;
|
|
232
|
+
title: string;
|
|
233
|
+
cover: string;
|
|
234
|
+
currency: string;
|
|
235
|
+
createdAt: string;
|
|
236
|
+
updatedAt: string;
|
|
237
|
+
};
|
|
238
|
+
declare function detectAdblock(): Promise<unknown>;
|
|
175
239
|
export type PaymentIssues = {
|
|
176
240
|
contractId?: string;
|
|
177
241
|
createdAt: string;
|
|
@@ -184,16 +248,6 @@ export type PaymentIssues = {
|
|
|
184
248
|
"CARD_WILL_EXPIRE"
|
|
185
249
|
];
|
|
186
250
|
};
|
|
187
|
-
export type Transaction = {
|
|
188
|
-
id: string;
|
|
189
|
-
currecy: string;
|
|
190
|
-
contractId: string;
|
|
191
|
-
isRefund: boolean;
|
|
192
|
-
userId: string;
|
|
193
|
-
billId: string;
|
|
194
|
-
createdAt: string;
|
|
195
|
-
updatedAt: string;
|
|
196
|
-
};
|
|
197
251
|
export interface GenerateAccountLink extends GenerateLinkBase {
|
|
198
252
|
target: "account";
|
|
199
253
|
}
|
|
@@ -208,21 +262,6 @@ export interface GenerateLinkBase {
|
|
|
208
262
|
redirectUrl?: string;
|
|
209
263
|
language?: string;
|
|
210
264
|
}
|
|
211
|
-
export interface CreateCheckoutParams {
|
|
212
|
-
items: {
|
|
213
|
-
sku: string;
|
|
214
|
-
purchaseOptionsId?: string;
|
|
215
|
-
}[];
|
|
216
|
-
language?: string;
|
|
217
|
-
}
|
|
218
|
-
declare function track(eventName: string, payload: any): void;
|
|
219
|
-
export type SignedLink = {
|
|
220
|
-
url: string;
|
|
221
|
-
token: string;
|
|
222
|
-
expiresAt: number;
|
|
223
|
-
publisherContentId?: string;
|
|
224
|
-
};
|
|
225
|
-
declare function getSignedLinks(): SignedLink[];
|
|
226
265
|
declare function clearCache(): void;
|
|
227
266
|
export declare function init(config: Config): Promise<{
|
|
228
267
|
auth: {
|
|
@@ -234,7 +273,7 @@ export declare function init(config: Config): Promise<{
|
|
|
234
273
|
};
|
|
235
274
|
checkouts: {
|
|
236
275
|
get: (id: string) => Promise<unknown>;
|
|
237
|
-
create: (params: CreateCheckoutParams) => Promise<
|
|
276
|
+
create: (params: CreateCheckoutParams) => Promise<Checkout>;
|
|
238
277
|
update: (id: string, params: Partial<CreateCheckoutParams>) => Promise<unknown>;
|
|
239
278
|
};
|
|
240
279
|
profile: {
|
|
@@ -294,10 +333,13 @@ export declare function init(config: Config): Promise<{
|
|
|
294
333
|
list: () => Promise<Transaction[]>;
|
|
295
334
|
};
|
|
296
335
|
products: {
|
|
297
|
-
get: (sku: string) => Promise<Product>;
|
|
336
|
+
get: (sku: string) => Promise<Product$1>;
|
|
298
337
|
autoOnboard: (sku: string) => Promise<Entitlement[]>;
|
|
299
338
|
linkSpotify: (sku: string) => Promise<void>;
|
|
300
339
|
};
|
|
340
|
+
browser: {
|
|
341
|
+
detectAdblock: typeof detectAdblock;
|
|
342
|
+
};
|
|
301
343
|
getVersion: () => string;
|
|
302
344
|
getPaymentIssues: () => Promise<PaymentIssues[]>;
|
|
303
345
|
generateLink: (params: GenerateAccountLink | GenerateConsumeLink) => Promise<string>;
|