@sesamy/sesamy-js 1.10.2 → 1.10.3

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/README.md CHANGED
@@ -77,6 +77,7 @@ The library can trigger actions based on query parameters. The following query p
77
77
 
78
78
  - `sesamy-refresh`. If present, the library will clear the cache and emit a `sesamyJsClearCache` event.
79
79
  - `sesamy-user`. If present, the library will validate that the user is authenticated with the correct email. If not, the user will be logged out and a new login with be initiated.
80
+ - `sesamy-login`. If present, the library will validate that the user is authenticated. If not, the user will be logged out and a new login with be initiated.
80
81
  - `sesamy-purchase`. Triggers a sesamyJsPurchase event.
81
82
 
82
83
  ## Usage
@@ -98,6 +99,7 @@ These are the available configuration options, with their default values:
98
99
  ```javascript
99
100
  {
100
101
  clientId: null,
102
+ organization: null,
101
103
  api: {
102
104
  namespace: 'sesamy',
103
105
  endpoint: 'https://api2.sesamy.com'
@@ -107,6 +109,8 @@ These are the available configuration options, with their default values:
107
109
  endpoint: 'https://logs.sesamy.com/events'
108
110
  },
109
111
  auth: {
112
+ clientId: null,
113
+ organization: null,
110
114
  enabled: true,
111
115
  endpoint: 'https://auth.sesamy.com',
112
116
  redirectUri: window.location.origin
@@ -1,6 +1,6 @@
1
- "use strict";var zr=Object.defineProperty;var Rr=(t,e,n)=>e in t?zr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var q=(t,e,n)=>(Rr(t,typeof e!="symbol"?e+"":e,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function ue(t,e){const n=new CustomEvent(t,{detail:e,bubbles:!0,composed:!0});dispatchEvent(n)}function ne(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function"){var i=0;for(r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]])}return n}var he=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function At(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function $t(t,e){return t(e={exports:{}},e.exports),e.exports}var de=$t(function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function r(){var i=this;this.locked=new Map,this.addToLocked=function(o,a){var s=i.locked.get(o);s===void 0?a===void 0?i.locked.set(o,[]):i.locked.set(o,[a]):a!==void 0&&(s.unshift(a),i.locked.set(o,s))},this.isLocked=function(o){return i.locked.has(o)},this.lock=function(o){return new Promise(function(a,s){i.isLocked(o)?i.addToLocked(o,a):(i.addToLocked(o),a())})},this.unlock=function(o){var a=i.locked.get(o);if(a!==void 0&&a.length!==0){var s=a.pop();i.locked.set(o,a),s!==void 0&&setTimeout(s,0)}else i.locked.delete(o)}}return r.getInstance=function(){return r.instance===void 0&&(r.instance=new r),r.instance},r}();e.default=function(){return n.getInstance()}});At(de);var Dr=At($t(function(t,e){var n=he&&he.__awaiter||function(u,c,m,d){return new(m||(m=Promise))(function(w,k){function v(y){try{S(d.next(y))}catch(l){k(l)}}function _(y){try{S(d.throw(y))}catch(l){k(l)}}function S(y){y.done?w(y.value):new m(function(l){l(y.value)}).then(v,_)}S((d=d.apply(u,c||[])).next())})},r=he&&he.__generator||function(u,c){var m,d,w,k,v={label:0,sent:function(){if(1&w[0])throw w[1];return w[1]},trys:[],ops:[]};return k={next:_(0),throw:_(1),return:_(2)},typeof Symbol=="function"&&(k[Symbol.iterator]=function(){return this}),k;function _(S){return function(y){return function(l){if(m)throw new TypeError("Generator is already executing.");for(;v;)try{if(m=1,d&&(w=2&l[0]?d.return:l[0]?d.throw||((w=d.return)&&w.call(d),0):d.next)&&!(w=w.call(d,l[1])).done)return w;switch(d=0,w&&(l=[2&l[0],w.value]),l[0]){case 0:case 1:w=l;break;case 4:return v.label++,{value:l[1],done:!1};case 5:v.label++,d=l[1],l=[0];continue;case 7:l=v.ops.pop(),v.trys.pop();continue;default:if(w=v.trys,!((w=w.length>0&&w[w.length-1])||l[0]!==6&&l[0]!==2)){v=0;continue}if(l[0]===3&&(!w||l[1]>w[0]&&l[1]<w[3])){v.label=l[1];break}if(l[0]===6&&v.label<w[1]){v.label=w[1],w=l;break}if(w&&v.label<w[2]){v.label=w[2],v.ops.push(l);break}w[2]&&v.ops.pop(),v.trys.pop();continue}l=c.call(u,v)}catch(b){l=[6,b],d=0}finally{m=w=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([S,y])}}},i=he;Object.defineProperty(e,"__esModule",{value:!0});var o="browser-tabs-lock-key",a={key:function(u){return n(i,void 0,void 0,function(){return r(this,function(c){throw new Error("Unsupported")})})},getItem:function(u){return n(i,void 0,void 0,function(){return r(this,function(c){throw new Error("Unsupported")})})},clear:function(){return n(i,void 0,void 0,function(){return r(this,function(u){return[2,window.localStorage.clear()]})})},removeItem:function(u){return n(i,void 0,void 0,function(){return r(this,function(c){throw new Error("Unsupported")})})},setItem:function(u,c){return n(i,void 0,void 0,function(){return r(this,function(m){throw new Error("Unsupported")})})},keySync:function(u){return window.localStorage.key(u)},getItemSync:function(u){return window.localStorage.getItem(u)},clearSync:function(){return window.localStorage.clear()},removeItemSync:function(u){return window.localStorage.removeItem(u)},setItemSync:function(u,c){return window.localStorage.setItem(u,c)}};function s(u){return new Promise(function(c){return setTimeout(c,u)})}function f(u){for(var c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz",m="",d=0;d<u;d++)m+=c[Math.floor(Math.random()*c.length)];return m}var p=function(){function u(c){this.acquiredIatSet=new Set,this.storageHandler=void 0,this.id=Date.now().toString()+f(15),this.acquireLock=this.acquireLock.bind(this),this.releaseLock=this.releaseLock.bind(this),this.releaseLock__private__=this.releaseLock__private__.bind(this),this.waitForSomethingToChange=this.waitForSomethingToChange.bind(this),this.refreshLockWhileAcquired=this.refreshLockWhileAcquired.bind(this),this.storageHandler=c,u.waiters===void 0&&(u.waiters=[])}return u.prototype.acquireLock=function(c,m){return m===void 0&&(m=5e3),n(this,void 0,void 0,function(){var d,w,k,v,_,S,y;return r(this,function(l){switch(l.label){case 0:d=Date.now()+f(4),w=Date.now()+m,k=o+"-"+c,v=this.storageHandler===void 0?a:this.storageHandler,l.label=1;case 1:return Date.now()<w?[4,s(30)]:[3,8];case 2:return l.sent(),v.getItemSync(k)!==null?[3,5]:(_=this.id+"-"+c+"-"+d,[4,s(Math.floor(25*Math.random()))]);case 3:return l.sent(),v.setItemSync(k,JSON.stringify({id:this.id,iat:d,timeoutKey:_,timeAcquired:Date.now(),timeRefreshed:Date.now()})),[4,s(30)];case 4:return l.sent(),(S=v.getItemSync(k))!==null&&(y=JSON.parse(S)).id===this.id&&y.iat===d?(this.acquiredIatSet.add(d),this.refreshLockWhileAcquired(k,d),[2,!0]):[3,7];case 5:return u.lockCorrector(this.storageHandler===void 0?a:this.storageHandler),[4,this.waitForSomethingToChange(w)];case 6:l.sent(),l.label=7;case 7:return d=Date.now()+f(4),[3,1];case 8:return[2,!1]}})})},u.prototype.refreshLockWhileAcquired=function(c,m){return n(this,void 0,void 0,function(){var d=this;return r(this,function(w){return setTimeout(function(){return n(d,void 0,void 0,function(){var k,v,_;return r(this,function(S){switch(S.label){case 0:return[4,de.default().lock(m)];case 1:return S.sent(),this.acquiredIatSet.has(m)?(k=this.storageHandler===void 0?a:this.storageHandler,(v=k.getItemSync(c))===null?(de.default().unlock(m),[2]):((_=JSON.parse(v)).timeRefreshed=Date.now(),k.setItemSync(c,JSON.stringify(_)),de.default().unlock(m),this.refreshLockWhileAcquired(c,m),[2])):(de.default().unlock(m),[2])}})})},1e3),[2]})})},u.prototype.waitForSomethingToChange=function(c){return n(this,void 0,void 0,function(){return r(this,function(m){switch(m.label){case 0:return[4,new Promise(function(d){var w=!1,k=Date.now(),v=!1;function _(){if(v||(window.removeEventListener("storage",_),u.removeFromWaiting(_),clearTimeout(S),v=!0),!w){w=!0;var y=50-(Date.now()-k);y>0?setTimeout(d,y):d(null)}}window.addEventListener("storage",_),u.addToWaiting(_);var S=setTimeout(_,Math.max(0,c-Date.now()))})];case 1:return m.sent(),[2]}})})},u.addToWaiting=function(c){this.removeFromWaiting(c),u.waiters!==void 0&&u.waiters.push(c)},u.removeFromWaiting=function(c){u.waiters!==void 0&&(u.waiters=u.waiters.filter(function(m){return m!==c}))},u.notifyWaiters=function(){u.waiters!==void 0&&u.waiters.slice().forEach(function(c){return c()})},u.prototype.releaseLock=function(c){return n(this,void 0,void 0,function(){return r(this,function(m){switch(m.label){case 0:return[4,this.releaseLock__private__(c)];case 1:return[2,m.sent()]}})})},u.prototype.releaseLock__private__=function(c){return n(this,void 0,void 0,function(){var m,d,w,k;return r(this,function(v){switch(v.label){case 0:return m=this.storageHandler===void 0?a:this.storageHandler,d=o+"-"+c,(w=m.getItemSync(d))===null?[2]:(k=JSON.parse(w)).id!==this.id?[3,2]:[4,de.default().lock(k.iat)];case 1:v.sent(),this.acquiredIatSet.delete(k.iat),m.removeItemSync(d),de.default().unlock(k.iat),u.notifyWaiters(),v.label=2;case 2:return[2]}})})},u.lockCorrector=function(c){for(var m=Date.now()-5e3,d=c,w=[],k=0;;){var v=d.keySync(k);if(v===null)break;w.push(v),k++}for(var _=!1,S=0;S<w.length;S++){var y=w[S];if(y.includes(o)){var l=d.getItemSync(y);if(l!==null){var b=JSON.parse(l);(b.timeRefreshed===void 0&&b.timeAcquired<m||b.timeRefreshed!==void 0&&b.timeRefreshed<m)&&(d.removeItemSync(y),_=!0)}}}_&&u.notifyWaiters()},u.waiters=void 0,u}();e.default=p}));const Lr={timeoutInSeconds:60},Mn={name:"auth0-spa-js",version:"2.1.3"},Zn=()=>Date.now();let G=class kt extends Error{constructor(e,n){super(n),this.error=e,this.error_description=n,Object.setPrototypeOf(this,kt.prototype)}static fromPayload({error:e,error_description:n}){return new kt(e,n)}},Mr=class Kn extends G{constructor(e,n,r,i=null){super(e,n),this.state=r,this.appState=i,Object.setPrototypeOf(this,Kn.prototype)}},It=class Wn extends G{constructor(){super("timeout","Timeout"),Object.setPrototypeOf(this,Wn.prototype)}},Zr=class Hn extends It{constructor(e){super(),this.popup=e,Object.setPrototypeOf(this,Hn.prototype)}},Kr=class Fn extends G{constructor(e){super("cancelled","Popup closed"),this.popup=e,Object.setPrototypeOf(this,Fn.prototype)}},Wr=class Jn extends G{constructor(e,n,r){super(e,n),this.mfa_token=r,Object.setPrototypeOf(this,Jn.prototype)}},Xn=class Vn extends G{constructor(e,n){super("missing_refresh_token",`Missing Refresh Token (audience: '${Jt(e,["default"])}', scope: '${Jt(n)}')`),this.audience=e,this.scope=n,Object.setPrototypeOf(this,Vn.prototype)}};function Jt(t,e=[]){return t&&!e.includes(t)?t:""}const Qe=()=>window.crypto,dt=()=>{const t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_~.";let e="";return Array.from(Qe().getRandomValues(new Uint8Array(43))).forEach(n=>e+=t[n%t.length]),e},Xt=t=>btoa(t),St=t=>{var{clientId:e}=t,n=ne(t,["clientId"]);return new URLSearchParams((r=>Object.keys(r).filter(i=>r[i]!==void 0).reduce((i,o)=>Object.assign(Object.assign({},i),{[o]:r[o]}),{}))(Object.assign({client_id:e},n))).toString()},Vt=t=>(e=>decodeURIComponent(atob(e).split("").map(n=>"%"+("00"+n.charCodeAt(0).toString(16)).slice(-2)).join("")))(t.replace(/_/g,"/").replace(/-/g,"+")),Hr=async(t,e)=>{const n=await fetch(t,e);return{ok:n.ok,json:await n.json()}},Fr=async(t,e,n)=>{const r=new AbortController;let i;return e.signal=r.signal,Promise.race([Hr(t,e),new Promise((o,a)=>{i=setTimeout(()=>{r.abort(),a(new Error("Timeout when executing 'fetch'"))},n)})]).finally(()=>{clearTimeout(i)})},Jr=async(t,e,n,r,i,o,a)=>{return s={auth:{audience:e,scope:n},timeout:i,fetchUrl:t,fetchOptions:r,useFormData:a},f=o,new Promise(function(p,u){const c=new MessageChannel;c.port1.onmessage=function(m){m.data.error?u(new Error(m.data.error)):p(m.data),c.port1.close()},f.postMessage(s,[c.port2])});var s,f},Xr=async(t,e,n,r,i,o,a=1e4)=>i?Jr(t,e,n,r,a,i,o):Fr(t,r,a);async function Vr(t,e){var{baseUrl:n,timeout:r,audience:i,scope:o,auth0Client:a,useFormData:s}=t,f=ne(t,["baseUrl","timeout","audience","scope","auth0Client","useFormData"]);const p=s?St(f):JSON.stringify(f);return await async function(u,c,m,d,w,k,v){let _,S=null;for(let C=0;C<3;C++)try{_=await Xr(u,m,d,w,k,v,c),S=null;break}catch(D){S=D}if(S)throw S;const y=_.json,{error:l,error_description:b}=y,T=ne(y,["error","error_description"]),{ok:O}=_;if(!O){const C=b||`HTTP error. Unable to fetch ${u}`;throw l==="mfa_required"?new Wr(l,C,T.mfa_token):l==="missing_refresh_token"?new Xn(m,d):new G(l||"request_error",C)}return T}(`${n}/oauth/token`,r,i||"default",o,{method:"POST",body:p,headers:{"Content-Type":s?"application/x-www-form-urlencoded":"application/json","Auth0-Client":btoa(JSON.stringify(a||Mn))}},e,s)}const Fe=(...t)=>{return(e=t.filter(Boolean).join(" ").trim().split(/\s+/),Array.from(new Set(e))).join(" ");var e};let pe=class _t{constructor(e,n="@@auth0spajs@@",r){this.prefix=n,this.suffix=r,this.clientId=e.clientId,this.scope=e.scope,this.audience=e.audience}toKey(){return[this.prefix,this.clientId,this.audience,this.scope,this.suffix].filter(Boolean).join("::")}static fromKey(e){const[n,r,i,o]=e.split("::");return new _t({clientId:r,scope:o,audience:i},n)}static fromCacheEntry(e){const{scope:n,audience:r,client_id:i}=e;return new _t({scope:n,audience:r,clientId:i})}},Yr=class{set(e,n){localStorage.setItem(e,JSON.stringify(n))}get(e){const n=window.localStorage.getItem(e);if(n)try{return JSON.parse(n)}catch{return}}remove(e){localStorage.removeItem(e)}allKeys(){return Object.keys(window.localStorage).filter(e=>e.startsWith("@@auth0spajs@@"))}},Yn=class{constructor(){this.enclosedCache=function(){let e={};return{set(n,r){e[n]=r},get(n){const r=e[n];if(r)return r},remove(n){delete e[n]},allKeys:()=>Object.keys(e)}}()}},Gr=class{constructor(e,n,r){this.cache=e,this.keyManifest=n,this.nowProvider=r||Zn}async setIdToken(e,n,r){var i;const o=this.getIdTokenCacheKey(e);await this.cache.set(o,{id_token:n,decodedToken:r}),await((i=this.keyManifest)===null||i===void 0?void 0:i.add(o))}async getIdToken(e){const n=await this.cache.get(this.getIdTokenCacheKey(e.clientId));if(!n&&e.scope&&e.audience){const r=await this.get(e);return!r||!r.id_token||!r.decodedToken?void 0:{id_token:r.id_token,decodedToken:r.decodedToken}}if(n)return{id_token:n.id_token,decodedToken:n.decodedToken}}async get(e,n=0){var r;let i=await this.cache.get(e.toKey());if(!i){const s=await this.getCacheKeys();if(!s)return;const f=this.matchExistingCacheKey(e,s);f&&(i=await this.cache.get(f))}if(!i)return;const o=await this.nowProvider(),a=Math.floor(o/1e3);return i.expiresAt-n<a?i.body.refresh_token?(i.body={refresh_token:i.body.refresh_token},await this.cache.set(e.toKey(),i),i.body):(await this.cache.remove(e.toKey()),void await((r=this.keyManifest)===null||r===void 0?void 0:r.remove(e.toKey()))):i.body}async set(e){var n;const r=new pe({clientId:e.client_id,scope:e.scope,audience:e.audience}),i=await this.wrapCacheEntry(e);await this.cache.set(r.toKey(),i),await((n=this.keyManifest)===null||n===void 0?void 0:n.add(r.toKey()))}async clear(e){var n;const r=await this.getCacheKeys();r&&(await r.filter(i=>!e||i.includes(e)).reduce(async(i,o)=>{await i,await this.cache.remove(o)},Promise.resolve()),await((n=this.keyManifest)===null||n===void 0?void 0:n.clear()))}async wrapCacheEntry(e){const n=await this.nowProvider();return{body:e,expiresAt:Math.floor(n/1e3)+e.expires_in}}async getCacheKeys(){var e;return this.keyManifest?(e=await this.keyManifest.get())===null||e===void 0?void 0:e.keys:this.cache.allKeys?this.cache.allKeys():void 0}getIdTokenCacheKey(e){return new pe({clientId:e},"@@auth0spajs@@","@@user@@").toKey()}matchExistingCacheKey(e,n){return n.filter(r=>{var i;const o=pe.fromKey(r),a=new Set(o.scope&&o.scope.split(" ")),s=((i=e.scope)===null||i===void 0?void 0:i.split(" "))||[],f=o.scope&&s.reduce((p,u)=>p&&a.has(u),!0);return o.prefix==="@@auth0spajs@@"&&o.clientId===e.clientId&&o.audience===e.audience&&f})[0]}},Br=class{constructor(e,n,r){this.storage=e,this.clientId=n,this.cookieDomain=r,this.storageKey=`a0.spajs.txs.${this.clientId}`}create(e){this.storage.save(this.storageKey,e,{daysUntilExpire:1,cookieDomain:this.cookieDomain})}get(){return this.storage.get(this.storageKey)}remove(){this.storage.remove(this.storageKey,{cookieDomain:this.cookieDomain})}};const Ue=t=>typeof t=="number",qr=["iss","aud","exp","nbf","iat","jti","azp","nonce","auth_time","at_hash","c_hash","acr","amr","sub_jwk","cnf","sip_from_tag","sip_date","sip_callid","sip_cseq_num","sip_via_branch","orig","dest","mky","events","toe","txn","rph","sid","vot","vtm"],Qr=t=>{if(!t.id_token)throw new Error("ID token is required but missing");const e=(o=>{const a=o.split("."),[s,f,p]=a;if(a.length!==3||!s||!f||!p)throw new Error("ID token could not be decoded");const u=JSON.parse(Vt(f)),c={__raw:o},m={};return Object.keys(u).forEach(d=>{c[d]=u[d],qr.includes(d)||(m[d]=u[d])}),{encoded:{header:s,payload:f,signature:p},header:JSON.parse(Vt(s)),claims:c,user:m}})(t.id_token);if(!e.claims.iss)throw new Error("Issuer (iss) claim must be a string present in the ID token");if(e.claims.iss!==t.iss)throw new Error(`Issuer (iss) claim mismatch in the ID token; expected "${t.iss}", found "${e.claims.iss}"`);if(!e.user.sub)throw new Error("Subject (sub) claim must be a string present in the ID token");if(e.header.alg!=="RS256")throw new Error(`Signature algorithm of "${e.header.alg}" is not supported. Expected the ID token to be signed with "RS256".`);if(!e.claims.aud||typeof e.claims.aud!="string"&&!Array.isArray(e.claims.aud))throw new Error("Audience (aud) claim must be a string or array of strings present in the ID token");if(Array.isArray(e.claims.aud)){if(!e.claims.aud.includes(t.aud))throw new Error(`Audience (aud) claim mismatch in the ID token; expected "${t.aud}" but was not one of "${e.claims.aud.join(", ")}"`);if(e.claims.aud.length>1){if(!e.claims.azp)throw new Error("Authorized Party (azp) claim must be a string present in the ID token when Audience (aud) claim has multiple values");if(e.claims.azp!==t.aud)throw new Error(`Authorized Party (azp) claim mismatch in the ID token; expected "${t.aud}", found "${e.claims.azp}"`)}}else if(e.claims.aud!==t.aud)throw new Error(`Audience (aud) claim mismatch in the ID token; expected "${t.aud}" but found "${e.claims.aud}"`);if(t.nonce){if(!e.claims.nonce)throw new Error("Nonce (nonce) claim must be a string present in the ID token");if(e.claims.nonce!==t.nonce)throw new Error(`Nonce (nonce) claim mismatch in the ID token; expected "${t.nonce}", found "${e.claims.nonce}"`)}if(t.max_age&&!Ue(e.claims.auth_time))throw new Error("Authentication Time (auth_time) claim must be a number present in the ID token when Max Age (max_age) is specified");if(e.claims.exp==null||!Ue(e.claims.exp))throw new Error("Expiration Time (exp) claim must be a number present in the ID token");if(!Ue(e.claims.iat))throw new Error("Issued At (iat) claim must be a number present in the ID token");const n=t.leeway||60,r=new Date(t.now||Date.now()),i=new Date(0);if(i.setUTCSeconds(e.claims.exp+n),r>i)throw new Error(`Expiration Time (exp) claim error in the ID token; current time (${r}) is after expiration time (${i})`);if(e.claims.nbf!=null&&Ue(e.claims.nbf)){const o=new Date(0);if(o.setUTCSeconds(e.claims.nbf-n),r<o)throw new Error(`Not Before time (nbf) claim in the ID token indicates that this token can't be used just yet. Current time (${r}) is before ${o}`)}if(e.claims.auth_time!=null&&Ue(e.claims.auth_time)){const o=new Date(0);if(o.setUTCSeconds(parseInt(e.claims.auth_time)+t.max_age+n),r>o)throw new Error(`Authentication Time (auth_time) claim in the ID token indicates that too much time has passed since the last end-user authentication. Current time (${r}) is after last auth at ${o}`)}if(t.organization){const o=t.organization.trim();if(o.startsWith("org_")){const a=o;if(!e.claims.org_id)throw new Error("Organization ID (org_id) claim must be a string present in the ID token");if(a!==e.claims.org_id)throw new Error(`Organization ID (org_id) claim mismatch in the ID token; expected "${a}", found "${e.claims.org_id}"`)}else{const a=o.toLowerCase();if(!e.claims.org_name)throw new Error("Organization Name (org_name) claim must be a string present in the ID token");if(a!==e.claims.org_name)throw new Error(`Organization Name (org_name) claim mismatch in the ID token; expected "${a}", found "${e.claims.org_name}"`)}}return e};var me=$t(function(t,e){var n=he&&he.__assign||function(){return n=Object.assign||function(f){for(var p,u=1,c=arguments.length;u<c;u++)for(var m in p=arguments[u])Object.prototype.hasOwnProperty.call(p,m)&&(f[m]=p[m]);return f},n.apply(this,arguments)};function r(f,p){if(!p)return"";var u="; "+f;return p===!0?u:u+"="+p}function i(f,p,u){return encodeURIComponent(f).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/\(/g,"%28").replace(/\)/g,"%29")+"="+encodeURIComponent(p).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent)+function(c){if(typeof c.expires=="number"){var m=new Date;m.setMilliseconds(m.getMilliseconds()+864e5*c.expires),c.expires=m}return r("Expires",c.expires?c.expires.toUTCString():"")+r("Domain",c.domain)+r("Path",c.path)+r("Secure",c.secure)+r("SameSite",c.sameSite)}(u)}function o(f){for(var p={},u=f?f.split("; "):[],c=/(%[\dA-F]{2})+/gi,m=0;m<u.length;m++){var d=u[m].split("="),w=d.slice(1).join("=");w.charAt(0)==='"'&&(w=w.slice(1,-1));try{p[d[0].replace(c,decodeURIComponent)]=w.replace(c,decodeURIComponent)}catch{}}return p}function a(){return o(document.cookie)}function s(f,p,u){document.cookie=i(f,p,n({path:"/"},u))}e.__esModule=!0,e.encode=i,e.parse=o,e.getAll=a,e.get=function(f){return a()[f]},e.set=s,e.remove=function(f,p){s(f,"",n(n({},p),{expires:-1}))}});At(me),me.encode,me.parse,me.getAll;var ei=me.get,Gn=me.set,Bn=me.remove;const Ie={get(t){const e=ei(t);if(e!==void 0)return JSON.parse(e)},save(t,e,n){let r={};window.location.protocol==="https:"&&(r={secure:!0,sameSite:"none"}),n!=null&&n.daysUntilExpire&&(r.expires=n.daysUntilExpire),n!=null&&n.cookieDomain&&(r.domain=n.cookieDomain),Gn(t,JSON.stringify(e),r)},remove(t,e){let n={};e!=null&&e.cookieDomain&&(n.domain=e.cookieDomain),Bn(t,n)}},ti={get(t){return Ie.get(t)||Ie.get(`_legacy_${t}`)},save(t,e,n){let r={};window.location.protocol==="https:"&&(r={secure:!0}),n!=null&&n.daysUntilExpire&&(r.expires=n.daysUntilExpire),n!=null&&n.cookieDomain&&(r.domain=n.cookieDomain),Gn(`_legacy_${t}`,JSON.stringify(e),r),Ie.save(t,e,n)},remove(t,e){let n={};e!=null&&e.cookieDomain&&(n.domain=e.cookieDomain),Bn(t,n),Ie.remove(t,e),Ie.remove(`_legacy_${t}`,e)}},ni={get(t){if(typeof sessionStorage>"u")return;const e=sessionStorage.getItem(t);return e!=null?JSON.parse(e):void 0},save(t,e){sessionStorage.setItem(t,JSON.stringify(e))},remove(t){sessionStorage.removeItem(t)}};function ri(t,e,n){var r=e===void 0?null:e,i=function(f,p){var u=atob(f);if(p){for(var c=new Uint8Array(u.length),m=0,d=u.length;m<d;++m)c[m]=u.charCodeAt(m);return String.fromCharCode.apply(null,new Uint16Array(c.buffer))}return u}(t,n!==void 0&&n),o=i.indexOf(`
2
- `,10)+1,a=i.substring(o)+(r?"//# sourceMappingURL="+r:""),s=new Blob([a],{type:"application/javascript"});return URL.createObjectURL(s)}var Yt,Gt,Bt,ht,ii=(Yt="Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscil7c3VwZXIociksdGhpcy5lcnJvcj10LHRoaXMuZXJyb3JfZGVzY3JpcHRpb249cixPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxlLnByb3RvdHlwZSl9c3RhdGljIGZyb21QYXlsb2FkKHtlcnJvcjp0LGVycm9yX2Rlc2NyaXB0aW9uOnJ9KXtyZXR1cm4gbmV3IGUodCxyKX19Y2xhc3MgdCBleHRlbmRzIGV7Y29uc3RydWN0b3IoZSxzKXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIixgTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyR7cihlLFsiZGVmYXVsdCJdKX0nLCBzY29wZTogJyR7cihzKX0nKWApLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXMsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsdC5wcm90b3R5cGUpfX1mdW5jdGlvbiByKGUsdD1bXSl7cmV0dXJuIGUmJiF0LmluY2x1ZGVzKGUpP2U6IiJ9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO2NvbnN0IHM9ZT0+e3ZhcntjbGllbnRJZDp0fT1lLHI9ZnVuY3Rpb24oZSx0KXt2YXIgcj17fTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmdC5pbmRleE9mKHMpPDAmJihyW3NdPWVbc10pO2lmKG51bGwhPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz0wO2ZvcihzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7bzxzLmxlbmd0aDtvKyspdC5pbmRleE9mKHNbb10pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHNbb10pJiYocltzW29dXT1lW3Nbb11dKX1yZXR1cm4gcn0oZSxbImNsaWVudElkIl0pO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKChlPT5PYmplY3Qua2V5cyhlKS5maWx0ZXIoKHQ9PnZvaWQgMCE9PWVbdF0pKS5yZWR1Y2UoKCh0LHIpPT5PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse1tyXTplW3JdfSkpLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IG89e307Y29uc3Qgbj0oZSx0KT0+YCR7ZX18JHt0fWA7YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGFzeW5jKHtkYXRhOnt0aW1lb3V0OmUsYXV0aDpyLGZldGNoVXJsOmksZmV0Y2hPcHRpb25zOmMsdXNlRm9ybURhdGE6YX0scG9ydHM6W3BdfSk9PntsZXQgZjtjb25zdHthdWRpZW5jZTp1LHNjb3BlOmx9PXJ8fHt9O3RyeXtjb25zdCByPWE/KGU9Pntjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMoZSkscj17fTtyZXR1cm4gdC5mb3JFYWNoKCgoZSx0KT0+e3JbdF09ZX0pKSxyfSkoYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7aWYoIXIucmVmcmVzaF90b2tlbiYmInJlZnJlc2hfdG9rZW4iPT09ci5ncmFudF90eXBlKXtjb25zdCBlPSgoZSx0KT0+b1tuKGUsdCldKSh1LGwpO2lmKCFlKXRocm93IG5ldyB0KHUsbCk7Yy5ib2R5PWE/cyhPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKTpKU09OLnN0cmluZ2lmeShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKX1sZXQgaCxnOyJmdW5jdGlvbiI9PXR5cGVvZiBBYm9ydENvbnRyb2xsZXImJihoPW5ldyBBYm9ydENvbnRyb2xsZXIsYy5zaWduYWw9aC5zaWduYWwpO3RyeXtnPWF3YWl0IFByb21pc2UucmFjZShbKGQ9ZSxuZXcgUHJvbWlzZSgoZT0+c2V0VGltZW91dChlLGQpKSkpLGZldGNoKGksT2JqZWN0LmFzc2lnbih7fSxjKSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBwLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighZylyZXR1cm4gaCYmaC5hYm9ydCgpLHZvaWQgcC5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtmPWF3YWl0IGcuanNvbigpLGYucmVmcmVzaF90b2tlbj8oKChlLHQscik9PntvW24odCxyKV09ZX0pKGYucmVmcmVzaF90b2tlbix1LGwpLGRlbGV0ZSBmLnJlZnJlc2hfdG9rZW4pOigoZSx0KT0+e2RlbGV0ZSBvW24oZSx0KV19KSh1LGwpLHAucG9zdE1lc3NhZ2Uoe29rOmcub2ssanNvbjpmfSl9Y2F0Y2goZSl7cC5wb3N0TWVzc2FnZSh7b2s6ITEsanNvbjp7ZXJyb3I6ZS5lcnJvcixlcnJvcl9kZXNjcmlwdGlvbjplLm1lc3NhZ2V9fSl9dmFyIGR9KSl9KCk7Cgo=",Gt=null,Bt=!1,function(t){return ht=ht||ri(Yt,Gt,Bt),new Worker(ht,t)});const ft={};let oi=class{constructor(e,n){this.cache=e,this.clientId=n,this.manifestKey=this.createManifestKeyFrom(this.clientId)}async add(e){var n;const r=new Set(((n=await this.cache.get(this.manifestKey))===null||n===void 0?void 0:n.keys)||[]);r.add(e),await this.cache.set(this.manifestKey,{keys:[...r]})}async remove(e){const n=await this.cache.get(this.manifestKey);if(n){const r=new Set(n.keys);return r.delete(e),r.size>0?await this.cache.set(this.manifestKey,{keys:[...r]}):await this.cache.remove(this.manifestKey)}}get(){return this.cache.get(this.manifestKey)}clear(){return this.cache.remove(this.manifestKey)}createManifestKeyFrom(e){return`@@auth0spajs@@::${e}`}};const ai={memory:()=>new Yn().enclosedCache,localstorage:()=>new Yr},qt=t=>ai[t],Qt=t=>{const{openUrl:e,onRedirect:n}=t,r=ne(t,["openUrl","onRedirect"]);return Object.assign(Object.assign({},r),{openUrl:e===!1||e?e:n})},pt=new Dr;let si=class{constructor(e){let n,r;if(this.userCache=new Yn().enclosedCache,this.defaultOptions={authorizationParams:{scope:"openid profile email"},useRefreshTokensFallback:!1,useFormData:!0},this._releaseLockOnPageHide=async()=>{await pt.releaseLock("auth0.lock.getTokenSilently"),window.removeEventListener("pagehide",this._releaseLockOnPageHide)},this.options=Object.assign(Object.assign(Object.assign({},this.defaultOptions),e),{authorizationParams:Object.assign(Object.assign({},this.defaultOptions.authorizationParams),e.authorizationParams)}),typeof window<"u"&&(()=>{if(!Qe())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(Qe().subtle===void 0)throw new Error(`
1
+ "use strict";var Lr=Object.defineProperty;var Dr=(t,e,n)=>e in t?Lr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var q=(t,e,n)=>(Dr(t,typeof e!="symbol"?e+"":e,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});function ue(t,e){const n=new CustomEvent(t,{detail:e,bubbles:!0,composed:!0});dispatchEvent(n)}function ne(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function"){var i=0;for(r=Object.getOwnPropertySymbols(t);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(t,r[i])&&(n[r[i]]=t[r[i]])}return n}var he=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function $t(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Nt(t,e){return t(e={exports:{}},e.exports),e.exports}var de=Nt(function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function r(){var i=this;this.locked=new Map,this.addToLocked=function(o,a){var s=i.locked.get(o);s===void 0?a===void 0?i.locked.set(o,[]):i.locked.set(o,[a]):a!==void 0&&(s.unshift(a),i.locked.set(o,s))},this.isLocked=function(o){return i.locked.has(o)},this.lock=function(o){return new Promise(function(a,s){i.isLocked(o)?i.addToLocked(o,a):(i.addToLocked(o),a())})},this.unlock=function(o){var a=i.locked.get(o);if(a!==void 0&&a.length!==0){var s=a.pop();i.locked.set(o,a),s!==void 0&&setTimeout(s,0)}else i.locked.delete(o)}}return r.getInstance=function(){return r.instance===void 0&&(r.instance=new r),r.instance},r}();e.default=function(){return n.getInstance()}});$t(de);var Mr=$t(Nt(function(t,e){var n=he&&he.__awaiter||function(u,c,m,d){return new(m||(m=Promise))(function(w,k){function v(y){try{S(d.next(y))}catch(l){k(l)}}function _(y){try{S(d.throw(y))}catch(l){k(l)}}function S(y){y.done?w(y.value):new m(function(l){l(y.value)}).then(v,_)}S((d=d.apply(u,c||[])).next())})},r=he&&he.__generator||function(u,c){var m,d,w,k,v={label:0,sent:function(){if(1&w[0])throw w[1];return w[1]},trys:[],ops:[]};return k={next:_(0),throw:_(1),return:_(2)},typeof Symbol=="function"&&(k[Symbol.iterator]=function(){return this}),k;function _(S){return function(y){return function(l){if(m)throw new TypeError("Generator is already executing.");for(;v;)try{if(m=1,d&&(w=2&l[0]?d.return:l[0]?d.throw||((w=d.return)&&w.call(d),0):d.next)&&!(w=w.call(d,l[1])).done)return w;switch(d=0,w&&(l=[2&l[0],w.value]),l[0]){case 0:case 1:w=l;break;case 4:return v.label++,{value:l[1],done:!1};case 5:v.label++,d=l[1],l=[0];continue;case 7:l=v.ops.pop(),v.trys.pop();continue;default:if(w=v.trys,!((w=w.length>0&&w[w.length-1])||l[0]!==6&&l[0]!==2)){v=0;continue}if(l[0]===3&&(!w||l[1]>w[0]&&l[1]<w[3])){v.label=l[1];break}if(l[0]===6&&v.label<w[1]){v.label=w[1],w=l;break}if(w&&v.label<w[2]){v.label=w[2],v.ops.push(l);break}w[2]&&v.ops.pop(),v.trys.pop();continue}l=c.call(u,v)}catch(b){l=[6,b],d=0}finally{m=w=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([S,y])}}},i=he;Object.defineProperty(e,"__esModule",{value:!0});var o="browser-tabs-lock-key",a={key:function(u){return n(i,void 0,void 0,function(){return r(this,function(c){throw new Error("Unsupported")})})},getItem:function(u){return n(i,void 0,void 0,function(){return r(this,function(c){throw new Error("Unsupported")})})},clear:function(){return n(i,void 0,void 0,function(){return r(this,function(u){return[2,window.localStorage.clear()]})})},removeItem:function(u){return n(i,void 0,void 0,function(){return r(this,function(c){throw new Error("Unsupported")})})},setItem:function(u,c){return n(i,void 0,void 0,function(){return r(this,function(m){throw new Error("Unsupported")})})},keySync:function(u){return window.localStorage.key(u)},getItemSync:function(u){return window.localStorage.getItem(u)},clearSync:function(){return window.localStorage.clear()},removeItemSync:function(u){return window.localStorage.removeItem(u)},setItemSync:function(u,c){return window.localStorage.setItem(u,c)}};function s(u){return new Promise(function(c){return setTimeout(c,u)})}function f(u){for(var c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz",m="",d=0;d<u;d++)m+=c[Math.floor(Math.random()*c.length)];return m}var p=function(){function u(c){this.acquiredIatSet=new Set,this.storageHandler=void 0,this.id=Date.now().toString()+f(15),this.acquireLock=this.acquireLock.bind(this),this.releaseLock=this.releaseLock.bind(this),this.releaseLock__private__=this.releaseLock__private__.bind(this),this.waitForSomethingToChange=this.waitForSomethingToChange.bind(this),this.refreshLockWhileAcquired=this.refreshLockWhileAcquired.bind(this),this.storageHandler=c,u.waiters===void 0&&(u.waiters=[])}return u.prototype.acquireLock=function(c,m){return m===void 0&&(m=5e3),n(this,void 0,void 0,function(){var d,w,k,v,_,S,y;return r(this,function(l){switch(l.label){case 0:d=Date.now()+f(4),w=Date.now()+m,k=o+"-"+c,v=this.storageHandler===void 0?a:this.storageHandler,l.label=1;case 1:return Date.now()<w?[4,s(30)]:[3,8];case 2:return l.sent(),v.getItemSync(k)!==null?[3,5]:(_=this.id+"-"+c+"-"+d,[4,s(Math.floor(25*Math.random()))]);case 3:return l.sent(),v.setItemSync(k,JSON.stringify({id:this.id,iat:d,timeoutKey:_,timeAcquired:Date.now(),timeRefreshed:Date.now()})),[4,s(30)];case 4:return l.sent(),(S=v.getItemSync(k))!==null&&(y=JSON.parse(S)).id===this.id&&y.iat===d?(this.acquiredIatSet.add(d),this.refreshLockWhileAcquired(k,d),[2,!0]):[3,7];case 5:return u.lockCorrector(this.storageHandler===void 0?a:this.storageHandler),[4,this.waitForSomethingToChange(w)];case 6:l.sent(),l.label=7;case 7:return d=Date.now()+f(4),[3,1];case 8:return[2,!1]}})})},u.prototype.refreshLockWhileAcquired=function(c,m){return n(this,void 0,void 0,function(){var d=this;return r(this,function(w){return setTimeout(function(){return n(d,void 0,void 0,function(){var k,v,_;return r(this,function(S){switch(S.label){case 0:return[4,de.default().lock(m)];case 1:return S.sent(),this.acquiredIatSet.has(m)?(k=this.storageHandler===void 0?a:this.storageHandler,(v=k.getItemSync(c))===null?(de.default().unlock(m),[2]):((_=JSON.parse(v)).timeRefreshed=Date.now(),k.setItemSync(c,JSON.stringify(_)),de.default().unlock(m),this.refreshLockWhileAcquired(c,m),[2])):(de.default().unlock(m),[2])}})})},1e3),[2]})})},u.prototype.waitForSomethingToChange=function(c){return n(this,void 0,void 0,function(){return r(this,function(m){switch(m.label){case 0:return[4,new Promise(function(d){var w=!1,k=Date.now(),v=!1;function _(){if(v||(window.removeEventListener("storage",_),u.removeFromWaiting(_),clearTimeout(S),v=!0),!w){w=!0;var y=50-(Date.now()-k);y>0?setTimeout(d,y):d(null)}}window.addEventListener("storage",_),u.addToWaiting(_);var S=setTimeout(_,Math.max(0,c-Date.now()))})];case 1:return m.sent(),[2]}})})},u.addToWaiting=function(c){this.removeFromWaiting(c),u.waiters!==void 0&&u.waiters.push(c)},u.removeFromWaiting=function(c){u.waiters!==void 0&&(u.waiters=u.waiters.filter(function(m){return m!==c}))},u.notifyWaiters=function(){u.waiters!==void 0&&u.waiters.slice().forEach(function(c){return c()})},u.prototype.releaseLock=function(c){return n(this,void 0,void 0,function(){return r(this,function(m){switch(m.label){case 0:return[4,this.releaseLock__private__(c)];case 1:return[2,m.sent()]}})})},u.prototype.releaseLock__private__=function(c){return n(this,void 0,void 0,function(){var m,d,w,k;return r(this,function(v){switch(v.label){case 0:return m=this.storageHandler===void 0?a:this.storageHandler,d=o+"-"+c,(w=m.getItemSync(d))===null?[2]:(k=JSON.parse(w)).id!==this.id?[3,2]:[4,de.default().lock(k.iat)];case 1:v.sent(),this.acquiredIatSet.delete(k.iat),m.removeItemSync(d),de.default().unlock(k.iat),u.notifyWaiters(),v.label=2;case 2:return[2]}})})},u.lockCorrector=function(c){for(var m=Date.now()-5e3,d=c,w=[],k=0;;){var v=d.keySync(k);if(v===null)break;w.push(v),k++}for(var _=!1,S=0;S<w.length;S++){var y=w[S];if(y.includes(o)){var l=d.getItemSync(y);if(l!==null){var b=JSON.parse(l);(b.timeRefreshed===void 0&&b.timeAcquired<m||b.timeRefreshed!==void 0&&b.timeRefreshed<m)&&(d.removeItemSync(y),_=!0)}}}_&&u.notifyWaiters()},u.waiters=void 0,u}();e.default=p}));const Zr={timeoutInSeconds:60},Fn={name:"auth0-spa-js",version:"2.1.3"},Hn=()=>Date.now();let G=class kt extends Error{constructor(e,n){super(n),this.error=e,this.error_description=n,Object.setPrototypeOf(this,kt.prototype)}static fromPayload({error:e,error_description:n}){return new kt(e,n)}},Kr=class Jn extends G{constructor(e,n,r,i=null){super(e,n),this.state=r,this.appState=i,Object.setPrototypeOf(this,Jn.prototype)}},It=class Xn extends G{constructor(){super("timeout","Timeout"),Object.setPrototypeOf(this,Xn.prototype)}},Wr=class Vn extends It{constructor(e){super(),this.popup=e,Object.setPrototypeOf(this,Vn.prototype)}},Fr=class Yn extends G{constructor(e){super("cancelled","Popup closed"),this.popup=e,Object.setPrototypeOf(this,Yn.prototype)}},Hr=class Gn extends G{constructor(e,n,r){super(e,n),this.mfa_token=r,Object.setPrototypeOf(this,Gn.prototype)}},Bn=class qn extends G{constructor(e,n){super("missing_refresh_token",`Missing Refresh Token (audience: '${Yt(e,["default"])}', scope: '${Yt(n)}')`),this.audience=e,this.scope=n,Object.setPrototypeOf(this,qn.prototype)}};function Yt(t,e=[]){return t&&!e.includes(t)?t:""}const Qe=()=>window.crypto,dt=()=>{const t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_~.";let e="";return Array.from(Qe().getRandomValues(new Uint8Array(43))).forEach(n=>e+=t[n%t.length]),e},Gt=t=>btoa(t),St=t=>{var{clientId:e}=t,n=ne(t,["clientId"]);return new URLSearchParams((r=>Object.keys(r).filter(i=>r[i]!==void 0).reduce((i,o)=>Object.assign(Object.assign({},i),{[o]:r[o]}),{}))(Object.assign({client_id:e},n))).toString()},Bt=t=>(e=>decodeURIComponent(atob(e).split("").map(n=>"%"+("00"+n.charCodeAt(0).toString(16)).slice(-2)).join("")))(t.replace(/_/g,"/").replace(/-/g,"+")),Jr=async(t,e)=>{const n=await fetch(t,e);return{ok:n.ok,json:await n.json()}},Xr=async(t,e,n)=>{const r=new AbortController;let i;return e.signal=r.signal,Promise.race([Jr(t,e),new Promise((o,a)=>{i=setTimeout(()=>{r.abort(),a(new Error("Timeout when executing 'fetch'"))},n)})]).finally(()=>{clearTimeout(i)})},Vr=async(t,e,n,r,i,o,a)=>{return s={auth:{audience:e,scope:n},timeout:i,fetchUrl:t,fetchOptions:r,useFormData:a},f=o,new Promise(function(p,u){const c=new MessageChannel;c.port1.onmessage=function(m){m.data.error?u(new Error(m.data.error)):p(m.data),c.port1.close()},f.postMessage(s,[c.port2])});var s,f},Yr=async(t,e,n,r,i,o,a=1e4)=>i?Vr(t,e,n,r,a,i,o):Xr(t,r,a);async function Gr(t,e){var{baseUrl:n,timeout:r,audience:i,scope:o,auth0Client:a,useFormData:s}=t,f=ne(t,["baseUrl","timeout","audience","scope","auth0Client","useFormData"]);const p=s?St(f):JSON.stringify(f);return await async function(u,c,m,d,w,k,v){let _,S=null;for(let C=0;C<3;C++)try{_=await Yr(u,m,d,w,k,v,c),S=null;break}catch(L){S=L}if(S)throw S;const y=_.json,{error:l,error_description:b}=y,T=ne(y,["error","error_description"]),{ok:O}=_;if(!O){const C=b||`HTTP error. Unable to fetch ${u}`;throw l==="mfa_required"?new Hr(l,C,T.mfa_token):l==="missing_refresh_token"?new Bn(m,d):new G(l||"request_error",C)}return T}(`${n}/oauth/token`,r,i||"default",o,{method:"POST",body:p,headers:{"Content-Type":s?"application/x-www-form-urlencoded":"application/json","Auth0-Client":btoa(JSON.stringify(a||Fn))}},e,s)}const He=(...t)=>{return(e=t.filter(Boolean).join(" ").trim().split(/\s+/),Array.from(new Set(e))).join(" ");var e};let pe=class _t{constructor(e,n="@@auth0spajs@@",r){this.prefix=n,this.suffix=r,this.clientId=e.clientId,this.scope=e.scope,this.audience=e.audience}toKey(){return[this.prefix,this.clientId,this.audience,this.scope,this.suffix].filter(Boolean).join("::")}static fromKey(e){const[n,r,i,o]=e.split("::");return new _t({clientId:r,scope:o,audience:i},n)}static fromCacheEntry(e){const{scope:n,audience:r,client_id:i}=e;return new _t({scope:n,audience:r,clientId:i})}},Br=class{set(e,n){localStorage.setItem(e,JSON.stringify(n))}get(e){const n=window.localStorage.getItem(e);if(n)try{return JSON.parse(n)}catch{return}}remove(e){localStorage.removeItem(e)}allKeys(){return Object.keys(window.localStorage).filter(e=>e.startsWith("@@auth0spajs@@"))}},Qn=class{constructor(){this.enclosedCache=function(){let e={};return{set(n,r){e[n]=r},get(n){const r=e[n];if(r)return r},remove(n){delete e[n]},allKeys:()=>Object.keys(e)}}()}},qr=class{constructor(e,n,r){this.cache=e,this.keyManifest=n,this.nowProvider=r||Hn}async setIdToken(e,n,r){var i;const o=this.getIdTokenCacheKey(e);await this.cache.set(o,{id_token:n,decodedToken:r}),await((i=this.keyManifest)===null||i===void 0?void 0:i.add(o))}async getIdToken(e){const n=await this.cache.get(this.getIdTokenCacheKey(e.clientId));if(!n&&e.scope&&e.audience){const r=await this.get(e);return!r||!r.id_token||!r.decodedToken?void 0:{id_token:r.id_token,decodedToken:r.decodedToken}}if(n)return{id_token:n.id_token,decodedToken:n.decodedToken}}async get(e,n=0){var r;let i=await this.cache.get(e.toKey());if(!i){const s=await this.getCacheKeys();if(!s)return;const f=this.matchExistingCacheKey(e,s);f&&(i=await this.cache.get(f))}if(!i)return;const o=await this.nowProvider(),a=Math.floor(o/1e3);return i.expiresAt-n<a?i.body.refresh_token?(i.body={refresh_token:i.body.refresh_token},await this.cache.set(e.toKey(),i),i.body):(await this.cache.remove(e.toKey()),void await((r=this.keyManifest)===null||r===void 0?void 0:r.remove(e.toKey()))):i.body}async set(e){var n;const r=new pe({clientId:e.client_id,scope:e.scope,audience:e.audience}),i=await this.wrapCacheEntry(e);await this.cache.set(r.toKey(),i),await((n=this.keyManifest)===null||n===void 0?void 0:n.add(r.toKey()))}async clear(e){var n;const r=await this.getCacheKeys();r&&(await r.filter(i=>!e||i.includes(e)).reduce(async(i,o)=>{await i,await this.cache.remove(o)},Promise.resolve()),await((n=this.keyManifest)===null||n===void 0?void 0:n.clear()))}async wrapCacheEntry(e){const n=await this.nowProvider();return{body:e,expiresAt:Math.floor(n/1e3)+e.expires_in}}async getCacheKeys(){var e;return this.keyManifest?(e=await this.keyManifest.get())===null||e===void 0?void 0:e.keys:this.cache.allKeys?this.cache.allKeys():void 0}getIdTokenCacheKey(e){return new pe({clientId:e},"@@auth0spajs@@","@@user@@").toKey()}matchExistingCacheKey(e,n){return n.filter(r=>{var i;const o=pe.fromKey(r),a=new Set(o.scope&&o.scope.split(" ")),s=((i=e.scope)===null||i===void 0?void 0:i.split(" "))||[],f=o.scope&&s.reduce((p,u)=>p&&a.has(u),!0);return o.prefix==="@@auth0spajs@@"&&o.clientId===e.clientId&&o.audience===e.audience&&f})[0]}},Qr=class{constructor(e,n,r){this.storage=e,this.clientId=n,this.cookieDomain=r,this.storageKey=`a0.spajs.txs.${this.clientId}`}create(e){this.storage.save(this.storageKey,e,{daysUntilExpire:1,cookieDomain:this.cookieDomain})}get(){return this.storage.get(this.storageKey)}remove(){this.storage.remove(this.storageKey,{cookieDomain:this.cookieDomain})}};const Ue=t=>typeof t=="number",ei=["iss","aud","exp","nbf","iat","jti","azp","nonce","auth_time","at_hash","c_hash","acr","amr","sub_jwk","cnf","sip_from_tag","sip_date","sip_callid","sip_cseq_num","sip_via_branch","orig","dest","mky","events","toe","txn","rph","sid","vot","vtm"],ti=t=>{if(!t.id_token)throw new Error("ID token is required but missing");const e=(o=>{const a=o.split("."),[s,f,p]=a;if(a.length!==3||!s||!f||!p)throw new Error("ID token could not be decoded");const u=JSON.parse(Bt(f)),c={__raw:o},m={};return Object.keys(u).forEach(d=>{c[d]=u[d],ei.includes(d)||(m[d]=u[d])}),{encoded:{header:s,payload:f,signature:p},header:JSON.parse(Bt(s)),claims:c,user:m}})(t.id_token);if(!e.claims.iss)throw new Error("Issuer (iss) claim must be a string present in the ID token");if(e.claims.iss!==t.iss)throw new Error(`Issuer (iss) claim mismatch in the ID token; expected "${t.iss}", found "${e.claims.iss}"`);if(!e.user.sub)throw new Error("Subject (sub) claim must be a string present in the ID token");if(e.header.alg!=="RS256")throw new Error(`Signature algorithm of "${e.header.alg}" is not supported. Expected the ID token to be signed with "RS256".`);if(!e.claims.aud||typeof e.claims.aud!="string"&&!Array.isArray(e.claims.aud))throw new Error("Audience (aud) claim must be a string or array of strings present in the ID token");if(Array.isArray(e.claims.aud)){if(!e.claims.aud.includes(t.aud))throw new Error(`Audience (aud) claim mismatch in the ID token; expected "${t.aud}" but was not one of "${e.claims.aud.join(", ")}"`);if(e.claims.aud.length>1){if(!e.claims.azp)throw new Error("Authorized Party (azp) claim must be a string present in the ID token when Audience (aud) claim has multiple values");if(e.claims.azp!==t.aud)throw new Error(`Authorized Party (azp) claim mismatch in the ID token; expected "${t.aud}", found "${e.claims.azp}"`)}}else if(e.claims.aud!==t.aud)throw new Error(`Audience (aud) claim mismatch in the ID token; expected "${t.aud}" but found "${e.claims.aud}"`);if(t.nonce){if(!e.claims.nonce)throw new Error("Nonce (nonce) claim must be a string present in the ID token");if(e.claims.nonce!==t.nonce)throw new Error(`Nonce (nonce) claim mismatch in the ID token; expected "${t.nonce}", found "${e.claims.nonce}"`)}if(t.max_age&&!Ue(e.claims.auth_time))throw new Error("Authentication Time (auth_time) claim must be a number present in the ID token when Max Age (max_age) is specified");if(e.claims.exp==null||!Ue(e.claims.exp))throw new Error("Expiration Time (exp) claim must be a number present in the ID token");if(!Ue(e.claims.iat))throw new Error("Issued At (iat) claim must be a number present in the ID token");const n=t.leeway||60,r=new Date(t.now||Date.now()),i=new Date(0);if(i.setUTCSeconds(e.claims.exp+n),r>i)throw new Error(`Expiration Time (exp) claim error in the ID token; current time (${r}) is after expiration time (${i})`);if(e.claims.nbf!=null&&Ue(e.claims.nbf)){const o=new Date(0);if(o.setUTCSeconds(e.claims.nbf-n),r<o)throw new Error(`Not Before time (nbf) claim in the ID token indicates that this token can't be used just yet. Current time (${r}) is before ${o}`)}if(e.claims.auth_time!=null&&Ue(e.claims.auth_time)){const o=new Date(0);if(o.setUTCSeconds(parseInt(e.claims.auth_time)+t.max_age+n),r>o)throw new Error(`Authentication Time (auth_time) claim in the ID token indicates that too much time has passed since the last end-user authentication. Current time (${r}) is after last auth at ${o}`)}if(t.organization){const o=t.organization.trim();if(o.startsWith("org_")){const a=o;if(!e.claims.org_id)throw new Error("Organization ID (org_id) claim must be a string present in the ID token");if(a!==e.claims.org_id)throw new Error(`Organization ID (org_id) claim mismatch in the ID token; expected "${a}", found "${e.claims.org_id}"`)}else{const a=o.toLowerCase();if(!e.claims.org_name)throw new Error("Organization Name (org_name) claim must be a string present in the ID token");if(a!==e.claims.org_name)throw new Error(`Organization Name (org_name) claim mismatch in the ID token; expected "${a}", found "${e.claims.org_name}"`)}}return e};var me=Nt(function(t,e){var n=he&&he.__assign||function(){return n=Object.assign||function(f){for(var p,u=1,c=arguments.length;u<c;u++)for(var m in p=arguments[u])Object.prototype.hasOwnProperty.call(p,m)&&(f[m]=p[m]);return f},n.apply(this,arguments)};function r(f,p){if(!p)return"";var u="; "+f;return p===!0?u:u+"="+p}function i(f,p,u){return encodeURIComponent(f).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/\(/g,"%28").replace(/\)/g,"%29")+"="+encodeURIComponent(p).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent)+function(c){if(typeof c.expires=="number"){var m=new Date;m.setMilliseconds(m.getMilliseconds()+864e5*c.expires),c.expires=m}return r("Expires",c.expires?c.expires.toUTCString():"")+r("Domain",c.domain)+r("Path",c.path)+r("Secure",c.secure)+r("SameSite",c.sameSite)}(u)}function o(f){for(var p={},u=f?f.split("; "):[],c=/(%[\dA-F]{2})+/gi,m=0;m<u.length;m++){var d=u[m].split("="),w=d.slice(1).join("=");w.charAt(0)==='"'&&(w=w.slice(1,-1));try{p[d[0].replace(c,decodeURIComponent)]=w.replace(c,decodeURIComponent)}catch{}}return p}function a(){return o(document.cookie)}function s(f,p,u){document.cookie=i(f,p,n({path:"/"},u))}e.__esModule=!0,e.encode=i,e.parse=o,e.getAll=a,e.get=function(f){return a()[f]},e.set=s,e.remove=function(f,p){s(f,"",n(n({},p),{expires:-1}))}});$t(me),me.encode,me.parse,me.getAll;var ni=me.get,er=me.set,tr=me.remove;const Ie={get(t){const e=ni(t);if(e!==void 0)return JSON.parse(e)},save(t,e,n){let r={};window.location.protocol==="https:"&&(r={secure:!0,sameSite:"none"}),n!=null&&n.daysUntilExpire&&(r.expires=n.daysUntilExpire),n!=null&&n.cookieDomain&&(r.domain=n.cookieDomain),er(t,JSON.stringify(e),r)},remove(t,e){let n={};e!=null&&e.cookieDomain&&(n.domain=e.cookieDomain),tr(t,n)}},ri={get(t){return Ie.get(t)||Ie.get(`_legacy_${t}`)},save(t,e,n){let r={};window.location.protocol==="https:"&&(r={secure:!0}),n!=null&&n.daysUntilExpire&&(r.expires=n.daysUntilExpire),n!=null&&n.cookieDomain&&(r.domain=n.cookieDomain),er(`_legacy_${t}`,JSON.stringify(e),r),Ie.save(t,e,n)},remove(t,e){let n={};e!=null&&e.cookieDomain&&(n.domain=e.cookieDomain),tr(t,n),Ie.remove(t,e),Ie.remove(`_legacy_${t}`,e)}},ii={get(t){if(typeof sessionStorage>"u")return;const e=sessionStorage.getItem(t);return e!=null?JSON.parse(e):void 0},save(t,e){sessionStorage.setItem(t,JSON.stringify(e))},remove(t){sessionStorage.removeItem(t)}};function oi(t,e,n){var r=e===void 0?null:e,i=function(f,p){var u=atob(f);if(p){for(var c=new Uint8Array(u.length),m=0,d=u.length;m<d;++m)c[m]=u.charCodeAt(m);return String.fromCharCode.apply(null,new Uint16Array(c.buffer))}return u}(t,n!==void 0&&n),o=i.indexOf(`
2
+ `,10)+1,a=i.substring(o)+(r?"//# sourceMappingURL="+r:""),s=new Blob([a],{type:"application/javascript"});return URL.createObjectURL(s)}var qt,Qt,en,ht,ai=(qt="Lyogcm9sbHVwLXBsdWdpbi13ZWItd29ya2VyLWxvYWRlciAqLwohZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7Y2xhc3MgZSBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQscil7c3VwZXIociksdGhpcy5lcnJvcj10LHRoaXMuZXJyb3JfZGVzY3JpcHRpb249cixPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcyxlLnByb3RvdHlwZSl9c3RhdGljIGZyb21QYXlsb2FkKHtlcnJvcjp0LGVycm9yX2Rlc2NyaXB0aW9uOnJ9KXtyZXR1cm4gbmV3IGUodCxyKX19Y2xhc3MgdCBleHRlbmRzIGV7Y29uc3RydWN0b3IoZSxzKXtzdXBlcigibWlzc2luZ19yZWZyZXNoX3Rva2VuIixgTWlzc2luZyBSZWZyZXNoIFRva2VuIChhdWRpZW5jZTogJyR7cihlLFsiZGVmYXVsdCJdKX0nLCBzY29wZTogJyR7cihzKX0nKWApLHRoaXMuYXVkaWVuY2U9ZSx0aGlzLnNjb3BlPXMsT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsdC5wcm90b3R5cGUpfX1mdW5jdGlvbiByKGUsdD1bXSl7cmV0dXJuIGUmJiF0LmluY2x1ZGVzKGUpP2U6IiJ9ImZ1bmN0aW9uIj09dHlwZW9mIFN1cHByZXNzZWRFcnJvciYmU3VwcHJlc3NlZEVycm9yO2NvbnN0IHM9ZT0+e3ZhcntjbGllbnRJZDp0fT1lLHI9ZnVuY3Rpb24oZSx0KXt2YXIgcj17fTtmb3IodmFyIHMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxzKSYmdC5pbmRleE9mKHMpPDAmJihyW3NdPWVbc10pO2lmKG51bGwhPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKXt2YXIgbz0wO2ZvcihzPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZSk7bzxzLmxlbmd0aDtvKyspdC5pbmRleE9mKHNbb10pPDAmJk9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChlLHNbb10pJiYocltzW29dXT1lW3Nbb11dKX1yZXR1cm4gcn0oZSxbImNsaWVudElkIl0pO3JldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKChlPT5PYmplY3Qua2V5cyhlKS5maWx0ZXIoKHQ9PnZvaWQgMCE9PWVbdF0pKS5yZWR1Y2UoKCh0LHIpPT5PYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sdCkse1tyXTplW3JdfSkpLHt9KSkoT2JqZWN0LmFzc2lnbih7Y2xpZW50X2lkOnR9LHIpKSkudG9TdHJpbmcoKX07bGV0IG89e307Y29uc3Qgbj0oZSx0KT0+YCR7ZX18JHt0fWA7YWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsKGFzeW5jKHtkYXRhOnt0aW1lb3V0OmUsYXV0aDpyLGZldGNoVXJsOmksZmV0Y2hPcHRpb25zOmMsdXNlRm9ybURhdGE6YX0scG9ydHM6W3BdfSk9PntsZXQgZjtjb25zdHthdWRpZW5jZTp1LHNjb3BlOmx9PXJ8fHt9O3RyeXtjb25zdCByPWE/KGU9Pntjb25zdCB0PW5ldyBVUkxTZWFyY2hQYXJhbXMoZSkscj17fTtyZXR1cm4gdC5mb3JFYWNoKCgoZSx0KT0+e3JbdF09ZX0pKSxyfSkoYy5ib2R5KTpKU09OLnBhcnNlKGMuYm9keSk7aWYoIXIucmVmcmVzaF90b2tlbiYmInJlZnJlc2hfdG9rZW4iPT09ci5ncmFudF90eXBlKXtjb25zdCBlPSgoZSx0KT0+b1tuKGUsdCldKSh1LGwpO2lmKCFlKXRocm93IG5ldyB0KHUsbCk7Yy5ib2R5PWE/cyhPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKTpKU09OLnN0cmluZ2lmeShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30scikse3JlZnJlc2hfdG9rZW46ZX0pKX1sZXQgaCxnOyJmdW5jdGlvbiI9PXR5cGVvZiBBYm9ydENvbnRyb2xsZXImJihoPW5ldyBBYm9ydENvbnRyb2xsZXIsYy5zaWduYWw9aC5zaWduYWwpO3RyeXtnPWF3YWl0IFByb21pc2UucmFjZShbKGQ9ZSxuZXcgUHJvbWlzZSgoZT0+c2V0VGltZW91dChlLGQpKSkpLGZldGNoKGksT2JqZWN0LmFzc2lnbih7fSxjKSldKX1jYXRjaChlKXtyZXR1cm4gdm9pZCBwLnBvc3RNZXNzYWdlKHtlcnJvcjplLm1lc3NhZ2V9KX1pZighZylyZXR1cm4gaCYmaC5hYm9ydCgpLHZvaWQgcC5wb3N0TWVzc2FnZSh7ZXJyb3I6IlRpbWVvdXQgd2hlbiBleGVjdXRpbmcgJ2ZldGNoJyJ9KTtmPWF3YWl0IGcuanNvbigpLGYucmVmcmVzaF90b2tlbj8oKChlLHQscik9PntvW24odCxyKV09ZX0pKGYucmVmcmVzaF90b2tlbix1LGwpLGRlbGV0ZSBmLnJlZnJlc2hfdG9rZW4pOigoZSx0KT0+e2RlbGV0ZSBvW24oZSx0KV19KSh1LGwpLHAucG9zdE1lc3NhZ2Uoe29rOmcub2ssanNvbjpmfSl9Y2F0Y2goZSl7cC5wb3N0TWVzc2FnZSh7b2s6ITEsanNvbjp7ZXJyb3I6ZS5lcnJvcixlcnJvcl9kZXNjcmlwdGlvbjplLm1lc3NhZ2V9fSl9dmFyIGR9KSl9KCk7Cgo=",Qt=null,en=!1,function(t){return ht=ht||oi(qt,Qt,en),new Worker(ht,t)});const ft={};let si=class{constructor(e,n){this.cache=e,this.clientId=n,this.manifestKey=this.createManifestKeyFrom(this.clientId)}async add(e){var n;const r=new Set(((n=await this.cache.get(this.manifestKey))===null||n===void 0?void 0:n.keys)||[]);r.add(e),await this.cache.set(this.manifestKey,{keys:[...r]})}async remove(e){const n=await this.cache.get(this.manifestKey);if(n){const r=new Set(n.keys);return r.delete(e),r.size>0?await this.cache.set(this.manifestKey,{keys:[...r]}):await this.cache.remove(this.manifestKey)}}get(){return this.cache.get(this.manifestKey)}clear(){return this.cache.remove(this.manifestKey)}createManifestKeyFrom(e){return`@@auth0spajs@@::${e}`}};const ci={memory:()=>new Qn().enclosedCache,localstorage:()=>new Br},tn=t=>ci[t],nn=t=>{const{openUrl:e,onRedirect:n}=t,r=ne(t,["openUrl","onRedirect"]);return Object.assign(Object.assign({},r),{openUrl:e===!1||e?e:n})},pt=new Mr;let ui=class{constructor(e){let n,r;if(this.userCache=new Qn().enclosedCache,this.defaultOptions={authorizationParams:{scope:"openid profile email"},useRefreshTokensFallback:!1,useFormData:!0},this._releaseLockOnPageHide=async()=>{await pt.releaseLock("auth0.lock.getTokenSilently"),window.removeEventListener("pagehide",this._releaseLockOnPageHide)},this.options=Object.assign(Object.assign(Object.assign({},this.defaultOptions),e),{authorizationParams:Object.assign(Object.assign({},this.defaultOptions.authorizationParams),e.authorizationParams)}),typeof window<"u"&&(()=>{if(!Qe())throw new Error("For security reasons, `window.crypto` is required to run `auth0-spa-js`.");if(Qe().subtle===void 0)throw new Error(`
3
3
  auth0-spa-js must run on a secure origin. See https://github.com/auth0/auth0-spa-js/blob/main/FAQ.md#why-do-i-get-auth0-spa-js-must-run-on-a-secure-origin for more information.
4
- `)})(),e.cache&&e.cacheLocation&&console.warn("Both `cache` and `cacheLocation` options have been specified in the Auth0Client configuration; ignoring `cacheLocation` and using `cache`."),e.cache)r=e.cache;else{if(n=e.cacheLocation||"memory",!qt(n))throw new Error(`Invalid cache location "${n}"`);r=qt(n)()}this.httpTimeoutMs=e.httpTimeoutInSeconds?1e3*e.httpTimeoutInSeconds:1e4,this.cookieStorage=e.legacySameSiteCookie===!1?Ie:ti,this.orgHintCookieName=`auth0.${this.options.clientId}.organization_hint`,this.isAuthenticatedCookieName=(a=>`auth0.${a}.is.authenticated`)(this.options.clientId),this.sessionCheckExpiryDays=e.sessionCheckExpiryDays||1;const i=e.useCookiesForTransactions?this.cookieStorage:ni;var o;this.scope=Fe("openid",this.options.authorizationParams.scope,this.options.useRefreshTokens?"offline_access":""),this.transactionManager=new Br(i,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||Zn,this.cacheManager=new Gr(r,r.allKeys?void 0:new oi(r,this.options.clientId),this.nowProvider),this.domainUrl=(o=this.options.domain,/^https?:\/\//.test(o)?o:`https://${o}`),this.tokenIssuer=((a,s)=>a?a.startsWith("https://")?a:`https://${a}/`:`${s}/`)(this.options.issuer,this.domainUrl),typeof window<"u"&&window.Worker&&this.options.useRefreshTokens&&n==="memory"&&(this.options.workerUrl?this.worker=new Worker(this.options.workerUrl):this.worker=new ii)}_url(e){const n=encodeURIComponent(btoa(JSON.stringify(this.options.auth0Client||Mn)));return`${this.domainUrl}${e}&auth0Client=${n}`}_authorizeUrl(e){return this._url(`/authorize?${St(e)}`)}async _verifyIdToken(e,n,r){const i=await this.nowProvider();return Qr({iss:this.tokenIssuer,aud:this.options.clientId,id_token:e,nonce:n,organization:r,leeway:this.options.leeway,max_age:(o=this.options.authorizationParams.max_age,typeof o!="string"?o:parseInt(o,10)||void 0),now:i});var o}_processOrgHint(e){e?this.cookieStorage.save(this.orgHintCookieName,e,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}):this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain})}async _prepareAuthorizeUrl(e,n,r){const i=Xt(dt()),o=Xt(dt()),a=dt(),s=(u=>{const c=new Uint8Array(u);return(m=>{const d={"+":"-","/":"_","=":""};return m.replace(/[+/=]/g,w=>d[w])})(window.btoa(String.fromCharCode(...Array.from(c))))})(await(async u=>await Qe().subtle.digest({name:"SHA-256"},new TextEncoder().encode(u)))(a)),f=((u,c,m,d,w,k,v,_)=>Object.assign(Object.assign(Object.assign({client_id:u.clientId},u.authorizationParams),m),{scope:Fe(c,m.scope),response_type:"code",response_mode:_||"query",state:d,nonce:w,redirect_uri:v||u.authorizationParams.redirect_uri,code_challenge:k,code_challenge_method:"S256"}))(this.options,this.scope,e,i,o,s,e.redirect_uri||this.options.authorizationParams.redirect_uri||r,n==null?void 0:n.response_mode),p=this._authorizeUrl(f);return{nonce:o,code_verifier:a,scope:f.scope,audience:f.audience||"default",redirect_uri:f.redirect_uri,state:i,url:p}}async loginWithPopup(e,n){var r;if(e=e||{},!(n=n||{}).popup&&(n.popup=(s=>{const f=window.screenX+(window.innerWidth-400)/2,p=window.screenY+(window.innerHeight-600)/2;return window.open(s,"auth0:authorize:popup",`left=${f},top=${p},width=400,height=600,resizable,scrollbars=yes,status=1`)})(""),!n.popup))throw new Error("Unable to open a popup for loginWithPopup - window.open returned `null`");const i=await this._prepareAuthorizeUrl(e.authorizationParams||{},{response_mode:"web_message"},window.location.origin);n.popup.location.href=i.url;const o=await(s=>new Promise((f,p)=>{let u;const c=setInterval(()=>{s.popup&&s.popup.closed&&(clearInterval(c),clearTimeout(m),window.removeEventListener("message",u,!1),p(new Kr(s.popup)))},1e3),m=setTimeout(()=>{clearInterval(c),p(new Zr(s.popup)),window.removeEventListener("message",u,!1)},1e3*(s.timeoutInSeconds||60));u=function(d){if(d.data&&d.data.type==="authorization_response"){if(clearTimeout(m),clearInterval(c),window.removeEventListener("message",u,!1),s.popup.close(),d.data.response.error)return p(G.fromPayload(d.data.response));f(d.data.response)}},window.addEventListener("message",u)}))(Object.assign(Object.assign({},n),{timeoutInSeconds:n.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}));if(i.state!==o.state)throw new G("state_mismatch","Invalid state");const a=((r=e.authorizationParams)===null||r===void 0?void 0:r.organization)||this.options.authorizationParams.organization;await this._requestToken({audience:i.audience,scope:i.scope,code_verifier:i.code_verifier,grant_type:"authorization_code",code:o.code,redirect_uri:i.redirect_uri},{nonceIn:i.nonce,organization:a})}async getUser(){var e;const n=await this._getIdTokenFromCache();return(e=n==null?void 0:n.decodedToken)===null||e===void 0?void 0:e.user}async getIdTokenClaims(){var e;const n=await this._getIdTokenFromCache();return(e=n==null?void 0:n.decodedToken)===null||e===void 0?void 0:e.claims}async loginWithRedirect(e={}){var n;const r=Qt(e),{openUrl:i,fragment:o,appState:a}=r,s=ne(r,["openUrl","fragment","appState"]),f=((n=s.authorizationParams)===null||n===void 0?void 0:n.organization)||this.options.authorizationParams.organization,p=await this._prepareAuthorizeUrl(s.authorizationParams||{}),{url:u}=p,c=ne(p,["url"]);this.transactionManager.create(Object.assign(Object.assign(Object.assign({},c),{appState:a}),f&&{organization:f}));const m=o?`${u}#${o}`:u;i?await i(m):window.location.assign(m)}async handleRedirectCallback(e=window.location.href){const n=e.split("?").slice(1);if(n.length===0)throw new Error("There are no query params available for parsing.");const{state:r,code:i,error:o,error_description:a}=(c=>{c.indexOf("#")>-1&&(c=c.substring(0,c.indexOf("#")));const m=new URLSearchParams(c);return{state:m.get("state"),code:m.get("code")||void 0,error:m.get("error")||void 0,error_description:m.get("error_description")||void 0}})(n.join("")),s=this.transactionManager.get();if(!s)throw new G("missing_transaction","Invalid state");if(this.transactionManager.remove(),o)throw new Mr(o,a||o,r,s.appState);if(!s.code_verifier||s.state&&s.state!==r)throw new G("state_mismatch","Invalid state");const f=s.organization,p=s.nonce,u=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:i},u?{redirect_uri:u}:{}),{nonceIn:p,organization:f}),{appState:s.appState}}async checkSession(e){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(e)}catch{}}async getTokenSilently(e={}){var n;const r=Object.assign(Object.assign({cacheMode:"on"},e),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),e.authorizationParams),{scope:Fe(this.scope,(n=e.authorizationParams)===null||n===void 0?void 0:n.scope)})}),i=await((o,a)=>{let s=ft[a];return s||(s=o().finally(()=>{delete ft[a],s=null}),ft[a]=s),s})(()=>this._getTokenSilently(r),`${this.options.clientId}::${r.authorizationParams.audience}::${r.authorizationParams.scope}`);return e.detailedResponse?i:i==null?void 0:i.access_token}async _getTokenSilently(e){const{cacheMode:n}=e,r=ne(e,["cacheMode"]);if(n!=="off"){const i=await this._getEntryFromCache({scope:r.authorizationParams.scope,audience:r.authorizationParams.audience||"default",clientId:this.options.clientId});if(i)return i}if(n!=="cache-only"){if(!await(async(i,o=3)=>{for(let a=0;a<o;a++)if(await i())return!0;return!1})(()=>pt.acquireLock("auth0.lock.getTokenSilently",5e3),10))throw new It;try{if(window.addEventListener("pagehide",this._releaseLockOnPageHide),n!=="off"){const p=await this._getEntryFromCache({scope:r.authorizationParams.scope,audience:r.authorizationParams.audience||"default",clientId:this.options.clientId});if(p)return p}const i=this.options.useRefreshTokens?await this._getTokenUsingRefreshToken(r):await this._getTokenFromIFrame(r),{id_token:o,access_token:a,oauthTokenScope:s,expires_in:f}=i;return Object.assign(Object.assign({id_token:o,access_token:a},s?{scope:s}:null),{expires_in:f})}finally{await pt.releaseLock("auth0.lock.getTokenSilently"),window.removeEventListener("pagehide",this._releaseLockOnPageHide)}}}async getTokenWithPopup(e={},n={}){var r;const i=Object.assign(Object.assign({},e),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),e.authorizationParams),{scope:Fe(this.scope,(r=e.authorizationParams)===null||r===void 0?void 0:r.scope)})});return n=Object.assign(Object.assign({},Lr),n),await this.loginWithPopup(i,n),(await this.cacheManager.get(new pe({scope:i.authorizationParams.scope,audience:i.authorizationParams.audience||"default",clientId:this.options.clientId}))).access_token}async isAuthenticated(){return!!await this.getUser()}_buildLogoutUrl(e){e.clientId!==null?e.clientId=e.clientId||this.options.clientId:delete e.clientId;const n=e.logoutParams||{},{federated:r}=n,i=ne(n,["federated"]),o=r?"&federated":"";return this._url(`/v2/logout?${St(Object.assign({clientId:e.clientId},i))}`)+o}async logout(e={}){const n=Qt(e),{openUrl:r}=n,i=ne(n,["openUrl"]);e.clientId===null?await this.cacheManager.clear():await this.cacheManager.clear(e.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 o=this._buildLogoutUrl(i);r?await r(o):r!==!1&&window.location.assign(o)}async _getTokenFromIFrame(e){const n=Object.assign(Object.assign({},e.authorizationParams),{prompt:"none"}),r=this.cookieStorage.get(this.orgHintCookieName);r&&!n.organization&&(n.organization=r);const{url:i,state:o,nonce:a,code_verifier:s,redirect_uri:f,scope:p,audience:u}=await this._prepareAuthorizeUrl(n,{response_mode:"web_message"},window.location.origin);try{if(window.crossOriginIsolated)throw new G("login_required","The application is running in a Cross-Origin Isolated context, silently retrieving a token without refresh token is not possible.");const c=e.timeoutInSeconds||this.options.authorizeTimeoutInSeconds,m=await((w,k,v=60)=>new Promise((_,S)=>{const y=window.document.createElement("iframe");y.setAttribute("width","0"),y.setAttribute("height","0"),y.style.display="none";const l=()=>{window.document.body.contains(y)&&(window.document.body.removeChild(y),window.removeEventListener("message",b,!1))};let b;const T=setTimeout(()=>{S(new It),l()},1e3*v);b=function(O){if(O.origin!=k||!O.data||O.data.type!=="authorization_response")return;const C=O.source;C&&C.close(),O.data.response.error?S(G.fromPayload(O.data.response)):_(O.data.response),clearTimeout(T),window.removeEventListener("message",b,!1),setTimeout(l,2e3)},window.addEventListener("message",b,!1),window.document.body.appendChild(y),y.setAttribute("src",w)}))(i,this.domainUrl,c);if(o!==m.state)throw new G("state_mismatch","Invalid state");const d=await this._requestToken(Object.assign(Object.assign({},e.authorizationParams),{code_verifier:s,code:m.code,grant_type:"authorization_code",redirect_uri:f,timeout:e.authorizationParams.timeout||this.httpTimeoutMs}),{nonceIn:a,organization:n.organization});return Object.assign(Object.assign({},d),{scope:p,oauthTokenScope:d.scope,audience:u})}catch(c){throw c.error==="login_required"&&this.logout({openUrl:!1}),c}}async _getTokenUsingRefreshToken(e){const n=await this.cacheManager.get(new pe({scope:e.authorizationParams.scope,audience:e.authorizationParams.audience||"default",clientId:this.options.clientId}));if(!(n&&n.refresh_token||this.worker)){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw new Xn(e.authorizationParams.audience||"default",e.authorizationParams.scope)}const r=e.authorizationParams.redirect_uri||this.options.authorizationParams.redirect_uri||window.location.origin,i=typeof e.timeoutInSeconds=="number"?1e3*e.timeoutInSeconds:null;try{const o=await this._requestToken(Object.assign(Object.assign(Object.assign({},e.authorizationParams),{grant_type:"refresh_token",refresh_token:n&&n.refresh_token,redirect_uri:r}),i&&{timeout:i}));return Object.assign(Object.assign({},o),{scope:e.authorizationParams.scope,oauthTokenScope:o.scope,audience:e.authorizationParams.audience||"default"})}catch(o){if((o.message.indexOf("Missing Refresh Token")>-1||o.message&&o.message.indexOf("invalid refresh token")>-1)&&this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw o}}async _saveEntryInCache(e){const{id_token:n,decodedToken:r}=e,i=ne(e,["id_token","decodedToken"]);this.userCache.set("@@user@@",{id_token:n,decodedToken:r}),await this.cacheManager.setIdToken(this.options.clientId,e.id_token,e.decodedToken),await this.cacheManager.set(i)}async _getIdTokenFromCache(){const e=this.options.authorizationParams.audience||"default",n=await this.cacheManager.getIdToken(new pe({clientId:this.options.clientId,audience:e,scope:this.scope})),r=this.userCache.get("@@user@@");return n&&n.id_token===(r==null?void 0:r.id_token)?r:(this.userCache.set("@@user@@",n),n)}async _getEntryFromCache({scope:e,audience:n,clientId:r}){const i=await this.cacheManager.get(new pe({scope:e,audience:n,clientId:r}),60);if(i&&i.access_token){const{access_token:o,oauthTokenScope:a,expires_in:s}=i,f=await this._getIdTokenFromCache();return f&&Object.assign(Object.assign({id_token:f.id_token,access_token:o},a?{scope:a}:null),{expires_in:s})}}async _requestToken(e,n){const{nonceIn:r,organization:i}=n||{},o=await Vr(Object.assign({baseUrl:this.domainUrl,client_id:this.options.clientId,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,timeout:this.httpTimeoutMs},e),this.worker),a=await this._verifyIdToken(o.id_token,r,i);return await this._saveEntryInCache(Object.assign(Object.assign(Object.assign(Object.assign({},o),{decodedToken:a,scope:e.scope,audience:e.audience||"default"}),o.scope?{oauthTokenScope:o.scope}:null),{client_id:this.options.clientId})),this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this._processOrgHint(i||a.claims.org_id),Object.assign(Object.assign({},o),{decodedToken:a})}};async function ci(t){const e=new si(t);return await e.checkSession(),e}const Et="sesamy.com",ui="https://logs.sesamy.com/events",Pt="sesamyCacheTimestamp";var Q=(t=>(t.READY="sesamyJsReady",t.AUTHENTICATED="sesamyJsAuthenticated",t.LOGOUT="sesamyJsLogout",t.CLEAR_CACHE="sesamyJsClearCache",t.USER_ATTRIBUTE_CHANGED="sesamyUserAttributeChanged",t.PURCHASE="sesamyJsPurchase",t))(Q||{});let B;const Nt="sesamyAccessToken",Ut="sesamyExpires";function zt(){const t=localStorage.getItem(Ut);if(!(t&&parseInt(t,10)<new Date().getTime()))return localStorage.getItem(Nt)}async function li(t){if(t.enabled!==!1&&(B=await ci({domain:t.endpoint||`token.${Et}`,clientId:t.clientId}),window.location.search.includes("code=")))try{await B.handleRedirectCallback();const e=await B.getUser();ue(Q.AUTHENTICATED,e);const n=new URL(location.href),r=n.searchParams;r.delete("code"),r.delete("state"),n.search=r.toString(),window.history.replaceState({},document.title,n.toString())}catch{}}async function qn(){if(zt())return!0;if(!B)throw new Error("Auth0 client not initialized");return B.isAuthenticated()}async function di(){if(zt())return{sub:"local",name:"Local User"};if(!B)throw new Error("Auth0 client not initialized");return B.getUser()}function Qn(){if(!B)throw new Error("Auth0 client not initialized");return B.loginWithRedirect({authorizationParams:{redirect_uri:window.location.href}})}async function en(t=!0){const e=zt();if(e)return e;try{if(!B)throw new Error("Auth0 client not initialized");return await B.getTokenSilently()}catch(n){if(t)throw n;return null}}async function hi(){if(localStorage.removeItem(Nt),localStorage.removeItem(Ut),!B)throw new Error("Auth0 client not initialized");return ue(Q.LOGOUT,{}),B.logout({logoutParams:{returnTo:window.location.href}})}function fi(t){const e=t.split(".");if(e.length!==3)throw new Error("Invalid JWT token format.");const r=e[1].replace(/-/g,"+").replace(/_/g,"/"),i=decodeURIComponent(atob(r).split("").map(function(o){return"%"+("00"+o.charCodeAt(0).toString(16)).slice(-2)}).join(""));return JSON.parse(i)}async function er(t,e){localStorage.setItem(Nt,t),e&&localStorage.setItem(Ut,JSON.stringify(e*1e3+new Date().getTime()));const n=fi(t);ue(Q.AUTHENTICATED,n)}const pi=(t,e)=>e.skipDedupe||e.method!=="GET",mi=(t,e)=>e.method+"@"+t,gi=t=>t.clone(),tn=({skip:t=pi,key:e=mi,resolver:n=gi}={})=>{const r=new Map;return i=>(o,a)=>{if(t(o,a))return i(o,a);const s=e(o,a);if(!r.has(s))r.set(s,[]);else return new Promise((f,p)=>{r.get(s).push([f,p])});try{return i(o,a).then(f=>(r.get(s).forEach(([p])=>p(n(f))),r.delete(s),f)).catch(f=>{throw r.get(s).forEach(([p,u])=>u(f)),r.delete(s),f})}catch(f){return r.delete(s),Promise.reject(f)}}},yi=(t,e)=>t*e,vi=t=>t&&t.ok,nn=({delayTimer:t=500,delayRamp:e=yi,maxAttempts:n=10,until:r=vi,onRetry:i=null,retryOnNetworkError:o=!1,resolveWithLatestResponse:a=!1,skip:s}={})=>f=>(p,u)=>{let c=0;if(s&&s(p,u))return f(p,u);const m=(d,w)=>Promise.resolve(r(d,w)).then(k=>k?d&&a?d:w?Promise.reject(w):d:(c++,!n||c<=n?new Promise(v=>{const _=e(t,c);setTimeout(()=>{typeof i=="function"?Promise.resolve(i({response:d,error:w,url:p,options:u})).then((S={})=>{var y,l;v(f((y=S&&S.url)!==null&&y!==void 0?y:p,(l=S&&S.options)!==null&&l!==void 0?l:u))}):v(f(p,u))},_)}).then(m).catch(v=>{if(!o)throw v;return m(null,v)}):d&&a?d:Promise.reject(w||new Error("Number of attempts exceeded."))));return f(p,u).then(m).catch(d=>{if(!o)throw d;return m(null,d)})},wi="application/json",tr="Content-Type",ke=Symbol(),nr=Symbol();function rn(t={}){var e;return(e=Object.entries(t).find(([n])=>n.toLowerCase()===tr.toLowerCase()))===null||e===void 0?void 0:e[1]}function on(t){return/^application\/.*json.*/.test(t)}const ge=function(t,e,n=!1){return Object.entries(e).reduce((r,[i,o])=>{const a=t[i];return Array.isArray(a)&&Array.isArray(o)?r[i]=n?[...a,...o]:o:typeof a=="object"&&typeof o=="object"?r[i]=ge(a,o,n):r[i]=o,r},{...t})},Oe={options:{},errorType:"text",polyfills:{},polyfill(t,e=!0,n=!1,...r){const i=this.polyfills[t]||(typeof self<"u"?self[t]:null)||(typeof global<"u"?global[t]:null);if(e&&!i)throw new Error(t+" is not defined");return n&&i?new i(...r):i}};function bi(t,e=!1){Oe.options=e?t:ge(Oe.options,t)}function ki(t,e=!1){Oe.polyfills=e?t:ge(Oe.polyfills,t)}function Ii(t){Oe.errorType=t}const Si=t=>e=>t.reduceRight((n,r)=>r(n),e)||e;class rr extends Error{}const _i=t=>{const e=Object.create(null);t=t._addons.reduce((y,l)=>l.beforeRequest&&l.beforeRequest(y,t._options,e)||y,t);const{_url:n,_options:r,_config:i,_catchers:o,_resolvers:a,_middlewares:s,_addons:f}=t,p=new Map(o),u=ge(i.options,r);let c=n;const m=Si(s)((y,l)=>(c=y,i.polyfill("fetch")(y,l)))(n,u),d=new Error,w=m.catch(y=>{throw{[ke]:y}}).then(y=>{if(!y.ok){const l=new rr;if(l.cause=d,l.stack=l.stack+`
5
- CAUSE: `+d.stack,l.response=y,l.url=c,y.type==="opaque")throw l;return y.text().then(b=>{var T;if(l.message=b,i.errorType==="json"||((T=y.headers.get("Content-Type"))===null||T===void 0?void 0:T.split(";")[0])==="application/json")try{l.json=JSON.parse(b)}catch{}throw l.text=b,l.status=y.status,l})}return y}),k=y=>y.catch(l=>{const b=l.hasOwnProperty(ke),T=b?l[ke]:l,O=(T==null?void 0:T.status)&&p.get(T.status)||p.get(T==null?void 0:T.name)||b&&p.has(ke)&&p.get(ke);if(O)return O(T,t);const C=p.get(nr);if(C)return C(T,t);throw T}),v=y=>l=>k(y?w.then(b=>b&&b[y]()).then(b=>l?l(b):b):w.then(b=>l?l(b):b)),_={_wretchReq:t,_fetchReq:m,_sharedState:e,res:v(null),json:v("json"),blob:v("blob"),formData:v("formData"),arrayBuffer:v("arrayBuffer"),text:v("text"),error(y,l){return p.set(y,l),this},badRequest(y){return this.error(400,y)},unauthorized(y){return this.error(401,y)},forbidden(y){return this.error(403,y)},notFound(y){return this.error(404,y)},timeout(y){return this.error(408,y)},internalError(y){return this.error(500,y)},fetchError(y){return this.error(ke,y)}},S=f.reduce((y,l)=>({...y,...typeof l.resolver=="function"?l.resolver(y):l.resolver}),_);return a.reduce((y,l)=>l(y,t),S)},Ei={_url:"",_options:{},_config:Oe,_catchers:new Map,_resolvers:[],_deferred:[],_middlewares:[],_addons:[],addon(t){return{...this,_addons:[...this._addons,t],...t.wretch}},errorType(t){return{...this,_config:{...this._config,errorType:t}}},polyfills(t,e=!1){return{...this,_config:{...this._config,polyfills:e?t:ge(this._config.polyfills,t)}}},url(t,e=!1){if(e)return{...this,_url:t};const n=this._url.split("?");return{...this,_url:n.length>1?n[0]+t+"?"+n[1]:this._url+t}},options(t,e=!1){return{...this,_options:e?t:ge(this._options,t)}},headers(t){const e=t?Array.isArray(t)?Object.fromEntries(t):"entries"in t?Object.fromEntries(t.entries()):t:{};return{...this,_options:ge(this._options,{headers:e})}},accept(t){return this.headers({Accept:t})},content(t){return this.headers({[tr]:t})},auth(t){return this.headers({Authorization:t})},catcher(t,e){const n=new Map(this._catchers);return n.set(t,e),{...this,_catchers:n}},catcherFallback(t){return this.catcher(nr,t)},resolve(t,e=!1){return{...this,_resolvers:e?[t]:[...this._resolvers,t]}},defer(t,e=!1){return{...this,_deferred:e?[t]:[...this._deferred,t]}},middlewares(t,e=!1){return{...this,_middlewares:e?t:[...this._middlewares,...t]}},fetch(t=this._options.method,e="",n=null){let r=this.url(e).options({method:t});const i=rn(r._options.headers),o=typeof n=="object"&&(!r._options.headers||!i||on(i));return r=n?o?r.json(n,i):r.body(n):r,_i(r._deferred.reduce((a,s)=>s(a,a._url,a._options),r))},get(t=""){return this.fetch("GET",t)},delete(t=""){return this.fetch("DELETE",t)},put(t,e=""){return this.fetch("PUT",e,t)},post(t,e=""){return this.fetch("POST",e,t)},patch(t,e=""){return this.fetch("PATCH",e,t)},head(t=""){return this.fetch("HEAD",t)},opts(t=""){return this.fetch("OPTIONS",t)},body(t){return{...this,_options:{...this._options,body:t}}},json(t,e){const n=rn(this._options.headers);return this.content(e||on(n)&&n||wi).body(JSON.stringify(t))}};function le(t="",e={}){return{...Ei,_url:t,_options:e}}le.default=le;le.options=bi;le.errorType=Ii;le.polyfills=ki;le.WretchError=rr;function te(){sessionStorage.removeItem(Pt),ue(Q.CLEAR_CACHE,{})}function Pi(t){const e=t.endpoint||`https://api2.${Et}`,n=I=>async(E,W)=>{let h=sessionStorage.getItem(Pt);h||(h=Date.now().toString(),sessionStorage.setItem(Pt,h));const g={...W,headers:{...W.headers,"Cache-Timestamp":h}};return I(E,g)},r=(I=!0)=>E=>async(W,h)=>{let g=null;if(g=await en(I),!g){if(I)throw new Error("No access token available");return E(W,h)}const P={...h,headers:{...h.headers,...g?{Authorization:`Bearer ${g}`}:{}}};return E(W,P)},i=I=>(E,W)=>{if(W.headers.Authorization)return I(E,W);const h=localStorage.getItem("__anon_id"),g=btoa(`${h}:`),P={...W,headers:{...W.headers,Authorization:`Basic ${g}`}};return I(E,P)},o=le(e).headers({"Content-Type":"application/json"}).middlewares([n,r(),tn(),nn({delayTimer:1e3,delayRamp:(I,E)=>I*E,maxAttempts:3,until:I=>!!(I&&(I.ok||I.status>=400&&I.status<500)),retryOnNetworkError:!1})]),a=le(e).headers({"Content-Type":"application/json"}).middlewares([n,r(!1),i,tn(),nn({delayTimer:1e3,delayRamp:(I,E)=>I*E,maxAttempts:3,until:I=>!!(I&&(I.ok||I.status>=400&&I.status<500)),retryOnNetworkError:!1})]);async function s(){return o.get("/entitlements").json()}async function f(I){const E=await o.get("/entitlements").json();return E==null?void 0:E.find(W=>W.id===I)}async function p(I){return o.get(`/entitlements/${I}/access`).json()}async function u(){return o.get("/contracts").json()}async function c(I){const E=await o.get("/contracts").json();return E==null?void 0:E.find(W=>W.id===I)}async function m(){return o.get("/subscriptions").json()}async function d(){return o.get("/bills").json()}async function w(I){const E=await o.get("/bills").json();return E==null?void 0:E.find(W=>W.id===I)}async function k(I,E){const W=await o.url(`/user-metadata/${I}`).put(E).json();return ue(Q.USER_ATTRIBUTE_CHANGED,{}),te(),W}async function v(I){const E=await o.url(`/user-metadata/${I}`).delete().res();return te(),E.ok}async function _(I){return(await o.url(`/user-metadata/${I}`).get().json())[I]}async function S(){return await o.url("/user-metadata").get().json()}async function y(){return await o.url("/tags").get().json()}async function l(I){const E=await o.url(`/tags/${I}`).delete().res();return te(),E.ok}async function b(I){const E=await o.url("/tags").post(I).res();return ue(Q.USER_ATTRIBUTE_CHANGED,{}),te(),E.ok}async function T(I){return(await a.url("/tallies").get().json())[I]}async function O(){return await a.url("/tallies").get().json()}async function C(I){const E=await a.url(`/tallies/${I}`).delete().res();return te(),E.ok}async function D(I,E){return await a.url(`/tallies/${I}/push`).post(E).json()}async function z(I){return await o.url(`/products/${I}`).get().json()}async function F(){return await qn()?await o.url("/profile").get().json():null}async function $(I){const E=await o.url("/profile").patch(I).res();return te(),E.ok}async function R(){return await o.url("/payment-issues").get().json()}async function K(I){const E=await o.url(`/products/${I}/auto-onboard`).post().json();return E.length&&te(),E}async function j(){const I=await en(!1),E=new URL(`https://account.${Et}/subscriptions/${t.clientId}`);I&&(E.hash=`#access_token=${I}`),window.location.href=E.toString()}return{getEntitlements:s,getEntitlement:f,getEntitlementAccess:p,getContracts:u,getContract:c,getProfile:F,updateProfile:$,getSubscriptions:m,getBills:d,getBill:w,setUserMetadata:k,deleteUserMetadata:v,getUserMetadata:_,listUserMetadata:S,getTags:y,deleteTag:l,setTag:b,getTally:T,getTallies:O,deleteTally:C,pushTally:D,getProduct:z,getPaymentIssues:R,autoOnboardProduct:K,openHostedAccountPage:j}}const ir="@sesamy/sesamy-js",Rt="1.3.2";function an(t,e,n,r,i){for(e=e.split?e.split("."):e,r=0;r<e.length;r++)t=t?t[e[r]]:i;return t===i?n:t}var Je="undefined",sn="object",Tt=function(){},or="any",ar="*",ve="__",tt=typeof process<"u"?process:{};tt.env&&tt.env.NODE_ENV;var X=typeof document<"u";tt.versions!=null&&tt.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 sr(t,e){return e.charAt(0)[t]()+e.slice(1)}var Ti=sr.bind(null,"toUpperCase"),Oi=sr.bind(null,"toLowerCase");function ji(t){return cr(t)?Ti("null"):typeof t=="object"?$i(t):Object.prototype.toString.call(t).slice(8,-1)}function nt(t,e){e===void 0&&(e=!0);var n=ji(t);return e?Oi(n):n}function We(t,e){return typeof e===t}var Y=We.bind(null,"function"),se=We.bind(null,"string"),Se=We.bind(null,"undefined"),Ci=We.bind(null,"boolean");We.bind(null,"symbol");function cr(t){return t===null}function xi(t){return nt(t)==="number"&&!isNaN(t)}function ur(t){return nt(t)==="array"}function V(t){if(!Ai(t))return!1;for(var e=t;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}function Ai(t){return t&&(typeof t=="object"||t!==null)}function $i(t){return Y(t.constructor)?t.constructor.name:null}function Ni(t){return t instanceof Error||se(t.message)&&t.constructor&&xi(t.constructor.stackTraceLimit)}function lr(t,e){if(typeof e!="object"||cr(e))return!1;if(e instanceof t)return!0;var n=nt(new t(""));if(Ni(e))for(;e;){if(nt(e)===n)return!0;e=Object.getPrototypeOf(e)}return!1}lr.bind(null,TypeError);lr.bind(null,SyntaxError);function ot(t,e){var n=t instanceof Element||t instanceof HTMLDocument;return n&&e?Ui(t,e):n}function Ui(t,e){return e===void 0&&(e=""),t&&t.nodeName===e.toUpperCase()}function at(t){var e=[].slice.call(arguments,1);return function(){return t.apply(void 0,[].slice.call(arguments).concat(e))}}at(ot,"form");at(ot,"button");at(ot,"input");at(ot,"select");function zi(t){return t?ur(t)?t:[t]:[]}function cn(t){try{return decodeURIComponent(t.replace(/\+/g," "))}catch{return null}}function Ri(){if(X){var t=navigator,e=t.languages;return t.userLanguage||(e&&e.length?e[0]:t.language)}}function Di(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function Li(t){return function(e){for(var n,r=Object.create(null),i=/([^&=]+)=?([^&]*)/g;n=i.exec(e);){var o=cn(n[1]),a=cn(n[2]);o.substring(o.length-2)==="[]"?(r[o=o.substring(0,o.length-2)]||(r[o]=[])).push(a):r[o]=a===""||a}for(var s in r){var f=s.split("[");f.length>1&&(Mi(r,f.map(function(p){return p.replace(/[?[\]\\ ]/g,"")}),r[s]),delete r[s])}return r}(function(e){if(e){var n=e.match(/\?(.*)/);return n&&n[1]?n[1].split("#")[0]:""}return X&&window.location.search.substring(1)}(t))}function Mi(t,e,n){for(var r=e.length-1,i=0;i<r;++i){var o=e[i];if(o==="__proto__"||o==="constructor")break;o in t||(t[o]={}),t=t[o]}t[e[r]]=n}function st(){for(var t="",e=0,n=4294967295*Math.random()|0;e++<36;){var r="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[e-1],i=15&n;t+=r=="-"||r=="4"?r:(r=="x"?i:3&i|8).toString(16),n=e%8==0?4294967295*Math.random()|0:n>>4}return t}function Zi(t,e){var n,r,i,o=null,a=0,s=function(){a=new Date,o=null,i=t.apply(n,r)};return function(){var f=new Date;a||(a=f);var p=e-(f-a);return n=this,r=arguments,p<=0?(clearTimeout(o),o=null,a=f,i=t.apply(n,r)):o||(o=setTimeout(s,p)),i}}var De="global",je=ve+"global"+ve,Ce=typeof self===sn&&self.self===self&&self||typeof global===sn&&global.global===global&&global||void 0;function we(t){return Ce[je][t]}function be(t,e){return Ce[je][t]=e}function Ae(t){delete Ce[je][t]}function $e(t,e,n){var r;try{if(Dt(t)){var i=window[t];r=i[e].bind(i)}}catch{}return r||n}Ce[je]||(Ce[je]={});var Xe={};function Dt(t){if(typeof Xe[t]!==Je)return Xe[t];try{var e=window[t];e.setItem(Je,Je),e.removeItem(Je)}catch{return Xe[t]=!1}return Xe[t]=!0}function A(){return A=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},A.apply(this,arguments)}var ae="function",ie="undefined",Ki="@@redux/"+Math.random().toString(36),un=function(){return typeof Symbol===ae&&Symbol.observable||"@@observable"}(),Ve=" != "+ae;function dr(t,e,n){var r;if(typeof e===ae&&typeof n===ie&&(n=e,e=void 0),typeof n!==ie){if(typeof n!==ae)throw new Error("enhancer"+Ve);return n(dr)(t,e)}if(typeof t!==ae)throw new Error("reducer"+Ve);var i=t,o=e,a=[],s=a,f=!1;function p(){s===a&&(s=a.slice())}function u(){return o}function c(d){if(typeof d!==ae)throw new Error("Listener"+Ve);var w=!0;return p(),s.push(d),function(){if(w){w=!1,p();var k=s.indexOf(d);s.splice(k,1)}}}function m(d){if(!V(d))throw new Error("Act != obj");if(typeof d.type===ie)throw new Error("ActType "+ie);if(f)throw new Error("Dispatch in reducer");try{f=!0,o=i(o,d)}finally{f=!1}for(var w=a=s,k=0;k<w.length;k++)(0,w[k])();return d}return m({type:"@@redux/INIT"}),(r={dispatch:m,subscribe:c,getState:u,replaceReducer:function(d){if(typeof d!==ae)throw new Error("next reducer"+Ve);i=d,m({type:"@@redux/INIT"})}})[un]=function(){var d,w=c;return(d={subscribe:function(k){if(typeof k!="object")throw new TypeError("Observer != obj");function v(){k.next&&k.next(u())}return v(),{unsubscribe:w(v)}}})[un]=function(){return this},d},r}function Wi(t,e){var n=e&&e.type;return"action "+(n&&n.toString()||"?")+"reducer "+t+" returns "+ie}function xe(){var t=[].slice.call(arguments);return t.length===0?function(e){return e}:t.length===1?t[0]:t.reduce(function(e,n){return function(){return e(n.apply(void 0,[].slice.call(arguments)))}})}function Hi(){var t=arguments;return function(e){return function(n,r,i){var o,a=e(n,r,i),s=a.dispatch,f={getState:a.getState,dispatch:function(p){return s(p)}};return o=[].slice.call(t).map(function(p){return p(f)}),A({},a,{dispatch:s=xe.apply(void 0,o)(a.dispatch)})}}}var ce=ve+"anon_id",ye=ve+"user_id",Ee=ve+"user_traits",oe="userId",_e="anonymousId",et=["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"],Ot=["name","EVENTS","config","loaded"],x=et.reduce(function(t,e){return t[e]=e,t},{registerPluginType:function(t){return"registerPlugin:"+t},pluginReadyType:function(t){return"ready:"+t}}),ln=/^utm_/,dn=/^an_prop_/,hn=/^an_trait_/;function Fi(t){var e=t.storage.setItem;return function(n){return function(r){return function(i){if(i.type===x.bootstrap){var o=i.params,a=i.user,s=i.persistedUser,f=i.initialUser,p=s.userId===a.userId;s.anonymousId!==a.anonymousId&&e(ce,a.anonymousId),p||e(ye,a.userId),f.traits&&e(Ee,A({},p&&s.traits?s.traits:{},f.traits));var u=Object.keys(i.params);if(u.length){var c=o.an_uid,m=o.an_event,d=u.reduce(function(w,k){if(k.match(ln)||k.match(/^(d|g)clid/)){var v=k.replace(ln,"");w.campaign[v==="campaign"?"name":v]=o[k]}return k.match(dn)&&(w.props[k.replace(dn,"")]=o[k]),k.match(hn)&&(w.traits[k.replace(hn,"")]=o[k]),w},{campaign:{},props:{},traits:{}});n.dispatch(A({type:x.params,raw:o},d,c?{userId:c}:{})),c&&setTimeout(function(){return t.identify(c,d.traits)},0),m&&setTimeout(function(){return t.track(m,d.props)},0),Object.keys(d.campaign).length&&n.dispatch({type:x.campaign,campaign:d.campaign})}}return r(i)}}}}function Ji(t){return function(e,n){if(e===void 0&&(e={}),n===void 0&&(n={}),n.type===x.setItemEnd){if(n.key===ce)return A({},e,{anonymousId:n.value});if(n.key===ye)return A({},e,{userId:n.value})}switch(n.type){case x.identify:return Object.assign({},e,{userId:n.userId,traits:A({},e.traits,n.traits)});case x.reset:return[ye,ce,Ee].forEach(function(r){t.removeItem(r)}),Object.assign({},e,{userId:null,anonymousId:null,traits:{}});default:return e}}}function fn(t){return{userId:t.getItem(ye),anonymousId:t.getItem(ce),traits:t.getItem(Ee)}}var jt=function(t){return ve+"TEMP"+ve+t};function Xi(t){var e=t.storage,n=e.setItem,r=e.removeItem,i=e.getItem;return function(o){return function(a){return function(s){var f=s.userId,p=s.traits,u=s.options;if(s.type===x.reset&&([ye,Ee,ce].forEach(function(d){r(d)}),[oe,_e,"traits"].forEach(function(d){Ae(jt(d))})),s.type===x.identify){i(ce)||n(ce,st());var c=i(ye),m=i(Ee)||{};c&&c!==f&&o.dispatch({type:x.userIdChanged,old:{userId:c,traits:m},new:{userId:f,traits:p},options:u}),f&&n(ye,f),p&&n(Ee,A({},m,p))}return a(s)}}}}var Re={};function pn(t,e){Re[t]&&Y(Re[t])&&(Re[t](e),delete Re[t])}function hr(t,e,n){return new Promise(function(r,i){return e()?r(t):n<1?i(A({},t,{queue:!0})):new Promise(function(o){return setTimeout(o,10)}).then(function(o){return hr(t,e,n-10).then(r,i)})})}function Vi(t){return{abort:t}}function fr(t,e,n){var r={},i=e(),o=t.getState(),a=o.plugins,s=o.queue,f=o.user;if(!o.context.offline&&s&&s.actions&&s.actions.length){var p=s.actions.reduce(function(c,m,d){return a[m.plugin].loaded?(c.process.push(m),c.processIndex.push(d)):(c.requeue.push(m),c.requeueIndex.push(d)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(p.processIndex&&p.processIndex.length){p.processIndex.forEach(function(c){var m=s.actions[c],d=m.plugin,w=m.payload.type,k=i[d][w];if(k&&Y(k)){var v,_=function(l,b){return l===void 0&&(l={}),b===void 0&&(b={}),[oe,_e].reduce(function(T,O){return l.hasOwnProperty(O)&&b[O]&&b[O]!==l[O]&&(T[O]=b[O]),T},l)}(m.payload,f),S=r[_.meta.rid];if(!S&&(v=k({payload:_,config:a[d].config,instance:n,abort:Vi}))&&V(v)&&v.abort)return void(r[_.meta.rid]=!0);if(!S){var y=w+":"+d;t.dispatch(A({},_,{type:y,_:{called:y,from:"queueDrain"}}))}}});var u=s.actions.filter(function(c,m){return!~p.processIndex.indexOf(m)});s.actions=u}}}var mt=function(t){var e=t.data,n=t.action,r=t.instance,i=t.state,o=t.allPlugins,a=t.allMatches,s=t.store,f=t.EVENTS;try{var p=i.plugins,u=i.context,c=n.type,m=c.match(Pe),d=e.exact.map(function(v){return v.pluginName});m&&(d=a.during.map(function(v){return v.pluginName}));var w=function(v,_){return function(S,y,l){var b=y.config,T=y.name,O=T+"."+S.type;l&&(O=l.event);var C=S.type.match(Pe)?function(D,z,F,$,R){return function(K,j){var I=$?$.name:D,E=j&&Ke(j)?j:F;if($&&(!(E=j&&Ke(j)?j:[D]).includes(D)||E.length!==1))throw new Error("Method "+z+" can only abort "+D+" plugin. "+JSON.stringify(E)+" input valid");return A({},R,{abort:{reason:K,plugins:E,caller:z,_:I}})}}(T,O,_,l,S):function(D,z){return function(){throw new Error(D.type+" action not cancellable. Remove abort in "+z)}}(S,O);return{payload:Yi(S),instance:v,config:b||{},abort:C}}}(r,d),k=e.exact.reduce(function(v,_){var S=_.pluginName,y=_.methodName,l=!1;return y.match(/^initialize/)||y.match(/^reset/)||(l=!p[S].loaded),u.offline&&y.match(/^(page|track|identify)/)&&(l=!0),v[""+S]=l,v},{});return Promise.resolve(e.exact.reduce(function(v,_,S){try{var y=_.pluginName;return Promise.resolve(v).then(function(l){function b(){return Promise.resolve(l)}var T=function(){if(e.namespaced&&e.namespaced[y])return Promise.resolve(e.namespaced[y].reduce(function(O,C,D){try{return Promise.resolve(O).then(function(z){return C.method&&Y(C.method)?(function(K,j){var I=kn(K);if(I&&I.name===j){var E=kn(I.method);throw new Error([j+" plugin is calling method "+K,"Plugins cant call self","Use "+I.method+" "+(E?"or "+E.method:"")+" in "+j+" plugin insteadof "+K].join(`
6
- `))}}(C.methodName,C.pluginName),Promise.resolve(C.method({payload:z,instance:r,abort:(F=z,$=y,R=C.pluginName,function(K,j){return A({},F,{abort:{reason:K,plugins:j||[$],caller:c,from:R||$}})}),config:yn(C.pluginName,p,o),plugins:p})).then(function(K){var j=V(K)?K:{};return Promise.resolve(A({},z,j))})):z;var F,$,R})}catch(z){return Promise.reject(z)}},Promise.resolve(n))).then(function(O){l[y]=O});l[y]=n}();return T&&T.then?T.then(b):b()})}catch(l){return Promise.reject(l)}},Promise.resolve({}))).then(function(v){return Promise.resolve(e.exact.reduce(function(_,S,y){try{var l=e.exact.length===y+1,b=S.pluginName,T=o[b];return Promise.resolve(_).then(function(O){var C=v[b]?v[b]:{};if(m&&(C=O),yt(C,b))return gt({data:C,method:c,instance:r,pluginName:b,store:s}),Promise.resolve(O);if(yt(O,b))return l&&gt({data:O,method:c,instance:r,store:s}),Promise.resolve(O);if(k.hasOwnProperty(b)&&k[b]===!0)return s.dispatch({type:"queue",plugin:b,payload:C,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(O);var D=w(v[b],o[b]);return Promise.resolve(T[c]({abort:D.abort,payload:C,instance:r,config:yn(b,p,o),plugins:p})).then(function(z){var F=V(z)?z:{},$=A({},O,F),R=v[b];if(yt(R,b))gt({data:R,method:c,instance:r,pluginName:b,store:s});else{var K=c+":"+b;(K.match(/:/g)||[]).length<2&&!c.match(mn)&&!c.match(gn)&&r.dispatch(A({},m?$:C,{type:K,_:{called:K,from:"submethod"}}))}return Promise.resolve($)})})}catch(O){return Promise.reject(O)}},Promise.resolve(n))).then(function(_){if(!(c.match(Pe)||c.match(/^registerPlugin/)||c.match(gn)||c.match(mn)||c.match(/^params/)||c.match(/^userIdChanged/))){if(f.plugins.includes(c),_._&&_._.originalAction===c)return _;var S=A({},_,{_:{originalAction:_.type,called:_.type,from:"engineEnd"}});pr(_,e.exact.length)&&!c.match(/End$/)&&(S=A({},S,{type:_.type+"Aborted"})),s.dispatch(S)}return _})})}catch(v){return Promise.reject(v)}},Pe=/Start$/,mn=/^bootstrap/,gn=/^ready/;function gt(t){var e=t.pluginName,n=t.method+"Aborted"+(e?":"+e:"");t.store.dispatch(A({},t.data,{type:n,_:{called:n,from:"abort"}}))}function yn(t,e,n){var r=e[t]||n[t];return r&&r.config?r.config:{}}function vn(t,e){return e.reduce(function(n,r){return r[t]?n.concat({methodName:t,pluginName:r.name,method:r[t]}):n},[])}function wn(t,e){var n=t.replace(Pe,""),r=e?":"+e:"";return[""+t+r,""+n+r,n+"End"+r]}function yt(t,e){var n=t.abort;return!!n&&(n===!0||bn(n,e)||n&&bn(n.plugins,e))}function pr(t,e){var n=t.abort;if(!n)return!1;if(n===!0||se(n))return!0;var r=n.plugins;return Ke(n)&&n.length===e||Ke(r)&&r.length===e}function Ke(t){return Array.isArray(t)}function bn(t,e){return!(!t||!Ke(t))&&t.includes(e)}function kn(t){var e=t.match(/(.*):(.*)/);return!!e&&{method:e[1],name:e[2]}}function Yi(t){return Object.keys(t).reduce(function(e,n){return n==="type"||(e[n]=V(t[n])?Object.assign({},t[n]):t[n]),e},{})}function Gi(t,e,n){var r={};return function(i){return function(o){return function(a){try{var s,f=function(l){return s?l:o(c)},p=a.type,u=a.plugins,c=a;if(a.abort)return Promise.resolve(o(a));if(p===x.enablePlugin&&i.dispatch({type:x.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:a.meta}),p===x.disablePlugin&&setTimeout(function(){return pn(a.meta.rid,{payload:a})},0),p===x.initializeEnd){var m=e(),d=Object.keys(m),w=d.filter(function(l){return u.includes(l)}).map(function(l){return m[l]}),k=[],v=[],_=a.disabled,S=w.map(function(l){var b=l.loaded,T=l.name,O=l.config;return hr(l,function(){return b({config:O})},1e4).then(function(C){return r[T]||(i.dispatch({type:x.pluginReadyType(T),name:T,events:Object.keys(l).filter(function(D){return!Ot.includes(D)})}),r[T]=!0),k=k.concat(T),l}).catch(function(C){if(C instanceof Error)throw new Error(C);return v=v.concat(C.name),C})});Promise.all(S).then(function(l){var b={plugins:k,failed:v,disabled:_};setTimeout(function(){d.length===S.length+_.length&&i.dispatch(A({},{type:x.ready},b))},0)})}var y=function(){if(p!==x.bootstrap)return/^ready:([^:]*)$/.test(p)&&setTimeout(function(){return fr(i,e,t)},0),Promise.resolve(function(l,b,T,O,C){try{var D=Y(b)?b():b,z=l.type,F=z.replace(Pe,"");if(l._&&l._.called)return Promise.resolve(l);var $=T.getState(),R=(I=D,(E=$.plugins)===void 0&&(E={}),(W=l.options)===void 0&&(W={}),Object.keys(I).filter(function(h){var g=W.plugins||{};return Ci(g[h])?g[h]:g.all!==!1&&(!E[h]||E[h].enabled!==!1)}).map(function(h){return I[h]}));z===x.initializeStart&&l.fromEnable&&(R=Object.keys($.plugins).filter(function(h){var g=$.plugins[h];return l.plugins.includes(h)&&!g.initialized}).map(function(h){return D[h]}));var K=R.map(function(h){return h.name}),j=function(h,g,P){var N=wn(h).map(function(U){return vn(U,g)});return g.reduce(function(U,L){var J=L.name,Z=wn(h,J).map(function(Ne){return vn(Ne,g)}),H=Z[0],M=Z[1],ee=Z[2];return H.length&&(U.beforeNS[J]=H),M.length&&(U.duringNS[J]=M),ee.length&&(U.afterNS[J]=ee),U},{before:N[0],beforeNS:{},during:N[1],duringNS:{},after:N[2],afterNS:{}})}(z,R);return Promise.resolve(mt({action:l,data:{exact:j.before,namespaced:j.beforeNS},state:$,allPlugins:D,allMatches:j,instance:T,store:O,EVENTS:C})).then(function(h){function g(){var U=function(){if(z.match(Pe))return Promise.resolve(mt({action:A({},P,{type:F+"End"}),data:{exact:j.after,namespaced:j.afterNS},state:$,allPlugins:D,allMatches:j,instance:T,store:O,EVENTS:C})).then(function(L){L.meta&&L.meta.hasCallback&&pn(L.meta.rid,{payload:L})})}();return U&&U.then?U.then(function(){return h}):h}if(pr(h,K.length))return h;var P,N=function(){if(z!==F)return Promise.resolve(mt({action:A({},h,{type:F}),data:{exact:j.during,namespaced:j.duringNS},state:$,allPlugins:D,allMatches:j,instance:T,store:O,EVENTS:C})).then(function(U){P=U});P=h}();return N&&N.then?N.then(g):g()})}catch(h){return Promise.reject(h)}var I,E,W}(a,e,t,i,n)).then(function(l){return s=1,o(l)})}();return Promise.resolve(y&&y.then?y.then(f):f(y))}catch(l){return Promise.reject(l)}}}}}function Bi(t){return function(e){return function(n){return function(r){var i=r.type,o=r.key,a=r.value,s=r.options;if(i===x.setItem||i===x.removeItem){if(r.abort)return n(r);i===x.setItem?t.setItem(o,a,s):t.removeItem(o,s)}return n(r)}}}}var qi=function(){var t=this;this.before=[],this.after=[],this.addMiddleware=function(e,n){t[n]=t[n].concat(e)},this.removeMiddleware=function(e,n){var r=t[n].findIndex(function(i){return i===e});r!==-1&&(t[n]=[].concat(t[n].slice(0,r),t[n].slice(r+1)))},this.dynamicMiddlewares=function(e){return function(n){return function(r){return function(i){var o={getState:n.getState,dispatch:function(s){return n.dispatch(s)}},a=t[e].map(function(s){return s(o)});return xe.apply(void 0,a)(r)(i)}}}}};function Qi(t){return function(e,n){e===void 0&&(e={});var r={};if(n.type==="initialize:aborted")return e;if(/^registerPlugin:([^:]*)$/.test(n.type)){var i=In(n.type,"registerPlugin"),o=t()[i];if(!o||!i)return e;var a=n.enabled,s=o.config;return r[i]={enabled:a,initialized:!!a&&!o.initialize,loaded:!!a&&!!o.loaded({config:s}),config:s},A({},e,r)}if(/^initialize:([^:]*)$/.test(n.type)){var f=In(n.type,x.initialize),p=t()[f];return p&&f?(r[f]=A({},e[f],{initialized:!0,loaded:!!p.loaded({config:p.config})}),A({},e,r)):e}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=A({},e[n.name],{loaded:!0}),A({},e,r);switch(n.type){case x.disablePlugin:return A({},e,Sn(n.plugins,!1,e));case x.enablePlugin:return A({},e,Sn(n.plugins,!0,e));default:return e}}}function In(t,e){return t.substring(e.length+1,t.length)}function Sn(t,e,n){return t.reduce(function(r,i){return r[i]=A({},n[i],{enabled:e}),r},n)}function mr(t){try{return JSON.parse(JSON.stringify(t))}catch{}return t}var eo={last:{},history:[]};function to(t,e){t===void 0&&(t=eo);var n=e.options,r=e.meta;if(e.type===x.track){var i=mr(A({event:e.event,properties:e.properties},Object.keys(n).length&&{options:n},{meta:r}));return A({},t,{last:i,history:t.history.concat(i)})}return t}var no={actions:[]};function ro(t,e){t===void 0&&(t=no);var n=e.payload;switch(e.type){case"queue":var r;return r=n&&n.type&&n.type===x.identify?[e].concat(t.actions):t.actions.concat(e),A({},t,{actions:r});case"dequeue":return[];default:return t}}var gr=/#.*$/;function io(t){var e=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(t);return"/"+(e&&e[3]?e[3].split("?")[0].replace(gr,""):"")}var yr,vr,wr,br,oo=function(t){if(t===void 0&&(t={}),!X)return t;var e=document,n=e.title,r=e.referrer,i=window,o=i.location,a=i.innerWidth,s=i.innerHeight,f=o.hash,p=o.search,u=function(m){var d=function(){if(X){for(var w,k=document.getElementsByTagName("link"),v=0;w=k[v];v++)if(w.getAttribute("rel")==="canonical")return w.getAttribute("href")}}();return d?d.match(/\?/)?d:d+m:window.location.href.replace(gr,"")}(p),c={title:n,url:u,path:io(u),hash:f,search:p,width:a,height:s};return r&&r!==""&&(c.referrer=r),A({},c,t)},ao={last:{},history:[]};function so(t,e){t===void 0&&(t=ao);var n=e.options;if(e.type===x.page){var r=mr(A({properties:e.properties,meta:e.meta},Object.keys(n).length&&{options:n}));return A({},t,{last:r,history:t.history.concat(r)})}return t}yr=function(){if(!X)return!1;var t=navigator.appVersion;return~t.indexOf("Win")?"Windows":~t.indexOf("Mac")?"MacOS":~t.indexOf("X11")?"UNIX":~t.indexOf("Linux")?"Linux":"Unknown OS"}(),vr=X?document.referrer:null,wr=Ri(),br=Di();var _n={initialized:!1,sessionId:st(),app:null,version:null,debug:!1,offline:!!X&&!navigator.onLine,os:{name:yr},userAgent:X?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:br,locale:wr,campaign:{},referrer:vr};function co(t,e){t===void 0&&(t=_n);var n=t.initialized,r=e.campaign;switch(e.type){case x.campaign:return A({},t,{campaign:r});case x.offline:return A({},t,{offline:!0});case x.online:return A({},t,{offline:!1});default:return n?t:A({},_n,t,{initialized:!0})}}var uo=["plugins","reducers","storage"];function lo(t,e,n){if(X){var r=window[(n?"add":"remove")+"EventListener"];t.split(" ").forEach(function(i){r(i,e)})}}function ho(t){var e=lo.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(t)});return e(!0),function(n){return e(!1)}}function kr(){return be("analytics",[]),function(t){return function(e,n,r){var i=t(e,n,r),o=i.dispatch;return Object.assign(i,{dispatch:function(a){return Ce[je].analytics.push(a.action||a),o(a)}})}}}function En(t){return function(){return xe(xe.apply(null,arguments),kr())}}function vt(t){return t?ur(t)?t:[t]:[]}function Pn(t,e,n){t===void 0&&(t={});var r,i,o=st();return e&&(Re[o]=(r=e,i=function(a){for(var s,f=a||Array.prototype.slice.call(arguments),p=0;p<f.length;p++)if(Y(f[p])){s=f[p];break}return s}(n),function(a){i&&i(a),r(a)})),A({},t,{rid:o,ts:new Date().getTime()},e?{hasCallback:!0}:{})}function fo(t){t===void 0&&(t={});var e=t.reducers||{},n=t.initialUser||{},r=(t.plugins||[]).reduce(function(h,g){if(Y(g))return h.middlewares=h.middlewares.concat(g),h;if(g.NAMESPACE&&(g.name=g.NAMESPACE),!g.name)throw new Error("https://lytics.dev/errors/1");g.config||(g.config={});var P=g.EVENTS?Object.keys(g.EVENTS).map(function(L){return g.EVENTS[L]}):[];h.pluginEnabled[g.name]=!(g.enabled===!1||g.config.enabled===!1),delete g.enabled,g.methods&&(h.methods[g.name]=Object.keys(g.methods).reduce(function(L,J){var Z;return L[J]=(Z=g.methods[J],function(){for(var H=Array.prototype.slice.call(arguments),M=new Array(Z.length),ee=0;ee<H.length;ee++)M[ee]=H[ee];return M[M.length]=b,Z.apply({instance:b},M)}),L},{}),delete g.methods);var N=Object.keys(g).concat(P),U=new Set(h.events.concat(N));if(h.events=Array.from(U),h.pluginsArray=h.pluginsArray.concat(g),h.plugins[g.name])throw new Error(g.name+"AlreadyLoaded");return h.plugins[g.name]=g,h.plugins[g.name].loaded||(h.plugins[g.name].loaded=function(){return!0}),h},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),i=t.storage?t.storage:{getItem:we,setItem:be,removeItem:Ae},o=function(h){return function(g,P,N){return P.getState("user")[g]||(N&&V(N)&&N[g]?N[g]:fn(h)[g]||we(jt(g))||null)}}(i),a=r.plugins,s=r.events.filter(function(h){return!Ot.includes(h)}).sort(),f=new Set(s.concat(et).filter(function(h){return!Ot.includes(h)})),p=Array.from(f).sort(),u=function(){return a},c=new qi,m=c.addMiddleware,d=c.removeMiddleware,w=c.dynamicMiddlewares,k=function(){throw new Error("Abort disabled inListener")},v=Li(),_=fn(i),S=A({},_,n,v.an_uid?{userId:v.an_uid}:{},v.an_aid?{anonymousId:v.an_aid}:{});S.anonymousId||(S.anonymousId=st());var y=A({enable:function(h,g){return new Promise(function(P){j.dispatch({type:x.enablePlugin,plugins:vt(h),_:{originalAction:x.enablePlugin}},P,[g])})},disable:function(h,g){return new Promise(function(P){j.dispatch({type:x.disablePlugin,plugins:vt(h),_:{originalAction:x.disablePlugin}},P,[g])})}},r.methods),l=!1,b={identify:function(h,g,P,N){try{var U=se(h)?h:null,L=V(h)?h:g,J=P||{},Z=b.user();be(jt(oe),U);var H=U||L.userId||o(oe,b,L);return Promise.resolve(new Promise(function(M){j.dispatch(A({type:x.identifyStart,userId:H,traits:L||{},options:J,anonymousId:Z.anonymousId},Z.id&&Z.id!==U&&{previousId:Z.id}),M,[g,P,N])}))}catch(M){return Promise.reject(M)}},track:function(h,g,P,N){try{var U=V(h)?h.event:h;if(!U||!se(U))throw new Error("EventMissing");var L=V(h)?h:g||{},J=V(P)?P:{};return Promise.resolve(new Promise(function(Z){j.dispatch({type:x.trackStart,event:U,properties:L,options:J,userId:o(oe,b,g),anonymousId:o(_e,b,g)},Z,[g,P,N])}))}catch(Z){return Promise.reject(Z)}},page:function(h,g,P){try{var N=V(h)?h:{},U=V(g)?g:{};return Promise.resolve(new Promise(function(L){j.dispatch({type:x.pageStart,properties:oo(N),options:U,userId:o(oe,b,N),anonymousId:o(_e,b,N)},L,[h,g,P])}))}catch(L){return Promise.reject(L)}},user:function(h){if(h===oe||h==="id")return o(oe,b);if(h===_e||h==="anonId")return o(_e,b);var g=b.getState("user");return h?an(g,h):g},reset:function(h){return new Promise(function(g){j.dispatch({type:x.resetStart},g,h)})},ready:function(h){return l&&h({plugins:y,instance:b}),b.on(x.ready,function(g){h(g),l=!0})},on:function(h,g){if(!h||!Y(g))return!1;if(h===x.bootstrap)throw new Error(".on disabled for "+h);var P=/Start$|Start:/;if(h==="*"){var N=function(Z){return function(H){return function(M){return M.type.match(P)&&g({payload:M,instance:b,plugins:a}),H(M)}}},U=function(Z){return function(H){return function(M){return M.type.match(P)||g({payload:M,instance:b,plugins:a}),H(M)}}};return m(N,Ye),m(U,Ge),function(){d(N,Ye),d(U,Ge)}}var L=h.match(P)?Ye:Ge,J=function(Z){return function(H){return function(M){return M.type===h&&g({payload:M,instance:b,plugins:a,abort:k}),H(M)}}};return m(J,L),function(){return d(J,L)}},once:function(h,g){if(!h||!Y(g))return!1;if(h===x.bootstrap)throw new Error(".once disabled for "+h);var P=b.on(h,function(N){g({payload:N.payload,instance:b,plugins:a,abort:k}),P()});return P},getState:function(h){var g=j.getState();return h?an(g,h):Object.assign({},g)},dispatch:function(h){var g=se(h)?{type:h}:h;if(et.includes(g.type))throw new Error("reserved action "+g.type);var P=A({},g,{_:A({originalAction:g.type},h._||{})});j.dispatch(P)},enablePlugin:y.enable,disablePlugin:y.disable,plugins:y,storage:{getItem:i.getItem,setItem:function(h,g,P){j.dispatch({type:x.setItemStart,key:h,value:g,options:P})},removeItem:function(h,g){j.dispatch({type:x.removeItemStart,key:h,options:g})}},setAnonymousId:function(h,g){b.storage.setItem(ce,h,g)},events:{core:et,plugins:s}},T=r.middlewares.concat([function(h){return function(g){return function(P){return P.meta||(P.meta=Pn()),g(P)}}},w(Ye),Gi(b,u,{all:p,plugins:s}),Bi(i),Fi(b),Xi(b),w(Ge)]),O={context:co,user:Ji(i),page:so,track:to,plugins:Qi(u),queue:ro},C=xe,D=xe;if(X&&t.debug){var z=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;z&&(C=z({trace:!0,traceLimit:25})),D=function(){return arguments.length===0?kr():V(typeof arguments[0])?En():En().apply(null,arguments)}}var F,$=function(h){return Object.keys(h).reduce(function(g,P){return uo.includes(P)||(g[P]=h[P]),g},{})}(t),R=r.pluginsArray.reduce(function(h,g){var P=g.name,N=g.config,U=g.loaded,L=r.pluginEnabled[P];return h[P]={enabled:L,initialized:!!L&&!g.initialize,loaded:!!U({config:N}),config:N},h},{}),K={context:$,user:S,plugins:R},j=dr(function(h){for(var g=Object.keys(h),P={},N=0;N<g.length;N++){var U=g[N];typeof h[U]===ae&&(P[U]=h[U])}var L,J=Object.keys(P);try{(function(Z){Object.keys(Z).forEach(function(H){var M=Z[H];if(typeof M(void 0,{type:"@@redux/INIT"})===ie||typeof M(void 0,{type:Ki})===ie)throw new Error("reducer "+H+" "+ie)})})(P)}catch(Z){L=Z}return function(Z,H){if(Z===void 0&&(Z={}),L)throw L;for(var M=!1,ee={},Ne=0;Ne<J.length;Ne++){var He=J[Ne],Ft=Z[He],lt=(0,P[He])(Ft,H);if(typeof lt===ie){var Ur=Wi(He,H);throw new Error(Ur)}ee[He]=lt,M=M||lt!==Ft}return M?ee:Z}}(A({},O,e)),K,D(C(Hi.apply(void 0,T))));j.dispatch=(F=j.dispatch,function(h,g,P){var N=A({},h,{meta:Pn(h.meta,g,vt(P))});return F.apply(null,[N])});var I=Object.keys(a);j.dispatch({type:x.bootstrap,plugins:I,config:$,params:v,user:S,initialUser:n,persistedUser:_});var E=I.filter(function(h){return r.pluginEnabled[h]}),W=I.filter(function(h){return!r.pluginEnabled[h]});return j.dispatch({type:x.registerPlugins,plugins:I,enabled:r.pluginEnabled}),r.pluginsArray.map(function(h,g){var P=h.bootstrap,N=h.config,U=h.name;P&&Y(P)&&P({instance:b,config:N,payload:h}),j.dispatch({type:x.registerPluginType(U),name:U,enabled:r.pluginEnabled[U],plugin:h}),r.pluginsArray.length===g+1&&j.dispatch({type:x.initializeStart,plugins:E,disabled:W})}),ho(function(h){j.dispatch({type:h?x.offline:x.online})}),function(h,g,P){setInterval(function(){return fr(h,g,P)},3e3)}(j,u,b),b}var Ye="before",Ge="after",Le="cookie",fe=_r(),Ir=ct,po=ct;function Sr(t){return fe?ct(t,"",-1):Ae(t)}function _r(){if(fe!==void 0)return fe;var t="cookiecookie";try{ct(t,t),fe=document.cookie.indexOf(t)!==-1,Sr(t)}catch{fe=!1}return fe}function ct(t,e,n,r,i,o){if(typeof window<"u"){var a=arguments.length>1;return fe===!1&&(a?be(t,e):we(t)),a?document.cookie=t+"="+encodeURIComponent(e)+(n?"; expires="+new Date(+new Date+1e3*n).toUTCString()+(r?"; path="+r:"")+(i?"; domain="+i:"")+(o?"; secure":""):""):decodeURIComponent((("; "+document.cookie).split("; "+t+"=")[1]||"").split(";")[0])}}var Me="localStorage",mo=Dt.bind(null,"localStorage");$e("localStorage","getItem",we);$e("localStorage","setItem",be);$e("localStorage","removeItem",Ae);var Ze="sessionStorage",go=Dt.bind(null,"sessionStorage");$e("sessionStorage","getItem",we);$e("sessionStorage","setItem",be);$e("sessionStorage","removeItem",Ae);function Te(t){var e=t;try{if((e=JSON.parse(t))==="true")return!0;if(e==="false")return!1;if(V(e))return e;parseFloat(e)===e&&(e=parseFloat(e))}catch{}if(e!==null&&e!=="")return e}var yo=mo(),vo=go(),wo=_r();function Er(t,e){if(t){var n=Lt(e),r=!Wt(n),i=Mt(n)?Te(localStorage.getItem(t)):void 0;if(r&&!Se(i))return i;var o=Zt(n)?Te(Ir(t)):void 0;if(r&&o)return o;var a=Kt(n)?Te(sessionStorage.getItem(t)):void 0;if(r&&a)return a;var s=we(t);return r?s:{localStorage:i,sessionStorage:a,cookie:o,global:s}}}function bo(t,e,n){if(t&&!Se(e)){var r={},i=Lt(n),o=JSON.stringify(e),a=!Wt(i);return Mt(i)&&(r[Me]=Be(Me,e,Te(localStorage.getItem(t))),localStorage.setItem(t,o),a)?r[Me]:Zt(i)&&(r[Le]=Be(Le,e,Te(Ir(t))),po(t,o),a)?r[Le]:Kt(i)&&(r[Ze]=Be(Ze,e,Te(sessionStorage.getItem(t))),sessionStorage.setItem(t,o),a)?r[Ze]:(r[De]=Be(De,e,we(t)),be(t,e),a?r[De]:r)}}function ko(t,e){if(t){var n=Lt(e),r=Er(t,ar),i={};return!Se(r.localStorage)&&Mt(n)&&(localStorage.removeItem(t),i[Me]=r.localStorage),!Se(r.cookie)&&Zt(n)&&(Sr(t),i[Le]=r.cookie),!Se(r.sessionStorage)&&Kt(n)&&(sessionStorage.removeItem(t),i[Ze]=r.sessionStorage),!Se(r.global)&&ut(n,De)&&(Ae(t),i[De]=r.global),i}}function Lt(t){return t?se(t)?t:t.storage:or}function Mt(t){return yo&&ut(t,Me)}function Zt(t){return wo&&ut(t,Le)}function Kt(t){return vo&&ut(t,Ze)}function Wt(t){return t===ar||t==="all"}function ut(t,e){return t===or||t===e||Wt(t)}function Be(t,e,n){return{location:t,current:e,previous:n}}var Io={setItem:bo,getItem:Er,removeItem:ko};function So(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Tn(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),n.push.apply(n,r)}return n}function On(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?Tn(Object(n),!0).forEach(function(r){So(t,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Tn(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))})}return t}function _o(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e={storage:Io};return fo(On(On({},e),t))}function Eo(t,e){e=e||{};var n,r,i=[],o=e.max||1/0;function a(){clearInterval(n),t(i.splice(0,o)),s()}function s(){n=setInterval(a,e.interval||1e4)}return s(),{flush:a,push:function(f){return r=i.push(f),r>=o&&a(),r},size:function(){return i.length},end:function(f){f&&a(),clearInterval(n)}}}function Po(t){if(typeof window>"u")return;const{addEventListener:e,history:n,location:r}=window;let i=r.pathname;e("popstate",()=>t(r.pathname)),["push","replace"].map(o=>{const a=`${o}State`;if(a!=="pushState"&&a!=="replaceState")return;const s=n[a];n[a]=function(...f){var c;const p=((c=f[2])==null?void 0:c.toString())||"",u=Oo(p);return i!==u&&(i=u,setTimeout(()=>t(p),0)),s.apply(n,f)}})}function To(t,e){const n=t.indexOf(e);return n>-1?t.slice(0,n):t}function Oo(t){return["#","?"].forEach(e=>t=To(t,e)),t}function jo(){Po(()=>{re.page()})}function Co(t){if(t===void 0&&(t={}),!X)return Tt;var e=Cn(),n=Ct(),r=jn(),i=qe(r,e),o=qe(n,e),a=[],s=[],f=[],p=r,u=i,c=o,m=Object.keys(t);if(!m.length)return Tt;var d=m.map(function(k){return Number(k)}),w=Zi(function(){var k=Cn(),v=function($,R){return R.map(function(K){return K===100?$-5:$*(K/100)})}(k,d),_=Ct(),S=jn(),y=qe(S,k),l=qe(_,k);if(u=y>u?y:u,c=l<c?l:c,!(a.length>=d.length)){var b=p===S,T="up";b?T="initial":p<=S&&(T="down");var O=v,C=d;(T==="up"||b)&&(O=v.slice().reverse(),C=d.slice().reverse());var D=C.reduce(function($,R,K){var j=O[K];return f.includes(R)&&S<=j&&(f=f.filter(function(I){return I!==R}),$.singleFunction=R),T==="down"&&!a.includes(R)&&S>=j&&R>o?(s.push(R),$.callbacks=$.callbacks.concat(R),$):T==="up"&&!a.includes(R)&&S<=j&&R<=y?($.foundFunc=[R],$):(b&&S>=j&&$.foundFunc.length===0&&($.foundFunc=[R]),!s.includes(R)&&S>=j&&(s.push(R),$.singleFunction?f.push(R):$.singleFunction=R),$)},{foundFunc:[],singleFunction:null,callbacks:[],direction:T});if(p=S,T==="down"&&D.callbacks&&D.callbacks.forEach(function($){Y(t[$])&&(t[$]({trigger:$,direction:T,scrollMin:c,scrollMax:u,range:[c,u]}),a.push($))}),D.singleFunction){var z=D.singleFunction,F=D.direction;Y(t[z])&&t[z]({trigger:z,direction:F,scrollMin:c,scrollMax:u,range:[c,u]}),a.push(z)}}},500);return window.addEventListener("scroll",w),function(){return window.removeEventListener("scroll",w)}}function Ct(){return X?document.body.scrollTop||document.documentElement.scrollTop:0}function xo(){return X?window.innerHeight||document.documentElement.clientHeight:0}function jn(){return Math.round(Ct()+xo())}function Cn(){if(!X)return 0;var t=document.body,e=document.documentElement;return Math.max(t.scrollHeight,t.offsetHeight,e.clientHeight,e.scrollHeight,e.offsetHeight)}function qe(t,e){return Math.round(t/e*100)}var xn="EventListener";function Ao(t){return function(e,n,r,i){var o=r||Tt,a=i||!1;if(!X)return o;var s=rt(n),f=rt(e,!0);if(!f.length)throw new Error("noElements");if(!s.length)throw new Error("noEvent");var p=[];return function u(c){c&&(p=[]);for(var m=c?"add"+xn:"remove"+xn,d=0;d<f.length;d++){var w=f[d];p[d]=c?a&&a.once?$o(o):o:p[d]||o;for(var k=0;k<s.length;k++)w[m]?w["on"+s[k]]=c?p[d]:null:w[m](s[k],p[d],a)}return u.bind(null,!c)}(t)}}function rt(t,e){if(se(t))return e?rt(document.querySelectorAll(t)):(n=t).split(n.indexOf(",")>-1?",":" ").map(function(a){return a.trim()});var n;if(NodeList.prototype.isPrototypeOf(t)){for(var r=[],i=t.length>>>0;i--;)r[i]=t[i];return r}var o=zi(t);return e?o.map(function(a){return se(a)?rt(a,!0):a}).flat():o}function $o(t,e){var n;return function(){return t&&(n=t.apply(e||this,arguments),t=null),n}}var wt=Ao("Event");function Pr(t,e){return X&&Y(window[t])?(n=window[t],r=e,(i=window)===void 0&&(i=null),Y(n)?function(){n.apply(i,arguments),r.apply(i,arguments)}:r):window[t]=e;var n,r,i}Pr.bind(null,"onerror");Pr.bind(null,"onload");var Tr=typeof window>"u",An="hidden";function No(t){if(Tr)return!1;var e=Uo(),n="".concat(e.replace(/[H|h]idden/,""),"visibilitychange"),r=function(){return t(!!document[e])},i=function(){return document.addEventListener(n,r)};return i(),function(){return document.removeEventListener(n,r),i}}function Uo(){var t=["webkit","moz","ms","o"];return Tr||An in document?An:t.reduce(function(e,n){var r=n+"Hidden";return!e&&r in document?r:e},null)}var zo=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function Ro(t,e){e===void 0&&(e={});var n=function(a,s){var f=this,p=!1;return function(u){p||(a.call(f,u),p=!0,setTimeout(function(){return p=!1},s))}}(t,e.throttle||1e4),r=[];function i(){var a=No(function(s){s||n({type:"tabVisible"})});return r=[a].concat(zo.map(function(s){return wt(document,s,n)})).concat(wt(window,"load",n)).concat(wt(window,"scroll",n,{capture:!0,passive:!0})),o}function o(){r.map(function(a){return a()})}return i(),function(){return o(),i}}function Do(t){var e,n,r=t.onIdle,i=t.onWakeUp,o=t.onHeartbeat,a=t.timeout,s=a===void 0?1e4:a,f=t.throttle,p=f===void 0?2e3:f,u=!1,c=!1,m=new Date,d=function(){return clearTimeout(e)};function w(v){d(),o&&!u&&o(ze(m),v),i&&u&&(u=!1,i(ze(n),v),m=new Date),e=setTimeout(function(){u=!0,r&&(n=new Date,r(ze(m),v))},s)}var k=Ro(w,{throttle:p});return{disable:function(){c=!0,u=!1,d();var v=k();return function(){return c=!1,m=new Date,w({type:"load"}),v()}},getStatus:function(){return{isIdle:u,isDisabled:c,active:u?0:ze(m,c),idle:u?ze(n,c):0}}}}function ze(t,e){return e?0:Math.round((new Date-t)/1e3)}const $n=5e3;class Lo{constructor(e){q(this,"element");q(this,"isInViewport",!1);q(this,"isAwake",!1);q(this,"isFlushing");q(this,"observer");q(this,"lastEventAt",Date.now());q(this,"registeredView",!1);q(this,"viewCallback");q(this,"activeDurationCallback");q(this,"idleDurationCallback");q(this,"scrollCallback");this.element=e.element,this.viewCallback=e.viewCallback,this.activeDurationCallback=e.activeDurationCallback,this.idleDurationCallback=e.idleDurationCallback,this.scrollCallback=e.scrollCallback,this.observer=new IntersectionObserver(n=>{n.forEach(r=>{this.handleInViewPort(r.isIntersecting)})},{threshold:0}),this.observer.observe(this.element),Do({onIdle:n=>this.handleAwake(!1,n),onWakeUp:n=>this.handleAwake(!0,n),timeout:$n}),Co({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(e){e?(this.isAwake=!0,this.trackInViewport()):this.handleAwake(!1),this.isInViewport=e}handleAwake(e,n=Math.round((Date.now()-this.lastEventAt)/1e3)){this.isAwake=e,this.lastEventAt=e?Date.now()-n*$n:Date.now(),this.isInViewport&&this.trackAwake(e,n)}handleScroll(e){this.scrollCallback&&this.scrollCallback(e)}handleVisibilityChange(){this.isAwake=!1;const e=Math.round((Date.now()-this.lastEventAt)/1e3);e>1&&(this.lastEventAt=Date.now(),this.trackAwake(!1,e))}trackAwake(e,n){!e&&this.activeDurationCallback&&this.activeDurationCallback(n,this.isFlushing,this.lastEventAt),e&&this.idleDurationCallback&&this.idleDurationCallback(n,this.isFlushing,this.lastEventAt)}trackInViewport(){this.registeredView||(this.registeredView=!0,this.viewCallback&&this.viewCallback())}}const Nn="sesamy_session_id";function Mo(){let t=sessionStorage.getItem(Nn);return t||(t=Math.random().toString(36).slice(2,9),sessionStorage.setItem(Nn,t)),t}let Or=!1,xt,Un,it;function Zo({clientId:t,enabled:e=!0,endpoint:n=ui}){if(xt=t,Un=e,it=n,!Un)return;jo();const r=new Lo({element:document.body,viewCallback:()=>{re.page()},activeDurationCallback:(i,o,a)=>{re.track("activeDuration",{duration:i,durationStart:a,flushing:o})},idleDurationCallback:(i,o,a)=>{re.track("idleDuration",{duration:i,durationStart:a,flushing:o})},scrollCallback:i=>{re.track("scroll",{scroll:i.scrollMax})}});Ho(document.body,()=>{r.flush()}),Fo(document.body,()=>{r.handleVisibilityChange()}),window.addEventListener(Q.AUTHENTICATED,async i=>{const o=i;await re.identify(o.detail.sub)}),window.addEventListener(Q.LOGOUT,async()=>{await re.track("logout",{}),Ht.flush(),await re.reset()})}function jr(t){return JSON.stringify(t.map(e=>({...e,clientId:xt,requestId:Math.random().toString(36).slice(2,9),sessionId:Mo(),timestamp:new Date().toISOString(),version:Rt,event:e.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:ir,userAgent:navigator.userAgent,clientId:xt}})))}const Ht=Eo(async t=>{if(t.length>0){const e=jr(t);Or?navigator.sendBeacon(it,e):(await fetch(it,{method:"POST",body:e,headers:{"Content-Type":"text/plain"}})).ok}},{max:10,interval:3e3});function bt(t){var e;if(t.anonymousId)if((e=t.properties)!=null&&e.flushing){const n={...t};delete n.properties.flushing,navigator.sendBeacon(it,jr([n]))}else Ht.push(t)}const re=_o({app:ir,version:Rt,plugins:[{name:"custom-analytics-plugin",page:({payload:t})=>{const{properties:e,anonymousId:n,userId:r,event:i}=t;bt({anonymousId:n,userId:r,properties:e,event:i,type:"page"})},track:({payload:t})=>{const{properties:e,anonymousId:n,userId:r,event:i}=t;bt({anonymousId:n,userId:r,properties:e,event:i,type:"track"})},identify:({payload:t})=>{const{properties:e,anonymousId:n,userId:r}=t;bt({anonymousId:n,userId:r,properties:e,type:"identify"})}}]});function Ko(t,e){re.track(t,e)}function Wo(){return Or=!0,Ht.flush()}const Cr=new Map;function Ho(t,e){Cr.set(t,e)}window.addEventListener("beforeunload",()=>{Cr.forEach((t,e)=>{t.bind(e)()}),Wo()});const xr=new Map;function Fo(t,e){xr.set(t,e)}window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&xr.forEach((t,e)=>{t.bind(e)()})});const Ar="sesamySignedURLs";function $r(){const t=sessionStorage.getItem(Ar);return t?JSON.parse(t):[]}function Jo(t){const e=$r();e.push(t),sessionStorage.setItem(Ar,JSON.stringify(e))}function Xo(t){const{getEntitlement:e,getEntitlements:n,getEntitlementAccess:r,getSubscriptions:i,getContract:o,getContracts:a,getBill:s,getBills:f,getProfile:p,updateProfile:u,getTags:c,deleteTag:m,setTag:d,getUserMetadata:w,listUserMetadata:k,setUserMetadata:v,deleteUserMetadata:_,getTally:S,getTallies:y,pushTally:l,deleteTally:b,getProduct:T,getPaymentIssues:O,autoOnboardProduct:C,openHostedAccountPage:D}=Pi(t),z={auth:{getUser:p,isAuthenticated:qn,loginWithRedirect:Qn,logout:hi,setToken:er},profile:{get:p,update:u,openHostedAccountPage:D},analytics:{track:Ko},tags:{list:c,set:d,delete:m},entitlements:{get:e,list:n,access:r,signedLinks:$r},contracts:{get:o,list:a},bills:{get:s,list:f},userMetadata:{get:w,list:k,set:v,delete:_},tallies:{get:S,list:y,push:l,delete:b},subscriptions:{list:i},products:{get:T,autoOnboard:C},getVersion:Vo,getPaymentIssues:O,clearCache:te};return t.namespace&&(window[t.namespace]=z),z}function Vo(){return Rt}function Yo(){const t=new URLSearchParams(window.location.hash.substring(1)),e=t.get("access_token"),n=t.get("expires_in");if(e){er(e,n?parseInt(n,10):void 0);const r=new URL(window.location.href);t.delete("access_token"),t.delete("expires_in"),r.hash=t.toString(),window.history.replaceState(null,"",r)}}const zn="sesamy-refresh",Rn="force-refetch-entitlements";function Go(){const t=new URLSearchParams(window.location.search),e=t.get(Rn),n=t.get(zn);if(e!==null||n!==null){const r=new URL(window.location.href);t.delete(Rn),t.delete(zn),r.search=t.toString(),te(),window.history.replaceState(null,"",r)}}function Bo(){const t=new URLSearchParams(window.location.search),e=t.get("token"),n=t.get("se");if(!n||!e)return;const r=parseInt(n,10);if(Number.isNaN(r)||r<Date.now())return;Jo({url:window.location.href.split("?")[0],token:e,expiresAt:r,publisherContentId:t.get("sp")??void 0});const i=new URL(window.location.href);i.searchParams.delete("ss"),i.searchParams.delete("se"),i.searchParams.delete("sp"),i.searchParams.delete("so"),i.searchParams.delete("token"),window.history.replaceState(null,"",i)}const Dn="sesamy-user";async function qo(){const e=new URLSearchParams(window.location.search).get(Dn);if(!e)return;const n=await di();(n==null?void 0:n.email)!==e&&Qn();const r=new URL(window.location.href);r.searchParams.delete(Dn),window.history.replaceState(null,"",r)}const Ln="sesamy-purchase";function Qo(){const t=new URLSearchParams(window.location.search),e=t.get(Ln);if(e!==null){const n=new URL(window.location.href);t.delete(Ln),n.search=t.toString(),ue(Q.PURCHASE,{itemSrc:e}),te(),window.history.replaceState(null,"",n)}}async function Nr(t){Zo({clientId:t.clientId,...t.analytics}),await li({clientId:t.clientId,...t.auth});const e=Xo({clientId:t.clientId,...t.api});return ue(Q.READY,{}),Yo(),Go(),Bo(),await qo(),Qo(),e}if(typeof document<"u"){const t=document.getElementById("sesamy-js");if(t!=null&&t.textContent)try{const e=JSON.parse(t.textContent);Nr(e)}catch(e){console.error("Failed to parse config",e)}}exports.init=Nr;
4
+ `)})(),e.cache&&e.cacheLocation&&console.warn("Both `cache` and `cacheLocation` options have been specified in the Auth0Client configuration; ignoring `cacheLocation` and using `cache`."),e.cache)r=e.cache;else{if(n=e.cacheLocation||"memory",!tn(n))throw new Error(`Invalid cache location "${n}"`);r=tn(n)()}this.httpTimeoutMs=e.httpTimeoutInSeconds?1e3*e.httpTimeoutInSeconds:1e4,this.cookieStorage=e.legacySameSiteCookie===!1?Ie:ri,this.orgHintCookieName=`auth0.${this.options.clientId}.organization_hint`,this.isAuthenticatedCookieName=(a=>`auth0.${a}.is.authenticated`)(this.options.clientId),this.sessionCheckExpiryDays=e.sessionCheckExpiryDays||1;const i=e.useCookiesForTransactions?this.cookieStorage:ii;var o;this.scope=He("openid",this.options.authorizationParams.scope,this.options.useRefreshTokens?"offline_access":""),this.transactionManager=new Qr(i,this.options.clientId,this.options.cookieDomain),this.nowProvider=this.options.nowProvider||Hn,this.cacheManager=new qr(r,r.allKeys?void 0:new si(r,this.options.clientId),this.nowProvider),this.domainUrl=(o=this.options.domain,/^https?:\/\//.test(o)?o:`https://${o}`),this.tokenIssuer=((a,s)=>a?a.startsWith("https://")?a:`https://${a}/`:`${s}/`)(this.options.issuer,this.domainUrl),typeof window<"u"&&window.Worker&&this.options.useRefreshTokens&&n==="memory"&&(this.options.workerUrl?this.worker=new Worker(this.options.workerUrl):this.worker=new ai)}_url(e){const n=encodeURIComponent(btoa(JSON.stringify(this.options.auth0Client||Fn)));return`${this.domainUrl}${e}&auth0Client=${n}`}_authorizeUrl(e){return this._url(`/authorize?${St(e)}`)}async _verifyIdToken(e,n,r){const i=await this.nowProvider();return ti({iss:this.tokenIssuer,aud:this.options.clientId,id_token:e,nonce:n,organization:r,leeway:this.options.leeway,max_age:(o=this.options.authorizationParams.max_age,typeof o!="string"?o:parseInt(o,10)||void 0),now:i});var o}_processOrgHint(e){e?this.cookieStorage.save(this.orgHintCookieName,e,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}):this.cookieStorage.remove(this.orgHintCookieName,{cookieDomain:this.options.cookieDomain})}async _prepareAuthorizeUrl(e,n,r){const i=Gt(dt()),o=Gt(dt()),a=dt(),s=(u=>{const c=new Uint8Array(u);return(m=>{const d={"+":"-","/":"_","=":""};return m.replace(/[+/=]/g,w=>d[w])})(window.btoa(String.fromCharCode(...Array.from(c))))})(await(async u=>await Qe().subtle.digest({name:"SHA-256"},new TextEncoder().encode(u)))(a)),f=((u,c,m,d,w,k,v,_)=>Object.assign(Object.assign(Object.assign({client_id:u.clientId},u.authorizationParams),m),{scope:He(c,m.scope),response_type:"code",response_mode:_||"query",state:d,nonce:w,redirect_uri:v||u.authorizationParams.redirect_uri,code_challenge:k,code_challenge_method:"S256"}))(this.options,this.scope,e,i,o,s,e.redirect_uri||this.options.authorizationParams.redirect_uri||r,n==null?void 0:n.response_mode),p=this._authorizeUrl(f);return{nonce:o,code_verifier:a,scope:f.scope,audience:f.audience||"default",redirect_uri:f.redirect_uri,state:i,url:p}}async loginWithPopup(e,n){var r;if(e=e||{},!(n=n||{}).popup&&(n.popup=(s=>{const f=window.screenX+(window.innerWidth-400)/2,p=window.screenY+(window.innerHeight-600)/2;return window.open(s,"auth0:authorize:popup",`left=${f},top=${p},width=400,height=600,resizable,scrollbars=yes,status=1`)})(""),!n.popup))throw new Error("Unable to open a popup for loginWithPopup - window.open returned `null`");const i=await this._prepareAuthorizeUrl(e.authorizationParams||{},{response_mode:"web_message"},window.location.origin);n.popup.location.href=i.url;const o=await(s=>new Promise((f,p)=>{let u;const c=setInterval(()=>{s.popup&&s.popup.closed&&(clearInterval(c),clearTimeout(m),window.removeEventListener("message",u,!1),p(new Fr(s.popup)))},1e3),m=setTimeout(()=>{clearInterval(c),p(new Wr(s.popup)),window.removeEventListener("message",u,!1)},1e3*(s.timeoutInSeconds||60));u=function(d){if(d.data&&d.data.type==="authorization_response"){if(clearTimeout(m),clearInterval(c),window.removeEventListener("message",u,!1),s.popup.close(),d.data.response.error)return p(G.fromPayload(d.data.response));f(d.data.response)}},window.addEventListener("message",u)}))(Object.assign(Object.assign({},n),{timeoutInSeconds:n.timeoutInSeconds||this.options.authorizeTimeoutInSeconds||60}));if(i.state!==o.state)throw new G("state_mismatch","Invalid state");const a=((r=e.authorizationParams)===null||r===void 0?void 0:r.organization)||this.options.authorizationParams.organization;await this._requestToken({audience:i.audience,scope:i.scope,code_verifier:i.code_verifier,grant_type:"authorization_code",code:o.code,redirect_uri:i.redirect_uri},{nonceIn:i.nonce,organization:a})}async getUser(){var e;const n=await this._getIdTokenFromCache();return(e=n==null?void 0:n.decodedToken)===null||e===void 0?void 0:e.user}async getIdTokenClaims(){var e;const n=await this._getIdTokenFromCache();return(e=n==null?void 0:n.decodedToken)===null||e===void 0?void 0:e.claims}async loginWithRedirect(e={}){var n;const r=nn(e),{openUrl:i,fragment:o,appState:a}=r,s=ne(r,["openUrl","fragment","appState"]),f=((n=s.authorizationParams)===null||n===void 0?void 0:n.organization)||this.options.authorizationParams.organization,p=await this._prepareAuthorizeUrl(s.authorizationParams||{}),{url:u}=p,c=ne(p,["url"]);this.transactionManager.create(Object.assign(Object.assign(Object.assign({},c),{appState:a}),f&&{organization:f}));const m=o?`${u}#${o}`:u;i?await i(m):window.location.assign(m)}async handleRedirectCallback(e=window.location.href){const n=e.split("?").slice(1);if(n.length===0)throw new Error("There are no query params available for parsing.");const{state:r,code:i,error:o,error_description:a}=(c=>{c.indexOf("#")>-1&&(c=c.substring(0,c.indexOf("#")));const m=new URLSearchParams(c);return{state:m.get("state"),code:m.get("code")||void 0,error:m.get("error")||void 0,error_description:m.get("error_description")||void 0}})(n.join("")),s=this.transactionManager.get();if(!s)throw new G("missing_transaction","Invalid state");if(this.transactionManager.remove(),o)throw new Kr(o,a||o,r,s.appState);if(!s.code_verifier||s.state&&s.state!==r)throw new G("state_mismatch","Invalid state");const f=s.organization,p=s.nonce,u=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:i},u?{redirect_uri:u}:{}),{nonceIn:p,organization:f}),{appState:s.appState}}async checkSession(e){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(e)}catch{}}async getTokenSilently(e={}){var n;const r=Object.assign(Object.assign({cacheMode:"on"},e),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),e.authorizationParams),{scope:He(this.scope,(n=e.authorizationParams)===null||n===void 0?void 0:n.scope)})}),i=await((o,a)=>{let s=ft[a];return s||(s=o().finally(()=>{delete ft[a],s=null}),ft[a]=s),s})(()=>this._getTokenSilently(r),`${this.options.clientId}::${r.authorizationParams.audience}::${r.authorizationParams.scope}`);return e.detailedResponse?i:i==null?void 0:i.access_token}async _getTokenSilently(e){const{cacheMode:n}=e,r=ne(e,["cacheMode"]);if(n!=="off"){const i=await this._getEntryFromCache({scope:r.authorizationParams.scope,audience:r.authorizationParams.audience||"default",clientId:this.options.clientId});if(i)return i}if(n!=="cache-only"){if(!await(async(i,o=3)=>{for(let a=0;a<o;a++)if(await i())return!0;return!1})(()=>pt.acquireLock("auth0.lock.getTokenSilently",5e3),10))throw new It;try{if(window.addEventListener("pagehide",this._releaseLockOnPageHide),n!=="off"){const p=await this._getEntryFromCache({scope:r.authorizationParams.scope,audience:r.authorizationParams.audience||"default",clientId:this.options.clientId});if(p)return p}const i=this.options.useRefreshTokens?await this._getTokenUsingRefreshToken(r):await this._getTokenFromIFrame(r),{id_token:o,access_token:a,oauthTokenScope:s,expires_in:f}=i;return Object.assign(Object.assign({id_token:o,access_token:a},s?{scope:s}:null),{expires_in:f})}finally{await pt.releaseLock("auth0.lock.getTokenSilently"),window.removeEventListener("pagehide",this._releaseLockOnPageHide)}}}async getTokenWithPopup(e={},n={}){var r;const i=Object.assign(Object.assign({},e),{authorizationParams:Object.assign(Object.assign(Object.assign({},this.options.authorizationParams),e.authorizationParams),{scope:He(this.scope,(r=e.authorizationParams)===null||r===void 0?void 0:r.scope)})});return n=Object.assign(Object.assign({},Zr),n),await this.loginWithPopup(i,n),(await this.cacheManager.get(new pe({scope:i.authorizationParams.scope,audience:i.authorizationParams.audience||"default",clientId:this.options.clientId}))).access_token}async isAuthenticated(){return!!await this.getUser()}_buildLogoutUrl(e){e.clientId!==null?e.clientId=e.clientId||this.options.clientId:delete e.clientId;const n=e.logoutParams||{},{federated:r}=n,i=ne(n,["federated"]),o=r?"&federated":"";return this._url(`/v2/logout?${St(Object.assign({clientId:e.clientId},i))}`)+o}async logout(e={}){const n=nn(e),{openUrl:r}=n,i=ne(n,["openUrl"]);e.clientId===null?await this.cacheManager.clear():await this.cacheManager.clear(e.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 o=this._buildLogoutUrl(i);r?await r(o):r!==!1&&window.location.assign(o)}async _getTokenFromIFrame(e){const n=Object.assign(Object.assign({},e.authorizationParams),{prompt:"none"}),r=this.cookieStorage.get(this.orgHintCookieName);r&&!n.organization&&(n.organization=r);const{url:i,state:o,nonce:a,code_verifier:s,redirect_uri:f,scope:p,audience:u}=await this._prepareAuthorizeUrl(n,{response_mode:"web_message"},window.location.origin);try{if(window.crossOriginIsolated)throw new G("login_required","The application is running in a Cross-Origin Isolated context, silently retrieving a token without refresh token is not possible.");const c=e.timeoutInSeconds||this.options.authorizeTimeoutInSeconds,m=await((w,k,v=60)=>new Promise((_,S)=>{const y=window.document.createElement("iframe");y.setAttribute("width","0"),y.setAttribute("height","0"),y.style.display="none";const l=()=>{window.document.body.contains(y)&&(window.document.body.removeChild(y),window.removeEventListener("message",b,!1))};let b;const T=setTimeout(()=>{S(new It),l()},1e3*v);b=function(O){if(O.origin!=k||!O.data||O.data.type!=="authorization_response")return;const C=O.source;C&&C.close(),O.data.response.error?S(G.fromPayload(O.data.response)):_(O.data.response),clearTimeout(T),window.removeEventListener("message",b,!1),setTimeout(l,2e3)},window.addEventListener("message",b,!1),window.document.body.appendChild(y),y.setAttribute("src",w)}))(i,this.domainUrl,c);if(o!==m.state)throw new G("state_mismatch","Invalid state");const d=await this._requestToken(Object.assign(Object.assign({},e.authorizationParams),{code_verifier:s,code:m.code,grant_type:"authorization_code",redirect_uri:f,timeout:e.authorizationParams.timeout||this.httpTimeoutMs}),{nonceIn:a,organization:n.organization});return Object.assign(Object.assign({},d),{scope:p,oauthTokenScope:d.scope,audience:u})}catch(c){throw c.error==="login_required"&&this.logout({openUrl:!1}),c}}async _getTokenUsingRefreshToken(e){const n=await this.cacheManager.get(new pe({scope:e.authorizationParams.scope,audience:e.authorizationParams.audience||"default",clientId:this.options.clientId}));if(!(n&&n.refresh_token||this.worker)){if(this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw new Bn(e.authorizationParams.audience||"default",e.authorizationParams.scope)}const r=e.authorizationParams.redirect_uri||this.options.authorizationParams.redirect_uri||window.location.origin,i=typeof e.timeoutInSeconds=="number"?1e3*e.timeoutInSeconds:null;try{const o=await this._requestToken(Object.assign(Object.assign(Object.assign({},e.authorizationParams),{grant_type:"refresh_token",refresh_token:n&&n.refresh_token,redirect_uri:r}),i&&{timeout:i}));return Object.assign(Object.assign({},o),{scope:e.authorizationParams.scope,oauthTokenScope:o.scope,audience:e.authorizationParams.audience||"default"})}catch(o){if((o.message.indexOf("Missing Refresh Token")>-1||o.message&&o.message.indexOf("invalid refresh token")>-1)&&this.options.useRefreshTokensFallback)return await this._getTokenFromIFrame(e);throw o}}async _saveEntryInCache(e){const{id_token:n,decodedToken:r}=e,i=ne(e,["id_token","decodedToken"]);this.userCache.set("@@user@@",{id_token:n,decodedToken:r}),await this.cacheManager.setIdToken(this.options.clientId,e.id_token,e.decodedToken),await this.cacheManager.set(i)}async _getIdTokenFromCache(){const e=this.options.authorizationParams.audience||"default",n=await this.cacheManager.getIdToken(new pe({clientId:this.options.clientId,audience:e,scope:this.scope})),r=this.userCache.get("@@user@@");return n&&n.id_token===(r==null?void 0:r.id_token)?r:(this.userCache.set("@@user@@",n),n)}async _getEntryFromCache({scope:e,audience:n,clientId:r}){const i=await this.cacheManager.get(new pe({scope:e,audience:n,clientId:r}),60);if(i&&i.access_token){const{access_token:o,oauthTokenScope:a,expires_in:s}=i,f=await this._getIdTokenFromCache();return f&&Object.assign(Object.assign({id_token:f.id_token,access_token:o},a?{scope:a}:null),{expires_in:s})}}async _requestToken(e,n){const{nonceIn:r,organization:i}=n||{},o=await Gr(Object.assign({baseUrl:this.domainUrl,client_id:this.options.clientId,auth0Client:this.options.auth0Client,useFormData:this.options.useFormData,timeout:this.httpTimeoutMs},e),this.worker),a=await this._verifyIdToken(o.id_token,r,i);return await this._saveEntryInCache(Object.assign(Object.assign(Object.assign(Object.assign({},o),{decodedToken:a,scope:e.scope,audience:e.audience||"default"}),o.scope?{oauthTokenScope:o.scope}:null),{client_id:this.options.clientId})),this.cookieStorage.save(this.isAuthenticatedCookieName,!0,{daysUntilExpire:this.sessionCheckExpiryDays,cookieDomain:this.options.cookieDomain}),this._processOrgHint(i||a.claims.org_id),Object.assign(Object.assign({},o),{decodedToken:a})}};async function li(t){const e=new ui(t);return await e.checkSession(),e}const Et="sesamy.com",di="https://logs.sesamy.com/events",Pt="sesamyCacheTimestamp";var Q=(t=>(t.READY="sesamyJsReady",t.AUTHENTICATED="sesamyJsAuthenticated",t.LOGOUT="sesamyJsLogout",t.CLEAR_CACHE="sesamyJsClearCache",t.USER_ATTRIBUTE_CHANGED="sesamyUserAttributeChanged",t.PURCHASE="sesamyJsPurchase",t))(Q||{});let B,Tt;const Ut="sesamyAccessToken",zt="sesamyExpires";function Rt(){const t=localStorage.getItem(zt);if(!(t&&parseInt(t,10)<new Date().getTime()))return localStorage.getItem(Ut)}async function hi(t){if(t.enabled!==!1&&(Tt=t.organization,B=await li({domain:t.endpoint||`token.${Et}`,clientId:t.clientId}),window.location.search.includes("code=")))try{await B.handleRedirectCallback();const e=await B.getUser();ue(Q.AUTHENTICATED,e);const n=new URL(location.href),r=n.searchParams;r.delete("code"),r.delete("state"),n.search=r.toString(),window.history.replaceState({},document.title,n.toString())}catch{}}async function Lt(){if(Rt())return!0;if(!B)throw new Error("Auth0 client not initialized");return B.isAuthenticated()}async function fi(){if(Rt())return{sub:"local",name:"Local User"};if(!B)throw new Error("Auth0 client not initialized");return B.getUser()}function Dt(t){if(!B)throw new Error("Auth0 client not initialized");const e={redirect_uri:window.location.href};return t!=null&&t.email&&(e.login_hint=t.email),Tt&&(e.organization=Tt),B.loginWithRedirect({authorizationParams:e})}async function rn(t=!0){const e=Rt();if(e)return e;try{if(!B)throw new Error("Auth0 client not initialized");return await B.getTokenSilently()}catch(n){if(t)throw n;return null}}async function pi(){if(localStorage.removeItem(Ut),localStorage.removeItem(zt),!B)throw new Error("Auth0 client not initialized");return ue(Q.LOGOUT,{}),B.logout({logoutParams:{returnTo:window.location.href}})}function mi(t){const e=t.split(".");if(e.length!==3)throw new Error("Invalid JWT token format.");const r=e[1].replace(/-/g,"+").replace(/_/g,"/"),i=decodeURIComponent(atob(r).split("").map(function(o){return"%"+("00"+o.charCodeAt(0).toString(16)).slice(-2)}).join(""));return JSON.parse(i)}async function nr(t,e){localStorage.setItem(Ut,t),e&&localStorage.setItem(zt,JSON.stringify(e*1e3+new Date().getTime()));const n=mi(t);ue(Q.AUTHENTICATED,n)}const gi=(t,e)=>e.skipDedupe||e.method!=="GET",yi=(t,e)=>e.method+"@"+t,vi=t=>t.clone(),on=({skip:t=gi,key:e=yi,resolver:n=vi}={})=>{const r=new Map;return i=>(o,a)=>{if(t(o,a))return i(o,a);const s=e(o,a);if(!r.has(s))r.set(s,[]);else return new Promise((f,p)=>{r.get(s).push([f,p])});try{return i(o,a).then(f=>(r.get(s).forEach(([p])=>p(n(f))),r.delete(s),f)).catch(f=>{throw r.get(s).forEach(([p,u])=>u(f)),r.delete(s),f})}catch(f){return r.delete(s),Promise.reject(f)}}},wi=(t,e)=>t*e,bi=t=>t&&t.ok,an=({delayTimer:t=500,delayRamp:e=wi,maxAttempts:n=10,until:r=bi,onRetry:i=null,retryOnNetworkError:o=!1,resolveWithLatestResponse:a=!1,skip:s}={})=>f=>(p,u)=>{let c=0;if(s&&s(p,u))return f(p,u);const m=(d,w)=>Promise.resolve(r(d,w)).then(k=>k?d&&a?d:w?Promise.reject(w):d:(c++,!n||c<=n?new Promise(v=>{const _=e(t,c);setTimeout(()=>{typeof i=="function"?Promise.resolve(i({response:d,error:w,url:p,options:u})).then((S={})=>{var y,l;v(f((y=S&&S.url)!==null&&y!==void 0?y:p,(l=S&&S.options)!==null&&l!==void 0?l:u))}):v(f(p,u))},_)}).then(m).catch(v=>{if(!o)throw v;return m(null,v)}):d&&a?d:Promise.reject(w||new Error("Number of attempts exceeded."))));return f(p,u).then(m).catch(d=>{if(!o)throw d;return m(null,d)})},ki="application/json",rr="Content-Type",ke=Symbol(),ir=Symbol();function sn(t={}){var e;return(e=Object.entries(t).find(([n])=>n.toLowerCase()===rr.toLowerCase()))===null||e===void 0?void 0:e[1]}function cn(t){return/^application\/.*json.*/.test(t)}const ge=function(t,e,n=!1){return Object.entries(e).reduce((r,[i,o])=>{const a=t[i];return Array.isArray(a)&&Array.isArray(o)?r[i]=n?[...a,...o]:o:typeof a=="object"&&typeof o=="object"?r[i]=ge(a,o,n):r[i]=o,r},{...t})},Oe={options:{},errorType:"text",polyfills:{},polyfill(t,e=!0,n=!1,...r){const i=this.polyfills[t]||(typeof self<"u"?self[t]:null)||(typeof global<"u"?global[t]:null);if(e&&!i)throw new Error(t+" is not defined");return n&&i?new i(...r):i}};function Ii(t,e=!1){Oe.options=e?t:ge(Oe.options,t)}function Si(t,e=!1){Oe.polyfills=e?t:ge(Oe.polyfills,t)}function _i(t){Oe.errorType=t}const Ei=t=>e=>t.reduceRight((n,r)=>r(n),e)||e;class or extends Error{}const Pi=t=>{const e=Object.create(null);t=t._addons.reduce((y,l)=>l.beforeRequest&&l.beforeRequest(y,t._options,e)||y,t);const{_url:n,_options:r,_config:i,_catchers:o,_resolvers:a,_middlewares:s,_addons:f}=t,p=new Map(o),u=ge(i.options,r);let c=n;const m=Ei(s)((y,l)=>(c=y,i.polyfill("fetch")(y,l)))(n,u),d=new Error,w=m.catch(y=>{throw{[ke]:y}}).then(y=>{if(!y.ok){const l=new or;if(l.cause=d,l.stack=l.stack+`
5
+ CAUSE: `+d.stack,l.response=y,l.url=c,y.type==="opaque")throw l;return y.text().then(b=>{var T;if(l.message=b,i.errorType==="json"||((T=y.headers.get("Content-Type"))===null||T===void 0?void 0:T.split(";")[0])==="application/json")try{l.json=JSON.parse(b)}catch{}throw l.text=b,l.status=y.status,l})}return y}),k=y=>y.catch(l=>{const b=l.hasOwnProperty(ke),T=b?l[ke]:l,O=(T==null?void 0:T.status)&&p.get(T.status)||p.get(T==null?void 0:T.name)||b&&p.has(ke)&&p.get(ke);if(O)return O(T,t);const C=p.get(ir);if(C)return C(T,t);throw T}),v=y=>l=>k(y?w.then(b=>b&&b[y]()).then(b=>l?l(b):b):w.then(b=>l?l(b):b)),_={_wretchReq:t,_fetchReq:m,_sharedState:e,res:v(null),json:v("json"),blob:v("blob"),formData:v("formData"),arrayBuffer:v("arrayBuffer"),text:v("text"),error(y,l){return p.set(y,l),this},badRequest(y){return this.error(400,y)},unauthorized(y){return this.error(401,y)},forbidden(y){return this.error(403,y)},notFound(y){return this.error(404,y)},timeout(y){return this.error(408,y)},internalError(y){return this.error(500,y)},fetchError(y){return this.error(ke,y)}},S=f.reduce((y,l)=>({...y,...typeof l.resolver=="function"?l.resolver(y):l.resolver}),_);return a.reduce((y,l)=>l(y,t),S)},Ti={_url:"",_options:{},_config:Oe,_catchers:new Map,_resolvers:[],_deferred:[],_middlewares:[],_addons:[],addon(t){return{...this,_addons:[...this._addons,t],...t.wretch}},errorType(t){return{...this,_config:{...this._config,errorType:t}}},polyfills(t,e=!1){return{...this,_config:{...this._config,polyfills:e?t:ge(this._config.polyfills,t)}}},url(t,e=!1){if(e)return{...this,_url:t};const n=this._url.split("?");return{...this,_url:n.length>1?n[0]+t+"?"+n[1]:this._url+t}},options(t,e=!1){return{...this,_options:e?t:ge(this._options,t)}},headers(t){const e=t?Array.isArray(t)?Object.fromEntries(t):"entries"in t?Object.fromEntries(t.entries()):t:{};return{...this,_options:ge(this._options,{headers:e})}},accept(t){return this.headers({Accept:t})},content(t){return this.headers({[rr]:t})},auth(t){return this.headers({Authorization:t})},catcher(t,e){const n=new Map(this._catchers);return n.set(t,e),{...this,_catchers:n}},catcherFallback(t){return this.catcher(ir,t)},resolve(t,e=!1){return{...this,_resolvers:e?[t]:[...this._resolvers,t]}},defer(t,e=!1){return{...this,_deferred:e?[t]:[...this._deferred,t]}},middlewares(t,e=!1){return{...this,_middlewares:e?t:[...this._middlewares,...t]}},fetch(t=this._options.method,e="",n=null){let r=this.url(e).options({method:t});const i=sn(r._options.headers),o=typeof n=="object"&&(!r._options.headers||!i||cn(i));return r=n?o?r.json(n,i):r.body(n):r,Pi(r._deferred.reduce((a,s)=>s(a,a._url,a._options),r))},get(t=""){return this.fetch("GET",t)},delete(t=""){return this.fetch("DELETE",t)},put(t,e=""){return this.fetch("PUT",e,t)},post(t,e=""){return this.fetch("POST",e,t)},patch(t,e=""){return this.fetch("PATCH",e,t)},head(t=""){return this.fetch("HEAD",t)},opts(t=""){return this.fetch("OPTIONS",t)},body(t){return{...this,_options:{...this._options,body:t}}},json(t,e){const n=sn(this._options.headers);return this.content(e||cn(n)&&n||ki).body(JSON.stringify(t))}};function le(t="",e={}){return{...Ti,_url:t,_options:e}}le.default=le;le.options=Ii;le.errorType=_i;le.polyfills=Si;le.WretchError=or;function te(){sessionStorage.removeItem(Pt),ue(Q.CLEAR_CACHE,{})}function Oi(t){const e=t.endpoint||`https://api2.${Et}`,n=I=>async(E,W)=>{let h=sessionStorage.getItem(Pt);h||(h=Date.now().toString(),sessionStorage.setItem(Pt,h));const g={...W,headers:{...W.headers,"Cache-Timestamp":h}};return I(E,g)},r=(I=!0)=>E=>async(W,h)=>{let g=null;if(g=await rn(I),!g){if(I)throw new Error("No access token available");return E(W,h)}const P={...h,headers:{...h.headers,...g?{Authorization:`Bearer ${g}`}:{}}};return E(W,P)},i=I=>(E,W)=>{if(W.headers.Authorization)return I(E,W);const h=localStorage.getItem("__anon_id"),g=btoa(`${h}:`),P={...W,headers:{...W.headers,Authorization:`Basic ${g}`}};return I(E,P)},o=le(e).headers({"Content-Type":"application/json"}).middlewares([n,r(),on(),an({delayTimer:1e3,delayRamp:(I,E)=>I*E,maxAttempts:3,until:I=>!!(I&&(I.ok||I.status>=400&&I.status<500)),retryOnNetworkError:!1})]),a=le(e).headers({"Content-Type":"application/json"}).middlewares([n,r(!1),i,on(),an({delayTimer:1e3,delayRamp:(I,E)=>I*E,maxAttempts:3,until:I=>!!(I&&(I.ok||I.status>=400&&I.status<500)),retryOnNetworkError:!1})]);async function s(){return o.get("/entitlements").json()}async function f(I){const E=await o.get("/entitlements").json();return E==null?void 0:E.find(W=>W.id===I)}async function p(I){return o.get(`/entitlements/${I}/access`).json()}async function u(){return o.get("/contracts").json()}async function c(I){const E=await o.get("/contracts").json();return E==null?void 0:E.find(W=>W.id===I)}async function m(){return o.get("/subscriptions").json()}async function d(){return o.get("/bills").json()}async function w(I){const E=await o.get("/bills").json();return E==null?void 0:E.find(W=>W.id===I)}async function k(I,E){const W=await o.url(`/user-metadata/${I}`).put(E).json();return ue(Q.USER_ATTRIBUTE_CHANGED,{}),te(),W}async function v(I){const E=await o.url(`/user-metadata/${I}`).delete().res();return te(),E.ok}async function _(I){return(await o.url(`/user-metadata/${I}`).get().json())[I]}async function S(){return await o.url("/user-metadata").get().json()}async function y(){return await o.url("/tags").get().json()}async function l(I){const E=await o.url(`/tags/${I}`).delete().res();return te(),E.ok}async function b(I){const E=await o.url("/tags").post(I).res();return ue(Q.USER_ATTRIBUTE_CHANGED,{}),te(),E.ok}async function T(I){return(await a.url("/tallies").get().json())[I]}async function O(){return await a.url("/tallies").get().json()}async function C(I){const E=await a.url(`/tallies/${I}`).delete().res();return te(),E.ok}async function L(I,E){return await a.url(`/tallies/${I}/push`).post(E).json()}async function z(I){return await o.url(`/products/${I}`).get().json()}async function H(){return await Lt()?await o.url("/profile").get().json():null}async function $(I){const E=await o.url("/profile").patch(I).res();return te(),E.ok}async function R(){return await o.url("/payment-issues").get().json()}async function K(I){const E=await o.url(`/products/${I}/auto-onboard`).post().json();return E.length&&te(),E}async function j(){const I=await rn(!1),E=new URL(`https://account.${Et}/subscriptions/${t.clientId}`);I&&(E.hash=`#access_token=${I}`),window.location.href=E.toString()}return{getEntitlements:s,getEntitlement:f,getEntitlementAccess:p,getContracts:u,getContract:c,getProfile:H,updateProfile:$,getSubscriptions:m,getBills:d,getBill:w,setUserMetadata:k,deleteUserMetadata:v,getUserMetadata:_,listUserMetadata:S,getTags:y,deleteTag:l,setTag:b,getTally:T,getTallies:O,deleteTally:C,pushTally:L,getProduct:z,getPaymentIssues:R,autoOnboardProduct:K,openHostedAccountPage:j}}const ar="@sesamy/sesamy-js",Mt="1.3.2";function un(t,e,n,r,i){for(e=e.split?e.split("."):e,r=0;r<e.length;r++)t=t?t[e[r]]:i;return t===i?n:t}var Je="undefined",ln="object",Ot=function(){},sr="any",cr="*",ve="__",tt=typeof process<"u"?process:{};tt.env&&tt.env.NODE_ENV;var X=typeof document<"u";tt.versions!=null&&tt.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 ur(t,e){return e.charAt(0)[t]()+e.slice(1)}var ji=ur.bind(null,"toUpperCase"),Ci=ur.bind(null,"toLowerCase");function xi(t){return lr(t)?ji("null"):typeof t=="object"?Ui(t):Object.prototype.toString.call(t).slice(8,-1)}function nt(t,e){e===void 0&&(e=!0);var n=xi(t);return e?Ci(n):n}function We(t,e){return typeof e===t}var Y=We.bind(null,"function"),se=We.bind(null,"string"),Se=We.bind(null,"undefined"),Ai=We.bind(null,"boolean");We.bind(null,"symbol");function lr(t){return t===null}function $i(t){return nt(t)==="number"&&!isNaN(t)}function dr(t){return nt(t)==="array"}function V(t){if(!Ni(t))return!1;for(var e=t;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(t)===e}function Ni(t){return t&&(typeof t=="object"||t!==null)}function Ui(t){return Y(t.constructor)?t.constructor.name:null}function zi(t){return t instanceof Error||se(t.message)&&t.constructor&&$i(t.constructor.stackTraceLimit)}function hr(t,e){if(typeof e!="object"||lr(e))return!1;if(e instanceof t)return!0;var n=nt(new t(""));if(zi(e))for(;e;){if(nt(e)===n)return!0;e=Object.getPrototypeOf(e)}return!1}hr.bind(null,TypeError);hr.bind(null,SyntaxError);function ot(t,e){var n=t instanceof Element||t instanceof HTMLDocument;return n&&e?Ri(t,e):n}function Ri(t,e){return e===void 0&&(e=""),t&&t.nodeName===e.toUpperCase()}function at(t){var e=[].slice.call(arguments,1);return function(){return t.apply(void 0,[].slice.call(arguments).concat(e))}}at(ot,"form");at(ot,"button");at(ot,"input");at(ot,"select");function Li(t){return t?dr(t)?t:[t]:[]}function dn(t){try{return decodeURIComponent(t.replace(/\+/g," "))}catch{return null}}function Di(){if(X){var t=navigator,e=t.languages;return t.userLanguage||(e&&e.length?e[0]:t.language)}}function Mi(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{}}function Zi(t){return function(e){for(var n,r=Object.create(null),i=/([^&=]+)=?([^&]*)/g;n=i.exec(e);){var o=dn(n[1]),a=dn(n[2]);o.substring(o.length-2)==="[]"?(r[o=o.substring(0,o.length-2)]||(r[o]=[])).push(a):r[o]=a===""||a}for(var s in r){var f=s.split("[");f.length>1&&(Ki(r,f.map(function(p){return p.replace(/[?[\]\\ ]/g,"")}),r[s]),delete r[s])}return r}(function(e){if(e){var n=e.match(/\?(.*)/);return n&&n[1]?n[1].split("#")[0]:""}return X&&window.location.search.substring(1)}(t))}function Ki(t,e,n){for(var r=e.length-1,i=0;i<r;++i){var o=e[i];if(o==="__proto__"||o==="constructor")break;o in t||(t[o]={}),t=t[o]}t[e[r]]=n}function st(){for(var t="",e=0,n=4294967295*Math.random()|0;e++<36;){var r="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx"[e-1],i=15&n;t+=r=="-"||r=="4"?r:(r=="x"?i:3&i|8).toString(16),n=e%8==0?4294967295*Math.random()|0:n>>4}return t}function Wi(t,e){var n,r,i,o=null,a=0,s=function(){a=new Date,o=null,i=t.apply(n,r)};return function(){var f=new Date;a||(a=f);var p=e-(f-a);return n=this,r=arguments,p<=0?(clearTimeout(o),o=null,a=f,i=t.apply(n,r)):o||(o=setTimeout(s,p)),i}}var Le="global",je=ve+"global"+ve,Ce=typeof self===ln&&self.self===self&&self||typeof global===ln&&global.global===global&&global||void 0;function we(t){return Ce[je][t]}function be(t,e){return Ce[je][t]=e}function Ae(t){delete Ce[je][t]}function $e(t,e,n){var r;try{if(Zt(t)){var i=window[t];r=i[e].bind(i)}}catch{}return r||n}Ce[je]||(Ce[je]={});var Xe={};function Zt(t){if(typeof Xe[t]!==Je)return Xe[t];try{var e=window[t];e.setItem(Je,Je),e.removeItem(Je)}catch{return Xe[t]=!1}return Xe[t]=!0}function A(){return A=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},A.apply(this,arguments)}var ae="function",ie="undefined",Fi="@@redux/"+Math.random().toString(36),hn=function(){return typeof Symbol===ae&&Symbol.observable||"@@observable"}(),Ve=" != "+ae;function fr(t,e,n){var r;if(typeof e===ae&&typeof n===ie&&(n=e,e=void 0),typeof n!==ie){if(typeof n!==ae)throw new Error("enhancer"+Ve);return n(fr)(t,e)}if(typeof t!==ae)throw new Error("reducer"+Ve);var i=t,o=e,a=[],s=a,f=!1;function p(){s===a&&(s=a.slice())}function u(){return o}function c(d){if(typeof d!==ae)throw new Error("Listener"+Ve);var w=!0;return p(),s.push(d),function(){if(w){w=!1,p();var k=s.indexOf(d);s.splice(k,1)}}}function m(d){if(!V(d))throw new Error("Act != obj");if(typeof d.type===ie)throw new Error("ActType "+ie);if(f)throw new Error("Dispatch in reducer");try{f=!0,o=i(o,d)}finally{f=!1}for(var w=a=s,k=0;k<w.length;k++)(0,w[k])();return d}return m({type:"@@redux/INIT"}),(r={dispatch:m,subscribe:c,getState:u,replaceReducer:function(d){if(typeof d!==ae)throw new Error("next reducer"+Ve);i=d,m({type:"@@redux/INIT"})}})[hn]=function(){var d,w=c;return(d={subscribe:function(k){if(typeof k!="object")throw new TypeError("Observer != obj");function v(){k.next&&k.next(u())}return v(),{unsubscribe:w(v)}}})[hn]=function(){return this},d},r}function Hi(t,e){var n=e&&e.type;return"action "+(n&&n.toString()||"?")+"reducer "+t+" returns "+ie}function xe(){var t=[].slice.call(arguments);return t.length===0?function(e){return e}:t.length===1?t[0]:t.reduce(function(e,n){return function(){return e(n.apply(void 0,[].slice.call(arguments)))}})}function Ji(){var t=arguments;return function(e){return function(n,r,i){var o,a=e(n,r,i),s=a.dispatch,f={getState:a.getState,dispatch:function(p){return s(p)}};return o=[].slice.call(t).map(function(p){return p(f)}),A({},a,{dispatch:s=xe.apply(void 0,o)(a.dispatch)})}}}var ce=ve+"anon_id",ye=ve+"user_id",Ee=ve+"user_traits",oe="userId",_e="anonymousId",et=["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"],jt=["name","EVENTS","config","loaded"],x=et.reduce(function(t,e){return t[e]=e,t},{registerPluginType:function(t){return"registerPlugin:"+t},pluginReadyType:function(t){return"ready:"+t}}),fn=/^utm_/,pn=/^an_prop_/,mn=/^an_trait_/;function Xi(t){var e=t.storage.setItem;return function(n){return function(r){return function(i){if(i.type===x.bootstrap){var o=i.params,a=i.user,s=i.persistedUser,f=i.initialUser,p=s.userId===a.userId;s.anonymousId!==a.anonymousId&&e(ce,a.anonymousId),p||e(ye,a.userId),f.traits&&e(Ee,A({},p&&s.traits?s.traits:{},f.traits));var u=Object.keys(i.params);if(u.length){var c=o.an_uid,m=o.an_event,d=u.reduce(function(w,k){if(k.match(fn)||k.match(/^(d|g)clid/)){var v=k.replace(fn,"");w.campaign[v==="campaign"?"name":v]=o[k]}return k.match(pn)&&(w.props[k.replace(pn,"")]=o[k]),k.match(mn)&&(w.traits[k.replace(mn,"")]=o[k]),w},{campaign:{},props:{},traits:{}});n.dispatch(A({type:x.params,raw:o},d,c?{userId:c}:{})),c&&setTimeout(function(){return t.identify(c,d.traits)},0),m&&setTimeout(function(){return t.track(m,d.props)},0),Object.keys(d.campaign).length&&n.dispatch({type:x.campaign,campaign:d.campaign})}}return r(i)}}}}function Vi(t){return function(e,n){if(e===void 0&&(e={}),n===void 0&&(n={}),n.type===x.setItemEnd){if(n.key===ce)return A({},e,{anonymousId:n.value});if(n.key===ye)return A({},e,{userId:n.value})}switch(n.type){case x.identify:return Object.assign({},e,{userId:n.userId,traits:A({},e.traits,n.traits)});case x.reset:return[ye,ce,Ee].forEach(function(r){t.removeItem(r)}),Object.assign({},e,{userId:null,anonymousId:null,traits:{}});default:return e}}}function gn(t){return{userId:t.getItem(ye),anonymousId:t.getItem(ce),traits:t.getItem(Ee)}}var Ct=function(t){return ve+"TEMP"+ve+t};function Yi(t){var e=t.storage,n=e.setItem,r=e.removeItem,i=e.getItem;return function(o){return function(a){return function(s){var f=s.userId,p=s.traits,u=s.options;if(s.type===x.reset&&([ye,Ee,ce].forEach(function(d){r(d)}),[oe,_e,"traits"].forEach(function(d){Ae(Ct(d))})),s.type===x.identify){i(ce)||n(ce,st());var c=i(ye),m=i(Ee)||{};c&&c!==f&&o.dispatch({type:x.userIdChanged,old:{userId:c,traits:m},new:{userId:f,traits:p},options:u}),f&&n(ye,f),p&&n(Ee,A({},m,p))}return a(s)}}}}var Re={};function yn(t,e){Re[t]&&Y(Re[t])&&(Re[t](e),delete Re[t])}function pr(t,e,n){return new Promise(function(r,i){return e()?r(t):n<1?i(A({},t,{queue:!0})):new Promise(function(o){return setTimeout(o,10)}).then(function(o){return pr(t,e,n-10).then(r,i)})})}function Gi(t){return{abort:t}}function mr(t,e,n){var r={},i=e(),o=t.getState(),a=o.plugins,s=o.queue,f=o.user;if(!o.context.offline&&s&&s.actions&&s.actions.length){var p=s.actions.reduce(function(c,m,d){return a[m.plugin].loaded?(c.process.push(m),c.processIndex.push(d)):(c.requeue.push(m),c.requeueIndex.push(d)),c},{processIndex:[],process:[],requeue:[],requeueIndex:[]});if(p.processIndex&&p.processIndex.length){p.processIndex.forEach(function(c){var m=s.actions[c],d=m.plugin,w=m.payload.type,k=i[d][w];if(k&&Y(k)){var v,_=function(l,b){return l===void 0&&(l={}),b===void 0&&(b={}),[oe,_e].reduce(function(T,O){return l.hasOwnProperty(O)&&b[O]&&b[O]!==l[O]&&(T[O]=b[O]),T},l)}(m.payload,f),S=r[_.meta.rid];if(!S&&(v=k({payload:_,config:a[d].config,instance:n,abort:Gi}))&&V(v)&&v.abort)return void(r[_.meta.rid]=!0);if(!S){var y=w+":"+d;t.dispatch(A({},_,{type:y,_:{called:y,from:"queueDrain"}}))}}});var u=s.actions.filter(function(c,m){return!~p.processIndex.indexOf(m)});s.actions=u}}}var mt=function(t){var e=t.data,n=t.action,r=t.instance,i=t.state,o=t.allPlugins,a=t.allMatches,s=t.store,f=t.EVENTS;try{var p=i.plugins,u=i.context,c=n.type,m=c.match(Pe),d=e.exact.map(function(v){return v.pluginName});m&&(d=a.during.map(function(v){return v.pluginName}));var w=function(v,_){return function(S,y,l){var b=y.config,T=y.name,O=T+"."+S.type;l&&(O=l.event);var C=S.type.match(Pe)?function(L,z,H,$,R){return function(K,j){var I=$?$.name:L,E=j&&Ke(j)?j:H;if($&&(!(E=j&&Ke(j)?j:[L]).includes(L)||E.length!==1))throw new Error("Method "+z+" can only abort "+L+" plugin. "+JSON.stringify(E)+" input valid");return A({},R,{abort:{reason:K,plugins:E,caller:z,_:I}})}}(T,O,_,l,S):function(L,z){return function(){throw new Error(L.type+" action not cancellable. Remove abort in "+z)}}(S,O);return{payload:Bi(S),instance:v,config:b||{},abort:C}}}(r,d),k=e.exact.reduce(function(v,_){var S=_.pluginName,y=_.methodName,l=!1;return y.match(/^initialize/)||y.match(/^reset/)||(l=!p[S].loaded),u.offline&&y.match(/^(page|track|identify)/)&&(l=!0),v[""+S]=l,v},{});return Promise.resolve(e.exact.reduce(function(v,_,S){try{var y=_.pluginName;return Promise.resolve(v).then(function(l){function b(){return Promise.resolve(l)}var T=function(){if(e.namespaced&&e.namespaced[y])return Promise.resolve(e.namespaced[y].reduce(function(O,C,L){try{return Promise.resolve(O).then(function(z){return C.method&&Y(C.method)?(function(K,j){var I=_n(K);if(I&&I.name===j){var E=_n(I.method);throw new Error([j+" plugin is calling method "+K,"Plugins cant call self","Use "+I.method+" "+(E?"or "+E.method:"")+" in "+j+" plugin insteadof "+K].join(`
6
+ `))}}(C.methodName,C.pluginName),Promise.resolve(C.method({payload:z,instance:r,abort:(H=z,$=y,R=C.pluginName,function(K,j){return A({},H,{abort:{reason:K,plugins:j||[$],caller:c,from:R||$}})}),config:bn(C.pluginName,p,o),plugins:p})).then(function(K){var j=V(K)?K:{};return Promise.resolve(A({},z,j))})):z;var H,$,R})}catch(z){return Promise.reject(z)}},Promise.resolve(n))).then(function(O){l[y]=O});l[y]=n}();return T&&T.then?T.then(b):b()})}catch(l){return Promise.reject(l)}},Promise.resolve({}))).then(function(v){return Promise.resolve(e.exact.reduce(function(_,S,y){try{var l=e.exact.length===y+1,b=S.pluginName,T=o[b];return Promise.resolve(_).then(function(O){var C=v[b]?v[b]:{};if(m&&(C=O),yt(C,b))return gt({data:C,method:c,instance:r,pluginName:b,store:s}),Promise.resolve(O);if(yt(O,b))return l&&gt({data:O,method:c,instance:r,store:s}),Promise.resolve(O);if(k.hasOwnProperty(b)&&k[b]===!0)return s.dispatch({type:"queue",plugin:b,payload:C,_:{called:"queue",from:"queueMechanism"}}),Promise.resolve(O);var L=w(v[b],o[b]);return Promise.resolve(T[c]({abort:L.abort,payload:C,instance:r,config:bn(b,p,o),plugins:p})).then(function(z){var H=V(z)?z:{},$=A({},O,H),R=v[b];if(yt(R,b))gt({data:R,method:c,instance:r,pluginName:b,store:s});else{var K=c+":"+b;(K.match(/:/g)||[]).length<2&&!c.match(vn)&&!c.match(wn)&&r.dispatch(A({},m?$:C,{type:K,_:{called:K,from:"submethod"}}))}return Promise.resolve($)})})}catch(O){return Promise.reject(O)}},Promise.resolve(n))).then(function(_){if(!(c.match(Pe)||c.match(/^registerPlugin/)||c.match(wn)||c.match(vn)||c.match(/^params/)||c.match(/^userIdChanged/))){if(f.plugins.includes(c),_._&&_._.originalAction===c)return _;var S=A({},_,{_:{originalAction:_.type,called:_.type,from:"engineEnd"}});gr(_,e.exact.length)&&!c.match(/End$/)&&(S=A({},S,{type:_.type+"Aborted"})),s.dispatch(S)}return _})})}catch(v){return Promise.reject(v)}},Pe=/Start$/,vn=/^bootstrap/,wn=/^ready/;function gt(t){var e=t.pluginName,n=t.method+"Aborted"+(e?":"+e:"");t.store.dispatch(A({},t.data,{type:n,_:{called:n,from:"abort"}}))}function bn(t,e,n){var r=e[t]||n[t];return r&&r.config?r.config:{}}function kn(t,e){return e.reduce(function(n,r){return r[t]?n.concat({methodName:t,pluginName:r.name,method:r[t]}):n},[])}function In(t,e){var n=t.replace(Pe,""),r=e?":"+e:"";return[""+t+r,""+n+r,n+"End"+r]}function yt(t,e){var n=t.abort;return!!n&&(n===!0||Sn(n,e)||n&&Sn(n.plugins,e))}function gr(t,e){var n=t.abort;if(!n)return!1;if(n===!0||se(n))return!0;var r=n.plugins;return Ke(n)&&n.length===e||Ke(r)&&r.length===e}function Ke(t){return Array.isArray(t)}function Sn(t,e){return!(!t||!Ke(t))&&t.includes(e)}function _n(t){var e=t.match(/(.*):(.*)/);return!!e&&{method:e[1],name:e[2]}}function Bi(t){return Object.keys(t).reduce(function(e,n){return n==="type"||(e[n]=V(t[n])?Object.assign({},t[n]):t[n]),e},{})}function qi(t,e,n){var r={};return function(i){return function(o){return function(a){try{var s,f=function(l){return s?l:o(c)},p=a.type,u=a.plugins,c=a;if(a.abort)return Promise.resolve(o(a));if(p===x.enablePlugin&&i.dispatch({type:x.initializeStart,plugins:u,disabled:[],fromEnable:!0,meta:a.meta}),p===x.disablePlugin&&setTimeout(function(){return yn(a.meta.rid,{payload:a})},0),p===x.initializeEnd){var m=e(),d=Object.keys(m),w=d.filter(function(l){return u.includes(l)}).map(function(l){return m[l]}),k=[],v=[],_=a.disabled,S=w.map(function(l){var b=l.loaded,T=l.name,O=l.config;return pr(l,function(){return b({config:O})},1e4).then(function(C){return r[T]||(i.dispatch({type:x.pluginReadyType(T),name:T,events:Object.keys(l).filter(function(L){return!jt.includes(L)})}),r[T]=!0),k=k.concat(T),l}).catch(function(C){if(C instanceof Error)throw new Error(C);return v=v.concat(C.name),C})});Promise.all(S).then(function(l){var b={plugins:k,failed:v,disabled:_};setTimeout(function(){d.length===S.length+_.length&&i.dispatch(A({},{type:x.ready},b))},0)})}var y=function(){if(p!==x.bootstrap)return/^ready:([^:]*)$/.test(p)&&setTimeout(function(){return mr(i,e,t)},0),Promise.resolve(function(l,b,T,O,C){try{var L=Y(b)?b():b,z=l.type,H=z.replace(Pe,"");if(l._&&l._.called)return Promise.resolve(l);var $=T.getState(),R=(I=L,(E=$.plugins)===void 0&&(E={}),(W=l.options)===void 0&&(W={}),Object.keys(I).filter(function(h){var g=W.plugins||{};return Ai(g[h])?g[h]:g.all!==!1&&(!E[h]||E[h].enabled!==!1)}).map(function(h){return I[h]}));z===x.initializeStart&&l.fromEnable&&(R=Object.keys($.plugins).filter(function(h){var g=$.plugins[h];return l.plugins.includes(h)&&!g.initialized}).map(function(h){return L[h]}));var K=R.map(function(h){return h.name}),j=function(h,g,P){var N=In(h).map(function(U){return kn(U,g)});return g.reduce(function(U,D){var J=D.name,Z=In(h,J).map(function(Ne){return kn(Ne,g)}),F=Z[0],M=Z[1],ee=Z[2];return F.length&&(U.beforeNS[J]=F),M.length&&(U.duringNS[J]=M),ee.length&&(U.afterNS[J]=ee),U},{before:N[0],beforeNS:{},during:N[1],duringNS:{},after:N[2],afterNS:{}})}(z,R);return Promise.resolve(mt({action:l,data:{exact:j.before,namespaced:j.beforeNS},state:$,allPlugins:L,allMatches:j,instance:T,store:O,EVENTS:C})).then(function(h){function g(){var U=function(){if(z.match(Pe))return Promise.resolve(mt({action:A({},P,{type:H+"End"}),data:{exact:j.after,namespaced:j.afterNS},state:$,allPlugins:L,allMatches:j,instance:T,store:O,EVENTS:C})).then(function(D){D.meta&&D.meta.hasCallback&&yn(D.meta.rid,{payload:D})})}();return U&&U.then?U.then(function(){return h}):h}if(gr(h,K.length))return h;var P,N=function(){if(z!==H)return Promise.resolve(mt({action:A({},h,{type:H}),data:{exact:j.during,namespaced:j.duringNS},state:$,allPlugins:L,allMatches:j,instance:T,store:O,EVENTS:C})).then(function(U){P=U});P=h}();return N&&N.then?N.then(g):g()})}catch(h){return Promise.reject(h)}var I,E,W}(a,e,t,i,n)).then(function(l){return s=1,o(l)})}();return Promise.resolve(y&&y.then?y.then(f):f(y))}catch(l){return Promise.reject(l)}}}}}function Qi(t){return function(e){return function(n){return function(r){var i=r.type,o=r.key,a=r.value,s=r.options;if(i===x.setItem||i===x.removeItem){if(r.abort)return n(r);i===x.setItem?t.setItem(o,a,s):t.removeItem(o,s)}return n(r)}}}}var eo=function(){var t=this;this.before=[],this.after=[],this.addMiddleware=function(e,n){t[n]=t[n].concat(e)},this.removeMiddleware=function(e,n){var r=t[n].findIndex(function(i){return i===e});r!==-1&&(t[n]=[].concat(t[n].slice(0,r),t[n].slice(r+1)))},this.dynamicMiddlewares=function(e){return function(n){return function(r){return function(i){var o={getState:n.getState,dispatch:function(s){return n.dispatch(s)}},a=t[e].map(function(s){return s(o)});return xe.apply(void 0,a)(r)(i)}}}}};function to(t){return function(e,n){e===void 0&&(e={});var r={};if(n.type==="initialize:aborted")return e;if(/^registerPlugin:([^:]*)$/.test(n.type)){var i=En(n.type,"registerPlugin"),o=t()[i];if(!o||!i)return e;var a=n.enabled,s=o.config;return r[i]={enabled:a,initialized:!!a&&!o.initialize,loaded:!!a&&!!o.loaded({config:s}),config:s},A({},e,r)}if(/^initialize:([^:]*)$/.test(n.type)){var f=En(n.type,x.initialize),p=t()[f];return p&&f?(r[f]=A({},e[f],{initialized:!0,loaded:!!p.loaded({config:p.config})}),A({},e,r)):e}if(/^ready:([^:]*)$/.test(n.type))return r[n.name]=A({},e[n.name],{loaded:!0}),A({},e,r);switch(n.type){case x.disablePlugin:return A({},e,Pn(n.plugins,!1,e));case x.enablePlugin:return A({},e,Pn(n.plugins,!0,e));default:return e}}}function En(t,e){return t.substring(e.length+1,t.length)}function Pn(t,e,n){return t.reduce(function(r,i){return r[i]=A({},n[i],{enabled:e}),r},n)}function yr(t){try{return JSON.parse(JSON.stringify(t))}catch{}return t}var no={last:{},history:[]};function ro(t,e){t===void 0&&(t=no);var n=e.options,r=e.meta;if(e.type===x.track){var i=yr(A({event:e.event,properties:e.properties},Object.keys(n).length&&{options:n},{meta:r}));return A({},t,{last:i,history:t.history.concat(i)})}return t}var io={actions:[]};function oo(t,e){t===void 0&&(t=io);var n=e.payload;switch(e.type){case"queue":var r;return r=n&&n.type&&n.type===x.identify?[e].concat(t.actions):t.actions.concat(e),A({},t,{actions:r});case"dequeue":return[];default:return t}}var vr=/#.*$/;function ao(t){var e=/(http[s]?:\/\/)?([^\/\s]+\/)(.*)/g.exec(t);return"/"+(e&&e[3]?e[3].split("?")[0].replace(vr,""):"")}var wr,br,kr,Ir,so=function(t){if(t===void 0&&(t={}),!X)return t;var e=document,n=e.title,r=e.referrer,i=window,o=i.location,a=i.innerWidth,s=i.innerHeight,f=o.hash,p=o.search,u=function(m){var d=function(){if(X){for(var w,k=document.getElementsByTagName("link"),v=0;w=k[v];v++)if(w.getAttribute("rel")==="canonical")return w.getAttribute("href")}}();return d?d.match(/\?/)?d:d+m:window.location.href.replace(vr,"")}(p),c={title:n,url:u,path:ao(u),hash:f,search:p,width:a,height:s};return r&&r!==""&&(c.referrer=r),A({},c,t)},co={last:{},history:[]};function uo(t,e){t===void 0&&(t=co);var n=e.options;if(e.type===x.page){var r=yr(A({properties:e.properties,meta:e.meta},Object.keys(n).length&&{options:n}));return A({},t,{last:r,history:t.history.concat(r)})}return t}wr=function(){if(!X)return!1;var t=navigator.appVersion;return~t.indexOf("Win")?"Windows":~t.indexOf("Mac")?"MacOS":~t.indexOf("X11")?"UNIX":~t.indexOf("Linux")?"Linux":"Unknown OS"}(),br=X?document.referrer:null,kr=Di(),Ir=Mi();var Tn={initialized:!1,sessionId:st(),app:null,version:null,debug:!1,offline:!!X&&!navigator.onLine,os:{name:wr},userAgent:X?navigator.userAgent:"node",library:{name:"analytics",version:"0.12.7"},timezone:Ir,locale:kr,campaign:{},referrer:br};function lo(t,e){t===void 0&&(t=Tn);var n=t.initialized,r=e.campaign;switch(e.type){case x.campaign:return A({},t,{campaign:r});case x.offline:return A({},t,{offline:!0});case x.online:return A({},t,{offline:!1});default:return n?t:A({},Tn,t,{initialized:!0})}}var ho=["plugins","reducers","storage"];function fo(t,e,n){if(X){var r=window[(n?"add":"remove")+"EventListener"];t.split(" ").forEach(function(i){r(i,e)})}}function po(t){var e=fo.bind(null,"online offline",function(n){return Promise.resolve(!navigator.onLine).then(t)});return e(!0),function(n){return e(!1)}}function Sr(){return be("analytics",[]),function(t){return function(e,n,r){var i=t(e,n,r),o=i.dispatch;return Object.assign(i,{dispatch:function(a){return Ce[je].analytics.push(a.action||a),o(a)}})}}}function On(t){return function(){return xe(xe.apply(null,arguments),Sr())}}function vt(t){return t?dr(t)?t:[t]:[]}function jn(t,e,n){t===void 0&&(t={});var r,i,o=st();return e&&(Re[o]=(r=e,i=function(a){for(var s,f=a||Array.prototype.slice.call(arguments),p=0;p<f.length;p++)if(Y(f[p])){s=f[p];break}return s}(n),function(a){i&&i(a),r(a)})),A({},t,{rid:o,ts:new Date().getTime()},e?{hasCallback:!0}:{})}function mo(t){t===void 0&&(t={});var e=t.reducers||{},n=t.initialUser||{},r=(t.plugins||[]).reduce(function(h,g){if(Y(g))return h.middlewares=h.middlewares.concat(g),h;if(g.NAMESPACE&&(g.name=g.NAMESPACE),!g.name)throw new Error("https://lytics.dev/errors/1");g.config||(g.config={});var P=g.EVENTS?Object.keys(g.EVENTS).map(function(D){return g.EVENTS[D]}):[];h.pluginEnabled[g.name]=!(g.enabled===!1||g.config.enabled===!1),delete g.enabled,g.methods&&(h.methods[g.name]=Object.keys(g.methods).reduce(function(D,J){var Z;return D[J]=(Z=g.methods[J],function(){for(var F=Array.prototype.slice.call(arguments),M=new Array(Z.length),ee=0;ee<F.length;ee++)M[ee]=F[ee];return M[M.length]=b,Z.apply({instance:b},M)}),D},{}),delete g.methods);var N=Object.keys(g).concat(P),U=new Set(h.events.concat(N));if(h.events=Array.from(U),h.pluginsArray=h.pluginsArray.concat(g),h.plugins[g.name])throw new Error(g.name+"AlreadyLoaded");return h.plugins[g.name]=g,h.plugins[g.name].loaded||(h.plugins[g.name].loaded=function(){return!0}),h},{plugins:{},pluginEnabled:{},methods:{},pluginsArray:[],middlewares:[],events:[]}),i=t.storage?t.storage:{getItem:we,setItem:be,removeItem:Ae},o=function(h){return function(g,P,N){return P.getState("user")[g]||(N&&V(N)&&N[g]?N[g]:gn(h)[g]||we(Ct(g))||null)}}(i),a=r.plugins,s=r.events.filter(function(h){return!jt.includes(h)}).sort(),f=new Set(s.concat(et).filter(function(h){return!jt.includes(h)})),p=Array.from(f).sort(),u=function(){return a},c=new eo,m=c.addMiddleware,d=c.removeMiddleware,w=c.dynamicMiddlewares,k=function(){throw new Error("Abort disabled inListener")},v=Zi(),_=gn(i),S=A({},_,n,v.an_uid?{userId:v.an_uid}:{},v.an_aid?{anonymousId:v.an_aid}:{});S.anonymousId||(S.anonymousId=st());var y=A({enable:function(h,g){return new Promise(function(P){j.dispatch({type:x.enablePlugin,plugins:vt(h),_:{originalAction:x.enablePlugin}},P,[g])})},disable:function(h,g){return new Promise(function(P){j.dispatch({type:x.disablePlugin,plugins:vt(h),_:{originalAction:x.disablePlugin}},P,[g])})}},r.methods),l=!1,b={identify:function(h,g,P,N){try{var U=se(h)?h:null,D=V(h)?h:g,J=P||{},Z=b.user();be(Ct(oe),U);var F=U||D.userId||o(oe,b,D);return Promise.resolve(new Promise(function(M){j.dispatch(A({type:x.identifyStart,userId:F,traits:D||{},options:J,anonymousId:Z.anonymousId},Z.id&&Z.id!==U&&{previousId:Z.id}),M,[g,P,N])}))}catch(M){return Promise.reject(M)}},track:function(h,g,P,N){try{var U=V(h)?h.event:h;if(!U||!se(U))throw new Error("EventMissing");var D=V(h)?h:g||{},J=V(P)?P:{};return Promise.resolve(new Promise(function(Z){j.dispatch({type:x.trackStart,event:U,properties:D,options:J,userId:o(oe,b,g),anonymousId:o(_e,b,g)},Z,[g,P,N])}))}catch(Z){return Promise.reject(Z)}},page:function(h,g,P){try{var N=V(h)?h:{},U=V(g)?g:{};return Promise.resolve(new Promise(function(D){j.dispatch({type:x.pageStart,properties:so(N),options:U,userId:o(oe,b,N),anonymousId:o(_e,b,N)},D,[h,g,P])}))}catch(D){return Promise.reject(D)}},user:function(h){if(h===oe||h==="id")return o(oe,b);if(h===_e||h==="anonId")return o(_e,b);var g=b.getState("user");return h?un(g,h):g},reset:function(h){return new Promise(function(g){j.dispatch({type:x.resetStart},g,h)})},ready:function(h){return l&&h({plugins:y,instance:b}),b.on(x.ready,function(g){h(g),l=!0})},on:function(h,g){if(!h||!Y(g))return!1;if(h===x.bootstrap)throw new Error(".on disabled for "+h);var P=/Start$|Start:/;if(h==="*"){var N=function(Z){return function(F){return function(M){return M.type.match(P)&&g({payload:M,instance:b,plugins:a}),F(M)}}},U=function(Z){return function(F){return function(M){return M.type.match(P)||g({payload:M,instance:b,plugins:a}),F(M)}}};return m(N,Ye),m(U,Ge),function(){d(N,Ye),d(U,Ge)}}var D=h.match(P)?Ye:Ge,J=function(Z){return function(F){return function(M){return M.type===h&&g({payload:M,instance:b,plugins:a,abort:k}),F(M)}}};return m(J,D),function(){return d(J,D)}},once:function(h,g){if(!h||!Y(g))return!1;if(h===x.bootstrap)throw new Error(".once disabled for "+h);var P=b.on(h,function(N){g({payload:N.payload,instance:b,plugins:a,abort:k}),P()});return P},getState:function(h){var g=j.getState();return h?un(g,h):Object.assign({},g)},dispatch:function(h){var g=se(h)?{type:h}:h;if(et.includes(g.type))throw new Error("reserved action "+g.type);var P=A({},g,{_:A({originalAction:g.type},h._||{})});j.dispatch(P)},enablePlugin:y.enable,disablePlugin:y.disable,plugins:y,storage:{getItem:i.getItem,setItem:function(h,g,P){j.dispatch({type:x.setItemStart,key:h,value:g,options:P})},removeItem:function(h,g){j.dispatch({type:x.removeItemStart,key:h,options:g})}},setAnonymousId:function(h,g){b.storage.setItem(ce,h,g)},events:{core:et,plugins:s}},T=r.middlewares.concat([function(h){return function(g){return function(P){return P.meta||(P.meta=jn()),g(P)}}},w(Ye),qi(b,u,{all:p,plugins:s}),Qi(i),Xi(b),Yi(b),w(Ge)]),O={context:lo,user:Vi(i),page:uo,track:ro,plugins:to(u),queue:oo},C=xe,L=xe;if(X&&t.debug){var z=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__;z&&(C=z({trace:!0,traceLimit:25})),L=function(){return arguments.length===0?Sr():V(typeof arguments[0])?On():On().apply(null,arguments)}}var H,$=function(h){return Object.keys(h).reduce(function(g,P){return ho.includes(P)||(g[P]=h[P]),g},{})}(t),R=r.pluginsArray.reduce(function(h,g){var P=g.name,N=g.config,U=g.loaded,D=r.pluginEnabled[P];return h[P]={enabled:D,initialized:!!D&&!g.initialize,loaded:!!U({config:N}),config:N},h},{}),K={context:$,user:S,plugins:R},j=fr(function(h){for(var g=Object.keys(h),P={},N=0;N<g.length;N++){var U=g[N];typeof h[U]===ae&&(P[U]=h[U])}var D,J=Object.keys(P);try{(function(Z){Object.keys(Z).forEach(function(F){var M=Z[F];if(typeof M(void 0,{type:"@@redux/INIT"})===ie||typeof M(void 0,{type:Fi})===ie)throw new Error("reducer "+F+" "+ie)})})(P)}catch(Z){D=Z}return function(Z,F){if(Z===void 0&&(Z={}),D)throw D;for(var M=!1,ee={},Ne=0;Ne<J.length;Ne++){var Fe=J[Ne],Vt=Z[Fe],lt=(0,P[Fe])(Vt,F);if(typeof lt===ie){var Rr=Hi(Fe,F);throw new Error(Rr)}ee[Fe]=lt,M=M||lt!==Vt}return M?ee:Z}}(A({},O,e)),K,L(C(Ji.apply(void 0,T))));j.dispatch=(H=j.dispatch,function(h,g,P){var N=A({},h,{meta:jn(h.meta,g,vt(P))});return H.apply(null,[N])});var I=Object.keys(a);j.dispatch({type:x.bootstrap,plugins:I,config:$,params:v,user:S,initialUser:n,persistedUser:_});var E=I.filter(function(h){return r.pluginEnabled[h]}),W=I.filter(function(h){return!r.pluginEnabled[h]});return j.dispatch({type:x.registerPlugins,plugins:I,enabled:r.pluginEnabled}),r.pluginsArray.map(function(h,g){var P=h.bootstrap,N=h.config,U=h.name;P&&Y(P)&&P({instance:b,config:N,payload:h}),j.dispatch({type:x.registerPluginType(U),name:U,enabled:r.pluginEnabled[U],plugin:h}),r.pluginsArray.length===g+1&&j.dispatch({type:x.initializeStart,plugins:E,disabled:W})}),po(function(h){j.dispatch({type:h?x.offline:x.online})}),function(h,g,P){setInterval(function(){return mr(h,g,P)},3e3)}(j,u,b),b}var Ye="before",Ge="after",De="cookie",fe=Pr(),_r=ct,go=ct;function Er(t){return fe?ct(t,"",-1):Ae(t)}function Pr(){if(fe!==void 0)return fe;var t="cookiecookie";try{ct(t,t),fe=document.cookie.indexOf(t)!==-1,Er(t)}catch{fe=!1}return fe}function ct(t,e,n,r,i,o){if(typeof window<"u"){var a=arguments.length>1;return fe===!1&&(a?be(t,e):we(t)),a?document.cookie=t+"="+encodeURIComponent(e)+(n?"; expires="+new Date(+new Date+1e3*n).toUTCString()+(r?"; path="+r:"")+(i?"; domain="+i:"")+(o?"; secure":""):""):decodeURIComponent((("; "+document.cookie).split("; "+t+"=")[1]||"").split(";")[0])}}var Me="localStorage",yo=Zt.bind(null,"localStorage");$e("localStorage","getItem",we);$e("localStorage","setItem",be);$e("localStorage","removeItem",Ae);var Ze="sessionStorage",vo=Zt.bind(null,"sessionStorage");$e("sessionStorage","getItem",we);$e("sessionStorage","setItem",be);$e("sessionStorage","removeItem",Ae);function Te(t){var e=t;try{if((e=JSON.parse(t))==="true")return!0;if(e==="false")return!1;if(V(e))return e;parseFloat(e)===e&&(e=parseFloat(e))}catch{}if(e!==null&&e!=="")return e}var wo=yo(),bo=vo(),ko=Pr();function Tr(t,e){if(t){var n=Kt(e),r=!Jt(n),i=Wt(n)?Te(localStorage.getItem(t)):void 0;if(r&&!Se(i))return i;var o=Ft(n)?Te(_r(t)):void 0;if(r&&o)return o;var a=Ht(n)?Te(sessionStorage.getItem(t)):void 0;if(r&&a)return a;var s=we(t);return r?s:{localStorage:i,sessionStorage:a,cookie:o,global:s}}}function Io(t,e,n){if(t&&!Se(e)){var r={},i=Kt(n),o=JSON.stringify(e),a=!Jt(i);return Wt(i)&&(r[Me]=Be(Me,e,Te(localStorage.getItem(t))),localStorage.setItem(t,o),a)?r[Me]:Ft(i)&&(r[De]=Be(De,e,Te(_r(t))),go(t,o),a)?r[De]:Ht(i)&&(r[Ze]=Be(Ze,e,Te(sessionStorage.getItem(t))),sessionStorage.setItem(t,o),a)?r[Ze]:(r[Le]=Be(Le,e,we(t)),be(t,e),a?r[Le]:r)}}function So(t,e){if(t){var n=Kt(e),r=Tr(t,cr),i={};return!Se(r.localStorage)&&Wt(n)&&(localStorage.removeItem(t),i[Me]=r.localStorage),!Se(r.cookie)&&Ft(n)&&(Er(t),i[De]=r.cookie),!Se(r.sessionStorage)&&Ht(n)&&(sessionStorage.removeItem(t),i[Ze]=r.sessionStorage),!Se(r.global)&&ut(n,Le)&&(Ae(t),i[Le]=r.global),i}}function Kt(t){return t?se(t)?t:t.storage:sr}function Wt(t){return wo&&ut(t,Me)}function Ft(t){return ko&&ut(t,De)}function Ht(t){return bo&&ut(t,Ze)}function Jt(t){return t===cr||t==="all"}function ut(t,e){return t===sr||t===e||Jt(t)}function Be(t,e,n){return{location:t,current:e,previous:n}}var _o={setItem:Io,getItem:Tr,removeItem:So};function Eo(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Cn(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),n.push.apply(n,r)}return n}function xn(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?Cn(Object(n),!0).forEach(function(r){Eo(t,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Cn(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))})}return t}function Po(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e={storage:_o};return mo(xn(xn({},e),t))}function To(t,e){e=e||{};var n,r,i=[],o=e.max||1/0;function a(){clearInterval(n),t(i.splice(0,o)),s()}function s(){n=setInterval(a,e.interval||1e4)}return s(),{flush:a,push:function(f){return r=i.push(f),r>=o&&a(),r},size:function(){return i.length},end:function(f){f&&a(),clearInterval(n)}}}function Oo(t){if(typeof window>"u")return;const{addEventListener:e,history:n,location:r}=window;let i=r.pathname;e("popstate",()=>t(r.pathname)),["push","replace"].map(o=>{const a=`${o}State`;if(a!=="pushState"&&a!=="replaceState")return;const s=n[a];n[a]=function(...f){var c;const p=((c=f[2])==null?void 0:c.toString())||"",u=Co(p);return i!==u&&(i=u,setTimeout(()=>t(p),0)),s.apply(n,f)}})}function jo(t,e){const n=t.indexOf(e);return n>-1?t.slice(0,n):t}function Co(t){return["#","?"].forEach(e=>t=jo(t,e)),t}function xo(){Oo(()=>{re.page()})}function Ao(t){if(t===void 0&&(t={}),!X)return Ot;var e=$n(),n=xt(),r=An(),i=qe(r,e),o=qe(n,e),a=[],s=[],f=[],p=r,u=i,c=o,m=Object.keys(t);if(!m.length)return Ot;var d=m.map(function(k){return Number(k)}),w=Wi(function(){var k=$n(),v=function($,R){return R.map(function(K){return K===100?$-5:$*(K/100)})}(k,d),_=xt(),S=An(),y=qe(S,k),l=qe(_,k);if(u=y>u?y:u,c=l<c?l:c,!(a.length>=d.length)){var b=p===S,T="up";b?T="initial":p<=S&&(T="down");var O=v,C=d;(T==="up"||b)&&(O=v.slice().reverse(),C=d.slice().reverse());var L=C.reduce(function($,R,K){var j=O[K];return f.includes(R)&&S<=j&&(f=f.filter(function(I){return I!==R}),$.singleFunction=R),T==="down"&&!a.includes(R)&&S>=j&&R>o?(s.push(R),$.callbacks=$.callbacks.concat(R),$):T==="up"&&!a.includes(R)&&S<=j&&R<=y?($.foundFunc=[R],$):(b&&S>=j&&$.foundFunc.length===0&&($.foundFunc=[R]),!s.includes(R)&&S>=j&&(s.push(R),$.singleFunction?f.push(R):$.singleFunction=R),$)},{foundFunc:[],singleFunction:null,callbacks:[],direction:T});if(p=S,T==="down"&&L.callbacks&&L.callbacks.forEach(function($){Y(t[$])&&(t[$]({trigger:$,direction:T,scrollMin:c,scrollMax:u,range:[c,u]}),a.push($))}),L.singleFunction){var z=L.singleFunction,H=L.direction;Y(t[z])&&t[z]({trigger:z,direction:H,scrollMin:c,scrollMax:u,range:[c,u]}),a.push(z)}}},500);return window.addEventListener("scroll",w),function(){return window.removeEventListener("scroll",w)}}function xt(){return X?document.body.scrollTop||document.documentElement.scrollTop:0}function $o(){return X?window.innerHeight||document.documentElement.clientHeight:0}function An(){return Math.round(xt()+$o())}function $n(){if(!X)return 0;var t=document.body,e=document.documentElement;return Math.max(t.scrollHeight,t.offsetHeight,e.clientHeight,e.scrollHeight,e.offsetHeight)}function qe(t,e){return Math.round(t/e*100)}var Nn="EventListener";function No(t){return function(e,n,r,i){var o=r||Ot,a=i||!1;if(!X)return o;var s=rt(n),f=rt(e,!0);if(!f.length)throw new Error("noElements");if(!s.length)throw new Error("noEvent");var p=[];return function u(c){c&&(p=[]);for(var m=c?"add"+Nn:"remove"+Nn,d=0;d<f.length;d++){var w=f[d];p[d]=c?a&&a.once?Uo(o):o:p[d]||o;for(var k=0;k<s.length;k++)w[m]?w["on"+s[k]]=c?p[d]:null:w[m](s[k],p[d],a)}return u.bind(null,!c)}(t)}}function rt(t,e){if(se(t))return e?rt(document.querySelectorAll(t)):(n=t).split(n.indexOf(",")>-1?",":" ").map(function(a){return a.trim()});var n;if(NodeList.prototype.isPrototypeOf(t)){for(var r=[],i=t.length>>>0;i--;)r[i]=t[i];return r}var o=Li(t);return e?o.map(function(a){return se(a)?rt(a,!0):a}).flat():o}function Uo(t,e){var n;return function(){return t&&(n=t.apply(e||this,arguments),t=null),n}}var wt=No("Event");function Or(t,e){return X&&Y(window[t])?(n=window[t],r=e,(i=window)===void 0&&(i=null),Y(n)?function(){n.apply(i,arguments),r.apply(i,arguments)}:r):window[t]=e;var n,r,i}Or.bind(null,"onerror");Or.bind(null,"onload");var jr=typeof window>"u",Un="hidden";function zo(t){if(jr)return!1;var e=Ro(),n="".concat(e.replace(/[H|h]idden/,""),"visibilitychange"),r=function(){return t(!!document[e])},i=function(){return document.addEventListener(n,r)};return i(),function(){return document.removeEventListener(n,r),i}}function Ro(){var t=["webkit","moz","ms","o"];return jr||Un in document?Un:t.reduce(function(e,n){var r=n+"Hidden";return!e&&r in document?r:e},null)}var Lo=["mousemove","mousedown","touchmove","touchstart","touchend","keydown"];function Do(t,e){e===void 0&&(e={});var n=function(a,s){var f=this,p=!1;return function(u){p||(a.call(f,u),p=!0,setTimeout(function(){return p=!1},s))}}(t,e.throttle||1e4),r=[];function i(){var a=zo(function(s){s||n({type:"tabVisible"})});return r=[a].concat(Lo.map(function(s){return wt(document,s,n)})).concat(wt(window,"load",n)).concat(wt(window,"scroll",n,{capture:!0,passive:!0})),o}function o(){r.map(function(a){return a()})}return i(),function(){return o(),i}}function Mo(t){var e,n,r=t.onIdle,i=t.onWakeUp,o=t.onHeartbeat,a=t.timeout,s=a===void 0?1e4:a,f=t.throttle,p=f===void 0?2e3:f,u=!1,c=!1,m=new Date,d=function(){return clearTimeout(e)};function w(v){d(),o&&!u&&o(ze(m),v),i&&u&&(u=!1,i(ze(n),v),m=new Date),e=setTimeout(function(){u=!0,r&&(n=new Date,r(ze(m),v))},s)}var k=Do(w,{throttle:p});return{disable:function(){c=!0,u=!1,d();var v=k();return function(){return c=!1,m=new Date,w({type:"load"}),v()}},getStatus:function(){return{isIdle:u,isDisabled:c,active:u?0:ze(m,c),idle:u?ze(n,c):0}}}}function ze(t,e){return e?0:Math.round((new Date-t)/1e3)}const zn=5e3;class Zo{constructor(e){q(this,"element");q(this,"isInViewport",!1);q(this,"isAwake",!1);q(this,"isFlushing");q(this,"observer");q(this,"lastEventAt",Date.now());q(this,"registeredView",!1);q(this,"viewCallback");q(this,"activeDurationCallback");q(this,"idleDurationCallback");q(this,"scrollCallback");this.element=e.element,this.viewCallback=e.viewCallback,this.activeDurationCallback=e.activeDurationCallback,this.idleDurationCallback=e.idleDurationCallback,this.scrollCallback=e.scrollCallback,this.observer=new IntersectionObserver(n=>{n.forEach(r=>{this.handleInViewPort(r.isIntersecting)})},{threshold:0}),this.observer.observe(this.element),Mo({onIdle:n=>this.handleAwake(!1,n),onWakeUp:n=>this.handleAwake(!0,n),timeout:zn}),Ao({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(e){e?(this.isAwake=!0,this.trackInViewport()):this.handleAwake(!1),this.isInViewport=e}handleAwake(e,n=Math.round((Date.now()-this.lastEventAt)/1e3)){this.isAwake=e,this.lastEventAt=e?Date.now()-n*zn:Date.now(),this.isInViewport&&this.trackAwake(e,n)}handleScroll(e){this.scrollCallback&&this.scrollCallback(e)}handleVisibilityChange(){this.isAwake=!1;const e=Math.round((Date.now()-this.lastEventAt)/1e3);e>1&&(this.lastEventAt=Date.now(),this.trackAwake(!1,e))}trackAwake(e,n){!e&&this.activeDurationCallback&&this.activeDurationCallback(n,this.isFlushing,this.lastEventAt),e&&this.idleDurationCallback&&this.idleDurationCallback(n,this.isFlushing,this.lastEventAt)}trackInViewport(){this.registeredView||(this.registeredView=!0,this.viewCallback&&this.viewCallback())}}const Rn="sesamy_session_id";function Ko(){let t=sessionStorage.getItem(Rn);return t||(t=Math.random().toString(36).slice(2,9),sessionStorage.setItem(Rn,t)),t}let Cr=!1,At,Ln,it;function Wo({clientId:t,enabled:e=!0,endpoint:n=di}){if(At=t,Ln=e,it=n,!Ln)return;xo();const r=new Zo({element:document.body,viewCallback:()=>{re.page()},activeDurationCallback:(i,o,a)=>{re.track("activeDuration",{duration:i,durationStart:a,flushing:o})},idleDurationCallback:(i,o,a)=>{re.track("idleDuration",{duration:i,durationStart:a,flushing:o})},scrollCallback:i=>{re.track("scroll",{scroll:i.scrollMax})}});Jo(document.body,()=>{r.flush()}),Xo(document.body,()=>{r.handleVisibilityChange()}),window.addEventListener(Q.AUTHENTICATED,async i=>{const o=i;await re.identify(o.detail.sub)}),window.addEventListener(Q.LOGOUT,async()=>{await re.track("logout",{}),Xt.flush(),await re.reset()})}function xr(t){return JSON.stringify(t.map(e=>({...e,clientId:At,requestId:Math.random().toString(36).slice(2,9),sessionId:Ko(),timestamp:new Date().toISOString(),version:Mt,event:e.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:ar,userAgent:navigator.userAgent,clientId:At}})))}const Xt=To(async t=>{if(t.length>0){const e=xr(t);Cr?navigator.sendBeacon(it,e):(await fetch(it,{method:"POST",body:e,headers:{"Content-Type":"text/plain"}})).ok}},{max:10,interval:3e3});function bt(t){var e;if(t.anonymousId)if((e=t.properties)!=null&&e.flushing){const n={...t};delete n.properties.flushing,navigator.sendBeacon(it,xr([n]))}else Xt.push(t)}const re=Po({app:ar,version:Mt,plugins:[{name:"custom-analytics-plugin",page:({payload:t})=>{const{properties:e,anonymousId:n,userId:r,event:i}=t;bt({anonymousId:n,userId:r,properties:e,event:i,type:"page"})},track:({payload:t})=>{const{properties:e,anonymousId:n,userId:r,event:i}=t;bt({anonymousId:n,userId:r,properties:e,event:i,type:"track"})},identify:({payload:t})=>{const{properties:e,anonymousId:n,userId:r}=t;bt({anonymousId:n,userId:r,properties:e,type:"identify"})}}]});function Fo(t,e){re.track(t,e)}function Ho(){return Cr=!0,Xt.flush()}const Ar=new Map;function Jo(t,e){Ar.set(t,e)}window.addEventListener("beforeunload",()=>{Ar.forEach((t,e)=>{t.bind(e)()}),Ho()});const $r=new Map;function Xo(t,e){$r.set(t,e)}window.addEventListener("visibilitychange",()=>{document.visibilityState!=="visible"&&$r.forEach((t,e)=>{t.bind(e)()})});const Nr="sesamySignedURLs";function Ur(){const t=sessionStorage.getItem(Nr);return t?JSON.parse(t):[]}function Vo(t){const e=Ur();e.push(t),sessionStorage.setItem(Nr,JSON.stringify(e))}function Yo(t){const{getEntitlement:e,getEntitlements:n,getEntitlementAccess:r,getSubscriptions:i,getContract:o,getContracts:a,getBill:s,getBills:f,getProfile:p,updateProfile:u,getTags:c,deleteTag:m,setTag:d,getUserMetadata:w,listUserMetadata:k,setUserMetadata:v,deleteUserMetadata:_,getTally:S,getTallies:y,pushTally:l,deleteTally:b,getProduct:T,getPaymentIssues:O,autoOnboardProduct:C,openHostedAccountPage:L}=Oi(t),z={auth:{getUser:p,isAuthenticated:Lt,loginWithRedirect:Dt,logout:pi,setToken:nr},profile:{get:p,update:u,openHostedAccountPage:L},analytics:{track:Fo},tags:{list:c,set:d,delete:m},entitlements:{get:e,list:n,access:r,signedLinks:Ur},contracts:{get:o,list:a},bills:{get:s,list:f},userMetadata:{get:w,list:k,set:v,delete:_},tallies:{get:S,list:y,push:l,delete:b},subscriptions:{list:i},products:{get:T,autoOnboard:C},getVersion:Go,getPaymentIssues:O,clearCache:te};return t.namespace&&(window[t.namespace]=z),z}function Go(){return Mt}function Bo(){const t=new URLSearchParams(window.location.hash.substring(1)),e=t.get("access_token"),n=t.get("expires_in");if(e){nr(e,n?parseInt(n,10):void 0);const r=new URL(window.location.href);t.delete("access_token"),t.delete("expires_in"),r.hash=t.toString(),window.history.replaceState(null,"",r)}}const Dn="sesamy-refresh",Mn="force-refetch-entitlements";function qo(){const t=new URLSearchParams(window.location.search),e=t.get(Mn),n=t.get(Dn);if(e!==null||n!==null){const r=new URL(window.location.href);t.delete(Mn),t.delete(Dn),r.search=t.toString(),te(),window.history.replaceState(null,"",r)}}function Qo(){const t=new URLSearchParams(window.location.search),e=t.get("token"),n=t.get("se");if(!n||!e)return;const r=parseInt(n,10);if(Number.isNaN(r)||r<Date.now())return;Vo({url:window.location.href.split("?")[0],token:e,expiresAt:r,publisherContentId:t.get("sp")??void 0});const i=new URL(window.location.href);i.searchParams.delete("ss"),i.searchParams.delete("se"),i.searchParams.delete("sp"),i.searchParams.delete("so"),i.searchParams.delete("token"),window.history.replaceState(null,"",i)}const Zn="sesamy-user";async function ea(){const e=new URLSearchParams(window.location.search).get(Zn);if(!e)return;const n=await fi();(n==null?void 0:n.email)!==e&&Dt();const r=new URL(window.location.href);r.searchParams.delete(Zn),window.history.replaceState(null,"",r)}const Kn="sesamy-purchase";function ta(){const t=new URLSearchParams(window.location.search),e=t.get(Kn);if(e!==null){const n=new URL(window.location.href);t.delete(Kn),n.search=t.toString(),ue(Q.PURCHASE,{itemSrc:e}),te(),window.history.replaceState(null,"",n)}}const Wn="sesamy-login";async function na(){if(!new URLSearchParams(window.location.search).get(Wn))return;await Lt()||Dt();const r=new URL(window.location.href);r.searchParams.delete(Wn),window.history.replaceState(null,"",r)}async function zr(t){Wo({clientId:t.clientId,...t.analytics}),await hi({clientId:t.clientId,organization:t.organization,...t.auth});const e=Yo({clientId:t.clientId,...t.api});return ue(Q.READY,{}),Bo(),qo(),Qo(),await na(),await ea(),ta(),e}if(typeof document<"u"){const t=document.getElementById("sesamy-js");if(t!=null&&t.textContent)try{const e=JSON.parse(t.textContent);zr(e)}catch(e){console.error("Failed to parse config",e)}}exports.init=zr;
@@ -2,6 +2,7 @@
2
2
 
3
3
  export interface Config {
4
4
  clientId: string;
5
+ organization?: string;
5
6
  api?: Partial<ApiConfig>;
6
7
  analytics?: Partial<AnalyticsConfig>;
7
8
  auth?: Partial<AuthConfig>;
@@ -18,6 +19,7 @@ export interface AnalyticsConfig {
18
19
  }
19
20
  export interface AuthConfig {
20
21
  clientId: string;
22
+ organization?: string;
21
23
  enabled?: boolean;
22
24
  endpoint?: string;
23
25
  }
@@ -39,7 +41,10 @@ export type Profile = {
39
41
  };
40
42
  };
41
43
  declare function isAuthenticated(): Promise<boolean>;
42
- declare function loginWithRedirect(): Promise<void>;
44
+ export interface LoginWithRedirectOptions {
45
+ email?: string;
46
+ }
47
+ declare function loginWithRedirect(options?: LoginWithRedirectOptions): Promise<void>;
43
48
  declare function logout(): Promise<void>;
44
49
  declare function setToken(accessToken: string, expiresIn?: number): Promise<void>;
45
50
  declare function track(eventName: string, payload: any): void;